]*>/g;
-function _unescape(str) {
- var div = document.createElement('div');
- div.innerHTML = str;
- return div.childNodes.length === 0 ? '' : div.childNodes[0].nodeValue;
-}
-/* harmony default export */ __webpack_exports__.Z = (function (_ref) {
- var _ref$value = _ref.value,
- value = _ref$value === void 0 ? '' : _ref$value,
- className = _ref.className,
- showTextOnly = _ref.showTextOnly,
- showLines = _ref.showLines,
- _ref$style = _ref.style,
- style = _ref$style === void 0 ? {} : _ref$style,
- _ref$stylesPrev = _ref.stylesPrev,
- stylesPrev = _ref$stylesPrev === void 0 ? {} : _ref$stylesPrev,
- highlightKeywords = _ref.highlightKeywords,
- showProgramFill = _ref.showProgramFill,
- isProgramFill = _ref.isProgramFill,
- _ref$disabledFill = _ref.disabledFill,
- disabledFill = _ref$disabledFill === void 0 ? false : _ref$disabledFill,
- programFillValue = _ref.programFillValue,
- _ref$onFillChange = _ref.onFillChange,
- onFillChange = _ref$onFillChange === void 0 ? function (value) {} : _ref$onFillChange,
- _ref$onFillBlur = _ref.onFillBlur,
- onFillBlur = _ref$onFillBlur === void 0 ? function () {} : _ref$onFillBlur;
- var str = String(value);
- var _useState = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)(""),
- _useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState, 2),
- data = _useState2[0],
- setData = _useState2[1];
- var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)("office"),
- _useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState3, 2),
- type = _useState4[0],
- setType = _useState4[1];
- var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)([]),
- _useState6 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState5, 2),
- projectValue = _useState6[0],
- setProjectValue = _useState6[1];
- var classNamesRef = (0,react__WEBPACK_IMPORTED_MODULE_4__.useRef)("a" + (0,uuid__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z)());
- var formObj = {};
- var createInput = function createInput(a, num) {
- // const wrap = document.createElement("span")
- // wrap.className =
- var input = document.createElement(a === ADD_SINGLE ? "input" : "textarea");
- input.style.width = "100%";
- input.style.height = a === ADD_SINGLE ? "40px" : "151px";
- input.rows = 5;
- input.spellcheck = false;
- input.name = "edu-program-fill";
- input.placeholder = "请输入";
- input.dataset.id = num;
- var key = Object.keys(formObj).length;
- formObj[key] = input;
- return "").concat(input.outerHTML, "");
- };
- var formatMD = function formatMD(rs) {
- return rs.replace(/([\s\S]+?)<\/style>/gim, function (_, css) {
- var _css = css.replace(/(\n|\r)/g, "").split("}");
- var arr = [];
- _css.map(function (item) {
- if (item != '') {
- arr.push(".".concat(classNamesRef.current, " ").concat(item));
- }
- });
- return "");
- });
- };
- var html = (0,react__WEBPACK_IMPORTED_MODULE_4__.useMemo)(function () {
- try {
- var reg = /\(\s+\/api\/attachments\/|\(\/api\/attachments\/|\(\/attachments\/download\//g;
- var reg2 = /\"\/api\/attachments\/|\"\/attachments\/download\//g;
- var reg3 = /\(\s+\/files\/uploads\/|\"\/files\/uploads\//g;
- str = str.replace(reg, "(" + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/api/attachments/").replace(reg2, '"' + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/api/attachments/").replace(reg3, '"' + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/files/uploads/").replaceAll("http://video.educoder", "https://video.educoder").replaceAll("http://www.educoder.net/api", "https://data.educoder.net/api").replaceAll("https://www.educoder.net/api", "https://data.educoder.net/api").replace(/\r\n/g, "\n");
- // str = str.replace(new RegExp("(?", ">").replace(/(@▁▁@|@▁@)/g, function (a, b, c) {
- ++num;
- return createInput(a, num);
- });
- return "".concat(formatMD(str || ""), "
");
- }
- var rs = formatMD(str);
- rs = (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .ZP)(rs);
- var math_expressions = (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .getMathExpressions */ .ez)();
- if (str.match(/\[TOC\]/)) {
- rs = rs.replace('[TOC]
', (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .getTocContent */ .Qv)());
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .cleanToc */ .Iy)();
- }
- rs = rs.replace(/(__special_katext_id_\d+__)/g, function (_match, capture) {
- var _math_expressions$cap = math_expressions[capture],
- type = _math_expressions$cap.type,
- expression = _math_expressions$cap.expression;
- return (0,katex__WEBPACK_IMPORTED_MODULE_10__.renderToString)(_unescape(expression) || '', {
- displayMode: type === 'block',
- throwOnError: false,
- output: 'html'
- });
- });
- rs = rs.replace(/▁/g, '▁▁▁');
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .resetMathExpressions */ .AL)();
- // return dompurify.sanitize(rs)
- var dom = document.createElement('div');
- dom.innerHTML = rs;
- if (highlightKeywords) {
- var escapedKeywords = highlightKeywords.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
- findKeyword(dom, escapedKeywords);
- return dom.innerHTML;
- }
- if (showTextOnly) {
- return dom.innerText;
- }
- setTimeout(function () {
- return onLoad();
- }, 500);
- return dom.innerHTML;
- }, [str, highlightKeywords]);
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (el.current) {
- var inputs = el.current.querySelectorAll(["input", "textarea"]);
- inputs.forEach(function (input) {
- input.oninput = onInput;
- input.onblur = onBlur;
- });
- }
- }, [projectValue]);
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (!!(programFillValue !== null && programFillValue !== void 0 && programFillValue.length)) {
- try {
- var scoreDom = el.current.querySelectorAll(".edu-program-fill-score");
- var dom = el.current.querySelectorAll('[name="edu-program-fill"]');
- var _iterator = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2___default()(dom.entries()),
- _step;
- try {
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
- var _programFillValue$k;
- var _step$value = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_step.value, 2),
- k = _step$value[0],
- i = _step$value[1];
- i.value = (_programFillValue$k = programFillValue[k]) === null || _programFillValue$k === void 0 ? void 0 : _programFillValue$k.value;
- if (programFillValue[k].type === "warning") {
- i.className = "program-fill-warning";
- } else if (programFillValue[k].type === "success") {
- i.className = "program-fill-success";
- } else {
- i.className = "";
+ var onSave = /*#__PURE__*/function () {
+ var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2(event) {
+ var res, result;
+ return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ setLoading(true);
+ setLoadingText('正在保存中');
+ _context2.next = 4;
+ return (0,fetch/* default */.ZP)('/api/attachments.json', {
+ method: 'post',
+ body: {
+ file_type: 'base64',
+ original_filename: data.title,
+ file: event.dataUrl
+ }
+ });
+ case 4:
+ res = _context2.sent;
+ if (!(res !== null && res !== void 0 && res.id && !noAssociationId)) {
+ _context2.next = 12;
+ break;
+ }
+ _context2.next = 8;
+ return (0,fetch/* default */.ZP)("/api/attachments/".concat(data.id, "/add_subitem.json"), {
+ method: 'post',
+ body: {
+ subitem_id: res === null || res === void 0 ? void 0 : res.id,
+ settings: JSON.stringify(event.state)
+ }
+ });
+ case 8:
+ result = _context2.sent;
+ if (result.status === 0) {
+ onOk();
}
- }
- } catch (err) {
- _iterator.e(err);
- } finally {
- _iterator.f();
- }
- var _iterator2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2___default()(scoreDom.entries()),
- _step2;
- try {
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
- var _programFillValue$_k, _programFillValue$_k2;
- var _step2$value = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_step2.value, 2),
- _k = _step2$value[0],
- _i = _step2$value[1];
- _i.innerHTML = (_programFillValue$_k = programFillValue[_k]) !== null && _programFillValue$_k !== void 0 && _programFillValue$_k.score ? "".concat((_programFillValue$_k2 = programFillValue[_k]) === null || _programFillValue$_k2 === void 0 ? void 0 : _programFillValue$_k2.score, "\u5206") : "";
- }
- } catch (err) {
- _iterator2.e(err);
- } finally {
- _iterator2.f();
+ _context2.next = 13;
+ break;
+ case 12:
+ if (res !== null && res !== void 0 && res.id) {
+ onOk(res);
+ }
+ case 13:
+ setLoading(false);
+ setLoadingText('');
+ case 15:
+ case "end":
+ return _context2.stop();
}
- setProjectValue(programFillValue);
- } catch (error) {}
+ }, _callee2);
+ }));
+ return function onSave(_x) {
+ return _ref3.apply(this, arguments);
+ };
+ }();
+ var dealDom = function dealDom() {
+ // 删除标签
+ // 找到href为"https://markerjs.com/"的a标签
+ var targetLink = document.querySelector('a[href="https://markerjs.com/"]');
+ if (targetLink && targetLink.parentNode) {
+ targetLink.parentNode.style.display = 'none';
}
- }, [programFillValue]);
- var onInput = function onInput(e) {
- projectValue[e.target.dataset.id] = projectValue[e.target.dataset.id] || {};
- projectValue[e.target.dataset.id]["value"] = e.target.value;
- setProjectValue(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(projectValue));
- onFillChange(projectValue, e.target.dataset.id);
- };
- var onBlur = function onBlur(e) {
- projectValue[e.target.dataset.id] = projectValue[e.target.dataset.id] || {};
- projectValue[e.target.dataset.id]["value"] = e.target.value;
- setProjectValue(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(projectValue));
- onFillBlur(projectValue, e.target.dataset.id);
- };
- function findKeyword(node, keyword) {
- return node.childNodes.forEach(function (childNode) {
- if (childNode.childNodes.length > 0) {
- findKeyword(childNode, keyword);
- } else if (childNode.nodeName !== "IMG") {
- if (childNode.innerHTML) {
- var _childNode$innerHTML;
- childNode.innerHTML = (_childNode$innerHTML = childNode.innerHTML) === null || _childNode$innerHTML === void 0 ? void 0 : _childNode$innerHTML.replace(new RegExp(keyword, "gi"), '$&');
- } else {
- var dom = document.createElement("span");
- dom.innerHTML = childNode.textContent.replace(new RegExp(keyword, "gi"), '$&');
- childNode.replaceWith(dom);
- }
- }
- });
-
- // return dom.childNodes.forEach((node:any) => {
- // console.log("nodeLen:",node.childNodes.length)
- // if(node.childNodes.length > 0){
- // debugger
- // // findKeyword(dom.childNodes,keyword)
- // }else{
- // if(node.nodeName !== "#text"){
- // node.innerHTML = node.innerHTML.replaceAll(keyword,`${keyword}`)
- // console.log("node:",node,dom,node.nodeName,node.innerHTML,node.childNodes.length)
- // debugger
- // }
- // }
- // return node
- // });
- }
- var el = (0,react__WEBPACK_IMPORTED_MODULE_4__.useRef)();
- _utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .lines */ .jb['WebkitLineClamp'] = showLines;
- if (showLines) {
- style = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, style), _utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .lines */ .jb);
- }
- function onAncherHandler(e) {
- var target = e.target;
- if (target.tagName.toUpperCase() === 'A') {
- var ancher = target.getAttribute('href');
- if (ancher.indexOf("office") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("office");
- } else if (ancher.indexOf("application/pdf") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("pdf");
- } else if (ancher.indexOf("text/html") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("html");
- } else if (ancher.startsWith('#')) {
- e.preventDefault();
- var viewEl = document.getElementById(ancher.replace('#', ''));
- if (viewEl) {
- viewEl.scrollIntoView(true);
- }
- }
- }
- }
- var onLoad = function onLoad() {
- var _el$current;
- var videoElement = (_el$current = el.current) === null || _el$current === void 0 ? void 0 : _el$current.querySelectorAll('video');
- videoElement === null || videoElement === void 0 || videoElement.forEach(function (item) {
- item.oncontextmenu = function () {
- return false;
- };
- if (item.src.indexOf('.m3u8') > -1) {
- if (item.canPlayType('application/vnd.apple.mpegurl')) {} else if (hls_js__WEBPACK_IMPORTED_MODULE_8__/* ["default"].isSupported */ .ZP.isSupported()) {
- var hls = new hls_js__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .ZP();
- hls.loadSource(item.src);
- hls.attachMedia(item);
- }
+ // 设置title
+ var item = [{
+ name: '[data-action="select"]',
+ title: '选择'
+ }, {
+ name: '[data-action="delete"]',
+ title: '删除元素'
+ }, {
+ name: '[data-action="undo"]',
+ title: '撤销'
+ }, {
+ name: '[data-type-name="FrameMarker"]',
+ title: '矩形'
+ }, {
+ name: '[data-type-name="FreehandMarker"]',
+ title: '画线'
+ }, {
+ name: '[data-type-name="ArrowMarker"]',
+ title: '箭头'
+ }, {
+ name: '[data-type-name="TextMarker"]',
+ title: '文本'
+ }, {
+ name: '[data-type-name="EllipseMarker"]',
+ title: '椭圆'
+ }, {
+ name: '[data-type-name="HighlightMarker"]',
+ title: '方块'
+ }, {
+ name: '[data-type-name="CalloutMarker"]',
+ title: '注释'
+ }, {
+ name: '[data-action="render"]',
+ title: '保存'
+ }, {
+ name: '[data-action="close"]',
+ title: '退出'
+ }];
+ item.forEach(function (e) {
+ var targetElement = document.querySelector(e.name);
+ if (targetElement) {
+ targetElement.setAttribute('title', e.title);
}
});
};
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (el.current && html) {
- if (html.match(preRegex)) {
- window.PR.prettyPrint();
- }
+ var initMarkerjs = function initMarkerjs() {
+ markerArea.current = new markerjs2_esm/* MarkerArea */.hP(imgRef.current);
+ markerArea.current.addEventListener('render', onSave);
+ markerArea.current.addEventListener('beforeclose', onClose);
+ if (showFullTools) {
+ markerArea.current.availableMarkerTypes = markerArea.current.ALL_MARKER_TYPES;
+ markerArea.current.uiStyleSettings.redoButtonVisible = true;
+ markerArea.current.uiStyleSettings.notesButtonVisible = true;
+ markerArea.current.uiStyleSettings.zoomButtonVisible = true;
+ markerArea.current.uiStyleSettings.zoomOutButtonVisible = true;
+ markerArea.current.uiStyleSettings.clearButtonVisible = true;
}
- if (el.current) {
- el.current.addEventListener('click', onAncherHandler);
- return function () {
- var _el$current2;
- (_el$current2 = el.current) === null || _el$current2 === void 0 || _el$current2.removeEventListener('click', onAncherHandler);
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .resetMathExpressions */ .AL)();
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .cleanToc */ .Iy)();
- };
+ window.markerArea = markerArea.current.uiStyleSettings;
+ markerArea.current.show();
+ if (data !== null && data !== void 0 && data.snapshotData) {
+ markerArea.current.restoreState(data.snapshotData);
}
- }, [html, el.current, onAncherHandler]);
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.Fragment, {
- children: [showTextOnly && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("div", {
- ref: el,
- children: html
- }), !showTextOnly && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("div", {
- ref: el,
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, style),
- className: "".concat(className ? className : '', " ").concat(disabledFill ? "disabled-fill" : "", " markdown-body ").concat(classNamesRef.current),
- dangerouslySetInnerHTML: {
- __html: html
- }
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)(_components_PreviewAll__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {
- close: true,
- data: data,
- type: !!(data !== null && data !== void 0 && data.length) ? type : "",
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, stylesPrev),
- onClose: function onClose() {
- return setData("");
- }
- })]
+ setTimeout(function () {
+ dealDom();
+ }, 300);
+ };
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(_react_17_0_2_react.Fragment, {
+ children: (data === null || data === void 0 ? void 0 : data.visible) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ className: _classnames_2_5_1_classnames_default()(ImageDimensionsmodules.imageDimensions, className, fullWidth ? ImageDimensionsmodules.fullWidth : ""),
+ style: style,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
+ spinning: loading,
+ tip: loadingText,
+ style: {
+ position: 'absolute'
+ }
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
+ className: ImageDimensionsmodules.img,
+ ref: imgRef
+ // crossOrigin='anonymous'
+ // src={data?.src}
+ })]
+ })
});
-});
+};
+/* harmony default export */ var components_ImageDimensions = (ImageDimensions);
/***/ }),
@@ -1198,7 +1991,7 @@ function _unescape(str) {
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js */ 41498);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! antd */ 48826);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! antd */ 53188);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! antd */ 8591);
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/utils/fetch */ 41686);
/* harmony import */ var crypto_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! crypto-js */ 28209);
@@ -1712,6 +2505,9 @@ var LanguageDesc = {
content: ''
},
onFinish: onSubmit,
+ style: {
+ width: 500
+ },
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.Item, {
label: "\u4EE3\u7801\u8BED\u8A00",
name: "language",
@@ -1817,9 +2613,9 @@ function MyCodeMirror(_ref2) {
/***/ }),
-/***/ 49177:
+/***/ 89215:
/*!***************************************************************!*\
- !*** ./src/components/markdown-editor/index.tsx + 14 modules ***!
+ !*** ./src/components/markdown-editor/index.tsx + 15 modules ***!
\***************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
@@ -1948,9 +2744,13 @@ var DEFAULTICONS = [{
title: '行内公式',
icon: 'md-iconfont icon-sum',
actionName: 'inline-latex'
+}, {
+ title: '数学图像',
+ icon: 'iconfont icon-shuxuetuxiang2',
+ actionName: 'maths-latex'
}, {
title: '多行公式',
- icon: 'md-iconfont icon-formula',
+ icon: 'iconfont icon-jisuan1',
actionName: 'latex'
}, '|', {
title: '添加图片',
@@ -2089,7 +2889,7 @@ var modal = __webpack_require__(88618);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
var es_form = __webpack_require__(78241);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
-var input = __webpack_require__(1056);
+var input = __webpack_require__(11694);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
;// CONCATENATED MODULE: ./src/components/markdown-editor/link/index.tsx
@@ -2119,6 +2919,9 @@ var formItemLayout = {
},
className: "link-panel",
onFinish: onSubmit,
+ style: {
+ width: 500
+ },
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u94FE\u63A5\u5730\u5740",
name: "link",
@@ -3827,6 +4630,7 @@ function FlowChart(_ref) {
destroyOnClose: true,
maskClosable: false,
getContainer: modalRef.current,
+ rootClassName: "zIndex-9999",
title: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: 1,
@@ -4022,6 +4826,110 @@ var add_table_panel_style = {
})]
});
});
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/index.js + 2 modules
+var es_switch = __webpack_require__(78673);
+// EXTERNAL MODULE: ./src/components/MathematicalGraphics/js/index.js
+var js = __webpack_require__(28871);
+var js_default = /*#__PURE__*/__webpack_require__.n(js);
+;// CONCATENATED MODULE: ./src/components/MathematicalGraphics/index.tsx
+
+
+
+
+
+
+
+var MathematicalGraphics_FlowChart = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(function (_ref, ref) {
+ var use3d = _ref.use3d,
+ width = _ref.width,
+ height = _ref.height,
+ callback = _ref.callback,
+ showSaveButton = _ref.showSaveButton;
+ var ggbAppletRef = (0,_react_17_0_2_react.useRef)();
+ var appletRef = (0,_react_17_0_2_react.useRef)();
+ var _useState = (0,_react_17_0_2_react.useState)(false),
+ _useState2 = slicedToArray_default()(_useState, 2),
+ is3D = _useState2[0],
+ setIs3d = _useState2[1];
+ var parameters = (0,_react_17_0_2_react.useRef)({
+ "id": ggbAppletRef,
+ "appName": "graphing",
+ "width": width || 1000,
+ "height": height || 600,
+ "showToolBar": true,
+ "showMenuBar": true,
+ "allowStyleBar": true,
+ "showAlgebraInput": true,
+ "enableLabelDrags": false,
+ "enableShiftDragZoom": true,
+ "showToolBarHelp": false,
+ "errorDialogsActive": true,
+ "showTutorialLink": true,
+ "showLogging": true,
+ "useBrowserForJS": false
+ });
+ (0,_react_17_0_2_react.useEffect)(function () {
+ appletRef.current = new (js_default())(parameters.current, true);
+ window.onload = function () {
+ appletRef.current.inject('applet_container');
+ };
+ }, []);
+ var getImgData = function getImgData() {
+ var str = window.ggbApplet.getPNGBase64(1, true, 72);
+ callback && callback(str);
+ return str;
+ };
+ (0,_react_17_0_2_react.useEffect)(function () {
+ parameters.current.appName = is3D ? "3D" : "graphing";
+ appletRef.current.inject('applet_container');
+ }, [is3D]);
+ (0,_react_17_0_2_react.useEffect)(function () {
+ setIs3d(use3d);
+ }, [use3d]);
+ (0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
+ return {
+ getImgData: getImgData
+ };
+ });
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ style: {
+ width: "100%",
+ height: "100%"
+ },
+ id: "applet_container",
+ ref: ggbAppletRef
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
+ align: "middle",
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
+ flex: 1,
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_switch/* default */.Z, {
+ size: "default",
+ checkedChildren: "\u5173\u95ED3D\u56FE\u50CF",
+ unCheckedChildren: "\u5F00\u542F3D\u56FE\u50CF",
+ checked: is3D,
+ onChange: function onChange(e) {
+ return setIs3d(e);
+ }
+ })
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
+ size: "large",
+ onClick: getImgData,
+ style: {
+ zIndex: 8,
+ marginTop: 10
+ },
+ type: "primary",
+ children: "\u4FDD\u5B58\u5230\u7F16\u8F91\u5668"
+ })
+ })]
+ })]
+ });
+});
+/* harmony default export */ var MathematicalGraphics = (MathematicalGraphics_FlowChart);
+// EXTERNAL MODULE: ./src/components/MathsLatexKeybords/keybords.tsx
+var keybords = __webpack_require__(70118);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(83877);
;// CONCATENATED MODULE: ./src/components/markdown-editor/constant.ts
@@ -4068,6 +4976,8 @@ var useInterval = __webpack_require__(94158);
+
+
@@ -4085,7 +4995,7 @@ function processSize(size) {
var isMac = navigator.platform.toUpperCase().indexOf('MAC') >= 0;
var key = isMac ? 'Cmd' : 'Ctrl';
var DEFAULTKEYMAP = defineProperty_default()(defineProperty_default()({}, key + '-B', 'bold'), key + '-I', 'italic');
-var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, LINK, '添加链接'), CODE_BLOCK, '添加代码块'), UPLOAD_IMAGE, '添加图片'), DRAW_IMAGE, '添加画图'), ADD_FLOWCHART, '插入流程图'), ADD_TABLE, '添加表格');
+var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, LINK, '添加链接'), CODE_BLOCK, '添加代码块'), UPLOAD_IMAGE, '添加图片'), DRAW_IMAGE, '添加画图'), ADD_FLOWCHART, '插入流程图'), ADD_TABLE, '添加表格'), 'maths-latex', "数学图像"), 'inline-latex', "LATEX公式");
//https://codemirror.net/demo
//The height can be set through CSS (by giving the .CodeMirror class a height property), or by calling the cm's setSize method.
@@ -4502,10 +5412,11 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
}
return cm.focus();
case 'inline-latex':
- cm.replaceSelection('`$$' + selection + '$$`');
- if (selection === '') {
- cm.setCursor(cursor.line, cursor.ch + 3);
- }
+ setAction("inline-latex");
+ // cm.replaceSelection('`$$' + selection + '$$`')
+ // if (selection === '') {
+ // cm.setCursor(cursor.line, cursor.ch + 3)
+ // }
return cm.focus();
case 'latex':
cm.replaceSelection("```latex\n" + selection + "\n```");
@@ -4577,6 +5488,9 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
case DRAW_IMAGE:
setAction(DRAW_IMAGE);
return;
+ case "maths-latex":
+ setAction("maths-latex");
+ return;
case ADD_FLOWCHART:
setAction(ADD_FLOWCHART);
return;
@@ -4601,6 +5515,26 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
content = values.content;
cm.replaceSelection(['```' + language, content, '```'].join('\n'));
return cm.focus();
+ case "maths-latex":
+ var binaryString = atob(values);
+ var uint8Array = new Uint8Array(binaryString.length);
+ for (var i = 0; i < binaryString.length; i++) {
+ uint8Array[i] = binaryString.charCodeAt(i);
+ }
+ var files = new Blob([uint8Array], {
+ type: "image/png"
+ });
+ uploadImage(files, function (data) {
+ if (data.id) {
+ cm.replaceSelection(".concat(data.content_type, ")"));
+ } else {
+ if ((data === null || data === void 0 ? void 0 : data.status) === 401) document.location.href = '/user/login';
+ }
+ });
+ break;
+ case "inline-latex":
+ cm.replaceSelection("`$$" + values + "$$`");
+ break;
case UPLOAD_IMAGE:
case DRAW_IMAGE:
case FLOW_CHART:
@@ -4678,6 +5612,16 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
callback: ExecutePluginAction,
onCancel: onCancel
});
+ case "maths-latex":
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(MathematicalGraphics, {
+ showSaveButton: true,
+ callback: ExecutePluginAction
+ });
+ case "inline-latex":
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(keybords/* default */.Z, {
+ showSaveButton: true,
+ callback: ExecutePluginAction
+ });
default:
return null;
}
@@ -4818,7 +5762,7 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
onCancel: onCancel,
footer: null,
destroyOnClose: true,
- width: action === ADD_FLOWCHART ? "1200px" : 520,
+ width: action === ADD_FLOWCHART ? "1200px" : null,
height: action === ADD_FLOWCHART ? "80vh" : null,
className: "markdown-popup-form",
children: PluginEl
@@ -4885,7 +5829,7 @@ var Dialog = /*#__PURE__*/function (_React$Component) {
/***/ }),
-/***/ 96321:
+/***/ 49177:
/*!****************************************************************!*\
!*** ./src/components/ui-customization/index.tsx + 34 modules ***!
\****************************************************************/
@@ -5151,7 +6095,7 @@ var SuperiorTabs = function SuperiorTabs(_ref) {
// extracted by mini-css-extract-plugin
/* harmony default export */ var CustomInputmodules = ({"flex_box_center":"flex_box_center___yX6Oa","flex_space_between":"flex_space_between___t7oqF","flex_box_vertical_center":"flex_box_vertical_center___dEIHy","flex_box_center_end":"flex_box_center_end___taQDF","flex_box_column":"flex_box_column___xY_Lr","input":"input___PW2zI","dropdown":"dropdown___vSy8B","menu":"menu___NiyBu","text":"text___Grueu","b1":"b1___ZKryM","b2":"b2___aKyGa"});
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
-var input = __webpack_require__(1056);
+var input = __webpack_require__(11694);
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomInput/index.tsx
@@ -5299,7 +6243,7 @@ var spin = __webpack_require__(71418);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
var tooltip = __webpack_require__(6848);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/index.js + 8 modules
-var rate = __webpack_require__(19479);
+var rate = __webpack_require__(91052);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(83877);
// EXTERNAL MODULE: ./src/utils/util.tsx
@@ -6297,7 +7241,7 @@ var Detailmodules = __webpack_require__(50977);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
var tooltip = __webpack_require__(6848);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/table/index.js + 85 modules
-var table = __webpack_require__(72315);
+var table = __webpack_require__(96860);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/row/index.js
var row = __webpack_require__(95237);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/col/index.js
@@ -6544,7 +7488,7 @@ var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
var objectWithoutProperties = __webpack_require__(39647);
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/upload/index.js + 24 modules
-var upload = __webpack_require__(48826);
+var upload = __webpack_require__(53188);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
var es_form = __webpack_require__(78241);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
@@ -6554,7 +7498,7 @@ var modal = __webpack_require__(43418);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/spin/index.js + 1 modules
var spin = __webpack_require__(71418);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
-var input = __webpack_require__(1056);
+var input = __webpack_require__(11694);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/radio/index.js + 5 modules
var es_radio = __webpack_require__(5112);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
@@ -6928,9 +7872,9 @@ var AppplyDepartmentModal = __webpack_require__(44486);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/cascader/index.js + 18 modules
var cascader = __webpack_require__(19842);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CheckCircleFilled.js + 1 modules
-var CheckCircleFilled = __webpack_require__(95934);
+var CheckCircleFilled = __webpack_require__(88812);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseCircleFilled.js + 1 modules
-var CloseCircleFilled = __webpack_require__(48796);
+var CloseCircleFilled = __webpack_require__(81941);
// EXTERNAL MODULE: ./src/utils/cityData.ts
var cityData = __webpack_require__(1672);
;// CONCATENATED MODULE: ./src/pages/Competitions/Detail/components/AppplySchoolModal/index.less?modules
@@ -8548,7 +9492,7 @@ function PerfectUser(_ref) {
}
/* harmony default export */ var PerfectuserInfon = (PerfectUser);
// EXTERNAL MODULE: ./src/components/ui-customization/index.tsx + 34 modules
-var ui_customization = __webpack_require__(96321);
+var ui_customization = __webpack_require__(49177);
;// CONCATENATED MODULE: ./src/pages/Competitions/Detail/AwardPdf.tsx
@@ -9136,7 +10080,7 @@ function RankingItem(_ref) {
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! antd */ 8591);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! antd */ 43418);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! antd */ 1056);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! antd */ 11694);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! antd */ 3113);
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/utils/fetch */ 41686);
/* harmony import */ var _utils_hooks_useInterval__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/utils/hooks/useInterval */ 70476);
@@ -9606,193 +10550,6 @@ function useInterval(callback, delay) {
/***/ }),
-/***/ 39790:
-/*!*****************************!*\
- !*** ./src/utils/marked.ts ***!
- \*****************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ AL: function() { return /* binding */ resetMathExpressions; },
-/* harmony export */ Iy: function() { return /* binding */ cleanToc; },
-/* harmony export */ Qv: function() { return /* binding */ getTocContent; },
-/* harmony export */ ez: function() { return /* binding */ getMathExpressions; },
-/* harmony export */ jb: function() { return /* binding */ lines; }
-/* harmony export */ });
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var marked__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! marked */ 32834);
-/* harmony import */ var marked__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(marked__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! marked/src/helpers */ 11690);
-/* harmony import */ var marked_src_helpers__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__);
-
-
-
-function indentCodeCompensation(raw, text) {
- var matchIndentToCode = raw.match(/^(\s+)(?:```)/);
- if (matchIndentToCode === null) {
- return text;
- }
- var indentToCode = matchIndentToCode[1];
- return text.split('\n').map(function (node) {
- var matchIndentInNode = node.match(/^\s+/);
- if (matchIndentInNode === null) {
- return node;
- }
- var _matchIndentInNode = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default()(matchIndentInNode, 1),
- indentInNode = _matchIndentInNode[0];
- if (indentInNode.length >= indentToCode.length) {
- return node.slice(indentToCode.length);
- }
- return node;
- }).join('\n');
-}
-//兼容之前的 ##标题式写法
-var toc = [];
-var ctx = [""];
-var renderer = new (marked__WEBPACK_IMPORTED_MODULE_1___default().Renderer)();
-var headingRegex = /^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/;
-function cleanToc() {
- toc.length = 0;
- ctx = [""];
-}
-var lines = {
- overflow: "hidden",
- WebkitBoxOrient: "vertical",
- display: "-webkit-box",
- WebkitLineClamp: 2
-};
-function buildToc(coll, k, level, ctx) {
- if (k >= coll.length || coll[k].level <= level) {
- return k;
- }
- var node = coll[k];
- ctx.push("- " + node.text + "");
- k++;
- var childCtx = [];
- k = buildToc(coll, k, node.level, childCtx);
- if (childCtx.length > 0) {
- ctx.push("
");
- childCtx.forEach(function (idm) {
- ctx.push(idm);
- });
- ctx.push("
");
- }
- ctx.push(" ");
- k = buildToc(coll, k, level, ctx);
- return k;
-}
-function getTocContent() {
- buildToc(toc, 0, 0, ctx);
- ctx.push("
");
- return ctx.join("");
-}
-var tokenizer = {
- heading: function heading(src) {
- var cap = headingRegex.exec(src);
- if (cap) {
- return {
- type: 'heading',
- raw: cap[0],
- depth: cap[1].length,
- text: cap[2]
- };
- }
- },
- fences: function fences(src) {
- var cap = this.rules.block.fences.exec(src);
- if (cap) {
- var raw = cap[0];
- var text = indentCodeCompensation(raw, cap[3] || '');
- var lang = cap[2] ? cap[2].trim() : cap[2];
- if (['latex', 'katex', 'math'].indexOf(lang) >= 0) {
- var id = next_id();
- var expression = text;
- text = id;
- math_expressions[id] = {
- type: 'block',
- expression: expression
- };
- }
- return {
- type: 'code',
- raw: raw,
- lang: lang,
- text: text
- };
- }
- }
-};
-var latexRegex = /(?:\${2})([^\n`]+?)(?:\${2})/gi;
-var katex_count = 0;
-var next_id = function next_id() {
- return "__special_katext_id_".concat(katex_count++, "__");
-};
-var math_expressions = {};
-function getMathExpressions() {
- return math_expressions;
-}
-function resetMathExpressions() {
- katex_count = 0;
- math_expressions = {};
-}
-function replace_math_with_ids(text) {
- text = text.replace(latexRegex, function (_match, expression) {
- var id = next_id();
- math_expressions[id] = {
- type: 'inline',
- expression: expression
- };
- return id;
- });
- return text;
-}
-var original_listitem = renderer.listitem;
-renderer.listitem = function (text) {
- return original_listitem(replace_math_with_ids(text));
-};
-var original_paragraph = renderer.paragraph;
-renderer.paragraph = function (text) {
- return original_paragraph(replace_math_with_ids(text));
-};
-var original_tablecell = renderer.tablecell;
-renderer.tablecell = function (content, flags) {
- return original_tablecell(replace_math_with_ids(content), flags);
-};
-renderer.code = function (code, infostring, escaped) {
- var lang = (infostring || '').match(/\S*/)[0];
- if (!lang) {
- return '
' + (escaped ? code : (0,marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__.escape)(code, true)) + '
';
- }
- if (['latex', 'katex', 'math'].indexOf(lang) >= 0) {
- return "".concat(code, "
");
- } else {
- return "").concat(escaped ? code : (0,marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__.escape)(code, true), "
\n");
- }
-};
-renderer.heading = function (text, level, raw) {
- var anchor = this.options.headerPrefix + raw.toLowerCase().replace(/[^\w\\u4e00-\\u9fa5]]+/g, '-');
- toc.push({
- anchor: anchor,
- level: level,
- text: text
- });
- return '' + text + ' ';
-};
-marked__WEBPACK_IMPORTED_MODULE_1___default().setOptions({
- silent: true,
- gfm: true,
- pedantic: false
-});
-marked__WEBPACK_IMPORTED_MODULE_1___default().use({
- tokenizer: tokenizer,
- renderer: renderer
-});
-/* harmony default export */ __webpack_exports__.ZP = ((marked__WEBPACK_IMPORTED_MODULE_1___default()));
-
-/***/ }),
-
/***/ 50977:
/*!**********************************************************!*\
!*** ./src/pages/Competitions/Detail/index.less?modules ***!
diff --git a/32198.chunk.css b/15385.chunk.css
similarity index 97%
rename from 32198.chunk.css
rename to 15385.chunk.css
index 0f57bda2a2..3d11b1793b 100644
--- a/32198.chunk.css
+++ b/15385.chunk.css
@@ -2958,6 +2958,99 @@ span.CodeMirror-selectedtext {
overflow: hidden;
}
+/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/components/MathsLatexKeybords/index.less?modules ***!
+ \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+.lists___xhHyq {
+ padding-bottom: 10px;
+}
+.lists___xhHyq code {
+ background: none !important;
+}
+.lists___xhHyq > div > div:first-child {
+ background: #f6f6f6;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+ padding: 10px 0;
+ font-size: 12px;
+ cursor: pointer;
+}
+.lists___xhHyq > div > div:first-child [class^="katex"] {
+ font-size: 22px;
+}
+.item___pWJAA {
+ position: relative;
+}
+.item___pWJAA:nth-last-child(-n + 3) .children___sDG61 {
+ left: auto;
+ left: initial;
+ right: 5px;
+}
+.item___pWJAA:hover {
+ z-index: 2147483648;
+}
+.item___pWJAA:hover .children___sDG61 {
+ display: block;
+}
+.children___sDG61 {
+ display: none;
+ position: absolute;
+ left: 6px;
+ top: 70px;
+ width: 440px;
+ max-height: 400px;
+ overflow: auto;
+ background: #fff;
+ border: 1px solid #ccc;
+ border-radius: 4px;
+ box-shadow: 0 0px 6px #ccc;
+ padding: 15px;
+}
+.children___sDG61 h1 {
+ font-size: 14px;
+ padding-top: 6px;
+}
+.children___sDG61 .diamond___FwgzD > div {
+ background: #f6f6f6;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+ cursor: pointer;
+ height: 50px;
+ font-size: 12px;
+ padding: 0 10px;
+ min-width: 80px;
+}
+.children___sDG61 .diamond___FwgzD > div [class^="katex"] {
+ font-size: 14px;
+}
+.button___WPN6r {
+ position: absolute;
+ right: 20px;
+ bottom: 20px;
+}
+.mathWrap___FmnMJ {
+ width: 800px;
+ height: 550px;
+}
+.mathFillWrap___PmY3H {
+ cursor: pointer;
+}
+.mathFillWrap___PmY3H ::part(menu-toggle) {
+ color: blue;
+ opacity: 1;
+ display: none;
+}
+.mathFillWrap___PmY3H math-field {
+ background: none;
+}
+.mathFillWrap___PmY3H * {
+ pointer-events: none;
+}
+
/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/components/ui-customization/ConfirmAndCancel/index.less?modules ***!
\***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
diff --git a/23760.async.js b/15389.async.js
similarity index 98%
rename from 23760.async.js
rename to 15389.async.js
index dfe0076f31..96e8426ff9 100644
--- a/23760.async.js
+++ b/15389.async.js
@@ -1,6 +1,6 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[23760],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[15389],{
-/***/ 47104:
+/***/ 30063:
/*!*************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseCircleOutlined.js + 1 modules ***!
\*************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_CloseCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/CloseCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/CloseCircleOutlined.js
// This icon file is generated automatically.
var CloseCircleOutlined = { "icon": { "tag": "svg", "attrs": { "fill-rule": "evenodd", "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm0 76c-205.4 0-372 166.6-372 372s166.6 372 372 372 372-166.6 372-372-166.6-372-372-372zm128.01 198.83c.03 0 .05.01.09.06l45.02 45.01a.2.2 0 01.05.09.12.12 0 010 .07c0 .02-.01.04-.05.08L557.25 512l127.87 127.86a.27.27 0 01.05.06v.02a.12.12 0 010 .07c0 .03-.01.05-.05.09l-45.02 45.02a.2.2 0 01-.09.05.12.12 0 01-.07 0c-.02 0-.04-.01-.08-.05L512 557.25 384.14 685.12c-.04.04-.06.05-.08.05a.12.12 0 01-.07 0c-.03 0-.05-.01-.09-.05l-45.02-45.02a.2.2 0 01-.05-.09.12.12 0 010-.07c0-.02.01-.04.06-.08L466.75 512 338.88 384.14a.27.27 0 01-.05-.06l-.01-.02a.12.12 0 010-.07c0-.03.01-.05.05-.09l45.02-45.02a.2.2 0 01.09-.05.12.12 0 01.07 0c.02 0 .04.01.08.06L512 466.75l127.86-127.86c.04-.05.06-.06.08-.06a.12.12 0 01.07 0z" } }] }, "name": "close-circle", "theme": "outlined" };
/* harmony default export */ var asn_CloseCircleOutlined = (CloseCircleOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 80045:
+/***/ 51954:
/*!*******************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules ***!
\*******************************************************************************************************************/
@@ -56,11 +56,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ExclamationCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
// This icon file is generated automatically.
var ExclamationCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }, { "tag": "path", "attrs": { "d": "M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z" } }] }, "name": "exclamation-circle", "theme": "outlined" };
/* harmony default export */ var asn_ExclamationCircleOutlined = (ExclamationCircleOutlined);
diff --git a/15446.async.js b/15446.async.js
new file mode 100644
index 0000000000..bd0bf1fdad
--- /dev/null
+++ b/15446.async.js
@@ -0,0 +1,1615 @@
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[15446,13488],{
+
+/***/ 15228:
+/*!*******************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/InboxOutlined.js + 1 modules ***!
+ \*******************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_InboxOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/InboxOutlined.js
+// This icon file is generated automatically.
+var InboxOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "0 0 1024 1024", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M885.2 446.3l-.2-.8-112.2-285.1c-5-16.1-19.9-27.2-36.8-27.2H281.2c-17 0-32.1 11.3-36.9 27.6L139.4 443l-.3.7-.2.8c-1.3 4.9-1.7 9.9-1 14.8-.1 1.6-.2 3.2-.2 4.8V830a60.9 60.9 0 0060.8 60.8h627.2c33.5 0 60.8-27.3 60.9-60.8V464.1c0-1.3 0-2.6-.1-3.7.4-4.9 0-9.6-1.3-14.1zm-295.8-43l-.3 15.7c-.8 44.9-31.8 75.1-77.1 75.1-22.1 0-41.1-7.1-54.8-20.6S436 441.2 435.6 419l-.3-15.7H229.5L309 210h399.2l81.7 193.3H589.4zm-375 76.8h157.3c24.3 57.1 76 90.8 140.4 90.8 33.7 0 65-9.4 90.3-27.2 22.2-15.6 39.5-37.4 50.7-63.6h156.5V814H214.4V480.1z" } }] }, "name": "inbox", "theme": "outlined" };
+/* harmony default export */ var asn_InboxOutlined = (InboxOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/InboxOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var InboxOutlined_InboxOutlined = function InboxOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_InboxOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_InboxOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(InboxOutlined_InboxOutlined));
+
+/***/ }),
+
+/***/ 77578:
+/*!**********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/_util/getRenderPropValue.js ***!
+ \**********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ Z: function() { return /* binding */ getRenderPropValue; }
+/* harmony export */ });
+const getRenderPropValue = propValue => {
+ if (!propValue) {
+ return null;
+ }
+ if (typeof propValue === 'function') {
+ return propValue();
+ }
+ return propValue;
+};
+
+/***/ }),
+
+/***/ 27666:
+/*!****************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/_util/throttleByAnimationFrame.js ***!
+ \****************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ 49397);
+/* harmony import */ var rc_util_es_raf__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! rc-util/es/raf */ 90571);
+
+
+function throttleByAnimationFrame(fn) {
+ let requestId;
+ const later = args => () => {
+ requestId = null;
+ fn.apply(void 0, (0,_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z)(args));
+ };
+ const throttled = function () {
+ if (requestId == null) {
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+ requestId = (0,rc_util_es_raf__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(later(args));
+ }
+ };
+ throttled.cancel = () => {
+ rc_util_es_raf__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z.cancel(requestId);
+ requestId = null;
+ };
+ return throttled;
+}
+/* harmony default export */ __webpack_exports__.Z = (throttleByAnimationFrame);
+
+/***/ }),
+
+/***/ 81228:
+/*!*********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/affix/index.js + 2 modules ***!
+ \*********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ affix; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/classCallCheck.js
+var classCallCheck = __webpack_require__(61577);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/createClass.js
+var createClass = __webpack_require__(22946);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/inherits.js
+var inherits = __webpack_require__(3711);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/createSuper.js + 1 modules
+var createSuper = __webpack_require__(44961);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-resize-observer@1.4.0@rc-resize-observer/es/index.js + 4 modules
+var es = __webpack_require__(28647);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
+var omit = __webpack_require__(99468);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/throttleByAnimationFrame.js
+var throttleByAnimationFrame = __webpack_require__(27666);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/affix/style/index.js
+
+// ============================== Shared ==============================
+const genSharedAffixStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [componentCls]: {
+ position: 'fixed',
+ zIndex: token.zIndexPopup
+ }
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var style = ((0,genComponentStyleHook/* default */.Z)('Affix', token => {
+ const affixToken = (0,statistic/* merge */.TS)(token, {
+ zIndexPopup: token.zIndexBase + 10
+ });
+ return [genSharedAffixStyle(affixToken)];
+}));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/affix/utils.js
+function getTargetRect(target) {
+ return target !== window ? target.getBoundingClientRect() : {
+ top: 0,
+ bottom: window.innerHeight
+ };
+}
+function getFixedTop(placeholderRect, targetRect, offsetTop) {
+ if (offsetTop !== undefined && targetRect.top > placeholderRect.top - offsetTop) {
+ return offsetTop + targetRect.top;
+ }
+ return undefined;
+}
+function getFixedBottom(placeholderRect, targetRect, offsetBottom) {
+ if (offsetBottom !== undefined && targetRect.bottom < placeholderRect.bottom + offsetBottom) {
+ const targetBottomOffset = window.innerHeight - targetRect.bottom;
+ return offsetBottom + targetBottomOffset;
+ }
+ return undefined;
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/affix/index.js
+"use client";
+
+
+
+
+
+
+
+
+
+
+
+
+
+const TRIGGER_EVENTS = ['resize', 'scroll', 'touchstart', 'touchmove', 'touchend', 'pageshow', 'load'];
+function getDefaultTarget() {
+ return typeof window !== 'undefined' ? window : null;
+}
+var AffixStatus;
+(function (AffixStatus) {
+ AffixStatus[AffixStatus["None"] = 0] = "None";
+ AffixStatus[AffixStatus["Prepare"] = 1] = "Prepare";
+})(AffixStatus || (AffixStatus = {}));
+let InternalAffix = /*#__PURE__*/function (_React$Component) {
+ (0,inherits/* default */.Z)(InternalAffix, _React$Component);
+ var _super = (0,createSuper/* default */.Z)(InternalAffix);
+ function InternalAffix() {
+ var _this;
+ (0,classCallCheck/* default */.Z)(this, InternalAffix);
+ _this = _super.apply(this, arguments);
+ _this.state = {
+ status: AffixStatus.None,
+ lastAffix: false,
+ prevTarget: null
+ };
+ _this.placeholderNodeRef = /*#__PURE__*/(0,_react_17_0_2_react.createRef)();
+ _this.fixedNodeRef = /*#__PURE__*/(0,_react_17_0_2_react.createRef)();
+ _this.addListeners = () => {
+ const targetFunc = _this.getTargetFunc();
+ const target = targetFunc === null || targetFunc === void 0 ? void 0 : targetFunc();
+ const {
+ prevTarget
+ } = _this.state;
+ if (prevTarget !== target) {
+ TRIGGER_EVENTS.forEach(eventName => {
+ prevTarget === null || prevTarget === void 0 ? void 0 : prevTarget.removeEventListener(eventName, _this.lazyUpdatePosition);
+ target === null || target === void 0 ? void 0 : target.addEventListener(eventName, _this.lazyUpdatePosition);
+ });
+ _this.updatePosition();
+ _this.setState({
+ prevTarget: target
+ });
+ }
+ };
+ _this.removeListeners = () => {
+ if (_this.timer) {
+ clearTimeout(_this.timer);
+ _this.timer = null;
+ }
+ const {
+ prevTarget
+ } = _this.state;
+ const targetFunc = _this.getTargetFunc();
+ const newTarget = targetFunc === null || targetFunc === void 0 ? void 0 : targetFunc();
+ TRIGGER_EVENTS.forEach(eventName => {
+ newTarget === null || newTarget === void 0 ? void 0 : newTarget.removeEventListener(eventName, _this.lazyUpdatePosition);
+ prevTarget === null || prevTarget === void 0 ? void 0 : prevTarget.removeEventListener(eventName, _this.lazyUpdatePosition);
+ });
+ _this.updatePosition.cancel();
+ // https://github.com/ant-design/ant-design/issues/22683
+ _this.lazyUpdatePosition.cancel();
+ };
+ _this.getOffsetTop = () => {
+ const {
+ offsetBottom,
+ offsetTop
+ } = _this.props;
+ return offsetBottom === undefined && offsetTop === undefined ? 0 : offsetTop;
+ };
+ _this.getOffsetBottom = () => _this.props.offsetBottom;
+ // =================== Measure ===================
+ _this.measure = () => {
+ const {
+ status,
+ lastAffix
+ } = _this.state;
+ const {
+ onChange
+ } = _this.props;
+ const targetFunc = _this.getTargetFunc();
+ if (status !== AffixStatus.Prepare || !_this.fixedNodeRef.current || !_this.placeholderNodeRef.current || !targetFunc) {
+ return;
+ }
+ const offsetTop = _this.getOffsetTop();
+ const offsetBottom = _this.getOffsetBottom();
+ const targetNode = targetFunc();
+ if (targetNode) {
+ const newState = {
+ status: AffixStatus.None
+ };
+ const placeholderRect = getTargetRect(_this.placeholderNodeRef.current);
+ if (placeholderRect.top === 0 && placeholderRect.left === 0 && placeholderRect.width === 0 && placeholderRect.height === 0) {
+ return;
+ }
+ const targetRect = getTargetRect(targetNode);
+ const fixedTop = getFixedTop(placeholderRect, targetRect, offsetTop);
+ const fixedBottom = getFixedBottom(placeholderRect, targetRect, offsetBottom);
+ if (fixedTop !== undefined) {
+ newState.affixStyle = {
+ position: 'fixed',
+ top: fixedTop,
+ width: placeholderRect.width,
+ height: placeholderRect.height
+ };
+ newState.placeholderStyle = {
+ width: placeholderRect.width,
+ height: placeholderRect.height
+ };
+ } else if (fixedBottom !== undefined) {
+ newState.affixStyle = {
+ position: 'fixed',
+ bottom: fixedBottom,
+ width: placeholderRect.width,
+ height: placeholderRect.height
+ };
+ newState.placeholderStyle = {
+ width: placeholderRect.width,
+ height: placeholderRect.height
+ };
+ }
+ newState.lastAffix = !!newState.affixStyle;
+ if (onChange && lastAffix !== newState.lastAffix) {
+ onChange(newState.lastAffix);
+ }
+ _this.setState(newState);
+ }
+ };
+ _this.prepareMeasure = () => {
+ // event param is used before. Keep compatible ts define here.
+ _this.setState({
+ status: AffixStatus.Prepare,
+ affixStyle: undefined,
+ placeholderStyle: undefined
+ });
+ // Test if `updatePosition` called
+ if (false) {}
+ };
+ _this.updatePosition = (0,throttleByAnimationFrame/* default */.Z)(() => {
+ _this.prepareMeasure();
+ });
+ _this.lazyUpdatePosition = (0,throttleByAnimationFrame/* default */.Z)(() => {
+ const targetFunc = _this.getTargetFunc();
+ const {
+ affixStyle
+ } = _this.state;
+ // Check position change before measure to make Safari smooth
+ if (targetFunc && affixStyle) {
+ const offsetTop = _this.getOffsetTop();
+ const offsetBottom = _this.getOffsetBottom();
+ const targetNode = targetFunc();
+ if (targetNode && _this.placeholderNodeRef.current) {
+ const targetRect = getTargetRect(targetNode);
+ const placeholderRect = getTargetRect(_this.placeholderNodeRef.current);
+ const fixedTop = getFixedTop(placeholderRect, targetRect, offsetTop);
+ const fixedBottom = getFixedBottom(placeholderRect, targetRect, offsetBottom);
+ if (fixedTop !== undefined && affixStyle.top === fixedTop || fixedBottom !== undefined && affixStyle.bottom === fixedBottom) {
+ return;
+ }
+ }
+ }
+ // Directly call prepare measure since it's already throttled.
+ _this.prepareMeasure();
+ });
+ return _this;
+ }
+ (0,createClass/* default */.Z)(InternalAffix, [{
+ key: "getTargetFunc",
+ value: function getTargetFunc() {
+ const {
+ getTargetContainer
+ } = this.context;
+ const {
+ target
+ } = this.props;
+ if (target !== undefined) {
+ return target;
+ }
+ return getTargetContainer !== null && getTargetContainer !== void 0 ? getTargetContainer : getDefaultTarget;
+ }
+ // Event handler
+ }, {
+ key: "componentDidMount",
+ value: function componentDidMount() {
+ // [Legacy] Wait for parent component ref has its value.
+ // We should use target as directly element instead of function which makes element check hard.
+ this.timer = setTimeout(this.addListeners);
+ }
+ }, {
+ key: "componentDidUpdate",
+ value: function componentDidUpdate(prevProps) {
+ this.addListeners();
+ if (prevProps.offsetTop !== this.props.offsetTop || prevProps.offsetBottom !== this.props.offsetBottom) {
+ this.updatePosition();
+ }
+ this.measure();
+ }
+ }, {
+ key: "componentWillUnmount",
+ value: function componentWillUnmount() {
+ this.removeListeners();
+ }
+ // =================== Render ===================
+ }, {
+ key: "render",
+ value: function render() {
+ const {
+ affixStyle,
+ placeholderStyle
+ } = this.state;
+ const {
+ affixPrefixCls,
+ rootClassName,
+ children
+ } = this.props;
+ const className = _classnames_2_5_1_classnames_default()(affixStyle && rootClassName, {
+ [affixPrefixCls]: !!affixStyle
+ });
+ let props = (0,omit/* default */.Z)(this.props, ['prefixCls', 'offsetTop', 'offsetBottom', 'target', 'onChange', 'affixPrefixCls', 'rootClassName']);
+ // Omit this since `onTestUpdatePosition` only works on test.
+ if (false) {}
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, {
+ onResize: this.updatePosition
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", Object.assign({}, props, {
+ ref: this.placeholderNodeRef
+ }), affixStyle && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ style: placeholderStyle,
+ "aria-hidden": "true"
+ }), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: className,
+ ref: this.fixedNodeRef,
+ style: affixStyle
+ }, /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, {
+ onResize: this.updatePosition
+ }, children))));
+ }
+ }]);
+ return InternalAffix;
+}(_react_17_0_2_react.Component);
+InternalAffix.contextType = context/* ConfigContext */.E_;
+const Affix = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)((props, ref) => {
+ const {
+ prefixCls: customizePrefixCls,
+ rootClassName
+ } = props;
+ const {
+ getPrefixCls
+ } = (0,_react_17_0_2_react.useContext)(context/* ConfigContext */.E_);
+ const affixPrefixCls = getPrefixCls('affix', customizePrefixCls);
+ const [wrapSSR, hashId] = style(affixPrefixCls);
+ const AffixProps = Object.assign(Object.assign({}, props), {
+ affixPrefixCls,
+ rootClassName: _classnames_2_5_1_classnames_default()(rootClassName, hashId)
+ });
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(InternalAffix, Object.assign({}, AffixProps, {
+ ref: ref
+ })));
+});
+if (false) {}
+/* harmony default export */ var affix = (Affix);
+
+/***/ }),
+
+/***/ 39722:
+/*!***************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/PurePanel.js ***!
+ \***************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ t5: function() { return /* binding */ RawPurePanel; }
+/* harmony export */ });
+/* unused harmony export getOverlay */
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var rc_tooltip__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rc-tooltip */ 55477);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../config-provider */ 36355);
+/* harmony import */ var _util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../_util/getRenderPropValue */ 77578);
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./style */ 17356);
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+const getOverlay = (prefixCls, title, content) => {
+ if (!title && !content) return undefined;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(react__WEBPACK_IMPORTED_MODULE_2__.Fragment, null, title && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-title`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__/* .getRenderPropValue */ .Z)(title)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-inner-content`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__/* .getRenderPropValue */ .Z)(content)));
+};
+const RawPurePanel = props => {
+ const {
+ hashId,
+ prefixCls,
+ className,
+ style,
+ placement = 'top',
+ title,
+ content,
+ children
+ } = props;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: classnames__WEBPACK_IMPORTED_MODULE_0___default()(hashId, prefixCls, `${prefixCls}-pure`, `${prefixCls}-placement-${placement}`, className),
+ style: style
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-arrow`
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(rc_tooltip__WEBPACK_IMPORTED_MODULE_1__/* .Popup */ .G, Object.assign({}, props, {
+ className: hashId,
+ prefixCls: prefixCls
+ }), children || getOverlay(prefixCls, title, content)));
+};
+const PurePanel = props => {
+ const {
+ prefixCls: customizePrefixCls
+ } = props,
+ restProps = __rest(props, ["prefixCls"]);
+ const {
+ getPrefixCls
+ } = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_4__/* .ConfigContext */ .E_);
+ const prefixCls = getPrefixCls('popover', customizePrefixCls);
+ const [wrapSSR, hashId] = (0,_style__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)(prefixCls);
+ return wrapSSR( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(RawPurePanel, Object.assign({}, restProps, {
+ prefixCls: prefixCls,
+ hashId: hashId
+ })));
+};
+/* harmony default export */ __webpack_exports__.ZP = (PurePanel);
+
+/***/ }),
+
+/***/ 60324:
+/*!***********************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/index.js ***!
+ \***********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../_util/getRenderPropValue */ 77578);
+/* harmony import */ var _util_motion__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../_util/motion */ 62892);
+/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../config-provider */ 36355);
+/* harmony import */ var _tooltip__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../tooltip */ 6848);
+/* harmony import */ var _PurePanel__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./PurePanel */ 39722);
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./style */ 17356);
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+// CSSINJS
+
+const Overlay = _ref => {
+ let {
+ title,
+ content,
+ prefixCls
+ } = _ref;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, title && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", {
+ className: `${prefixCls}-title`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__/* .getRenderPropValue */ .Z)(title)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", {
+ className: `${prefixCls}-inner-content`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__/* .getRenderPropValue */ .Z)(content)));
+};
+const Popover = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.forwardRef((props, ref) => {
+ const {
+ prefixCls: customizePrefixCls,
+ title,
+ content,
+ overlayClassName,
+ placement = 'top',
+ trigger = 'hover',
+ mouseEnterDelay = 0.1,
+ mouseLeaveDelay = 0.1,
+ overlayStyle = {}
+ } = props,
+ otherProps = __rest(props, ["prefixCls", "title", "content", "overlayClassName", "placement", "trigger", "mouseEnterDelay", "mouseLeaveDelay", "overlayStyle"]);
+ const {
+ getPrefixCls
+ } = react__WEBPACK_IMPORTED_MODULE_1__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_3__/* .ConfigContext */ .E_);
+ const prefixCls = getPrefixCls('popover', customizePrefixCls);
+ const [wrapSSR, hashId] = (0,_style__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(prefixCls);
+ const rootPrefixCls = getPrefixCls();
+ const overlayCls = classnames__WEBPACK_IMPORTED_MODULE_0___default()(overlayClassName, hashId);
+ return wrapSSR( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_tooltip__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, Object.assign({
+ placement: placement,
+ trigger: trigger,
+ mouseEnterDelay: mouseEnterDelay,
+ mouseLeaveDelay: mouseLeaveDelay,
+ overlayStyle: overlayStyle
+ }, otherProps, {
+ prefixCls: prefixCls,
+ overlayClassName: overlayCls,
+ ref: ref,
+ overlay: title || content ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(Overlay, {
+ prefixCls: prefixCls,
+ title: title,
+ content: content
+ }) : null,
+ transitionName: (0,_util_motion__WEBPACK_IMPORTED_MODULE_6__/* .getTransitionName */ .m)(rootPrefixCls, 'zoom-big', otherProps.transitionName),
+ "data-popover-inject": true
+ })));
+});
+if (false) {}
+Popover._InternalPanelDoNotUseOrYouWillBeFired = _PurePanel__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP;
+/* harmony default export */ __webpack_exports__.Z = (Popover);
+
+/***/ }),
+
+/***/ 17356:
+/*!*****************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/style/index.js ***!
+ \*****************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../style */ 17313);
+/* harmony import */ var _style_motion__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../style/motion */ 29878);
+/* harmony import */ var _style_placementArrow__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../style/placementArrow */ 19447);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../theme/internal */ 33166);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../theme/internal */ 83116);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../theme/internal */ 37613);
+"use client";
+
+
+
+
+
+const genBaseStyle = token => {
+ const {
+ componentCls,
+ popoverColor,
+ minWidth,
+ fontWeightStrong,
+ popoverPadding,
+ boxShadowSecondary,
+ colorTextHeading,
+ borderRadiusLG: borderRadius,
+ zIndexPopup,
+ marginXS,
+ colorBgElevated,
+ popoverBg
+ } = token;
+ return [{
+ [componentCls]: Object.assign(Object.assign({}, (0,_style__WEBPACK_IMPORTED_MODULE_0__/* .resetComponent */ .Wf)(token)), {
+ position: 'absolute',
+ top: 0,
+ // use `left` to fix https://github.com/ant-design/ant-design/issues/39195
+ left: {
+ _skip_check_: true,
+ value: 0
+ },
+ zIndex: zIndexPopup,
+ fontWeight: 'normal',
+ whiteSpace: 'normal',
+ textAlign: 'start',
+ cursor: 'auto',
+ userSelect: 'text',
+ transformOrigin: `var(--arrow-x, 50%) var(--arrow-y, 50%)`,
+ '--antd-arrow-background-color': colorBgElevated,
+ '&-rtl': {
+ direction: 'rtl'
+ },
+ '&-hidden': {
+ display: 'none'
+ },
+ [`${componentCls}-content`]: {
+ position: 'relative'
+ },
+ [`${componentCls}-inner`]: {
+ backgroundColor: popoverBg,
+ backgroundClip: 'padding-box',
+ borderRadius,
+ boxShadow: boxShadowSecondary,
+ padding: popoverPadding
+ },
+ [`${componentCls}-title`]: {
+ minWidth,
+ marginBottom: marginXS,
+ color: colorTextHeading,
+ fontWeight: fontWeightStrong
+ },
+ [`${componentCls}-inner-content`]: {
+ color: popoverColor
+ }
+ })
+ },
+ // Arrow Style
+ (0,_style_placementArrow__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .ZP)(token, {
+ colorBg: 'var(--antd-arrow-background-color)'
+ }),
+ // Pure Render
+ {
+ [`${componentCls}-pure`]: {
+ position: 'relative',
+ maxWidth: 'none',
+ margin: token.sizePopupArrow,
+ display: 'inline-block',
+ [`${componentCls}-content`]: {
+ display: 'inline-block'
+ }
+ }
+ }];
+};
+const genColorStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [componentCls]: _theme_internal__WEBPACK_IMPORTED_MODULE_2__/* .PresetColors */ .i.map(colorKey => {
+ const lightColor = token[`${colorKey}6`];
+ return {
+ [`&${componentCls}-${colorKey}`]: {
+ '--antd-arrow-background-color': lightColor,
+ [`${componentCls}-inner`]: {
+ backgroundColor: lightColor
+ },
+ [`${componentCls}-arrow`]: {
+ background: 'transparent'
+ }
+ }
+ };
+ })
+ };
+};
+const genWireframeStyle = token => {
+ const {
+ componentCls,
+ lineWidth,
+ lineType,
+ colorSplit,
+ paddingSM,
+ controlHeight,
+ fontSize,
+ lineHeight,
+ padding
+ } = token;
+ const titlePaddingBlockDist = controlHeight - Math.round(fontSize * lineHeight);
+ const popoverTitlePaddingBlockTop = titlePaddingBlockDist / 2;
+ const popoverTitlePaddingBlockBottom = titlePaddingBlockDist / 2 - lineWidth;
+ const popoverPaddingHorizontal = padding;
+ return {
+ [componentCls]: {
+ [`${componentCls}-inner`]: {
+ padding: 0
+ },
+ [`${componentCls}-title`]: {
+ margin: 0,
+ padding: `${popoverTitlePaddingBlockTop}px ${popoverPaddingHorizontal}px ${popoverTitlePaddingBlockBottom}px`,
+ borderBottom: `${lineWidth}px ${lineType} ${colorSplit}`
+ },
+ [`${componentCls}-inner-content`]: {
+ padding: `${paddingSM}px ${popoverPaddingHorizontal}px`
+ }
+ }
+ };
+};
+/* harmony default export */ __webpack_exports__.Z = ((0,_theme_internal__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)('Popover', token => {
+ const {
+ colorBgElevated,
+ colorText,
+ wireframe
+ } = token;
+ const popoverToken = (0,_theme_internal__WEBPACK_IMPORTED_MODULE_4__/* .merge */ .TS)(token, {
+ popoverPadding: 12,
+ popoverBg: colorBgElevated,
+ popoverColor: colorText
+ });
+ return [genBaseStyle(popoverToken), genColorStyle(popoverToken), wireframe && genWireframeStyle(popoverToken), (0,_style_motion__WEBPACK_IMPORTED_MODULE_5__/* .initZoomMotion */ ._y)(popoverToken, 'zoom-big')];
+}, token => ({
+ width: 177,
+ minWidth: 177,
+ zIndexPopup: token.zIndexPopupBase + 30
+}), {
+ resetStyle: false,
+ deprecatedTokens: [['width', 'minWidth']]
+}));
+
+/***/ }),
+
+/***/ 78673:
+/*!**********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/switch/index.js + 2 modules ***!
+ \**********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ es_switch; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LoadingOutlined.js + 1 modules
+var LoadingOutlined = __webpack_require__(61138);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
+var useMergedState = __webpack_require__(84381);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+;// CONCATENATED MODULE: ./node_modules/_rc-switch@4.1.0@rc-switch/es/index.js
+
+
+
+
+var _excluded = ["prefixCls", "className", "checked", "defaultChecked", "disabled", "loadingIcon", "checkedChildren", "unCheckedChildren", "onClick", "onChange", "onKeyDown"];
+
+
+
+
+var Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (_ref, ref) {
+ var _classNames;
+ var _ref$prefixCls = _ref.prefixCls,
+ prefixCls = _ref$prefixCls === void 0 ? 'rc-switch' : _ref$prefixCls,
+ className = _ref.className,
+ checked = _ref.checked,
+ defaultChecked = _ref.defaultChecked,
+ disabled = _ref.disabled,
+ loadingIcon = _ref.loadingIcon,
+ checkedChildren = _ref.checkedChildren,
+ unCheckedChildren = _ref.unCheckedChildren,
+ onClick = _ref.onClick,
+ onChange = _ref.onChange,
+ onKeyDown = _ref.onKeyDown,
+ restProps = (0,objectWithoutProperties/* default */.Z)(_ref, _excluded);
+ var _useMergedState = (0,useMergedState/* default */.Z)(false, {
+ value: checked,
+ defaultValue: defaultChecked
+ }),
+ _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
+ innerChecked = _useMergedState2[0],
+ setInnerChecked = _useMergedState2[1];
+ function triggerChange(newChecked, event) {
+ var mergedChecked = innerChecked;
+ if (!disabled) {
+ mergedChecked = newChecked;
+ setInnerChecked(mergedChecked);
+ onChange === null || onChange === void 0 ? void 0 : onChange(mergedChecked, event);
+ }
+ return mergedChecked;
+ }
+ function onInternalKeyDown(e) {
+ if (e.which === KeyCode/* default */.Z.LEFT) {
+ triggerChange(false, e);
+ } else if (e.which === KeyCode/* default */.Z.RIGHT) {
+ triggerChange(true, e);
+ }
+ onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);
+ }
+ function onInternalClick(e) {
+ var ret = triggerChange(!innerChecked, e);
+ // [Legacy] trigger onClick with value
+ onClick === null || onClick === void 0 ? void 0 : onClick(ret, e);
+ }
+ var switchClassName = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-checked"), innerChecked), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), _classNames));
+ return /*#__PURE__*/_react_17_0_2_react.createElement("button", (0,esm_extends/* default */.Z)({}, restProps, {
+ type: "button",
+ role: "switch",
+ "aria-checked": innerChecked,
+ disabled: disabled,
+ className: switchClassName,
+ ref: ref,
+ onKeyDown: onInternalKeyDown,
+ onClick: onInternalClick
+ }), loadingIcon, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: "".concat(prefixCls, "-inner")
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: "".concat(prefixCls, "-inner-checked")
+ }, checkedChildren), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: "".concat(prefixCls, "-inner-unchecked")
+ }, unCheckedChildren)));
+});
+Switch.displayName = 'Switch';
+/* harmony default export */ var es = (Switch);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/wave/index.js + 4 modules
+var wave = __webpack_require__(14088);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/DisabledContext.js
+var DisabledContext = __webpack_require__(1684);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/hooks/useSize.js
+var useSize = __webpack_require__(19716);
+// EXTERNAL MODULE: ./node_modules/_@ctrl_tinycolor@3.6.1@@ctrl/tinycolor/dist/module/index.js
+var dist_module = __webpack_require__(64993);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/style/index.js
+
+
+
+const genSwitchSmallStyle = token => {
+ const {
+ componentCls,
+ trackHeightSM,
+ trackPadding,
+ trackMinWidthSM,
+ innerMinMarginSM,
+ innerMaxMarginSM,
+ handleSizeSM
+ } = token;
+ const switchInnerCls = `${componentCls}-inner`;
+ return {
+ [componentCls]: {
+ [`&${componentCls}-small`]: {
+ minWidth: trackMinWidthSM,
+ height: trackHeightSM,
+ lineHeight: `${trackHeightSM}px`,
+ [`${componentCls}-inner`]: {
+ paddingInlineStart: innerMaxMarginSM,
+ paddingInlineEnd: innerMinMarginSM,
+ [`${switchInnerCls}-checked`]: {
+ marginInlineStart: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`,
+ marginInlineEnd: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`
+ },
+ [`${switchInnerCls}-unchecked`]: {
+ marginTop: -trackHeightSM,
+ marginInlineStart: 0,
+ marginInlineEnd: 0
+ }
+ },
+ [`${componentCls}-handle`]: {
+ width: handleSizeSM,
+ height: handleSizeSM
+ },
+ [`${componentCls}-loading-icon`]: {
+ top: (handleSizeSM - token.switchLoadingIconSize) / 2,
+ fontSize: token.switchLoadingIconSize
+ },
+ [`&${componentCls}-checked`]: {
+ [`${componentCls}-inner`]: {
+ paddingInlineStart: innerMinMarginSM,
+ paddingInlineEnd: innerMaxMarginSM,
+ [`${switchInnerCls}-checked`]: {
+ marginInlineStart: 0,
+ marginInlineEnd: 0
+ },
+ [`${switchInnerCls}-unchecked`]: {
+ marginInlineStart: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`,
+ marginInlineEnd: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`
+ }
+ },
+ [`${componentCls}-handle`]: {
+ insetInlineStart: `calc(100% - ${handleSizeSM + trackPadding}px)`
+ }
+ },
+ [`&:not(${componentCls}-disabled):active`]: {
+ [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
+ [`${switchInnerCls}-unchecked`]: {
+ marginInlineStart: token.marginXXS / 2,
+ marginInlineEnd: -token.marginXXS / 2
+ }
+ },
+ [`&${componentCls}-checked ${switchInnerCls}`]: {
+ [`${switchInnerCls}-checked`]: {
+ marginInlineStart: -token.marginXXS / 2,
+ marginInlineEnd: token.marginXXS / 2
+ }
+ }
+ }
+ }
+ }
+ };
+};
+const genSwitchLoadingStyle = token => {
+ const {
+ componentCls,
+ handleSize
+ } = token;
+ return {
+ [componentCls]: {
+ [`${componentCls}-loading-icon${token.iconCls}`]: {
+ position: 'relative',
+ top: (handleSize - token.fontSize) / 2,
+ color: token.switchLoadingIconColor,
+ verticalAlign: 'top'
+ },
+ [`&${componentCls}-checked ${componentCls}-loading-icon`]: {
+ color: token.switchColor
+ }
+ }
+ };
+};
+const genSwitchHandleStyle = token => {
+ const {
+ componentCls,
+ motion,
+ trackPadding,
+ handleBg,
+ handleShadow,
+ handleSize
+ } = token;
+ const switchHandleCls = `${componentCls}-handle`;
+ return {
+ [componentCls]: {
+ [switchHandleCls]: {
+ position: 'absolute',
+ top: trackPadding,
+ insetInlineStart: trackPadding,
+ width: handleSize,
+ height: handleSize,
+ transition: `all ${token.switchDuration} ease-in-out`,
+ '&::before': {
+ position: 'absolute',
+ top: 0,
+ insetInlineEnd: 0,
+ bottom: 0,
+ insetInlineStart: 0,
+ backgroundColor: handleBg,
+ borderRadius: handleSize / 2,
+ boxShadow: handleShadow,
+ transition: `all ${token.switchDuration} ease-in-out`,
+ content: '""'
+ }
+ },
+ [`&${componentCls}-checked ${switchHandleCls}`]: {
+ insetInlineStart: `calc(100% - ${handleSize + trackPadding}px)`
+ },
+ [`&:not(${componentCls}-disabled):active`]: motion ? {
+ [`${switchHandleCls}::before`]: {
+ insetInlineEnd: token.switchHandleActiveInset,
+ insetInlineStart: 0
+ },
+ [`&${componentCls}-checked ${switchHandleCls}::before`]: {
+ insetInlineEnd: 0,
+ insetInlineStart: token.switchHandleActiveInset
+ }
+ } : /* istanbul ignore next */
+ {}
+ }
+ };
+};
+const genSwitchInnerStyle = token => {
+ const {
+ componentCls,
+ trackHeight,
+ trackPadding,
+ innerMinMargin,
+ innerMaxMargin,
+ handleSize
+ } = token;
+ const switchInnerCls = `${componentCls}-inner`;
+ return {
+ [componentCls]: {
+ [switchInnerCls]: {
+ display: 'block',
+ overflow: 'hidden',
+ borderRadius: 100,
+ height: '100%',
+ paddingInlineStart: innerMaxMargin,
+ paddingInlineEnd: innerMinMargin,
+ transition: `padding-inline-start ${token.switchDuration} ease-in-out, padding-inline-end ${token.switchDuration} ease-in-out`,
+ [`${switchInnerCls}-checked, ${switchInnerCls}-unchecked`]: {
+ display: 'block',
+ color: token.colorTextLightSolid,
+ fontSize: token.fontSizeSM,
+ transition: `margin-inline-start ${token.switchDuration} ease-in-out, margin-inline-end ${token.switchDuration} ease-in-out`,
+ pointerEvents: 'none'
+ },
+ [`${switchInnerCls}-checked`]: {
+ marginInlineStart: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`,
+ marginInlineEnd: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`
+ },
+ [`${switchInnerCls}-unchecked`]: {
+ marginTop: -trackHeight,
+ marginInlineStart: 0,
+ marginInlineEnd: 0
+ }
+ },
+ [`&${componentCls}-checked ${switchInnerCls}`]: {
+ paddingInlineStart: innerMinMargin,
+ paddingInlineEnd: innerMaxMargin,
+ [`${switchInnerCls}-checked`]: {
+ marginInlineStart: 0,
+ marginInlineEnd: 0
+ },
+ [`${switchInnerCls}-unchecked`]: {
+ marginInlineStart: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`,
+ marginInlineEnd: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`
+ }
+ },
+ [`&:not(${componentCls}-disabled):active`]: {
+ [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
+ [`${switchInnerCls}-unchecked`]: {
+ marginInlineStart: trackPadding * 2,
+ marginInlineEnd: -trackPadding * 2
+ }
+ },
+ [`&${componentCls}-checked ${switchInnerCls}`]: {
+ [`${switchInnerCls}-checked`]: {
+ marginInlineStart: -trackPadding * 2,
+ marginInlineEnd: trackPadding * 2
+ }
+ }
+ }
+ }
+ };
+};
+const genSwitchStyle = token => {
+ const {
+ componentCls,
+ trackHeight,
+ trackMinWidth
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ position: 'relative',
+ display: 'inline-block',
+ boxSizing: 'border-box',
+ minWidth: trackMinWidth,
+ height: trackHeight,
+ lineHeight: `${trackHeight}px`,
+ verticalAlign: 'middle',
+ background: token.colorTextQuaternary,
+ border: '0',
+ borderRadius: 100,
+ cursor: 'pointer',
+ transition: `all ${token.motionDurationMid}`,
+ userSelect: 'none',
+ [`&:hover:not(${componentCls}-disabled)`]: {
+ background: token.colorTextTertiary
+ }
+ }), (0,style/* genFocusStyle */.Qy)(token)), {
+ [`&${componentCls}-checked`]: {
+ background: token.switchColor,
+ [`&:hover:not(${componentCls}-disabled)`]: {
+ background: token.colorPrimaryHover
+ }
+ },
+ [`&${componentCls}-loading, &${componentCls}-disabled`]: {
+ cursor: 'not-allowed',
+ opacity: token.switchDisabledOpacity,
+ '*': {
+ boxShadow: 'none',
+ cursor: 'not-allowed'
+ }
+ },
+ // rtl style
+ [`&${componentCls}-rtl`]: {
+ direction: 'rtl'
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var switch_style = ((0,genComponentStyleHook/* default */.Z)('Switch', token => {
+ const switchToken = (0,statistic/* merge */.TS)(token, {
+ switchDuration: token.motionDurationMid,
+ switchColor: token.colorPrimary,
+ switchDisabledOpacity: token.opacityLoading,
+ switchLoadingIconSize: token.fontSizeIcon * 0.75,
+ switchLoadingIconColor: `rgba(0, 0, 0, ${token.opacityLoading})`,
+ switchHandleActiveInset: '-30%'
+ });
+ return [genSwitchStyle(switchToken),
+ // inner style
+ genSwitchInnerStyle(switchToken),
+ // handle style
+ genSwitchHandleStyle(switchToken),
+ // loading style
+ genSwitchLoadingStyle(switchToken),
+ // small style
+ genSwitchSmallStyle(switchToken)];
+}, token => {
+ const {
+ fontSize,
+ lineHeight,
+ controlHeight,
+ colorWhite
+ } = token;
+ const height = fontSize * lineHeight;
+ const heightSM = controlHeight / 2;
+ const padding = 2; // Fixed value
+ const handleSize = height - padding * 2;
+ const handleSizeSM = heightSM - padding * 2;
+ return {
+ trackHeight: height,
+ trackHeightSM: heightSM,
+ trackMinWidth: handleSize * 2 + padding * 4,
+ trackMinWidthSM: handleSizeSM * 2 + padding * 2,
+ trackPadding: padding,
+ handleBg: colorWhite,
+ handleSize,
+ handleSizeSM,
+ handleShadow: `0 2px 4px 0 ${new dist_module/* TinyColor */.C('#00230b').setAlpha(0.2).toRgbString()}`,
+ innerMinMargin: handleSize / 2,
+ innerMaxMargin: handleSize + padding + padding * 2,
+ innerMinMarginSM: handleSizeSM / 2,
+ innerMaxMarginSM: handleSizeSM + padding + padding * 2
+ };
+}));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+
+
+
+const switch_Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ const {
+ prefixCls: customizePrefixCls,
+ size: customizeSize,
+ disabled: customDisabled,
+ loading,
+ className,
+ rootClassName,
+ style
+ } = props,
+ restProps = __rest(props, ["prefixCls", "size", "disabled", "loading", "className", "rootClassName", "style"]);
+ false ? 0 : void 0;
+ const {
+ getPrefixCls,
+ direction,
+ switch: SWITCH
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ // ===================== Disabled =====================
+ const disabled = _react_17_0_2_react.useContext(DisabledContext/* default */.Z);
+ const mergedDisabled = (customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled) || loading;
+ const prefixCls = getPrefixCls('switch', customizePrefixCls);
+ const loadingIcon = /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-handle`
+ }, loading && /*#__PURE__*/_react_17_0_2_react.createElement(LoadingOutlined/* default */.Z, {
+ className: `${prefixCls}-loading-icon`
+ }));
+ // Style
+ const [wrapSSR, hashId] = switch_style(prefixCls);
+ const mergedSize = (0,useSize/* default */.Z)(customizeSize);
+ const classes = _classnames_2_5_1_classnames_default()(SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.className, {
+ [`${prefixCls}-small`]: mergedSize === 'small',
+ [`${prefixCls}-loading`]: loading,
+ [`${prefixCls}-rtl`]: direction === 'rtl'
+ }, className, rootClassName, hashId);
+ const mergedStyle = Object.assign(Object.assign({}, SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.style), style);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(wave/* default */.Z, {
+ component: "Switch"
+ }, /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({}, restProps, {
+ prefixCls: prefixCls,
+ className: classes,
+ style: mergedStyle,
+ disabled: mergedDisabled,
+ ref: ref,
+ loadingIcon: loadingIcon
+ }))));
+});
+switch_Switch.__ANT_SWITCH = true;
+if (false) {}
+/* harmony default export */ var es_switch = (switch_Switch);
+
+/***/ }),
+
+/***/ 51581:
+/*!****************************************************************************************************!*\
+ !*** ./node_modules/_react-infinite-scroller@1.2.4@react-infinite-scroller/dist/InfiniteScroll.js ***!
+ \****************************************************************************************************/
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", ({
+ value: true
+}));
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = __webpack_require__(/*! react */ 59301);
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = __webpack_require__(/*! prop-types */ 12708);
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+var InfiniteScroll = function (_Component) {
+ _inherits(InfiniteScroll, _Component);
+
+ function InfiniteScroll(props) {
+ _classCallCheck(this, InfiniteScroll);
+
+ var _this = _possibleConstructorReturn(this, (InfiniteScroll.__proto__ || Object.getPrototypeOf(InfiniteScroll)).call(this, props));
+
+ _this.scrollListener = _this.scrollListener.bind(_this);
+ _this.eventListenerOptions = _this.eventListenerOptions.bind(_this);
+ _this.mousewheelListener = _this.mousewheelListener.bind(_this);
+ return _this;
+ }
+
+ _createClass(InfiniteScroll, [{
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ this.pageLoaded = this.props.pageStart;
+ this.options = this.eventListenerOptions();
+ this.attachScrollListener();
+ }
+ }, {
+ key: 'componentDidUpdate',
+ value: function componentDidUpdate() {
+ if (this.props.isReverse && this.loadMore) {
+ var parentElement = this.getParentElement(this.scrollComponent);
+ parentElement.scrollTop = parentElement.scrollHeight - this.beforeScrollHeight + this.beforeScrollTop;
+ this.loadMore = false;
+ }
+ this.attachScrollListener();
+ }
+ }, {
+ key: 'componentWillUnmount',
+ value: function componentWillUnmount() {
+ this.detachScrollListener();
+ this.detachMousewheelListener();
+ }
+ }, {
+ key: 'isPassiveSupported',
+ value: function isPassiveSupported() {
+ var passive = false;
+
+ var testOptions = {
+ get passive() {
+ passive = true;
+ }
+ };
+
+ try {
+ document.addEventListener('test', null, testOptions);
+ document.removeEventListener('test', null, testOptions);
+ } catch (e) {
+ // ignore
+ }
+ return passive;
+ }
+ }, {
+ key: 'eventListenerOptions',
+ value: function eventListenerOptions() {
+ var options = this.props.useCapture;
+
+ if (this.isPassiveSupported()) {
+ options = {
+ useCapture: this.props.useCapture,
+ passive: true
+ };
+ }
+ return options;
+ }
+
+ // Set a defaut loader for all your `InfiniteScroll` components
+
+ }, {
+ key: 'setDefaultLoader',
+ value: function setDefaultLoader(loader) {
+ this.defaultLoader = loader;
+ }
+ }, {
+ key: 'detachMousewheelListener',
+ value: function detachMousewheelListener() {
+ var scrollEl = window;
+ if (this.props.useWindow === false) {
+ scrollEl = this.scrollComponent.parentNode;
+ }
+
+ scrollEl.removeEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);
+ }
+ }, {
+ key: 'detachScrollListener',
+ value: function detachScrollListener() {
+ var scrollEl = window;
+ if (this.props.useWindow === false) {
+ scrollEl = this.getParentElement(this.scrollComponent);
+ }
+
+ scrollEl.removeEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);
+ scrollEl.removeEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);
+ }
+ }, {
+ key: 'getParentElement',
+ value: function getParentElement(el) {
+ var scrollParent = this.props.getScrollParent && this.props.getScrollParent();
+ if (scrollParent != null) {
+ return scrollParent;
+ }
+ return el && el.parentNode;
+ }
+ }, {
+ key: 'filterProps',
+ value: function filterProps(props) {
+ return props;
+ }
+ }, {
+ key: 'attachScrollListener',
+ value: function attachScrollListener() {
+ var parentElement = this.getParentElement(this.scrollComponent);
+
+ if (!this.props.hasMore || !parentElement) {
+ return;
+ }
+
+ var scrollEl = window;
+ if (this.props.useWindow === false) {
+ scrollEl = parentElement;
+ }
+
+ scrollEl.addEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);
+ scrollEl.addEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);
+ scrollEl.addEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);
+
+ if (this.props.initialLoad) {
+ this.scrollListener();
+ }
+ }
+ }, {
+ key: 'mousewheelListener',
+ value: function mousewheelListener(e) {
+ // Prevents Chrome hangups
+ // See: https://stackoverflow.com/questions/47524205/random-high-content-download-time-in-chrome/47684257#47684257
+ if (e.deltaY === 1 && !this.isPassiveSupported()) {
+ e.preventDefault();
+ }
+ }
+ }, {
+ key: 'scrollListener',
+ value: function scrollListener() {
+ var el = this.scrollComponent;
+ var scrollEl = window;
+ var parentNode = this.getParentElement(el);
+
+ var offset = void 0;
+ if (this.props.useWindow) {
+ var doc = document.documentElement || document.body.parentNode || document.body;
+ var scrollTop = scrollEl.pageYOffset !== undefined ? scrollEl.pageYOffset : doc.scrollTop;
+ if (this.props.isReverse) {
+ offset = scrollTop;
+ } else {
+ offset = this.calculateOffset(el, scrollTop);
+ }
+ } else if (this.props.isReverse) {
+ offset = parentNode.scrollTop;
+ } else {
+ offset = el.scrollHeight - parentNode.scrollTop - parentNode.clientHeight;
+ }
+
+ // Here we make sure the element is visible as well as checking the offset
+ if (offset < Number(this.props.threshold) && el && el.offsetParent !== null) {
+ this.detachScrollListener();
+ this.beforeScrollHeight = parentNode.scrollHeight;
+ this.beforeScrollTop = parentNode.scrollTop;
+ // Call loadMore after detachScrollListener to allow for non-async loadMore functions
+ if (typeof this.props.loadMore === 'function') {
+ this.props.loadMore(this.pageLoaded += 1);
+ this.loadMore = true;
+ }
+ }
+ }
+ }, {
+ key: 'calculateOffset',
+ value: function calculateOffset(el, scrollTop) {
+ if (!el) {
+ return 0;
+ }
+
+ return this.calculateTopPosition(el) + (el.offsetHeight - scrollTop - window.innerHeight);
+ }
+ }, {
+ key: 'calculateTopPosition',
+ value: function calculateTopPosition(el) {
+ if (!el) {
+ return 0;
+ }
+ return el.offsetTop + this.calculateTopPosition(el.offsetParent);
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this2 = this;
+
+ var renderProps = this.filterProps(this.props);
+
+ var children = renderProps.children,
+ element = renderProps.element,
+ hasMore = renderProps.hasMore,
+ initialLoad = renderProps.initialLoad,
+ isReverse = renderProps.isReverse,
+ loader = renderProps.loader,
+ loadMore = renderProps.loadMore,
+ pageStart = renderProps.pageStart,
+ ref = renderProps.ref,
+ threshold = renderProps.threshold,
+ useCapture = renderProps.useCapture,
+ useWindow = renderProps.useWindow,
+ getScrollParent = renderProps.getScrollParent,
+ props = _objectWithoutProperties(renderProps, ['children', 'element', 'hasMore', 'initialLoad', 'isReverse', 'loader', 'loadMore', 'pageStart', 'ref', 'threshold', 'useCapture', 'useWindow', 'getScrollParent']);
+
+ props.ref = function (node) {
+ _this2.scrollComponent = node;
+ if (ref) {
+ ref(node);
+ }
+ };
+
+ var childrenArray = [children];
+ if (hasMore) {
+ if (loader) {
+ isReverse ? childrenArray.unshift(loader) : childrenArray.push(loader);
+ } else if (this.defaultLoader) {
+ isReverse ? childrenArray.unshift(this.defaultLoader) : childrenArray.push(this.defaultLoader);
+ }
+ }
+ return _react2.default.createElement(element, props, childrenArray);
+ }
+ }]);
+
+ return InfiniteScroll;
+}(_react.Component);
+
+InfiniteScroll.propTypes = {
+ children: _propTypes2.default.node.isRequired,
+ element: _propTypes2.default.node,
+ hasMore: _propTypes2.default.bool,
+ initialLoad: _propTypes2.default.bool,
+ isReverse: _propTypes2.default.bool,
+ loader: _propTypes2.default.node,
+ loadMore: _propTypes2.default.func.isRequired,
+ pageStart: _propTypes2.default.number,
+ ref: _propTypes2.default.func,
+ getScrollParent: _propTypes2.default.func,
+ threshold: _propTypes2.default.number,
+ useCapture: _propTypes2.default.bool,
+ useWindow: _propTypes2.default.bool
+};
+InfiniteScroll.defaultProps = {
+ element: 'div',
+ hasMore: false,
+ initialLoad: true,
+ pageStart: 0,
+ ref: null,
+ threshold: 250,
+ useWindow: true,
+ isReverse: false,
+ useCapture: false,
+ loader: null,
+ getScrollParent: null
+};
+exports["default"] = InfiniteScroll;
+module.exports = exports['default'];
+
+
+/***/ }),
+
+/***/ 26724:
+/*!**************************************************************************************!*\
+ !*** ./node_modules/_react-infinite-scroller@1.2.4@react-infinite-scroller/index.js ***!
+ \**************************************************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+module.exports = __webpack_require__(/*! ./dist/InfiniteScroll */ 51581)
+
+
+/***/ })
+
+}]);
\ No newline at end of file
diff --git a/23422.async.js b/18076.async.js
similarity index 98%
rename from 23422.async.js
rename to 18076.async.js
index c443d04706..0db184eaf9 100644
--- a/23422.async.js
+++ b/18076.async.js
@@ -1,6 +1,6 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[23422],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[18076],{
-/***/ 15997:
+/***/ 41435:
/*!*****************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules ***!
\*****************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_EyeOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeOutlined.js
// This icon file is generated automatically.
var EyeOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z" } }] }, "name": "eye", "theme": "outlined" };
/* harmony default export */ var asn_EyeOutlined = (EyeOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 80354:
+/***/ 48238:
/*!************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js + 1 modules ***!
\************************************************************************************************************/
@@ -56,11 +56,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_FolderOpenOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/FolderOpenOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/FolderOpenOutlined.js
// This icon file is generated automatically.
var FolderOpenOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z" } }] }, "name": "folder-open", "theme": "outlined" };
/* harmony default export */ var asn_FolderOpenOutlined = (FolderOpenOutlined);
@@ -86,7 +86,7 @@ if (false) {}
/***/ }),
-/***/ 46820:
+/***/ 23097:
/*!********************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SearchOutlined.js + 1 modules ***!
\********************************************************************************************************/
@@ -99,11 +99,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_SearchOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/SearchOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/SearchOutlined.js
// This icon file is generated automatically.
var SearchOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z" } }] }, "name": "search", "theme": "outlined" };
/* harmony default export */ var asn_SearchOutlined = (SearchOutlined);
@@ -150,7 +150,7 @@ var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_c
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EllipsisOutlined.js + 1 modules
-var EllipsisOutlined = __webpack_require__(93319);
+var EllipsisOutlined = __webpack_require__(12440);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
@@ -470,7 +470,7 @@ CompoundedSpace.Compact = Compact/* default */.ZP;
/***/ }),
-/***/ 51218:
+/***/ 66328:
/*!********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/tree/index.js + 8 modules ***!
\********************************************************************/
@@ -484,18 +484,18 @@ __webpack_require__.d(__webpack_exports__, {
});
// EXTERNAL MODULE: ./node_modules/_rc-tree@5.7.12@rc-tree/es/index.js + 7 modules
-var es = __webpack_require__(91265);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
+var es = __webpack_require__(11548);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FileOutlined.js + 1 modules
-var FileOutlined = __webpack_require__(87970);
+var FileOutlined = __webpack_require__(26298);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js + 1 modules
-var FolderOpenOutlined = __webpack_require__(80354);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+var FolderOpenOutlined = __webpack_require__(48238);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/FolderOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/FolderOutlined.js
// This icon file is generated automatically.
var FolderOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z" } }] }, "name": "folder", "theme": "outlined" };
/* harmony default export */ var asn_FolderOutlined = (FolderOutlined);
@@ -527,7 +527,7 @@ var util = __webpack_require__(35654);
var treeUtil = __webpack_require__(71430);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/HolderOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/HolderOutlined.js
// This icon file is generated automatically.
var HolderOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z" } }] }, "name": "holder", "theme": "outlined" };
/* harmony default export */ var asn_HolderOutlined = (HolderOutlined);
@@ -590,7 +590,7 @@ function dropIndicatorRender(props) {
});
}
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/utils/iconUtil.js + 2 modules
-var iconUtil = __webpack_require__(1711);
+var iconUtil = __webpack_require__(4006);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/Tree.js
"use client";
diff --git a/51001.async.js b/18301.async.js
similarity index 98%
rename from 51001.async.js
rename to 18301.async.js
index 2d13a0b766..1b1dccf7d3 100644
--- a/51001.async.js
+++ b/18301.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[51001,11658,66410],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[18301,53505,69483],{
-/***/ 15997:
+/***/ 41435:
/*!*****************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules ***!
\*****************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_EyeOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeOutlined.js
// This icon file is generated automatically.
var EyeOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z" } }] }, "name": "eye", "theme": "outlined" };
/* harmony default export */ var asn_EyeOutlined = (EyeOutlined);
@@ -69,7 +69,7 @@ var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
-var DownOutlined = __webpack_require__(42884);
+var DownOutlined = __webpack_require__(8415);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
var dropdown = __webpack_require__(91857);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
@@ -536,7 +536,7 @@ if (false) {}
/***/ }),
-/***/ 1056:
+/***/ 11694:
/*!*********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules ***!
\*********************************************************************/
@@ -606,9 +606,9 @@ const Group = props => {
/* harmony default export */ var input_Group = (Group);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/Input.js + 1 modules
var Input = __webpack_require__(9432);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
// This icon file is generated automatically.
var EyeInvisibleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z" } }, { "tag": "path", "attrs": { "d": "M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z" } }] }, "name": "eye-invisible", "theme": "outlined" };
/* harmony default export */ var asn_EyeInvisibleOutlined = (EyeInvisibleOutlined);
@@ -632,7 +632,7 @@ var EyeInvisibleOutlined_EyeInvisibleOutlined = function EyeInvisibleOutlined(pr
if (false) {}
/* harmony default export */ var icons_EyeInvisibleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(EyeInvisibleOutlined_EyeInvisibleOutlined));
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules
-var EyeOutlined = __webpack_require__(15997);
+var EyeOutlined = __webpack_require__(41435);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
@@ -754,7 +754,7 @@ const Password = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
if (false) {}
/* harmony default export */ var input_Password = (Password);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SearchOutlined.js + 1 modules
-var SearchOutlined = __webpack_require__(46820);
+var SearchOutlined = __webpack_require__(23097);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
diff --git a/19842.async.js b/19842.async.js
index e8d51d4c22..182d9e5542 100644
--- a/19842.async.js
+++ b/19842.async.js
@@ -13,25 +13,25 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ cascader; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LeftOutlined.js + 1 modules
-var LeftOutlined = __webpack_require__(52063);
+var LeftOutlined = __webpack_require__(60124);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LoadingOutlined.js + 1 modules
-var LoadingOutlined = __webpack_require__(38521);
+var LoadingOutlined = __webpack_require__(61138);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/RightOutlined.js + 1 modules
-var RightOutlined = __webpack_require__(22311);
+var RightOutlined = __webpack_require__(78864);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
// EXTERNAL MODULE: ./node_modules/_rc-select@14.8.1@rc-select/es/index.js + 28 modules
var es = __webpack_require__(77861);
// EXTERNAL MODULE: ./node_modules/_rc-select@14.8.1@rc-select/es/hooks/useId.js
@@ -46,12 +46,12 @@ var useMergedState = __webpack_require__(84381);
var CascaderContext = /*#__PURE__*/_react_17_0_2_react.createContext(null);
/* harmony default export */ var context = (CascaderContext);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/typeof.js
-var esm_typeof = __webpack_require__(2442);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectSpread2.js
-var objectSpread2 = __webpack_require__(96257);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/typeof.js
+var esm_typeof = __webpack_require__(13255);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectSpread2.js
+var objectSpread2 = __webpack_require__(54131);
;// CONCATENATED MODULE: ./node_modules/_rc-cascader@3.16.0@rc-cascader/es/hooks/useSearchOptions.js
diff --git a/20834.async.js b/20834.async.js
index 8dd88c2e9b..ce20f123f0 100644
--- a/20834.async.js
+++ b/20834.async.js
@@ -68,7 +68,7 @@ var es = __webpack_require__(27484);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/layout/Sider.js + 3 modules
-var Sider = __webpack_require__(37534);
+var Sider = __webpack_require__(32234);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
@@ -259,7 +259,7 @@ const SubMenu = props => {
};
/* harmony default export */ var menu_SubMenu = (SubMenu);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EllipsisOutlined.js + 1 modules
-var EllipsisOutlined = __webpack_require__(93319);
+var EllipsisOutlined = __webpack_require__(12440);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/index.js
var _rc_util_5_38_1_rc_util_es = __webpack_require__(33401);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/motion.js
diff --git a/21154.async.js b/21154.async.js
index c8cceba0cc..7e906c179d 100644
--- a/21154.async.js
+++ b/21154.async.js
@@ -41,9 +41,9 @@ var modal = __webpack_require__(43418);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/radio/index.js + 5 modules
var es_radio = __webpack_require__(5112);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
-var input = __webpack_require__(1056);
+var input = __webpack_require__(11694);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/table/index.js + 85 modules
-var table = __webpack_require__(72315);
+var table = __webpack_require__(96860);
;// CONCATENATED MODULE: ./src/components/ReuseShixunModal/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var ReuseShixunModalmodules = ({"brief":"brief___LOzpE","contentTitle":"contentTitle___xkdcN","content":"content___Vtri0","tips":"tips___tuAtH","antdTable":"antdTable___s8T2N","tableCell":"tableCell___kN9Fw","antdModal":"antdModal___WVBk3","orangeColor":"orangeColor___ryB2u"});
diff --git a/62778.async.js b/21379.async.js
similarity index 98%
rename from 62778.async.js
rename to 21379.async.js
index 2f66236ce5..69930a57f7 100644
--- a/62778.async.js
+++ b/21379.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[62778,11658,51001,66410],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[21379,18301,53505,69483],{
-/***/ 15997:
+/***/ 41435:
/*!*****************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules ***!
\*****************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_EyeOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeOutlined.js
// This icon file is generated automatically.
var EyeOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z" } }] }, "name": "eye", "theme": "outlined" };
/* harmony default export */ var asn_EyeOutlined = (EyeOutlined);
@@ -69,7 +69,7 @@ var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
-var DownOutlined = __webpack_require__(42884);
+var DownOutlined = __webpack_require__(8415);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
var dropdown = __webpack_require__(91857);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
@@ -683,8 +683,8 @@ const InternalCheckbox = (props, ref) => {
const Checkbox = /*#__PURE__*/_react_17_0_2_react.forwardRef(InternalCheckbox);
if (false) {}
/* harmony default export */ var checkbox_Checkbox = (Checkbox);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/Group.js
@@ -1054,7 +1054,7 @@ function getStyle(prefixCls, token) {
/***/ }),
-/***/ 1056:
+/***/ 11694:
/*!*********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules ***!
\*********************************************************************/
@@ -1124,9 +1124,9 @@ const Group = props => {
/* harmony default export */ var input_Group = (Group);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/Input.js + 1 modules
var Input = __webpack_require__(9432);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
// This icon file is generated automatically.
var EyeInvisibleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z" } }, { "tag": "path", "attrs": { "d": "M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z" } }] }, "name": "eye-invisible", "theme": "outlined" };
/* harmony default export */ var asn_EyeInvisibleOutlined = (EyeInvisibleOutlined);
@@ -1150,7 +1150,7 @@ var EyeInvisibleOutlined_EyeInvisibleOutlined = function EyeInvisibleOutlined(pr
if (false) {}
/* harmony default export */ var icons_EyeInvisibleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(EyeInvisibleOutlined_EyeInvisibleOutlined));
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules
-var EyeOutlined = __webpack_require__(15997);
+var EyeOutlined = __webpack_require__(41435);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
@@ -1272,7 +1272,7 @@ const Password = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
if (false) {}
/* harmony default export */ var input_Password = (Password);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SearchOutlined.js + 1 modules
-var SearchOutlined = __webpack_require__(46820);
+var SearchOutlined = __webpack_require__(23097);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
@@ -1457,11 +1457,11 @@ input_Input.Password = input_Password;
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* unused harmony export Checkbox */
-/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ 38850);
-/* harmony import */ var _babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectSpread2 */ 96257);
-/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/esm/defineProperty */ 85005);
-/* harmony import */ var _babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/esm/slicedToArray */ 69818);
-/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectWithoutProperties */ 46130);
+/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ 79384);
+/* harmony import */ var _babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectSpread2 */ 54131);
+/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/esm/defineProperty */ 16514);
+/* harmony import */ var _babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/esm/slicedToArray */ 35372);
+/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectWithoutProperties */ 4606);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var rc_util_es_hooks_useMergedState__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rc-util/es/hooks/useMergedState */ 84381);
diff --git a/35870.async.js b/2155.async.js
similarity index 97%
rename from 35870.async.js
rename to 2155.async.js
index ae399871db..d9f424ec88 100644
--- a/35870.async.js
+++ b/2155.async.js
@@ -1,6 +1,6 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[35870,56047],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[2155,56047],{
-/***/ 47104:
+/***/ 30063:
/*!*************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseCircleOutlined.js + 1 modules ***!
\*************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_CloseCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/CloseCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/CloseCircleOutlined.js
// This icon file is generated automatically.
var CloseCircleOutlined = { "icon": { "tag": "svg", "attrs": { "fill-rule": "evenodd", "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm0 76c-205.4 0-372 166.6-372 372s166.6 372 372 372 372-166.6 372-372-166.6-372-372-372zm128.01 198.83c.03 0 .05.01.09.06l45.02 45.01a.2.2 0 01.05.09.12.12 0 010 .07c0 .02-.01.04-.05.08L557.25 512l127.87 127.86a.27.27 0 01.05.06v.02a.12.12 0 010 .07c0 .03-.01.05-.05.09l-45.02 45.02a.2.2 0 01-.09.05.12.12 0 01-.07 0c-.02 0-.04-.01-.08-.05L512 557.25 384.14 685.12c-.04.04-.06.05-.08.05a.12.12 0 01-.07 0c-.03 0-.05-.01-.09-.05l-45.02-45.02a.2.2 0 01-.05-.09.12.12 0 010-.07c0-.02.01-.04.06-.08L466.75 512 338.88 384.14a.27.27 0 01-.05-.06l-.01-.02a.12.12 0 010-.07c0-.03.01-.05.05-.09l45.02-45.02a.2.2 0 01.09-.05.12.12 0 01.07 0c.02 0 .04.01.08.06L512 466.75l127.86-127.86c.04-.05.06-.06.08-.06a.12.12 0 01.07 0z" } }] }, "name": "close-circle", "theme": "outlined" };
/* harmony default export */ var asn_CloseCircleOutlined = (CloseCircleOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 87306:
+/***/ 20683:
/*!*************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/MinusCircleOutlined.js + 1 modules ***!
\*************************************************************************************************************/
@@ -56,11 +56,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_MinusCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/MinusCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/MinusCircleOutlined.js
// This icon file is generated automatically.
var MinusCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z" } }, { "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }] }, "name": "minus-circle", "theme": "outlined" };
/* harmony default export */ var asn_MinusCircleOutlined = (MinusCircleOutlined);
@@ -86,49 +86,6 @@ if (false) {}
/***/ }),
-/***/ 71029:
-/*!************************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusCircleOutlined.js + 1 modules ***!
- \************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ icons_PlusCircleOutlined; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/PlusCircleOutlined.js
-// This icon file is generated automatically.
-var PlusCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M696 480H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z" } }, { "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }] }, "name": "plus-circle", "theme": "outlined" };
-/* harmony default export */ var asn_PlusCircleOutlined = (PlusCircleOutlined);
-
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
-var AntdIcon = __webpack_require__(91851);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusCircleOutlined.js
-
-// GENERATE BY ./scripts/generate.ts
-// DON NOT EDIT IT MANUALLY
-
-
-
-
-var PlusCircleOutlined_PlusCircleOutlined = function PlusCircleOutlined(props, ref) {
- return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
- ref: ref,
- icon: asn_PlusCircleOutlined
- }));
-};
-if (false) {}
-/* harmony default export */ var icons_PlusCircleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(PlusCircleOutlined_PlusCircleOutlined));
-
-/***/ }),
-
/***/ 88522:
/*!*****************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/auto-complete/index.js ***!
diff --git a/37825.async.js b/22804.async.js
similarity index 98%
rename from 37825.async.js
rename to 22804.async.js
index 026184f124..f113531140 100644
--- a/37825.async.js
+++ b/22804.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[37825],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[22804],{
-/***/ 19479:
+/***/ 91052:
/*!********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/rate/index.js + 8 modules ***!
\********************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ rate; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/StarFilled.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/StarFilled.js
// This icon file is generated automatically.
var StarFilled = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M908.1 353.1l-253.9-36.9L540.7 86.1c-3.1-6.3-8.2-11.4-14.5-14.5-15.8-7.8-35-1.3-42.9 14.5L369.8 316.2l-253.9 36.9c-7 1-13.4 4.3-18.3 9.3a32.05 32.05 0 00.6 45.3l183.7 179.1-43.4 252.9a31.95 31.95 0 0046.4 33.7L512 754l227.1 119.4c6.2 3.3 13.4 4.4 20.3 3.2 17.4-3 29.1-19.5 26.1-36.9l-43.4-252.9 183.7-179.1c5-4.9 8.3-11.3 9.3-18.3 2.7-17.5-9.5-33.7-27-36.3z" } }] }, "name": "star", "theme": "filled" };
/* harmony default export */ var asn_StarFilled = (StarFilled);
@@ -43,12 +43,12 @@ if (false) {}
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
var useMergedState = __webpack_require__(84381);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
@@ -614,7 +614,7 @@ var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_c
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/skeleton/index.js + 12 modules
-var skeleton = __webpack_require__(59981);
+var skeleton = __webpack_require__(60371);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Number.js
"use client";
diff --git a/70130.async.js b/23609.async.js
similarity index 93%
rename from 70130.async.js
rename to 23609.async.js
index 76992efc48..a322256a17 100644
--- a/70130.async.js
+++ b/23609.async.js
@@ -1,8 +1,8 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[70130],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[23609],{
-/***/ 58309:
+/***/ 77697:
/*!******************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/lib/asn/CloseCircleFilled.js ***!
+ !*** ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/lib/asn/CloseCircleFilled.js ***!
\******************************************************************************************************/
/***/ (function(__unused_webpack_module, exports) {
@@ -16,9 +16,9 @@ exports["default"] = CloseCircleFilled;
/***/ }),
-/***/ 59847:
+/***/ 96371:
/*!*********************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/lib/asn/EyeInvisibleOutlined.js ***!
+ !*** ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/lib/asn/EyeInvisibleOutlined.js ***!
\*********************************************************************************************************/
/***/ (function(__unused_webpack_module, exports) {
@@ -32,9 +32,9 @@ exports["default"] = EyeInvisibleOutlined;
/***/ }),
-/***/ 10353:
+/***/ 26102:
/*!************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/lib/asn/EyeOutlined.js ***!
+ !*** ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/lib/asn/EyeOutlined.js ***!
\************************************************************************************************/
/***/ (function(__unused_webpack_module, exports) {
@@ -48,9 +48,9 @@ exports["default"] = EyeOutlined;
/***/ }),
-/***/ 74794:
+/***/ 28034:
/*!****************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/lib/asn/LoadingOutlined.js ***!
+ !*** ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/lib/asn/LoadingOutlined.js ***!
\****************************************************************************************************/
/***/ (function(__unused_webpack_module, exports) {
@@ -64,9 +64,9 @@ exports["default"] = LoadingOutlined;
/***/ }),
-/***/ 90513:
+/***/ 11353:
/*!***************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/lib/asn/SearchOutlined.js ***!
+ !*** ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/lib/asn/SearchOutlined.js ***!
\***************************************************************************************************/
/***/ (function(__unused_webpack_module, exports) {
@@ -782,7 +782,7 @@ Object.defineProperty(exports, "default", ({
}
}));
var _react = /*#__PURE__*/ _interop_require_wildcard(__webpack_require__(/*! react */ 59301));
-var _CloseCircleFilled = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! @ant-design/icons-svg/lib/asn/CloseCircleFilled */ 58309));
+var _CloseCircleFilled = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! @ant-design/icons-svg/lib/asn/CloseCircleFilled */ 77697));
var _AntdIcon = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! ../components/AntdIcon */ 10793));
function _define_property(obj, key, value) {
if (key in obj) {
@@ -912,7 +912,7 @@ Object.defineProperty(exports, "default", ({
}
}));
var _react = /*#__PURE__*/ _interop_require_wildcard(__webpack_require__(/*! react */ 59301));
-var _EyeInvisibleOutlined = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! @ant-design/icons-svg/lib/asn/EyeInvisibleOutlined */ 59847));
+var _EyeInvisibleOutlined = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! @ant-design/icons-svg/lib/asn/EyeInvisibleOutlined */ 96371));
var _AntdIcon = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! ../components/AntdIcon */ 10793));
function _define_property(obj, key, value) {
if (key in obj) {
@@ -1042,7 +1042,7 @@ Object.defineProperty(exports, "default", ({
}
}));
var _react = /*#__PURE__*/ _interop_require_wildcard(__webpack_require__(/*! react */ 59301));
-var _EyeOutlined = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! @ant-design/icons-svg/lib/asn/EyeOutlined */ 10353));
+var _EyeOutlined = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! @ant-design/icons-svg/lib/asn/EyeOutlined */ 26102));
var _AntdIcon = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! ../components/AntdIcon */ 10793));
function _define_property(obj, key, value) {
if (key in obj) {
@@ -1172,7 +1172,7 @@ Object.defineProperty(exports, "default", ({
}
}));
var _react = /*#__PURE__*/ _interop_require_wildcard(__webpack_require__(/*! react */ 59301));
-var _LoadingOutlined = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! @ant-design/icons-svg/lib/asn/LoadingOutlined */ 74794));
+var _LoadingOutlined = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! @ant-design/icons-svg/lib/asn/LoadingOutlined */ 28034));
var _AntdIcon = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! ../components/AntdIcon */ 10793));
function _define_property(obj, key, value) {
if (key in obj) {
@@ -1302,7 +1302,7 @@ Object.defineProperty(exports, "default", ({
}
}));
var _react = /*#__PURE__*/ _interop_require_wildcard(__webpack_require__(/*! react */ 59301));
-var _SearchOutlined = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! @ant-design/icons-svg/lib/asn/SearchOutlined */ 90513));
+var _SearchOutlined = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! @ant-design/icons-svg/lib/asn/SearchOutlined */ 11353));
var _AntdIcon = /*#__PURE__*/ _interop_require_default(__webpack_require__(/*! ../components/AntdIcon */ 10793));
function _define_property(obj, key, value) {
if (key in obj) {
@@ -2240,8 +2240,8 @@ const InternalCheckbox = (props, ref) => {
const Checkbox = /*#__PURE__*/_react_17_0_2_react.forwardRef(InternalCheckbox);
if (false) {}
/* harmony default export */ var checkbox_Checkbox = (Checkbox);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/Group.js
@@ -2612,505 +2612,6 @@ function getStyle(prefixCls, token) {
/***/ }),
-/***/ 78673:
-/*!**********************************************************************!*\
- !*** ./node_modules/_antd@5.9.0@antd/es/switch/index.js + 2 modules ***!
- \**********************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ es_switch; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LoadingOutlined.js + 1 modules
-var LoadingOutlined = __webpack_require__(38521);
-// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
-var _classnames_2_5_1_classnames = __webpack_require__(92310);
-var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
-var useMergedState = __webpack_require__(84381);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
-var KeyCode = __webpack_require__(84821);
-;// CONCATENATED MODULE: ./node_modules/_rc-switch@4.1.0@rc-switch/es/index.js
-
-
-
-
-var _excluded = ["prefixCls", "className", "checked", "defaultChecked", "disabled", "loadingIcon", "checkedChildren", "unCheckedChildren", "onClick", "onChange", "onKeyDown"];
-
-
-
-
-var Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (_ref, ref) {
- var _classNames;
- var _ref$prefixCls = _ref.prefixCls,
- prefixCls = _ref$prefixCls === void 0 ? 'rc-switch' : _ref$prefixCls,
- className = _ref.className,
- checked = _ref.checked,
- defaultChecked = _ref.defaultChecked,
- disabled = _ref.disabled,
- loadingIcon = _ref.loadingIcon,
- checkedChildren = _ref.checkedChildren,
- unCheckedChildren = _ref.unCheckedChildren,
- onClick = _ref.onClick,
- onChange = _ref.onChange,
- onKeyDown = _ref.onKeyDown,
- restProps = (0,objectWithoutProperties/* default */.Z)(_ref, _excluded);
- var _useMergedState = (0,useMergedState/* default */.Z)(false, {
- value: checked,
- defaultValue: defaultChecked
- }),
- _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
- innerChecked = _useMergedState2[0],
- setInnerChecked = _useMergedState2[1];
- function triggerChange(newChecked, event) {
- var mergedChecked = innerChecked;
- if (!disabled) {
- mergedChecked = newChecked;
- setInnerChecked(mergedChecked);
- onChange === null || onChange === void 0 ? void 0 : onChange(mergedChecked, event);
- }
- return mergedChecked;
- }
- function onInternalKeyDown(e) {
- if (e.which === KeyCode/* default */.Z.LEFT) {
- triggerChange(false, e);
- } else if (e.which === KeyCode/* default */.Z.RIGHT) {
- triggerChange(true, e);
- }
- onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);
- }
- function onInternalClick(e) {
- var ret = triggerChange(!innerChecked, e);
- // [Legacy] trigger onClick with value
- onClick === null || onClick === void 0 ? void 0 : onClick(ret, e);
- }
- var switchClassName = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-checked"), innerChecked), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), _classNames));
- return /*#__PURE__*/_react_17_0_2_react.createElement("button", (0,esm_extends/* default */.Z)({}, restProps, {
- type: "button",
- role: "switch",
- "aria-checked": innerChecked,
- disabled: disabled,
- className: switchClassName,
- ref: ref,
- onKeyDown: onInternalKeyDown,
- onClick: onInternalClick
- }), loadingIcon, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner")
- }, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner-checked")
- }, checkedChildren), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner-unchecked")
- }, unCheckedChildren)));
-});
-Switch.displayName = 'Switch';
-/* harmony default export */ var es = (Switch);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/wave/index.js + 4 modules
-var wave = __webpack_require__(14088);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
-var context = __webpack_require__(36355);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/DisabledContext.js
-var DisabledContext = __webpack_require__(1684);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/hooks/useSize.js
-var useSize = __webpack_require__(19716);
-// EXTERNAL MODULE: ./node_modules/_@ctrl_tinycolor@3.6.1@@ctrl/tinycolor/dist/module/index.js
-var dist_module = __webpack_require__(64993);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
-var style = __webpack_require__(17313);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
-var genComponentStyleHook = __webpack_require__(83116);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
-var statistic = __webpack_require__(37613);
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/style/index.js
-
-
-
-const genSwitchSmallStyle = token => {
- const {
- componentCls,
- trackHeightSM,
- trackPadding,
- trackMinWidthSM,
- innerMinMarginSM,
- innerMaxMarginSM,
- handleSizeSM
- } = token;
- const switchInnerCls = `${componentCls}-inner`;
- return {
- [componentCls]: {
- [`&${componentCls}-small`]: {
- minWidth: trackMinWidthSM,
- height: trackHeightSM,
- lineHeight: `${trackHeightSM}px`,
- [`${componentCls}-inner`]: {
- paddingInlineStart: innerMaxMarginSM,
- paddingInlineEnd: innerMinMarginSM,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`,
- marginInlineEnd: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`
- },
- [`${switchInnerCls}-unchecked`]: {
- marginTop: -trackHeightSM,
- marginInlineStart: 0,
- marginInlineEnd: 0
- }
- },
- [`${componentCls}-handle`]: {
- width: handleSizeSM,
- height: handleSizeSM
- },
- [`${componentCls}-loading-icon`]: {
- top: (handleSizeSM - token.switchLoadingIconSize) / 2,
- fontSize: token.switchLoadingIconSize
- },
- [`&${componentCls}-checked`]: {
- [`${componentCls}-inner`]: {
- paddingInlineStart: innerMinMarginSM,
- paddingInlineEnd: innerMaxMarginSM,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: 0,
- marginInlineEnd: 0
- },
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`,
- marginInlineEnd: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`
- }
- },
- [`${componentCls}-handle`]: {
- insetInlineStart: `calc(100% - ${handleSizeSM + trackPadding}px)`
- }
- },
- [`&:not(${componentCls}-disabled):active`]: {
- [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: token.marginXXS / 2,
- marginInlineEnd: -token.marginXXS / 2
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: -token.marginXXS / 2,
- marginInlineEnd: token.marginXXS / 2
- }
- }
- }
- }
- }
- };
-};
-const genSwitchLoadingStyle = token => {
- const {
- componentCls,
- handleSize
- } = token;
- return {
- [componentCls]: {
- [`${componentCls}-loading-icon${token.iconCls}`]: {
- position: 'relative',
- top: (handleSize - token.fontSize) / 2,
- color: token.switchLoadingIconColor,
- verticalAlign: 'top'
- },
- [`&${componentCls}-checked ${componentCls}-loading-icon`]: {
- color: token.switchColor
- }
- }
- };
-};
-const genSwitchHandleStyle = token => {
- const {
- componentCls,
- motion,
- trackPadding,
- handleBg,
- handleShadow,
- handleSize
- } = token;
- const switchHandleCls = `${componentCls}-handle`;
- return {
- [componentCls]: {
- [switchHandleCls]: {
- position: 'absolute',
- top: trackPadding,
- insetInlineStart: trackPadding,
- width: handleSize,
- height: handleSize,
- transition: `all ${token.switchDuration} ease-in-out`,
- '&::before': {
- position: 'absolute',
- top: 0,
- insetInlineEnd: 0,
- bottom: 0,
- insetInlineStart: 0,
- backgroundColor: handleBg,
- borderRadius: handleSize / 2,
- boxShadow: handleShadow,
- transition: `all ${token.switchDuration} ease-in-out`,
- content: '""'
- }
- },
- [`&${componentCls}-checked ${switchHandleCls}`]: {
- insetInlineStart: `calc(100% - ${handleSize + trackPadding}px)`
- },
- [`&:not(${componentCls}-disabled):active`]: motion ? {
- [`${switchHandleCls}::before`]: {
- insetInlineEnd: token.switchHandleActiveInset,
- insetInlineStart: 0
- },
- [`&${componentCls}-checked ${switchHandleCls}::before`]: {
- insetInlineEnd: 0,
- insetInlineStart: token.switchHandleActiveInset
- }
- } : /* istanbul ignore next */
- {}
- }
- };
-};
-const genSwitchInnerStyle = token => {
- const {
- componentCls,
- trackHeight,
- trackPadding,
- innerMinMargin,
- innerMaxMargin,
- handleSize
- } = token;
- const switchInnerCls = `${componentCls}-inner`;
- return {
- [componentCls]: {
- [switchInnerCls]: {
- display: 'block',
- overflow: 'hidden',
- borderRadius: 100,
- height: '100%',
- paddingInlineStart: innerMaxMargin,
- paddingInlineEnd: innerMinMargin,
- transition: `padding-inline-start ${token.switchDuration} ease-in-out, padding-inline-end ${token.switchDuration} ease-in-out`,
- [`${switchInnerCls}-checked, ${switchInnerCls}-unchecked`]: {
- display: 'block',
- color: token.colorTextLightSolid,
- fontSize: token.fontSizeSM,
- transition: `margin-inline-start ${token.switchDuration} ease-in-out, margin-inline-end ${token.switchDuration} ease-in-out`,
- pointerEvents: 'none'
- },
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`,
- marginInlineEnd: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`
- },
- [`${switchInnerCls}-unchecked`]: {
- marginTop: -trackHeight,
- marginInlineStart: 0,
- marginInlineEnd: 0
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- paddingInlineStart: innerMinMargin,
- paddingInlineEnd: innerMaxMargin,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: 0,
- marginInlineEnd: 0
- },
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`,
- marginInlineEnd: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`
- }
- },
- [`&:not(${componentCls}-disabled):active`]: {
- [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: trackPadding * 2,
- marginInlineEnd: -trackPadding * 2
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: -trackPadding * 2,
- marginInlineEnd: trackPadding * 2
- }
- }
- }
- }
- };
-};
-const genSwitchStyle = token => {
- const {
- componentCls,
- trackHeight,
- trackMinWidth
- } = token;
- return {
- [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
- position: 'relative',
- display: 'inline-block',
- boxSizing: 'border-box',
- minWidth: trackMinWidth,
- height: trackHeight,
- lineHeight: `${trackHeight}px`,
- verticalAlign: 'middle',
- background: token.colorTextQuaternary,
- border: '0',
- borderRadius: 100,
- cursor: 'pointer',
- transition: `all ${token.motionDurationMid}`,
- userSelect: 'none',
- [`&:hover:not(${componentCls}-disabled)`]: {
- background: token.colorTextTertiary
- }
- }), (0,style/* genFocusStyle */.Qy)(token)), {
- [`&${componentCls}-checked`]: {
- background: token.switchColor,
- [`&:hover:not(${componentCls}-disabled)`]: {
- background: token.colorPrimaryHover
- }
- },
- [`&${componentCls}-loading, &${componentCls}-disabled`]: {
- cursor: 'not-allowed',
- opacity: token.switchDisabledOpacity,
- '*': {
- boxShadow: 'none',
- cursor: 'not-allowed'
- }
- },
- // rtl style
- [`&${componentCls}-rtl`]: {
- direction: 'rtl'
- }
- })
- };
-};
-// ============================== Export ==============================
-/* harmony default export */ var switch_style = ((0,genComponentStyleHook/* default */.Z)('Switch', token => {
- const switchToken = (0,statistic/* merge */.TS)(token, {
- switchDuration: token.motionDurationMid,
- switchColor: token.colorPrimary,
- switchDisabledOpacity: token.opacityLoading,
- switchLoadingIconSize: token.fontSizeIcon * 0.75,
- switchLoadingIconColor: `rgba(0, 0, 0, ${token.opacityLoading})`,
- switchHandleActiveInset: '-30%'
- });
- return [genSwitchStyle(switchToken),
- // inner style
- genSwitchInnerStyle(switchToken),
- // handle style
- genSwitchHandleStyle(switchToken),
- // loading style
- genSwitchLoadingStyle(switchToken),
- // small style
- genSwitchSmallStyle(switchToken)];
-}, token => {
- const {
- fontSize,
- lineHeight,
- controlHeight,
- colorWhite
- } = token;
- const height = fontSize * lineHeight;
- const heightSM = controlHeight / 2;
- const padding = 2; // Fixed value
- const handleSize = height - padding * 2;
- const handleSizeSM = heightSM - padding * 2;
- return {
- trackHeight: height,
- trackHeightSM: heightSM,
- trackMinWidth: handleSize * 2 + padding * 4,
- trackMinWidthSM: handleSizeSM * 2 + padding * 2,
- trackPadding: padding,
- handleBg: colorWhite,
- handleSize,
- handleSizeSM,
- handleShadow: `0 2px 4px 0 ${new dist_module/* TinyColor */.C('#00230b').setAlpha(0.2).toRgbString()}`,
- innerMinMargin: handleSize / 2,
- innerMaxMargin: handleSize + padding + padding * 2,
- innerMinMarginSM: handleSizeSM / 2,
- innerMaxMarginSM: handleSizeSM + padding + padding * 2
- };
-}));
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/index.js
-"use client";
-
-var __rest = undefined && undefined.__rest || function (s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
- }
- return t;
-};
-
-
-
-
-
-
-
-
-
-
-const switch_Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
- const {
- prefixCls: customizePrefixCls,
- size: customizeSize,
- disabled: customDisabled,
- loading,
- className,
- rootClassName,
- style
- } = props,
- restProps = __rest(props, ["prefixCls", "size", "disabled", "loading", "className", "rootClassName", "style"]);
- false ? 0 : void 0;
- const {
- getPrefixCls,
- direction,
- switch: SWITCH
- } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
- // ===================== Disabled =====================
- const disabled = _react_17_0_2_react.useContext(DisabledContext/* default */.Z);
- const mergedDisabled = (customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled) || loading;
- const prefixCls = getPrefixCls('switch', customizePrefixCls);
- const loadingIcon = /*#__PURE__*/_react_17_0_2_react.createElement("div", {
- className: `${prefixCls}-handle`
- }, loading && /*#__PURE__*/_react_17_0_2_react.createElement(LoadingOutlined/* default */.Z, {
- className: `${prefixCls}-loading-icon`
- }));
- // Style
- const [wrapSSR, hashId] = switch_style(prefixCls);
- const mergedSize = (0,useSize/* default */.Z)(customizeSize);
- const classes = _classnames_2_5_1_classnames_default()(SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.className, {
- [`${prefixCls}-small`]: mergedSize === 'small',
- [`${prefixCls}-loading`]: loading,
- [`${prefixCls}-rtl`]: direction === 'rtl'
- }, className, rootClassName, hashId);
- const mergedStyle = Object.assign(Object.assign({}, SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.style), style);
- return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(wave/* default */.Z, {
- component: "Switch"
- }, /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({}, restProps, {
- prefixCls: prefixCls,
- className: classes,
- style: mergedStyle,
- disabled: mergedDisabled,
- ref: ref,
- loadingIcon: loadingIcon
- }))));
-});
-switch_Switch.__ANT_SWITCH = true;
-if (false) {}
-/* harmony default export */ var es_switch = (switch_Switch);
-
-/***/ }),
-
/***/ 11905:
/*!**************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/lib/_util/reactNode.js ***!
@@ -3120,7 +2621,7 @@ if (false) {}
"use strict";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -3157,7 +2658,7 @@ function cloneElement(element, props) {
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -3188,7 +2689,7 @@ exports.getMergedStatus = getMergedStatus;
"use strict";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -3220,8 +2721,8 @@ exports["default"] = _default;
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -3368,8 +2869,8 @@ exports["default"] = _default;
"use strict";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -3508,8 +3009,8 @@ exports["default"] = _default;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -3615,8 +3116,8 @@ function getTargetWaveColor(node) {
"use client";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -3652,8 +3153,8 @@ exports["default"] = _default;
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -3746,8 +3247,8 @@ exports["default"] = _default;
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -3819,8 +3320,8 @@ exports["default"] = _default;
"use client";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -4051,7 +3552,7 @@ exports["default"] = _default;
"use client";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -4121,7 +3622,7 @@ const ButtonHTMLTypes = (/* unused pure expression or super */ null && (['submit
"use client";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -4268,7 +3769,7 @@ exports["default"] = _default;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -4683,7 +4184,7 @@ exports["default"] = _default;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -4704,7 +4205,7 @@ exports["default"] = _default;
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -4737,7 +4238,7 @@ exports["default"] = _default;
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -4775,7 +4276,7 @@ function MotionWrapper(props) {
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -4807,7 +4308,7 @@ exports["default"] = _default;
"use strict";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -4844,7 +4345,7 @@ exports.ConfigConsumer = ConfigConsumer;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -4939,7 +4440,7 @@ function registerTheme(globalPrefixCls, theme) {
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -4969,7 +4470,7 @@ exports["default"] = _default;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -5006,7 +4507,7 @@ exports["default"] = _default;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -5049,8 +4550,8 @@ function useTheme(theme, parentTheme) {
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -5074,7 +4575,7 @@ Object.defineProperty(exports, "defaultIconPrefixCls", ({
}
}));
exports.warnContext = exports.globalConfig = exports.defaultPrefixCls = void 0;
-var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 3775);
+var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 78600);
var _Context = _interopRequireDefault(__webpack_require__(/*! @ant-design/icons/lib/components/Context */ 94728));
var _useMemo = _interopRequireDefault(__webpack_require__(/*! rc-util/lib/hooks/useMemo */ 61199));
var _set = __webpack_require__(/*! rc-util/lib/utils/set */ 76906);
@@ -5469,7 +4970,7 @@ var _internal = __webpack_require__(/*! ../../theme/internal */ 35366);
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -5509,8 +5010,8 @@ exports["default"] = _default;
"use client";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -5598,8 +5099,8 @@ exports["default"] = _default;
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -5659,8 +5160,8 @@ exports["default"] = _default;
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -5862,8 +5363,8 @@ exports["default"] = _default;
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -5992,8 +5493,8 @@ exports["default"] = _default;
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -6158,8 +5659,8 @@ exports["default"] = _default;
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -6324,7 +5825,7 @@ var __webpack_unused_export__;
"use client";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
__webpack_unused_export__ = ({
value: true
});
@@ -7241,7 +6742,7 @@ exports["default"] = _default;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -7405,8 +6906,8 @@ exports["default"] = _default;
"use client";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -7457,8 +6958,8 @@ exports["default"] = _default;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -7499,7 +7000,7 @@ exports["default"] = _default;
"use client";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -7537,8 +7038,8 @@ function getConfirmLocale() {
"use client";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -7694,7 +7195,7 @@ exports["default"] = _default;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -8181,12 +7682,12 @@ exports.roundedArrow = roundedArrow;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports.defaultTheme = exports.defaultConfig = exports.DesignTokenContext = void 0;
-var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 3775);
+var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 78600);
var _react = _interopRequireDefault(__webpack_require__(/*! react */ 59301));
var _default = _interopRequireDefault(__webpack_require__(/*! ./themes/default */ 62));
var _seed = _interopRequireDefault(__webpack_require__(/*! ./themes/seed */ 54303));
@@ -8253,8 +7754,8 @@ exports.PresetColors = PresetColors;
"use strict";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -8324,7 +7825,7 @@ Object.defineProperty(exports, "useToken", ({
return _useToken.default;
}
}));
-var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 3775);
+var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 78600);
var _interface = __webpack_require__(/*! ./interface */ 32732);
var _useToken = _interopRequireDefault(__webpack_require__(/*! ./useToken */ 34313));
var _genComponentStyleHook = _interopRequireWildcard(__webpack_require__(/*! ./util/genComponentStyleHook */ 79081));
@@ -8428,7 +7929,7 @@ exports.generateNeutralColorPalettes = generateNeutralColorPalettes;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -8650,7 +8151,7 @@ function genColorMapToken(seed, _ref) {
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -8712,7 +8213,7 @@ exports["default"] = _default;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -8886,13 +8387,13 @@ function genSizeMapToken(token) {
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = useToken;
exports.getComputedToken = void 0;
-var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 3775);
+var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 78600);
var _react = _interopRequireDefault(__webpack_require__(/*! react */ 59301));
var _version = _interopRequireDefault(__webpack_require__(/*! ../version */ 11025));
var _context = __webpack_require__(/*! ./context */ 81542);
@@ -8971,7 +8472,7 @@ function useToken() {
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -9164,15 +8665,15 @@ function formatToken(derivativeToken) {
"use strict";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = genComponentStyleHook;
exports.genSubStyleComponent = void 0;
var _react = __webpack_require__(/*! react */ 59301);
-var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 3775);
+var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 78600);
var _rcUtil = __webpack_require__(/*! rc-util */ 33401);
var _context = __webpack_require__(/*! ../../config-provider/context */ 11033);
var _style = __webpack_require__(/*! ../../style */ 51011);
@@ -9462,12 +8963,12 @@ function statisticToken(token) {
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = void 0;
-var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 3775);
+var _cssinjs = __webpack_require__(/*! @ant-design/cssinjs */ 78600);
var _style = __webpack_require__(/*! ../../style */ 51011);
var _useToken = _interopRequireDefault(__webpack_require__(/*! ../useToken */ 34313));
const useResetIconStyle = (iconPrefixCls, csp) => {
@@ -9526,7 +9027,7 @@ exports["default"] = _default;
/* eslint import/no-unresolved: 0 */
// @ts-ignore
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -9643,7 +9144,7 @@ exports["default"] = _default;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -9734,7 +9235,7 @@ function contains(root, n) {
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -9975,8 +9476,8 @@ function getShadowRoot(ele) {
"use strict";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -9984,10 +9485,10 @@ exports._r = _r;
exports._u = _u;
exports.render = render;
exports.unmount = unmount;
-var _regeneratorRuntime2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/regeneratorRuntime */ 17693));
-var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 20847));
-var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 60906));
-var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectSpread2 */ 2550));
+var _regeneratorRuntime2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/regeneratorRuntime */ 46584));
+var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 76402));
+var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 61756));
+var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectSpread2 */ 28105));
var ReactDOM = _interopRequireWildcard(__webpack_require__(/*! react-dom */ 4676));
// Let compiler not to search module usage
var fullClone = (0, _objectSpread2.default)({}, ReactDOM);
@@ -10101,7 +9602,7 @@ function _unmount() {
"use strict";
-var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 90851)["default"]);
+var _interopRequireWildcard = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ 6854)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -10127,12 +9628,12 @@ function useMemo(getValue, condition, shouldUpdate) {
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = void 0;
-var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 60906));
+var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 61756));
var _warning = _interopRequireDefault(__webpack_require__(/*! ./warning */ 14097));
/**
* Deeply compares two object literals.
@@ -10198,12 +9699,12 @@ var _default = exports["default"] = isEqual;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = omit;
-var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectSpread2 */ 2550));
+var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectSpread2 */ 28105));
function omit(obj, fields) {
var clone = (0, _objectSpread2.default)({}, obj);
if (Array.isArray(fields)) {
@@ -10291,7 +9792,7 @@ var _default = exports["default"] = wrapperRaf;
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
@@ -10300,7 +9801,7 @@ exports.fillRef = fillRef;
exports.supportNodeRef = supportNodeRef;
exports.supportRef = supportRef;
exports.useComposeRef = useComposeRef;
-var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 60906));
+var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 61756));
var _react = __webpack_require__(/*! react */ 59301);
var _reactIs = __webpack_require__(/*! react-is */ 92888);
var _useMemo = _interopRequireDefault(__webpack_require__(/*! ./hooks/useMemo */ 61199));
@@ -10408,16 +9909,16 @@ function get(entity, path) {
"use strict";
-var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 48279)["default"]);
+var _interopRequireDefault = (__webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 62561)["default"]);
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = set;
exports.merge = merge;
-var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 60906));
-var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectSpread2 */ 2550));
-var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 59390));
-var _toArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toArray */ 93243));
+var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 61756));
+var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectSpread2 */ 28105));
+var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 34300));
+var _toArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toArray */ 52949));
var _get = _interopRequireDefault(__webpack_require__(/*! ./get */ 54738));
function internalSet(entity, paths, value, removeIfUndefined) {
if (!paths.length) {
@@ -10561,9 +10062,9 @@ var _default = exports["default"] = warningOnce;
/***/ }),
-/***/ 73140:
+/***/ 93976:
/*!****************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/arrayLikeToArray.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/arrayLikeToArray.js ***!
\****************************************************************************************/
/***/ (function(module) {
@@ -10576,9 +10077,9 @@ module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exp
/***/ }),
-/***/ 72296:
+/***/ 33721:
/*!**************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/arrayWithHoles.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/arrayWithHoles.js ***!
\**************************************************************************************/
/***/ (function(module) {
@@ -10589,13 +10090,13 @@ module.exports = _arrayWithHoles, module.exports.__esModule = true, module.expor
/***/ }),
-/***/ 61850:
+/***/ 97150:
/*!*****************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/arrayWithoutHoles.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/arrayWithoutHoles.js ***!
\*****************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ 73140);
+var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ 93976);
function _arrayWithoutHoles(arr) {
if (Array.isArray(arr)) return arrayLikeToArray(arr);
}
@@ -10603,9 +10104,9 @@ module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.ex
/***/ }),
-/***/ 20847:
+/***/ 76402:
/*!****************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/asyncToGenerator.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/asyncToGenerator.js ***!
\****************************************************************************************/
/***/ (function(module) {
@@ -10643,13 +10144,13 @@ module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exp
/***/ }),
-/***/ 85719:
+/***/ 25023:
/*!**************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/defineProperty.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/defineProperty.js ***!
\**************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ 46954);
+var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ 92480);
function _defineProperty(obj, key, value) {
key = toPropertyKey(key);
if (key in obj) {
@@ -10668,9 +10169,9 @@ module.exports = _defineProperty, module.exports.__esModule = true, module.expor
/***/ }),
-/***/ 48279:
+/***/ 62561:
/*!*********************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/interopRequireDefault.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/interopRequireDefault.js ***!
\*********************************************************************************************/
/***/ (function(module) {
@@ -10683,13 +10184,13 @@ module.exports = _interopRequireDefault, module.exports.__esModule = true, modul
/***/ }),
-/***/ 90851:
+/***/ 6854:
/*!**********************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/interopRequireWildcard.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/interopRequireWildcard.js ***!
\**********************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-var _typeof = (__webpack_require__(/*! ./typeof.js */ 60906)["default"]);
+var _typeof = (__webpack_require__(/*! ./typeof.js */ 61756)["default"]);
function _getRequireWildcardCache(e) {
if ("function" != typeof WeakMap) return null;
var r = new WeakMap(),
@@ -10719,9 +10220,9 @@ module.exports = _interopRequireWildcard, module.exports.__esModule = true, modu
/***/ }),
-/***/ 26857:
+/***/ 31139:
/*!***************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/iterableToArray.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/iterableToArray.js ***!
\***************************************************************************************/
/***/ (function(module) {
@@ -10732,9 +10233,9 @@ module.exports = _iterableToArray, module.exports.__esModule = true, module.expo
/***/ }),
-/***/ 40527:
+/***/ 11847:
/*!***************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/nonIterableRest.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/nonIterableRest.js ***!
\***************************************************************************************/
/***/ (function(module) {
@@ -10745,9 +10246,9 @@ module.exports = _nonIterableRest, module.exports.__esModule = true, module.expo
/***/ }),
-/***/ 79197:
+/***/ 62732:
/*!*****************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/nonIterableSpread.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/nonIterableSpread.js ***!
\*****************************************************************************************/
/***/ (function(module) {
@@ -10758,13 +10259,13 @@ module.exports = _nonIterableSpread, module.exports.__esModule = true, module.ex
/***/ }),
-/***/ 2550:
+/***/ 28105:
/*!*************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/objectSpread2.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/objectSpread2.js ***!
\*************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-var defineProperty = __webpack_require__(/*! ./defineProperty.js */ 85719);
+var defineProperty = __webpack_require__(/*! ./defineProperty.js */ 25023);
function ownKeys(e, r) {
var t = Object.keys(e);
if (Object.getOwnPropertySymbols) {
@@ -10790,16 +10291,16 @@ module.exports = _objectSpread2, module.exports.__esModule = true, module.export
/***/ }),
-/***/ 93243:
+/***/ 52949:
/*!*******************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/toArray.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/toArray.js ***!
\*******************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ 72296);
-var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ 26857);
-var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ 39163);
-var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ 40527);
+var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ 33721);
+var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ 31139);
+var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ 47827);
+var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ 11847);
function _toArray(arr) {
return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();
}
@@ -10807,16 +10308,16 @@ module.exports = _toArray, module.exports.__esModule = true, module.exports["def
/***/ }),
-/***/ 59390:
+/***/ 34300:
/*!*****************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/toConsumableArray.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/toConsumableArray.js ***!
\*****************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ 61850);
-var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ 26857);
-var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ 39163);
-var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ 79197);
+var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ 97150);
+var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ 31139);
+var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ 47827);
+var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ 62732);
function _toConsumableArray(arr) {
return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
}
@@ -10824,13 +10325,13 @@ module.exports = _toConsumableArray, module.exports.__esModule = true, module.ex
/***/ }),
-/***/ 81324:
+/***/ 32654:
/*!***********************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/toPrimitive.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/toPrimitive.js ***!
\***********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-var _typeof = (__webpack_require__(/*! ./typeof.js */ 60906)["default"]);
+var _typeof = (__webpack_require__(/*! ./typeof.js */ 61756)["default"]);
function toPrimitive(t, r) {
if ("object" != _typeof(t) || !t) return t;
var e = t[Symbol.toPrimitive];
@@ -10845,14 +10346,14 @@ module.exports = toPrimitive, module.exports.__esModule = true, module.exports["
/***/ }),
-/***/ 46954:
+/***/ 92480:
/*!*************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/toPropertyKey.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/toPropertyKey.js ***!
\*************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-var _typeof = (__webpack_require__(/*! ./typeof.js */ 60906)["default"]);
-var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ 81324);
+var _typeof = (__webpack_require__(/*! ./typeof.js */ 61756)["default"]);
+var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ 32654);
function toPropertyKey(t) {
var i = toPrimitive(t, "string");
return "symbol" == _typeof(i) ? i : String(i);
@@ -10861,13 +10362,13 @@ module.exports = toPropertyKey, module.exports.__esModule = true, module.exports
/***/ }),
-/***/ 39163:
+/***/ 47827:
/*!**************************************************************************************************!*\
- !*** ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/unsupportedIterableToArray.js ***!
+ !*** ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/unsupportedIterableToArray.js ***!
\**************************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
-var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ 73140);
+var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ 93976);
function _unsupportedIterableToArray(o, minLen) {
if (!o) return;
if (typeof o === "string") return arrayLikeToArray(o, minLen);
diff --git a/30335.async.js b/2382.async.js
similarity index 99%
rename from 30335.async.js
rename to 2382.async.js
index fd264f8fc6..c9f6c8642a 100644
--- a/30335.async.js
+++ b/2382.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[30335],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[2382],{
-/***/ 30335:
+/***/ 2382:
/*!*******************************************************************************************************************!*\
!*** ./node_modules/_react-beautiful-dnd@13.0.0@react-beautiful-dnd/dist/react-beautiful-dnd.esm.js + 27 modules ***!
\*******************************************************************************************************************/
@@ -19,17 +19,17 @@ __webpack_require__.d(__webpack_exports__, {
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/setPrototypeOf.js
-var setPrototypeOf = __webpack_require__(76517);
-;// CONCATENATED MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/inheritsLoose.js
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/setPrototypeOf.js
+var setPrototypeOf = __webpack_require__(28913);
+;// CONCATENATED MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/inheritsLoose.js
function _inheritsLoose(subClass, superClass) {
subClass.prototype = Object.create(superClass.prototype);
subClass.prototype.constructor = subClass;
(0,setPrototypeOf/* default */.Z)(subClass, superClass);
}
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_redux@4.2.1@redux/es/redux.js
var redux = __webpack_require__(59781);
;// CONCATENATED MODULE: ./node_modules/_react-redux@7.2.9@react-redux/es/components/Context.js
@@ -236,8 +236,8 @@ function Provider(_ref) {
if (false) {}
/* harmony default export */ var components_Provider = (Provider);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
-var objectWithoutPropertiesLoose = __webpack_require__(53699);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
+var objectWithoutPropertiesLoose = __webpack_require__(48344);
// EXTERNAL MODULE: ./node_modules/_hoist-non-react-statics@3.3.2@hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js
var hoist_non_react_statics_cjs = __webpack_require__(94266);
var hoist_non_react_statics_cjs_default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics_cjs);
diff --git a/79125.async.js b/24242.async.js
similarity index 97%
rename from 79125.async.js
rename to 24242.async.js
index b793f5e1cf..a4d0fd76f0 100644
--- a/79125.async.js
+++ b/24242.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[79125,71180],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[24242,58604],{
-/***/ 80045:
+/***/ 51954:
/*!*******************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules ***!
\*******************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ExclamationCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
// This icon file is generated automatically.
var ExclamationCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }, { "tag": "path", "attrs": { "d": "M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z" } }] }, "name": "exclamation-circle", "theme": "outlined" };
/* harmony default export */ var asn_ExclamationCircleOutlined = (ExclamationCircleOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 15997:
+/***/ 41435:
/*!*****************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules ***!
\*****************************************************************************************************/
@@ -55,11 +55,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_EyeOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeOutlined.js
// This icon file is generated automatically.
var EyeOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z" } }] }, "name": "eye", "theme": "outlined" };
/* harmony default export */ var asn_EyeOutlined = (EyeOutlined);
@@ -329,7 +329,7 @@ if (false) {}
/***/ }),
-/***/ 1056:
+/***/ 11694:
/*!*********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules ***!
\*********************************************************************/
@@ -399,9 +399,9 @@ const Group = props => {
/* harmony default export */ var input_Group = (Group);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/Input.js + 1 modules
var Input = __webpack_require__(9432);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
// This icon file is generated automatically.
var EyeInvisibleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z" } }, { "tag": "path", "attrs": { "d": "M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z" } }] }, "name": "eye-invisible", "theme": "outlined" };
/* harmony default export */ var asn_EyeInvisibleOutlined = (EyeInvisibleOutlined);
@@ -425,7 +425,7 @@ var EyeInvisibleOutlined_EyeInvisibleOutlined = function EyeInvisibleOutlined(pr
if (false) {}
/* harmony default export */ var icons_EyeInvisibleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(EyeInvisibleOutlined_EyeInvisibleOutlined));
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules
-var EyeOutlined = __webpack_require__(15997);
+var EyeOutlined = __webpack_require__(41435);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
@@ -547,7 +547,7 @@ const Password = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
if (false) {}
/* harmony default export */ var input_Password = (Password);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SearchOutlined.js + 1 modules
-var SearchOutlined = __webpack_require__(46820);
+var SearchOutlined = __webpack_require__(23097);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
diff --git a/24665.async.js b/24665.async.js
index eac961b725..63db9c1371 100644
--- a/24665.async.js
+++ b/24665.async.js
@@ -1,7 +1,7 @@
"use strict";
(self["webpackChunk"] = self["webpackChunk"] || []).push([[24665],{
-/***/ 75769:
+/***/ 150:
/*!*******************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CheckOutlined.js + 1 modules ***!
\*******************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_CheckOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/CheckOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/CheckOutlined.js
// This icon file is generated automatically.
var CheckOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z" } }] }, "name": "check", "theme": "outlined" };
/* harmony default export */ var asn_CheckOutlined = (CheckOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 42884:
+/***/ 8415:
/*!******************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules ***!
\******************************************************************************************************/
@@ -55,11 +55,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_DownOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/DownOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/DownOutlined.js
// This icon file is generated automatically.
var DownOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z" } }] }, "name": "down", "theme": "outlined" };
/* harmony default export */ var asn_DownOutlined = (DownOutlined);
@@ -1325,12 +1325,12 @@ function useShowArrow(suffixIcon, showArrow) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Z: function() { return /* binding */ getIcons; }
/* harmony export */ });
-/* harmony import */ var _ant_design_icons_es_icons_CheckOutlined__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @ant-design/icons/es/icons/CheckOutlined */ 75769);
-/* harmony import */ var _ant_design_icons_es_icons_CloseCircleFilled__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @ant-design/icons/es/icons/CloseCircleFilled */ 48796);
-/* harmony import */ var _ant_design_icons_es_icons_CloseOutlined__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @ant-design/icons/es/icons/CloseOutlined */ 99174);
-/* harmony import */ var _ant_design_icons_es_icons_DownOutlined__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @ant-design/icons/es/icons/DownOutlined */ 42884);
-/* harmony import */ var _ant_design_icons_es_icons_LoadingOutlined__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @ant-design/icons/es/icons/LoadingOutlined */ 38521);
-/* harmony import */ var _ant_design_icons_es_icons_SearchOutlined__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @ant-design/icons/es/icons/SearchOutlined */ 46820);
+/* harmony import */ var _ant_design_icons_es_icons_CheckOutlined__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @ant-design/icons/es/icons/CheckOutlined */ 150);
+/* harmony import */ var _ant_design_icons_es_icons_CloseCircleFilled__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @ant-design/icons/es/icons/CloseCircleFilled */ 81941);
+/* harmony import */ var _ant_design_icons_es_icons_CloseOutlined__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @ant-design/icons/es/icons/CloseOutlined */ 30449);
+/* harmony import */ var _ant_design_icons_es_icons_DownOutlined__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @ant-design/icons/es/icons/DownOutlined */ 8415);
+/* harmony import */ var _ant_design_icons_es_icons_LoadingOutlined__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @ant-design/icons/es/icons/LoadingOutlined */ 61138);
+/* harmony import */ var _ant_design_icons_es_icons_SearchOutlined__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @ant-design/icons/es/icons/SearchOutlined */ 23097);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
"use client";
@@ -1427,7 +1427,7 @@ function getIcons(_ref) {
/* harmony export */ Fm: function() { return /* binding */ initMoveMotion; }
/* harmony export */ });
/* unused harmony exports moveDownIn, moveDownOut, moveLeftIn, moveLeftOut, moveRightIn, moveRightOut, moveUpIn, moveUpOut */
-/* harmony import */ var _ant_design_cssinjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @ant-design/cssinjs */ 3775);
+/* harmony import */ var _ant_design_cssinjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @ant-design/cssinjs */ 78600);
/* harmony import */ var _motion__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./motion */ 95406);
@@ -1580,7 +1580,7 @@ const initMoveMotion = (token, motionName) => {
/* harmony export */ ZP: function() { return /* binding */ useId; }
/* harmony export */ });
/* unused harmony exports isBrowserClient, getUUID */
-/* harmony import */ var _babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/slicedToArray */ 69818);
+/* harmony import */ var _babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/slicedToArray */ 35372);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var rc_util_es_Dom_canUseDom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rc-util/es/Dom/canUseDom */ 42871);
@@ -1635,20 +1635,20 @@ __webpack_require__.d(__webpack_exports__, {
lk: function() { return /* reexport */ useBaseProps; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectSpread2.js
-var objectSpread2 = __webpack_require__(96257);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/typeof.js
-var esm_typeof = __webpack_require__(2442);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectSpread2.js
+var objectSpread2 = __webpack_require__(54131);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/typeof.js
+var esm_typeof = __webpack_require__(13255);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
var useMergedState = __webpack_require__(84381);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/warning.js
@@ -2463,8 +2463,8 @@ var Selector = function Selector(props, ref) {
var ForwardSelector = /*#__PURE__*/_react_17_0_2_react.forwardRef(Selector);
ForwardSelector.displayName = 'Selector';
/* harmony default export */ var es_Selector = (ForwardSelector);
-// EXTERNAL MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/index.js + 11 modules
-var trigger_es = __webpack_require__(84728);
+// EXTERNAL MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/index.js + 11 modules
+var trigger_es = __webpack_require__(35593);
;// CONCATENATED MODULE: ./node_modules/_rc-select@14.8.1@rc-select/es/SelectTrigger.js
@@ -2599,8 +2599,8 @@ var SelectTrigger = function SelectTrigger(props, ref) {
var RefSelectTrigger = /*#__PURE__*/_react_17_0_2_react.forwardRef(SelectTrigger);
RefSelectTrigger.displayName = 'SelectTrigger';
/* harmony default export */ var es_SelectTrigger = (RefSelectTrigger);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toArray.js
-var esm_toArray = __webpack_require__(45698);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toArray.js
+var esm_toArray = __webpack_require__(89514);
;// CONCATENATED MODULE: ./node_modules/_rc-select@14.8.1@rc-select/es/utils/valueUtil.js
diff --git a/63143.async.js b/24802.async.js
similarity index 99%
rename from 63143.async.js
rename to 24802.async.js
index d14c73ff51..ba62fe177a 100644
--- a/63143.async.js
+++ b/24802.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[63143,37408,52720,27049,81326,77484,95149,77095,47821,87648,82010,61999],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[24802,37408,52720,7783,81326,14329,2956,5053,47821,87648,82010,61999],{
-/***/ 60936:
+/***/ 15228:
/*!*******************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/InboxOutlined.js + 1 modules ***!
\*******************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_InboxOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/InboxOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/InboxOutlined.js
// This icon file is generated automatically.
var InboxOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "0 0 1024 1024", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M885.2 446.3l-.2-.8-112.2-285.1c-5-16.1-19.9-27.2-36.8-27.2H281.2c-17 0-32.1 11.3-36.9 27.6L139.4 443l-.3.7-.2.8c-1.3 4.9-1.7 9.9-1 14.8-.1 1.6-.2 3.2-.2 4.8V830a60.9 60.9 0 0060.8 60.8h627.2c33.5 0 60.8-27.3 60.9-60.8V464.1c0-1.3 0-2.6-.1-3.7.4-4.9 0-9.6-1.3-14.1zm-295.8-43l-.3 15.7c-.8 44.9-31.8 75.1-77.1 75.1-22.1 0-41.1-7.1-54.8-20.6S436 441.2 435.6 419l-.3-15.7H229.5L309 210h399.2l81.7 193.3H589.4zm-375 76.8h157.3c24.3 57.1 76 90.8 140.4 90.8 33.7 0 65-9.4 90.3-27.2 22.2-15.6 39.5-37.4 50.7-63.6h156.5V814H214.4V480.1z" } }] }, "name": "inbox", "theme": "outlined" };
/* harmony default export */ var asn_InboxOutlined = (InboxOutlined);
@@ -87,7 +87,7 @@ var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
-var DownOutlined = __webpack_require__(42884);
+var DownOutlined = __webpack_require__(8415);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
var dropdown = __webpack_require__(91857);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
diff --git a/25663.async.js b/25663.async.js
new file mode 100644
index 0000000000..15f78c0f1e
--- /dev/null
+++ b/25663.async.js
@@ -0,0 +1,3745 @@
+"use strict";
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[25663,22804,74997,29989,52720,71769],{
+
+/***/ 51954:
+/*!*******************************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules ***!
+ \*******************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_ExclamationCircleOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
+// This icon file is generated automatically.
+var ExclamationCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }, { "tag": "path", "attrs": { "d": "M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z" } }] }, "name": "exclamation-circle", "theme": "outlined" };
+/* harmony default export */ var asn_ExclamationCircleOutlined = (ExclamationCircleOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var ExclamationCircleOutlined_ExclamationCircleOutlined = function ExclamationCircleOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_ExclamationCircleOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_ExclamationCircleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(ExclamationCircleOutlined_ExclamationCircleOutlined));
+
+/***/ }),
+
+/***/ 20683:
+/*!*************************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/MinusCircleOutlined.js + 1 modules ***!
+ \*************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_MinusCircleOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/MinusCircleOutlined.js
+// This icon file is generated automatically.
+var MinusCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z" } }, { "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }] }, "name": "minus-circle", "theme": "outlined" };
+/* harmony default export */ var asn_MinusCircleOutlined = (MinusCircleOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/MinusCircleOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var MinusCircleOutlined_MinusCircleOutlined = function MinusCircleOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_MinusCircleOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_MinusCircleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(MinusCircleOutlined_MinusCircleOutlined));
+
+/***/ }),
+
+/***/ 12635:
+/*!************************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusCircleOutlined.js + 1 modules ***!
+ \************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_PlusCircleOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/PlusCircleOutlined.js
+// This icon file is generated automatically.
+var PlusCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M696 480H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z" } }, { "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }] }, "name": "plus-circle", "theme": "outlined" };
+/* harmony default export */ var asn_PlusCircleOutlined = (PlusCircleOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusCircleOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var PlusCircleOutlined_PlusCircleOutlined = function PlusCircleOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_PlusCircleOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_PlusCircleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(PlusCircleOutlined_PlusCircleOutlined));
+
+/***/ }),
+
+/***/ 77578:
+/*!**********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/_util/getRenderPropValue.js ***!
+ \**********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ Z: function() { return /* binding */ getRenderPropValue; }
+/* harmony export */ });
+const getRenderPropValue = propValue => {
+ if (!propValue) {
+ return null;
+ }
+ if (typeof propValue === 'function') {
+ return propValue();
+ }
+ return propValue;
+};
+
+/***/ }),
+
+/***/ 66104:
+/*!**************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js + 6 modules ***!
+ \**************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ breadcrumb; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Children/toArray.js
+var toArray = __webpack_require__(45659);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/pickAttrs.js
+var pickAttrs = __webpack_require__(3286);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
+var DownOutlined = __webpack_require__(8415);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
+var dropdown = __webpack_require__(91857);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
+"use client";
+
+
+
+const BreadcrumbSeparator = _ref => {
+ let {
+ children
+ } = _ref;
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('breadcrumb');
+ return /*#__PURE__*/_react_17_0_2_react.createElement("li", {
+ className: `${prefixCls}-separator`,
+ "aria-hidden": "true"
+ }, children === '' ? children : children || '/');
+};
+BreadcrumbSeparator.__ANT_BREADCRUMB_SEPARATOR = true;
+/* harmony default export */ var breadcrumb_BreadcrumbSeparator = (BreadcrumbSeparator);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/useItemRender.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+function getBreadcrumbName(route, params) {
+ if (route.title === undefined || route.title === null) {
+ return null;
+ }
+ const paramsKeys = Object.keys(params).join('|');
+ return typeof route.title === 'object' ? route.title : String(route.title).replace(new RegExp(`:(${paramsKeys})`, 'g'), (replacement, key) => params[key] || replacement);
+}
+function renderItem(prefixCls, item, children, href) {
+ if (children === null || children === undefined) {
+ return null;
+ }
+ const {
+ className,
+ onClick
+ } = item,
+ restItem = __rest(item, ["className", "onClick"]);
+ const passedProps = Object.assign(Object.assign({}, (0,pickAttrs/* default */.Z)(restItem, {
+ data: true,
+ aria: true
+ })), {
+ onClick
+ });
+ if (href !== undefined) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement("a", Object.assign({}, passedProps, {
+ className: _classnames_2_5_1_classnames_default()(`${prefixCls}-link`, className),
+ href: href
+ }), children);
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("span", Object.assign({}, passedProps, {
+ className: _classnames_2_5_1_classnames_default()(`${prefixCls}-link`, className)
+ }), children);
+}
+function useItemRender(prefixCls, itemRender) {
+ const mergedItemRender = (item, params, routes, path, href) => {
+ if (itemRender) {
+ return itemRender(item, params, routes, path);
+ }
+ const name = getBreadcrumbName(item, params);
+ return renderItem(prefixCls, item, name, href);
+ };
+ return mergedItemRender;
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbItem.js
+"use client";
+
+var BreadcrumbItem_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+const InternalBreadcrumbItem = props => {
+ const {
+ prefixCls,
+ separator = '/',
+ children,
+ menu,
+ overlay,
+ dropdownProps,
+ href
+ } = props;
+ // Warning for deprecated usage
+ if (false) {}
+ /** If overlay is have Wrap a Dropdown */
+ const renderBreadcrumbNode = breadcrumbItem => {
+ if (menu || overlay) {
+ const mergeDropDownProps = Object.assign({}, dropdownProps);
+ if (menu) {
+ const _a = menu || {},
+ {
+ items
+ } = _a,
+ menuProps = BreadcrumbItem_rest(_a, ["items"]);
+ mergeDropDownProps.menu = Object.assign(Object.assign({}, menuProps), {
+ items: items === null || items === void 0 ? void 0 : items.map((_a, index) => {
+ var {
+ key,
+ title,
+ label,
+ path
+ } = _a,
+ itemProps = BreadcrumbItem_rest(_a, ["key", "title", "label", "path"]);
+ let mergedLabel = label !== null && label !== void 0 ? label : title;
+ if (path) {
+ mergedLabel = /*#__PURE__*/_react_17_0_2_react.createElement("a", {
+ href: `${href}${path}`
+ }, mergedLabel);
+ }
+ return Object.assign(Object.assign({}, itemProps), {
+ key: key !== null && key !== void 0 ? key : index,
+ label: mergedLabel
+ });
+ })
+ });
+ } else if (overlay) {
+ mergeDropDownProps.overlay = overlay;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(dropdown/* default */.Z, Object.assign({
+ placement: "bottom"
+ }, mergeDropDownProps), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-overlay-link`
+ }, breadcrumbItem, /*#__PURE__*/_react_17_0_2_react.createElement(DownOutlined/* default */.Z, null)));
+ }
+ return breadcrumbItem;
+ };
+ // wrap to dropDown
+ const link = renderBreadcrumbNode(children);
+ if (link !== undefined && link !== null) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, /*#__PURE__*/_react_17_0_2_react.createElement("li", null, link), separator && /*#__PURE__*/_react_17_0_2_react.createElement(breadcrumb_BreadcrumbSeparator, null, separator));
+ }
+ return null;
+};
+const BreadcrumbItem = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ children,
+ href
+ } = props,
+ restProps = BreadcrumbItem_rest(props, ["prefixCls", "children", "href"]);
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(InternalBreadcrumbItem, Object.assign({}, restProps, {
+ prefixCls: prefixCls
+ }), renderItem(prefixCls, restProps, children, href));
+};
+BreadcrumbItem.__ANT_BREADCRUMB_ITEM = true;
+/* harmony default export */ var breadcrumb_BreadcrumbItem = (BreadcrumbItem);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/style/index.js
+
+
+const genBreadcrumbStyle = token => {
+ const {
+ componentCls,
+ iconCls
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ color: token.itemColor,
+ fontSize: token.fontSize,
+ [iconCls]: {
+ fontSize: token.iconFontSize
+ },
+ ol: {
+ display: 'flex',
+ flexWrap: 'wrap',
+ margin: 0,
+ padding: 0,
+ listStyle: 'none'
+ },
+ a: Object.assign({
+ color: token.linkColor,
+ transition: `color ${token.motionDurationMid}`,
+ padding: `0 ${token.paddingXXS}px`,
+ borderRadius: token.borderRadiusSM,
+ height: token.lineHeight * token.fontSize,
+ display: 'inline-block',
+ marginInline: -token.marginXXS,
+ '&:hover': {
+ color: token.linkHoverColor,
+ backgroundColor: token.colorBgTextHover
+ }
+ }, (0,style/* genFocusStyle */.Qy)(token)),
+ [`li:last-child`]: {
+ color: token.lastItemColor
+ },
+ [`${componentCls}-separator`]: {
+ marginInline: token.separatorMargin,
+ color: token.separatorColor
+ },
+ [`${componentCls}-link`]: {
+ [`
+ > ${iconCls} + span,
+ > ${iconCls} + a
+ `]: {
+ marginInlineStart: token.marginXXS
+ }
+ },
+ [`${componentCls}-overlay-link`]: {
+ borderRadius: token.borderRadiusSM,
+ height: token.lineHeight * token.fontSize,
+ display: 'inline-block',
+ padding: `0 ${token.paddingXXS}px`,
+ marginInline: -token.marginXXS,
+ [`> ${iconCls}`]: {
+ marginInlineStart: token.marginXXS,
+ fontSize: token.fontSizeIcon
+ },
+ '&:hover': {
+ color: token.linkHoverColor,
+ backgroundColor: token.colorBgTextHover,
+ a: {
+ color: token.linkHoverColor
+ }
+ },
+ a: {
+ '&:hover': {
+ backgroundColor: 'transparent'
+ }
+ }
+ },
+ // rtl style
+ [`&${token.componentCls}-rtl`]: {
+ direction: 'rtl'
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var breadcrumb_style = ((0,genComponentStyleHook/* default */.Z)('Breadcrumb', token => {
+ const BreadcrumbToken = (0,statistic/* merge */.TS)(token, {});
+ return [genBreadcrumbStyle(BreadcrumbToken)];
+}, token => ({
+ itemColor: token.colorTextDescription,
+ lastItemColor: token.colorText,
+ iconFontSize: token.fontSize,
+ linkColor: token.colorTextDescription,
+ linkHoverColor: token.colorText,
+ separatorColor: token.colorTextDescription,
+ separatorMargin: token.marginXS
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/useItems.js
+var useItems_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+function route2item(route) {
+ const {
+ breadcrumbName,
+ children
+ } = route,
+ rest = useItems_rest(route, ["breadcrumbName", "children"]);
+ const clone = Object.assign({
+ title: breadcrumbName
+ }, rest);
+ if (children) {
+ clone.menu = {
+ items: children.map(_a => {
+ var {
+ breadcrumbName: itemBreadcrumbName
+ } = _a,
+ itemProps = useItems_rest(_a, ["breadcrumbName"]);
+ return Object.assign(Object.assign({}, itemProps), {
+ title: itemBreadcrumbName
+ });
+ })
+ };
+ }
+ return clone;
+}
+function useItems(items, routes) {
+ return (0,_react_17_0_2_react.useMemo)(() => {
+ if (items) {
+ return items;
+ }
+ if (routes) {
+ return routes.map(route2item);
+ }
+ return null;
+ }, [items, routes]);
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/Breadcrumb.js
+"use client";
+
+var Breadcrumb_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+
+
+
+
+
+const getPath = (params, path) => {
+ if (path === undefined) {
+ return path;
+ }
+ let mergedPath = (path || '').replace(/^\//, '');
+ Object.keys(params).forEach(key => {
+ mergedPath = mergedPath.replace(`:${key}`, params[key]);
+ });
+ return mergedPath;
+};
+const Breadcrumb = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ separator = '/',
+ style,
+ className,
+ rootClassName,
+ routes: legacyRoutes,
+ items,
+ children,
+ itemRender,
+ params = {}
+ } = props,
+ restProps = Breadcrumb_rest(props, ["prefixCls", "separator", "style", "className", "rootClassName", "routes", "items", "children", "itemRender", "params"]);
+ const {
+ getPrefixCls,
+ direction,
+ breadcrumb
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ let crumbs;
+ const prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
+ const [wrapSSR, hashId] = breadcrumb_style(prefixCls);
+ const mergedItems = useItems(items, legacyRoutes);
+ if (false) {}
+ const mergedItemRender = useItemRender(prefixCls, itemRender);
+ if (mergedItems && mergedItems.length > 0) {
+ // generated by route
+ const paths = [];
+ const itemRenderRoutes = items || legacyRoutes;
+ crumbs = mergedItems.map((item, index) => {
+ const {
+ path,
+ key,
+ type,
+ menu,
+ overlay,
+ onClick,
+ className: itemClassName,
+ separator: itemSeparator,
+ dropdownProps
+ } = item;
+ const mergedPath = getPath(params, path);
+ if (mergedPath !== undefined) {
+ paths.push(mergedPath);
+ }
+ const mergedKey = key !== null && key !== void 0 ? key : index;
+ if (type === 'separator') {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(breadcrumb_BreadcrumbSeparator, {
+ key: mergedKey
+ }, itemSeparator);
+ }
+ const itemProps = {};
+ const isLastItem = index === mergedItems.length - 1;
+ if (menu) {
+ itemProps.menu = menu;
+ } else if (overlay) {
+ itemProps.overlay = overlay;
+ }
+ let {
+ href
+ } = item;
+ if (paths.length && mergedPath !== undefined) {
+ href = `#/${paths.join('/')}`;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(InternalBreadcrumbItem, Object.assign({
+ key: mergedKey
+ }, itemProps, (0,pickAttrs/* default */.Z)(item, {
+ data: true,
+ aria: true
+ }), {
+ className: itemClassName,
+ dropdownProps: dropdownProps,
+ href: href,
+ separator: isLastItem ? '' : separator,
+ onClick: onClick,
+ prefixCls: prefixCls
+ }), mergedItemRender(item, params, itemRenderRoutes, paths, href));
+ });
+ } else if (children) {
+ const childrenLength = (0,toArray/* default */.Z)(children).length;
+ crumbs = (0,toArray/* default */.Z)(children).map((element, index) => {
+ if (!element) {
+ return element;
+ }
+ // =================== Warning =====================
+ if (false) {}
+ false ? 0 : void 0;
+ const isLastItem = index === childrenLength - 1;
+ return (0,reactNode/* cloneElement */.Tm)(element, {
+ separator: isLastItem ? '' : separator,
+ key: index
+ });
+ });
+ }
+ const breadcrumbClassName = _classnames_2_5_1_classnames_default()(prefixCls, breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.className, {
+ [`${prefixCls}-rtl`]: direction === 'rtl'
+ }, className, rootClassName, hashId);
+ const mergedStyle = Object.assign(Object.assign({}, breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.style), style);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("nav", Object.assign({
+ className: breadcrumbClassName,
+ style: mergedStyle
+ }, restProps), /*#__PURE__*/_react_17_0_2_react.createElement("ol", null, crumbs)));
+};
+Breadcrumb.Item = breadcrumb_BreadcrumbItem;
+Breadcrumb.Separator = breadcrumb_BreadcrumbSeparator;
+if (false) {}
+/* harmony default export */ var breadcrumb_Breadcrumb = (Breadcrumb);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js
+"use client";
+
+
+/* harmony default export */ var breadcrumb = (breadcrumb_Breadcrumb);
+
+/***/ }),
+
+/***/ 74997:
+/*!************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/collapse/index.js + 8 modules ***!
+ \************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ es_collapse; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/RightOutlined.js + 1 modules
+var RightOutlined = __webpack_require__(78864);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/typeof.js
+var esm_typeof = __webpack_require__(13255);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
+var useMergedState = __webpack_require__(84381);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/warning.js
+var warning = __webpack_require__(36014);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Children/toArray.js
+var toArray = __webpack_require__(45659);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_rc-motion@2.9.0@rc-motion/es/index.js + 12 modules
+var es = __webpack_require__(44516);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+;// CONCATENATED MODULE: ./node_modules/_rc-collapse@3.7.2@rc-collapse/es/PanelContent.js
+
+
+
+
+var PanelContent = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (props, ref) {
+ var _classnames;
+ var prefixCls = props.prefixCls,
+ forceRender = props.forceRender,
+ className = props.className,
+ style = props.style,
+ children = props.children,
+ isActive = props.isActive,
+ role = props.role;
+ var _React$useState = _react_17_0_2_react.useState(isActive || forceRender),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ rendered = _React$useState2[0],
+ setRendered = _React$useState2[1];
+ _react_17_0_2_react.useEffect(function () {
+ if (forceRender || isActive) {
+ setRendered(true);
+ }
+ }, [forceRender, isActive]);
+ if (!rendered) {
+ return null;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ ref: ref,
+ className: _classnames_2_5_1_classnames_default()("".concat(prefixCls, "-content"), (_classnames = {}, (0,defineProperty/* default */.Z)(_classnames, "".concat(prefixCls, "-content-active"), isActive), (0,defineProperty/* default */.Z)(_classnames, "".concat(prefixCls, "-content-inactive"), !isActive), _classnames), className),
+ style: style,
+ role: role
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-content-box")
+ }, children));
+});
+PanelContent.displayName = 'PanelContent';
+/* harmony default export */ var es_PanelContent = (PanelContent);
+;// CONCATENATED MODULE: ./node_modules/_rc-collapse@3.7.2@rc-collapse/es/Panel.js
+
+
+
+var _excluded = ["showArrow", "headerClass", "isActive", "onItemClick", "forceRender", "className", "prefixCls", "collapsible", "accordion", "panelKey", "extra", "header", "expandIcon", "openMotion", "destroyInactivePanel", "children"];
+
+
+
+
+
+var CollapsePanel = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (props, ref) {
+ var _classNames, _classNames2;
+ var _props$showArrow = props.showArrow,
+ showArrow = _props$showArrow === void 0 ? true : _props$showArrow,
+ headerClass = props.headerClass,
+ isActive = props.isActive,
+ onItemClick = props.onItemClick,
+ forceRender = props.forceRender,
+ className = props.className,
+ prefixCls = props.prefixCls,
+ collapsible = props.collapsible,
+ accordion = props.accordion,
+ panelKey = props.panelKey,
+ extra = props.extra,
+ header = props.header,
+ expandIcon = props.expandIcon,
+ openMotion = props.openMotion,
+ destroyInactivePanel = props.destroyInactivePanel,
+ children = props.children,
+ resetProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var disabled = collapsible === 'disabled';
+ var collapsibleHeader = collapsible === 'header';
+ var collapsibleIcon = collapsible === 'icon';
+ var ifExtraExist = extra !== null && extra !== undefined && typeof extra !== 'boolean';
+ var handleItemClick = function handleItemClick() {
+ onItemClick === null || onItemClick === void 0 || onItemClick(panelKey);
+ };
+ var handleKeyDown = function handleKeyDown(e) {
+ if (e.key === 'Enter' || e.keyCode === KeyCode/* default */.Z.ENTER || e.which === KeyCode/* default */.Z.ENTER) {
+ handleItemClick();
+ }
+ };
+
+ // ======================== Icon ========================
+ var iconNode = typeof expandIcon === 'function' ? expandIcon(props) : /*#__PURE__*/_react_17_0_2_react.createElement("i", {
+ className: "arrow"
+ });
+ if (iconNode) {
+ iconNode = /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-expand-icon"),
+ onClick: ['header', 'icon'].includes(collapsible) ? handleItemClick : undefined
+ }, iconNode);
+ }
+ var collapsePanelClassNames = _classnames_2_5_1_classnames_default()((_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-item"), true), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-item-active"), isActive), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-item-disabled"), disabled), _classNames), className);
+ var headerClassName = _classnames_2_5_1_classnames_default()(headerClass, (_classNames2 = {}, (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-header"), true), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-header-collapsible-only"), collapsibleHeader), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-icon-collapsible-only"), collapsibleIcon), _classNames2));
+
+ // ======================== HeaderProps ========================
+ var headerProps = {
+ className: headerClassName,
+ 'aria-expanded': isActive,
+ 'aria-disabled': disabled,
+ onKeyDown: handleKeyDown
+ };
+ if (!collapsibleHeader && !collapsibleIcon) {
+ headerProps.onClick = handleItemClick;
+ headerProps.role = accordion ? 'tab' : 'button';
+ headerProps.tabIndex = disabled ? -1 : 0;
+ }
+
+ // ======================== Render ========================
+ return /*#__PURE__*/_react_17_0_2_react.createElement("div", (0,esm_extends/* default */.Z)({}, resetProps, {
+ ref: ref,
+ className: collapsePanelClassNames
+ }), /*#__PURE__*/_react_17_0_2_react.createElement("div", headerProps, showArrow && iconNode, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: "".concat(prefixCls, "-header-text"),
+ onClick: collapsible === 'header' ? handleItemClick : undefined
+ }, header), ifExtraExist && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-extra")
+ }, extra)), /*#__PURE__*/_react_17_0_2_react.createElement(es["default"], (0,esm_extends/* default */.Z)({
+ visible: isActive,
+ leavedClassName: "".concat(prefixCls, "-content-hidden")
+ }, openMotion, {
+ forceRender: forceRender,
+ removeOnLeave: destroyInactivePanel
+ }), function (_ref, motionRef) {
+ var motionClassName = _ref.className,
+ motionStyle = _ref.style;
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_PanelContent, {
+ ref: motionRef,
+ prefixCls: prefixCls,
+ className: motionClassName,
+ style: motionStyle,
+ isActive: isActive,
+ forceRender: forceRender,
+ role: accordion ? 'tabpanel' : void 0
+ }, children);
+ }));
+});
+/* harmony default export */ var Panel = (CollapsePanel);
+;// CONCATENATED MODULE: ./node_modules/_rc-collapse@3.7.2@rc-collapse/es/hooks/useItems.js
+
+
+var useItems_excluded = ["children", "label", "key", "collapsible", "onItemClick", "destroyInactivePanel"];
+
+
+
+var convertItemsToNodes = function convertItemsToNodes(items, props) {
+ var prefixCls = props.prefixCls,
+ accordion = props.accordion,
+ collapsible = props.collapsible,
+ destroyInactivePanel = props.destroyInactivePanel,
+ onItemClick = props.onItemClick,
+ activeKey = props.activeKey,
+ openMotion = props.openMotion,
+ expandIcon = props.expandIcon;
+ return items.map(function (item, index) {
+ var children = item.children,
+ label = item.label,
+ rawKey = item.key,
+ rawCollapsible = item.collapsible,
+ rawOnItemClick = item.onItemClick,
+ rawDestroyInactivePanel = item.destroyInactivePanel,
+ restProps = (0,objectWithoutProperties/* default */.Z)(item, useItems_excluded);
+
+ // You may be puzzled why you want to convert them all into strings, me too.
+ // Maybe: https://github.com/react-component/collapse/blob/aac303a8b6ff30e35060b4f8fecde6f4556fcbe2/src/Collapse.tsx#L15
+ var key = String(rawKey !== null && rawKey !== void 0 ? rawKey : index);
+ var mergeCollapsible = rawCollapsible !== null && rawCollapsible !== void 0 ? rawCollapsible : collapsible;
+ var mergeDestroyInactivePanel = rawDestroyInactivePanel !== null && rawDestroyInactivePanel !== void 0 ? rawDestroyInactivePanel : destroyInactivePanel;
+ var handleItemClick = function handleItemClick(value) {
+ if (mergeCollapsible === 'disabled') return;
+ onItemClick(value);
+ rawOnItemClick === null || rawOnItemClick === void 0 || rawOnItemClick(value);
+ };
+ var isActive = false;
+ if (accordion) {
+ isActive = activeKey[0] === key;
+ } else {
+ isActive = activeKey.indexOf(key) > -1;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(Panel, (0,esm_extends/* default */.Z)({}, restProps, {
+ prefixCls: prefixCls,
+ key: key,
+ panelKey: key,
+ isActive: isActive,
+ accordion: accordion,
+ openMotion: openMotion,
+ expandIcon: expandIcon,
+ header: label,
+ collapsible: mergeCollapsible,
+ onItemClick: handleItemClick,
+ destroyInactivePanel: mergeDestroyInactivePanel
+ }), children);
+ });
+};
+
+/**
+ * @deprecated The next major version will be removed
+ */
+var getNewChild = function getNewChild(child, index, props) {
+ if (!child) return null;
+ var prefixCls = props.prefixCls,
+ accordion = props.accordion,
+ collapsible = props.collapsible,
+ destroyInactivePanel = props.destroyInactivePanel,
+ onItemClick = props.onItemClick,
+ activeKey = props.activeKey,
+ openMotion = props.openMotion,
+ expandIcon = props.expandIcon;
+ var key = child.key || String(index);
+ var _child$props = child.props,
+ header = _child$props.header,
+ headerClass = _child$props.headerClass,
+ childDestroyInactivePanel = _child$props.destroyInactivePanel,
+ childCollapsible = _child$props.collapsible,
+ childOnItemClick = _child$props.onItemClick;
+ var isActive = false;
+ if (accordion) {
+ isActive = activeKey[0] === key;
+ } else {
+ isActive = activeKey.indexOf(key) > -1;
+ }
+ var mergeCollapsible = childCollapsible !== null && childCollapsible !== void 0 ? childCollapsible : collapsible;
+ var handleItemClick = function handleItemClick(value) {
+ if (mergeCollapsible === 'disabled') return;
+ onItemClick(value);
+ childOnItemClick === null || childOnItemClick === void 0 || childOnItemClick(value);
+ };
+ var childProps = {
+ key: key,
+ panelKey: key,
+ header: header,
+ headerClass: headerClass,
+ isActive: isActive,
+ prefixCls: prefixCls,
+ destroyInactivePanel: childDestroyInactivePanel !== null && childDestroyInactivePanel !== void 0 ? childDestroyInactivePanel : destroyInactivePanel,
+ openMotion: openMotion,
+ accordion: accordion,
+ children: child.props.children,
+ onItemClick: handleItemClick,
+ expandIcon: expandIcon,
+ collapsible: mergeCollapsible
+ };
+
+ // https://github.com/ant-design/ant-design/issues/20479
+ if (typeof child.type === 'string') {
+ return child;
+ }
+ Object.keys(childProps).forEach(function (propName) {
+ if (typeof childProps[propName] === 'undefined') {
+ delete childProps[propName];
+ }
+ });
+ return /*#__PURE__*/_react_17_0_2_react.cloneElement(child, childProps);
+};
+function useItems(items, rawChildren, props) {
+ if (Array.isArray(items)) {
+ return convertItemsToNodes(items, props);
+ }
+ return (0,toArray/* default */.Z)(rawChildren).map(function (child, index) {
+ return getNewChild(child, index, props);
+ });
+}
+/* harmony default export */ var hooks_useItems = (useItems);
+;// CONCATENATED MODULE: ./node_modules/_rc-collapse@3.7.2@rc-collapse/es/Collapse.js
+
+
+
+
+
+
+
+
+
+function getActiveKeysArray(activeKey) {
+ var currentActiveKey = activeKey;
+ if (!Array.isArray(currentActiveKey)) {
+ var activeKeyType = (0,esm_typeof/* default */.Z)(currentActiveKey);
+ currentActiveKey = activeKeyType === 'number' || activeKeyType === 'string' ? [currentActiveKey] : [];
+ }
+ return currentActiveKey.map(function (key) {
+ return String(key);
+ });
+}
+var Collapse = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (props, ref) {
+ var _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-collapse' : _props$prefixCls,
+ _props$destroyInactiv = props.destroyInactivePanel,
+ destroyInactivePanel = _props$destroyInactiv === void 0 ? false : _props$destroyInactiv,
+ style = props.style,
+ accordion = props.accordion,
+ className = props.className,
+ children = props.children,
+ collapsible = props.collapsible,
+ openMotion = props.openMotion,
+ expandIcon = props.expandIcon,
+ rawActiveKey = props.activeKey,
+ defaultActiveKey = props.defaultActiveKey,
+ _onChange = props.onChange,
+ items = props.items;
+ var collapseClassName = _classnames_2_5_1_classnames_default()(prefixCls, className);
+ var _useMergedState = (0,useMergedState/* default */.Z)([], {
+ value: rawActiveKey,
+ onChange: function onChange(v) {
+ return _onChange === null || _onChange === void 0 ? void 0 : _onChange(v);
+ },
+ defaultValue: defaultActiveKey,
+ postState: getActiveKeysArray
+ }),
+ _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
+ activeKey = _useMergedState2[0],
+ setActiveKey = _useMergedState2[1];
+ var onItemClick = function onItemClick(key) {
+ return setActiveKey(function () {
+ if (accordion) {
+ return activeKey[0] === key ? [] : [key];
+ }
+ var index = activeKey.indexOf(key);
+ var isActive = index > -1;
+ if (isActive) {
+ return activeKey.filter(function (item) {
+ return item !== key;
+ });
+ }
+ return [].concat((0,toConsumableArray/* default */.Z)(activeKey), [key]);
+ });
+ };
+
+ // ======================== Children ========================
+ (0,warning/* default */.ZP)(!children, '[rc-collapse] `children` will be removed in next major version. Please use `items` instead.');
+ var mergedChildren = hooks_useItems(items, children, {
+ prefixCls: prefixCls,
+ accordion: accordion,
+ openMotion: openMotion,
+ expandIcon: expandIcon,
+ collapsible: collapsible,
+ destroyInactivePanel: destroyInactivePanel,
+ onItemClick: onItemClick,
+ activeKey: activeKey
+ });
+
+ // ======================== Render ========================
+ return /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ ref: ref,
+ className: collapseClassName,
+ style: style,
+ role: accordion ? 'tablist' : undefined
+ }, mergedChildren);
+});
+/* harmony default export */ var es_Collapse = (Object.assign(Collapse, {
+ /**
+ * @deprecated use `items` instead, will be removed in `v4.0.0`
+ */
+ Panel: Panel
+}));
+;// CONCATENATED MODULE: ./node_modules/_rc-collapse@3.7.2@rc-collapse/es/index.js
+
+/* harmony default export */ var _rc_collapse_3_7_2_rc_collapse_es = (es_Collapse);
+
+/**
+ * @deprecated use `items` instead, will be removed in `v4.0.0`
+ */
+var es_Panel = es_Collapse.Panel;
+
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
+var omit = __webpack_require__(99468);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/motion.js
+var motion = __webpack_require__(62892);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/hooks/useSize.js
+var useSize = __webpack_require__(19716);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/collapse/CollapsePanel.js
+"use client";
+
+
+
+
+
+
+const CollapsePanel_CollapsePanel = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ false ? 0 : void 0;
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ showArrow = true
+ } = props;
+ const prefixCls = getPrefixCls('collapse', customizePrefixCls);
+ const collapsePanelClassName = _classnames_2_5_1_classnames_default()({
+ [`${prefixCls}-no-arrow`]: !showArrow
+ }, className);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(_rc_collapse_3_7_2_rc_collapse_es.Panel, Object.assign({
+ ref: ref
+ }, props, {
+ prefixCls: prefixCls,
+ className: collapsePanelClassName
+ }));
+});
+/* harmony default export */ var collapse_CollapsePanel = (CollapsePanel_CollapsePanel);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/motion/collapse.js
+var collapse = __webpack_require__(8378);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/collapse/style/index.js
+
+
+
+const genBaseStyle = token => {
+ const {
+ componentCls,
+ contentBg,
+ padding,
+ headerBg,
+ headerPadding,
+ collapseHeaderPaddingSM,
+ collapseHeaderPaddingLG,
+ collapsePanelBorderRadius,
+ lineWidth,
+ lineType,
+ colorBorder,
+ colorText,
+ colorTextHeading,
+ colorTextDisabled,
+ fontSize,
+ fontSizeLG,
+ lineHeight,
+ marginSM,
+ paddingSM,
+ paddingLG,
+ paddingXS,
+ motionDurationSlow,
+ fontSizeIcon,
+ contentPadding
+ } = token;
+ const borderBase = `${lineWidth}px ${lineType} ${colorBorder}`;
+ return {
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ backgroundColor: headerBg,
+ border: borderBase,
+ borderBottom: 0,
+ borderRadius: `${collapsePanelBorderRadius}px`,
+ [`&-rtl`]: {
+ direction: 'rtl'
+ },
+ [`& > ${componentCls}-item`]: {
+ borderBottom: borderBase,
+ [`&:last-child`]: {
+ [`
+ &,
+ & > ${componentCls}-header`]: {
+ borderRadius: `0 0 ${collapsePanelBorderRadius}px ${collapsePanelBorderRadius}px`
+ }
+ },
+ [`> ${componentCls}-header`]: {
+ position: 'relative',
+ display: 'flex',
+ flexWrap: 'nowrap',
+ alignItems: 'flex-start',
+ padding: headerPadding,
+ color: colorTextHeading,
+ lineHeight,
+ cursor: 'pointer',
+ transition: `all ${motionDurationSlow}, visibility 0s`,
+ [`> ${componentCls}-header-text`]: {
+ flex: 'auto'
+ },
+ '&:focus': {
+ outline: 'none'
+ },
+ // >>>>> Arrow
+ [`${componentCls}-expand-icon`]: {
+ height: fontSize * lineHeight,
+ display: 'flex',
+ alignItems: 'center',
+ paddingInlineEnd: marginSM
+ },
+ [`${componentCls}-arrow`]: Object.assign(Object.assign({}, (0,style/* resetIcon */.Ro)()), {
+ fontSize: fontSizeIcon,
+ svg: {
+ transition: `transform ${motionDurationSlow}`
+ }
+ }),
+ // >>>>> Text
+ [`${componentCls}-header-text`]: {
+ marginInlineEnd: 'auto'
+ }
+ },
+ [`${componentCls}-header-collapsible-only`]: {
+ cursor: 'default',
+ [`${componentCls}-header-text`]: {
+ flex: 'none',
+ cursor: 'pointer'
+ }
+ },
+ [`${componentCls}-icon-collapsible-only`]: {
+ cursor: 'default',
+ [`${componentCls}-expand-icon`]: {
+ cursor: 'pointer'
+ }
+ }
+ },
+ [`${componentCls}-content`]: {
+ color: colorText,
+ backgroundColor: contentBg,
+ borderTop: borderBase,
+ [`& > ${componentCls}-content-box`]: {
+ padding: contentPadding
+ },
+ [`&-hidden`]: {
+ display: 'none'
+ }
+ },
+ [`&-small`]: {
+ [`> ${componentCls}-item`]: {
+ [`> ${componentCls}-header`]: {
+ padding: collapseHeaderPaddingSM,
+ paddingInlineStart: paddingXS,
+ [`> ${componentCls}-expand-icon`]: {
+ // Arrow offset
+ marginInlineStart: paddingSM - paddingXS
+ }
+ },
+ [`> ${componentCls}-content > ${componentCls}-content-box`]: {
+ padding: paddingSM
+ }
+ }
+ },
+ [`&-large`]: {
+ [`> ${componentCls}-item`]: {
+ fontSize: fontSizeLG,
+ [`> ${componentCls}-header`]: {
+ padding: collapseHeaderPaddingLG,
+ paddingInlineStart: padding,
+ [`> ${componentCls}-expand-icon`]: {
+ height: fontSizeLG * lineHeight,
+ // Arrow offset
+ marginInlineStart: paddingLG - padding
+ }
+ },
+ [`> ${componentCls}-content > ${componentCls}-content-box`]: {
+ padding: paddingLG
+ }
+ }
+ },
+ [`${componentCls}-item:last-child`]: {
+ [`> ${componentCls}-content`]: {
+ borderRadius: `0 0 ${collapsePanelBorderRadius}px ${collapsePanelBorderRadius}px`
+ }
+ },
+ [`& ${componentCls}-item-disabled > ${componentCls}-header`]: {
+ [`
+ &,
+ & > .arrow
+ `]: {
+ color: colorTextDisabled,
+ cursor: 'not-allowed'
+ }
+ },
+ // ========================== Icon Position ==========================
+ [`&${componentCls}-icon-position-end`]: {
+ [`& > ${componentCls}-item`]: {
+ [`> ${componentCls}-header`]: {
+ [`${componentCls}-expand-icon`]: {
+ order: 1,
+ paddingInlineEnd: 0,
+ paddingInlineStart: marginSM
+ }
+ }
+ }
+ }
+ })
+ };
+};
+const genArrowStyle = token => {
+ const {
+ componentCls
+ } = token;
+ const fixedSelector = `> ${componentCls}-item > ${componentCls}-header ${componentCls}-arrow svg`;
+ return {
+ [`${componentCls}-rtl`]: {
+ [fixedSelector]: {
+ transform: `rotate(180deg)`
+ }
+ }
+ };
+};
+const genBorderlessStyle = token => {
+ const {
+ componentCls,
+ headerBg,
+ paddingXXS,
+ colorBorder
+ } = token;
+ return {
+ [`${componentCls}-borderless`]: {
+ backgroundColor: headerBg,
+ border: 0,
+ [`> ${componentCls}-item`]: {
+ borderBottom: `1px solid ${colorBorder}`
+ },
+ [`
+ > ${componentCls}-item:last-child,
+ > ${componentCls}-item:last-child ${componentCls}-header
+ `]: {
+ borderRadius: 0
+ },
+ [`> ${componentCls}-item:last-child`]: {
+ borderBottom: 0
+ },
+ [`> ${componentCls}-item > ${componentCls}-content`]: {
+ backgroundColor: 'transparent',
+ borderTop: 0
+ },
+ [`> ${componentCls}-item > ${componentCls}-content > ${componentCls}-content-box`]: {
+ paddingTop: paddingXXS
+ }
+ }
+ };
+};
+const genGhostStyle = token => {
+ const {
+ componentCls,
+ paddingSM
+ } = token;
+ return {
+ [`${componentCls}-ghost`]: {
+ backgroundColor: 'transparent',
+ border: 0,
+ [`> ${componentCls}-item`]: {
+ borderBottom: 0,
+ [`> ${componentCls}-content`]: {
+ backgroundColor: 'transparent',
+ border: 0,
+ [`> ${componentCls}-content-box`]: {
+ paddingBlock: paddingSM
+ }
+ }
+ }
+ }
+ };
+};
+/* harmony default export */ var collapse_style = ((0,genComponentStyleHook/* default */.Z)('Collapse', token => {
+ const collapseToken = (0,statistic/* merge */.TS)(token, {
+ collapseHeaderPaddingSM: `${token.paddingXS}px ${token.paddingSM}px`,
+ collapseHeaderPaddingLG: `${token.padding}px ${token.paddingLG}px`,
+ collapsePanelBorderRadius: token.borderRadiusLG
+ });
+ return [genBaseStyle(collapseToken), genBorderlessStyle(collapseToken), genGhostStyle(collapseToken), genArrowStyle(collapseToken), (0,collapse/* default */.Z)(collapseToken)];
+}, token => ({
+ headerPadding: `${token.paddingSM}px ${token.padding}px`,
+ headerBg: token.colorFillAlter,
+ contentPadding: `${token.padding}px 16px`,
+ contentBg: token.colorBgContainer
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/collapse/Collapse.js
+"use client";
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+const Collapse_Collapse = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ const {
+ getPrefixCls,
+ direction,
+ collapse
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ style,
+ bordered = true,
+ ghost,
+ size: customizeSize,
+ expandIconPosition = 'start',
+ children,
+ expandIcon
+ } = props;
+ const mergedSize = (0,useSize/* default */.Z)(ctx => {
+ var _a;
+ return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : ctx) !== null && _a !== void 0 ? _a : 'middle';
+ });
+ const prefixCls = getPrefixCls('collapse', customizePrefixCls);
+ const rootPrefixCls = getPrefixCls();
+ const [wrapSSR, hashId] = collapse_style(prefixCls);
+ // Warning if use legacy type `expandIconPosition`
+ false ? 0 : void 0;
+ // Align with logic position
+ const mergedExpandIconPosition = _react_17_0_2_react.useMemo(() => {
+ if (expandIconPosition === 'left') {
+ return 'start';
+ }
+ return expandIconPosition === 'right' ? 'end' : expandIconPosition;
+ }, [expandIconPosition]);
+ const renderExpandIcon = function () {
+ let panelProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+ const icon = expandIcon ? expandIcon(panelProps) : /*#__PURE__*/_react_17_0_2_react.createElement(RightOutlined/* default */.Z, {
+ rotate: panelProps.isActive ? 90 : undefined
+ });
+ return (0,reactNode/* cloneElement */.Tm)(icon, () => ({
+ className: _classnames_2_5_1_classnames_default()(icon.props.className, `${prefixCls}-arrow`)
+ }));
+ };
+ const collapseClassName = _classnames_2_5_1_classnames_default()(`${prefixCls}-icon-position-${mergedExpandIconPosition}`, {
+ [`${prefixCls}-borderless`]: !bordered,
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-ghost`]: !!ghost,
+ [`${prefixCls}-${mergedSize}`]: mergedSize !== 'middle'
+ }, collapse === null || collapse === void 0 ? void 0 : collapse.className, className, rootClassName, hashId);
+ const openMotion = Object.assign(Object.assign({}, (0,motion/* default */.Z)(rootPrefixCls)), {
+ motionAppear: false,
+ leavedClassName: `${prefixCls}-content-hidden`
+ });
+ const items = _react_17_0_2_react.useMemo(() => children ? (0,toArray/* default */.Z)(children).map((child, index) => {
+ var _a, _b;
+ if ((_a = child.props) === null || _a === void 0 ? void 0 : _a.disabled) {
+ const key = (_b = child.key) !== null && _b !== void 0 ? _b : String(index);
+ const {
+ disabled,
+ collapsible
+ } = child.props;
+ const childProps = Object.assign(Object.assign({}, (0,omit/* default */.Z)(child.props, ['disabled'])), {
+ key,
+ collapsible: collapsible !== null && collapsible !== void 0 ? collapsible : disabled ? 'disabled' : undefined
+ });
+ return (0,reactNode/* cloneElement */.Tm)(child, childProps);
+ }
+ return child;
+ }) : null, [children]);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(_rc_collapse_3_7_2_rc_collapse_es, Object.assign({
+ ref: ref,
+ openMotion: openMotion
+ }, (0,omit/* default */.Z)(props, ['rootClassName']), {
+ expandIcon: renderExpandIcon,
+ prefixCls: prefixCls,
+ className: collapseClassName,
+ style: Object.assign(Object.assign({}, collapse === null || collapse === void 0 ? void 0 : collapse.style), style)
+ }), items));
+});
+if (false) {}
+/* harmony default export */ var collapse_Collapse = (Object.assign(Collapse_Collapse, {
+ Panel: collapse_CollapsePanel
+}));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/collapse/index.js
+"use client";
+
+
+/* harmony default export */ var es_collapse = (collapse_Collapse);
+
+/***/ }),
+
+/***/ 28103:
+/*!***********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/divider/index.js + 1 modules ***!
+ \***********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ divider; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/style/index.js
+
+
+// ============================== Shared ==============================
+const genSharedDividerStyle = token => {
+ const {
+ componentCls,
+ sizePaddingEdgeHorizontal,
+ colorSplit,
+ lineWidth,
+ textPaddingInline,
+ orientationMargin,
+ verticalMarginInline
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ borderBlockStart: `${lineWidth}px solid ${colorSplit}`,
+ // vertical
+ '&-vertical': {
+ position: 'relative',
+ top: '-0.06em',
+ display: 'inline-block',
+ height: '0.9em',
+ marginInline: verticalMarginInline,
+ marginBlock: 0,
+ verticalAlign: 'middle',
+ borderTop: 0,
+ borderInlineStart: `${lineWidth}px solid ${colorSplit}`
+ },
+ '&-horizontal': {
+ display: 'flex',
+ clear: 'both',
+ width: '100%',
+ minWidth: '100%',
+ margin: `${token.dividerHorizontalGutterMargin}px 0`
+ },
+ [`&-horizontal${componentCls}-with-text`]: {
+ display: 'flex',
+ alignItems: 'center',
+ margin: `${token.dividerHorizontalWithTextGutterMargin}px 0`,
+ color: token.colorTextHeading,
+ fontWeight: 500,
+ fontSize: token.fontSizeLG,
+ whiteSpace: 'nowrap',
+ textAlign: 'center',
+ borderBlockStart: `0 ${colorSplit}`,
+ '&::before, &::after': {
+ position: 'relative',
+ width: '50%',
+ borderBlockStart: `${lineWidth}px solid transparent`,
+ // Chrome not accept `inherit` in `border-top`
+ borderBlockStartColor: 'inherit',
+ borderBlockEnd: 0,
+ transform: 'translateY(50%)',
+ content: "''"
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-left`]: {
+ '&::before': {
+ width: `${orientationMargin * 100}%`
+ },
+ '&::after': {
+ width: `${100 - orientationMargin * 100}%`
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-right`]: {
+ '&::before': {
+ width: `${100 - orientationMargin * 100}%`
+ },
+ '&::after': {
+ width: `${orientationMargin * 100}%`
+ }
+ },
+ [`${componentCls}-inner-text`]: {
+ display: 'inline-block',
+ paddingBlock: 0,
+ paddingInline: textPaddingInline
+ },
+ '&-dashed': {
+ background: 'none',
+ borderColor: colorSplit,
+ borderStyle: 'dashed',
+ borderWidth: `${lineWidth}px 0 0`
+ },
+ [`&-horizontal${componentCls}-with-text${componentCls}-dashed`]: {
+ '&::before, &::after': {
+ borderStyle: 'dashed none none'
+ }
+ },
+ [`&-vertical${componentCls}-dashed`]: {
+ borderInlineStartWidth: lineWidth,
+ borderInlineEnd: 0,
+ borderBlockStart: 0,
+ borderBlockEnd: 0
+ },
+ [`&-plain${componentCls}-with-text`]: {
+ color: token.colorText,
+ fontWeight: 'normal',
+ fontSize: token.fontSize
+ },
+ [`&-horizontal${componentCls}-with-text-left${componentCls}-no-default-orientation-margin-left`]: {
+ '&::before': {
+ width: 0
+ },
+ '&::after': {
+ width: '100%'
+ },
+ [`${componentCls}-inner-text`]: {
+ paddingInlineStart: sizePaddingEdgeHorizontal
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-right${componentCls}-no-default-orientation-margin-right`]: {
+ '&::before': {
+ width: '100%'
+ },
+ '&::after': {
+ width: 0
+ },
+ [`${componentCls}-inner-text`]: {
+ paddingInlineEnd: sizePaddingEdgeHorizontal
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var divider_style = ((0,genComponentStyleHook/* default */.Z)('Divider', token => {
+ const dividerToken = (0,statistic/* merge */.TS)(token, {
+ dividerHorizontalWithTextGutterMargin: token.margin,
+ dividerHorizontalGutterMargin: token.marginLG,
+ sizePaddingEdgeHorizontal: 0
+ });
+ return [genSharedDividerStyle(dividerToken)];
+}, token => ({
+ textPaddingInline: '1em',
+ orientationMargin: 0.05,
+ verticalMarginInline: token.marginXS
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+const Divider = props => {
+ const {
+ getPrefixCls,
+ direction,
+ divider
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ type = 'horizontal',
+ orientation = 'center',
+ orientationMargin,
+ className,
+ rootClassName,
+ children,
+ dashed,
+ plain,
+ style
+ } = props,
+ restProps = __rest(props, ["prefixCls", "type", "orientation", "orientationMargin", "className", "rootClassName", "children", "dashed", "plain", "style"]);
+ const prefixCls = getPrefixCls('divider', customizePrefixCls);
+ const [wrapSSR, hashId] = divider_style(prefixCls);
+ const orientationPrefix = orientation.length > 0 ? `-${orientation}` : orientation;
+ const hasChildren = !!children;
+ const hasCustomMarginLeft = orientation === 'left' && orientationMargin != null;
+ const hasCustomMarginRight = orientation === 'right' && orientationMargin != null;
+ const classString = _classnames_2_5_1_classnames_default()(prefixCls, divider === null || divider === void 0 ? void 0 : divider.className, hashId, `${prefixCls}-${type}`, {
+ [`${prefixCls}-with-text`]: hasChildren,
+ [`${prefixCls}-with-text${orientationPrefix}`]: hasChildren,
+ [`${prefixCls}-dashed`]: !!dashed,
+ [`${prefixCls}-plain`]: !!plain,
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-no-default-orientation-margin-left`]: hasCustomMarginLeft,
+ [`${prefixCls}-no-default-orientation-margin-right`]: hasCustomMarginRight
+ }, className, rootClassName);
+ const memoizedOrientationMargin = _react_17_0_2_react.useMemo(() => {
+ if (typeof orientationMargin === 'number') {
+ return orientationMargin;
+ }
+ if (/^\d+$/.test(orientationMargin)) {
+ return Number(orientationMargin);
+ }
+ return orientationMargin;
+ }, [orientationMargin]);
+ const innerStyle = Object.assign(Object.assign({}, hasCustomMarginLeft && {
+ marginLeft: memoizedOrientationMargin
+ }), hasCustomMarginRight && {
+ marginRight: memoizedOrientationMargin
+ });
+ // Warning children not work in vertical mode
+ if (false) {}
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", Object.assign({
+ className: classString,
+ style: Object.assign(Object.assign({}, divider === null || divider === void 0 ? void 0 : divider.style), style)
+ }, restProps, {
+ role: "separator"
+ }), children && type !== 'vertical' && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-inner-text`,
+ style: innerStyle
+ }, children)));
+};
+if (false) {}
+/* harmony default export */ var divider = (Divider);
+
+/***/ }),
+
+/***/ 39722:
+/*!***************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/PurePanel.js ***!
+ \***************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ t5: function() { return /* binding */ RawPurePanel; }
+/* harmony export */ });
+/* unused harmony export getOverlay */
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var rc_tooltip__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rc-tooltip */ 55477);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../config-provider */ 36355);
+/* harmony import */ var _util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../_util/getRenderPropValue */ 77578);
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./style */ 17356);
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+const getOverlay = (prefixCls, title, content) => {
+ if (!title && !content) return undefined;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(react__WEBPACK_IMPORTED_MODULE_2__.Fragment, null, title && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-title`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__/* .getRenderPropValue */ .Z)(title)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-inner-content`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__/* .getRenderPropValue */ .Z)(content)));
+};
+const RawPurePanel = props => {
+ const {
+ hashId,
+ prefixCls,
+ className,
+ style,
+ placement = 'top',
+ title,
+ content,
+ children
+ } = props;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: classnames__WEBPACK_IMPORTED_MODULE_0___default()(hashId, prefixCls, `${prefixCls}-pure`, `${prefixCls}-placement-${placement}`, className),
+ style: style
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-arrow`
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(rc_tooltip__WEBPACK_IMPORTED_MODULE_1__/* .Popup */ .G, Object.assign({}, props, {
+ className: hashId,
+ prefixCls: prefixCls
+ }), children || getOverlay(prefixCls, title, content)));
+};
+const PurePanel = props => {
+ const {
+ prefixCls: customizePrefixCls
+ } = props,
+ restProps = __rest(props, ["prefixCls"]);
+ const {
+ getPrefixCls
+ } = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_4__/* .ConfigContext */ .E_);
+ const prefixCls = getPrefixCls('popover', customizePrefixCls);
+ const [wrapSSR, hashId] = (0,_style__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)(prefixCls);
+ return wrapSSR( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(RawPurePanel, Object.assign({}, restProps, {
+ prefixCls: prefixCls,
+ hashId: hashId
+ })));
+};
+/* harmony default export */ __webpack_exports__.ZP = (PurePanel);
+
+/***/ }),
+
+/***/ 60324:
+/*!***********************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/index.js ***!
+ \***********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../_util/getRenderPropValue */ 77578);
+/* harmony import */ var _util_motion__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../_util/motion */ 62892);
+/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../config-provider */ 36355);
+/* harmony import */ var _tooltip__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../tooltip */ 6848);
+/* harmony import */ var _PurePanel__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./PurePanel */ 39722);
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./style */ 17356);
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+// CSSINJS
+
+const Overlay = _ref => {
+ let {
+ title,
+ content,
+ prefixCls
+ } = _ref;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, title && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", {
+ className: `${prefixCls}-title`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__/* .getRenderPropValue */ .Z)(title)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", {
+ className: `${prefixCls}-inner-content`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__/* .getRenderPropValue */ .Z)(content)));
+};
+const Popover = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.forwardRef((props, ref) => {
+ const {
+ prefixCls: customizePrefixCls,
+ title,
+ content,
+ overlayClassName,
+ placement = 'top',
+ trigger = 'hover',
+ mouseEnterDelay = 0.1,
+ mouseLeaveDelay = 0.1,
+ overlayStyle = {}
+ } = props,
+ otherProps = __rest(props, ["prefixCls", "title", "content", "overlayClassName", "placement", "trigger", "mouseEnterDelay", "mouseLeaveDelay", "overlayStyle"]);
+ const {
+ getPrefixCls
+ } = react__WEBPACK_IMPORTED_MODULE_1__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_3__/* .ConfigContext */ .E_);
+ const prefixCls = getPrefixCls('popover', customizePrefixCls);
+ const [wrapSSR, hashId] = (0,_style__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(prefixCls);
+ const rootPrefixCls = getPrefixCls();
+ const overlayCls = classnames__WEBPACK_IMPORTED_MODULE_0___default()(overlayClassName, hashId);
+ return wrapSSR( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_tooltip__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, Object.assign({
+ placement: placement,
+ trigger: trigger,
+ mouseEnterDelay: mouseEnterDelay,
+ mouseLeaveDelay: mouseLeaveDelay,
+ overlayStyle: overlayStyle
+ }, otherProps, {
+ prefixCls: prefixCls,
+ overlayClassName: overlayCls,
+ ref: ref,
+ overlay: title || content ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(Overlay, {
+ prefixCls: prefixCls,
+ title: title,
+ content: content
+ }) : null,
+ transitionName: (0,_util_motion__WEBPACK_IMPORTED_MODULE_6__/* .getTransitionName */ .m)(rootPrefixCls, 'zoom-big', otherProps.transitionName),
+ "data-popover-inject": true
+ })));
+});
+if (false) {}
+Popover._InternalPanelDoNotUseOrYouWillBeFired = _PurePanel__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP;
+/* harmony default export */ __webpack_exports__.Z = (Popover);
+
+/***/ }),
+
+/***/ 17356:
+/*!*****************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/style/index.js ***!
+ \*****************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../style */ 17313);
+/* harmony import */ var _style_motion__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../style/motion */ 29878);
+/* harmony import */ var _style_placementArrow__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../style/placementArrow */ 19447);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../theme/internal */ 33166);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../theme/internal */ 83116);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../theme/internal */ 37613);
+"use client";
+
+
+
+
+
+const genBaseStyle = token => {
+ const {
+ componentCls,
+ popoverColor,
+ minWidth,
+ fontWeightStrong,
+ popoverPadding,
+ boxShadowSecondary,
+ colorTextHeading,
+ borderRadiusLG: borderRadius,
+ zIndexPopup,
+ marginXS,
+ colorBgElevated,
+ popoverBg
+ } = token;
+ return [{
+ [componentCls]: Object.assign(Object.assign({}, (0,_style__WEBPACK_IMPORTED_MODULE_0__/* .resetComponent */ .Wf)(token)), {
+ position: 'absolute',
+ top: 0,
+ // use `left` to fix https://github.com/ant-design/ant-design/issues/39195
+ left: {
+ _skip_check_: true,
+ value: 0
+ },
+ zIndex: zIndexPopup,
+ fontWeight: 'normal',
+ whiteSpace: 'normal',
+ textAlign: 'start',
+ cursor: 'auto',
+ userSelect: 'text',
+ transformOrigin: `var(--arrow-x, 50%) var(--arrow-y, 50%)`,
+ '--antd-arrow-background-color': colorBgElevated,
+ '&-rtl': {
+ direction: 'rtl'
+ },
+ '&-hidden': {
+ display: 'none'
+ },
+ [`${componentCls}-content`]: {
+ position: 'relative'
+ },
+ [`${componentCls}-inner`]: {
+ backgroundColor: popoverBg,
+ backgroundClip: 'padding-box',
+ borderRadius,
+ boxShadow: boxShadowSecondary,
+ padding: popoverPadding
+ },
+ [`${componentCls}-title`]: {
+ minWidth,
+ marginBottom: marginXS,
+ color: colorTextHeading,
+ fontWeight: fontWeightStrong
+ },
+ [`${componentCls}-inner-content`]: {
+ color: popoverColor
+ }
+ })
+ },
+ // Arrow Style
+ (0,_style_placementArrow__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .ZP)(token, {
+ colorBg: 'var(--antd-arrow-background-color)'
+ }),
+ // Pure Render
+ {
+ [`${componentCls}-pure`]: {
+ position: 'relative',
+ maxWidth: 'none',
+ margin: token.sizePopupArrow,
+ display: 'inline-block',
+ [`${componentCls}-content`]: {
+ display: 'inline-block'
+ }
+ }
+ }];
+};
+const genColorStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [componentCls]: _theme_internal__WEBPACK_IMPORTED_MODULE_2__/* .PresetColors */ .i.map(colorKey => {
+ const lightColor = token[`${colorKey}6`];
+ return {
+ [`&${componentCls}-${colorKey}`]: {
+ '--antd-arrow-background-color': lightColor,
+ [`${componentCls}-inner`]: {
+ backgroundColor: lightColor
+ },
+ [`${componentCls}-arrow`]: {
+ background: 'transparent'
+ }
+ }
+ };
+ })
+ };
+};
+const genWireframeStyle = token => {
+ const {
+ componentCls,
+ lineWidth,
+ lineType,
+ colorSplit,
+ paddingSM,
+ controlHeight,
+ fontSize,
+ lineHeight,
+ padding
+ } = token;
+ const titlePaddingBlockDist = controlHeight - Math.round(fontSize * lineHeight);
+ const popoverTitlePaddingBlockTop = titlePaddingBlockDist / 2;
+ const popoverTitlePaddingBlockBottom = titlePaddingBlockDist / 2 - lineWidth;
+ const popoverPaddingHorizontal = padding;
+ return {
+ [componentCls]: {
+ [`${componentCls}-inner`]: {
+ padding: 0
+ },
+ [`${componentCls}-title`]: {
+ margin: 0,
+ padding: `${popoverTitlePaddingBlockTop}px ${popoverPaddingHorizontal}px ${popoverTitlePaddingBlockBottom}px`,
+ borderBottom: `${lineWidth}px ${lineType} ${colorSplit}`
+ },
+ [`${componentCls}-inner-content`]: {
+ padding: `${paddingSM}px ${popoverPaddingHorizontal}px`
+ }
+ }
+ };
+};
+/* harmony default export */ __webpack_exports__.Z = ((0,_theme_internal__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)('Popover', token => {
+ const {
+ colorBgElevated,
+ colorText,
+ wireframe
+ } = token;
+ const popoverToken = (0,_theme_internal__WEBPACK_IMPORTED_MODULE_4__/* .merge */ .TS)(token, {
+ popoverPadding: 12,
+ popoverBg: colorBgElevated,
+ popoverColor: colorText
+ });
+ return [genBaseStyle(popoverToken), genColorStyle(popoverToken), wireframe && genWireframeStyle(popoverToken), (0,_style_motion__WEBPACK_IMPORTED_MODULE_5__/* .initZoomMotion */ ._y)(popoverToken, 'zoom-big')];
+}, token => ({
+ width: 177,
+ minWidth: 177,
+ zIndexPopup: token.zIndexPopupBase + 30
+}), {
+ resetStyle: false,
+ deprecatedTokens: [['width', 'minWidth']]
+}));
+
+/***/ }),
+
+/***/ 91052:
+/*!********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/rate/index.js + 8 modules ***!
+ \********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ rate; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/StarFilled.js
+// This icon file is generated automatically.
+var StarFilled = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M908.1 353.1l-253.9-36.9L540.7 86.1c-3.1-6.3-8.2-11.4-14.5-14.5-15.8-7.8-35-1.3-42.9 14.5L369.8 316.2l-253.9 36.9c-7 1-13.4 4.3-18.3 9.3a32.05 32.05 0 00.6 45.3l183.7 179.1-43.4 252.9a31.95 31.95 0 0046.4 33.7L512 754l227.1 119.4c6.2 3.3 13.4 4.4 20.3 3.2 17.4-3 29.1-19.5 26.1-36.9l-43.4-252.9 183.7-179.1c5-4.9 8.3-11.3 9.3-18.3 2.7-17.5-9.5-33.7-27-36.3z" } }] }, "name": "star", "theme": "filled" };
+/* harmony default export */ var asn_StarFilled = (StarFilled);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/StarFilled.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var StarFilled_StarFilled = function StarFilled(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_StarFilled
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_StarFilled = (/*#__PURE__*/_react_17_0_2_react.forwardRef(StarFilled_StarFilled));
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
+var useMergedState = __webpack_require__(84381);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/pickAttrs.js
+var pickAttrs = __webpack_require__(3286);
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Star.js
+
+
+
+function Star(props, ref) {
+ var disabled = props.disabled,
+ prefixCls = props.prefixCls,
+ character = props.character,
+ characterRender = props.characterRender,
+ index = props.index,
+ count = props.count,
+ value = props.value,
+ allowHalf = props.allowHalf,
+ focused = props.focused,
+ onHover = props.onHover,
+ onClick = props.onClick;
+ // =========================== Events ===========================
+ var onInternalHover = function onInternalHover(e) {
+ onHover(e, index);
+ };
+ var onInternalClick = function onInternalClick(e) {
+ onClick(e, index);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(e) {
+ if (e.keyCode === KeyCode/* default */.Z.ENTER) {
+ onClick(e, index);
+ }
+ };
+ // =========================== Render ===========================
+ // >>>>> ClassName
+ var starValue = index + 1;
+ var classNameList = new Set([prefixCls]);
+ // TODO: Current we just refactor from CC to FC. This logic seems can be optimized.
+ if (value === 0 && index === 0 && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ } else if (allowHalf && value + 0.5 >= starValue && value < starValue) {
+ classNameList.add("".concat(prefixCls, "-half"));
+ classNameList.add("".concat(prefixCls, "-active"));
+ if (focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ } else {
+ if (starValue <= value) {
+ classNameList.add("".concat(prefixCls, "-full"));
+ } else {
+ classNameList.add("".concat(prefixCls, "-zero"));
+ }
+ if (starValue === value && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ }
+ // >>>>> Node
+ var characterNode = typeof character === 'function' ? character(props) : character;
+ var start = /*#__PURE__*/_react_17_0_2_react.createElement("li", {
+ className: _classnames_2_5_1_classnames_default()(Array.from(classNameList)),
+ ref: ref
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ onClick: disabled ? null : onInternalClick,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ onMouseMove: disabled ? null : onInternalHover,
+ role: "radio",
+ "aria-checked": value > index ? 'true' : 'false',
+ "aria-posinset": index + 1,
+ "aria-setsize": count,
+ tabIndex: disabled ? -1 : 0
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-first")
+ }, characterNode), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-second")
+ }, characterNode)));
+ if (characterRender) {
+ start = characterRender(start, props);
+ }
+ return start;
+}
+/* harmony default export */ var es_Star = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Star));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/useRefs.js
+
+function useRefs() {
+ var nodeRef = _react_17_0_2_react.useRef({});
+ function getRef(index) {
+ return nodeRef.current[index];
+ }
+ function setRef(index) {
+ return function (node) {
+ nodeRef.current[index] = node;
+ };
+ }
+ return [getRef, setRef];
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/util.js
+function getScroll(w) {
+ var ret = w.pageXOffset;
+ var method = 'scrollLeft';
+ if (typeof ret !== 'number') {
+ var d = w.document;
+ // ie6,7,8 standard mode
+ ret = d.documentElement[method];
+ if (typeof ret !== 'number') {
+ // quirks mode
+ ret = d.body[method];
+ }
+ }
+ return ret;
+}
+function getClientPosition(elem) {
+ var x;
+ var y;
+ var doc = elem.ownerDocument;
+ var body = doc.body;
+ var docElem = doc && doc.documentElement;
+ var box = elem.getBoundingClientRect();
+ x = box.left;
+ y = box.top;
+ x -= docElem.clientLeft || body.clientLeft || 0;
+ y -= docElem.clientTop || body.clientTop || 0;
+ return {
+ left: x,
+ top: y
+ };
+}
+function getOffsetLeft(el) {
+ var pos = getClientPosition(el);
+ var doc = el.ownerDocument;
+ // Only IE use `parentWindow`
+ var w = doc.defaultView || doc.parentWindow;
+ pos.left += getScroll(w);
+ return pos.left;
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Rate.js
+
+
+
+
+var _excluded = ["prefixCls", "className", "defaultValue", "value", "count", "allowHalf", "allowClear", "character", "characterRender", "disabled", "direction", "tabIndex", "autoFocus", "onHoverChange", "onChange", "onFocus", "onBlur", "onKeyDown", "onMouseLeave"];
+
+
+
+
+
+
+
+
+function Rate(props, ref) {
+ var _classNames;
+ var _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-rate' : _props$prefixCls,
+ className = props.className,
+ defaultValue = props.defaultValue,
+ propValue = props.value,
+ _props$count = props.count,
+ count = _props$count === void 0 ? 5 : _props$count,
+ _props$allowHalf = props.allowHalf,
+ allowHalf = _props$allowHalf === void 0 ? false : _props$allowHalf,
+ _props$allowClear = props.allowClear,
+ allowClear = _props$allowClear === void 0 ? true : _props$allowClear,
+ _props$character = props.character,
+ character = _props$character === void 0 ? '★' : _props$character,
+ characterRender = props.characterRender,
+ disabled = props.disabled,
+ _props$direction = props.direction,
+ direction = _props$direction === void 0 ? 'ltr' : _props$direction,
+ _props$tabIndex = props.tabIndex,
+ tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,
+ autoFocus = props.autoFocus,
+ onHoverChange = props.onHoverChange,
+ onChange = props.onChange,
+ onFocus = props.onFocus,
+ onBlur = props.onBlur,
+ onKeyDown = props.onKeyDown,
+ onMouseLeave = props.onMouseLeave,
+ restProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var _useRefs = useRefs(),
+ _useRefs2 = (0,slicedToArray/* default */.Z)(_useRefs, 2),
+ getStarRef = _useRefs2[0],
+ setStarRef = _useRefs2[1];
+ var rateRef = _react_17_0_2_react.useRef(null);
+ // ============================ Ref =============================
+ var triggerFocus = function triggerFocus() {
+ if (!disabled) {
+ var _rateRef$current;
+ (_rateRef$current = rateRef.current) === null || _rateRef$current === void 0 ? void 0 : _rateRef$current.focus();
+ }
+ };
+ _react_17_0_2_react.useImperativeHandle(ref, function () {
+ return {
+ focus: triggerFocus,
+ blur: function blur() {
+ if (!disabled) {
+ var _rateRef$current2;
+ (_rateRef$current2 = rateRef.current) === null || _rateRef$current2 === void 0 ? void 0 : _rateRef$current2.blur();
+ }
+ }
+ };
+ });
+ // =========================== Value ============================
+ var _useMergedState = (0,useMergedState/* default */.Z)(defaultValue || 0, {
+ value: propValue
+ }),
+ _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
+ value = _useMergedState2[0],
+ setValue = _useMergedState2[1];
+ var _useMergedState3 = (0,useMergedState/* default */.Z)(null),
+ _useMergedState4 = (0,slicedToArray/* default */.Z)(_useMergedState3, 2),
+ cleanedValue = _useMergedState4[0],
+ setCleanedValue = _useMergedState4[1];
+ var getStarValue = function getStarValue(index, x) {
+ var reverse = direction === 'rtl';
+ var starValue = index + 1;
+ if (allowHalf) {
+ var starEle = getStarRef(index);
+ var leftDis = getOffsetLeft(starEle);
+ var width = starEle.clientWidth;
+ if (reverse && x - leftDis > width / 2) {
+ starValue -= 0.5;
+ } else if (!reverse && x - leftDis < width / 2) {
+ starValue -= 0.5;
+ }
+ }
+ return starValue;
+ };
+ // >>>>> Change
+ var changeValue = function changeValue(nextValue) {
+ setValue(nextValue);
+ onChange === null || onChange === void 0 ? void 0 : onChange(nextValue);
+ };
+ // =========================== Focus ============================
+ var _React$useState = _react_17_0_2_react.useState(false),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ focused = _React$useState2[0],
+ setFocused = _React$useState2[1];
+ var onInternalFocus = function onInternalFocus() {
+ setFocused(true);
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus();
+ };
+ var onInternalBlur = function onInternalBlur() {
+ setFocused(false);
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur();
+ };
+ // =========================== Hover ============================
+ var _React$useState3 = _react_17_0_2_react.useState(null),
+ _React$useState4 = (0,slicedToArray/* default */.Z)(_React$useState3, 2),
+ hoverValue = _React$useState4[0],
+ setHoverValue = _React$useState4[1];
+ var onHover = function onHover(event, index) {
+ var nextHoverValue = getStarValue(index, event.pageX);
+ if (nextHoverValue !== cleanedValue) {
+ setHoverValue(nextHoverValue);
+ setCleanedValue(null);
+ }
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(nextHoverValue);
+ };
+ var onMouseLeaveCallback = function onMouseLeaveCallback(event) {
+ if (!disabled) {
+ setHoverValue(null);
+ setCleanedValue(null);
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(undefined);
+ }
+ if (event) {
+ onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave(event);
+ }
+ };
+ // =========================== Click ============================
+ var onClick = function onClick(event, index) {
+ var newValue = getStarValue(index, event.pageX);
+ var isReset = false;
+ if (allowClear) {
+ isReset = newValue === value;
+ }
+ onMouseLeaveCallback();
+ changeValue(isReset ? 0 : newValue);
+ setCleanedValue(isReset ? newValue : null);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(event) {
+ var keyCode = event.keyCode;
+ var reverse = direction === 'rtl';
+ var nextValue = value;
+ if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue < count && !reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue > 0 && !reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue > 0 && reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue < count && reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ }
+ onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);
+ };
+ // =========================== Effect ===========================
+ _react_17_0_2_react.useEffect(function () {
+ if (autoFocus && !disabled) {
+ triggerFocus();
+ }
+ }, []);
+ // =========================== Render ===========================
+ // >>> Star
+ var starNodes = new Array(count).fill(0).map(function (item, index) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_Star, {
+ ref: setStarRef(index),
+ index: index,
+ count: count,
+ disabled: disabled,
+ prefixCls: "".concat(prefixCls, "-star"),
+ allowHalf: allowHalf,
+ value: hoverValue === null ? value : hoverValue,
+ onClick: onClick,
+ onHover: onHover,
+ key: item || index,
+ character: character,
+ characterRender: characterRender,
+ focused: focused
+ });
+ });
+ var classString = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-rtl"), direction === 'rtl'), _classNames));
+ // >>> Node
+ return /*#__PURE__*/_react_17_0_2_react.createElement("ul", (0,esm_extends/* default */.Z)({
+ className: classString,
+ onMouseLeave: onMouseLeaveCallback,
+ tabIndex: disabled ? -1 : tabIndex,
+ onFocus: disabled ? null : onInternalFocus,
+ onBlur: disabled ? null : onInternalBlur,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ ref: rateRef,
+ role: "radiogroup"
+ }, (0,pickAttrs/* default */.Z)(restProps, {
+ aria: true,
+ data: true,
+ attr: true
+ })), starNodes);
+}
+/* harmony default export */ var es_Rate = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Rate));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/index.js
+
+/* harmony default export */ var es = (es_Rate);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
+var tooltip = __webpack_require__(6848);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/style/index.js
+"use client";
+
+
+
+const genRateStarStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [`${componentCls}-star`]: {
+ position: 'relative',
+ display: 'inline-block',
+ color: 'inherit',
+ cursor: 'pointer',
+ '&:not(:last-child)': {
+ marginInlineEnd: token.marginXS
+ },
+ '> div': {
+ transition: `all ${token.motionDurationMid}, outline 0s`,
+ '&:hover': {
+ transform: token.starHoverScale
+ },
+ '&:focus': {
+ outline: 0
+ },
+ '&:focus-visible': {
+ outline: `${token.lineWidth}px dashed ${token.starColor}`,
+ transform: token.starHoverScale
+ }
+ },
+ '&-first, &-second': {
+ color: token.starBg,
+ transition: `all ${token.motionDurationMid}`,
+ userSelect: 'none',
+ [token.iconCls]: {
+ verticalAlign: 'middle'
+ }
+ },
+ '&-first': {
+ position: 'absolute',
+ top: 0,
+ insetInlineStart: 0,
+ width: '50%',
+ height: '100%',
+ overflow: 'hidden',
+ opacity: 0
+ },
+ [`&-half ${componentCls}-star-first, &-half ${componentCls}-star-second`]: {
+ opacity: 1
+ },
+ [`&-half ${componentCls}-star-first, &-full ${componentCls}-star-second`]: {
+ color: 'inherit'
+ }
+ }
+ };
+};
+const genRateRtlStyle = token => ({
+ [`&-rtl${token.componentCls}`]: {
+ direction: 'rtl'
+ }
+});
+const genRateStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ display: 'inline-block',
+ margin: 0,
+ padding: 0,
+ color: token.starColor,
+ fontSize: token.starSize,
+ lineHeight: 'unset',
+ listStyle: 'none',
+ outline: 'none',
+ // disable styles
+ [`&-disabled${componentCls} ${componentCls}-star`]: {
+ cursor: 'default',
+ '> div:hover': {
+ transform: 'scale(1)'
+ }
+ }
+ }), genRateStarStyle(token)), {
+ // text styles
+ [`+ ${componentCls}-text`]: {
+ display: 'inline-block',
+ marginInlineStart: token.marginXS,
+ fontSize: token.fontSize
+ }
+ }), genRateRtlStyle(token))
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var rate_style = ((0,genComponentStyleHook/* default */.Z)('Rate', token => {
+ const rateToken = (0,statistic/* merge */.TS)(token, {});
+ return [genRateStyle(rateToken)];
+}, token => ({
+ starColor: token.yellow6,
+ starSize: token.controlHeightLG * 0.5,
+ starHoverScale: 'scale(1.1)',
+ starBg: token.colorFillContent
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+const rate_Rate = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ const {
+ prefixCls,
+ className,
+ rootClassName,
+ style,
+ tooltips,
+ character = /*#__PURE__*/_react_17_0_2_react.createElement(icons_StarFilled, null)
+ } = props,
+ rest = __rest(props, ["prefixCls", "className", "rootClassName", "style", "tooltips", "character"]);
+ const characterRender = (node, _ref) => {
+ let {
+ index
+ } = _ref;
+ if (!tooltips) {
+ return node;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(tooltip/* default */.Z, {
+ title: tooltips[index]
+ }, node);
+ };
+ const {
+ getPrefixCls,
+ direction,
+ rate
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const ratePrefixCls = getPrefixCls('rate', prefixCls);
+ // Style
+ const [wrapSSR, hashId] = rate_style(ratePrefixCls);
+ const mergedStyle = Object.assign(Object.assign({}, rate === null || rate === void 0 ? void 0 : rate.style), style);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({
+ ref: ref,
+ character: character,
+ characterRender: characterRender
+ }, rest, {
+ className: _classnames_2_5_1_classnames_default()(className, rootClassName, hashId, rate === null || rate === void 0 ? void 0 : rate.className),
+ style: mergedStyle,
+ prefixCls: ratePrefixCls,
+ direction: direction
+ })));
+});
+if (false) {}
+/* harmony default export */ var rate = (rate_Rate);
+
+/***/ }),
+
+/***/ 31797:
+/*!*************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/statistic/index.js + 5 modules ***!
+ \*************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ es_statistic; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/hooks/useForceUpdate.js
+var useForceUpdate = __webpack_require__(56762);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/skeleton/index.js + 12 modules
+var skeleton = __webpack_require__(60371);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Number.js
+"use client";
+
+
+const StatisticNumber = props => {
+ const {
+ value,
+ formatter,
+ precision,
+ decimalSeparator,
+ groupSeparator = '',
+ prefixCls
+ } = props;
+ let valueNode;
+ if (typeof formatter === 'function') {
+ // Customize formatter
+ valueNode = formatter(value);
+ } else {
+ // Internal formatter
+ const val = String(value);
+ const cells = val.match(/^(-?)(\d*)(\.(\d+))?$/);
+ // Process if illegal number
+ if (!cells || val === '-') {
+ valueNode = val;
+ } else {
+ const negative = cells[1];
+ let int = cells[2] || '0';
+ let decimal = cells[4] || '';
+ int = int.replace(/\B(?=(\d{3})+(?!\d))/g, groupSeparator);
+ if (typeof precision === 'number') {
+ decimal = decimal.padEnd(precision, '0').slice(0, precision > 0 ? precision : 0);
+ }
+ if (decimal) {
+ decimal = `${decimalSeparator}${decimal}`;
+ }
+ valueNode = [/*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "int",
+ className: `${prefixCls}-content-value-int`
+ }, negative, int), decimal && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "decimal",
+ className: `${prefixCls}-content-value-decimal`
+ }, decimal)];
+ }
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-value`
+ }, valueNode);
+};
+/* harmony default export */ var statistic_Number = (StatisticNumber);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/style/index.js
+"use client";
+
+
+
+const genStatisticStyle = token => {
+ const {
+ componentCls,
+ marginXXS,
+ padding,
+ colorTextDescription,
+ titleFontSize,
+ colorTextHeading,
+ contentFontSize,
+ fontFamily
+ } = token;
+ return {
+ [`${componentCls}`]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ [`${componentCls}-title`]: {
+ marginBottom: marginXXS,
+ color: colorTextDescription,
+ fontSize: titleFontSize
+ },
+ [`${componentCls}-skeleton`]: {
+ paddingTop: padding
+ },
+ [`${componentCls}-content`]: {
+ color: colorTextHeading,
+ fontSize: contentFontSize,
+ fontFamily,
+ [`${componentCls}-content-value`]: {
+ display: 'inline-block',
+ direction: 'ltr'
+ },
+ [`${componentCls}-content-prefix, ${componentCls}-content-suffix`]: {
+ display: 'inline-block'
+ },
+ [`${componentCls}-content-prefix`]: {
+ marginInlineEnd: marginXXS
+ },
+ [`${componentCls}-content-suffix`]: {
+ marginInlineStart: marginXXS
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var statistic_style = ((0,genComponentStyleHook/* default */.Z)('Statistic', token => {
+ const statisticToken = (0,statistic/* merge */.TS)(token, {});
+ return [genStatisticStyle(statisticToken)];
+}, token => {
+ const {
+ fontSizeHeading3,
+ fontSize
+ } = token;
+ return {
+ titleFontSize: fontSize,
+ contentFontSize: fontSizeHeading3
+ };
+}));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Statistic.js
+"use client";
+
+
+
+
+
+
+
+const Statistic = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ style,
+ valueStyle,
+ value = 0,
+ title,
+ valueRender,
+ prefix,
+ suffix,
+ loading = false,
+ onMouseEnter,
+ onMouseLeave,
+ decimalSeparator = '.',
+ groupSeparator = ','
+ } = props;
+ const {
+ getPrefixCls,
+ direction,
+ statistic
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('statistic', customizePrefixCls);
+ const [wrapSSR, hashId] = statistic_style(prefixCls);
+ const valueNode = /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Number, Object.assign({
+ decimalSeparator: decimalSeparator,
+ groupSeparator: groupSeparator,
+ prefixCls: prefixCls
+ }, props, {
+ value: value
+ }));
+ const cls = _classnames_2_5_1_classnames_default()(prefixCls, {
+ [`${prefixCls}-rtl`]: direction === 'rtl'
+ }, statistic === null || statistic === void 0 ? void 0 : statistic.className, className, rootClassName, hashId);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: cls,
+ style: Object.assign(Object.assign({}, statistic === null || statistic === void 0 ? void 0 : statistic.style), style),
+ onMouseEnter: onMouseEnter,
+ onMouseLeave: onMouseLeave
+ }, title && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-title`
+ }, title), /*#__PURE__*/_react_17_0_2_react.createElement(skeleton/* default */.Z, {
+ paragraph: false,
+ loading: loading,
+ className: `${prefixCls}-skeleton`
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ style: valueStyle,
+ className: `${prefixCls}-content`
+ }, prefix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-prefix`
+ }, prefix), valueRender ? valueRender(valueNode) : valueNode, suffix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-suffix`
+ }, suffix)))));
+};
+if (false) {}
+/* harmony default export */ var statistic_Statistic = (Statistic);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/utils.js
+// Countdown
+const timeUnits = [['Y', 1000 * 60 * 60 * 24 * 365], ['M', 1000 * 60 * 60 * 24 * 30], ['D', 1000 * 60 * 60 * 24], ['H', 1000 * 60 * 60], ['m', 1000 * 60], ['s', 1000], ['S', 1] // million seconds
+];
+
+function formatTimeStr(duration, format) {
+ let leftDuration = duration;
+ const escapeRegex = /\[[^\]]*]/g;
+ const keepList = (format.match(escapeRegex) || []).map(str => str.slice(1, -1));
+ const templateText = format.replace(escapeRegex, '[]');
+ const replacedText = timeUnits.reduce((current, _ref) => {
+ let [name, unit] = _ref;
+ if (current.includes(name)) {
+ const value = Math.floor(leftDuration / unit);
+ leftDuration -= value * unit;
+ return current.replace(new RegExp(`${name}+`, 'g'), match => {
+ const len = match.length;
+ return value.toString().padStart(len, '0');
+ });
+ }
+ return current;
+ }, templateText);
+ let index = 0;
+ return replacedText.replace(escapeRegex, () => {
+ const match = keepList[index];
+ index += 1;
+ return match;
+ });
+}
+function formatCountdown(value, config) {
+ const {
+ format = ''
+ } = config;
+ const target = new Date(value).getTime();
+ const current = Date.now();
+ const diff = Math.max(target - current, 0);
+ return formatTimeStr(diff, format);
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Countdown.js
+"use client";
+
+
+
+
+
+
+const REFRESH_INTERVAL = 1000 / 30;
+function getTime(value) {
+ return new Date(value).getTime();
+}
+const Countdown = props => {
+ const {
+ value,
+ format = 'HH:mm:ss',
+ onChange,
+ onFinish
+ } = props;
+ const forceUpdate = (0,useForceUpdate/* default */.Z)();
+ const countdown = _react_17_0_2_react.useRef(null);
+ const stopTimer = () => {
+ onFinish === null || onFinish === void 0 ? void 0 : onFinish();
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ const syncTimer = () => {
+ const timestamp = getTime(value);
+ if (timestamp >= Date.now()) {
+ countdown.current = setInterval(() => {
+ forceUpdate();
+ onChange === null || onChange === void 0 ? void 0 : onChange(timestamp - Date.now());
+ if (timestamp < Date.now()) {
+ stopTimer();
+ }
+ }, REFRESH_INTERVAL);
+ }
+ };
+ _react_17_0_2_react.useEffect(() => {
+ syncTimer();
+ return () => {
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ }, [value]);
+ const formatter = (formatValue, config) => formatCountdown(formatValue, Object.assign(Object.assign({}, config), {
+ format
+ }));
+ const valueRender = node => (0,reactNode/* cloneElement */.Tm)(node, {
+ title: undefined
+ });
+ return /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Statistic, Object.assign({}, props, {
+ valueRender: valueRender,
+ formatter: formatter
+ }));
+};
+/* harmony default export */ var statistic_Countdown = (/*#__PURE__*/_react_17_0_2_react.memo(Countdown));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/index.js
+"use client";
+
+
+
+statistic_Statistic.Countdown = statistic_Countdown;
+/* harmony default export */ var es_statistic = (statistic_Statistic);
+
+/***/ }),
+
+/***/ 12563:
+/*!*******************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/tag/index.js + 5 modules ***!
+ \*******************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ tag; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseOutlined.js + 1 modules
+var CloseOutlined = __webpack_require__(30449);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/colors.js
+var colors = __webpack_require__(36785);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/hooks/useClosable.js
+var useClosable = __webpack_require__(47729);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/wave/index.js + 4 modules
+var wave = __webpack_require__(14088);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/style/index.js
+
+
+// ============================== Styles ==============================
+const genBaseStyle = token => {
+ const {
+ paddingXXS,
+ lineWidth,
+ tagPaddingHorizontal,
+ componentCls
+ } = token;
+ const paddingInline = tagPaddingHorizontal - lineWidth;
+ const iconMarginInline = paddingXXS - lineWidth;
+ return {
+ // Result
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ display: 'inline-block',
+ height: 'auto',
+ marginInlineEnd: token.marginXS,
+ paddingInline,
+ fontSize: token.tagFontSize,
+ lineHeight: token.tagLineHeight,
+ whiteSpace: 'nowrap',
+ background: token.defaultBg,
+ border: `${token.lineWidth}px ${token.lineType} ${token.colorBorder}`,
+ borderRadius: token.borderRadiusSM,
+ opacity: 1,
+ transition: `all ${token.motionDurationMid}`,
+ textAlign: 'start',
+ position: 'relative',
+ // RTL
+ [`&${componentCls}-rtl`]: {
+ direction: 'rtl'
+ },
+ '&, a, a:hover': {
+ color: token.defaultColor
+ },
+ [`${componentCls}-close-icon`]: {
+ marginInlineStart: iconMarginInline,
+ color: token.colorTextDescription,
+ fontSize: token.tagIconSize,
+ cursor: 'pointer',
+ transition: `all ${token.motionDurationMid}`,
+ '&:hover': {
+ color: token.colorTextHeading
+ }
+ },
+ [`&${componentCls}-has-color`]: {
+ borderColor: 'transparent',
+ [`&, a, a:hover, ${token.iconCls}-close, ${token.iconCls}-close:hover`]: {
+ color: token.colorTextLightSolid
+ }
+ },
+ [`&-checkable`]: {
+ backgroundColor: 'transparent',
+ borderColor: 'transparent',
+ cursor: 'pointer',
+ [`&:not(${componentCls}-checkable-checked):hover`]: {
+ color: token.colorPrimary,
+ backgroundColor: token.colorFillSecondary
+ },
+ '&:active, &-checked': {
+ color: token.colorTextLightSolid
+ },
+ '&-checked': {
+ backgroundColor: token.colorPrimary,
+ '&:hover': {
+ backgroundColor: token.colorPrimaryHover
+ }
+ },
+ '&:active': {
+ backgroundColor: token.colorPrimaryActive
+ }
+ },
+ [`&-hidden`]: {
+ display: 'none'
+ },
+ // To ensure that a space will be placed between character and `Icon`.
+ [`> ${token.iconCls} + span, > span + ${token.iconCls}`]: {
+ marginInlineStart: paddingInline
+ }
+ }),
+ [`${componentCls}-borderless`]: {
+ borderColor: 'transparent',
+ background: token.tagBorderlessBg
+ }
+ };
+};
+// ============================== Export ==============================
+const prepareToken = token => {
+ const {
+ lineWidth,
+ fontSizeIcon
+ } = token;
+ const tagFontSize = token.fontSizeSM;
+ const tagLineHeight = `${token.lineHeightSM * tagFontSize}px`;
+ const tagToken = (0,statistic/* merge */.TS)(token, {
+ tagFontSize,
+ tagLineHeight,
+ tagIconSize: fontSizeIcon - 2 * lineWidth,
+ tagPaddingHorizontal: 8,
+ tagBorderlessBg: token.colorFillTertiary
+ });
+ return tagToken;
+};
+const prepareCommonToken = token => ({
+ defaultBg: token.colorFillQuaternary,
+ defaultColor: token.colorText
+});
+/* harmony default export */ var tag_style = ((0,genComponentStyleHook/* default */.Z)('Tag', token => {
+ const tagToken = prepareToken(token);
+ return genBaseStyle(tagToken);
+}, prepareCommonToken));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/CheckableTag.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+const CheckableTag = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ style,
+ className,
+ checked,
+ onChange,
+ onClick
+ } = props,
+ restProps = __rest(props, ["prefixCls", "style", "className", "checked", "onChange", "onClick"]);
+ const {
+ getPrefixCls,
+ tag
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const handleClick = e => {
+ onChange === null || onChange === void 0 ? void 0 : onChange(!checked);
+ onClick === null || onClick === void 0 ? void 0 : onClick(e);
+ };
+ const prefixCls = getPrefixCls('tag', customizePrefixCls);
+ // Style
+ const [wrapSSR, hashId] = tag_style(prefixCls);
+ const cls = _classnames_2_5_1_classnames_default()(prefixCls, `${prefixCls}-checkable`, {
+ [`${prefixCls}-checkable-checked`]: checked
+ }, tag === null || tag === void 0 ? void 0 : tag.className, className, hashId);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("span", Object.assign({}, restProps, {
+ style: Object.assign(Object.assign({}, style), tag === null || tag === void 0 ? void 0 : tag.style),
+ className: cls,
+ onClick: handleClick
+ })));
+};
+/* harmony default export */ var tag_CheckableTag = (CheckableTag);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genPresetColor.js
+var genPresetColor = __webpack_require__(45157);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/style/presetCmp.js
+// Style as status component
+
+
+// ============================== Preset ==============================
+const genPresetStyle = token => (0,genPresetColor/* default */.Z)(token, (colorKey, _ref) => {
+ let {
+ textColor,
+ lightBorderColor,
+ lightColor,
+ darkColor
+ } = _ref;
+ return {
+ [`${token.componentCls}-${colorKey}`]: {
+ color: textColor,
+ background: lightColor,
+ borderColor: lightBorderColor,
+ // Inverse color
+ '&-inverse': {
+ color: token.colorTextLightSolid,
+ background: darkColor,
+ borderColor: darkColor
+ },
+ [`&${token.componentCls}-borderless`]: {
+ borderColor: 'transparent'
+ }
+ }
+ };
+});
+// ============================== Export ==============================
+/* harmony default export */ var presetCmp = ((0,genComponentStyleHook/* genSubStyleComponent */.b)(['Tag', 'preset'], token => {
+ const tagToken = prepareToken(token);
+ return genPresetStyle(tagToken);
+}, prepareCommonToken));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/capitalize.js
+function capitalize(str) {
+ if (typeof str !== 'string') {
+ return str;
+ }
+ const ret = str.charAt(0).toUpperCase() + str.slice(1);
+ return ret;
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/style/statusCmp.js
+
+
+
+const genTagStatusStyle = (token, status, cssVariableType) => {
+ const capitalizedCssVariableType = capitalize(cssVariableType);
+ return {
+ [`${token.componentCls}-${status}`]: {
+ color: token[`color${cssVariableType}`],
+ background: token[`color${capitalizedCssVariableType}Bg`],
+ borderColor: token[`color${capitalizedCssVariableType}Border`],
+ [`&${token.componentCls}-borderless`]: {
+ borderColor: 'transparent'
+ }
+ }
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var statusCmp = ((0,genComponentStyleHook/* genSubStyleComponent */.b)(['Tag', 'status'], token => {
+ const tagToken = prepareToken(token);
+ return [genTagStatusStyle(tagToken, 'success', 'Success'), genTagStatusStyle(tagToken, 'processing', 'Info'), genTagStatusStyle(tagToken, 'error', 'Error'), genTagStatusStyle(tagToken, 'warning', 'Warning')];
+}, prepareCommonToken));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/index.js
+"use client";
+
+var tag_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+
+
+
+
+
+const InternalTag = (tagProps, ref) => {
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ style,
+ children,
+ icon,
+ color,
+ onClose,
+ closeIcon,
+ closable,
+ bordered = true
+ } = tagProps,
+ props = tag_rest(tagProps, ["prefixCls", "className", "rootClassName", "style", "children", "icon", "color", "onClose", "closeIcon", "closable", "bordered"]);
+ const {
+ getPrefixCls,
+ direction,
+ tag
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const [visible, setVisible] = _react_17_0_2_react.useState(true);
+ // Warning for deprecated usage
+ if (false) {}
+ _react_17_0_2_react.useEffect(() => {
+ if ('visible' in props) {
+ setVisible(props.visible);
+ }
+ }, [props.visible]);
+ const isPreset = (0,colors/* isPresetColor */.o2)(color);
+ const isStatus = (0,colors/* isPresetStatusColor */.yT)(color);
+ const isInternalColor = isPreset || isStatus;
+ const tagStyle = Object.assign(Object.assign({
+ backgroundColor: color && !isInternalColor ? color : undefined
+ }, tag === null || tag === void 0 ? void 0 : tag.style), style);
+ const prefixCls = getPrefixCls('tag', customizePrefixCls);
+ // Style
+ const [wrapSSR, hashId] = tag_style(prefixCls);
+ const tagClassName = _classnames_2_5_1_classnames_default()(prefixCls, tag === null || tag === void 0 ? void 0 : tag.className, {
+ [`${prefixCls}-${color}`]: isInternalColor,
+ [`${prefixCls}-has-color`]: color && !isInternalColor,
+ [`${prefixCls}-hidden`]: !visible,
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-borderless`]: !bordered
+ }, className, rootClassName, hashId);
+ const handleCloseClick = e => {
+ e.stopPropagation();
+ onClose === null || onClose === void 0 ? void 0 : onClose(e);
+ if (e.defaultPrevented) {
+ return;
+ }
+ setVisible(false);
+ };
+ const [, mergedCloseIcon] = (0,useClosable/* default */.Z)(closable, closeIcon, iconNode => iconNode === null ? /*#__PURE__*/_react_17_0_2_react.createElement(CloseOutlined/* default */.Z, {
+ className: `${prefixCls}-close-icon`,
+ onClick: handleCloseClick
+ }) : /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-close-icon`,
+ onClick: handleCloseClick
+ }, iconNode), null, false);
+ const isNeedWave = typeof props.onClick === 'function' || children && children.type === 'a';
+ const iconNode = icon || null;
+ const kids = iconNode ? /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, iconNode, children && /*#__PURE__*/_react_17_0_2_react.createElement("span", null, children)) : children;
+ const tagNode = /*#__PURE__*/_react_17_0_2_react.createElement("span", Object.assign({}, props, {
+ ref: ref,
+ className: tagClassName,
+ style: tagStyle
+ }), kids, mergedCloseIcon, isPreset && /*#__PURE__*/_react_17_0_2_react.createElement(presetCmp, {
+ key: "preset",
+ prefixCls: prefixCls
+ }), isStatus && /*#__PURE__*/_react_17_0_2_react.createElement(statusCmp, {
+ key: "status",
+ prefixCls: prefixCls
+ }));
+ return wrapSSR(isNeedWave ? /*#__PURE__*/_react_17_0_2_react.createElement(wave/* default */.Z, {
+ component: "Tag"
+ }, tagNode) : tagNode);
+};
+const Tag = /*#__PURE__*/_react_17_0_2_react.forwardRef(InternalTag);
+if (false) {}
+Tag.CheckableTag = tag_CheckableTag;
+/* harmony default export */ var tag = (Tag);
+
+/***/ }),
+
+/***/ 10777:
+/*!************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/timeline/index.js + 5 modules ***!
+ \************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ timeline; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/timeline/TimelineItem.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+const TimelineItem = _a => {
+ var {
+ prefixCls: customizePrefixCls,
+ className,
+ color = 'blue',
+ dot,
+ pending = false,
+ position /** Dead, but do not pass in {
+ var {
+ prefixCls,
+ className,
+ pending = false,
+ children,
+ items,
+ rootClassName,
+ reverse = false,
+ direction,
+ hashId,
+ pendingDot,
+ mode = ''
+ } = _a,
+ restProps = TimelineItemList_rest(_a, ["prefixCls", "className", "pending", "children", "items", "rootClassName", "reverse", "direction", "hashId", "pendingDot", "mode"]);
+ const getPositionCls = (position, idx) => {
+ if (mode === 'alternate') {
+ if (position === 'right') return `${prefixCls}-item-right`;
+ if (position === 'left') return `${prefixCls}-item-left`;
+ return idx % 2 === 0 ? `${prefixCls}-item-left` : `${prefixCls}-item-right`;
+ }
+ if (mode === 'left') return `${prefixCls}-item-left`;
+ if (mode === 'right') return `${prefixCls}-item-right`;
+ if (position === 'right') return `${prefixCls}-item-right`;
+ return '';
+ };
+ const mergedItems = (0,toConsumableArray/* default */.Z)(items || []);
+ const pendingNode = typeof pending === 'boolean' ? null : pending;
+ if (pending) {
+ mergedItems.push({
+ pending: !!pending,
+ dot: pendingDot || /*#__PURE__*/_react_17_0_2_react.createElement(LoadingOutlined/* default */.Z, null),
+ children: pendingNode
+ });
+ }
+ if (reverse) {
+ mergedItems.reverse();
+ }
+ const itemsCount = mergedItems.length;
+ const lastCls = `${prefixCls}-item-last`;
+ const itemsList = mergedItems.filter(item => !!item).map((item, idx) => {
+ var _a;
+ const pendingClass = idx === itemsCount - 2 ? lastCls : '';
+ const readyClass = idx === itemsCount - 1 ? lastCls : '';
+ const {
+ className: itemClassName
+ } = item,
+ itemProps = TimelineItemList_rest(item, ["className"]);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(timeline_TimelineItem, Object.assign({}, itemProps, {
+ className: _classnames_2_5_1_classnames_default()([itemClassName, !reverse && !!pending ? pendingClass : readyClass, getPositionCls((_a = item === null || item === void 0 ? void 0 : item.position) !== null && _a !== void 0 ? _a : '', idx)]),
+ /* eslint-disable-next-line react/no-array-index-key */
+ key: (item === null || item === void 0 ? void 0 : item.key) || idx
+ }));
+ });
+ const hasLabelItem = mergedItems.some(item => !!(item === null || item === void 0 ? void 0 : item.label));
+ const classString = _classnames_2_5_1_classnames_default()(prefixCls, {
+ [`${prefixCls}-pending`]: !!pending,
+ [`${prefixCls}-reverse`]: !!reverse,
+ [`${prefixCls}-${mode}`]: !!mode && !hasLabelItem,
+ [`${prefixCls}-label`]: hasLabelItem,
+ [`${prefixCls}-rtl`]: direction === 'rtl'
+ }, className, rootClassName, hashId);
+ return /*#__PURE__*/_react_17_0_2_react.createElement("ul", Object.assign({}, restProps, {
+ className: classString
+ }), itemsList);
+};
+/* harmony default export */ var timeline_TimelineItemList = (TimelineItemList);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Children/toArray.js
+var toArray = __webpack_require__(45659);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/timeline/useItems.js
+"use client";
+
+
+function useItems(items, children) {
+ if (items && Array.isArray(items)) return items;
+ return (0,toArray/* default */.Z)(children).map(ele => {
+ var _a, _b;
+ return Object.assign({
+ children: (_b = (_a = ele === null || ele === void 0 ? void 0 : ele.props) === null || _a === void 0 ? void 0 : _a.children) !== null && _b !== void 0 ? _b : ''
+ }, ele.props);
+ });
+}
+/* harmony default export */ var timeline_useItems = (useItems);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/timeline/style/index.js
+
+
+const genTimelineStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ margin: 0,
+ padding: 0,
+ listStyle: 'none',
+ [`${componentCls}-item`]: {
+ position: 'relative',
+ margin: 0,
+ paddingBottom: token.itemPaddingBottom,
+ fontSize: token.fontSize,
+ listStyle: 'none',
+ '&-tail': {
+ position: 'absolute',
+ insetBlockStart: token.itemHeadSize,
+ insetInlineStart: (token.itemHeadSize - token.tailWidth) / 2,
+ height: `calc(100% - ${token.itemHeadSize}px)`,
+ borderInlineStart: `${token.tailWidth}px ${token.lineType} ${token.tailColor}`
+ },
+ '&-pending': {
+ [`${componentCls}-item-head`]: {
+ fontSize: token.fontSizeSM,
+ backgroundColor: 'transparent'
+ },
+ [`${componentCls}-item-tail`]: {
+ display: 'none'
+ }
+ },
+ '&-head': {
+ position: 'absolute',
+ width: token.itemHeadSize,
+ height: token.itemHeadSize,
+ backgroundColor: token.dotBg,
+ border: `${token.dotBorderWidth}px ${token.lineType} transparent`,
+ borderRadius: '50%',
+ '&-blue': {
+ color: token.colorPrimary,
+ borderColor: token.colorPrimary
+ },
+ '&-red': {
+ color: token.colorError,
+ borderColor: token.colorError
+ },
+ '&-green': {
+ color: token.colorSuccess,
+ borderColor: token.colorSuccess
+ },
+ '&-gray': {
+ color: token.colorTextDisabled,
+ borderColor: token.colorTextDisabled
+ }
+ },
+ '&-head-custom': {
+ position: 'absolute',
+ insetBlockStart: token.itemHeadSize / 2,
+ insetInlineStart: token.itemHeadSize / 2,
+ width: 'auto',
+ height: 'auto',
+ marginBlockStart: 0,
+ paddingBlock: token.customHeadPaddingVertical,
+ lineHeight: 1,
+ textAlign: 'center',
+ border: 0,
+ borderRadius: 0,
+ transform: `translate(-50%, -50%)`
+ },
+ '&-content': {
+ position: 'relative',
+ insetBlockStart: -(token.fontSize * token.lineHeight - token.fontSize) + token.lineWidth,
+ marginInlineStart: token.margin + token.itemHeadSize,
+ marginInlineEnd: 0,
+ marginBlockStart: 0,
+ marginBlockEnd: 0,
+ wordBreak: 'break-word'
+ },
+ '&-last': {
+ [`> ${componentCls}-item-tail`]: {
+ display: 'none'
+ },
+ [`> ${componentCls}-item-content`]: {
+ minHeight: token.controlHeightLG * 1.2
+ }
+ }
+ },
+ [`&${componentCls}-alternate,
+ &${componentCls}-right,
+ &${componentCls}-label`]: {
+ [`${componentCls}-item`]: {
+ '&-tail, &-head, &-head-custom': {
+ insetInlineStart: '50%'
+ },
+ '&-head': {
+ marginInlineStart: `-${token.marginXXS}px`,
+ '&-custom': {
+ marginInlineStart: token.tailWidth / 2
+ }
+ },
+ '&-left': {
+ [`${componentCls}-item-content`]: {
+ insetInlineStart: `calc(50% - ${token.marginXXS}px)`,
+ width: `calc(50% - ${token.marginSM}px)`,
+ textAlign: 'start'
+ }
+ },
+ '&-right': {
+ [`${componentCls}-item-content`]: {
+ width: `calc(50% - ${token.marginSM}px)`,
+ margin: 0,
+ textAlign: 'end'
+ }
+ }
+ }
+ },
+ [`&${componentCls}-right`]: {
+ [`${componentCls}-item-right`]: {
+ [`${componentCls}-item-tail,
+ ${componentCls}-item-head,
+ ${componentCls}-item-head-custom`]: {
+ insetInlineStart: `calc(100% - ${(token.itemHeadSize + token.tailWidth) / 2}px)`
+ },
+ [`${componentCls}-item-content`]: {
+ width: `calc(100% - ${token.itemHeadSize + token.marginXS}px)`
+ }
+ }
+ },
+ [`&${componentCls}-pending
+ ${componentCls}-item-last
+ ${componentCls}-item-tail`]: {
+ display: 'block',
+ height: `calc(100% - ${token.margin}px)`,
+ borderInlineStart: `${token.tailWidth}px dotted ${token.tailColor}`
+ },
+ [`&${componentCls}-reverse
+ ${componentCls}-item-last
+ ${componentCls}-item-tail`]: {
+ display: 'none'
+ },
+ [`&${componentCls}-reverse ${componentCls}-item-pending`]: {
+ [`${componentCls}-item-tail`]: {
+ insetBlockStart: token.margin,
+ display: 'block',
+ height: `calc(100% - ${token.margin}px)`,
+ borderInlineStart: `${token.tailWidth}px dotted ${token.tailColor}`
+ },
+ [`${componentCls}-item-content`]: {
+ minHeight: token.controlHeightLG * 1.2
+ }
+ },
+ [`&${componentCls}-label`]: {
+ [`${componentCls}-item-label`]: {
+ position: 'absolute',
+ insetBlockStart: -(token.fontSize * token.lineHeight - token.fontSize) + token.tailWidth,
+ width: `calc(50% - ${token.marginSM}px)`,
+ textAlign: 'end'
+ },
+ [`${componentCls}-item-right`]: {
+ [`${componentCls}-item-label`]: {
+ insetInlineStart: `calc(50% + ${token.marginSM}px)`,
+ width: `calc(50% - ${token.marginSM}px)`,
+ textAlign: 'start'
+ }
+ }
+ },
+ // ====================== RTL =======================
+ '&-rtl': {
+ direction: 'rtl',
+ [`${componentCls}-item-head-custom`]: {
+ transform: `translate(50%, -50%)`
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var timeline_style = ((0,genComponentStyleHook/* default */.Z)('Timeline', token => {
+ const timeLineToken = (0,statistic/* merge */.TS)(token, {
+ itemHeadSize: 10,
+ customHeadPaddingVertical: token.paddingXXS,
+ paddingInlineEnd: 2
+ });
+ return [genTimelineStyle(timeLineToken)];
+}, token => ({
+ tailColor: token.colorSplit,
+ tailWidth: token.lineWidthBold,
+ dotBorderWidth: token.wireframe ? token.lineWidthBold : token.lineWidth * 3,
+ dotBg: token.colorBgContainer,
+ itemPaddingBottom: token.padding * 1.25
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/timeline/Timeline.js
+"use client";
+
+var Timeline_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+// CSSINJS
+
+const Timeline = props => {
+ const {
+ getPrefixCls,
+ direction,
+ timeline
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ children,
+ items,
+ className,
+ style
+ } = props,
+ restProps = Timeline_rest(props, ["prefixCls", "children", "items", "className", "style"]);
+ const prefixCls = getPrefixCls('timeline', customizePrefixCls);
+ // =================== Warning =====================
+ if (false) {}
+ // Style
+ const [wrapSSR, hashId] = timeline_style(prefixCls);
+ const mergedItems = timeline_useItems(items, children);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(timeline_TimelineItemList, Object.assign({}, restProps, {
+ className: _classnames_2_5_1_classnames_default()(timeline === null || timeline === void 0 ? void 0 : timeline.className, className),
+ style: Object.assign(Object.assign({}, timeline === null || timeline === void 0 ? void 0 : timeline.style), style),
+ prefixCls: prefixCls,
+ direction: direction,
+ items: mergedItems,
+ hashId: hashId
+ })));
+};
+Timeline.Item = timeline_TimelineItem;
+if (false) {}
+/* harmony default export */ var timeline_Timeline = (Timeline);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/timeline/index.js
+"use client";
+
+
+/* harmony default export */ var timeline = (timeline_Timeline);
+
+/***/ })
+
+}]);
\ No newline at end of file
diff --git a/26634.async.js b/26634.async.js
index 34b0eceda3..22b9124408 100644
--- a/26634.async.js
+++ b/26634.async.js
@@ -148,8 +148,8 @@ const InternalCheckbox = (props, ref) => {
const Checkbox = /*#__PURE__*/_react_17_0_2_react.forwardRef(InternalCheckbox);
if (false) {}
/* harmony default export */ var checkbox_Checkbox = (Checkbox);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/Group.js
@@ -541,7 +541,7 @@ var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_c
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EllipsisOutlined.js + 1 modules
-var EllipsisOutlined = __webpack_require__(93319);
+var EllipsisOutlined = __webpack_require__(12440);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
diff --git a/26807.async.js b/26807.async.js
new file mode 100644
index 0000000000..ab9785b597
--- /dev/null
+++ b/26807.async.js
@@ -0,0 +1,3808 @@
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[26807,22804,74997,29989,52720,71769],{
+
+/***/ 28593:
+/*!***********************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ArrowLeftOutlined.js + 1 modules ***!
+ \***********************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_ArrowLeftOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ArrowLeftOutlined.js
+// This icon file is generated automatically.
+var ArrowLeftOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M872 474H286.9l350.2-304c5.6-4.9 2.2-14-5.2-14h-88.5c-3.9 0-7.6 1.4-10.5 3.9L155 487.8a31.96 31.96 0 000 48.3L535.1 866c1.5 1.3 3.3 2 5.2 2h91.5c7.4 0 10.8-9.2 5.2-14L286.9 550H872c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8z" } }] }, "name": "arrow-left", "theme": "outlined" };
+/* harmony default export */ var asn_ArrowLeftOutlined = (ArrowLeftOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ArrowLeftOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var ArrowLeftOutlined_ArrowLeftOutlined = function ArrowLeftOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_ArrowLeftOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_ArrowLeftOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(ArrowLeftOutlined_ArrowLeftOutlined));
+
+/***/ }),
+
+/***/ 27280:
+/*!********************************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DeliveredProcedureOutlined.js + 1 modules ***!
+ \********************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_DeliveredProcedureOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/DeliveredProcedureOutlined.js
+// This icon file is generated automatically.
+var DeliveredProcedureOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "defs", "attrs": {}, "children": [{ "tag": "style", "attrs": {} }] }, { "tag": "path", "attrs": { "d": "M632 698.3l141.9-112a8 8 0 000-12.6L632 461.7c-5.3-4.2-13-.4-13 6.3v76H295c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h324v76c0 6.7 7.8 10.4 13 6.3zm261.3-405L730.7 130.7c-7.5-7.5-16.7-13-26.7-16V112H144c-17.7 0-32 14.3-32 32v278c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V184h136v136c0 17.7 14.3 32 32 32h320c17.7 0 32-14.3 32-32V205.8l136 136V422c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-83.5c0-17-6.7-33.2-18.7-45.2zM640 288H384V184h256v104zm264 436h-56c-4.4 0-8 3.6-8 8v108H184V732c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v148c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V732c0-4.4-3.6-8-8-8z" } }] }, "name": "delivered-procedure", "theme": "outlined" };
+/* harmony default export */ var asn_DeliveredProcedureOutlined = (DeliveredProcedureOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DeliveredProcedureOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var DeliveredProcedureOutlined_DeliveredProcedureOutlined = function DeliveredProcedureOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_DeliveredProcedureOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_DeliveredProcedureOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(DeliveredProcedureOutlined_DeliveredProcedureOutlined));
+
+/***/ }),
+
+/***/ 51954:
+/*!*******************************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules ***!
+ \*******************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_ExclamationCircleOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
+// This icon file is generated automatically.
+var ExclamationCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }, { "tag": "path", "attrs": { "d": "M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z" } }] }, "name": "exclamation-circle", "theme": "outlined" };
+/* harmony default export */ var asn_ExclamationCircleOutlined = (ExclamationCircleOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var ExclamationCircleOutlined_ExclamationCircleOutlined = function ExclamationCircleOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_ExclamationCircleOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_ExclamationCircleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(ExclamationCircleOutlined_ExclamationCircleOutlined));
+
+/***/ }),
+
+/***/ 40452:
+/*!********************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FilterOutlined.js + 1 modules ***!
+ \********************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_FilterOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/FilterOutlined.js
+// This icon file is generated automatically.
+var FilterOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M880.1 154H143.9c-24.5 0-39.8 26.7-27.5 48L349 597.4V838c0 17.7 14.2 32 31.8 32h262.4c17.6 0 31.8-14.3 31.8-32V597.4L907.7 202c12.2-21.3-3.1-48-27.6-48zM603.4 798H420.6V642h182.9v156zm9.6-236.6l-9.5 16.6h-183l-9.5-16.6L212.7 226h598.6L613 561.4z" } }] }, "name": "filter", "theme": "outlined" };
+/* harmony default export */ var asn_FilterOutlined = (FilterOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FilterOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var FilterOutlined_FilterOutlined = function FilterOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_FilterOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_FilterOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(FilterOutlined_FilterOutlined));
+
+/***/ }),
+
+/***/ 20683:
+/*!*************************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/MinusCircleOutlined.js + 1 modules ***!
+ \*************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_MinusCircleOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/MinusCircleOutlined.js
+// This icon file is generated automatically.
+var MinusCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z" } }, { "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }] }, "name": "minus-circle", "theme": "outlined" };
+/* harmony default export */ var asn_MinusCircleOutlined = (MinusCircleOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/MinusCircleOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var MinusCircleOutlined_MinusCircleOutlined = function MinusCircleOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_MinusCircleOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_MinusCircleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(MinusCircleOutlined_MinusCircleOutlined));
+
+/***/ }),
+
+/***/ 12635:
+/*!************************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusCircleOutlined.js + 1 modules ***!
+ \************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_PlusCircleOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/PlusCircleOutlined.js
+// This icon file is generated automatically.
+var PlusCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M696 480H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z" } }, { "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }] }, "name": "plus-circle", "theme": "outlined" };
+/* harmony default export */ var asn_PlusCircleOutlined = (PlusCircleOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusCircleOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var PlusCircleOutlined_PlusCircleOutlined = function PlusCircleOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_PlusCircleOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_PlusCircleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(PlusCircleOutlined_PlusCircleOutlined));
+
+/***/ }),
+
+/***/ 85891:
+/*!*********************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SettingOutlined.js + 1 modules ***!
+ \*********************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_SettingOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/SettingOutlined.js
+// This icon file is generated automatically.
+var SettingOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z" } }] }, "name": "setting", "theme": "outlined" };
+/* harmony default export */ var asn_SettingOutlined = (SettingOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SettingOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var SettingOutlined_SettingOutlined = function SettingOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_SettingOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_SettingOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(SettingOutlined_SettingOutlined));
+
+/***/ }),
+
+/***/ 77578:
+/*!**********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/_util/getRenderPropValue.js ***!
+ \**********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ Z: function() { return /* binding */ getRenderPropValue; }
+/* harmony export */ });
+const getRenderPropValue = propValue => {
+ if (!propValue) {
+ return null;
+ }
+ if (typeof propValue === 'function') {
+ return propValue();
+ }
+ return propValue;
+};
+
+/***/ }),
+
+/***/ 66104:
+/*!**************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js + 6 modules ***!
+ \**************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ breadcrumb; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Children/toArray.js
+var toArray = __webpack_require__(45659);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/pickAttrs.js
+var pickAttrs = __webpack_require__(3286);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
+var DownOutlined = __webpack_require__(8415);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
+var dropdown = __webpack_require__(91857);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
+"use client";
+
+
+
+const BreadcrumbSeparator = _ref => {
+ let {
+ children
+ } = _ref;
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('breadcrumb');
+ return /*#__PURE__*/_react_17_0_2_react.createElement("li", {
+ className: `${prefixCls}-separator`,
+ "aria-hidden": "true"
+ }, children === '' ? children : children || '/');
+};
+BreadcrumbSeparator.__ANT_BREADCRUMB_SEPARATOR = true;
+/* harmony default export */ var breadcrumb_BreadcrumbSeparator = (BreadcrumbSeparator);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/useItemRender.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+function getBreadcrumbName(route, params) {
+ if (route.title === undefined || route.title === null) {
+ return null;
+ }
+ const paramsKeys = Object.keys(params).join('|');
+ return typeof route.title === 'object' ? route.title : String(route.title).replace(new RegExp(`:(${paramsKeys})`, 'g'), (replacement, key) => params[key] || replacement);
+}
+function renderItem(prefixCls, item, children, href) {
+ if (children === null || children === undefined) {
+ return null;
+ }
+ const {
+ className,
+ onClick
+ } = item,
+ restItem = __rest(item, ["className", "onClick"]);
+ const passedProps = Object.assign(Object.assign({}, (0,pickAttrs/* default */.Z)(restItem, {
+ data: true,
+ aria: true
+ })), {
+ onClick
+ });
+ if (href !== undefined) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement("a", Object.assign({}, passedProps, {
+ className: _classnames_2_5_1_classnames_default()(`${prefixCls}-link`, className),
+ href: href
+ }), children);
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("span", Object.assign({}, passedProps, {
+ className: _classnames_2_5_1_classnames_default()(`${prefixCls}-link`, className)
+ }), children);
+}
+function useItemRender(prefixCls, itemRender) {
+ const mergedItemRender = (item, params, routes, path, href) => {
+ if (itemRender) {
+ return itemRender(item, params, routes, path);
+ }
+ const name = getBreadcrumbName(item, params);
+ return renderItem(prefixCls, item, name, href);
+ };
+ return mergedItemRender;
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbItem.js
+"use client";
+
+var BreadcrumbItem_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+const InternalBreadcrumbItem = props => {
+ const {
+ prefixCls,
+ separator = '/',
+ children,
+ menu,
+ overlay,
+ dropdownProps,
+ href
+ } = props;
+ // Warning for deprecated usage
+ if (false) {}
+ /** If overlay is have Wrap a Dropdown */
+ const renderBreadcrumbNode = breadcrumbItem => {
+ if (menu || overlay) {
+ const mergeDropDownProps = Object.assign({}, dropdownProps);
+ if (menu) {
+ const _a = menu || {},
+ {
+ items
+ } = _a,
+ menuProps = BreadcrumbItem_rest(_a, ["items"]);
+ mergeDropDownProps.menu = Object.assign(Object.assign({}, menuProps), {
+ items: items === null || items === void 0 ? void 0 : items.map((_a, index) => {
+ var {
+ key,
+ title,
+ label,
+ path
+ } = _a,
+ itemProps = BreadcrumbItem_rest(_a, ["key", "title", "label", "path"]);
+ let mergedLabel = label !== null && label !== void 0 ? label : title;
+ if (path) {
+ mergedLabel = /*#__PURE__*/_react_17_0_2_react.createElement("a", {
+ href: `${href}${path}`
+ }, mergedLabel);
+ }
+ return Object.assign(Object.assign({}, itemProps), {
+ key: key !== null && key !== void 0 ? key : index,
+ label: mergedLabel
+ });
+ })
+ });
+ } else if (overlay) {
+ mergeDropDownProps.overlay = overlay;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(dropdown/* default */.Z, Object.assign({
+ placement: "bottom"
+ }, mergeDropDownProps), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-overlay-link`
+ }, breadcrumbItem, /*#__PURE__*/_react_17_0_2_react.createElement(DownOutlined/* default */.Z, null)));
+ }
+ return breadcrumbItem;
+ };
+ // wrap to dropDown
+ const link = renderBreadcrumbNode(children);
+ if (link !== undefined && link !== null) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, /*#__PURE__*/_react_17_0_2_react.createElement("li", null, link), separator && /*#__PURE__*/_react_17_0_2_react.createElement(breadcrumb_BreadcrumbSeparator, null, separator));
+ }
+ return null;
+};
+const BreadcrumbItem = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ children,
+ href
+ } = props,
+ restProps = BreadcrumbItem_rest(props, ["prefixCls", "children", "href"]);
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(InternalBreadcrumbItem, Object.assign({}, restProps, {
+ prefixCls: prefixCls
+ }), renderItem(prefixCls, restProps, children, href));
+};
+BreadcrumbItem.__ANT_BREADCRUMB_ITEM = true;
+/* harmony default export */ var breadcrumb_BreadcrumbItem = (BreadcrumbItem);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/style/index.js
+
+
+const genBreadcrumbStyle = token => {
+ const {
+ componentCls,
+ iconCls
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ color: token.itemColor,
+ fontSize: token.fontSize,
+ [iconCls]: {
+ fontSize: token.iconFontSize
+ },
+ ol: {
+ display: 'flex',
+ flexWrap: 'wrap',
+ margin: 0,
+ padding: 0,
+ listStyle: 'none'
+ },
+ a: Object.assign({
+ color: token.linkColor,
+ transition: `color ${token.motionDurationMid}`,
+ padding: `0 ${token.paddingXXS}px`,
+ borderRadius: token.borderRadiusSM,
+ height: token.lineHeight * token.fontSize,
+ display: 'inline-block',
+ marginInline: -token.marginXXS,
+ '&:hover': {
+ color: token.linkHoverColor,
+ backgroundColor: token.colorBgTextHover
+ }
+ }, (0,style/* genFocusStyle */.Qy)(token)),
+ [`li:last-child`]: {
+ color: token.lastItemColor
+ },
+ [`${componentCls}-separator`]: {
+ marginInline: token.separatorMargin,
+ color: token.separatorColor
+ },
+ [`${componentCls}-link`]: {
+ [`
+ > ${iconCls} + span,
+ > ${iconCls} + a
+ `]: {
+ marginInlineStart: token.marginXXS
+ }
+ },
+ [`${componentCls}-overlay-link`]: {
+ borderRadius: token.borderRadiusSM,
+ height: token.lineHeight * token.fontSize,
+ display: 'inline-block',
+ padding: `0 ${token.paddingXXS}px`,
+ marginInline: -token.marginXXS,
+ [`> ${iconCls}`]: {
+ marginInlineStart: token.marginXXS,
+ fontSize: token.fontSizeIcon
+ },
+ '&:hover': {
+ color: token.linkHoverColor,
+ backgroundColor: token.colorBgTextHover,
+ a: {
+ color: token.linkHoverColor
+ }
+ },
+ a: {
+ '&:hover': {
+ backgroundColor: 'transparent'
+ }
+ }
+ },
+ // rtl style
+ [`&${token.componentCls}-rtl`]: {
+ direction: 'rtl'
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var breadcrumb_style = ((0,genComponentStyleHook/* default */.Z)('Breadcrumb', token => {
+ const BreadcrumbToken = (0,statistic/* merge */.TS)(token, {});
+ return [genBreadcrumbStyle(BreadcrumbToken)];
+}, token => ({
+ itemColor: token.colorTextDescription,
+ lastItemColor: token.colorText,
+ iconFontSize: token.fontSize,
+ linkColor: token.colorTextDescription,
+ linkHoverColor: token.colorText,
+ separatorColor: token.colorTextDescription,
+ separatorMargin: token.marginXS
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/useItems.js
+var useItems_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+function route2item(route) {
+ const {
+ breadcrumbName,
+ children
+ } = route,
+ rest = useItems_rest(route, ["breadcrumbName", "children"]);
+ const clone = Object.assign({
+ title: breadcrumbName
+ }, rest);
+ if (children) {
+ clone.menu = {
+ items: children.map(_a => {
+ var {
+ breadcrumbName: itemBreadcrumbName
+ } = _a,
+ itemProps = useItems_rest(_a, ["breadcrumbName"]);
+ return Object.assign(Object.assign({}, itemProps), {
+ title: itemBreadcrumbName
+ });
+ })
+ };
+ }
+ return clone;
+}
+function useItems(items, routes) {
+ return (0,_react_17_0_2_react.useMemo)(() => {
+ if (items) {
+ return items;
+ }
+ if (routes) {
+ return routes.map(route2item);
+ }
+ return null;
+ }, [items, routes]);
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/Breadcrumb.js
+"use client";
+
+var Breadcrumb_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+
+
+
+
+
+const getPath = (params, path) => {
+ if (path === undefined) {
+ return path;
+ }
+ let mergedPath = (path || '').replace(/^\//, '');
+ Object.keys(params).forEach(key => {
+ mergedPath = mergedPath.replace(`:${key}`, params[key]);
+ });
+ return mergedPath;
+};
+const Breadcrumb = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ separator = '/',
+ style,
+ className,
+ rootClassName,
+ routes: legacyRoutes,
+ items,
+ children,
+ itemRender,
+ params = {}
+ } = props,
+ restProps = Breadcrumb_rest(props, ["prefixCls", "separator", "style", "className", "rootClassName", "routes", "items", "children", "itemRender", "params"]);
+ const {
+ getPrefixCls,
+ direction,
+ breadcrumb
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ let crumbs;
+ const prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
+ const [wrapSSR, hashId] = breadcrumb_style(prefixCls);
+ const mergedItems = useItems(items, legacyRoutes);
+ if (false) {}
+ const mergedItemRender = useItemRender(prefixCls, itemRender);
+ if (mergedItems && mergedItems.length > 0) {
+ // generated by route
+ const paths = [];
+ const itemRenderRoutes = items || legacyRoutes;
+ crumbs = mergedItems.map((item, index) => {
+ const {
+ path,
+ key,
+ type,
+ menu,
+ overlay,
+ onClick,
+ className: itemClassName,
+ separator: itemSeparator,
+ dropdownProps
+ } = item;
+ const mergedPath = getPath(params, path);
+ if (mergedPath !== undefined) {
+ paths.push(mergedPath);
+ }
+ const mergedKey = key !== null && key !== void 0 ? key : index;
+ if (type === 'separator') {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(breadcrumb_BreadcrumbSeparator, {
+ key: mergedKey
+ }, itemSeparator);
+ }
+ const itemProps = {};
+ const isLastItem = index === mergedItems.length - 1;
+ if (menu) {
+ itemProps.menu = menu;
+ } else if (overlay) {
+ itemProps.overlay = overlay;
+ }
+ let {
+ href
+ } = item;
+ if (paths.length && mergedPath !== undefined) {
+ href = `#/${paths.join('/')}`;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(InternalBreadcrumbItem, Object.assign({
+ key: mergedKey
+ }, itemProps, (0,pickAttrs/* default */.Z)(item, {
+ data: true,
+ aria: true
+ }), {
+ className: itemClassName,
+ dropdownProps: dropdownProps,
+ href: href,
+ separator: isLastItem ? '' : separator,
+ onClick: onClick,
+ prefixCls: prefixCls
+ }), mergedItemRender(item, params, itemRenderRoutes, paths, href));
+ });
+ } else if (children) {
+ const childrenLength = (0,toArray/* default */.Z)(children).length;
+ crumbs = (0,toArray/* default */.Z)(children).map((element, index) => {
+ if (!element) {
+ return element;
+ }
+ // =================== Warning =====================
+ if (false) {}
+ false ? 0 : void 0;
+ const isLastItem = index === childrenLength - 1;
+ return (0,reactNode/* cloneElement */.Tm)(element, {
+ separator: isLastItem ? '' : separator,
+ key: index
+ });
+ });
+ }
+ const breadcrumbClassName = _classnames_2_5_1_classnames_default()(prefixCls, breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.className, {
+ [`${prefixCls}-rtl`]: direction === 'rtl'
+ }, className, rootClassName, hashId);
+ const mergedStyle = Object.assign(Object.assign({}, breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.style), style);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("nav", Object.assign({
+ className: breadcrumbClassName,
+ style: mergedStyle
+ }, restProps), /*#__PURE__*/_react_17_0_2_react.createElement("ol", null, crumbs)));
+};
+Breadcrumb.Item = breadcrumb_BreadcrumbItem;
+Breadcrumb.Separator = breadcrumb_BreadcrumbSeparator;
+if (false) {}
+/* harmony default export */ var breadcrumb_Breadcrumb = (Breadcrumb);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js
+"use client";
+
+
+/* harmony default export */ var breadcrumb = (breadcrumb_Breadcrumb);
+
+/***/ }),
+
+/***/ 74997:
+/*!************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/collapse/index.js + 8 modules ***!
+ \************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ es_collapse; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/RightOutlined.js + 1 modules
+var RightOutlined = __webpack_require__(78864);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/typeof.js
+var esm_typeof = __webpack_require__(13255);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
+var useMergedState = __webpack_require__(84381);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/warning.js
+var warning = __webpack_require__(36014);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Children/toArray.js
+var toArray = __webpack_require__(45659);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_rc-motion@2.9.0@rc-motion/es/index.js + 12 modules
+var es = __webpack_require__(44516);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+;// CONCATENATED MODULE: ./node_modules/_rc-collapse@3.7.2@rc-collapse/es/PanelContent.js
+
+
+
+
+var PanelContent = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (props, ref) {
+ var _classnames;
+ var prefixCls = props.prefixCls,
+ forceRender = props.forceRender,
+ className = props.className,
+ style = props.style,
+ children = props.children,
+ isActive = props.isActive,
+ role = props.role;
+ var _React$useState = _react_17_0_2_react.useState(isActive || forceRender),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ rendered = _React$useState2[0],
+ setRendered = _React$useState2[1];
+ _react_17_0_2_react.useEffect(function () {
+ if (forceRender || isActive) {
+ setRendered(true);
+ }
+ }, [forceRender, isActive]);
+ if (!rendered) {
+ return null;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ ref: ref,
+ className: _classnames_2_5_1_classnames_default()("".concat(prefixCls, "-content"), (_classnames = {}, (0,defineProperty/* default */.Z)(_classnames, "".concat(prefixCls, "-content-active"), isActive), (0,defineProperty/* default */.Z)(_classnames, "".concat(prefixCls, "-content-inactive"), !isActive), _classnames), className),
+ style: style,
+ role: role
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-content-box")
+ }, children));
+});
+PanelContent.displayName = 'PanelContent';
+/* harmony default export */ var es_PanelContent = (PanelContent);
+;// CONCATENATED MODULE: ./node_modules/_rc-collapse@3.7.2@rc-collapse/es/Panel.js
+
+
+
+var _excluded = ["showArrow", "headerClass", "isActive", "onItemClick", "forceRender", "className", "prefixCls", "collapsible", "accordion", "panelKey", "extra", "header", "expandIcon", "openMotion", "destroyInactivePanel", "children"];
+
+
+
+
+
+var CollapsePanel = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (props, ref) {
+ var _classNames, _classNames2;
+ var _props$showArrow = props.showArrow,
+ showArrow = _props$showArrow === void 0 ? true : _props$showArrow,
+ headerClass = props.headerClass,
+ isActive = props.isActive,
+ onItemClick = props.onItemClick,
+ forceRender = props.forceRender,
+ className = props.className,
+ prefixCls = props.prefixCls,
+ collapsible = props.collapsible,
+ accordion = props.accordion,
+ panelKey = props.panelKey,
+ extra = props.extra,
+ header = props.header,
+ expandIcon = props.expandIcon,
+ openMotion = props.openMotion,
+ destroyInactivePanel = props.destroyInactivePanel,
+ children = props.children,
+ resetProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var disabled = collapsible === 'disabled';
+ var collapsibleHeader = collapsible === 'header';
+ var collapsibleIcon = collapsible === 'icon';
+ var ifExtraExist = extra !== null && extra !== undefined && typeof extra !== 'boolean';
+ var handleItemClick = function handleItemClick() {
+ onItemClick === null || onItemClick === void 0 || onItemClick(panelKey);
+ };
+ var handleKeyDown = function handleKeyDown(e) {
+ if (e.key === 'Enter' || e.keyCode === KeyCode/* default */.Z.ENTER || e.which === KeyCode/* default */.Z.ENTER) {
+ handleItemClick();
+ }
+ };
+
+ // ======================== Icon ========================
+ var iconNode = typeof expandIcon === 'function' ? expandIcon(props) : /*#__PURE__*/_react_17_0_2_react.createElement("i", {
+ className: "arrow"
+ });
+ if (iconNode) {
+ iconNode = /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-expand-icon"),
+ onClick: ['header', 'icon'].includes(collapsible) ? handleItemClick : undefined
+ }, iconNode);
+ }
+ var collapsePanelClassNames = _classnames_2_5_1_classnames_default()((_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-item"), true), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-item-active"), isActive), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-item-disabled"), disabled), _classNames), className);
+ var headerClassName = _classnames_2_5_1_classnames_default()(headerClass, (_classNames2 = {}, (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-header"), true), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-header-collapsible-only"), collapsibleHeader), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-icon-collapsible-only"), collapsibleIcon), _classNames2));
+
+ // ======================== HeaderProps ========================
+ var headerProps = {
+ className: headerClassName,
+ 'aria-expanded': isActive,
+ 'aria-disabled': disabled,
+ onKeyDown: handleKeyDown
+ };
+ if (!collapsibleHeader && !collapsibleIcon) {
+ headerProps.onClick = handleItemClick;
+ headerProps.role = accordion ? 'tab' : 'button';
+ headerProps.tabIndex = disabled ? -1 : 0;
+ }
+
+ // ======================== Render ========================
+ return /*#__PURE__*/_react_17_0_2_react.createElement("div", (0,esm_extends/* default */.Z)({}, resetProps, {
+ ref: ref,
+ className: collapsePanelClassNames
+ }), /*#__PURE__*/_react_17_0_2_react.createElement("div", headerProps, showArrow && iconNode, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: "".concat(prefixCls, "-header-text"),
+ onClick: collapsible === 'header' ? handleItemClick : undefined
+ }, header), ifExtraExist && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-extra")
+ }, extra)), /*#__PURE__*/_react_17_0_2_react.createElement(es["default"], (0,esm_extends/* default */.Z)({
+ visible: isActive,
+ leavedClassName: "".concat(prefixCls, "-content-hidden")
+ }, openMotion, {
+ forceRender: forceRender,
+ removeOnLeave: destroyInactivePanel
+ }), function (_ref, motionRef) {
+ var motionClassName = _ref.className,
+ motionStyle = _ref.style;
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_PanelContent, {
+ ref: motionRef,
+ prefixCls: prefixCls,
+ className: motionClassName,
+ style: motionStyle,
+ isActive: isActive,
+ forceRender: forceRender,
+ role: accordion ? 'tabpanel' : void 0
+ }, children);
+ }));
+});
+/* harmony default export */ var Panel = (CollapsePanel);
+;// CONCATENATED MODULE: ./node_modules/_rc-collapse@3.7.2@rc-collapse/es/hooks/useItems.js
+
+
+var useItems_excluded = ["children", "label", "key", "collapsible", "onItemClick", "destroyInactivePanel"];
+
+
+
+var convertItemsToNodes = function convertItemsToNodes(items, props) {
+ var prefixCls = props.prefixCls,
+ accordion = props.accordion,
+ collapsible = props.collapsible,
+ destroyInactivePanel = props.destroyInactivePanel,
+ onItemClick = props.onItemClick,
+ activeKey = props.activeKey,
+ openMotion = props.openMotion,
+ expandIcon = props.expandIcon;
+ return items.map(function (item, index) {
+ var children = item.children,
+ label = item.label,
+ rawKey = item.key,
+ rawCollapsible = item.collapsible,
+ rawOnItemClick = item.onItemClick,
+ rawDestroyInactivePanel = item.destroyInactivePanel,
+ restProps = (0,objectWithoutProperties/* default */.Z)(item, useItems_excluded);
+
+ // You may be puzzled why you want to convert them all into strings, me too.
+ // Maybe: https://github.com/react-component/collapse/blob/aac303a8b6ff30e35060b4f8fecde6f4556fcbe2/src/Collapse.tsx#L15
+ var key = String(rawKey !== null && rawKey !== void 0 ? rawKey : index);
+ var mergeCollapsible = rawCollapsible !== null && rawCollapsible !== void 0 ? rawCollapsible : collapsible;
+ var mergeDestroyInactivePanel = rawDestroyInactivePanel !== null && rawDestroyInactivePanel !== void 0 ? rawDestroyInactivePanel : destroyInactivePanel;
+ var handleItemClick = function handleItemClick(value) {
+ if (mergeCollapsible === 'disabled') return;
+ onItemClick(value);
+ rawOnItemClick === null || rawOnItemClick === void 0 || rawOnItemClick(value);
+ };
+ var isActive = false;
+ if (accordion) {
+ isActive = activeKey[0] === key;
+ } else {
+ isActive = activeKey.indexOf(key) > -1;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(Panel, (0,esm_extends/* default */.Z)({}, restProps, {
+ prefixCls: prefixCls,
+ key: key,
+ panelKey: key,
+ isActive: isActive,
+ accordion: accordion,
+ openMotion: openMotion,
+ expandIcon: expandIcon,
+ header: label,
+ collapsible: mergeCollapsible,
+ onItemClick: handleItemClick,
+ destroyInactivePanel: mergeDestroyInactivePanel
+ }), children);
+ });
+};
+
+/**
+ * @deprecated The next major version will be removed
+ */
+var getNewChild = function getNewChild(child, index, props) {
+ if (!child) return null;
+ var prefixCls = props.prefixCls,
+ accordion = props.accordion,
+ collapsible = props.collapsible,
+ destroyInactivePanel = props.destroyInactivePanel,
+ onItemClick = props.onItemClick,
+ activeKey = props.activeKey,
+ openMotion = props.openMotion,
+ expandIcon = props.expandIcon;
+ var key = child.key || String(index);
+ var _child$props = child.props,
+ header = _child$props.header,
+ headerClass = _child$props.headerClass,
+ childDestroyInactivePanel = _child$props.destroyInactivePanel,
+ childCollapsible = _child$props.collapsible,
+ childOnItemClick = _child$props.onItemClick;
+ var isActive = false;
+ if (accordion) {
+ isActive = activeKey[0] === key;
+ } else {
+ isActive = activeKey.indexOf(key) > -1;
+ }
+ var mergeCollapsible = childCollapsible !== null && childCollapsible !== void 0 ? childCollapsible : collapsible;
+ var handleItemClick = function handleItemClick(value) {
+ if (mergeCollapsible === 'disabled') return;
+ onItemClick(value);
+ childOnItemClick === null || childOnItemClick === void 0 || childOnItemClick(value);
+ };
+ var childProps = {
+ key: key,
+ panelKey: key,
+ header: header,
+ headerClass: headerClass,
+ isActive: isActive,
+ prefixCls: prefixCls,
+ destroyInactivePanel: childDestroyInactivePanel !== null && childDestroyInactivePanel !== void 0 ? childDestroyInactivePanel : destroyInactivePanel,
+ openMotion: openMotion,
+ accordion: accordion,
+ children: child.props.children,
+ onItemClick: handleItemClick,
+ expandIcon: expandIcon,
+ collapsible: mergeCollapsible
+ };
+
+ // https://github.com/ant-design/ant-design/issues/20479
+ if (typeof child.type === 'string') {
+ return child;
+ }
+ Object.keys(childProps).forEach(function (propName) {
+ if (typeof childProps[propName] === 'undefined') {
+ delete childProps[propName];
+ }
+ });
+ return /*#__PURE__*/_react_17_0_2_react.cloneElement(child, childProps);
+};
+function useItems(items, rawChildren, props) {
+ if (Array.isArray(items)) {
+ return convertItemsToNodes(items, props);
+ }
+ return (0,toArray/* default */.Z)(rawChildren).map(function (child, index) {
+ return getNewChild(child, index, props);
+ });
+}
+/* harmony default export */ var hooks_useItems = (useItems);
+;// CONCATENATED MODULE: ./node_modules/_rc-collapse@3.7.2@rc-collapse/es/Collapse.js
+
+
+
+
+
+
+
+
+
+function getActiveKeysArray(activeKey) {
+ var currentActiveKey = activeKey;
+ if (!Array.isArray(currentActiveKey)) {
+ var activeKeyType = (0,esm_typeof/* default */.Z)(currentActiveKey);
+ currentActiveKey = activeKeyType === 'number' || activeKeyType === 'string' ? [currentActiveKey] : [];
+ }
+ return currentActiveKey.map(function (key) {
+ return String(key);
+ });
+}
+var Collapse = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (props, ref) {
+ var _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-collapse' : _props$prefixCls,
+ _props$destroyInactiv = props.destroyInactivePanel,
+ destroyInactivePanel = _props$destroyInactiv === void 0 ? false : _props$destroyInactiv,
+ style = props.style,
+ accordion = props.accordion,
+ className = props.className,
+ children = props.children,
+ collapsible = props.collapsible,
+ openMotion = props.openMotion,
+ expandIcon = props.expandIcon,
+ rawActiveKey = props.activeKey,
+ defaultActiveKey = props.defaultActiveKey,
+ _onChange = props.onChange,
+ items = props.items;
+ var collapseClassName = _classnames_2_5_1_classnames_default()(prefixCls, className);
+ var _useMergedState = (0,useMergedState/* default */.Z)([], {
+ value: rawActiveKey,
+ onChange: function onChange(v) {
+ return _onChange === null || _onChange === void 0 ? void 0 : _onChange(v);
+ },
+ defaultValue: defaultActiveKey,
+ postState: getActiveKeysArray
+ }),
+ _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
+ activeKey = _useMergedState2[0],
+ setActiveKey = _useMergedState2[1];
+ var onItemClick = function onItemClick(key) {
+ return setActiveKey(function () {
+ if (accordion) {
+ return activeKey[0] === key ? [] : [key];
+ }
+ var index = activeKey.indexOf(key);
+ var isActive = index > -1;
+ if (isActive) {
+ return activeKey.filter(function (item) {
+ return item !== key;
+ });
+ }
+ return [].concat((0,toConsumableArray/* default */.Z)(activeKey), [key]);
+ });
+ };
+
+ // ======================== Children ========================
+ (0,warning/* default */.ZP)(!children, '[rc-collapse] `children` will be removed in next major version. Please use `items` instead.');
+ var mergedChildren = hooks_useItems(items, children, {
+ prefixCls: prefixCls,
+ accordion: accordion,
+ openMotion: openMotion,
+ expandIcon: expandIcon,
+ collapsible: collapsible,
+ destroyInactivePanel: destroyInactivePanel,
+ onItemClick: onItemClick,
+ activeKey: activeKey
+ });
+
+ // ======================== Render ========================
+ return /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ ref: ref,
+ className: collapseClassName,
+ style: style,
+ role: accordion ? 'tablist' : undefined
+ }, mergedChildren);
+});
+/* harmony default export */ var es_Collapse = (Object.assign(Collapse, {
+ /**
+ * @deprecated use `items` instead, will be removed in `v4.0.0`
+ */
+ Panel: Panel
+}));
+;// CONCATENATED MODULE: ./node_modules/_rc-collapse@3.7.2@rc-collapse/es/index.js
+
+/* harmony default export */ var _rc_collapse_3_7_2_rc_collapse_es = (es_Collapse);
+
+/**
+ * @deprecated use `items` instead, will be removed in `v4.0.0`
+ */
+var es_Panel = es_Collapse.Panel;
+
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
+var omit = __webpack_require__(99468);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/motion.js
+var motion = __webpack_require__(62892);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/hooks/useSize.js
+var useSize = __webpack_require__(19716);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/collapse/CollapsePanel.js
+"use client";
+
+
+
+
+
+
+const CollapsePanel_CollapsePanel = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ false ? 0 : void 0;
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ showArrow = true
+ } = props;
+ const prefixCls = getPrefixCls('collapse', customizePrefixCls);
+ const collapsePanelClassName = _classnames_2_5_1_classnames_default()({
+ [`${prefixCls}-no-arrow`]: !showArrow
+ }, className);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(_rc_collapse_3_7_2_rc_collapse_es.Panel, Object.assign({
+ ref: ref
+ }, props, {
+ prefixCls: prefixCls,
+ className: collapsePanelClassName
+ }));
+});
+/* harmony default export */ var collapse_CollapsePanel = (CollapsePanel_CollapsePanel);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/motion/collapse.js
+var collapse = __webpack_require__(8378);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/collapse/style/index.js
+
+
+
+const genBaseStyle = token => {
+ const {
+ componentCls,
+ contentBg,
+ padding,
+ headerBg,
+ headerPadding,
+ collapseHeaderPaddingSM,
+ collapseHeaderPaddingLG,
+ collapsePanelBorderRadius,
+ lineWidth,
+ lineType,
+ colorBorder,
+ colorText,
+ colorTextHeading,
+ colorTextDisabled,
+ fontSize,
+ fontSizeLG,
+ lineHeight,
+ marginSM,
+ paddingSM,
+ paddingLG,
+ paddingXS,
+ motionDurationSlow,
+ fontSizeIcon,
+ contentPadding
+ } = token;
+ const borderBase = `${lineWidth}px ${lineType} ${colorBorder}`;
+ return {
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ backgroundColor: headerBg,
+ border: borderBase,
+ borderBottom: 0,
+ borderRadius: `${collapsePanelBorderRadius}px`,
+ [`&-rtl`]: {
+ direction: 'rtl'
+ },
+ [`& > ${componentCls}-item`]: {
+ borderBottom: borderBase,
+ [`&:last-child`]: {
+ [`
+ &,
+ & > ${componentCls}-header`]: {
+ borderRadius: `0 0 ${collapsePanelBorderRadius}px ${collapsePanelBorderRadius}px`
+ }
+ },
+ [`> ${componentCls}-header`]: {
+ position: 'relative',
+ display: 'flex',
+ flexWrap: 'nowrap',
+ alignItems: 'flex-start',
+ padding: headerPadding,
+ color: colorTextHeading,
+ lineHeight,
+ cursor: 'pointer',
+ transition: `all ${motionDurationSlow}, visibility 0s`,
+ [`> ${componentCls}-header-text`]: {
+ flex: 'auto'
+ },
+ '&:focus': {
+ outline: 'none'
+ },
+ // >>>>> Arrow
+ [`${componentCls}-expand-icon`]: {
+ height: fontSize * lineHeight,
+ display: 'flex',
+ alignItems: 'center',
+ paddingInlineEnd: marginSM
+ },
+ [`${componentCls}-arrow`]: Object.assign(Object.assign({}, (0,style/* resetIcon */.Ro)()), {
+ fontSize: fontSizeIcon,
+ svg: {
+ transition: `transform ${motionDurationSlow}`
+ }
+ }),
+ // >>>>> Text
+ [`${componentCls}-header-text`]: {
+ marginInlineEnd: 'auto'
+ }
+ },
+ [`${componentCls}-header-collapsible-only`]: {
+ cursor: 'default',
+ [`${componentCls}-header-text`]: {
+ flex: 'none',
+ cursor: 'pointer'
+ }
+ },
+ [`${componentCls}-icon-collapsible-only`]: {
+ cursor: 'default',
+ [`${componentCls}-expand-icon`]: {
+ cursor: 'pointer'
+ }
+ }
+ },
+ [`${componentCls}-content`]: {
+ color: colorText,
+ backgroundColor: contentBg,
+ borderTop: borderBase,
+ [`& > ${componentCls}-content-box`]: {
+ padding: contentPadding
+ },
+ [`&-hidden`]: {
+ display: 'none'
+ }
+ },
+ [`&-small`]: {
+ [`> ${componentCls}-item`]: {
+ [`> ${componentCls}-header`]: {
+ padding: collapseHeaderPaddingSM,
+ paddingInlineStart: paddingXS,
+ [`> ${componentCls}-expand-icon`]: {
+ // Arrow offset
+ marginInlineStart: paddingSM - paddingXS
+ }
+ },
+ [`> ${componentCls}-content > ${componentCls}-content-box`]: {
+ padding: paddingSM
+ }
+ }
+ },
+ [`&-large`]: {
+ [`> ${componentCls}-item`]: {
+ fontSize: fontSizeLG,
+ [`> ${componentCls}-header`]: {
+ padding: collapseHeaderPaddingLG,
+ paddingInlineStart: padding,
+ [`> ${componentCls}-expand-icon`]: {
+ height: fontSizeLG * lineHeight,
+ // Arrow offset
+ marginInlineStart: paddingLG - padding
+ }
+ },
+ [`> ${componentCls}-content > ${componentCls}-content-box`]: {
+ padding: paddingLG
+ }
+ }
+ },
+ [`${componentCls}-item:last-child`]: {
+ [`> ${componentCls}-content`]: {
+ borderRadius: `0 0 ${collapsePanelBorderRadius}px ${collapsePanelBorderRadius}px`
+ }
+ },
+ [`& ${componentCls}-item-disabled > ${componentCls}-header`]: {
+ [`
+ &,
+ & > .arrow
+ `]: {
+ color: colorTextDisabled,
+ cursor: 'not-allowed'
+ }
+ },
+ // ========================== Icon Position ==========================
+ [`&${componentCls}-icon-position-end`]: {
+ [`& > ${componentCls}-item`]: {
+ [`> ${componentCls}-header`]: {
+ [`${componentCls}-expand-icon`]: {
+ order: 1,
+ paddingInlineEnd: 0,
+ paddingInlineStart: marginSM
+ }
+ }
+ }
+ }
+ })
+ };
+};
+const genArrowStyle = token => {
+ const {
+ componentCls
+ } = token;
+ const fixedSelector = `> ${componentCls}-item > ${componentCls}-header ${componentCls}-arrow svg`;
+ return {
+ [`${componentCls}-rtl`]: {
+ [fixedSelector]: {
+ transform: `rotate(180deg)`
+ }
+ }
+ };
+};
+const genBorderlessStyle = token => {
+ const {
+ componentCls,
+ headerBg,
+ paddingXXS,
+ colorBorder
+ } = token;
+ return {
+ [`${componentCls}-borderless`]: {
+ backgroundColor: headerBg,
+ border: 0,
+ [`> ${componentCls}-item`]: {
+ borderBottom: `1px solid ${colorBorder}`
+ },
+ [`
+ > ${componentCls}-item:last-child,
+ > ${componentCls}-item:last-child ${componentCls}-header
+ `]: {
+ borderRadius: 0
+ },
+ [`> ${componentCls}-item:last-child`]: {
+ borderBottom: 0
+ },
+ [`> ${componentCls}-item > ${componentCls}-content`]: {
+ backgroundColor: 'transparent',
+ borderTop: 0
+ },
+ [`> ${componentCls}-item > ${componentCls}-content > ${componentCls}-content-box`]: {
+ paddingTop: paddingXXS
+ }
+ }
+ };
+};
+const genGhostStyle = token => {
+ const {
+ componentCls,
+ paddingSM
+ } = token;
+ return {
+ [`${componentCls}-ghost`]: {
+ backgroundColor: 'transparent',
+ border: 0,
+ [`> ${componentCls}-item`]: {
+ borderBottom: 0,
+ [`> ${componentCls}-content`]: {
+ backgroundColor: 'transparent',
+ border: 0,
+ [`> ${componentCls}-content-box`]: {
+ paddingBlock: paddingSM
+ }
+ }
+ }
+ }
+ };
+};
+/* harmony default export */ var collapse_style = ((0,genComponentStyleHook/* default */.Z)('Collapse', token => {
+ const collapseToken = (0,statistic/* merge */.TS)(token, {
+ collapseHeaderPaddingSM: `${token.paddingXS}px ${token.paddingSM}px`,
+ collapseHeaderPaddingLG: `${token.padding}px ${token.paddingLG}px`,
+ collapsePanelBorderRadius: token.borderRadiusLG
+ });
+ return [genBaseStyle(collapseToken), genBorderlessStyle(collapseToken), genGhostStyle(collapseToken), genArrowStyle(collapseToken), (0,collapse/* default */.Z)(collapseToken)];
+}, token => ({
+ headerPadding: `${token.paddingSM}px ${token.padding}px`,
+ headerBg: token.colorFillAlter,
+ contentPadding: `${token.padding}px 16px`,
+ contentBg: token.colorBgContainer
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/collapse/Collapse.js
+"use client";
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+const Collapse_Collapse = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ const {
+ getPrefixCls,
+ direction,
+ collapse
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ style,
+ bordered = true,
+ ghost,
+ size: customizeSize,
+ expandIconPosition = 'start',
+ children,
+ expandIcon
+ } = props;
+ const mergedSize = (0,useSize/* default */.Z)(ctx => {
+ var _a;
+ return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : ctx) !== null && _a !== void 0 ? _a : 'middle';
+ });
+ const prefixCls = getPrefixCls('collapse', customizePrefixCls);
+ const rootPrefixCls = getPrefixCls();
+ const [wrapSSR, hashId] = collapse_style(prefixCls);
+ // Warning if use legacy type `expandIconPosition`
+ false ? 0 : void 0;
+ // Align with logic position
+ const mergedExpandIconPosition = _react_17_0_2_react.useMemo(() => {
+ if (expandIconPosition === 'left') {
+ return 'start';
+ }
+ return expandIconPosition === 'right' ? 'end' : expandIconPosition;
+ }, [expandIconPosition]);
+ const renderExpandIcon = function () {
+ let panelProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+ const icon = expandIcon ? expandIcon(panelProps) : /*#__PURE__*/_react_17_0_2_react.createElement(RightOutlined/* default */.Z, {
+ rotate: panelProps.isActive ? 90 : undefined
+ });
+ return (0,reactNode/* cloneElement */.Tm)(icon, () => ({
+ className: _classnames_2_5_1_classnames_default()(icon.props.className, `${prefixCls}-arrow`)
+ }));
+ };
+ const collapseClassName = _classnames_2_5_1_classnames_default()(`${prefixCls}-icon-position-${mergedExpandIconPosition}`, {
+ [`${prefixCls}-borderless`]: !bordered,
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-ghost`]: !!ghost,
+ [`${prefixCls}-${mergedSize}`]: mergedSize !== 'middle'
+ }, collapse === null || collapse === void 0 ? void 0 : collapse.className, className, rootClassName, hashId);
+ const openMotion = Object.assign(Object.assign({}, (0,motion/* default */.Z)(rootPrefixCls)), {
+ motionAppear: false,
+ leavedClassName: `${prefixCls}-content-hidden`
+ });
+ const items = _react_17_0_2_react.useMemo(() => children ? (0,toArray/* default */.Z)(children).map((child, index) => {
+ var _a, _b;
+ if ((_a = child.props) === null || _a === void 0 ? void 0 : _a.disabled) {
+ const key = (_b = child.key) !== null && _b !== void 0 ? _b : String(index);
+ const {
+ disabled,
+ collapsible
+ } = child.props;
+ const childProps = Object.assign(Object.assign({}, (0,omit/* default */.Z)(child.props, ['disabled'])), {
+ key,
+ collapsible: collapsible !== null && collapsible !== void 0 ? collapsible : disabled ? 'disabled' : undefined
+ });
+ return (0,reactNode/* cloneElement */.Tm)(child, childProps);
+ }
+ return child;
+ }) : null, [children]);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(_rc_collapse_3_7_2_rc_collapse_es, Object.assign({
+ ref: ref,
+ openMotion: openMotion
+ }, (0,omit/* default */.Z)(props, ['rootClassName']), {
+ expandIcon: renderExpandIcon,
+ prefixCls: prefixCls,
+ className: collapseClassName,
+ style: Object.assign(Object.assign({}, collapse === null || collapse === void 0 ? void 0 : collapse.style), style)
+ }), items));
+});
+if (false) {}
+/* harmony default export */ var collapse_Collapse = (Object.assign(Collapse_Collapse, {
+ Panel: collapse_CollapsePanel
+}));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/collapse/index.js
+"use client";
+
+
+/* harmony default export */ var es_collapse = (collapse_Collapse);
+
+/***/ }),
+
+/***/ 28103:
+/*!***********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/divider/index.js + 1 modules ***!
+ \***********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ divider; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/style/index.js
+
+
+// ============================== Shared ==============================
+const genSharedDividerStyle = token => {
+ const {
+ componentCls,
+ sizePaddingEdgeHorizontal,
+ colorSplit,
+ lineWidth,
+ textPaddingInline,
+ orientationMargin,
+ verticalMarginInline
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ borderBlockStart: `${lineWidth}px solid ${colorSplit}`,
+ // vertical
+ '&-vertical': {
+ position: 'relative',
+ top: '-0.06em',
+ display: 'inline-block',
+ height: '0.9em',
+ marginInline: verticalMarginInline,
+ marginBlock: 0,
+ verticalAlign: 'middle',
+ borderTop: 0,
+ borderInlineStart: `${lineWidth}px solid ${colorSplit}`
+ },
+ '&-horizontal': {
+ display: 'flex',
+ clear: 'both',
+ width: '100%',
+ minWidth: '100%',
+ margin: `${token.dividerHorizontalGutterMargin}px 0`
+ },
+ [`&-horizontal${componentCls}-with-text`]: {
+ display: 'flex',
+ alignItems: 'center',
+ margin: `${token.dividerHorizontalWithTextGutterMargin}px 0`,
+ color: token.colorTextHeading,
+ fontWeight: 500,
+ fontSize: token.fontSizeLG,
+ whiteSpace: 'nowrap',
+ textAlign: 'center',
+ borderBlockStart: `0 ${colorSplit}`,
+ '&::before, &::after': {
+ position: 'relative',
+ width: '50%',
+ borderBlockStart: `${lineWidth}px solid transparent`,
+ // Chrome not accept `inherit` in `border-top`
+ borderBlockStartColor: 'inherit',
+ borderBlockEnd: 0,
+ transform: 'translateY(50%)',
+ content: "''"
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-left`]: {
+ '&::before': {
+ width: `${orientationMargin * 100}%`
+ },
+ '&::after': {
+ width: `${100 - orientationMargin * 100}%`
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-right`]: {
+ '&::before': {
+ width: `${100 - orientationMargin * 100}%`
+ },
+ '&::after': {
+ width: `${orientationMargin * 100}%`
+ }
+ },
+ [`${componentCls}-inner-text`]: {
+ display: 'inline-block',
+ paddingBlock: 0,
+ paddingInline: textPaddingInline
+ },
+ '&-dashed': {
+ background: 'none',
+ borderColor: colorSplit,
+ borderStyle: 'dashed',
+ borderWidth: `${lineWidth}px 0 0`
+ },
+ [`&-horizontal${componentCls}-with-text${componentCls}-dashed`]: {
+ '&::before, &::after': {
+ borderStyle: 'dashed none none'
+ }
+ },
+ [`&-vertical${componentCls}-dashed`]: {
+ borderInlineStartWidth: lineWidth,
+ borderInlineEnd: 0,
+ borderBlockStart: 0,
+ borderBlockEnd: 0
+ },
+ [`&-plain${componentCls}-with-text`]: {
+ color: token.colorText,
+ fontWeight: 'normal',
+ fontSize: token.fontSize
+ },
+ [`&-horizontal${componentCls}-with-text-left${componentCls}-no-default-orientation-margin-left`]: {
+ '&::before': {
+ width: 0
+ },
+ '&::after': {
+ width: '100%'
+ },
+ [`${componentCls}-inner-text`]: {
+ paddingInlineStart: sizePaddingEdgeHorizontal
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-right${componentCls}-no-default-orientation-margin-right`]: {
+ '&::before': {
+ width: '100%'
+ },
+ '&::after': {
+ width: 0
+ },
+ [`${componentCls}-inner-text`]: {
+ paddingInlineEnd: sizePaddingEdgeHorizontal
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var divider_style = ((0,genComponentStyleHook/* default */.Z)('Divider', token => {
+ const dividerToken = (0,statistic/* merge */.TS)(token, {
+ dividerHorizontalWithTextGutterMargin: token.margin,
+ dividerHorizontalGutterMargin: token.marginLG,
+ sizePaddingEdgeHorizontal: 0
+ });
+ return [genSharedDividerStyle(dividerToken)];
+}, token => ({
+ textPaddingInline: '1em',
+ orientationMargin: 0.05,
+ verticalMarginInline: token.marginXS
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+const Divider = props => {
+ const {
+ getPrefixCls,
+ direction,
+ divider
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ type = 'horizontal',
+ orientation = 'center',
+ orientationMargin,
+ className,
+ rootClassName,
+ children,
+ dashed,
+ plain,
+ style
+ } = props,
+ restProps = __rest(props, ["prefixCls", "type", "orientation", "orientationMargin", "className", "rootClassName", "children", "dashed", "plain", "style"]);
+ const prefixCls = getPrefixCls('divider', customizePrefixCls);
+ const [wrapSSR, hashId] = divider_style(prefixCls);
+ const orientationPrefix = orientation.length > 0 ? `-${orientation}` : orientation;
+ const hasChildren = !!children;
+ const hasCustomMarginLeft = orientation === 'left' && orientationMargin != null;
+ const hasCustomMarginRight = orientation === 'right' && orientationMargin != null;
+ const classString = _classnames_2_5_1_classnames_default()(prefixCls, divider === null || divider === void 0 ? void 0 : divider.className, hashId, `${prefixCls}-${type}`, {
+ [`${prefixCls}-with-text`]: hasChildren,
+ [`${prefixCls}-with-text${orientationPrefix}`]: hasChildren,
+ [`${prefixCls}-dashed`]: !!dashed,
+ [`${prefixCls}-plain`]: !!plain,
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-no-default-orientation-margin-left`]: hasCustomMarginLeft,
+ [`${prefixCls}-no-default-orientation-margin-right`]: hasCustomMarginRight
+ }, className, rootClassName);
+ const memoizedOrientationMargin = _react_17_0_2_react.useMemo(() => {
+ if (typeof orientationMargin === 'number') {
+ return orientationMargin;
+ }
+ if (/^\d+$/.test(orientationMargin)) {
+ return Number(orientationMargin);
+ }
+ return orientationMargin;
+ }, [orientationMargin]);
+ const innerStyle = Object.assign(Object.assign({}, hasCustomMarginLeft && {
+ marginLeft: memoizedOrientationMargin
+ }), hasCustomMarginRight && {
+ marginRight: memoizedOrientationMargin
+ });
+ // Warning children not work in vertical mode
+ if (false) {}
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", Object.assign({
+ className: classString,
+ style: Object.assign(Object.assign({}, divider === null || divider === void 0 ? void 0 : divider.style), style)
+ }, restProps, {
+ role: "separator"
+ }), children && type !== 'vertical' && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-inner-text`,
+ style: innerStyle
+ }, children)));
+};
+if (false) {}
+/* harmony default export */ var divider = (Divider);
+
+/***/ }),
+
+/***/ 39722:
+/*!***************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/PurePanel.js ***!
+ \***************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ t5: function() { return /* binding */ RawPurePanel; }
+/* harmony export */ });
+/* unused harmony export getOverlay */
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var rc_tooltip__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rc-tooltip */ 55477);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../config-provider */ 36355);
+/* harmony import */ var _util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../_util/getRenderPropValue */ 77578);
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./style */ 17356);
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+const getOverlay = (prefixCls, title, content) => {
+ if (!title && !content) return undefined;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(react__WEBPACK_IMPORTED_MODULE_2__.Fragment, null, title && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-title`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__/* .getRenderPropValue */ .Z)(title)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-inner-content`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__/* .getRenderPropValue */ .Z)(content)));
+};
+const RawPurePanel = props => {
+ const {
+ hashId,
+ prefixCls,
+ className,
+ style,
+ placement = 'top',
+ title,
+ content,
+ children
+ } = props;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: classnames__WEBPACK_IMPORTED_MODULE_0___default()(hashId, prefixCls, `${prefixCls}-pure`, `${prefixCls}-placement-${placement}`, className),
+ style: style
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-arrow`
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(rc_tooltip__WEBPACK_IMPORTED_MODULE_1__/* .Popup */ .G, Object.assign({}, props, {
+ className: hashId,
+ prefixCls: prefixCls
+ }), children || getOverlay(prefixCls, title, content)));
+};
+const PurePanel = props => {
+ const {
+ prefixCls: customizePrefixCls
+ } = props,
+ restProps = __rest(props, ["prefixCls"]);
+ const {
+ getPrefixCls
+ } = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_4__/* .ConfigContext */ .E_);
+ const prefixCls = getPrefixCls('popover', customizePrefixCls);
+ const [wrapSSR, hashId] = (0,_style__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)(prefixCls);
+ return wrapSSR( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(RawPurePanel, Object.assign({}, restProps, {
+ prefixCls: prefixCls,
+ hashId: hashId
+ })));
+};
+/* harmony default export */ __webpack_exports__.ZP = (PurePanel);
+
+/***/ }),
+
+/***/ 60324:
+/*!***********************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/index.js ***!
+ \***********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../_util/getRenderPropValue */ 77578);
+/* harmony import */ var _util_motion__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../_util/motion */ 62892);
+/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../config-provider */ 36355);
+/* harmony import */ var _tooltip__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../tooltip */ 6848);
+/* harmony import */ var _PurePanel__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./PurePanel */ 39722);
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./style */ 17356);
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+// CSSINJS
+
+const Overlay = _ref => {
+ let {
+ title,
+ content,
+ prefixCls
+ } = _ref;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, title && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", {
+ className: `${prefixCls}-title`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__/* .getRenderPropValue */ .Z)(title)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", {
+ className: `${prefixCls}-inner-content`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__/* .getRenderPropValue */ .Z)(content)));
+};
+const Popover = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.forwardRef((props, ref) => {
+ const {
+ prefixCls: customizePrefixCls,
+ title,
+ content,
+ overlayClassName,
+ placement = 'top',
+ trigger = 'hover',
+ mouseEnterDelay = 0.1,
+ mouseLeaveDelay = 0.1,
+ overlayStyle = {}
+ } = props,
+ otherProps = __rest(props, ["prefixCls", "title", "content", "overlayClassName", "placement", "trigger", "mouseEnterDelay", "mouseLeaveDelay", "overlayStyle"]);
+ const {
+ getPrefixCls
+ } = react__WEBPACK_IMPORTED_MODULE_1__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_3__/* .ConfigContext */ .E_);
+ const prefixCls = getPrefixCls('popover', customizePrefixCls);
+ const [wrapSSR, hashId] = (0,_style__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(prefixCls);
+ const rootPrefixCls = getPrefixCls();
+ const overlayCls = classnames__WEBPACK_IMPORTED_MODULE_0___default()(overlayClassName, hashId);
+ return wrapSSR( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_tooltip__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, Object.assign({
+ placement: placement,
+ trigger: trigger,
+ mouseEnterDelay: mouseEnterDelay,
+ mouseLeaveDelay: mouseLeaveDelay,
+ overlayStyle: overlayStyle
+ }, otherProps, {
+ prefixCls: prefixCls,
+ overlayClassName: overlayCls,
+ ref: ref,
+ overlay: title || content ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(Overlay, {
+ prefixCls: prefixCls,
+ title: title,
+ content: content
+ }) : null,
+ transitionName: (0,_util_motion__WEBPACK_IMPORTED_MODULE_6__/* .getTransitionName */ .m)(rootPrefixCls, 'zoom-big', otherProps.transitionName),
+ "data-popover-inject": true
+ })));
+});
+if (false) {}
+Popover._InternalPanelDoNotUseOrYouWillBeFired = _PurePanel__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP;
+/* harmony default export */ __webpack_exports__.Z = (Popover);
+
+/***/ }),
+
+/***/ 17356:
+/*!*****************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/style/index.js ***!
+ \*****************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../style */ 17313);
+/* harmony import */ var _style_motion__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../style/motion */ 29878);
+/* harmony import */ var _style_placementArrow__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../style/placementArrow */ 19447);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../theme/internal */ 33166);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../theme/internal */ 83116);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../theme/internal */ 37613);
+"use client";
+
+
+
+
+
+const genBaseStyle = token => {
+ const {
+ componentCls,
+ popoverColor,
+ minWidth,
+ fontWeightStrong,
+ popoverPadding,
+ boxShadowSecondary,
+ colorTextHeading,
+ borderRadiusLG: borderRadius,
+ zIndexPopup,
+ marginXS,
+ colorBgElevated,
+ popoverBg
+ } = token;
+ return [{
+ [componentCls]: Object.assign(Object.assign({}, (0,_style__WEBPACK_IMPORTED_MODULE_0__/* .resetComponent */ .Wf)(token)), {
+ position: 'absolute',
+ top: 0,
+ // use `left` to fix https://github.com/ant-design/ant-design/issues/39195
+ left: {
+ _skip_check_: true,
+ value: 0
+ },
+ zIndex: zIndexPopup,
+ fontWeight: 'normal',
+ whiteSpace: 'normal',
+ textAlign: 'start',
+ cursor: 'auto',
+ userSelect: 'text',
+ transformOrigin: `var(--arrow-x, 50%) var(--arrow-y, 50%)`,
+ '--antd-arrow-background-color': colorBgElevated,
+ '&-rtl': {
+ direction: 'rtl'
+ },
+ '&-hidden': {
+ display: 'none'
+ },
+ [`${componentCls}-content`]: {
+ position: 'relative'
+ },
+ [`${componentCls}-inner`]: {
+ backgroundColor: popoverBg,
+ backgroundClip: 'padding-box',
+ borderRadius,
+ boxShadow: boxShadowSecondary,
+ padding: popoverPadding
+ },
+ [`${componentCls}-title`]: {
+ minWidth,
+ marginBottom: marginXS,
+ color: colorTextHeading,
+ fontWeight: fontWeightStrong
+ },
+ [`${componentCls}-inner-content`]: {
+ color: popoverColor
+ }
+ })
+ },
+ // Arrow Style
+ (0,_style_placementArrow__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .ZP)(token, {
+ colorBg: 'var(--antd-arrow-background-color)'
+ }),
+ // Pure Render
+ {
+ [`${componentCls}-pure`]: {
+ position: 'relative',
+ maxWidth: 'none',
+ margin: token.sizePopupArrow,
+ display: 'inline-block',
+ [`${componentCls}-content`]: {
+ display: 'inline-block'
+ }
+ }
+ }];
+};
+const genColorStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [componentCls]: _theme_internal__WEBPACK_IMPORTED_MODULE_2__/* .PresetColors */ .i.map(colorKey => {
+ const lightColor = token[`${colorKey}6`];
+ return {
+ [`&${componentCls}-${colorKey}`]: {
+ '--antd-arrow-background-color': lightColor,
+ [`${componentCls}-inner`]: {
+ backgroundColor: lightColor
+ },
+ [`${componentCls}-arrow`]: {
+ background: 'transparent'
+ }
+ }
+ };
+ })
+ };
+};
+const genWireframeStyle = token => {
+ const {
+ componentCls,
+ lineWidth,
+ lineType,
+ colorSplit,
+ paddingSM,
+ controlHeight,
+ fontSize,
+ lineHeight,
+ padding
+ } = token;
+ const titlePaddingBlockDist = controlHeight - Math.round(fontSize * lineHeight);
+ const popoverTitlePaddingBlockTop = titlePaddingBlockDist / 2;
+ const popoverTitlePaddingBlockBottom = titlePaddingBlockDist / 2 - lineWidth;
+ const popoverPaddingHorizontal = padding;
+ return {
+ [componentCls]: {
+ [`${componentCls}-inner`]: {
+ padding: 0
+ },
+ [`${componentCls}-title`]: {
+ margin: 0,
+ padding: `${popoverTitlePaddingBlockTop}px ${popoverPaddingHorizontal}px ${popoverTitlePaddingBlockBottom}px`,
+ borderBottom: `${lineWidth}px ${lineType} ${colorSplit}`
+ },
+ [`${componentCls}-inner-content`]: {
+ padding: `${paddingSM}px ${popoverPaddingHorizontal}px`
+ }
+ }
+ };
+};
+/* harmony default export */ __webpack_exports__.Z = ((0,_theme_internal__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)('Popover', token => {
+ const {
+ colorBgElevated,
+ colorText,
+ wireframe
+ } = token;
+ const popoverToken = (0,_theme_internal__WEBPACK_IMPORTED_MODULE_4__/* .merge */ .TS)(token, {
+ popoverPadding: 12,
+ popoverBg: colorBgElevated,
+ popoverColor: colorText
+ });
+ return [genBaseStyle(popoverToken), genColorStyle(popoverToken), wireframe && genWireframeStyle(popoverToken), (0,_style_motion__WEBPACK_IMPORTED_MODULE_5__/* .initZoomMotion */ ._y)(popoverToken, 'zoom-big')];
+}, token => ({
+ width: 177,
+ minWidth: 177,
+ zIndexPopup: token.zIndexPopupBase + 30
+}), {
+ resetStyle: false,
+ deprecatedTokens: [['width', 'minWidth']]
+}));
+
+/***/ }),
+
+/***/ 91052:
+/*!********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/rate/index.js + 8 modules ***!
+ \********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ rate; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/StarFilled.js
+// This icon file is generated automatically.
+var StarFilled = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M908.1 353.1l-253.9-36.9L540.7 86.1c-3.1-6.3-8.2-11.4-14.5-14.5-15.8-7.8-35-1.3-42.9 14.5L369.8 316.2l-253.9 36.9c-7 1-13.4 4.3-18.3 9.3a32.05 32.05 0 00.6 45.3l183.7 179.1-43.4 252.9a31.95 31.95 0 0046.4 33.7L512 754l227.1 119.4c6.2 3.3 13.4 4.4 20.3 3.2 17.4-3 29.1-19.5 26.1-36.9l-43.4-252.9 183.7-179.1c5-4.9 8.3-11.3 9.3-18.3 2.7-17.5-9.5-33.7-27-36.3z" } }] }, "name": "star", "theme": "filled" };
+/* harmony default export */ var asn_StarFilled = (StarFilled);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/StarFilled.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var StarFilled_StarFilled = function StarFilled(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_StarFilled
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_StarFilled = (/*#__PURE__*/_react_17_0_2_react.forwardRef(StarFilled_StarFilled));
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
+var useMergedState = __webpack_require__(84381);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/pickAttrs.js
+var pickAttrs = __webpack_require__(3286);
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Star.js
+
+
+
+function Star(props, ref) {
+ var disabled = props.disabled,
+ prefixCls = props.prefixCls,
+ character = props.character,
+ characterRender = props.characterRender,
+ index = props.index,
+ count = props.count,
+ value = props.value,
+ allowHalf = props.allowHalf,
+ focused = props.focused,
+ onHover = props.onHover,
+ onClick = props.onClick;
+ // =========================== Events ===========================
+ var onInternalHover = function onInternalHover(e) {
+ onHover(e, index);
+ };
+ var onInternalClick = function onInternalClick(e) {
+ onClick(e, index);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(e) {
+ if (e.keyCode === KeyCode/* default */.Z.ENTER) {
+ onClick(e, index);
+ }
+ };
+ // =========================== Render ===========================
+ // >>>>> ClassName
+ var starValue = index + 1;
+ var classNameList = new Set([prefixCls]);
+ // TODO: Current we just refactor from CC to FC. This logic seems can be optimized.
+ if (value === 0 && index === 0 && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ } else if (allowHalf && value + 0.5 >= starValue && value < starValue) {
+ classNameList.add("".concat(prefixCls, "-half"));
+ classNameList.add("".concat(prefixCls, "-active"));
+ if (focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ } else {
+ if (starValue <= value) {
+ classNameList.add("".concat(prefixCls, "-full"));
+ } else {
+ classNameList.add("".concat(prefixCls, "-zero"));
+ }
+ if (starValue === value && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ }
+ // >>>>> Node
+ var characterNode = typeof character === 'function' ? character(props) : character;
+ var start = /*#__PURE__*/_react_17_0_2_react.createElement("li", {
+ className: _classnames_2_5_1_classnames_default()(Array.from(classNameList)),
+ ref: ref
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ onClick: disabled ? null : onInternalClick,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ onMouseMove: disabled ? null : onInternalHover,
+ role: "radio",
+ "aria-checked": value > index ? 'true' : 'false',
+ "aria-posinset": index + 1,
+ "aria-setsize": count,
+ tabIndex: disabled ? -1 : 0
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-first")
+ }, characterNode), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-second")
+ }, characterNode)));
+ if (characterRender) {
+ start = characterRender(start, props);
+ }
+ return start;
+}
+/* harmony default export */ var es_Star = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Star));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/useRefs.js
+
+function useRefs() {
+ var nodeRef = _react_17_0_2_react.useRef({});
+ function getRef(index) {
+ return nodeRef.current[index];
+ }
+ function setRef(index) {
+ return function (node) {
+ nodeRef.current[index] = node;
+ };
+ }
+ return [getRef, setRef];
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/util.js
+function getScroll(w) {
+ var ret = w.pageXOffset;
+ var method = 'scrollLeft';
+ if (typeof ret !== 'number') {
+ var d = w.document;
+ // ie6,7,8 standard mode
+ ret = d.documentElement[method];
+ if (typeof ret !== 'number') {
+ // quirks mode
+ ret = d.body[method];
+ }
+ }
+ return ret;
+}
+function getClientPosition(elem) {
+ var x;
+ var y;
+ var doc = elem.ownerDocument;
+ var body = doc.body;
+ var docElem = doc && doc.documentElement;
+ var box = elem.getBoundingClientRect();
+ x = box.left;
+ y = box.top;
+ x -= docElem.clientLeft || body.clientLeft || 0;
+ y -= docElem.clientTop || body.clientTop || 0;
+ return {
+ left: x,
+ top: y
+ };
+}
+function getOffsetLeft(el) {
+ var pos = getClientPosition(el);
+ var doc = el.ownerDocument;
+ // Only IE use `parentWindow`
+ var w = doc.defaultView || doc.parentWindow;
+ pos.left += getScroll(w);
+ return pos.left;
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Rate.js
+
+
+
+
+var _excluded = ["prefixCls", "className", "defaultValue", "value", "count", "allowHalf", "allowClear", "character", "characterRender", "disabled", "direction", "tabIndex", "autoFocus", "onHoverChange", "onChange", "onFocus", "onBlur", "onKeyDown", "onMouseLeave"];
+
+
+
+
+
+
+
+
+function Rate(props, ref) {
+ var _classNames;
+ var _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-rate' : _props$prefixCls,
+ className = props.className,
+ defaultValue = props.defaultValue,
+ propValue = props.value,
+ _props$count = props.count,
+ count = _props$count === void 0 ? 5 : _props$count,
+ _props$allowHalf = props.allowHalf,
+ allowHalf = _props$allowHalf === void 0 ? false : _props$allowHalf,
+ _props$allowClear = props.allowClear,
+ allowClear = _props$allowClear === void 0 ? true : _props$allowClear,
+ _props$character = props.character,
+ character = _props$character === void 0 ? '★' : _props$character,
+ characterRender = props.characterRender,
+ disabled = props.disabled,
+ _props$direction = props.direction,
+ direction = _props$direction === void 0 ? 'ltr' : _props$direction,
+ _props$tabIndex = props.tabIndex,
+ tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,
+ autoFocus = props.autoFocus,
+ onHoverChange = props.onHoverChange,
+ onChange = props.onChange,
+ onFocus = props.onFocus,
+ onBlur = props.onBlur,
+ onKeyDown = props.onKeyDown,
+ onMouseLeave = props.onMouseLeave,
+ restProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var _useRefs = useRefs(),
+ _useRefs2 = (0,slicedToArray/* default */.Z)(_useRefs, 2),
+ getStarRef = _useRefs2[0],
+ setStarRef = _useRefs2[1];
+ var rateRef = _react_17_0_2_react.useRef(null);
+ // ============================ Ref =============================
+ var triggerFocus = function triggerFocus() {
+ if (!disabled) {
+ var _rateRef$current;
+ (_rateRef$current = rateRef.current) === null || _rateRef$current === void 0 ? void 0 : _rateRef$current.focus();
+ }
+ };
+ _react_17_0_2_react.useImperativeHandle(ref, function () {
+ return {
+ focus: triggerFocus,
+ blur: function blur() {
+ if (!disabled) {
+ var _rateRef$current2;
+ (_rateRef$current2 = rateRef.current) === null || _rateRef$current2 === void 0 ? void 0 : _rateRef$current2.blur();
+ }
+ }
+ };
+ });
+ // =========================== Value ============================
+ var _useMergedState = (0,useMergedState/* default */.Z)(defaultValue || 0, {
+ value: propValue
+ }),
+ _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
+ value = _useMergedState2[0],
+ setValue = _useMergedState2[1];
+ var _useMergedState3 = (0,useMergedState/* default */.Z)(null),
+ _useMergedState4 = (0,slicedToArray/* default */.Z)(_useMergedState3, 2),
+ cleanedValue = _useMergedState4[0],
+ setCleanedValue = _useMergedState4[1];
+ var getStarValue = function getStarValue(index, x) {
+ var reverse = direction === 'rtl';
+ var starValue = index + 1;
+ if (allowHalf) {
+ var starEle = getStarRef(index);
+ var leftDis = getOffsetLeft(starEle);
+ var width = starEle.clientWidth;
+ if (reverse && x - leftDis > width / 2) {
+ starValue -= 0.5;
+ } else if (!reverse && x - leftDis < width / 2) {
+ starValue -= 0.5;
+ }
+ }
+ return starValue;
+ };
+ // >>>>> Change
+ var changeValue = function changeValue(nextValue) {
+ setValue(nextValue);
+ onChange === null || onChange === void 0 ? void 0 : onChange(nextValue);
+ };
+ // =========================== Focus ============================
+ var _React$useState = _react_17_0_2_react.useState(false),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ focused = _React$useState2[0],
+ setFocused = _React$useState2[1];
+ var onInternalFocus = function onInternalFocus() {
+ setFocused(true);
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus();
+ };
+ var onInternalBlur = function onInternalBlur() {
+ setFocused(false);
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur();
+ };
+ // =========================== Hover ============================
+ var _React$useState3 = _react_17_0_2_react.useState(null),
+ _React$useState4 = (0,slicedToArray/* default */.Z)(_React$useState3, 2),
+ hoverValue = _React$useState4[0],
+ setHoverValue = _React$useState4[1];
+ var onHover = function onHover(event, index) {
+ var nextHoverValue = getStarValue(index, event.pageX);
+ if (nextHoverValue !== cleanedValue) {
+ setHoverValue(nextHoverValue);
+ setCleanedValue(null);
+ }
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(nextHoverValue);
+ };
+ var onMouseLeaveCallback = function onMouseLeaveCallback(event) {
+ if (!disabled) {
+ setHoverValue(null);
+ setCleanedValue(null);
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(undefined);
+ }
+ if (event) {
+ onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave(event);
+ }
+ };
+ // =========================== Click ============================
+ var onClick = function onClick(event, index) {
+ var newValue = getStarValue(index, event.pageX);
+ var isReset = false;
+ if (allowClear) {
+ isReset = newValue === value;
+ }
+ onMouseLeaveCallback();
+ changeValue(isReset ? 0 : newValue);
+ setCleanedValue(isReset ? newValue : null);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(event) {
+ var keyCode = event.keyCode;
+ var reverse = direction === 'rtl';
+ var nextValue = value;
+ if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue < count && !reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue > 0 && !reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue > 0 && reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue < count && reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ }
+ onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);
+ };
+ // =========================== Effect ===========================
+ _react_17_0_2_react.useEffect(function () {
+ if (autoFocus && !disabled) {
+ triggerFocus();
+ }
+ }, []);
+ // =========================== Render ===========================
+ // >>> Star
+ var starNodes = new Array(count).fill(0).map(function (item, index) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_Star, {
+ ref: setStarRef(index),
+ index: index,
+ count: count,
+ disabled: disabled,
+ prefixCls: "".concat(prefixCls, "-star"),
+ allowHalf: allowHalf,
+ value: hoverValue === null ? value : hoverValue,
+ onClick: onClick,
+ onHover: onHover,
+ key: item || index,
+ character: character,
+ characterRender: characterRender,
+ focused: focused
+ });
+ });
+ var classString = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-rtl"), direction === 'rtl'), _classNames));
+ // >>> Node
+ return /*#__PURE__*/_react_17_0_2_react.createElement("ul", (0,esm_extends/* default */.Z)({
+ className: classString,
+ onMouseLeave: onMouseLeaveCallback,
+ tabIndex: disabled ? -1 : tabIndex,
+ onFocus: disabled ? null : onInternalFocus,
+ onBlur: disabled ? null : onInternalBlur,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ ref: rateRef,
+ role: "radiogroup"
+ }, (0,pickAttrs/* default */.Z)(restProps, {
+ aria: true,
+ data: true,
+ attr: true
+ })), starNodes);
+}
+/* harmony default export */ var es_Rate = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Rate));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/index.js
+
+/* harmony default export */ var es = (es_Rate);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
+var tooltip = __webpack_require__(6848);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/style/index.js
+"use client";
+
+
+
+const genRateStarStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [`${componentCls}-star`]: {
+ position: 'relative',
+ display: 'inline-block',
+ color: 'inherit',
+ cursor: 'pointer',
+ '&:not(:last-child)': {
+ marginInlineEnd: token.marginXS
+ },
+ '> div': {
+ transition: `all ${token.motionDurationMid}, outline 0s`,
+ '&:hover': {
+ transform: token.starHoverScale
+ },
+ '&:focus': {
+ outline: 0
+ },
+ '&:focus-visible': {
+ outline: `${token.lineWidth}px dashed ${token.starColor}`,
+ transform: token.starHoverScale
+ }
+ },
+ '&-first, &-second': {
+ color: token.starBg,
+ transition: `all ${token.motionDurationMid}`,
+ userSelect: 'none',
+ [token.iconCls]: {
+ verticalAlign: 'middle'
+ }
+ },
+ '&-first': {
+ position: 'absolute',
+ top: 0,
+ insetInlineStart: 0,
+ width: '50%',
+ height: '100%',
+ overflow: 'hidden',
+ opacity: 0
+ },
+ [`&-half ${componentCls}-star-first, &-half ${componentCls}-star-second`]: {
+ opacity: 1
+ },
+ [`&-half ${componentCls}-star-first, &-full ${componentCls}-star-second`]: {
+ color: 'inherit'
+ }
+ }
+ };
+};
+const genRateRtlStyle = token => ({
+ [`&-rtl${token.componentCls}`]: {
+ direction: 'rtl'
+ }
+});
+const genRateStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ display: 'inline-block',
+ margin: 0,
+ padding: 0,
+ color: token.starColor,
+ fontSize: token.starSize,
+ lineHeight: 'unset',
+ listStyle: 'none',
+ outline: 'none',
+ // disable styles
+ [`&-disabled${componentCls} ${componentCls}-star`]: {
+ cursor: 'default',
+ '> div:hover': {
+ transform: 'scale(1)'
+ }
+ }
+ }), genRateStarStyle(token)), {
+ // text styles
+ [`+ ${componentCls}-text`]: {
+ display: 'inline-block',
+ marginInlineStart: token.marginXS,
+ fontSize: token.fontSize
+ }
+ }), genRateRtlStyle(token))
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var rate_style = ((0,genComponentStyleHook/* default */.Z)('Rate', token => {
+ const rateToken = (0,statistic/* merge */.TS)(token, {});
+ return [genRateStyle(rateToken)];
+}, token => ({
+ starColor: token.yellow6,
+ starSize: token.controlHeightLG * 0.5,
+ starHoverScale: 'scale(1.1)',
+ starBg: token.colorFillContent
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+const rate_Rate = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ const {
+ prefixCls,
+ className,
+ rootClassName,
+ style,
+ tooltips,
+ character = /*#__PURE__*/_react_17_0_2_react.createElement(icons_StarFilled, null)
+ } = props,
+ rest = __rest(props, ["prefixCls", "className", "rootClassName", "style", "tooltips", "character"]);
+ const characterRender = (node, _ref) => {
+ let {
+ index
+ } = _ref;
+ if (!tooltips) {
+ return node;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(tooltip/* default */.Z, {
+ title: tooltips[index]
+ }, node);
+ };
+ const {
+ getPrefixCls,
+ direction,
+ rate
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const ratePrefixCls = getPrefixCls('rate', prefixCls);
+ // Style
+ const [wrapSSR, hashId] = rate_style(ratePrefixCls);
+ const mergedStyle = Object.assign(Object.assign({}, rate === null || rate === void 0 ? void 0 : rate.style), style);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({
+ ref: ref,
+ character: character,
+ characterRender: characterRender
+ }, rest, {
+ className: _classnames_2_5_1_classnames_default()(className, rootClassName, hashId, rate === null || rate === void 0 ? void 0 : rate.className),
+ style: mergedStyle,
+ prefixCls: ratePrefixCls,
+ direction: direction
+ })));
+});
+if (false) {}
+/* harmony default export */ var rate = (rate_Rate);
+
+/***/ }),
+
+/***/ 31797:
+/*!*************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/statistic/index.js + 5 modules ***!
+ \*************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ es_statistic; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/hooks/useForceUpdate.js
+var useForceUpdate = __webpack_require__(56762);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/skeleton/index.js + 12 modules
+var skeleton = __webpack_require__(60371);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Number.js
+"use client";
+
+
+const StatisticNumber = props => {
+ const {
+ value,
+ formatter,
+ precision,
+ decimalSeparator,
+ groupSeparator = '',
+ prefixCls
+ } = props;
+ let valueNode;
+ if (typeof formatter === 'function') {
+ // Customize formatter
+ valueNode = formatter(value);
+ } else {
+ // Internal formatter
+ const val = String(value);
+ const cells = val.match(/^(-?)(\d*)(\.(\d+))?$/);
+ // Process if illegal number
+ if (!cells || val === '-') {
+ valueNode = val;
+ } else {
+ const negative = cells[1];
+ let int = cells[2] || '0';
+ let decimal = cells[4] || '';
+ int = int.replace(/\B(?=(\d{3})+(?!\d))/g, groupSeparator);
+ if (typeof precision === 'number') {
+ decimal = decimal.padEnd(precision, '0').slice(0, precision > 0 ? precision : 0);
+ }
+ if (decimal) {
+ decimal = `${decimalSeparator}${decimal}`;
+ }
+ valueNode = [/*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "int",
+ className: `${prefixCls}-content-value-int`
+ }, negative, int), decimal && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "decimal",
+ className: `${prefixCls}-content-value-decimal`
+ }, decimal)];
+ }
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-value`
+ }, valueNode);
+};
+/* harmony default export */ var statistic_Number = (StatisticNumber);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/style/index.js
+"use client";
+
+
+
+const genStatisticStyle = token => {
+ const {
+ componentCls,
+ marginXXS,
+ padding,
+ colorTextDescription,
+ titleFontSize,
+ colorTextHeading,
+ contentFontSize,
+ fontFamily
+ } = token;
+ return {
+ [`${componentCls}`]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ [`${componentCls}-title`]: {
+ marginBottom: marginXXS,
+ color: colorTextDescription,
+ fontSize: titleFontSize
+ },
+ [`${componentCls}-skeleton`]: {
+ paddingTop: padding
+ },
+ [`${componentCls}-content`]: {
+ color: colorTextHeading,
+ fontSize: contentFontSize,
+ fontFamily,
+ [`${componentCls}-content-value`]: {
+ display: 'inline-block',
+ direction: 'ltr'
+ },
+ [`${componentCls}-content-prefix, ${componentCls}-content-suffix`]: {
+ display: 'inline-block'
+ },
+ [`${componentCls}-content-prefix`]: {
+ marginInlineEnd: marginXXS
+ },
+ [`${componentCls}-content-suffix`]: {
+ marginInlineStart: marginXXS
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var statistic_style = ((0,genComponentStyleHook/* default */.Z)('Statistic', token => {
+ const statisticToken = (0,statistic/* merge */.TS)(token, {});
+ return [genStatisticStyle(statisticToken)];
+}, token => {
+ const {
+ fontSizeHeading3,
+ fontSize
+ } = token;
+ return {
+ titleFontSize: fontSize,
+ contentFontSize: fontSizeHeading3
+ };
+}));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Statistic.js
+"use client";
+
+
+
+
+
+
+
+const Statistic = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ style,
+ valueStyle,
+ value = 0,
+ title,
+ valueRender,
+ prefix,
+ suffix,
+ loading = false,
+ onMouseEnter,
+ onMouseLeave,
+ decimalSeparator = '.',
+ groupSeparator = ','
+ } = props;
+ const {
+ getPrefixCls,
+ direction,
+ statistic
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('statistic', customizePrefixCls);
+ const [wrapSSR, hashId] = statistic_style(prefixCls);
+ const valueNode = /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Number, Object.assign({
+ decimalSeparator: decimalSeparator,
+ groupSeparator: groupSeparator,
+ prefixCls: prefixCls
+ }, props, {
+ value: value
+ }));
+ const cls = _classnames_2_5_1_classnames_default()(prefixCls, {
+ [`${prefixCls}-rtl`]: direction === 'rtl'
+ }, statistic === null || statistic === void 0 ? void 0 : statistic.className, className, rootClassName, hashId);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: cls,
+ style: Object.assign(Object.assign({}, statistic === null || statistic === void 0 ? void 0 : statistic.style), style),
+ onMouseEnter: onMouseEnter,
+ onMouseLeave: onMouseLeave
+ }, title && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-title`
+ }, title), /*#__PURE__*/_react_17_0_2_react.createElement(skeleton/* default */.Z, {
+ paragraph: false,
+ loading: loading,
+ className: `${prefixCls}-skeleton`
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ style: valueStyle,
+ className: `${prefixCls}-content`
+ }, prefix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-prefix`
+ }, prefix), valueRender ? valueRender(valueNode) : valueNode, suffix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-suffix`
+ }, suffix)))));
+};
+if (false) {}
+/* harmony default export */ var statistic_Statistic = (Statistic);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/utils.js
+// Countdown
+const timeUnits = [['Y', 1000 * 60 * 60 * 24 * 365], ['M', 1000 * 60 * 60 * 24 * 30], ['D', 1000 * 60 * 60 * 24], ['H', 1000 * 60 * 60], ['m', 1000 * 60], ['s', 1000], ['S', 1] // million seconds
+];
+
+function formatTimeStr(duration, format) {
+ let leftDuration = duration;
+ const escapeRegex = /\[[^\]]*]/g;
+ const keepList = (format.match(escapeRegex) || []).map(str => str.slice(1, -1));
+ const templateText = format.replace(escapeRegex, '[]');
+ const replacedText = timeUnits.reduce((current, _ref) => {
+ let [name, unit] = _ref;
+ if (current.includes(name)) {
+ const value = Math.floor(leftDuration / unit);
+ leftDuration -= value * unit;
+ return current.replace(new RegExp(`${name}+`, 'g'), match => {
+ const len = match.length;
+ return value.toString().padStart(len, '0');
+ });
+ }
+ return current;
+ }, templateText);
+ let index = 0;
+ return replacedText.replace(escapeRegex, () => {
+ const match = keepList[index];
+ index += 1;
+ return match;
+ });
+}
+function formatCountdown(value, config) {
+ const {
+ format = ''
+ } = config;
+ const target = new Date(value).getTime();
+ const current = Date.now();
+ const diff = Math.max(target - current, 0);
+ return formatTimeStr(diff, format);
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Countdown.js
+"use client";
+
+
+
+
+
+
+const REFRESH_INTERVAL = 1000 / 30;
+function getTime(value) {
+ return new Date(value).getTime();
+}
+const Countdown = props => {
+ const {
+ value,
+ format = 'HH:mm:ss',
+ onChange,
+ onFinish
+ } = props;
+ const forceUpdate = (0,useForceUpdate/* default */.Z)();
+ const countdown = _react_17_0_2_react.useRef(null);
+ const stopTimer = () => {
+ onFinish === null || onFinish === void 0 ? void 0 : onFinish();
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ const syncTimer = () => {
+ const timestamp = getTime(value);
+ if (timestamp >= Date.now()) {
+ countdown.current = setInterval(() => {
+ forceUpdate();
+ onChange === null || onChange === void 0 ? void 0 : onChange(timestamp - Date.now());
+ if (timestamp < Date.now()) {
+ stopTimer();
+ }
+ }, REFRESH_INTERVAL);
+ }
+ };
+ _react_17_0_2_react.useEffect(() => {
+ syncTimer();
+ return () => {
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ }, [value]);
+ const formatter = (formatValue, config) => formatCountdown(formatValue, Object.assign(Object.assign({}, config), {
+ format
+ }));
+ const valueRender = node => (0,reactNode/* cloneElement */.Tm)(node, {
+ title: undefined
+ });
+ return /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Statistic, Object.assign({}, props, {
+ valueRender: valueRender,
+ formatter: formatter
+ }));
+};
+/* harmony default export */ var statistic_Countdown = (/*#__PURE__*/_react_17_0_2_react.memo(Countdown));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/index.js
+"use client";
+
+
+
+statistic_Statistic.Countdown = statistic_Countdown;
+/* harmony default export */ var es_statistic = (statistic_Statistic);
+
+/***/ }),
+
+/***/ 12563:
+/*!*******************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/tag/index.js + 5 modules ***!
+ \*******************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ tag; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseOutlined.js + 1 modules
+var CloseOutlined = __webpack_require__(30449);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/colors.js
+var colors = __webpack_require__(36785);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/hooks/useClosable.js
+var useClosable = __webpack_require__(47729);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/wave/index.js + 4 modules
+var wave = __webpack_require__(14088);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/style/index.js
+
+
+// ============================== Styles ==============================
+const genBaseStyle = token => {
+ const {
+ paddingXXS,
+ lineWidth,
+ tagPaddingHorizontal,
+ componentCls
+ } = token;
+ const paddingInline = tagPaddingHorizontal - lineWidth;
+ const iconMarginInline = paddingXXS - lineWidth;
+ return {
+ // Result
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ display: 'inline-block',
+ height: 'auto',
+ marginInlineEnd: token.marginXS,
+ paddingInline,
+ fontSize: token.tagFontSize,
+ lineHeight: token.tagLineHeight,
+ whiteSpace: 'nowrap',
+ background: token.defaultBg,
+ border: `${token.lineWidth}px ${token.lineType} ${token.colorBorder}`,
+ borderRadius: token.borderRadiusSM,
+ opacity: 1,
+ transition: `all ${token.motionDurationMid}`,
+ textAlign: 'start',
+ position: 'relative',
+ // RTL
+ [`&${componentCls}-rtl`]: {
+ direction: 'rtl'
+ },
+ '&, a, a:hover': {
+ color: token.defaultColor
+ },
+ [`${componentCls}-close-icon`]: {
+ marginInlineStart: iconMarginInline,
+ color: token.colorTextDescription,
+ fontSize: token.tagIconSize,
+ cursor: 'pointer',
+ transition: `all ${token.motionDurationMid}`,
+ '&:hover': {
+ color: token.colorTextHeading
+ }
+ },
+ [`&${componentCls}-has-color`]: {
+ borderColor: 'transparent',
+ [`&, a, a:hover, ${token.iconCls}-close, ${token.iconCls}-close:hover`]: {
+ color: token.colorTextLightSolid
+ }
+ },
+ [`&-checkable`]: {
+ backgroundColor: 'transparent',
+ borderColor: 'transparent',
+ cursor: 'pointer',
+ [`&:not(${componentCls}-checkable-checked):hover`]: {
+ color: token.colorPrimary,
+ backgroundColor: token.colorFillSecondary
+ },
+ '&:active, &-checked': {
+ color: token.colorTextLightSolid
+ },
+ '&-checked': {
+ backgroundColor: token.colorPrimary,
+ '&:hover': {
+ backgroundColor: token.colorPrimaryHover
+ }
+ },
+ '&:active': {
+ backgroundColor: token.colorPrimaryActive
+ }
+ },
+ [`&-hidden`]: {
+ display: 'none'
+ },
+ // To ensure that a space will be placed between character and `Icon`.
+ [`> ${token.iconCls} + span, > span + ${token.iconCls}`]: {
+ marginInlineStart: paddingInline
+ }
+ }),
+ [`${componentCls}-borderless`]: {
+ borderColor: 'transparent',
+ background: token.tagBorderlessBg
+ }
+ };
+};
+// ============================== Export ==============================
+const prepareToken = token => {
+ const {
+ lineWidth,
+ fontSizeIcon
+ } = token;
+ const tagFontSize = token.fontSizeSM;
+ const tagLineHeight = `${token.lineHeightSM * tagFontSize}px`;
+ const tagToken = (0,statistic/* merge */.TS)(token, {
+ tagFontSize,
+ tagLineHeight,
+ tagIconSize: fontSizeIcon - 2 * lineWidth,
+ tagPaddingHorizontal: 8,
+ tagBorderlessBg: token.colorFillTertiary
+ });
+ return tagToken;
+};
+const prepareCommonToken = token => ({
+ defaultBg: token.colorFillQuaternary,
+ defaultColor: token.colorText
+});
+/* harmony default export */ var tag_style = ((0,genComponentStyleHook/* default */.Z)('Tag', token => {
+ const tagToken = prepareToken(token);
+ return genBaseStyle(tagToken);
+}, prepareCommonToken));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/CheckableTag.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+const CheckableTag = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ style,
+ className,
+ checked,
+ onChange,
+ onClick
+ } = props,
+ restProps = __rest(props, ["prefixCls", "style", "className", "checked", "onChange", "onClick"]);
+ const {
+ getPrefixCls,
+ tag
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const handleClick = e => {
+ onChange === null || onChange === void 0 ? void 0 : onChange(!checked);
+ onClick === null || onClick === void 0 ? void 0 : onClick(e);
+ };
+ const prefixCls = getPrefixCls('tag', customizePrefixCls);
+ // Style
+ const [wrapSSR, hashId] = tag_style(prefixCls);
+ const cls = _classnames_2_5_1_classnames_default()(prefixCls, `${prefixCls}-checkable`, {
+ [`${prefixCls}-checkable-checked`]: checked
+ }, tag === null || tag === void 0 ? void 0 : tag.className, className, hashId);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("span", Object.assign({}, restProps, {
+ style: Object.assign(Object.assign({}, style), tag === null || tag === void 0 ? void 0 : tag.style),
+ className: cls,
+ onClick: handleClick
+ })));
+};
+/* harmony default export */ var tag_CheckableTag = (CheckableTag);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genPresetColor.js
+var genPresetColor = __webpack_require__(45157);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/style/presetCmp.js
+// Style as status component
+
+
+// ============================== Preset ==============================
+const genPresetStyle = token => (0,genPresetColor/* default */.Z)(token, (colorKey, _ref) => {
+ let {
+ textColor,
+ lightBorderColor,
+ lightColor,
+ darkColor
+ } = _ref;
+ return {
+ [`${token.componentCls}-${colorKey}`]: {
+ color: textColor,
+ background: lightColor,
+ borderColor: lightBorderColor,
+ // Inverse color
+ '&-inverse': {
+ color: token.colorTextLightSolid,
+ background: darkColor,
+ borderColor: darkColor
+ },
+ [`&${token.componentCls}-borderless`]: {
+ borderColor: 'transparent'
+ }
+ }
+ };
+});
+// ============================== Export ==============================
+/* harmony default export */ var presetCmp = ((0,genComponentStyleHook/* genSubStyleComponent */.b)(['Tag', 'preset'], token => {
+ const tagToken = prepareToken(token);
+ return genPresetStyle(tagToken);
+}, prepareCommonToken));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/capitalize.js
+function capitalize(str) {
+ if (typeof str !== 'string') {
+ return str;
+ }
+ const ret = str.charAt(0).toUpperCase() + str.slice(1);
+ return ret;
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/style/statusCmp.js
+
+
+
+const genTagStatusStyle = (token, status, cssVariableType) => {
+ const capitalizedCssVariableType = capitalize(cssVariableType);
+ return {
+ [`${token.componentCls}-${status}`]: {
+ color: token[`color${cssVariableType}`],
+ background: token[`color${capitalizedCssVariableType}Bg`],
+ borderColor: token[`color${capitalizedCssVariableType}Border`],
+ [`&${token.componentCls}-borderless`]: {
+ borderColor: 'transparent'
+ }
+ }
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var statusCmp = ((0,genComponentStyleHook/* genSubStyleComponent */.b)(['Tag', 'status'], token => {
+ const tagToken = prepareToken(token);
+ return [genTagStatusStyle(tagToken, 'success', 'Success'), genTagStatusStyle(tagToken, 'processing', 'Info'), genTagStatusStyle(tagToken, 'error', 'Error'), genTagStatusStyle(tagToken, 'warning', 'Warning')];
+}, prepareCommonToken));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/index.js
+"use client";
+
+var tag_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+
+
+
+
+
+const InternalTag = (tagProps, ref) => {
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ style,
+ children,
+ icon,
+ color,
+ onClose,
+ closeIcon,
+ closable,
+ bordered = true
+ } = tagProps,
+ props = tag_rest(tagProps, ["prefixCls", "className", "rootClassName", "style", "children", "icon", "color", "onClose", "closeIcon", "closable", "bordered"]);
+ const {
+ getPrefixCls,
+ direction,
+ tag
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const [visible, setVisible] = _react_17_0_2_react.useState(true);
+ // Warning for deprecated usage
+ if (false) {}
+ _react_17_0_2_react.useEffect(() => {
+ if ('visible' in props) {
+ setVisible(props.visible);
+ }
+ }, [props.visible]);
+ const isPreset = (0,colors/* isPresetColor */.o2)(color);
+ const isStatus = (0,colors/* isPresetStatusColor */.yT)(color);
+ const isInternalColor = isPreset || isStatus;
+ const tagStyle = Object.assign(Object.assign({
+ backgroundColor: color && !isInternalColor ? color : undefined
+ }, tag === null || tag === void 0 ? void 0 : tag.style), style);
+ const prefixCls = getPrefixCls('tag', customizePrefixCls);
+ // Style
+ const [wrapSSR, hashId] = tag_style(prefixCls);
+ const tagClassName = _classnames_2_5_1_classnames_default()(prefixCls, tag === null || tag === void 0 ? void 0 : tag.className, {
+ [`${prefixCls}-${color}`]: isInternalColor,
+ [`${prefixCls}-has-color`]: color && !isInternalColor,
+ [`${prefixCls}-hidden`]: !visible,
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-borderless`]: !bordered
+ }, className, rootClassName, hashId);
+ const handleCloseClick = e => {
+ e.stopPropagation();
+ onClose === null || onClose === void 0 ? void 0 : onClose(e);
+ if (e.defaultPrevented) {
+ return;
+ }
+ setVisible(false);
+ };
+ const [, mergedCloseIcon] = (0,useClosable/* default */.Z)(closable, closeIcon, iconNode => iconNode === null ? /*#__PURE__*/_react_17_0_2_react.createElement(CloseOutlined/* default */.Z, {
+ className: `${prefixCls}-close-icon`,
+ onClick: handleCloseClick
+ }) : /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-close-icon`,
+ onClick: handleCloseClick
+ }, iconNode), null, false);
+ const isNeedWave = typeof props.onClick === 'function' || children && children.type === 'a';
+ const iconNode = icon || null;
+ const kids = iconNode ? /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, iconNode, children && /*#__PURE__*/_react_17_0_2_react.createElement("span", null, children)) : children;
+ const tagNode = /*#__PURE__*/_react_17_0_2_react.createElement("span", Object.assign({}, props, {
+ ref: ref,
+ className: tagClassName,
+ style: tagStyle
+ }), kids, mergedCloseIcon, isPreset && /*#__PURE__*/_react_17_0_2_react.createElement(presetCmp, {
+ key: "preset",
+ prefixCls: prefixCls
+ }), isStatus && /*#__PURE__*/_react_17_0_2_react.createElement(statusCmp, {
+ key: "status",
+ prefixCls: prefixCls
+ }));
+ return wrapSSR(isNeedWave ? /*#__PURE__*/_react_17_0_2_react.createElement(wave/* default */.Z, {
+ component: "Tag"
+ }, tagNode) : tagNode);
+};
+const Tag = /*#__PURE__*/_react_17_0_2_react.forwardRef(InternalTag);
+if (false) {}
+Tag.CheckableTag = tag_CheckableTag;
+/* harmony default export */ var tag = (Tag);
+
+/***/ }),
+
+/***/ 51581:
+/*!****************************************************************************************************!*\
+ !*** ./node_modules/_react-infinite-scroller@1.2.4@react-infinite-scroller/dist/InfiniteScroll.js ***!
+ \****************************************************************************************************/
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+
+
+Object.defineProperty(exports, "__esModule", ({
+ value: true
+}));
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _react = __webpack_require__(/*! react */ 59301);
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = __webpack_require__(/*! prop-types */ 12708);
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+var InfiniteScroll = function (_Component) {
+ _inherits(InfiniteScroll, _Component);
+
+ function InfiniteScroll(props) {
+ _classCallCheck(this, InfiniteScroll);
+
+ var _this = _possibleConstructorReturn(this, (InfiniteScroll.__proto__ || Object.getPrototypeOf(InfiniteScroll)).call(this, props));
+
+ _this.scrollListener = _this.scrollListener.bind(_this);
+ _this.eventListenerOptions = _this.eventListenerOptions.bind(_this);
+ _this.mousewheelListener = _this.mousewheelListener.bind(_this);
+ return _this;
+ }
+
+ _createClass(InfiniteScroll, [{
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ this.pageLoaded = this.props.pageStart;
+ this.options = this.eventListenerOptions();
+ this.attachScrollListener();
+ }
+ }, {
+ key: 'componentDidUpdate',
+ value: function componentDidUpdate() {
+ if (this.props.isReverse && this.loadMore) {
+ var parentElement = this.getParentElement(this.scrollComponent);
+ parentElement.scrollTop = parentElement.scrollHeight - this.beforeScrollHeight + this.beforeScrollTop;
+ this.loadMore = false;
+ }
+ this.attachScrollListener();
+ }
+ }, {
+ key: 'componentWillUnmount',
+ value: function componentWillUnmount() {
+ this.detachScrollListener();
+ this.detachMousewheelListener();
+ }
+ }, {
+ key: 'isPassiveSupported',
+ value: function isPassiveSupported() {
+ var passive = false;
+
+ var testOptions = {
+ get passive() {
+ passive = true;
+ }
+ };
+
+ try {
+ document.addEventListener('test', null, testOptions);
+ document.removeEventListener('test', null, testOptions);
+ } catch (e) {
+ // ignore
+ }
+ return passive;
+ }
+ }, {
+ key: 'eventListenerOptions',
+ value: function eventListenerOptions() {
+ var options = this.props.useCapture;
+
+ if (this.isPassiveSupported()) {
+ options = {
+ useCapture: this.props.useCapture,
+ passive: true
+ };
+ }
+ return options;
+ }
+
+ // Set a defaut loader for all your `InfiniteScroll` components
+
+ }, {
+ key: 'setDefaultLoader',
+ value: function setDefaultLoader(loader) {
+ this.defaultLoader = loader;
+ }
+ }, {
+ key: 'detachMousewheelListener',
+ value: function detachMousewheelListener() {
+ var scrollEl = window;
+ if (this.props.useWindow === false) {
+ scrollEl = this.scrollComponent.parentNode;
+ }
+
+ scrollEl.removeEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);
+ }
+ }, {
+ key: 'detachScrollListener',
+ value: function detachScrollListener() {
+ var scrollEl = window;
+ if (this.props.useWindow === false) {
+ scrollEl = this.getParentElement(this.scrollComponent);
+ }
+
+ scrollEl.removeEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);
+ scrollEl.removeEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);
+ }
+ }, {
+ key: 'getParentElement',
+ value: function getParentElement(el) {
+ var scrollParent = this.props.getScrollParent && this.props.getScrollParent();
+ if (scrollParent != null) {
+ return scrollParent;
+ }
+ return el && el.parentNode;
+ }
+ }, {
+ key: 'filterProps',
+ value: function filterProps(props) {
+ return props;
+ }
+ }, {
+ key: 'attachScrollListener',
+ value: function attachScrollListener() {
+ var parentElement = this.getParentElement(this.scrollComponent);
+
+ if (!this.props.hasMore || !parentElement) {
+ return;
+ }
+
+ var scrollEl = window;
+ if (this.props.useWindow === false) {
+ scrollEl = parentElement;
+ }
+
+ scrollEl.addEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);
+ scrollEl.addEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);
+ scrollEl.addEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);
+
+ if (this.props.initialLoad) {
+ this.scrollListener();
+ }
+ }
+ }, {
+ key: 'mousewheelListener',
+ value: function mousewheelListener(e) {
+ // Prevents Chrome hangups
+ // See: https://stackoverflow.com/questions/47524205/random-high-content-download-time-in-chrome/47684257#47684257
+ if (e.deltaY === 1 && !this.isPassiveSupported()) {
+ e.preventDefault();
+ }
+ }
+ }, {
+ key: 'scrollListener',
+ value: function scrollListener() {
+ var el = this.scrollComponent;
+ var scrollEl = window;
+ var parentNode = this.getParentElement(el);
+
+ var offset = void 0;
+ if (this.props.useWindow) {
+ var doc = document.documentElement || document.body.parentNode || document.body;
+ var scrollTop = scrollEl.pageYOffset !== undefined ? scrollEl.pageYOffset : doc.scrollTop;
+ if (this.props.isReverse) {
+ offset = scrollTop;
+ } else {
+ offset = this.calculateOffset(el, scrollTop);
+ }
+ } else if (this.props.isReverse) {
+ offset = parentNode.scrollTop;
+ } else {
+ offset = el.scrollHeight - parentNode.scrollTop - parentNode.clientHeight;
+ }
+
+ // Here we make sure the element is visible as well as checking the offset
+ if (offset < Number(this.props.threshold) && el && el.offsetParent !== null) {
+ this.detachScrollListener();
+ this.beforeScrollHeight = parentNode.scrollHeight;
+ this.beforeScrollTop = parentNode.scrollTop;
+ // Call loadMore after detachScrollListener to allow for non-async loadMore functions
+ if (typeof this.props.loadMore === 'function') {
+ this.props.loadMore(this.pageLoaded += 1);
+ this.loadMore = true;
+ }
+ }
+ }
+ }, {
+ key: 'calculateOffset',
+ value: function calculateOffset(el, scrollTop) {
+ if (!el) {
+ return 0;
+ }
+
+ return this.calculateTopPosition(el) + (el.offsetHeight - scrollTop - window.innerHeight);
+ }
+ }, {
+ key: 'calculateTopPosition',
+ value: function calculateTopPosition(el) {
+ if (!el) {
+ return 0;
+ }
+ return el.offsetTop + this.calculateTopPosition(el.offsetParent);
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _this2 = this;
+
+ var renderProps = this.filterProps(this.props);
+
+ var children = renderProps.children,
+ element = renderProps.element,
+ hasMore = renderProps.hasMore,
+ initialLoad = renderProps.initialLoad,
+ isReverse = renderProps.isReverse,
+ loader = renderProps.loader,
+ loadMore = renderProps.loadMore,
+ pageStart = renderProps.pageStart,
+ ref = renderProps.ref,
+ threshold = renderProps.threshold,
+ useCapture = renderProps.useCapture,
+ useWindow = renderProps.useWindow,
+ getScrollParent = renderProps.getScrollParent,
+ props = _objectWithoutProperties(renderProps, ['children', 'element', 'hasMore', 'initialLoad', 'isReverse', 'loader', 'loadMore', 'pageStart', 'ref', 'threshold', 'useCapture', 'useWindow', 'getScrollParent']);
+
+ props.ref = function (node) {
+ _this2.scrollComponent = node;
+ if (ref) {
+ ref(node);
+ }
+ };
+
+ var childrenArray = [children];
+ if (hasMore) {
+ if (loader) {
+ isReverse ? childrenArray.unshift(loader) : childrenArray.push(loader);
+ } else if (this.defaultLoader) {
+ isReverse ? childrenArray.unshift(this.defaultLoader) : childrenArray.push(this.defaultLoader);
+ }
+ }
+ return _react2.default.createElement(element, props, childrenArray);
+ }
+ }]);
+
+ return InfiniteScroll;
+}(_react.Component);
+
+InfiniteScroll.propTypes = {
+ children: _propTypes2.default.node.isRequired,
+ element: _propTypes2.default.node,
+ hasMore: _propTypes2.default.bool,
+ initialLoad: _propTypes2.default.bool,
+ isReverse: _propTypes2.default.bool,
+ loader: _propTypes2.default.node,
+ loadMore: _propTypes2.default.func.isRequired,
+ pageStart: _propTypes2.default.number,
+ ref: _propTypes2.default.func,
+ getScrollParent: _propTypes2.default.func,
+ threshold: _propTypes2.default.number,
+ useCapture: _propTypes2.default.bool,
+ useWindow: _propTypes2.default.bool
+};
+InfiniteScroll.defaultProps = {
+ element: 'div',
+ hasMore: false,
+ initialLoad: true,
+ pageStart: 0,
+ ref: null,
+ threshold: 250,
+ useWindow: true,
+ isReverse: false,
+ useCapture: false,
+ loader: null,
+ getScrollParent: null
+};
+exports["default"] = InfiniteScroll;
+module.exports = exports['default'];
+
+
+/***/ }),
+
+/***/ 26724:
+/*!**************************************************************************************!*\
+ !*** ./node_modules/_react-infinite-scroller@1.2.4@react-infinite-scroller/index.js ***!
+ \**************************************************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+module.exports = __webpack_require__(/*! ./dist/InfiniteScroll */ 51581)
+
+
+/***/ })
+
+}]);
\ No newline at end of file
diff --git a/59376.async.js b/27476.async.js
similarity index 99%
rename from 59376.async.js
rename to 27476.async.js
index 411e20ec37..1df45660a8 100644
--- a/59376.async.js
+++ b/27476.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[59376],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[27476],{
-/***/ 80045:
+/***/ 51954:
/*!*******************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules ***!
\*******************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ExclamationCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
// This icon file is generated automatically.
var ExclamationCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }, { "tag": "path", "attrs": { "d": "M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z" } }] }, "name": "exclamation-circle", "theme": "outlined" };
/* harmony default export */ var asn_ExclamationCircleOutlined = (ExclamationCircleOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 15997:
+/***/ 41435:
/*!*****************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules ***!
\*****************************************************************************************************/
@@ -55,11 +55,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_EyeOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeOutlined.js
// This icon file is generated automatically.
var EyeOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z" } }] }, "name": "eye", "theme": "outlined" };
/* harmony default export */ var asn_EyeOutlined = (EyeOutlined);
@@ -85,7 +85,7 @@ if (false) {}
/***/ }),
-/***/ 1056:
+/***/ 11694:
/*!*********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules ***!
\*********************************************************************/
@@ -155,9 +155,9 @@ const Group = props => {
/* harmony default export */ var input_Group = (Group);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/Input.js + 1 modules
var Input = __webpack_require__(9432);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
// This icon file is generated automatically.
var EyeInvisibleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z" } }, { "tag": "path", "attrs": { "d": "M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z" } }] }, "name": "eye-invisible", "theme": "outlined" };
/* harmony default export */ var asn_EyeInvisibleOutlined = (EyeInvisibleOutlined);
@@ -181,7 +181,7 @@ var EyeInvisibleOutlined_EyeInvisibleOutlined = function EyeInvisibleOutlined(pr
if (false) {}
/* harmony default export */ var icons_EyeInvisibleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(EyeInvisibleOutlined_EyeInvisibleOutlined));
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules
-var EyeOutlined = __webpack_require__(15997);
+var EyeOutlined = __webpack_require__(41435);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
@@ -303,7 +303,7 @@ const Password = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
if (false) {}
/* harmony default export */ var input_Password = (Password);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SearchOutlined.js + 1 modules
-var SearchOutlined = __webpack_require__(46820);
+var SearchOutlined = __webpack_require__(23097);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
diff --git a/27739.async.js b/27739.async.js
index 88c42521c5..5b65b04ed6 100644
--- a/27739.async.js
+++ b/27739.async.js
@@ -45,7 +45,7 @@ var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
-var DownOutlined = __webpack_require__(42884);
+var DownOutlined = __webpack_require__(8415);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
var dropdown = __webpack_require__(91857);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
@@ -763,7 +763,7 @@ if (false) {}
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony import */ var _layout__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./layout */ 84966);
-/* harmony import */ var _Sider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Sider */ 37534);
+/* harmony import */ var _Sider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Sider */ 32234);
"use client";
@@ -1010,7 +1010,7 @@ __webpack_require__.d(__webpack_exports__, {
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseOutlined.js + 1 modules
-var CloseOutlined = __webpack_require__(99174);
+var CloseOutlined = __webpack_require__(30449);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
diff --git a/16856.async.js b/27919.async.js
similarity index 97%
rename from 16856.async.js
rename to 27919.async.js
index 0cd97af707..dfa922dcba 100644
--- a/16856.async.js
+++ b/27919.async.js
@@ -1,6 +1,6 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[16856,19523,18900,34712,66469,10375,64802,34668],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[27919,50387,77580,63798,68556,33807,94766,88766],{
-/***/ 98915:
+/***/ 50320:
/*!***********************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ArrowDownOutlined.js + 1 modules ***!
\***********************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ArrowDownOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/ArrowDownOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ArrowDownOutlined.js
// This icon file is generated automatically.
var ArrowDownOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M862 465.3h-81c-4.6 0-9 2-12.1 5.5L550 723.1V160c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v563.1L255.1 470.8c-3-3.5-7.4-5.5-12.1-5.5h-81c-6.8 0-10.5 8.1-6 13.2L487.9 861a31.96 31.96 0 0048.3 0L868 478.5c4.5-5.2.8-13.2-6-13.2z" } }] }, "name": "arrow-down", "theme": "outlined" };
/* harmony default export */ var asn_ArrowDownOutlined = (ArrowDownOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 75769:
+/***/ 150:
/*!*******************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CheckOutlined.js + 1 modules ***!
\*******************************************************************************************************/
@@ -56,11 +56,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_CheckOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/CheckOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/CheckOutlined.js
// This icon file is generated automatically.
var CheckOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z" } }] }, "name": "check", "theme": "outlined" };
/* harmony default export */ var asn_CheckOutlined = (CheckOutlined);
@@ -86,7 +86,7 @@ if (false) {}
/***/ }),
-/***/ 15997:
+/***/ 41435:
/*!*****************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules ***!
\*****************************************************************************************************/
@@ -99,11 +99,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_EyeOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeOutlined.js
// This icon file is generated automatically.
var EyeOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z" } }] }, "name": "eye", "theme": "outlined" };
/* harmony default export */ var asn_EyeOutlined = (EyeOutlined);
@@ -129,7 +129,7 @@ if (false) {}
/***/ }),
-/***/ 80354:
+/***/ 48238:
/*!************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js + 1 modules ***!
\************************************************************************************************************/
@@ -142,11 +142,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_FolderOpenOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/FolderOpenOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/FolderOpenOutlined.js
// This icon file is generated automatically.
var FolderOpenOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z" } }] }, "name": "folder-open", "theme": "outlined" };
/* harmony default export */ var asn_FolderOpenOutlined = (FolderOpenOutlined);
@@ -212,7 +212,7 @@ var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_c
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EllipsisOutlined.js + 1 modules
-var EllipsisOutlined = __webpack_require__(93319);
+var EllipsisOutlined = __webpack_require__(12440);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
@@ -351,7 +351,7 @@ Dropdown.Button = dropdown_button;
/***/ }),
-/***/ 1056:
+/***/ 11694:
/*!*********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules ***!
\*********************************************************************/
@@ -422,9 +422,9 @@ const Group = props => {
/* harmony default export */ var input_Group = (Group);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/Input.js + 1 modules
var Input = __webpack_require__(9432);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
// This icon file is generated automatically.
var EyeInvisibleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z" } }, { "tag": "path", "attrs": { "d": "M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z" } }] }, "name": "eye-invisible", "theme": "outlined" };
/* harmony default export */ var asn_EyeInvisibleOutlined = (EyeInvisibleOutlined);
@@ -448,7 +448,7 @@ var EyeInvisibleOutlined_EyeInvisibleOutlined = function EyeInvisibleOutlined(pr
if (false) {}
/* harmony default export */ var icons_EyeInvisibleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(EyeInvisibleOutlined_EyeInvisibleOutlined));
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules
-var EyeOutlined = __webpack_require__(15997);
+var EyeOutlined = __webpack_require__(41435);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
@@ -570,7 +570,7 @@ const Password = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
if (false) {}
/* harmony default export */ var input_Password = (Password);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SearchOutlined.js + 1 modules
-var SearchOutlined = __webpack_require__(46820);
+var SearchOutlined = __webpack_require__(23097);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
@@ -940,7 +940,7 @@ CompoundedSpace.Compact = Compact/* default */.ZP;
/* harmony export */ Fm: function() { return /* binding */ initMoveMotion; }
/* harmony export */ });
/* unused harmony exports moveDownIn, moveDownOut, moveLeftIn, moveLeftOut, moveRightIn, moveRightOut, moveUpIn, moveUpOut */
-/* harmony import */ var _ant_design_cssinjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @ant-design/cssinjs */ 3775);
+/* harmony import */ var _ant_design_cssinjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @ant-design/cssinjs */ 78600);
/* harmony import */ var _motion__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./motion */ 95406);
@@ -1083,7 +1083,7 @@ const initMoveMotion = (token, motionName) => {
/***/ }),
-/***/ 51218:
+/***/ 66328:
/*!********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/tree/index.js + 8 modules ***!
\********************************************************************/
@@ -1097,18 +1097,18 @@ __webpack_require__.d(__webpack_exports__, {
});
// EXTERNAL MODULE: ./node_modules/_rc-tree@5.7.12@rc-tree/es/index.js + 7 modules
-var es = __webpack_require__(91265);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
+var es = __webpack_require__(11548);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FileOutlined.js + 1 modules
-var FileOutlined = __webpack_require__(87970);
+var FileOutlined = __webpack_require__(26298);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js + 1 modules
-var FolderOpenOutlined = __webpack_require__(80354);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+var FolderOpenOutlined = __webpack_require__(48238);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/FolderOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/FolderOutlined.js
// This icon file is generated automatically.
var FolderOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z" } }] }, "name": "folder", "theme": "outlined" };
/* harmony default export */ var asn_FolderOutlined = (FolderOutlined);
@@ -1140,7 +1140,7 @@ var util = __webpack_require__(35654);
var treeUtil = __webpack_require__(71430);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/HolderOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/HolderOutlined.js
// This icon file is generated automatically.
var HolderOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z" } }] }, "name": "holder", "theme": "outlined" };
/* harmony default export */ var asn_HolderOutlined = (HolderOutlined);
@@ -1203,7 +1203,7 @@ function dropIndicatorRender(props) {
});
}
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/utils/iconUtil.js + 2 modules
-var iconUtil = __webpack_require__(1711);
+var iconUtil = __webpack_require__(4006);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/Tree.js
"use client";
diff --git a/2833.async.js b/2833.async.js
new file mode 100644
index 0000000000..dbdbbe62ff
--- /dev/null
+++ b/2833.async.js
@@ -0,0 +1,810 @@
+"use strict";
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[2833],{
+
+/***/ 51954:
+/*!*******************************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules ***!
+ \*******************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_ExclamationCircleOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
+// This icon file is generated automatically.
+var ExclamationCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }, { "tag": "path", "attrs": { "d": "M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z" } }] }, "name": "exclamation-circle", "theme": "outlined" };
+/* harmony default export */ var asn_ExclamationCircleOutlined = (ExclamationCircleOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var ExclamationCircleOutlined_ExclamationCircleOutlined = function ExclamationCircleOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_ExclamationCircleOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_ExclamationCircleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(ExclamationCircleOutlined_ExclamationCircleOutlined));
+
+/***/ }),
+
+/***/ 28103:
+/*!***********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/divider/index.js + 1 modules ***!
+ \***********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ divider; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/style/index.js
+
+
+// ============================== Shared ==============================
+const genSharedDividerStyle = token => {
+ const {
+ componentCls,
+ sizePaddingEdgeHorizontal,
+ colorSplit,
+ lineWidth,
+ textPaddingInline,
+ orientationMargin,
+ verticalMarginInline
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ borderBlockStart: `${lineWidth}px solid ${colorSplit}`,
+ // vertical
+ '&-vertical': {
+ position: 'relative',
+ top: '-0.06em',
+ display: 'inline-block',
+ height: '0.9em',
+ marginInline: verticalMarginInline,
+ marginBlock: 0,
+ verticalAlign: 'middle',
+ borderTop: 0,
+ borderInlineStart: `${lineWidth}px solid ${colorSplit}`
+ },
+ '&-horizontal': {
+ display: 'flex',
+ clear: 'both',
+ width: '100%',
+ minWidth: '100%',
+ margin: `${token.dividerHorizontalGutterMargin}px 0`
+ },
+ [`&-horizontal${componentCls}-with-text`]: {
+ display: 'flex',
+ alignItems: 'center',
+ margin: `${token.dividerHorizontalWithTextGutterMargin}px 0`,
+ color: token.colorTextHeading,
+ fontWeight: 500,
+ fontSize: token.fontSizeLG,
+ whiteSpace: 'nowrap',
+ textAlign: 'center',
+ borderBlockStart: `0 ${colorSplit}`,
+ '&::before, &::after': {
+ position: 'relative',
+ width: '50%',
+ borderBlockStart: `${lineWidth}px solid transparent`,
+ // Chrome not accept `inherit` in `border-top`
+ borderBlockStartColor: 'inherit',
+ borderBlockEnd: 0,
+ transform: 'translateY(50%)',
+ content: "''"
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-left`]: {
+ '&::before': {
+ width: `${orientationMargin * 100}%`
+ },
+ '&::after': {
+ width: `${100 - orientationMargin * 100}%`
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-right`]: {
+ '&::before': {
+ width: `${100 - orientationMargin * 100}%`
+ },
+ '&::after': {
+ width: `${orientationMargin * 100}%`
+ }
+ },
+ [`${componentCls}-inner-text`]: {
+ display: 'inline-block',
+ paddingBlock: 0,
+ paddingInline: textPaddingInline
+ },
+ '&-dashed': {
+ background: 'none',
+ borderColor: colorSplit,
+ borderStyle: 'dashed',
+ borderWidth: `${lineWidth}px 0 0`
+ },
+ [`&-horizontal${componentCls}-with-text${componentCls}-dashed`]: {
+ '&::before, &::after': {
+ borderStyle: 'dashed none none'
+ }
+ },
+ [`&-vertical${componentCls}-dashed`]: {
+ borderInlineStartWidth: lineWidth,
+ borderInlineEnd: 0,
+ borderBlockStart: 0,
+ borderBlockEnd: 0
+ },
+ [`&-plain${componentCls}-with-text`]: {
+ color: token.colorText,
+ fontWeight: 'normal',
+ fontSize: token.fontSize
+ },
+ [`&-horizontal${componentCls}-with-text-left${componentCls}-no-default-orientation-margin-left`]: {
+ '&::before': {
+ width: 0
+ },
+ '&::after': {
+ width: '100%'
+ },
+ [`${componentCls}-inner-text`]: {
+ paddingInlineStart: sizePaddingEdgeHorizontal
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-right${componentCls}-no-default-orientation-margin-right`]: {
+ '&::before': {
+ width: '100%'
+ },
+ '&::after': {
+ width: 0
+ },
+ [`${componentCls}-inner-text`]: {
+ paddingInlineEnd: sizePaddingEdgeHorizontal
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var divider_style = ((0,genComponentStyleHook/* default */.Z)('Divider', token => {
+ const dividerToken = (0,statistic/* merge */.TS)(token, {
+ dividerHorizontalWithTextGutterMargin: token.margin,
+ dividerHorizontalGutterMargin: token.marginLG,
+ sizePaddingEdgeHorizontal: 0
+ });
+ return [genSharedDividerStyle(dividerToken)];
+}, token => ({
+ textPaddingInline: '1em',
+ orientationMargin: 0.05,
+ verticalMarginInline: token.marginXS
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+const Divider = props => {
+ const {
+ getPrefixCls,
+ direction,
+ divider
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ type = 'horizontal',
+ orientation = 'center',
+ orientationMargin,
+ className,
+ rootClassName,
+ children,
+ dashed,
+ plain,
+ style
+ } = props,
+ restProps = __rest(props, ["prefixCls", "type", "orientation", "orientationMargin", "className", "rootClassName", "children", "dashed", "plain", "style"]);
+ const prefixCls = getPrefixCls('divider', customizePrefixCls);
+ const [wrapSSR, hashId] = divider_style(prefixCls);
+ const orientationPrefix = orientation.length > 0 ? `-${orientation}` : orientation;
+ const hasChildren = !!children;
+ const hasCustomMarginLeft = orientation === 'left' && orientationMargin != null;
+ const hasCustomMarginRight = orientation === 'right' && orientationMargin != null;
+ const classString = _classnames_2_5_1_classnames_default()(prefixCls, divider === null || divider === void 0 ? void 0 : divider.className, hashId, `${prefixCls}-${type}`, {
+ [`${prefixCls}-with-text`]: hasChildren,
+ [`${prefixCls}-with-text${orientationPrefix}`]: hasChildren,
+ [`${prefixCls}-dashed`]: !!dashed,
+ [`${prefixCls}-plain`]: !!plain,
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-no-default-orientation-margin-left`]: hasCustomMarginLeft,
+ [`${prefixCls}-no-default-orientation-margin-right`]: hasCustomMarginRight
+ }, className, rootClassName);
+ const memoizedOrientationMargin = _react_17_0_2_react.useMemo(() => {
+ if (typeof orientationMargin === 'number') {
+ return orientationMargin;
+ }
+ if (/^\d+$/.test(orientationMargin)) {
+ return Number(orientationMargin);
+ }
+ return orientationMargin;
+ }, [orientationMargin]);
+ const innerStyle = Object.assign(Object.assign({}, hasCustomMarginLeft && {
+ marginLeft: memoizedOrientationMargin
+ }), hasCustomMarginRight && {
+ marginRight: memoizedOrientationMargin
+ });
+ // Warning children not work in vertical mode
+ if (false) {}
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", Object.assign({
+ className: classString,
+ style: Object.assign(Object.assign({}, divider === null || divider === void 0 ? void 0 : divider.style), style)
+ }, restProps, {
+ role: "separator"
+ }), children && type !== 'vertical' && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-inner-text`,
+ style: innerStyle
+ }, children)));
+};
+if (false) {}
+/* harmony default export */ var divider = (Divider);
+
+/***/ }),
+
+/***/ 57809:
+/*!**********************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/select/index.js ***!
+ \**********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var rc_select__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rc-select */ 77861);
+/* harmony import */ var rc_util_es_omit__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! rc-util/es/omit */ 99468);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _util_PurePanel__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../_util/PurePanel */ 53487);
+/* harmony import */ var _util_motion__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../_util/motion */ 62892);
+/* harmony import */ var _util_statusUtils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../_util/statusUtils */ 19080);
+/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../config-provider */ 36355);
+/* harmony import */ var _config_provider_DisabledContext__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../config-provider/DisabledContext */ 1684);
+/* harmony import */ var _config_provider_defaultRenderEmpty__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../config-provider/defaultRenderEmpty */ 93891);
+/* harmony import */ var _config_provider_hooks_useSize__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../config-provider/hooks/useSize */ 19716);
+/* harmony import */ var _form_context__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../form/context */ 32441);
+/* harmony import */ var _space_Compact__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../space/Compact */ 33234);
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./style */ 14154);
+/* harmony import */ var _useBuiltinPlacements__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./useBuiltinPlacements */ 58582);
+/* harmony import */ var _useShowArrow__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./useShowArrow */ 84443);
+/* harmony import */ var _utils_iconUtil__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./utils/iconUtil */ 66339);
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+// TODO: 4.0 - codemod should help to change `filterOption` to support node props.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+const SECRET_COMBOBOX_MODE_DO_NOT_USE = 'SECRET_COMBOBOX_MODE_DO_NOT_USE';
+const InternalSelect = (_a, ref) => {
+ var _b;
+ var {
+ prefixCls: customizePrefixCls,
+ bordered = true,
+ className,
+ rootClassName,
+ getPopupContainer,
+ popupClassName,
+ dropdownClassName,
+ listHeight = 256,
+ placement,
+ listItemHeight = 24,
+ size: customizeSize,
+ disabled: customDisabled,
+ notFoundContent,
+ status: customStatus,
+ builtinPlacements,
+ dropdownMatchSelectWidth,
+ popupMatchSelectWidth,
+ direction: propDirection,
+ style,
+ allowClear
+ } = _a,
+ props = __rest(_a, ["prefixCls", "bordered", "className", "rootClassName", "getPopupContainer", "popupClassName", "dropdownClassName", "listHeight", "placement", "listItemHeight", "size", "disabled", "notFoundContent", "status", "builtinPlacements", "dropdownMatchSelectWidth", "popupMatchSelectWidth", "direction", "style", "allowClear"]);
+ const {
+ getPopupContainer: getContextPopupContainer,
+ getPrefixCls,
+ renderEmpty,
+ direction: contextDirection,
+ virtual,
+ popupMatchSelectWidth: contextPopupMatchSelectWidth,
+ popupOverflow,
+ select
+ } = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_3__/* .ConfigContext */ .E_);
+ const prefixCls = getPrefixCls('select', customizePrefixCls);
+ const rootPrefixCls = getPrefixCls();
+ const direction = propDirection !== null && propDirection !== void 0 ? propDirection : contextDirection;
+ const {
+ compactSize,
+ compactItemClassnames
+ } = (0,_space_Compact__WEBPACK_IMPORTED_MODULE_4__/* .useCompactItemContext */ .ri)(prefixCls, direction);
+ const [wrapSSR, hashId] = (0,_style__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)(prefixCls);
+ const mode = react__WEBPACK_IMPORTED_MODULE_2__.useMemo(() => {
+ const {
+ mode: m
+ } = props;
+ if (m === 'combobox') {
+ return undefined;
+ }
+ if (m === SECRET_COMBOBOX_MODE_DO_NOT_USE) {
+ return 'combobox';
+ }
+ return m;
+ }, [props.mode]);
+ const isMultiple = mode === 'multiple' || mode === 'tags';
+ const showSuffixIcon = (0,_useShowArrow__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z)(props.suffixIcon, props.showArrow);
+ const mergedPopupMatchSelectWidth = (_b = popupMatchSelectWidth !== null && popupMatchSelectWidth !== void 0 ? popupMatchSelectWidth : dropdownMatchSelectWidth) !== null && _b !== void 0 ? _b : contextPopupMatchSelectWidth;
+ // ===================== Form Status =====================
+ const {
+ status: contextStatus,
+ hasFeedback,
+ isFormItemInput,
+ feedbackIcon
+ } = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_form_context__WEBPACK_IMPORTED_MODULE_7__/* .FormItemInputContext */ .aM);
+ const mergedStatus = (0,_util_statusUtils__WEBPACK_IMPORTED_MODULE_8__/* .getMergedStatus */ .F)(contextStatus, customStatus);
+ // ===================== Empty =====================
+ let mergedNotFound;
+ if (notFoundContent !== undefined) {
+ mergedNotFound = notFoundContent;
+ } else if (mode === 'combobox') {
+ mergedNotFound = null;
+ } else {
+ mergedNotFound = (renderEmpty === null || renderEmpty === void 0 ? void 0 : renderEmpty('Select')) || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(_config_provider_defaultRenderEmpty__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {
+ componentName: "Select"
+ });
+ }
+ // ===================== Icons =====================
+ const {
+ suffixIcon,
+ itemIcon,
+ removeIcon,
+ clearIcon
+ } = (0,_utils_iconUtil__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z)(Object.assign(Object.assign({}, props), {
+ multiple: isMultiple,
+ hasFeedback,
+ feedbackIcon,
+ showSuffixIcon,
+ prefixCls,
+ showArrow: props.showArrow,
+ componentName: 'Select'
+ }));
+ const mergedAllowClear = allowClear === true ? {
+ clearIcon
+ } : allowClear;
+ const selectProps = (0,rc_util_es_omit__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z)(props, ['suffixIcon', 'itemIcon']);
+ const rcSelectRtlDropdownClassName = classnames__WEBPACK_IMPORTED_MODULE_0___default()(popupClassName || dropdownClassName, {
+ [`${prefixCls}-dropdown-${direction}`]: direction === 'rtl'
+ }, rootClassName, hashId);
+ const mergedSize = (0,_config_provider_hooks_useSize__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z)(ctx => {
+ var _a;
+ return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : compactSize) !== null && _a !== void 0 ? _a : ctx;
+ });
+ // ===================== Disabled =====================
+ const disabled = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_config_provider_DisabledContext__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z);
+ const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;
+ const mergedClassName = classnames__WEBPACK_IMPORTED_MODULE_0___default()({
+ [`${prefixCls}-lg`]: mergedSize === 'large',
+ [`${prefixCls}-sm`]: mergedSize === 'small',
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-borderless`]: !bordered,
+ [`${prefixCls}-in-form-item`]: isFormItemInput
+ }, (0,_util_statusUtils__WEBPACK_IMPORTED_MODULE_8__/* .getStatusClassNames */ .Z)(prefixCls, mergedStatus, hasFeedback), compactItemClassnames, select === null || select === void 0 ? void 0 : select.className, className, rootClassName, hashId);
+ // ===================== Placement =====================
+ const memoPlacement = react__WEBPACK_IMPORTED_MODULE_2__.useMemo(() => {
+ if (placement !== undefined) {
+ return placement;
+ }
+ return direction === 'rtl' ? 'bottomRight' : 'bottomLeft';
+ }, [placement, direction]);
+ const mergedBuiltinPlacements = (0,_useBuiltinPlacements__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z)(builtinPlacements, popupOverflow);
+ // ====================== Warning ======================
+ if (false) {}
+ // ====================== Render =======================
+ return wrapSSR( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(rc_select__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .ZP, Object.assign({
+ ref: ref,
+ virtual: virtual,
+ showSearch: select === null || select === void 0 ? void 0 : select.showSearch
+ }, selectProps, {
+ style: Object.assign(Object.assign({}, select === null || select === void 0 ? void 0 : select.style), style),
+ dropdownMatchSelectWidth: mergedPopupMatchSelectWidth,
+ builtinPlacements: mergedBuiltinPlacements,
+ transitionName: (0,_util_motion__WEBPACK_IMPORTED_MODULE_15__/* .getTransitionName */ .m)(rootPrefixCls, 'slide-up', props.transitionName),
+ listHeight: listHeight,
+ listItemHeight: listItemHeight,
+ mode: mode,
+ prefixCls: prefixCls,
+ placement: memoPlacement,
+ direction: direction,
+ suffixIcon: suffixIcon,
+ menuItemSelectedIcon: itemIcon,
+ removeIcon: removeIcon,
+ allowClear: mergedAllowClear,
+ notFoundContent: mergedNotFound,
+ className: mergedClassName,
+ getPopupContainer: getPopupContainer || getContextPopupContainer,
+ dropdownClassName: rcSelectRtlDropdownClassName,
+ disabled: mergedDisabled
+ })));
+};
+if (false) {}
+const Select = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.forwardRef(InternalSelect);
+// We don't care debug panel
+/* istanbul ignore next */
+const PurePanel = (0,_util_PurePanel__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z)(Select);
+Select.SECRET_COMBOBOX_MODE_DO_NOT_USE = SECRET_COMBOBOX_MODE_DO_NOT_USE;
+Select.Option = rc_select__WEBPACK_IMPORTED_MODULE_1__/* .Option */ .Wx;
+Select.OptGroup = rc_select__WEBPACK_IMPORTED_MODULE_1__/* .OptGroup */ .Xo;
+Select._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;
+if (false) {}
+/* harmony default export */ __webpack_exports__["default"] = (Select);
+
+/***/ }),
+
+/***/ 31561:
+/*!*****************************************************************************!*\
+ !*** ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/index.js + 4 modules ***!
+ \*****************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ _rc_dropdown_4_1_0_rc_dropdown_es; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/index.js + 11 modules
+var es = __webpack_require__(35593);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
+var es_ref = __webpack_require__(88831);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/raf.js
+var raf = __webpack_require__(90571);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/hooks/useAccessibility.js
+
+
+
+var ESC = KeyCode/* default */.Z.ESC,
+ TAB = KeyCode/* default */.Z.TAB;
+function useAccessibility(_ref) {
+ var visible = _ref.visible,
+ triggerRef = _ref.triggerRef,
+ onVisibleChange = _ref.onVisibleChange,
+ autoFocus = _ref.autoFocus,
+ overlayRef = _ref.overlayRef;
+ var focusMenuRef = _react_17_0_2_react.useRef(false);
+ var handleCloseMenuAndReturnFocus = function handleCloseMenuAndReturnFocus() {
+ if (visible) {
+ var _triggerRef$current, _triggerRef$current$f;
+ (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$f = _triggerRef$current.focus) === null || _triggerRef$current$f === void 0 ? void 0 : _triggerRef$current$f.call(_triggerRef$current);
+ onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(false);
+ }
+ };
+ var focusMenu = function focusMenu() {
+ var _overlayRef$current;
+ if ((_overlayRef$current = overlayRef.current) !== null && _overlayRef$current !== void 0 && _overlayRef$current.focus) {
+ overlayRef.current.focus();
+ focusMenuRef.current = true;
+ return true;
+ }
+ return false;
+ };
+ var handleKeyDown = function handleKeyDown(event) {
+ switch (event.keyCode) {
+ case ESC:
+ handleCloseMenuAndReturnFocus();
+ break;
+ case TAB:
+ {
+ var focusResult = false;
+ if (!focusMenuRef.current) {
+ focusResult = focusMenu();
+ }
+ if (focusResult) {
+ event.preventDefault();
+ } else {
+ handleCloseMenuAndReturnFocus();
+ }
+ break;
+ }
+ }
+ };
+ _react_17_0_2_react.useEffect(function () {
+ if (visible) {
+ window.addEventListener("keydown", handleKeyDown);
+ if (autoFocus) {
+ // FIXME: hack with raf
+ (0,raf/* default */.Z)(focusMenu, 3);
+ }
+ return function () {
+ window.removeEventListener("keydown", handleKeyDown);
+ focusMenuRef.current = false;
+ };
+ }
+ return function () {
+ focusMenuRef.current = false;
+ };
+ }, [visible]); // eslint-disable-line react-hooks/exhaustive-deps
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/Overlay.js
+
+
+var Overlay = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(function (props, ref) {
+ var overlay = props.overlay,
+ arrow = props.arrow,
+ prefixCls = props.prefixCls;
+ var overlayNode = (0,_react_17_0_2_react.useMemo)(function () {
+ var overlayElement;
+ if (typeof overlay === 'function') {
+ overlayElement = overlay();
+ } else {
+ overlayElement = overlay;
+ }
+ return overlayElement;
+ }, [overlay]);
+ var composedRef = (0,es_ref/* composeRef */.sQ)(ref, overlayNode === null || overlayNode === void 0 ? void 0 : overlayNode.ref);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, arrow && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-arrow")
+ }), /*#__PURE__*/_react_17_0_2_react.cloneElement(overlayNode, {
+ ref: (0,es_ref/* supportRef */.Yr)(overlayNode) ? composedRef : undefined
+ }));
+});
+/* harmony default export */ var es_Overlay = (Overlay);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/placements.js
+var autoAdjustOverflow = {
+ adjustX: 1,
+ adjustY: 1
+};
+var targetOffset = [0, 0];
+var placements = {
+ topLeft: {
+ points: ['bl', 'tl'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ top: {
+ points: ['bc', 'tc'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ topRight: {
+ points: ['br', 'tr'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ bottomLeft: {
+ points: ['tl', 'bl'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ },
+ bottom: {
+ points: ['tc', 'bc'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ },
+ bottomRight: {
+ points: ['tr', 'br'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ }
+};
+/* harmony default export */ var es_placements = (placements);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/Dropdown.js
+
+
+
+
+var _excluded = ["arrow", "prefixCls", "transitionName", "animation", "align", "placement", "placements", "getPopupContainer", "showAction", "hideAction", "overlayClassName", "overlayStyle", "visible", "trigger", "autoFocus", "overlay", "children", "onVisibleChange"];
+
+
+
+
+
+
+
+function Dropdown(props, ref) {
+ var _children$props;
+ var _props$arrow = props.arrow,
+ arrow = _props$arrow === void 0 ? false : _props$arrow,
+ _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-dropdown' : _props$prefixCls,
+ transitionName = props.transitionName,
+ animation = props.animation,
+ align = props.align,
+ _props$placement = props.placement,
+ placement = _props$placement === void 0 ? 'bottomLeft' : _props$placement,
+ _props$placements = props.placements,
+ placements = _props$placements === void 0 ? es_placements : _props$placements,
+ getPopupContainer = props.getPopupContainer,
+ showAction = props.showAction,
+ hideAction = props.hideAction,
+ overlayClassName = props.overlayClassName,
+ overlayStyle = props.overlayStyle,
+ visible = props.visible,
+ _props$trigger = props.trigger,
+ trigger = _props$trigger === void 0 ? ['hover'] : _props$trigger,
+ autoFocus = props.autoFocus,
+ overlay = props.overlay,
+ children = props.children,
+ onVisibleChange = props.onVisibleChange,
+ otherProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var _React$useState = _react_17_0_2_react.useState(),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ triggerVisible = _React$useState2[0],
+ setTriggerVisible = _React$useState2[1];
+ var mergedVisible = 'visible' in props ? visible : triggerVisible;
+ var triggerRef = _react_17_0_2_react.useRef(null);
+ var overlayRef = _react_17_0_2_react.useRef(null);
+ var childRef = _react_17_0_2_react.useRef(null);
+ _react_17_0_2_react.useImperativeHandle(ref, function () {
+ return triggerRef.current;
+ });
+ var handleVisibleChange = function handleVisibleChange(newVisible) {
+ setTriggerVisible(newVisible);
+ onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(newVisible);
+ };
+ useAccessibility({
+ visible: mergedVisible,
+ triggerRef: childRef,
+ onVisibleChange: handleVisibleChange,
+ autoFocus: autoFocus,
+ overlayRef: overlayRef
+ });
+ var onClick = function onClick(e) {
+ var onOverlayClick = props.onOverlayClick;
+ setTriggerVisible(false);
+ if (onOverlayClick) {
+ onOverlayClick(e);
+ }
+ };
+ var getMenuElement = function getMenuElement() {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_Overlay, {
+ ref: overlayRef,
+ overlay: overlay,
+ prefixCls: prefixCls,
+ arrow: arrow
+ });
+ };
+ var getMenuElementOrLambda = function getMenuElementOrLambda() {
+ if (typeof overlay === 'function') {
+ return getMenuElement;
+ }
+ return getMenuElement();
+ };
+ var getMinOverlayWidthMatchTrigger = function getMinOverlayWidthMatchTrigger() {
+ var minOverlayWidthMatchTrigger = props.minOverlayWidthMatchTrigger,
+ alignPoint = props.alignPoint;
+ if ('minOverlayWidthMatchTrigger' in props) {
+ return minOverlayWidthMatchTrigger;
+ }
+ return !alignPoint;
+ };
+ var getOpenClassName = function getOpenClassName() {
+ var openClassName = props.openClassName;
+ if (openClassName !== undefined) {
+ return openClassName;
+ }
+ return "".concat(prefixCls, "-open");
+ };
+ var childrenNode = /*#__PURE__*/_react_17_0_2_react.cloneElement(children, {
+ className: _classnames_2_5_1_classnames_default()((_children$props = children.props) === null || _children$props === void 0 ? void 0 : _children$props.className, mergedVisible && getOpenClassName()),
+ ref: (0,es_ref/* supportRef */.Yr)(children) ? (0,es_ref/* composeRef */.sQ)(childRef, children.ref) : undefined
+ });
+ var triggerHideAction = hideAction;
+ if (!triggerHideAction && trigger.indexOf('contextMenu') !== -1) {
+ triggerHideAction = ['click'];
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, (0,esm_extends/* default */.Z)({
+ builtinPlacements: placements
+ }, otherProps, {
+ prefixCls: prefixCls,
+ ref: triggerRef,
+ popupClassName: _classnames_2_5_1_classnames_default()(overlayClassName, (0,defineProperty/* default */.Z)({}, "".concat(prefixCls, "-show-arrow"), arrow)),
+ popupStyle: overlayStyle,
+ action: trigger,
+ showAction: showAction,
+ hideAction: triggerHideAction,
+ popupPlacement: placement,
+ popupAlign: align,
+ popupTransitionName: transitionName,
+ popupAnimation: animation,
+ popupVisible: mergedVisible,
+ stretch: getMinOverlayWidthMatchTrigger() ? 'minWidth' : '',
+ popup: getMenuElementOrLambda(),
+ onPopupVisibleChange: handleVisibleChange,
+ onPopupClick: onClick,
+ getPopupContainer: getPopupContainer
+ }), childrenNode);
+}
+/* harmony default export */ var es_Dropdown = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Dropdown));
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/index.js
+
+/* harmony default export */ var _rc_dropdown_4_1_0_rc_dropdown_es = (es_Dropdown);
+
+/***/ })
+
+}]);
\ No newline at end of file
diff --git a/28647.async.js b/28647.async.js
index 9eaa4b5a4a..2ec9c54fe6 100644
--- a/28647.async.js
+++ b/28647.async.js
@@ -15,18 +15,18 @@ __webpack_require__.d(__webpack_exports__, {
// UNUSED EXPORTS: _rs
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Children/toArray.js
var toArray = __webpack_require__(45659);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/warning.js
var warning = __webpack_require__(36014);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectSpread2.js
-var objectSpread2 = __webpack_require__(96257);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/typeof.js
-var esm_typeof = __webpack_require__(2442);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectSpread2.js
+var objectSpread2 = __webpack_require__(54131);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/typeof.js
+var esm_typeof = __webpack_require__(13255);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Dom/findDOMNode.js
var findDOMNode = __webpack_require__(58035);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
@@ -105,14 +105,14 @@ function unobserve(element, callback) {
}
}
}
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/classCallCheck.js
-var classCallCheck = __webpack_require__(32154);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/createClass.js
-var createClass = __webpack_require__(9762);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/inherits.js
-var inherits = __webpack_require__(31684);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/createSuper.js + 1 modules
-var createSuper = __webpack_require__(21928);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/classCallCheck.js
+var classCallCheck = __webpack_require__(61577);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/createClass.js
+var createClass = __webpack_require__(22946);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/inherits.js
+var inherits = __webpack_require__(3711);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/createSuper.js + 1 modules
+var createSuper = __webpack_require__(44961);
;// CONCATENATED MODULE: ./node_modules/_rc-resize-observer@1.4.0@rc-resize-observer/es/SingleObserver/DomWrapper.js
diff --git a/77095.async.js b/2956.async.js
similarity index 98%
rename from 77095.async.js
rename to 2956.async.js
index b113fe2788..132822906a 100644
--- a/77095.async.js
+++ b/2956.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[77095,37408,77484,95149,47821,87648,82010,61999],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[2956,37408,14329,5053,47821,87648,82010,61999],{
-/***/ 60936:
+/***/ 15228:
/*!*******************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/InboxOutlined.js + 1 modules ***!
\*******************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_InboxOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/InboxOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/InboxOutlined.js
// This icon file is generated automatically.
var InboxOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "0 0 1024 1024", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M885.2 446.3l-.2-.8-112.2-285.1c-5-16.1-19.9-27.2-36.8-27.2H281.2c-17 0-32.1 11.3-36.9 27.6L139.4 443l-.3.7-.2.8c-1.3 4.9-1.7 9.9-1 14.8-.1 1.6-.2 3.2-.2 4.8V830a60.9 60.9 0 0060.8 60.8h627.2c33.5 0 60.8-27.3 60.9-60.8V464.1c0-1.3 0-2.6-.1-3.7.4-4.9 0-9.6-1.3-14.1zm-295.8-43l-.3 15.7c-.8 44.9-31.8 75.1-77.1 75.1-22.1 0-41.1-7.1-54.8-20.6S436 441.2 435.6 419l-.3-15.7H229.5L309 210h399.2l81.7 193.3H589.4zm-375 76.8h157.3c24.3 57.1 76 90.8 140.4 90.8 33.7 0 65-9.4 90.3-27.2 22.2-15.6 39.5-37.4 50.7-63.6h156.5V814H214.4V480.1z" } }] }, "name": "inbox", "theme": "outlined" };
/* harmony default export */ var asn_InboxOutlined = (InboxOutlined);
@@ -87,7 +87,7 @@ var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
-var DownOutlined = __webpack_require__(42884);
+var DownOutlined = __webpack_require__(8415);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
var dropdown = __webpack_require__(91857);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
diff --git a/47758.async.js b/29989.async.js
similarity index 74%
rename from 47758.async.js
rename to 29989.async.js
index 9b88e1f46c..2e9907edd3 100644
--- a/47758.async.js
+++ b/29989.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[47758,74997],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[29989,74997,71769],{
-/***/ 80045:
+/***/ 51954:
/*!*******************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules ***!
\*******************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ExclamationCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
// This icon file is generated automatically.
var ExclamationCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }, { "tag": "path", "attrs": { "d": "M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z" } }] }, "name": "exclamation-circle", "theme": "outlined" };
/* harmony default export */ var asn_ExclamationCircleOutlined = (ExclamationCircleOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 87306:
+/***/ 20683:
/*!*************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/MinusCircleOutlined.js + 1 modules ***!
\*************************************************************************************************************/
@@ -55,11 +55,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_MinusCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/MinusCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/MinusCircleOutlined.js
// This icon file is generated automatically.
var MinusCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z" } }, { "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }] }, "name": "minus-circle", "theme": "outlined" };
/* harmony default export */ var asn_MinusCircleOutlined = (MinusCircleOutlined);
@@ -85,7 +85,7 @@ if (false) {}
/***/ }),
-/***/ 71029:
+/***/ 12635:
/*!************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusCircleOutlined.js + 1 modules ***!
\************************************************************************************************************/
@@ -97,11 +97,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_PlusCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/PlusCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/PlusCircleOutlined.js
// This icon file is generated automatically.
var PlusCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M696 480H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z" } }, { "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }] }, "name": "plus-circle", "theme": "outlined" };
/* harmony default export */ var asn_PlusCircleOutlined = (PlusCircleOutlined);
@@ -127,6 +127,499 @@ if (false) {}
/***/ }),
+/***/ 66104:
+/*!**************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js + 6 modules ***!
+ \**************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ breadcrumb; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Children/toArray.js
+var toArray = __webpack_require__(45659);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/pickAttrs.js
+var pickAttrs = __webpack_require__(3286);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
+var DownOutlined = __webpack_require__(8415);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
+var dropdown = __webpack_require__(91857);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
+"use client";
+
+
+
+const BreadcrumbSeparator = _ref => {
+ let {
+ children
+ } = _ref;
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('breadcrumb');
+ return /*#__PURE__*/_react_17_0_2_react.createElement("li", {
+ className: `${prefixCls}-separator`,
+ "aria-hidden": "true"
+ }, children === '' ? children : children || '/');
+};
+BreadcrumbSeparator.__ANT_BREADCRUMB_SEPARATOR = true;
+/* harmony default export */ var breadcrumb_BreadcrumbSeparator = (BreadcrumbSeparator);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/useItemRender.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+function getBreadcrumbName(route, params) {
+ if (route.title === undefined || route.title === null) {
+ return null;
+ }
+ const paramsKeys = Object.keys(params).join('|');
+ return typeof route.title === 'object' ? route.title : String(route.title).replace(new RegExp(`:(${paramsKeys})`, 'g'), (replacement, key) => params[key] || replacement);
+}
+function renderItem(prefixCls, item, children, href) {
+ if (children === null || children === undefined) {
+ return null;
+ }
+ const {
+ className,
+ onClick
+ } = item,
+ restItem = __rest(item, ["className", "onClick"]);
+ const passedProps = Object.assign(Object.assign({}, (0,pickAttrs/* default */.Z)(restItem, {
+ data: true,
+ aria: true
+ })), {
+ onClick
+ });
+ if (href !== undefined) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement("a", Object.assign({}, passedProps, {
+ className: _classnames_2_5_1_classnames_default()(`${prefixCls}-link`, className),
+ href: href
+ }), children);
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("span", Object.assign({}, passedProps, {
+ className: _classnames_2_5_1_classnames_default()(`${prefixCls}-link`, className)
+ }), children);
+}
+function useItemRender(prefixCls, itemRender) {
+ const mergedItemRender = (item, params, routes, path, href) => {
+ if (itemRender) {
+ return itemRender(item, params, routes, path);
+ }
+ const name = getBreadcrumbName(item, params);
+ return renderItem(prefixCls, item, name, href);
+ };
+ return mergedItemRender;
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbItem.js
+"use client";
+
+var BreadcrumbItem_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+const InternalBreadcrumbItem = props => {
+ const {
+ prefixCls,
+ separator = '/',
+ children,
+ menu,
+ overlay,
+ dropdownProps,
+ href
+ } = props;
+ // Warning for deprecated usage
+ if (false) {}
+ /** If overlay is have Wrap a Dropdown */
+ const renderBreadcrumbNode = breadcrumbItem => {
+ if (menu || overlay) {
+ const mergeDropDownProps = Object.assign({}, dropdownProps);
+ if (menu) {
+ const _a = menu || {},
+ {
+ items
+ } = _a,
+ menuProps = BreadcrumbItem_rest(_a, ["items"]);
+ mergeDropDownProps.menu = Object.assign(Object.assign({}, menuProps), {
+ items: items === null || items === void 0 ? void 0 : items.map((_a, index) => {
+ var {
+ key,
+ title,
+ label,
+ path
+ } = _a,
+ itemProps = BreadcrumbItem_rest(_a, ["key", "title", "label", "path"]);
+ let mergedLabel = label !== null && label !== void 0 ? label : title;
+ if (path) {
+ mergedLabel = /*#__PURE__*/_react_17_0_2_react.createElement("a", {
+ href: `${href}${path}`
+ }, mergedLabel);
+ }
+ return Object.assign(Object.assign({}, itemProps), {
+ key: key !== null && key !== void 0 ? key : index,
+ label: mergedLabel
+ });
+ })
+ });
+ } else if (overlay) {
+ mergeDropDownProps.overlay = overlay;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(dropdown/* default */.Z, Object.assign({
+ placement: "bottom"
+ }, mergeDropDownProps), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-overlay-link`
+ }, breadcrumbItem, /*#__PURE__*/_react_17_0_2_react.createElement(DownOutlined/* default */.Z, null)));
+ }
+ return breadcrumbItem;
+ };
+ // wrap to dropDown
+ const link = renderBreadcrumbNode(children);
+ if (link !== undefined && link !== null) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, /*#__PURE__*/_react_17_0_2_react.createElement("li", null, link), separator && /*#__PURE__*/_react_17_0_2_react.createElement(breadcrumb_BreadcrumbSeparator, null, separator));
+ }
+ return null;
+};
+const BreadcrumbItem = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ children,
+ href
+ } = props,
+ restProps = BreadcrumbItem_rest(props, ["prefixCls", "children", "href"]);
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(InternalBreadcrumbItem, Object.assign({}, restProps, {
+ prefixCls: prefixCls
+ }), renderItem(prefixCls, restProps, children, href));
+};
+BreadcrumbItem.__ANT_BREADCRUMB_ITEM = true;
+/* harmony default export */ var breadcrumb_BreadcrumbItem = (BreadcrumbItem);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/style/index.js
+
+
+const genBreadcrumbStyle = token => {
+ const {
+ componentCls,
+ iconCls
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ color: token.itemColor,
+ fontSize: token.fontSize,
+ [iconCls]: {
+ fontSize: token.iconFontSize
+ },
+ ol: {
+ display: 'flex',
+ flexWrap: 'wrap',
+ margin: 0,
+ padding: 0,
+ listStyle: 'none'
+ },
+ a: Object.assign({
+ color: token.linkColor,
+ transition: `color ${token.motionDurationMid}`,
+ padding: `0 ${token.paddingXXS}px`,
+ borderRadius: token.borderRadiusSM,
+ height: token.lineHeight * token.fontSize,
+ display: 'inline-block',
+ marginInline: -token.marginXXS,
+ '&:hover': {
+ color: token.linkHoverColor,
+ backgroundColor: token.colorBgTextHover
+ }
+ }, (0,style/* genFocusStyle */.Qy)(token)),
+ [`li:last-child`]: {
+ color: token.lastItemColor
+ },
+ [`${componentCls}-separator`]: {
+ marginInline: token.separatorMargin,
+ color: token.separatorColor
+ },
+ [`${componentCls}-link`]: {
+ [`
+ > ${iconCls} + span,
+ > ${iconCls} + a
+ `]: {
+ marginInlineStart: token.marginXXS
+ }
+ },
+ [`${componentCls}-overlay-link`]: {
+ borderRadius: token.borderRadiusSM,
+ height: token.lineHeight * token.fontSize,
+ display: 'inline-block',
+ padding: `0 ${token.paddingXXS}px`,
+ marginInline: -token.marginXXS,
+ [`> ${iconCls}`]: {
+ marginInlineStart: token.marginXXS,
+ fontSize: token.fontSizeIcon
+ },
+ '&:hover': {
+ color: token.linkHoverColor,
+ backgroundColor: token.colorBgTextHover,
+ a: {
+ color: token.linkHoverColor
+ }
+ },
+ a: {
+ '&:hover': {
+ backgroundColor: 'transparent'
+ }
+ }
+ },
+ // rtl style
+ [`&${token.componentCls}-rtl`]: {
+ direction: 'rtl'
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var breadcrumb_style = ((0,genComponentStyleHook/* default */.Z)('Breadcrumb', token => {
+ const BreadcrumbToken = (0,statistic/* merge */.TS)(token, {});
+ return [genBreadcrumbStyle(BreadcrumbToken)];
+}, token => ({
+ itemColor: token.colorTextDescription,
+ lastItemColor: token.colorText,
+ iconFontSize: token.fontSize,
+ linkColor: token.colorTextDescription,
+ linkHoverColor: token.colorText,
+ separatorColor: token.colorTextDescription,
+ separatorMargin: token.marginXS
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/useItems.js
+var useItems_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+function route2item(route) {
+ const {
+ breadcrumbName,
+ children
+ } = route,
+ rest = useItems_rest(route, ["breadcrumbName", "children"]);
+ const clone = Object.assign({
+ title: breadcrumbName
+ }, rest);
+ if (children) {
+ clone.menu = {
+ items: children.map(_a => {
+ var {
+ breadcrumbName: itemBreadcrumbName
+ } = _a,
+ itemProps = useItems_rest(_a, ["breadcrumbName"]);
+ return Object.assign(Object.assign({}, itemProps), {
+ title: itemBreadcrumbName
+ });
+ })
+ };
+ }
+ return clone;
+}
+function useItems(items, routes) {
+ return (0,_react_17_0_2_react.useMemo)(() => {
+ if (items) {
+ return items;
+ }
+ if (routes) {
+ return routes.map(route2item);
+ }
+ return null;
+ }, [items, routes]);
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/Breadcrumb.js
+"use client";
+
+var Breadcrumb_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+
+
+
+
+
+const getPath = (params, path) => {
+ if (path === undefined) {
+ return path;
+ }
+ let mergedPath = (path || '').replace(/^\//, '');
+ Object.keys(params).forEach(key => {
+ mergedPath = mergedPath.replace(`:${key}`, params[key]);
+ });
+ return mergedPath;
+};
+const Breadcrumb = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ separator = '/',
+ style,
+ className,
+ rootClassName,
+ routes: legacyRoutes,
+ items,
+ children,
+ itemRender,
+ params = {}
+ } = props,
+ restProps = Breadcrumb_rest(props, ["prefixCls", "separator", "style", "className", "rootClassName", "routes", "items", "children", "itemRender", "params"]);
+ const {
+ getPrefixCls,
+ direction,
+ breadcrumb
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ let crumbs;
+ const prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
+ const [wrapSSR, hashId] = breadcrumb_style(prefixCls);
+ const mergedItems = useItems(items, legacyRoutes);
+ if (false) {}
+ const mergedItemRender = useItemRender(prefixCls, itemRender);
+ if (mergedItems && mergedItems.length > 0) {
+ // generated by route
+ const paths = [];
+ const itemRenderRoutes = items || legacyRoutes;
+ crumbs = mergedItems.map((item, index) => {
+ const {
+ path,
+ key,
+ type,
+ menu,
+ overlay,
+ onClick,
+ className: itemClassName,
+ separator: itemSeparator,
+ dropdownProps
+ } = item;
+ const mergedPath = getPath(params, path);
+ if (mergedPath !== undefined) {
+ paths.push(mergedPath);
+ }
+ const mergedKey = key !== null && key !== void 0 ? key : index;
+ if (type === 'separator') {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(breadcrumb_BreadcrumbSeparator, {
+ key: mergedKey
+ }, itemSeparator);
+ }
+ const itemProps = {};
+ const isLastItem = index === mergedItems.length - 1;
+ if (menu) {
+ itemProps.menu = menu;
+ } else if (overlay) {
+ itemProps.overlay = overlay;
+ }
+ let {
+ href
+ } = item;
+ if (paths.length && mergedPath !== undefined) {
+ href = `#/${paths.join('/')}`;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(InternalBreadcrumbItem, Object.assign({
+ key: mergedKey
+ }, itemProps, (0,pickAttrs/* default */.Z)(item, {
+ data: true,
+ aria: true
+ }), {
+ className: itemClassName,
+ dropdownProps: dropdownProps,
+ href: href,
+ separator: isLastItem ? '' : separator,
+ onClick: onClick,
+ prefixCls: prefixCls
+ }), mergedItemRender(item, params, itemRenderRoutes, paths, href));
+ });
+ } else if (children) {
+ const childrenLength = (0,toArray/* default */.Z)(children).length;
+ crumbs = (0,toArray/* default */.Z)(children).map((element, index) => {
+ if (!element) {
+ return element;
+ }
+ // =================== Warning =====================
+ if (false) {}
+ false ? 0 : void 0;
+ const isLastItem = index === childrenLength - 1;
+ return (0,reactNode/* cloneElement */.Tm)(element, {
+ separator: isLastItem ? '' : separator,
+ key: index
+ });
+ });
+ }
+ const breadcrumbClassName = _classnames_2_5_1_classnames_default()(prefixCls, breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.className, {
+ [`${prefixCls}-rtl`]: direction === 'rtl'
+ }, className, rootClassName, hashId);
+ const mergedStyle = Object.assign(Object.assign({}, breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.style), style);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("nav", Object.assign({
+ className: breadcrumbClassName,
+ style: mergedStyle
+ }, restProps), /*#__PURE__*/_react_17_0_2_react.createElement("ol", null, crumbs)));
+};
+Breadcrumb.Item = breadcrumb_BreadcrumbItem;
+Breadcrumb.Separator = breadcrumb_BreadcrumbSeparator;
+if (false) {}
+/* harmony default export */ var breadcrumb_Breadcrumb = (Breadcrumb);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js
+"use client";
+
+
+/* harmony default export */ var breadcrumb = (breadcrumb_Breadcrumb);
+
+/***/ }),
+
/***/ 74997:
/*!************************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/collapse/index.js + 8 modules ***!
@@ -140,30 +633,30 @@ __webpack_require__.d(__webpack_exports__, {
});
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/RightOutlined.js + 1 modules
-var RightOutlined = __webpack_require__(22311);
+var RightOutlined = __webpack_require__(78864);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/typeof.js
-var esm_typeof = __webpack_require__(2442);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/typeof.js
+var esm_typeof = __webpack_require__(13255);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
var useMergedState = __webpack_require__(84381);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/warning.js
var warning = __webpack_require__(36014);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Children/toArray.js
var toArray = __webpack_require__(45659);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
// EXTERNAL MODULE: ./node_modules/_rc-motion@2.9.0@rc-motion/es/index.js + 12 modules
var es = __webpack_require__(44516);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
@@ -935,504 +1428,6 @@ if (false) {}
/***/ }),
-/***/ 78673:
-/*!**********************************************************************!*\
- !*** ./node_modules/_antd@5.9.0@antd/es/switch/index.js + 2 modules ***!
- \**********************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ es_switch; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LoadingOutlined.js + 1 modules
-var LoadingOutlined = __webpack_require__(38521);
-// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
-var _classnames_2_5_1_classnames = __webpack_require__(92310);
-var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
-var useMergedState = __webpack_require__(84381);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
-var KeyCode = __webpack_require__(84821);
-;// CONCATENATED MODULE: ./node_modules/_rc-switch@4.1.0@rc-switch/es/index.js
-
-
-
-
-var _excluded = ["prefixCls", "className", "checked", "defaultChecked", "disabled", "loadingIcon", "checkedChildren", "unCheckedChildren", "onClick", "onChange", "onKeyDown"];
-
-
-
-
-var Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (_ref, ref) {
- var _classNames;
- var _ref$prefixCls = _ref.prefixCls,
- prefixCls = _ref$prefixCls === void 0 ? 'rc-switch' : _ref$prefixCls,
- className = _ref.className,
- checked = _ref.checked,
- defaultChecked = _ref.defaultChecked,
- disabled = _ref.disabled,
- loadingIcon = _ref.loadingIcon,
- checkedChildren = _ref.checkedChildren,
- unCheckedChildren = _ref.unCheckedChildren,
- onClick = _ref.onClick,
- onChange = _ref.onChange,
- onKeyDown = _ref.onKeyDown,
- restProps = (0,objectWithoutProperties/* default */.Z)(_ref, _excluded);
- var _useMergedState = (0,useMergedState/* default */.Z)(false, {
- value: checked,
- defaultValue: defaultChecked
- }),
- _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
- innerChecked = _useMergedState2[0],
- setInnerChecked = _useMergedState2[1];
- function triggerChange(newChecked, event) {
- var mergedChecked = innerChecked;
- if (!disabled) {
- mergedChecked = newChecked;
- setInnerChecked(mergedChecked);
- onChange === null || onChange === void 0 ? void 0 : onChange(mergedChecked, event);
- }
- return mergedChecked;
- }
- function onInternalKeyDown(e) {
- if (e.which === KeyCode/* default */.Z.LEFT) {
- triggerChange(false, e);
- } else if (e.which === KeyCode/* default */.Z.RIGHT) {
- triggerChange(true, e);
- }
- onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);
- }
- function onInternalClick(e) {
- var ret = triggerChange(!innerChecked, e);
- // [Legacy] trigger onClick with value
- onClick === null || onClick === void 0 ? void 0 : onClick(ret, e);
- }
- var switchClassName = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-checked"), innerChecked), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), _classNames));
- return /*#__PURE__*/_react_17_0_2_react.createElement("button", (0,esm_extends/* default */.Z)({}, restProps, {
- type: "button",
- role: "switch",
- "aria-checked": innerChecked,
- disabled: disabled,
- className: switchClassName,
- ref: ref,
- onKeyDown: onInternalKeyDown,
- onClick: onInternalClick
- }), loadingIcon, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner")
- }, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner-checked")
- }, checkedChildren), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner-unchecked")
- }, unCheckedChildren)));
-});
-Switch.displayName = 'Switch';
-/* harmony default export */ var es = (Switch);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/wave/index.js + 4 modules
-var wave = __webpack_require__(14088);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
-var context = __webpack_require__(36355);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/DisabledContext.js
-var DisabledContext = __webpack_require__(1684);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/hooks/useSize.js
-var useSize = __webpack_require__(19716);
-// EXTERNAL MODULE: ./node_modules/_@ctrl_tinycolor@3.6.1@@ctrl/tinycolor/dist/module/index.js
-var dist_module = __webpack_require__(64993);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
-var style = __webpack_require__(17313);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
-var genComponentStyleHook = __webpack_require__(83116);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
-var statistic = __webpack_require__(37613);
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/style/index.js
-
-
-
-const genSwitchSmallStyle = token => {
- const {
- componentCls,
- trackHeightSM,
- trackPadding,
- trackMinWidthSM,
- innerMinMarginSM,
- innerMaxMarginSM,
- handleSizeSM
- } = token;
- const switchInnerCls = `${componentCls}-inner`;
- return {
- [componentCls]: {
- [`&${componentCls}-small`]: {
- minWidth: trackMinWidthSM,
- height: trackHeightSM,
- lineHeight: `${trackHeightSM}px`,
- [`${componentCls}-inner`]: {
- paddingInlineStart: innerMaxMarginSM,
- paddingInlineEnd: innerMinMarginSM,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`,
- marginInlineEnd: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`
- },
- [`${switchInnerCls}-unchecked`]: {
- marginTop: -trackHeightSM,
- marginInlineStart: 0,
- marginInlineEnd: 0
- }
- },
- [`${componentCls}-handle`]: {
- width: handleSizeSM,
- height: handleSizeSM
- },
- [`${componentCls}-loading-icon`]: {
- top: (handleSizeSM - token.switchLoadingIconSize) / 2,
- fontSize: token.switchLoadingIconSize
- },
- [`&${componentCls}-checked`]: {
- [`${componentCls}-inner`]: {
- paddingInlineStart: innerMinMarginSM,
- paddingInlineEnd: innerMaxMarginSM,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: 0,
- marginInlineEnd: 0
- },
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`,
- marginInlineEnd: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`
- }
- },
- [`${componentCls}-handle`]: {
- insetInlineStart: `calc(100% - ${handleSizeSM + trackPadding}px)`
- }
- },
- [`&:not(${componentCls}-disabled):active`]: {
- [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: token.marginXXS / 2,
- marginInlineEnd: -token.marginXXS / 2
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: -token.marginXXS / 2,
- marginInlineEnd: token.marginXXS / 2
- }
- }
- }
- }
- }
- };
-};
-const genSwitchLoadingStyle = token => {
- const {
- componentCls,
- handleSize
- } = token;
- return {
- [componentCls]: {
- [`${componentCls}-loading-icon${token.iconCls}`]: {
- position: 'relative',
- top: (handleSize - token.fontSize) / 2,
- color: token.switchLoadingIconColor,
- verticalAlign: 'top'
- },
- [`&${componentCls}-checked ${componentCls}-loading-icon`]: {
- color: token.switchColor
- }
- }
- };
-};
-const genSwitchHandleStyle = token => {
- const {
- componentCls,
- motion,
- trackPadding,
- handleBg,
- handleShadow,
- handleSize
- } = token;
- const switchHandleCls = `${componentCls}-handle`;
- return {
- [componentCls]: {
- [switchHandleCls]: {
- position: 'absolute',
- top: trackPadding,
- insetInlineStart: trackPadding,
- width: handleSize,
- height: handleSize,
- transition: `all ${token.switchDuration} ease-in-out`,
- '&::before': {
- position: 'absolute',
- top: 0,
- insetInlineEnd: 0,
- bottom: 0,
- insetInlineStart: 0,
- backgroundColor: handleBg,
- borderRadius: handleSize / 2,
- boxShadow: handleShadow,
- transition: `all ${token.switchDuration} ease-in-out`,
- content: '""'
- }
- },
- [`&${componentCls}-checked ${switchHandleCls}`]: {
- insetInlineStart: `calc(100% - ${handleSize + trackPadding}px)`
- },
- [`&:not(${componentCls}-disabled):active`]: motion ? {
- [`${switchHandleCls}::before`]: {
- insetInlineEnd: token.switchHandleActiveInset,
- insetInlineStart: 0
- },
- [`&${componentCls}-checked ${switchHandleCls}::before`]: {
- insetInlineEnd: 0,
- insetInlineStart: token.switchHandleActiveInset
- }
- } : /* istanbul ignore next */
- {}
- }
- };
-};
-const genSwitchInnerStyle = token => {
- const {
- componentCls,
- trackHeight,
- trackPadding,
- innerMinMargin,
- innerMaxMargin,
- handleSize
- } = token;
- const switchInnerCls = `${componentCls}-inner`;
- return {
- [componentCls]: {
- [switchInnerCls]: {
- display: 'block',
- overflow: 'hidden',
- borderRadius: 100,
- height: '100%',
- paddingInlineStart: innerMaxMargin,
- paddingInlineEnd: innerMinMargin,
- transition: `padding-inline-start ${token.switchDuration} ease-in-out, padding-inline-end ${token.switchDuration} ease-in-out`,
- [`${switchInnerCls}-checked, ${switchInnerCls}-unchecked`]: {
- display: 'block',
- color: token.colorTextLightSolid,
- fontSize: token.fontSizeSM,
- transition: `margin-inline-start ${token.switchDuration} ease-in-out, margin-inline-end ${token.switchDuration} ease-in-out`,
- pointerEvents: 'none'
- },
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`,
- marginInlineEnd: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`
- },
- [`${switchInnerCls}-unchecked`]: {
- marginTop: -trackHeight,
- marginInlineStart: 0,
- marginInlineEnd: 0
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- paddingInlineStart: innerMinMargin,
- paddingInlineEnd: innerMaxMargin,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: 0,
- marginInlineEnd: 0
- },
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`,
- marginInlineEnd: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`
- }
- },
- [`&:not(${componentCls}-disabled):active`]: {
- [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: trackPadding * 2,
- marginInlineEnd: -trackPadding * 2
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: -trackPadding * 2,
- marginInlineEnd: trackPadding * 2
- }
- }
- }
- }
- };
-};
-const genSwitchStyle = token => {
- const {
- componentCls,
- trackHeight,
- trackMinWidth
- } = token;
- return {
- [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
- position: 'relative',
- display: 'inline-block',
- boxSizing: 'border-box',
- minWidth: trackMinWidth,
- height: trackHeight,
- lineHeight: `${trackHeight}px`,
- verticalAlign: 'middle',
- background: token.colorTextQuaternary,
- border: '0',
- borderRadius: 100,
- cursor: 'pointer',
- transition: `all ${token.motionDurationMid}`,
- userSelect: 'none',
- [`&:hover:not(${componentCls}-disabled)`]: {
- background: token.colorTextTertiary
- }
- }), (0,style/* genFocusStyle */.Qy)(token)), {
- [`&${componentCls}-checked`]: {
- background: token.switchColor,
- [`&:hover:not(${componentCls}-disabled)`]: {
- background: token.colorPrimaryHover
- }
- },
- [`&${componentCls}-loading, &${componentCls}-disabled`]: {
- cursor: 'not-allowed',
- opacity: token.switchDisabledOpacity,
- '*': {
- boxShadow: 'none',
- cursor: 'not-allowed'
- }
- },
- // rtl style
- [`&${componentCls}-rtl`]: {
- direction: 'rtl'
- }
- })
- };
-};
-// ============================== Export ==============================
-/* harmony default export */ var switch_style = ((0,genComponentStyleHook/* default */.Z)('Switch', token => {
- const switchToken = (0,statistic/* merge */.TS)(token, {
- switchDuration: token.motionDurationMid,
- switchColor: token.colorPrimary,
- switchDisabledOpacity: token.opacityLoading,
- switchLoadingIconSize: token.fontSizeIcon * 0.75,
- switchLoadingIconColor: `rgba(0, 0, 0, ${token.opacityLoading})`,
- switchHandleActiveInset: '-30%'
- });
- return [genSwitchStyle(switchToken),
- // inner style
- genSwitchInnerStyle(switchToken),
- // handle style
- genSwitchHandleStyle(switchToken),
- // loading style
- genSwitchLoadingStyle(switchToken),
- // small style
- genSwitchSmallStyle(switchToken)];
-}, token => {
- const {
- fontSize,
- lineHeight,
- controlHeight,
- colorWhite
- } = token;
- const height = fontSize * lineHeight;
- const heightSM = controlHeight / 2;
- const padding = 2; // Fixed value
- const handleSize = height - padding * 2;
- const handleSizeSM = heightSM - padding * 2;
- return {
- trackHeight: height,
- trackHeightSM: heightSM,
- trackMinWidth: handleSize * 2 + padding * 4,
- trackMinWidthSM: handleSizeSM * 2 + padding * 2,
- trackPadding: padding,
- handleBg: colorWhite,
- handleSize,
- handleSizeSM,
- handleShadow: `0 2px 4px 0 ${new dist_module/* TinyColor */.C('#00230b').setAlpha(0.2).toRgbString()}`,
- innerMinMargin: handleSize / 2,
- innerMaxMargin: handleSize + padding + padding * 2,
- innerMinMarginSM: handleSizeSM / 2,
- innerMaxMarginSM: handleSizeSM + padding + padding * 2
- };
-}));
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/index.js
-"use client";
-
-var __rest = undefined && undefined.__rest || function (s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
- }
- return t;
-};
-
-
-
-
-
-
-
-
-
-
-const switch_Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
- const {
- prefixCls: customizePrefixCls,
- size: customizeSize,
- disabled: customDisabled,
- loading,
- className,
- rootClassName,
- style
- } = props,
- restProps = __rest(props, ["prefixCls", "size", "disabled", "loading", "className", "rootClassName", "style"]);
- false ? 0 : void 0;
- const {
- getPrefixCls,
- direction,
- switch: SWITCH
- } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
- // ===================== Disabled =====================
- const disabled = _react_17_0_2_react.useContext(DisabledContext/* default */.Z);
- const mergedDisabled = (customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled) || loading;
- const prefixCls = getPrefixCls('switch', customizePrefixCls);
- const loadingIcon = /*#__PURE__*/_react_17_0_2_react.createElement("div", {
- className: `${prefixCls}-handle`
- }, loading && /*#__PURE__*/_react_17_0_2_react.createElement(LoadingOutlined/* default */.Z, {
- className: `${prefixCls}-loading-icon`
- }));
- // Style
- const [wrapSSR, hashId] = switch_style(prefixCls);
- const mergedSize = (0,useSize/* default */.Z)(customizeSize);
- const classes = _classnames_2_5_1_classnames_default()(SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.className, {
- [`${prefixCls}-small`]: mergedSize === 'small',
- [`${prefixCls}-loading`]: loading,
- [`${prefixCls}-rtl`]: direction === 'rtl'
- }, className, rootClassName, hashId);
- const mergedStyle = Object.assign(Object.assign({}, SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.style), style);
- return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(wave/* default */.Z, {
- component: "Switch"
- }, /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({}, restProps, {
- prefixCls: prefixCls,
- className: classes,
- style: mergedStyle,
- disabled: mergedDisabled,
- ref: ref,
- loadingIcon: loadingIcon
- }))));
-});
-switch_Switch.__ANT_SWITCH = true;
-if (false) {}
-/* harmony default export */ var es_switch = (switch_Switch);
-
-/***/ }),
-
/***/ 12563:
/*!*******************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/tag/index.js + 5 modules ***!
@@ -1448,7 +1443,7 @@ __webpack_require__.d(__webpack_exports__, {
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseOutlined.js + 1 modules
-var CloseOutlined = __webpack_require__(99174);
+var CloseOutlined = __webpack_require__(30449);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
diff --git a/89471.async.js b/30318.async.js
similarity index 72%
rename from 89471.async.js
rename to 30318.async.js
index a990b338fe..e75cf12cc3 100644
--- a/89471.async.js
+++ b/30318.async.js
@@ -1,5 +1,1477 @@
-"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[89471,66128,67957,97120],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[30318,4977,78890,97120],{
+
+/***/ 28871:
+/*!*********************************************************!*\
+ !*** ./src/components/MathematicalGraphics/js/index.js ***!
+ \*********************************************************/
+/***/ (function(module, exports, __webpack_require__) {
+
+var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;var _typeof = (__webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/typeof.js */ 31468)["default"]);
+(function () {
+ if (typeof window.GGBApplet == "function") {
+ console.warn("deployggb.js was loaded twice");
+ return;
+ }
+ var isRenderGGBElementEnabled = false;
+ var scriptLoadStarted = false;
+ var html5AppletsToProcess = null;
+ var ggbHTML5LoadedCodebaseIsWebSimple = false;
+ var ggbHTML5LoadedCodebaseVersion = null;
+ var ggbHTML5LoadedScript = null;
+ var GGBApplet = function GGBApplet() {
+ "use strict";
+
+ var applet = {};
+ var ggbVersion = "5.0";
+ var parameters = {};
+ var views = null;
+ var html5NoWebSimple = false;
+ var html5NoWebSimpleParamExists = false;
+ var appletID = null;
+ var initComplete = false;
+ var html5OverwrittenCodebaseVersion = null;
+ var html5OverwrittenCodebase = null;
+ for (var i = 0; i < arguments.length; i++) {
+ var p = arguments[i];
+ if (p !== null) {
+ switch (_typeof(p)) {
+ case "number":
+ ggbVersion = p.toFixed(1);
+ break;
+ case "string":
+ if (p.match(new RegExp("^[0-9]\\.[0-9]+$"))) {
+ ggbVersion = p;
+ } else {
+ appletID = p;
+ }
+ break;
+ case "object":
+ if (typeof p.is3D !== "undefined") {
+ views = p;
+ } else {
+ parameters = p;
+ }
+ break;
+ case "boolean":
+ html5NoWebSimple = p;
+ html5NoWebSimpleParamExists = true;
+ break;
+ }
+ }
+ }
+ if (views === null) {
+ views = {
+ is3D: false,
+ AV: false,
+ SV: false,
+ CV: false,
+ EV2: false,
+ CP: false,
+ PC: false,
+ DA: false,
+ FI: false,
+ PV: false,
+ macro: false
+ };
+ if (parameters.material_id !== undefined && !html5NoWebSimpleParamExists) {
+ html5NoWebSimple = true;
+ }
+ }
+ if (appletID !== null && parameters.id === undefined) {
+ parameters.id = appletID;
+ }
+ var jnlpFilePath = "";
+ var html5Codebase = "";
+ var isHTML5Offline = false;
+ var loadedAppletType = null;
+ var html5CodebaseVersion = null;
+ var html5CodebaseScript = null;
+ var html5CodebaseIsWebSimple = false;
+ var previewImagePath = null;
+ var previewLoadingPath = null;
+ var previewPlayPath = null;
+ var fonts_css_url = null;
+ var jnlpBaseDir = null;
+ if (parameters.height !== undefined) {
+ parameters.height = Math.round(parameters.height);
+ }
+ if (parameters.width !== undefined) {
+ parameters.width = Math.round(parameters.width);
+ }
+ var parseVersion = function parseVersion(d) {
+ return parseFloat(d) > 4 ? parseFloat(d) : 5;
+ };
+ applet.setHTML5Codebase = function (codebase, offline) {
+ html5OverwrittenCodebase = codebase;
+ setHTML5CodebaseInternal(codebase, offline);
+ };
+ applet.setJavaCodebase = applet.setJavaCodebaseVersion = applet.isCompiledInstalled = applet.setPreCompiledScriptPath = applet.setPreCompiledResourcePath = function () {};
+ applet.setHTML5CodebaseVersion = function (version, offline) {
+ var numVersion = parseFloat(version);
+ if (numVersion !== NaN && numVersion < 5) {
+ console.log("The GeoGebra HTML5 codebase version " + numVersion + " is deprecated. Using version latest instead.");
+ return;
+ }
+ html5OverwrittenCodebaseVersion = version;
+ setDefaultHTML5CodebaseForVersion(version, offline);
+ };
+ applet.getHTML5CodebaseVersion = function () {
+ return html5CodebaseVersion;
+ };
+ applet.getParameters = function () {
+ return parameters;
+ };
+ applet.setFontsCSSURL = function (url) {
+ fonts_css_url = url;
+ };
+ applet.setGiacJSURL = function (url) {};
+ applet.setJNLPFile = function (newJnlpFilePath) {
+ jnlpFilePath = newJnlpFilePath;
+ };
+ applet.setJNLPBaseDir = function (baseDir) {};
+ applet.inject = function () {
+ function isOwnIFrame() {
+ return window.frameElement && window.frameElement.getAttribute("data-singleton");
+ }
+ var type = "auto";
+ var container_ID = parameters.id;
+ var container;
+ var noPreview = false;
+ for (var i = 0; i < arguments.length; i++) {
+ var p = arguments[i];
+ if (typeof p === "string") {
+ p = p.toLowerCase();
+ if (p.match(/^(prefer)?(java|html5|compiled|auto|screenshot)$/)) {
+ type = p;
+ } else {
+ container_ID = arguments[i];
+ }
+ } else if (typeof p === "boolean") {
+ noPreview = p;
+ } else if (p instanceof HTMLElement) {
+ container = p;
+ }
+ }
+ continueInject();
+ function continueInject() {
+ if (!initComplete) {
+ setTimeout(continueInject, 200);
+ return;
+ }
+ type = detectAppletType(type);
+ var appletElem = container || document.getElementById(container_ID);
+ if (!appletElem) {
+ console.log("possibly bug on ajax loading? ");
+ return;
+ }
+ applet.removeExistingApplet(appletElem, false);
+ if (parameters.width === undefined && appletElem.clientWidth) {
+ parameters.width = appletElem.clientWidth;
+ }
+ if (parameters.height === undefined && appletElem.clientHeight) {
+ parameters.height = appletElem.clientHeight;
+ }
+ if (!(parameters.width && parameters.height) && type === "html5") {
+ delete parameters.width;
+ delete parameters.height;
+ }
+ loadedAppletType = type;
+ if (type === "screenshot") {
+ injectScreenshot(appletElem, parameters);
+ } else {
+ var playButton = false;
+ if (parameters.hasOwnProperty("playButton") && parameters.playButton || parameters.hasOwnProperty("clickToLoad") && parameters.clickToLoad) {
+ playButton = true;
+ } else if (parameters.hasOwnProperty("playButtonAutoDecide") && parameters.playButtonAutoDecide) {
+ playButton = (!isInIframe() || isOwnIFrame()) && isMobileDevice();
+ }
+ if (playButton) {
+ loadedAppletType = "screenshot";
+ injectPlayButton(appletElem, parameters, noPreview, type);
+ } else {
+ injectHTML5Applet(appletElem, parameters, noPreview);
+ }
+ }
+ }
+ return;
+ };
+ function isInIframe() {
+ try {
+ return window.self !== window.top;
+ } catch (e) {
+ return true;
+ }
+ }
+ function isMobileDevice() {
+ if (parameters.hasOwnProperty("screenshotGenerator") && parameters.screenshotGenerator) {
+ return false;
+ }
+ return Math.max(screen.width, screen.height) < 800;
+ }
+ applet.getViews = function () {
+ return views;
+ };
+ applet.isJavaInstalled = function () {
+ return false;
+ };
+ var fetchParametersFromApi = function fetchParametersFromApi(successCallback) {
+ var onSuccess = function onSuccess(text) {
+ var jsonData = JSON.parse(text);
+ var isGeoGebra = function isGeoGebra(element) {
+ return element.type == "G" || element.type == "E";
+ };
+ var item = jsonData.elements ? jsonData.elements.filter(isGeoGebra)[0] : jsonData;
+ if (!item || !item.url) {
+ onError();
+ return;
+ }
+ parameters.fileName = item.url;
+ updateAppletSettings(item.settings || {});
+ views.is3D = true;
+ var imageDir = "https://www.geogebra.org/images/";
+ applet.setPreviewImage(previewImagePath || item.previewUrl, imageDir + "GeoGebra_loading.png", imageDir + "applet_play.png");
+ successCallback();
+ };
+ var onError = function onError() {
+ parameters.onError && parameters.onError();
+ log("Error: Fetching material (id " + parameters.material_id + ") failed.", parameters);
+ };
+ var host = location.host.match(/(www|stage|beta|groot|alpha).geogebra.(org|net)/) ? location.host : "www.geogebra.org";
+ var path = "/materials/" + parameters.material_id + "?scope=basic";
+ sendCorsRequest("https://" + host + "/api/proxy.php?path=" + encodeURIComponent(path), onSuccess, onError);
+ };
+ function updateAppletSettings(settings) {
+ var parameterNames = ["width", "height", "showToolBar", "showMenuBar", "showAlgebraInput", "allowStyleBar", "showResetIcon", "enableLabelDrags", "enableShiftDragZoom", "enableRightClick", "appName"];
+ ["enableLabelDrags", "enableShiftDragZoom", "enableRightClick"].forEach(function (name) {
+ settings[name] = !!settings[name];
+ });
+ parameterNames.forEach(function (name) {
+ if (parameters[name] === undefined && settings[name] !== undefined) {
+ parameters[name] = settings[name];
+ }
+ });
+ if (parameters.showToolBarHelp === undefined) {
+ parameters.showToolBarHelp = parameters.showToolBar;
+ }
+ }
+ function sendCorsRequest(url, onSuccess, onError) {
+ var xhr = new XMLHttpRequest();
+ xhr.open("GET", url);
+ xhr.onload = function () {
+ onSuccess(xhr.responseText);
+ };
+ xhr.onerror = onError;
+ xhr.send();
+ }
+ applet.isHTML5Installed = function () {
+ return true;
+ };
+ applet.getLoadedAppletType = function () {
+ return loadedAppletType;
+ };
+ applet.setPreviewImage = function (previewFilePath, loadingFilePath, playFilePath) {
+ previewImagePath = previewFilePath;
+ previewLoadingPath = loadingFilePath;
+ previewPlayPath = playFilePath;
+ };
+ applet.removeExistingApplet = function (appletParent, showScreenshot) {
+ var i;
+ if (typeof appletParent === "string") {
+ appletParent = document.getElementById(appletParent);
+ }
+ loadedAppletType = null;
+ var removedID = null;
+ for (i = 0; i < appletParent.childNodes.length; i++) {
+ var currentChild = appletParent.childNodes[i];
+ var className = currentChild.className;
+ if (className === "applet_screenshot") {
+ if (showScreenshot) {
+ currentChild.style.display = "block";
+ loadedAppletType = "screenshot";
+ } else {
+ currentChild.style.display = "none";
+ }
+ } else if (className !== "applet_scaler prerender") {
+ appletParent.removeChild(currentChild);
+ removedID = className && className.indexOf("appletParameters") != -1 ? currentChild.id : null;
+ i--;
+ }
+ }
+ var appName = parameters.id !== undefined ? parameters.id : removedID;
+ var app = window[appName];
+ if (app && typeof app.getBase64 === "function") {
+ app.remove();
+ window[appName] = null;
+ }
+ };
+ applet.refreshHitPoints = function () {
+ if (parseVersion(ggbHTML5LoadedCodebaseVersion) >= 5) {
+ return true;
+ }
+ var app = applet.getAppletObject();
+ if (app) {
+ if (typeof app.recalculateEnvironments === "function") {
+ app.recalculateEnvironments();
+ return true;
+ }
+ }
+ return false;
+ };
+ applet.startAnimation = function () {
+ var app = applet.getAppletObject();
+ if (app) {
+ if (typeof app.startAnimation === "function") {
+ app.startAnimation();
+ return true;
+ }
+ }
+ return false;
+ };
+ applet.stopAnimation = function () {
+ var app = applet.getAppletObject();
+ if (app) {
+ if (typeof app.stopAnimation === "function") {
+ app.stopAnimation();
+ return true;
+ }
+ }
+ return false;
+ };
+ applet.getAppletObject = function () {
+ var appName = parameters.id !== undefined ? parameters.id : "ggbApplet";
+ return window[appName];
+ };
+ applet.resize = function () {};
+ var appendParam = function appendParam(applet, name, value) {
+ var param = document.createElement("param");
+ param.setAttribute("name", name);
+ param.setAttribute("value", value);
+ applet.appendChild(param);
+ };
+ var valBoolean = function valBoolean(value) {
+ return value && value !== "false";
+ };
+ var injectHTML5Applet = function injectHTML5Applet(appletElem, parameters, noPreview) {
+ if (parseVersion(html5CodebaseVersion) <= 4.2) {
+ noPreview = true;
+ }
+ var loadScript = !isRenderGGBElementEnabled && !scriptLoadStarted;
+ if (!isRenderGGBElementEnabled && !scriptLoadStarted || ggbHTML5LoadedCodebaseVersion !== html5CodebaseVersion || ggbHTML5LoadedCodebaseIsWebSimple && !html5CodebaseIsWebSimple) {
+ loadScript = true;
+ isRenderGGBElementEnabled = false;
+ scriptLoadStarted = false;
+ }
+ var article = document.createElement("div");
+ article.classList.add("appletParameters", "notranslate");
+ var oriWidth = parameters.width;
+ var oriHeight = parameters.height;
+ parameters.disableAutoScale = parameters.disableAutoScale === undefined ? GGBAppletUtils.isFlexibleWorksheetEditor() : parameters.disableAutoScale;
+ if (parameters.width !== undefined) {
+ if (parseVersion(html5CodebaseVersion) <= 4.4) {
+ if (valBoolean(parameters.showToolBar)) {
+ parameters.height -= 7;
+ }
+ if (valBoolean(parameters.showAlgebraInput)) {
+ parameters.height -= 37;
+ }
+ if (parameters.width < 605 && valBoolean(parameters.showToolBar)) {
+ parameters.width = 605;
+ oriWidth = 605;
+ }
+ } else {
+ var minWidth = 100;
+ if (valBoolean(parameters.showToolBar) || valBoolean(parameters.showMenuBar)) {
+ if (parameters.hasOwnProperty("customToolBar")) {
+ parameters.customToolbar = parameters.customToolBar;
+ }
+ minWidth = valBoolean(parameters.showMenuBar) ? 245 : 155;
+ }
+ if (oriWidth < minWidth) {
+ parameters.width = minWidth;
+ oriWidth = minWidth;
+ }
+ }
+ }
+ article.style.border = "none";
+ article.style.display = "inline-block";
+ for (var key in parameters) {
+ if (parameters.hasOwnProperty(key) && key !== "appletOnLoad") {
+ article.setAttribute("data-param-" + key, parameters[key]);
+ }
+ }
+ if (fonts_css_url) {
+ article.setAttribute("data-param-fontscssurl", fonts_css_url);
+ }
+ applet.resize = function () {
+ GGBAppletUtils.responsiveResize(appletElem, parameters);
+ };
+ window.addEventListener("resize", function (evt) {
+ applet.resize();
+ });
+ var oriAppletOnload = typeof parameters.appletOnLoad === "function" ? parameters.appletOnLoad : function () {};
+ if (!noPreview && parameters.width !== undefined) {
+ if (!parameters.hasOwnProperty("showSplash")) {
+ article.setAttribute("data-param-showSplash", "false");
+ }
+ var previewPositioner = appletElem.querySelector(".applet_scaler.prerender");
+ var preRendered = previewPositioner !== null;
+ if (!preRendered) {
+ var previewContainer = createScreenShotDiv(oriWidth, oriHeight, parameters.borderColor, false);
+ previewPositioner = document.createElement("div");
+ previewPositioner.className = "applet_scaler";
+ previewPositioner.style.position = "relative";
+ previewPositioner.style.display = "block";
+ previewPositioner.style.width = oriWidth + "px";
+ previewPositioner.style.height = oriHeight + "px";
+ } else {
+ var previewContainer = previewPositioner.querySelector(".ggb_preview");
+ }
+ if (window.GGBT_spinner) {
+ window.GGBT_spinner.attachSpinner(previewPositioner, "66%");
+ }
+ if (parseVersion(html5CodebaseVersion) >= 5) {
+ parameters.appletOnLoad = function (api) {
+ var preview = appletElem.querySelector(".ggb_preview");
+ if (preview) {
+ preview.parentNode.removeChild(preview);
+ }
+ if (window.GGBT_spinner) {
+ window.GGBT_spinner.removeSpinner(previewPositioner);
+ }
+ if (window.GGBT_wsf_view) {
+ $(window).trigger("resize");
+ }
+ oriAppletOnload(api);
+ };
+ if (!preRendered) {
+ previewPositioner.appendChild(previewContainer);
+ }
+ } else {
+ article.appendChild(previewContainer);
+ }
+ previewPositioner.appendChild(article);
+ if (!preRendered) {
+ appletElem.appendChild(previewPositioner);
+ }
+ setTimeout(function () {
+ applet.resize();
+ }, 1);
+ } else {
+ var appletScaler = document.createElement("div");
+ appletScaler.className = "applet_scaler";
+ appletScaler.style.position = "relative";
+ appletScaler.style.display = "block";
+ appletScaler.appendChild(article);
+ appletElem.appendChild(appletScaler);
+ parameters.appletOnLoad = function (api) {
+ applet.resize();
+ oriAppletOnload(api);
+ };
+ }
+ function renderGGBElementWithParams(article, parameters) {
+ if (parameters && typeof parameters.appletOnLoad === "function" && typeof renderGGBElement === "function") {
+ renderGGBElement(article, parameters.appletOnLoad);
+ } else {
+ renderGGBElement(article);
+ }
+ log("GeoGebra HTML5 applet injected and rendered with previously loaded codebase.", parameters);
+ }
+ function renderGGBElementOnTube(a, parameters) {
+ if (typeof renderGGBElement === "undefined") {
+ if (html5AppletsToProcess === null) {
+ html5AppletsToProcess = [];
+ }
+ html5AppletsToProcess.push({
+ article: a,
+ params: parameters
+ });
+ window.renderGGBElementReady = function () {
+ isRenderGGBElementEnabled = true;
+ if (html5AppletsToProcess !== null && html5AppletsToProcess.length) {
+ html5AppletsToProcess.forEach(function (obj) {
+ renderGGBElementWithParams(obj.article, obj.params);
+ });
+ html5AppletsToProcess = null;
+ }
+ };
+ if (parseVersion(html5CodebaseVersion) < 5) {
+ a.className += " geogebraweb";
+ }
+ } else {
+ renderGGBElementWithParams(a, parameters);
+ }
+ }
+ if (loadScript) {
+ scriptLoadStarted = true;
+ for (var i = 0; i < article.childNodes.length; i++) {
+ var tag = article.childNodes[i].tagName;
+ if (tag === "TABLE") {
+ article.removeChild(article.childNodes[i]);
+ i--;
+ }
+ }
+ if (ggbHTML5LoadedScript !== null) {
+ var el = document.querySelector('script[src="' + ggbHTML5LoadedScript + '"]');
+ if (el !== undefined && el !== null) {
+ el.parentNode.removeChild(el);
+ }
+ }
+ var script = document.createElement("script");
+ var scriptLoaded = function scriptLoaded() {
+ renderGGBElementOnTube(article, parameters);
+ };
+ script.src = html5Codebase + html5CodebaseScript;
+ ggbHTML5LoadedCodebaseIsWebSimple = html5CodebaseIsWebSimple;
+ ggbHTML5LoadedCodebaseVersion = html5CodebaseVersion;
+ ggbHTML5LoadedScript = script.src;
+ log("GeoGebra HTML5 codebase loaded: '" + html5Codebase + "'.", parameters);
+ if (!html5OverwrittenCodebase && (!html5OverwrittenCodebaseVersion || html5OverwrittenCodebaseVersion == "5.0")) {
+ if (html5CodebaseIsWebSimple) {
+ webSimple.succeeded = webSimple.succeeded || webSimple();
+ } else {
+ web3d.succeeded = web3d.succeeded || web3d();
+ }
+ scriptLoaded();
+ } else if (html5Codebase.requirejs) {
+ __webpack_require__.e(/*! AMD require */ 53893).then(function() { var __WEBPACK_AMD_REQUIRE_ARRAY__ = [__webpack_require__(/*! ./web3d */ 53893)]; (scriptLoaded).apply(null, __WEBPACK_AMD_REQUIRE_ARRAY__);}.bind(this))['catch'](__webpack_require__.oe);
+ } else {
+ script.onload = scriptLoaded;
+ appletElem.appendChild(script);
+ }
+ } else {
+ renderGGBElementOnTube(article, parameters);
+ }
+ parameters.height = oriHeight;
+ parameters.width = oriWidth;
+ };
+ var injectScreenshot = function injectScreenshot(appletElem, parameters, showPlayButton) {
+ var previewContainer = createScreenShotDiv(parameters.width, parameters.height, parameters.borderColor, showPlayButton);
+ var previewPositioner = document.createElement("div");
+ previewPositioner.style.position = "relative";
+ previewPositioner.style.display = "block";
+ previewPositioner.style.width = parameters.width + "px";
+ previewPositioner.style.height = parameters.height + "px";
+ previewPositioner.className = "applet_screenshot applet_scaler" + (showPlayButton ? " applet_screenshot_play" : "");
+ previewPositioner.appendChild(previewContainer);
+ var scale = GGBAppletUtils.getScale(parameters, appletElem, showPlayButton);
+ if (showPlayButton) {
+ appletElem.appendChild(getPlayButton());
+ if (!window.GGBT_wsf_view) {
+ appletElem.style.position = "relative";
+ }
+ } else if (window.GGBT_spinner) {
+ window.GGBT_spinner.attachSpinner(previewPositioner, "66%");
+ }
+ appletElem.appendChild(previewPositioner);
+ if (scale !== 1 && !isNaN(scale)) {
+ GGBAppletUtils.scaleElement(previewPositioner, scale);
+ previewPositioner.style.width = parameters.width + "px";
+ previewPositioner.style.height = parameters.height + "px";
+ previewPositioner.parentNode.style.width = parameters.width * scale + "px";
+ previewPositioner.parentNode.style.height = parameters.height * scale + "px";
+ }
+ applet.resize = function () {
+ resizeScreenshot(appletElem, previewContainer, previewPositioner, showPlayButton);
+ };
+ window.addEventListener("resize", function (evt) {
+ applet.resize();
+ });
+ applet.resize();
+ };
+ function resizeScreenshot(appletElem, previewContainer, previewPositioner, showPlayButton) {
+ if (!appletElem.contains(previewContainer)) {
+ return;
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ if (appletElem.id !== "fullscreencontent") {
+ return;
+ }
+ window.GGBT_wsf_view.setCloseBtnPosition(appletElem);
+ }
+ var scale = GGBAppletUtils.getScale(parameters, appletElem, showPlayButton);
+ if (previewPositioner.parentNode !== null) {
+ if (!isNaN(scale) && scale !== 1) {
+ GGBAppletUtils.scaleElement(previewPositioner, scale);
+ previewPositioner.parentNode.style.width = parameters.width * scale + "px";
+ previewPositioner.parentNode.style.height = parameters.height * scale + "px";
+ } else {
+ GGBAppletUtils.scaleElement(previewPositioner, 1);
+ previewPositioner.parentNode.style.width = parameters.width + "px";
+ previewPositioner.parentNode.style.height = parameters.height + "px";
+ }
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ GGBAppletUtils.positionCenter(appletElem);
+ }
+ if (_typeof(window.GGBT_ws_header_footer) === "object") {
+ window.GGBT_ws_header_footer.setWsScrollerHeight();
+ }
+ }
+ applet.onExitFullscreen = function (fullscreenContainer, appletElem) {
+ appletElem.appendChild(fullscreenContainer);
+ };
+ var injectPlayButton = function injectPlayButton(appletElem, parameters, noPreview, type) {
+ injectScreenshot(appletElem, parameters, true);
+ var play = function play() {
+ var elems = [];
+ for (i = 0; i < appletElem.childNodes.length; i++) {
+ elems.push(appletElem.childNodes[i]);
+ }
+ if (window.GGBT_wsf_view) {
+ var content = window.GGBT_wsf_view.renderFullScreen(appletElem, parameters.id);
+ var container = document.getElementById("fullscreencontainer");
+ var oldcontent = jQuery(appletElem).find(".fullscreencontent");
+ if (oldcontent.length > 0) {
+ content.remove();
+ oldcontent.attr("id", "fullscreencontent").show();
+ jQuery(container).append(oldcontent);
+ window.dispatchEvent(new Event("resize"));
+ } else {
+ injectHTML5Applet(content, parameters, false);
+ }
+ window.GGBT_wsf_view.launchFullScreen(container);
+ } else {
+ loadedAppletType = type;
+ injectHTML5Applet(appletElem, parameters, false);
+ }
+ if (!window.GGBT_wsf_view) {
+ for (i = 0; i < elems.length; i++) {
+ appletElem.removeChild(elems[i]);
+ }
+ }
+ };
+ var imgs = appletElem.getElementsByClassName("ggb_preview_play");
+ for (var i = 0; i < imgs.length; i++) {
+ imgs[i].addEventListener("click", play, false);
+ imgs[i].addEventListener("ontouchstart", play, false);
+ }
+ if (typeof window.ggbAppletPlayerOnload === "function") {
+ window.ggbAppletPlayerOnload(appletElem);
+ }
+ if (isMobileDevice() && window.GGBT_wsf_view) {
+ $(".wsf-element-fullscreen-button").remove();
+ }
+ };
+ var getPlayButton = function getPlayButton() {
+ var playButtonContainer = document.createElement("div");
+ playButtonContainer.className = "ggb_preview_play icon-applet-play";
+ if (!window.GGBT_wsf_view) {
+ var css = "" + ".icon-applet-play {" + " width: 100%;" + " height: 100%;box-sizing: border-box;position: absolute;z-index: 1001;cursor: pointer;border-width: 0px;" + " background-color: transparent;background-repeat: no-repeat;left: 0;top: 0;background-position: center center;" + ' background-image: url("https://www.geogebra.org/images/worksheet/icon-start-applet.png");' + "}" + ".icon-applet-play:hover {" + 'background-image: url("https://www.geogebra.org/images/worksheet/icon-start-applet-hover.png");' + "}";
+ var style = document.createElement("style");
+ if (style.styleSheet) {
+ style.styleSheet.cssText = css;
+ } else {
+ style.appendChild(document.createTextNode(css));
+ }
+ document.getElementsByTagName("head")[0].appendChild(style);
+ }
+ return playButtonContainer;
+ };
+ var createScreenShotDiv = function createScreenShotDiv(oriWidth, oriHeight, borderColor, showPlayButton) {
+ var previewContainer = document.createElement("div");
+ previewContainer.className = "ggb_preview";
+ previewContainer.style.position = "absolute";
+ previewContainer.style.zIndex = "90";
+ previewContainer.style.width = oriWidth - 2 + "px";
+ previewContainer.style.height = oriHeight - 2 + "px";
+ previewContainer.style.top = "0px";
+ previewContainer.style.left = "0px";
+ previewContainer.style.overflow = "hidden";
+ previewContainer.style.backgroundColor = "white";
+ var bc = "lightgrey";
+ if (borderColor !== undefined) {
+ if (borderColor === "none") {
+ bc = "transparent";
+ } else {
+ bc = borderColor;
+ }
+ }
+ previewContainer.style.border = "1px solid " + bc;
+ var preview = document.createElement("img");
+ preview.style.position = "relative";
+ preview.style.zIndex = "1000";
+ preview.style.top = "-1px";
+ preview.style.left = "-1px";
+ if (previewImagePath !== null) {
+ preview.setAttribute("src", previewImagePath);
+ }
+ preview.style.opacity = .7;
+ if (previewLoadingPath !== null) {
+ var previewOverlay;
+ var pWidth, pHeight;
+ if (!showPlayButton) {
+ previewOverlay = document.createElement("img");
+ previewOverlay.style.position = "absolute";
+ previewOverlay.style.zIndex = "1001";
+ previewOverlay.style.opacity = 1;
+ preview.style.opacity = .3;
+ pWidth = 360;
+ if (pWidth > oriWidth / 4 * 3) {
+ pWidth = oriWidth / 4 * 3;
+ }
+ pHeight = pWidth / 5.8;
+ previewOverlay.setAttribute("src", previewLoadingPath);
+ previewOverlay.setAttribute("width", pWidth);
+ previewOverlay.setAttribute("height", pHeight);
+ var pX = (oriWidth - pWidth) / 2;
+ var pY = (oriHeight - pHeight) / 2;
+ previewOverlay.style.left = pX + "px";
+ previewOverlay.style.top = pY + "px";
+ previewContainer.appendChild(previewOverlay);
+ }
+ }
+ previewContainer.appendChild(preview);
+ return previewContainer;
+ };
+ var detectAppletType = function detectAppletType(preferredType) {
+ preferredType = preferredType.toLowerCase();
+ if (preferredType === "html5" || preferredType === "screenshot") {
+ return preferredType;
+ }
+ return "html5";
+ };
+ var modules = ["web", "webSimple", "web3d", "tablet", "tablet3d", "phone"];
+ var setDefaultHTML5CodebaseForVersion = function setDefaultHTML5CodebaseForVersion(version, offline) {
+ html5CodebaseVersion = version;
+ if (offline) {
+ setHTML5CodebaseInternal(html5CodebaseVersion, true);
+ return;
+ }
+ var hasWebSimple = !html5NoWebSimple;
+ if (hasWebSimple) {
+ var v = parseVersion(html5CodebaseVersion);
+ if (!isNaN(v) && v < 4.4) {
+ hasWebSimple = false;
+ }
+ }
+ var protocol, codebase;
+ if (window.location.protocol.substr(0, 4) === "http") {
+ protocol = window.location.protocol;
+ } else {
+ protocol = "http:";
+ }
+ var index = html5CodebaseVersion.indexOf("//");
+ if (index > 0) {
+ codebase = html5CodebaseVersion;
+ } else if (index === 0) {
+ codebase = protocol + html5CodebaseVersion;
+ } else {
+ codebase = "https://www.geogebra.org/apps/5.2.814.0/";
+ }
+ for (var key in modules) {
+ if (html5CodebaseVersion.slice(modules[key].length * -1) === modules[key] || html5CodebaseVersion.slice((modules[key].length + 1) * -1) === modules[key] + "/") {
+ setHTML5CodebaseInternal(codebase, false);
+ return;
+ }
+ }
+ if (!GGBAppletUtils.isFlexibleWorksheetEditor() && hasWebSimple && !views.is3D && !views.AV && !views.SV && !views.CV && !views.EV2 && !views.CP && !views.PC && !views.DA && !views.FI && !views.PV && !valBoolean(parameters.showToolBar) && !valBoolean(parameters.showMenuBar) && !valBoolean(parameters.showAlgebraInput) && !valBoolean(parameters.enableRightClick) && (!parameters.appName || parameters.appName == "classic")) {
+ codebase += "webSimple/";
+ } else {
+ codebase += "web3d/";
+ }
+ setHTML5CodebaseInternal(codebase, false);
+ };
+ var setHTML5CodebaseInternal = function setHTML5CodebaseInternal(codebase, offline) {
+ if (codebase.requirejs) {
+ html5Codebase = codebase;
+ return;
+ }
+ if (codebase.slice(-1) !== "/") {
+ codebase += "/";
+ }
+ html5Codebase = codebase;
+ if (offline === null) {
+ offline = codebase.indexOf("http") === -1;
+ }
+ isHTML5Offline = offline;
+ html5CodebaseScript = "web.nocache.js";
+ html5CodebaseIsWebSimple = false;
+ var folders = html5Codebase.split("/");
+ if (folders.length > 1) {
+ if (!offline && folders[folders.length - 2] === "webSimple") {
+ html5CodebaseScript = "webSimple.nocache.js";
+ html5CodebaseIsWebSimple = true;
+ } else if (modules.indexOf(folders[folders.length - 2]) >= 0) {
+ html5CodebaseScript = folders[folders.length - 2] + ".nocache.js";
+ }
+ }
+ folders = codebase.split("/");
+ html5CodebaseVersion = folders[folders.length - 3];
+ if (html5CodebaseVersion.substr(0, 4) === "test") {
+ html5CodebaseVersion = html5CodebaseVersion.substr(4, 1) + "." + html5CodebaseVersion.substr(5, 1);
+ } else if (html5CodebaseVersion.substr(0, 3) === "war" || html5CodebaseVersion.substr(0, 4) === "beta") {
+ html5CodebaseVersion = "5.0";
+ }
+ var numVersion = parseFloat(html5CodebaseVersion);
+ if (numVersion !== NaN && numVersion < 5 && codebase.indexOf("geogebra.org") >= 0) {
+ console.log("The GeoGebra HTML5 codebase version " + numVersion + " is deprecated. Using version latest instead.");
+ setDefaultHTML5CodebaseForVersion("5.0", offline);
+ }
+ };
+ var log = function log(text, parameters) {
+ if (window.console && window.console.log) {
+ if (!parameters || typeof parameters.showLogging === "undefined" || parameters.showLogging && parameters.showLogging !== "false") {
+ console.log(text);
+ }
+ }
+ };
+ if (parameters.material_id !== undefined) {
+ fetchParametersFromApi(continueInit);
+ } else {
+ continueInit();
+ }
+ function continueInit() {
+ var html5Version = ggbVersion;
+ if (html5OverwrittenCodebaseVersion !== null) {
+ html5Version = html5OverwrittenCodebaseVersion;
+ } else {
+ if (parseFloat(html5Version) < 5) {
+ html5Version = "5.0";
+ }
+ }
+ setDefaultHTML5CodebaseForVersion(html5Version, false);
+ if (html5OverwrittenCodebase !== null) {
+ setHTML5CodebaseInternal(html5OverwrittenCodebase, isHTML5Offline);
+ }
+ initComplete = true;
+ }
+ return applet;
+ };
+ var GGBAppletUtils = function () {
+ "use strict";
+
+ function isFlexibleWorksheetEditor() {
+ return window.GGBT_wsf_edit !== undefined;
+ }
+ function scaleElement(el, scale) {
+ if (scale != 1) {
+ el.style.transformOrigin = "0% 0% 0px";
+ el.style.webkitTransformOrigin = "0% 0% 0px";
+ el.style.transform = "scale(" + scale + "," + scale + ")";
+ el.style.webkitTransform = "scale(" + scale + "," + scale + ")";
+ el.style.maxWidth = "initial";
+ if (el.querySelector(".ggb_preview") !== null) {
+ el.querySelector(".ggb_preview").style.maxWidth = "initial";
+ }
+ if (el.querySelectorAll(".ggb_preview img")[0] !== undefined) {
+ el.querySelectorAll(".ggb_preview img")[0].style.maxWidth = "initial";
+ }
+ if (el.querySelectorAll(".ggb_preview img")[1] !== undefined) {
+ el.querySelectorAll(".ggb_preview img")[1].style.maxWidth = "initial";
+ }
+ } else {
+ el.style.transform = "none";
+ el.style.webkitTransform = "none";
+ }
+ }
+ function getWidthHeight(appletElem, appletWidth, allowUpscale, autoHeight, noBorder, scaleContainerClass) {
+ var container = null;
+ if (scaleContainerClass != undefined && scaleContainerClass != "") {
+ var parent = appletElem.parentNode;
+ while (parent != null) {
+ if ((" " + parent.className + " ").indexOf(" " + scaleContainerClass + " ") > -1) {
+ container = parent;
+ break;
+ } else {
+ parent = parent.parentNode;
+ }
+ }
+ }
+ var myWidth = 0,
+ myHeight = 0,
+ windowWidth = 0,
+ border = 0,
+ borderRight = 0,
+ borderLeft = 0,
+ borderTop = 0;
+ if (container) {
+ myWidth = container.offsetWidth;
+ myHeight = Math.max(autoHeight ? container.offsetWidth : 0, container.offsetHeight);
+ } else {
+ if (window.innerWidth && document.documentElement.clientWidth) {
+ myWidth = Math.min(window.innerWidth, document.documentElement.clientWidth);
+ myHeight = Math.min(window.innerHeight, document.documentElement.clientHeight);
+ windowWidth = myWidth;
+ } else {
+ myWidth = window.innerWidth;
+ myHeight = window.innerHeight;
+ windowWidth = window.innerWidth;
+ }
+ if (appletElem) {
+ var rect = appletElem.getBoundingClientRect();
+ if (rect.left > 0) {
+ if (rect.left <= myWidth && (noBorder === undefined || !noBorder)) {
+ if (document.dir === "rtl") {
+ borderRight = myWidth - rect.width - rect.left;
+ borderLeft = windowWidth <= 480 ? 10 : 30;
+ } else {
+ borderLeft = rect.left;
+ borderRight = windowWidth <= 480 ? 10 : 30;
+ }
+ border = borderLeft + borderRight;
+ }
+ }
+ }
+ if (appletElem && _typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ var appletRect = appletElem.getBoundingClientRect();
+ if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionRight") {
+ border = 40;
+ borderTop = 0;
+ } else if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionTop") {
+ border = 0;
+ borderTop = 40;
+ }
+ }
+ }
+ if (appletElem) {
+ if ((allowUpscale === undefined || !allowUpscale) && appletWidth > 0 && appletWidth + border < myWidth) {
+ myWidth = appletWidth;
+ } else {
+ myWidth -= border;
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen() && (allowUpscale === undefined || !allowUpscale)) {
+ myHeight -= borderTop;
+ }
+ }
+ return {
+ width: myWidth,
+ height: myHeight
+ };
+ }
+ function calcScale(parameters, appletElem, allowUpscale, showPlayButton, scaleContainerClass) {
+ if (parameters.isScreenshoGenerator) {
+ return 1;
+ }
+ var ignoreHeight = showPlayButton !== undefined && showPlayButton;
+ var noScaleMargin = parameters.noScaleMargin != undefined && parameters.noScaleMargin;
+ var valBoolean = function valBoolean(value) {
+ return value && value !== "false";
+ };
+ var autoHeight = valBoolean(parameters.autoHeight);
+ var windowSize = getWidthHeight(appletElem, parameters.width, allowUpscale, autoHeight, ignoreHeight && window.GGBT_wsf_view || noScaleMargin, scaleContainerClass);
+ var windowWidth = parseInt(windowSize.width);
+ var appletWidth = parameters.width;
+ var appletHeight = parameters.height;
+ if (appletWidth === undefined) {
+ var article = appletElem.querySelector(".appletParameters");
+ if (article) {
+ appletWidth = article.offsetWidth;
+ appletHeight = article.offsetHeight;
+ }
+ }
+ var xscale = windowWidth / appletWidth;
+ var yscale = ignoreHeight ? 1 : windowSize.height / appletHeight;
+ if (allowUpscale !== undefined && !allowUpscale) {
+ xscale = Math.min(1, xscale);
+ yscale = Math.min(1, yscale);
+ }
+ return Math.min(xscale, yscale);
+ }
+ function getScale(parameters, appletElem, showPlayButton) {
+ var scale = 1,
+ autoScale,
+ allowUpscale = false;
+ if (parameters.hasOwnProperty("allowUpscale")) {
+ allowUpscale = parameters.allowUpscale;
+ }
+ if (parameters.hasOwnProperty("scale")) {
+ scale = parseFloat(parameters.scale);
+ if (isNaN(scale) || scale === null || scale === 0) {
+ scale = 1;
+ }
+ if (scale > 1) {
+ allowUpscale = true;
+ }
+ }
+ if (appletElem && _typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ allowUpscale = true;
+ }
+ if (!(parameters.hasOwnProperty("disableAutoScale") && parameters.disableAutoScale)) {
+ autoScale = calcScale(parameters, appletElem, allowUpscale, showPlayButton, parameters.scaleContainerClass);
+ } else {
+ return scale;
+ }
+ if (allowUpscale && (!parameters.hasOwnProperty("scale") || scale === 1)) {
+ return autoScale;
+ } else {
+ return Math.min(scale, autoScale);
+ }
+ }
+ function positionCenter(appletElem) {
+ var windowWidth = Math.min(window.innerWidth, document.documentElement.clientWidth);
+ var windowHeight = Math.min(window.innerHeight, document.documentElement.clientHeight);
+ var appletRect = appletElem.getBoundingClientRect();
+ var calcHorizontalBorder = (windowWidth - appletRect.width) / 2;
+ var calcVerticalBorder = (windowHeight - appletRect.height) / 2;
+ if (calcVerticalBorder < 0) {
+ calcVerticalBorder = 0;
+ }
+ appletElem.style.position = "relative";
+ if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionRight") {
+ if (calcHorizontalBorder < 40) {
+ appletElem.style.left = "40px";
+ } else {
+ appletElem.style.left = calcHorizontalBorder + "px";
+ }
+ appletElem.style.top = calcVerticalBorder + "px";
+ } else if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionTop") {
+ if (calcVerticalBorder < 40) {
+ appletElem.style.top = "40px";
+ } else {
+ appletElem.style.top = calcVerticalBorder + "px";
+ }
+ appletElem.style.left = calcHorizontalBorder + "px";
+ }
+ }
+ function responsiveResize(appletElem, parameters) {
+ var article = appletElem.querySelector(".appletParameters");
+ if (article) {
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ if (parameters.id !== article.getAttribute("data-param-id")) {
+ return;
+ }
+ window.GGBT_wsf_view.setCloseBtnPosition(appletElem);
+ }
+ if (article.parentElement && /fullscreen/.test(article.parentElement.className)) {
+ return;
+ }
+ var scale = getScale(parameters, appletElem);
+ if (isFlexibleWorksheetEditor()) {
+ article.setAttribute("data-param-scale", scale);
+ }
+ var scaleElem = null;
+ for (var i = 0; i < appletElem.childNodes.length; i++) {
+ if (appletElem.childNodes[i].className !== undefined && appletElem.childNodes[i].className.match(/^applet_scaler/)) {
+ scaleElem = appletElem.childNodes[i];
+ break;
+ }
+ }
+ if (scaleElem !== null && scaleElem.querySelector(".noscale") !== null) {
+ return;
+ }
+ var appName = parameters.id !== undefined ? parameters.id : "ggbApplet";
+ var app = window[appName];
+ if ((app == null || !app.recalculateEnvironments) && scaleElem !== null && !scaleElem.className.match(/fullscreen/)) {
+ scaleElem.parentNode.style.transform = "";
+ if (!isNaN(scale) && scale !== 1) {
+ scaleElem.parentNode.style.width = parameters.width * scale + "px";
+ scaleElem.parentNode.style.height = parameters.height * scale + "px";
+ scaleElement(scaleElem, scale);
+ } else {
+ scaleElement(scaleElem, 1);
+ scaleElem.parentNode.style.width = parameters.width + "px";
+ scaleElem.parentNode.style.height = parameters.height + "px";
+ }
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ positionCenter(appletElem);
+ }
+ if (window.GGBT_wsf_view && !window.GGBT_wsf_view.isFullscreen()) {
+ window.GGBT_wsf_general.adjustContentToResize($(article).parents(".content-added-content"));
+ }
+ }
+ }
+ return {
+ responsiveResize: responsiveResize,
+ isFlexibleWorksheetEditor: isFlexibleWorksheetEditor,
+ positionCenter: positionCenter,
+ getScale: getScale,
+ scaleElement: scaleElement
+ };
+ }();
+ if (true) {
+ !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {
+ return GGBApplet;
+ }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
+ __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
+ }
+ GGBAppletUtils.makeModule = function (name, permutation) {
+ function webModule() {
+ var H = "bootstrap",
+ I = "begin",
+ J = "gwt.codesvr." + name + "=",
+ K = "gwt.codesvr=",
+ L = name,
+ M = "startup",
+ N = "DUMMY",
+ O = 0,
+ P = 1,
+ Q = "iframe",
+ R = "position:absolute; width:0; height:0; border:none; left: -1000px;",
+ S = " top: -1000px;",
+ T = "Chrome",
+ U = "CSS1Compat",
+ V = "",
+ W = "",
+ X = "",
+ Y = "undefined",
+ Z = "readystatechange",
+ $ = 10,
+ _ = "script",
+ ab = "javascript",
+ bb = "Failed to load ",
+ cb = "moduleStartup",
+ db = "scriptTagAdded",
+ eb = "moduleRequested",
+ fb = "meta",
+ gb = "name",
+ hb = name + "::",
+ ib = "::",
+ jb = "gwt:property",
+ kb = "content",
+ lb = "=",
+ mb = "gwt:onPropertyErrorFn",
+ nb = 'Bad handler "',
+ ob = '" for "gwt:onPropertyErrorFn"',
+ pb = "gwt:onLoadErrorFn",
+ qb = '" for "gwt:onLoadErrorFn"',
+ rb = "#",
+ sb = "?",
+ tb = "/",
+ ub = "img",
+ vb = "clear.cache.gif",
+ wb = "baseUrl",
+ xb = name + ".nocache.js",
+ yb = "base",
+ zb = "//",
+ Ab = "selectingPermutation",
+ Bb = name + ".devmode.js",
+ Cb = permutation,
+ Db = ":",
+ Eb = ".cache.js",
+ Fb = "loadExternalRefs",
+ Gb = "end";
+ var n = window;
+ var o = document;
+ q(H, I);
+ function p() {
+ var a = n.location.search;
+ return a.indexOf(J) != -1 || a.indexOf(K) != -1;
+ }
+ function q(a, b) {}
+ webModule.__sendStats = q;
+ webModule.__moduleName = L;
+ webModule.__errFn = null;
+ webModule.__moduleBase = N;
+ webModule.__softPermutationId = O;
+ webModule.__computePropValue = null;
+ webModule.__getPropMap = null;
+ webModule.__installRunAsyncCode = function () {};
+ webModule.__gwtStartLoadingFragment = function () {
+ return null;
+ };
+ webModule.__gwt_isKnownPropertyValue = function () {
+ return false;
+ };
+ webModule.__gwt_getMetaProperty = function () {
+ return null;
+ };
+ var r = null;
+ var s = n.__gwt_activeModules = n.__gwt_activeModules || {};
+ s[L] = {
+ moduleName: L
+ };
+ webModule.__moduleStartupDone = function (e) {
+ var f = s[L].bindings;
+ s[L].bindings = function () {
+ var a = f ? f() : {};
+ var b = e[webModule.__softPermutationId];
+ for (var c = O; c < b.length; c++) {
+ var d = b[c];
+ a[d[O]] = d[P];
+ }
+ return a;
+ };
+ };
+ var t;
+ function u() {
+ v();
+ return t;
+ }
+ function v() {
+ if (t) {
+ return;
+ }
+ var a = o.createElement(Q);
+ a.id = L;
+ a.style.cssText = R + S;
+ a.tabIndex = -1;
+ o.body.appendChild(a);
+ t = a.contentWindow.document;
+ if (navigator.userAgent.indexOf(T) == -1) {
+ t.open();
+ var b = document.compatMode == U ? V : W;
+ t.write(b + X);
+ t.close();
+ }
+ }
+ function w(f) {
+ function g(a) {
+ function b() {
+ if (_typeof(o.readyState) == Y) {
+ return _typeof(o.body) != Y && o.body != null;
+ }
+ return /loaded|complete/.test(o.readyState);
+ }
+ var c = b();
+ if (c) {
+ a();
+ return;
+ }
+ function d() {
+ if (!c) {
+ if (!b()) {
+ return;
+ }
+ c = true;
+ a();
+ if (o.removeEventListener) {
+ o.removeEventListener(Z, d, false);
+ }
+ if (e) {
+ clearInterval(e);
+ }
+ }
+ }
+ if (o.addEventListener) {
+ o.addEventListener(Z, d, false);
+ }
+ var e = setInterval(function () {
+ d();
+ }, $);
+ }
+ function h(a) {
+ var b = u();
+ var c = b.body;
+ var d = b.createElement(_);
+ d.language = ab;
+ d.crossOrigin = W;
+ d.src = a;
+ if (webModule.__errFn) {
+ d.onerror = function () {
+ webModule.__errFn(L, new Error(bb + a));
+ };
+ }
+ c.appendChild(d);
+ q(cb, db);
+ }
+ q(cb, eb);
+ g(function () {
+ h(f);
+ });
+ }
+ webModule.__startLoadingFragment = function (a) {
+ return C(a);
+ };
+ webModule.__installRunAsyncCode = function (a) {
+ var b = u();
+ var c = b.body;
+ var d = b.createElement(_);
+ d.language = ab;
+ d.text = a;
+ c.appendChild(d);
+ c.removeChild(d);
+ };
+ function A() {
+ var c = {};
+ var d;
+ var e;
+ var f = o.getElementsByTagName(fb);
+ for (var g = O, h = f.length; g < h; ++g) {
+ var i = f[g],
+ j = i.getAttribute(gb),
+ k;
+ if (j) {
+ j = j.replace(hb, W);
+ if (j.indexOf(ib) >= O) {
+ continue;
+ }
+ if (j == jb) {
+ k = i.getAttribute(kb);
+ if (k) {
+ var l,
+ m = k.indexOf(lb);
+ if (m >= O) {
+ j = k.substring(O, m);
+ l = k.substring(m + P);
+ } else {
+ j = k;
+ l = W;
+ }
+ c[j] = l;
+ }
+ } else if (j == mb) {
+ k = i.getAttribute(kb);
+ if (k) {
+ try {
+ d = eval(k);
+ } catch (a) {
+ alert(nb + k + ob);
+ }
+ }
+ } else if (j == pb) {
+ k = i.getAttribute(kb);
+ if (k) {
+ try {
+ e = eval(k);
+ } catch (a) {
+ alert(nb + k + qb);
+ }
+ }
+ }
+ }
+ }
+ __gwt_getMetaProperty = function __gwt_getMetaProperty(a) {
+ var b = c[a];
+ return b == null ? null : b;
+ };
+ r = d;
+ webModule.__errFn = e;
+ }
+ function B() {
+ function e(a) {
+ var b = a.lastIndexOf(rb);
+ if (b == -1) {
+ b = a.length;
+ }
+ var c = a.indexOf(sb);
+ if (c == -1) {
+ c = a.length;
+ }
+ var d = a.lastIndexOf(tb, Math.min(c, b));
+ return d >= O ? a.substring(O, d + P) : W;
+ }
+ function f(a) {
+ if (a.match(/^\w+:\/\//)) {} else {
+ var b = o.createElement(ub);
+ b.src = a + vb;
+ a = e(b.src);
+ }
+ return a;
+ }
+ function g() {
+ var a = __gwt_getMetaProperty(wb);
+ if (a != null) {
+ return a;
+ }
+ return W;
+ }
+ function h() {
+ var a = o.getElementsByTagName(_);
+ for (var b = O; b < a.length; ++b) {
+ if (a[b].src.indexOf(xb) != -1) {
+ return e(a[b].src);
+ }
+ }
+ return W;
+ }
+ function i() {
+ var a = o.getElementsByTagName(yb);
+ if (a.length > O) {
+ return a[a.length - P].href;
+ }
+ return W;
+ }
+ function j() {
+ var a = o.location;
+ return a.href == a.protocol + zb + a.host + a.pathname + a.search + a.hash;
+ }
+ var k = g();
+ if (k == W) {
+ k = h();
+ }
+ if (k == W) {
+ k = i();
+ }
+ if (k == W && j()) {
+ k = e(o.location.href);
+ }
+ k = f(k);
+ return k;
+ }
+ function C(a) {
+ if (a.match(/^\//)) {
+ return a;
+ }
+ if (a.match(/^[a-zA-Z]+:\/\//)) {
+ return a;
+ }
+ return webModule.__moduleBase + a;
+ }
+ function D() {
+ var f = [];
+ var g = O;
+ var h = [];
+ var i = [];
+ function j(a) {
+ var b = i[a](),
+ c = h[a];
+ if (b in c) {
+ return b;
+ }
+ var d = [];
+ for (var e in c) {
+ d[c[e]] = e;
+ }
+ if (r) {
+ r(a, d, b);
+ }
+ throw null;
+ }
+ __gwt_isKnownPropertyValue = function __gwt_isKnownPropertyValue(a, b) {
+ return b in h[a];
+ };
+ webModule.__getPropMap = function () {
+ var a = {};
+ for (var b in h) {
+ if (h.hasOwnProperty(b)) {
+ a[b] = j(b);
+ }
+ }
+ return a;
+ };
+ webModule.__computePropValue = j;
+ n.__gwt_activeModules[L].bindings = webModule.__getPropMap;
+ if (p()) {
+ return C(Bb);
+ }
+ var k;
+ try {
+ k = Cb;
+ var l = k.indexOf(Db);
+ if (l != -1) {
+ g = parseInt(k.substring(l + P), $);
+ k = k.substring(O, l);
+ }
+ } catch (a) {}
+ webModule.__softPermutationId = g;
+ return C(k + Eb);
+ }
+ function F() {
+ if (!n.__gwt_stylesLoaded) {
+ n.__gwt_stylesLoaded = {};
+ }
+ }
+ A();
+ webModule.__moduleBase = "/js/mathematicalGraphics/" + name + "/";
+ s[L].moduleBase = webModule.__moduleBase;
+ var G = D();
+ F();
+ w(G);
+ return true;
+ }
+ return webModule;
+ };
+ if (typeof window.web3d !== "function") {
+ window.web3d = GGBAppletUtils.makeModule("web3d", "A18F540516513B1292CA7CEF2F6AFC7E");
+ }
+ if (typeof window.webSimple !== "function") {
+ window.webSimple = GGBAppletUtils.makeModule("webSimple", "96B09BF1B436BF53F0DF54116700F16A");
+ }
+ window.GGBApplet = GGBApplet;
+})();
+
+/***/ }),
/***/ 71376:
/*!*********************************!*\
@@ -7,6 +1479,7 @@
\*********************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Ax: function() { return /* binding */ processTreeData; },
/* harmony export */ Ds: function() { return /* binding */ debounce; },
@@ -93,6 +1566,7 @@ var apiPref = _utils_env__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z.API_SE
\**************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
@@ -337,693 +1811,105 @@ var ImageDimensions = function ImageDimensions(_ref) {
style: {
position: 'absolute'
}
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
- className: ImageDimensionsmodules.img,
- ref: imgRef
- // crossOrigin='anonymous'
- // src={data?.src}
- })]
- })
- });
-};
-/* harmony default export */ var components_ImageDimensions = (ImageDimensions);
-
-/***/ }),
-
-/***/ 782:
-/*!*****************************************!*\
- !*** ./src/components/NoData/index.tsx ***!
- \*****************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/assets/images/icons/nodata.png */ 93314);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd */ 3113);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
-
-
-
-
-
-
-var noData = function noData(_ref) {
- var img = _ref.img,
- _ref$buttonProps = _ref.buttonProps,
- buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
- _ref$styles = _ref.styles,
- styles = _ref$styles === void 0 ? {} : _ref$styles,
- customText = _ref.customText,
- ButtonText = _ref.ButtonText,
- ButtonClick = _ref.ButtonClick,
- Buttonclass = _ref.Buttonclass,
- ButtonTwo = _ref.ButtonTwo,
- imgStyles = _ref.imgStyles,
- _ref$loading = _ref.loading,
- loading = _ref$loading === void 0 ? false : _ref$loading;
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("section", {
- className: "tc animated fadeIn",
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, {
- color: '#999',
- margin: '100px auto',
- visibility: loading ? 'hidden' : 'visible'
- }), styles),
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
- src: img || _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__,
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, imgStyles), {}, {
- pointerEvents: "none",
- userSelect: "none"
- })
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("p", {
- className: "mt20 font14",
- children: customText || '暂时还没有相关数据哦!'
- }), ButtonText && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(antd__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .ZP, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({
- className: Buttonclass,
- onClick: ButtonClick
- }, buttonProps), {}, {
- children: ButtonText
- })), ButtonTwo && ButtonTwo]
- });
-};
-/* harmony default export */ __webpack_exports__.Z = (noData);
-
-/***/ }),
-
-/***/ 13039:
-/*!*********************************************************!*\
- !*** ./src/components/PreviewAll/index.tsx + 1 modules ***!
- \*********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ PreviewAll; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
-var objectSpread2 = __webpack_require__(82242);
-var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
-var regeneratorRuntime = __webpack_require__(7557);
-var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
-var asyncToGenerator = __webpack_require__(41498);
-var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
-var slicedToArray = __webpack_require__(79800);
-var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./src/components/PreviewAll/index.less?modules
-// extracted by mini-css-extract-plugin
-/* harmony default export */ var PreviewAllmodules = ({"wrp":"wrp___dq7YK","bgBlack":"bgBlack___ARIUV","monaco":"monaco___VnZC3","darkBlue":"darkBlue___UprA9","close":"close___LKoWu","embed":"embed___hvpEJ"});
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
-var es_button = __webpack_require__(3113);
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ArrowDownOutlined.js + 1 modules
-var ArrowDownOutlined = __webpack_require__(98915);
-// EXTERNAL MODULE: ./src/components/monaco-editor/index.jsx + 4 modules
-var monaco_editor = __webpack_require__(40774);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
-var tooltip = __webpack_require__(6848);
-// EXTERNAL MODULE: ./src/utils/util.tsx
-var util = __webpack_require__(72345);
-// EXTERNAL MODULE: ./src/service/exercise.ts
-var exercise = __webpack_require__(91843);
-// EXTERNAL MODULE: ./src/components/NoData/index.tsx
-var NoData = __webpack_require__(782);
-// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
-var env = __webpack_require__(83877);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
-var jsx_runtime = __webpack_require__(37712);
-;// CONCATENATED MODULE: ./src/components/PreviewAll/index.tsx
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-/* harmony default export */ var PreviewAll = (function (_ref) {
- var _data, _data2, _data3, _data4, _data5, _data6;
- var _ref$editOffice = _ref.editOffice,
- editOffice = _ref$editOffice === void 0 ? 'view' : _ref$editOffice,
- data = _ref.data,
- theme = _ref.theme,
- type = _ref.type,
- filename = _ref.filename,
- monacoEditor = _ref.monacoEditor,
- className = _ref.className,
- style = _ref.style,
- close = _ref.close,
- onClose = _ref.onClose,
- hasMask = _ref.hasMask,
- disabledDownload = _ref.disabledDownload,
- onImgDimensions = _ref.onImgDimensions,
- showNodata = _ref.showNodata;
- var _useState = (0,_react_17_0_2_react.useState)('https://view.officeapps.live.com/op/view.aspx?src=http://testgs.educoder.net//rails/active_storage/blobs/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBCZz09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--03541f6234b93d7ac3b2d84e7eb0e6594a952945/1.ppt'),
- _useState2 = slicedToArray_default()(_useState, 2),
- src = _useState2[0],
- setSrc = _useState2[1];
- var _useState3 = (0,_react_17_0_2_react.useState)(""),
- _useState4 = slicedToArray_default()(_useState3, 2),
- token = _useState4[0],
- setToken = _useState4[1];
- var _useState5 = (0,_react_17_0_2_react.useState)(),
- _useState6 = slicedToArray_default()(_useState5, 2),
- officeData = _useState6[0],
- setOfficeData = _useState6[1];
- var officePath = window.ENV === "build" ? "/react/build" : "";
- var apiServer = location.host.startsWith("localhost") ? env/* default */.Z.PROXY_SERVER : env/* default */.Z.API_SERVER;
- // let size;
- var unit = 1024 * 1024;
- var maxSize = 10 * unit;
- var closeRef = (0,_react_17_0_2_react.useRef)();
- if ((_data = data) !== null && _data !== void 0 && _data.startsWith("/api") && type !== "txt") {
- data = env/* default */.Z.API_SERVER + data;
- }
- var getFileExtension = function getFileExtension(url) {
- var filename = url.substring(url.lastIndexOf('/') + 1);
- var extension = filename.split('.').pop();
- return extension;
- };
- if (filename) monacoEditor.filename = filename;
- (0,_react_17_0_2_react.useEffect)(function () {
- var _document$cookie;
- var cookies = (_document$cookie = document.cookie) === null || _document$cookie === void 0 || (_document$cookie = _document$cookie.replace(/\s/g, "")) === null || _document$cookie === void 0 ? void 0 : _document$cookie.split(";");
- cookies === null || cookies === void 0 || cookies.map(function (item) {
- var i = item.split("=");
- if (i[0] === '_educoder_session') {
- setToken(i[1]);
- }
- });
- }, []);
- (0,_react_17_0_2_react.useEffect)(function () {
- if (type === "office") {
- if (data.indexOf("bigfilescdn.") > -1) {
- setOfficeData({
- url: data,
- fileType: getFileExtension(data),
- model: data.indexOf("model=edit") ? "edit" : "view"
- });
- } else {
- getData();
- }
- }
- }, [type, data]);
- var getData = /*#__PURE__*/function () {
- var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
- var _url, _id, res;
- return regeneratorRuntime_default()().wrap(function _callee$(_context) {
- while (1) switch (_context.prev = _context.next) {
- case 0:
- console.log("data:", data);
- _url = data;
- if (!data.startsWith("http")) {
- _url = location.origin + _url;
- }
- _id = new URL(_url).pathname.split("/").pop();
- _context.next = 6;
- return (0,exercise/* setEcsAttachment */.gJ)({
- attachment_id: _id
- });
- case 6:
- res = _context.sent;
- res.url = apiServer + res.url;
- setOfficeData(res);
- case 9:
- case "end":
- return _context.stop();
- }
- }, _callee);
- }));
- return function getData() {
- return _ref2.apply(this, arguments);
- };
- }();
- var handleClick = function handleClick() {
- if (data.startsWith("http") || data.startsWith('blob:')) {
- handleDown();
- return;
- }
- (0,util/* downloadFile */.Sv)(filename || 'educoder', data, filename);
- };
- var handleDown = function handleDown() {
- (0,util/* downLoadLink */.Nd)(filename || 'educoder', decodeURIComponent(data));
- };
- return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
- style: objectSpread2_default()({}, style || {}),
- className: "".concat(hasMask && PreviewAllmodules.bgBlack, " ").concat(!!type ? PreviewAllmodules.wrp : "hide"),
- children: [close && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
- className: PreviewAllmodules.close,
- ref: closeRef,
- children: [!!onImgDimensions && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
- title: "\u70B9\u51FB\u5BF9\u56FE\u7247\u8FDB\u884C\u6279\u6CE8",
- getPopupContainer: function getPopupContainer() {
- return closeRef.current;
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
- onClick: function onClick() {
- onClose();
- onImgDimensions();
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "icon-yulanpizhu"
- })
- })
- }), !disabledDownload && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
- title: "\u70B9\u51FB\u4E0B\u8F7D\u6B64\u6587\u4EF6",
- getPopupContainer: function getPopupContainer() {
- return closeRef.current;
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
- onClick: handleDown,
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "icon-quxiaozhiding"
- })
- })
- }), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
- title: "\u5173\u95ED",
- getPopupContainer: function getPopupContainer() {
- return closeRef.current;
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
- className: "",
- onClick: onClose,
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "icon-guanbi1"
- })
- })
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
+ className: ImageDimensionsmodules.img,
+ ref: imgRef
+ // crossOrigin='anonymous'
+ // src={data?.src}
})]
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
- className: "".concat(PreviewAllmodules[className], " ").concat(className, " ").concat(PreviewAllmodules.monaco, " ").concat(type === "txt" ? "show" : "hide"),
- children: type === "txt" && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
- children: /*#__PURE__*/(0,jsx_runtime.jsx)(monaco_editor/* default */.ZP, objectSpread2_default()({}, monacoEditor))
- })
- }), type === "audio" && /*#__PURE__*/(0,jsx_runtime.jsx)("audio", {
- src: "".concat(((_data2 = data) === null || _data2 === void 0 ? void 0 : _data2.indexOf("http://")) > -1 || ((_data3 = data) === null || _data3 === void 0 ? void 0 : _data3.indexOf("https://")) > -1 ? "" : "data:audio/mp3;base64,").concat(data),
- autoPlay: true
- }), type === "video" && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
- children: ((_data4 = data) === null || _data4 === void 0 ? void 0 : _data4.indexOf("http")) > -1 ? /*#__PURE__*/(0,jsx_runtime.jsx)("video", {
- controls: true,
- src: "".concat(data),
- autoPlay: true
- }) : /*#__PURE__*/(0,jsx_runtime.jsx)("video", {
- controls: true,
- src: "data:video/mp4;base64,".concat(data),
- autoPlay: true
- })
- }), type === 'office' && officeData && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", {
- src: "".concat(officePath, "/office.html?key=").concat(officeData.key, "&url=").concat(btoa(officeData.url), "&callbackUrl=").concat(apiServer + officeData.callbackUrl, "&fileType=").concat(officeData.fileType, "&title=").concat(officeData.title, "&model=").concat(editOffice, "&officeServer=").concat(env/* default */.Z.ONLYOFFICE, "&disabledDownload=").concat(!!disabledDownload)
- }), type === 'html' && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", {
- src: data + '&disposition=inline'
- }), type === 'pdf' && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", {
- src: "".concat(officePath, "/js/pdfview/index.html?url=").concat(data, "&disabledDownload=").concat(!!disabledDownload)
- }) //
- , type === "image" && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
- src: "".concat(((_data5 = data) === null || _data5 === void 0 ? void 0 : _data5.indexOf("http://")) > -1 || ((_data6 = data) === null || _data6 === void 0 ? void 0 : _data6.indexOf("https://")) > -1 ? "" : "data:image/png;base64,").concat(data)
- }), (type === "other" || type === "download") && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
- children: showNodata ? /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {
- customText: "\u5F53\u524D\u6587\u4EF6\u4E0D\u652F\u6301\u9884\u89C8\uFF0C\u53EF\u70B9\u51FB\u4E0B\u8F7D\u67E5\u770B",
- ButtonTwo: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
- icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "iconfont icon-xiazai4 font14"
- }),
- type: "primary",
- size: 'middle',
- onClick: handleClick,
- children: "\u4E0B\u8F7D"
- })
- }) : /*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
- type: "primary",
- size: 'middle',
- onClick: handleClick,
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ArrowDownOutlined/* default */.Z, {}), "\u70B9\u51FB\u4E0B\u8F7D"]
- })
- })]
+ })
});
-});
+};
+/* harmony default export */ var components_ImageDimensions = (ImageDimensions);
/***/ }),
-/***/ 66128:
-/*!*********************************************!*\
- !*** ./src/components/RenderHtml/index.tsx ***!
- \*********************************************/
+/***/ 50725:
+/*!*****************************************************!*\
+ !*** ./src/components/MathsLatexKeybords/index.tsx ***!
+ \*****************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/toConsumableArray.js */ 37205);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/createForOfIteratorHelper.js */ 91232);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var katex_dist_katex_min_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! katex/dist/katex.min.css */ 48725);
-/* harmony import */ var _utils_marked__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/utils/marked */ 39790);
-/* harmony import */ var code_prettify__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! code-prettify */ 64018);
-/* harmony import */ var code_prettify__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(code_prettify__WEBPACK_IMPORTED_MODULE_7__);
-/* harmony import */ var hls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! hls.js */ 27627);
-/* harmony import */ var _utils_env__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/utils/env */ 83877);
-/* harmony import */ var katex__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! katex */ 15342);
-/* harmony import */ var katex__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(katex__WEBPACK_IMPORTED_MODULE_10__);
-/* harmony import */ var uuid__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! uuid */ 1012);
-/* harmony import */ var _components_PreviewAll__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/components/PreviewAll */ 13039);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
-
-
-
-
-
-
-
-
-
-
+"use strict";
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.less?modules */ 75885);
+/* harmony import */ var mathlatex__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! mathlatex */ 48136);
+/* harmony import */ var _keybords__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./keybords */ 70118);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! antd */ 43418);
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
-var ADD_MULTI = '@▁▁@';
-var ADD_SINGLE = '@▁@';
-var preRegex = /]*>/g;
-function _unescape(str) {
- var div = document.createElement('div');
- div.innerHTML = str;
- return div.childNodes.length === 0 ? '' : div.childNodes[0].nodeValue;
-}
-/* harmony default export */ __webpack_exports__.Z = (function (_ref) {
- var _ref$value = _ref.value,
- value = _ref$value === void 0 ? '' : _ref$value,
- className = _ref.className,
- showTextOnly = _ref.showTextOnly,
- showLines = _ref.showLines,
- _ref$style = _ref.style,
- style = _ref$style === void 0 ? {} : _ref$style,
- _ref$stylesPrev = _ref.stylesPrev,
- stylesPrev = _ref$stylesPrev === void 0 ? {} : _ref$stylesPrev,
- highlightKeywords = _ref.highlightKeywords,
- showProgramFill = _ref.showProgramFill,
- isProgramFill = _ref.isProgramFill,
- _ref$disabledFill = _ref.disabledFill,
- disabledFill = _ref$disabledFill === void 0 ? false : _ref$disabledFill,
- programFillValue = _ref.programFillValue,
- _ref$onFillChange = _ref.onFillChange,
- onFillChange = _ref$onFillChange === void 0 ? function (value) {} : _ref$onFillChange,
- _ref$onFillBlur = _ref.onFillBlur,
- onFillBlur = _ref$onFillBlur === void 0 ? function () {} : _ref$onFillBlur;
- var str = String(value);
- var _useState = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)(""),
- _useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState, 2),
- data = _useState2[0],
- setData = _useState2[1];
- var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)("office"),
- _useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState3, 2),
- type = _useState4[0],
- setType = _useState4[1];
- var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)([]),
- _useState6 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState5, 2),
- projectValue = _useState6[0],
- setProjectValue = _useState6[1];
- var classNamesRef = (0,react__WEBPACK_IMPORTED_MODULE_4__.useRef)("a" + (0,uuid__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z)());
- var formObj = {};
- var createInput = function createInput(a, num) {
- // const wrap = document.createElement("span")
- // wrap.className =
- var input = document.createElement(a === ADD_SINGLE ? "input" : "textarea");
- input.style.width = "100%";
- input.style.height = a === ADD_SINGLE ? "40px" : "151px";
- input.rows = 5;
- input.spellcheck = false;
- input.name = "edu-program-fill";
- input.placeholder = "请输入";
- input.dataset.id = num;
- var key = Object.keys(formObj).length;
- formObj[key] = input;
- return "").concat(input.outerHTML, "");
- };
- var formatMD = function formatMD(rs) {
- return rs.replace(/([\s\S]+?)<\/style>/gim, function (_, css) {
- var _css = css.replace(/(\n|\r)/g, "").split("}");
- var arr = [];
- _css.map(function (item) {
- if (item != '') {
- arr.push(".".concat(classNamesRef.current, " ").concat(item));
- }
- });
- return "");
- });
- };
- var html = (0,react__WEBPACK_IMPORTED_MODULE_4__.useMemo)(function () {
- try {
- var reg = /\(\s+\/api\/attachments\/|\(\/api\/attachments\/|\(\/attachments\/download\//g;
- var reg2 = /\"\/api\/attachments\/|\"\/attachments\/download\//g;
- var reg3 = /\(\s+\/files\/uploads\/|\"\/files\/uploads\//g;
- str = str.replace(reg, "(" + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/api/attachments/").replace(reg2, '"' + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/api/attachments/").replace(reg3, '"' + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/files/uploads/").replaceAll("http://video.educoder", "https://video.educoder").replaceAll("http://www.educoder.net/api", "https://data.educoder.net/api").replaceAll("https://www.educoder.net/api", "https://data.educoder.net/api").replace(/\r\n/g, "\n");
- // str = str.replace(new RegExp("(?", ">").replace(/(@▁▁@|@▁@)/g, function (a, b, c) {
- ++num;
- return createInput(a, num);
- });
- return "".concat(formatMD(str || ""), "
");
- }
- var rs = formatMD(str);
- rs = (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .ZP)(rs);
- var math_expressions = (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .getMathExpressions */ .ez)();
- if (str.match(/\[TOC\]/)) {
- rs = rs.replace('[TOC]
', (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .getTocContent */ .Qv)());
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .cleanToc */ .Iy)();
- }
- rs = rs.replace(/(__special_katext_id_\d+__)/g, function (_match, capture) {
- var _math_expressions$cap = math_expressions[capture],
- type = _math_expressions$cap.type,
- expression = _math_expressions$cap.expression;
- return (0,katex__WEBPACK_IMPORTED_MODULE_10__.renderToString)(_unescape(expression) || '', {
- displayMode: type === 'block',
- throwOnError: false,
- output: 'html'
- });
- });
- rs = rs.replace(/▁/g, '▁▁▁');
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .resetMathExpressions */ .AL)();
- // return dompurify.sanitize(rs)
- var dom = document.createElement('div');
- dom.innerHTML = rs;
- if (highlightKeywords) {
- var escapedKeywords = highlightKeywords.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
- findKeyword(dom, escapedKeywords);
- return dom.innerHTML;
- }
- if (showTextOnly) {
- return dom.innerText;
- }
- setTimeout(function () {
- return onLoad();
- }, 500);
- return dom.innerHTML;
- }, [str, highlightKeywords]);
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (el.current) {
- var inputs = el.current.querySelectorAll(["input", "textarea"]);
- inputs.forEach(function (input) {
- input.oninput = onInput;
- input.onblur = onBlur;
- });
- }
- }, [projectValue]);
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (!!(programFillValue !== null && programFillValue !== void 0 && programFillValue.length)) {
- try {
- var scoreDom = el.current.querySelectorAll(".edu-program-fill-score");
- var dom = el.current.querySelectorAll('[name="edu-program-fill"]');
- var _iterator = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2___default()(dom.entries()),
- _step;
- try {
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
- var _programFillValue$k;
- var _step$value = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_step.value, 2),
- k = _step$value[0],
- i = _step$value[1];
- i.value = (_programFillValue$k = programFillValue[k]) === null || _programFillValue$k === void 0 ? void 0 : _programFillValue$k.value;
- if (programFillValue[k].type === "warning") {
- i.className = "program-fill-warning";
- } else if (programFillValue[k].type === "success") {
- i.className = "program-fill-success";
- } else {
- i.className = "";
- }
- }
- } catch (err) {
- _iterator.e(err);
- } finally {
- _iterator.f();
- }
- var _iterator2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2___default()(scoreDom.entries()),
- _step2;
- try {
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
- var _programFillValue$_k, _programFillValue$_k2;
- var _step2$value = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_step2.value, 2),
- _k = _step2$value[0],
- _i = _step2$value[1];
- _i.innerHTML = (_programFillValue$_k = programFillValue[_k]) !== null && _programFillValue$_k !== void 0 && _programFillValue$_k.score ? "".concat((_programFillValue$_k2 = programFillValue[_k]) === null || _programFillValue$_k2 === void 0 ? void 0 : _programFillValue$_k2.score, "\u5206") : "";
- }
- } catch (err) {
- _iterator2.e(err);
- } finally {
- _iterator2.f();
- }
- setProjectValue(programFillValue);
- } catch (error) {}
- }
- }, [programFillValue]);
- var onInput = function onInput(e) {
- projectValue[e.target.dataset.id] = projectValue[e.target.dataset.id] || {};
- projectValue[e.target.dataset.id]["value"] = e.target.value;
- setProjectValue(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(projectValue));
- onFillChange(projectValue, e.target.dataset.id);
- };
- var onBlur = function onBlur(e) {
- projectValue[e.target.dataset.id] = projectValue[e.target.dataset.id] || {};
- projectValue[e.target.dataset.id]["value"] = e.target.value;
- setProjectValue(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(projectValue));
- onFillBlur(projectValue, e.target.dataset.id);
+var MathsLatex = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function (_ref, ref) {
+ var callback = _ref.callback,
+ width = _ref.width,
+ onChange = _ref.onChange,
+ disabled = _ref.disabled,
+ readOnly = _ref.readOnly,
+ _ref$type = _ref.type,
+ type = _ref$type === void 0 ? "" : _ref$type,
+ _ref$value = _ref.value,
+ value = _ref$value === void 0 ? "" : _ref$value;
+ var GraphicsRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
+ var KeybordsRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
+ var getData = function getData() {
+ var dom = document.createElement("div");
+ dom.innerHTML = GraphicsRef.current.getValue();
+ var str = dom.innerText;
+ callback && callback(str);
+ return str;
};
- function findKeyword(node, keyword) {
- return node.childNodes.forEach(function (childNode) {
- if (childNode.childNodes.length > 0) {
- findKeyword(childNode, keyword);
- } else if (childNode.nodeName !== "IMG") {
- if (childNode.innerHTML) {
- var _childNode$innerHTML;
- childNode.innerHTML = (_childNode$innerHTML = childNode.innerHTML) === null || _childNode$innerHTML === void 0 ? void 0 : _childNode$innerHTML.replace(new RegExp(keyword, "gi"), '$&');
- } else {
- var dom = document.createElement("span");
- dom.innerHTML = childNode.textContent.replace(new RegExp(keyword, "gi"), '$&');
- childNode.replaceWith(dom);
- }
- }
- });
-
- // return dom.childNodes.forEach((node:any) => {
- // console.log("nodeLen:",node.childNodes.length)
- // if(node.childNodes.length > 0){
- // debugger
- // // findKeyword(dom.childNodes,keyword)
- // }else{
- // if(node.nodeName !== "#text"){
- // node.innerHTML = node.innerHTML.replaceAll(keyword,`${keyword}`)
- // console.log("node:",node,dom,node.nodeName,node.innerHTML,node.childNodes.length)
- // debugger
- // }
- // }
-
- // return node
- // });
- }
- var el = (0,react__WEBPACK_IMPORTED_MODULE_4__.useRef)();
- _utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .lines */ .jb['WebkitLineClamp'] = showLines;
- if (showLines) {
- style = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, style), _utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .lines */ .jb);
- }
- function onAncherHandler(e) {
- var target = e.target;
- if (target.tagName.toUpperCase() === 'A') {
- var ancher = target.getAttribute('href');
- if (ancher.indexOf("office") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("office");
- } else if (ancher.indexOf("application/pdf") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("pdf");
- } else if (ancher.indexOf("text/html") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("html");
- } else if (ancher.startsWith('#')) {
- e.preventDefault();
- var viewEl = document.getElementById(ancher.replace('#', ''));
- if (viewEl) {
- viewEl.scrollIntoView(true);
- }
- }
- }
- }
- var onLoad = function onLoad() {
- var _el$current;
- var videoElement = (_el$current = el.current) === null || _el$current === void 0 ? void 0 : _el$current.querySelectorAll('video');
- videoElement === null || videoElement === void 0 || videoElement.forEach(function (item) {
- item.oncontextmenu = function () {
- return false;
- };
- if (item.src.indexOf('.m3u8') > -1) {
- if (item.canPlayType('application/vnd.apple.mpegurl')) {} else if (hls_js__WEBPACK_IMPORTED_MODULE_8__/* ["default"].isSupported */ .ZP.isSupported()) {
- var hls = new hls_js__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .ZP();
- hls.loadSource(item.src);
- hls.attachMedia(item);
- }
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useImperativeHandle)(ref, function () {
+ return {
+ getData: getData
+ };
+ });
+ var showInput = function showInput() {
+ if (disabled || readOnly) return;
+ antd__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z.confirm({
+ content: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(_keybords__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
+ value: value,
+ ref: KeybordsRef,
+ onChange: onChange,
+ showSaveButton: false
+ }),
+ width: 860,
+ icon: null,
+ title: "输入LATEX公式",
+ onOk: function onOk() {
+ var val = KeybordsRef.current.getData();
+ GraphicsRef.current.setValue(val);
+ onChange(val);
}
});
};
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (el.current && html) {
- if (html.match(preRegex)) {
- window.PR.prettyPrint();
- }
- }
- if (el.current) {
- el.current.addEventListener('click', onAncherHandler);
- return function () {
- var _el$current2;
- (_el$current2 = el.current) === null || _el$current2 === void 0 || _el$current2.removeEventListener('click', onAncherHandler);
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .resetMathExpressions */ .AL)();
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .cleanToc */ .Iy)();
- };
- }
- }, [html, el.current, onAncherHandler]);
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.Fragment, {
- children: [showTextOnly && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("div", {
- ref: el,
- children: html
- }), !showTextOnly && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("div", {
- ref: el,
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, style),
- className: "".concat(className ? className : '', " ").concat(disabledFill ? "disabled-fill" : "", " markdown-body ").concat(classNamesRef.current),
- dangerouslySetInnerHTML: {
- __html: html
- }
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)(_components_PreviewAll__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {
- close: true,
- data: data,
- type: !!(data !== null && data !== void 0 && data.length) ? type : "",
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, stylesPrev),
- onClose: function onClose() {
- return setData("");
- }
- })]
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("div", {
+ style: {
+ width: width || "100%"
+ },
+ className: "".concat(_index_less_modules__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.mathFillWrap, " ").concat(disabled || readOnly ? 'cursorDefault' : ''),
+ onClick: function onClick() {
+ return showInput();
+ },
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("math-field", {
+ disabled: disabled,
+ locale: "zh_cn",
+ "class": "".concat(_index_less_modules__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.mathField, " ").concat(type),
+ readOnly: readOnly,
+ placeholder: "\u8BF7\u8F93\u5165latex\u516C\u5F0F",
+ ref: GraphicsRef,
+ style: {
+ width: "100%",
+ fontSize: value ? 18 : 14
+ },
+ value: value || ""
+ })
});
});
+/* harmony default export */ __webpack_exports__.Z = (MathsLatex);
/***/ }),
@@ -1033,6 +1919,7 @@ function _unescape(str) {
\*************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ h: function() { return /* binding */ MyCodeMirror; }
/* harmony export */ });
@@ -1127,6 +2014,9 @@ var LanguageDesc = {
content: ''
},
onFinish: onSubmit,
+ style: {
+ width: 500
+ },
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.Item, {
label: "\u4EE3\u7801\u8BED\u8A00",
name: "language",
@@ -1232,12 +2122,13 @@ function MyCodeMirror(_ref2) {
/***/ }),
-/***/ 49177:
+/***/ 89215:
/*!***************************************************************!*\
- !*** ./src/components/markdown-editor/index.tsx + 14 modules ***!
+ !*** ./src/components/markdown-editor/index.tsx + 15 modules ***!
\***************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
@@ -1362,9 +2253,13 @@ var DEFAULTICONS = [{
title: '行内公式',
icon: 'md-iconfont icon-sum',
actionName: 'inline-latex'
+}, {
+ title: '数学图像',
+ icon: 'iconfont icon-shuxuetuxiang2',
+ actionName: 'maths-latex'
}, {
title: '多行公式',
- icon: 'md-iconfont icon-formula',
+ icon: 'iconfont icon-jisuan1',
actionName: 'latex'
}, '|', {
title: '添加图片',
@@ -1503,7 +2398,7 @@ var modal = __webpack_require__(88618);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
var es_form = __webpack_require__(78241);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
-var input = __webpack_require__(1056);
+var input = __webpack_require__(11694);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
;// CONCATENATED MODULE: ./src/components/markdown-editor/link/index.tsx
@@ -1533,6 +2428,9 @@ var formItemLayout = {
},
className: "link-panel",
onFinish: onSubmit,
+ style: {
+ width: 500
+ },
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u94FE\u63A5\u5730\u5740",
name: "link",
@@ -3241,6 +4139,7 @@ function FlowChart(_ref) {
destroyOnClose: true,
maskClosable: false,
getContainer: modalRef.current,
+ rootClassName: "zIndex-9999",
title: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: 1,
@@ -3436,6 +4335,110 @@ var add_table_panel_style = {
})]
});
});
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/index.js + 2 modules
+var es_switch = __webpack_require__(78673);
+// EXTERNAL MODULE: ./src/components/MathematicalGraphics/js/index.js
+var js = __webpack_require__(28871);
+var js_default = /*#__PURE__*/__webpack_require__.n(js);
+;// CONCATENATED MODULE: ./src/components/MathematicalGraphics/index.tsx
+
+
+
+
+
+
+
+var MathematicalGraphics_FlowChart = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(function (_ref, ref) {
+ var use3d = _ref.use3d,
+ width = _ref.width,
+ height = _ref.height,
+ callback = _ref.callback,
+ showSaveButton = _ref.showSaveButton;
+ var ggbAppletRef = (0,_react_17_0_2_react.useRef)();
+ var appletRef = (0,_react_17_0_2_react.useRef)();
+ var _useState = (0,_react_17_0_2_react.useState)(false),
+ _useState2 = slicedToArray_default()(_useState, 2),
+ is3D = _useState2[0],
+ setIs3d = _useState2[1];
+ var parameters = (0,_react_17_0_2_react.useRef)({
+ "id": ggbAppletRef,
+ "appName": "graphing",
+ "width": width || 1000,
+ "height": height || 600,
+ "showToolBar": true,
+ "showMenuBar": true,
+ "allowStyleBar": true,
+ "showAlgebraInput": true,
+ "enableLabelDrags": false,
+ "enableShiftDragZoom": true,
+ "showToolBarHelp": false,
+ "errorDialogsActive": true,
+ "showTutorialLink": true,
+ "showLogging": true,
+ "useBrowserForJS": false
+ });
+ (0,_react_17_0_2_react.useEffect)(function () {
+ appletRef.current = new (js_default())(parameters.current, true);
+ window.onload = function () {
+ appletRef.current.inject('applet_container');
+ };
+ }, []);
+ var getImgData = function getImgData() {
+ var str = window.ggbApplet.getPNGBase64(1, true, 72);
+ callback && callback(str);
+ return str;
+ };
+ (0,_react_17_0_2_react.useEffect)(function () {
+ parameters.current.appName = is3D ? "3D" : "graphing";
+ appletRef.current.inject('applet_container');
+ }, [is3D]);
+ (0,_react_17_0_2_react.useEffect)(function () {
+ setIs3d(use3d);
+ }, [use3d]);
+ (0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
+ return {
+ getImgData: getImgData
+ };
+ });
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ style: {
+ width: "100%",
+ height: "100%"
+ },
+ id: "applet_container",
+ ref: ggbAppletRef
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
+ align: "middle",
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
+ flex: 1,
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_switch/* default */.Z, {
+ size: "default",
+ checkedChildren: "\u5173\u95ED3D\u56FE\u50CF",
+ unCheckedChildren: "\u5F00\u542F3D\u56FE\u50CF",
+ checked: is3D,
+ onChange: function onChange(e) {
+ return setIs3d(e);
+ }
+ })
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
+ size: "large",
+ onClick: getImgData,
+ style: {
+ zIndex: 8,
+ marginTop: 10
+ },
+ type: "primary",
+ children: "\u4FDD\u5B58\u5230\u7F16\u8F91\u5668"
+ })
+ })]
+ })]
+ });
+});
+/* harmony default export */ var MathematicalGraphics = (MathematicalGraphics_FlowChart);
+// EXTERNAL MODULE: ./src/components/MathsLatexKeybords/keybords.tsx
+var keybords = __webpack_require__(70118);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(83877);
;// CONCATENATED MODULE: ./src/components/markdown-editor/constant.ts
@@ -3482,6 +4485,8 @@ var useInterval = __webpack_require__(94158);
+
+
@@ -3499,7 +4504,7 @@ function processSize(size) {
var isMac = navigator.platform.toUpperCase().indexOf('MAC') >= 0;
var key = isMac ? 'Cmd' : 'Ctrl';
var DEFAULTKEYMAP = defineProperty_default()(defineProperty_default()({}, key + '-B', 'bold'), key + '-I', 'italic');
-var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, LINK, '添加链接'), CODE_BLOCK, '添加代码块'), UPLOAD_IMAGE, '添加图片'), DRAW_IMAGE, '添加画图'), ADD_FLOWCHART, '插入流程图'), ADD_TABLE, '添加表格');
+var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, LINK, '添加链接'), CODE_BLOCK, '添加代码块'), UPLOAD_IMAGE, '添加图片'), DRAW_IMAGE, '添加画图'), ADD_FLOWCHART, '插入流程图'), ADD_TABLE, '添加表格'), 'maths-latex', "数学图像"), 'inline-latex', "LATEX公式");
//https://codemirror.net/demo
//The height can be set through CSS (by giving the .CodeMirror class a height property), or by calling the cm's setSize method.
@@ -3916,10 +4921,11 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
}
return cm.focus();
case 'inline-latex':
- cm.replaceSelection('`$$' + selection + '$$`');
- if (selection === '') {
- cm.setCursor(cursor.line, cursor.ch + 3);
- }
+ setAction("inline-latex");
+ // cm.replaceSelection('`$$' + selection + '$$`')
+ // if (selection === '') {
+ // cm.setCursor(cursor.line, cursor.ch + 3)
+ // }
return cm.focus();
case 'latex':
cm.replaceSelection("```latex\n" + selection + "\n```");
@@ -3991,6 +4997,9 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
case DRAW_IMAGE:
setAction(DRAW_IMAGE);
return;
+ case "maths-latex":
+ setAction("maths-latex");
+ return;
case ADD_FLOWCHART:
setAction(ADD_FLOWCHART);
return;
@@ -4015,6 +5024,26 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
content = values.content;
cm.replaceSelection(['```' + language, content, '```'].join('\n'));
return cm.focus();
+ case "maths-latex":
+ var binaryString = atob(values);
+ var uint8Array = new Uint8Array(binaryString.length);
+ for (var i = 0; i < binaryString.length; i++) {
+ uint8Array[i] = binaryString.charCodeAt(i);
+ }
+ var files = new Blob([uint8Array], {
+ type: "image/png"
+ });
+ uploadImage(files, function (data) {
+ if (data.id) {
+ cm.replaceSelection(".concat(data.content_type, ")"));
+ } else {
+ if ((data === null || data === void 0 ? void 0 : data.status) === 401) document.location.href = '/user/login';
+ }
+ });
+ break;
+ case "inline-latex":
+ cm.replaceSelection("`$$" + values + "$$`");
+ break;
case UPLOAD_IMAGE:
case DRAW_IMAGE:
case FLOW_CHART:
@@ -4092,6 +5121,16 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
callback: ExecutePluginAction,
onCancel: onCancel
});
+ case "maths-latex":
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(MathematicalGraphics, {
+ showSaveButton: true,
+ callback: ExecutePluginAction
+ });
+ case "inline-latex":
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(keybords/* default */.Z, {
+ showSaveButton: true,
+ callback: ExecutePluginAction
+ });
default:
return null;
}
@@ -4232,7 +5271,7 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
onCancel: onCancel,
footer: null,
destroyOnClose: true,
- width: action === ADD_FLOWCHART ? "1200px" : 520,
+ width: action === ADD_FLOWCHART ? "1200px" : null,
height: action === ADD_FLOWCHART ? "80vh" : null,
className: "markdown-popup-form",
children: PluginEl
@@ -4249,6 +5288,7 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
\**********************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Z: function() { return /* binding */ Dialog; }
/* harmony export */ });
@@ -4304,6 +5344,7 @@ var Dialog = /*#__PURE__*/function (_React$Component) {
\****************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Z: function() { return /* binding */ useInterval; }
/* harmony export */ });
@@ -4339,6 +5380,7 @@ function useInterval(callback, delay) {
\***************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
@@ -4486,16 +5528,19 @@ var AnswerComments = function AnswerComments(_ref) {
\***********************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var _components_RenderHtml__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/RenderHtml */ 66128);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! antd */ 1056);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! antd */ 11694);
/* harmony import */ var _SeeAnswer__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./SeeAnswer */ 89761);
/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./index.less?modules */ 13706);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
+/* harmony import */ var _components_MathsLatexKeybords__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/components/MathsLatexKeybords */ 50725);
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
+
@@ -4505,7 +5550,7 @@ var AnswerComments = function AnswerComments(_ref) {
-var TextArea = antd__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z.TextArea;
+var TextArea = antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.TextArea;
var Fill = function Fill(_ref) {
var _item$standard_answer;
var item = _ref.item,
@@ -4552,9 +5597,9 @@ var Fill = function Fill(_ref) {
}
setUserAnswer(data);
}, [item === null || item === void 0 ? void 0 : item.user_answer]);
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)("div", {
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsxs)("div", {
className: _index_less_modules__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z.fillBg,
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("aside", {
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)("aside", {
className: "font14 c-light-primary mb5",
children: "\u5B66\u751F\u7B54\u9898"
}), userAnswer === null || userAnswer === void 0 ? void 0 : userAnswer.map(function (answer, index) {
@@ -4585,22 +5630,27 @@ var Fill = function Fill(_ref) {
// // })
// // })
// }
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)("div", {
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)("span", {
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsxs)("div", {
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsxs)("span", {
children: ["\u7B54\u6848(\u586B\u7A7A", index + 1, "):"]
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("div", {
- children: item.question_type == 3 ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("span", {
+ }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)("div", {
+ children: item.question_type == 3 ? (answer === null || answer === void 0 ? void 0 : answer.model) === 1 ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)("span", {
style: {
whiteSpace: 'pre-wrap',
color: answer !== null && answer !== void 0 && answer.user_answer_boolean ? "#37AD83" : "#E30000"
},
children: answer === null || answer === void 0 ? void 0 : answer.answer_text
- }) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_RenderHtml__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
+ }) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)(_components_MathsLatexKeybords__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
+ type: answer !== null && answer !== void 0 && answer.user_answer_boolean ? 'success' : 'error',
+ readOnly: true,
+ value: answer.answer_text,
+ disabled: true
+ }) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)(_components_RenderHtml__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
value: answer === null || answer === void 0 ? void 0 : answer.answer_text
})
})]
});
- }), seeAnswerVisible && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_SeeAnswer__WEBPACK_IMPORTED_MODULE_4__/* .SeeAnswer */ .u, {
+ }), seeAnswerVisible && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)(_SeeAnswer__WEBPACK_IMPORTED_MODULE_4__/* .SeeAnswer */ .u, {
data: item
})]
});
@@ -4615,13 +5665,14 @@ var Fill = function Fill(_ref) {
\**************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var _components_RenderHtml__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/RenderHtml */ 66128);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! moment */ 9498);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! antd */ 72315);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! antd */ 96860);
/* harmony import */ var _components_monaco_editor__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/components/monaco-editor */ 40774);
/* harmony import */ var js_base64__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! js-base64 */ 24334);
/* harmony import */ var js_base64__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(js_base64__WEBPACK_IMPORTED_MODULE_5__);
@@ -4747,16 +5798,19 @@ var Program = function Program(_ref) {
\****************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ u: function() { return /* binding */ SeeAnswer; }
/* harmony export */ });
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd */ 95237);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! antd */ 43604);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! antd */ 95237);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! antd */ 43604);
/* harmony import */ var _components_RenderHtml__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/RenderHtml */ 66128);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
+/* harmony import */ var _components_MathsLatexKeybords__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/MathsLatexKeybords */ 50725);
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
+
@@ -4773,9 +5827,9 @@ var SeeAnswer = function SeeAnswer(_ref) {
var _data$standard_answer, _data$standard_answer2, _data$standard_answer3;
switch (data.question_type) {
case 3:
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("aside", {
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("aside", {
className: "mt20",
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("span", {
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("span", {
style: {
cursor: "pointer"
},
@@ -4784,27 +5838,35 @@ var SeeAnswer = function SeeAnswer(_ref) {
setShow(!show);
},
children: show ? "隐藏参考答案" : "查看参考答案"
- }), show && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("div", {
+ }), show && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("div", {
children: data === null || data === void 0 || (_data$standard_answer = data.standard_answer) === null || _data$standard_answer === void 0 ? void 0 : _data$standard_answer.map(function (item, key) {
- var _item$answer_text;
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
+ var _item$answer_text, _item$answer_text2;
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
style: {
alignItems: 'baseline'
},
className: "mr20",
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(antd__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(antd__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
flex: "50px",
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("span", {
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("span", {
className: "mt10",
children: ["\u586B\u7A7A", item.choice_id, ":"]
})
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(antd__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
+ }), (item === null || item === void 0 ? void 0 : item.model) === 1 ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(antd__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
flex: 1,
children: item === null || item === void 0 || (_item$answer_text = item.answer_text) === null || _item$answer_text === void 0 ? void 0 : _item$answer_text.map(function (val, key) {
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("div", {
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("div", {
children: val
});
})
+ }) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(antd__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
+ flex: 1,
+ children: item === null || item === void 0 || (_item$answer_text2 = item.answer_text) === null || _item$answer_text2 === void 0 ? void 0 : _item$answer_text2.map(function (val, key) {
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(_components_MathsLatexKeybords__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
+ readOnly: true,
+ value: val
+ });
+ })
})]
});
})
@@ -4812,9 +5874,9 @@ var SeeAnswer = function SeeAnswer(_ref) {
});
break;
case 8:
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("aside", {
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("aside", {
className: "mt20",
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("span", {
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("span", {
style: {
cursor: "pointer"
},
@@ -4823,22 +5885,22 @@ var SeeAnswer = function SeeAnswer(_ref) {
setShow(!show);
},
children: show ? "隐藏参考答案" : "查看参考答案"
- }), show && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("div", {
+ }), show && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("div", {
children: data === null || data === void 0 || (_data$standard_answer2 = data.standard_answer) === null || _data$standard_answer2 === void 0 ? void 0 : _data$standard_answer2.map(function (item, key) {
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
style: {
alignItems: 'baseline'
},
className: "mr20",
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(antd__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(antd__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
flex: "50px",
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("span", {
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("span", {
className: "mt10",
children: ["\u586B\u7A7A", item.choice_id, ":"]
})
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(antd__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
+ }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(antd__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
flex: 1,
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("div", {
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("div", {
children: item === null || item === void 0 ? void 0 : item.answer_text
})
})]
@@ -4848,9 +5910,9 @@ var SeeAnswer = function SeeAnswer(_ref) {
});
break;
case 4:
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("aside", {
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("aside", {
className: "mt20",
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("span", {
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("span", {
style: {
cursor: "pointer"
},
@@ -4859,8 +5921,8 @@ var SeeAnswer = function SeeAnswer(_ref) {
setShow(!show);
},
children: show ? "隐藏参考答案" : "查看参考答案"
- }), show && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("div", {
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(_components_RenderHtml__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
+ }), show && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("div", {
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(_components_RenderHtml__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
value: data === null || data === void 0 || (_data$standard_answer3 = data.standard_answer) === null || _data$standard_answer3 === void 0 ? void 0 : _data$standard_answer3.join(" ")
})
})]
@@ -4868,7 +5930,7 @@ var SeeAnswer = function SeeAnswer(_ref) {
break;
}
};
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("section", {
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("section", {
children: renderDom()
});
};
@@ -4881,6 +5943,7 @@ var SeeAnswer = function SeeAnswer(_ref) {
\*************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js */ 7557);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js */ 41498);
@@ -4895,7 +5958,7 @@ var SeeAnswer = function SeeAnswer(_ref) {
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! antd */ 6848);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! antd */ 85731);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! antd */ 8591);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! antd */ 72315);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! antd */ 96860);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! moment */ 9498);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! umi */ 16749);
@@ -5264,6 +6327,7 @@ var Shixun = function Shixun(_ref) {
\***************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ c: function() { return /* binding */ QuestionType; }
/* harmony export */ });
@@ -5288,198 +6352,13 @@ var QuestionType = /*#__PURE__*/function (QuestionType) {
/***/ }),
-/***/ 39790:
-/*!*****************************!*\
- !*** ./src/utils/marked.ts ***!
- \*****************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ AL: function() { return /* binding */ resetMathExpressions; },
-/* harmony export */ Iy: function() { return /* binding */ cleanToc; },
-/* harmony export */ Qv: function() { return /* binding */ getTocContent; },
-/* harmony export */ ez: function() { return /* binding */ getMathExpressions; },
-/* harmony export */ jb: function() { return /* binding */ lines; }
-/* harmony export */ });
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var marked__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! marked */ 32834);
-/* harmony import */ var marked__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(marked__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! marked/src/helpers */ 11690);
-/* harmony import */ var marked_src_helpers__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__);
-
-
-
-function indentCodeCompensation(raw, text) {
- var matchIndentToCode = raw.match(/^(\s+)(?:```)/);
- if (matchIndentToCode === null) {
- return text;
- }
- var indentToCode = matchIndentToCode[1];
- return text.split('\n').map(function (node) {
- var matchIndentInNode = node.match(/^\s+/);
- if (matchIndentInNode === null) {
- return node;
- }
- var _matchIndentInNode = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default()(matchIndentInNode, 1),
- indentInNode = _matchIndentInNode[0];
- if (indentInNode.length >= indentToCode.length) {
- return node.slice(indentToCode.length);
- }
- return node;
- }).join('\n');
-}
-//兼容之前的 ##标题式写法
-var toc = [];
-var ctx = [""];
-var renderer = new (marked__WEBPACK_IMPORTED_MODULE_1___default().Renderer)();
-var headingRegex = /^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/;
-function cleanToc() {
- toc.length = 0;
- ctx = [""];
-}
-var lines = {
- overflow: "hidden",
- WebkitBoxOrient: "vertical",
- display: "-webkit-box",
- WebkitLineClamp: 2
-};
-function buildToc(coll, k, level, ctx) {
- if (k >= coll.length || coll[k].level <= level) {
- return k;
- }
- var node = coll[k];
- ctx.push("- " + node.text + "");
- k++;
- var childCtx = [];
- k = buildToc(coll, k, node.level, childCtx);
- if (childCtx.length > 0) {
- ctx.push("
");
- childCtx.forEach(function (idm) {
- ctx.push(idm);
- });
- ctx.push("
");
- }
- ctx.push(" ");
- k = buildToc(coll, k, level, ctx);
- return k;
-}
-function getTocContent() {
- buildToc(toc, 0, 0, ctx);
- ctx.push("
");
- return ctx.join("");
-}
-var tokenizer = {
- heading: function heading(src) {
- var cap = headingRegex.exec(src);
- if (cap) {
- return {
- type: 'heading',
- raw: cap[0],
- depth: cap[1].length,
- text: cap[2]
- };
- }
- },
- fences: function fences(src) {
- var cap = this.rules.block.fences.exec(src);
- if (cap) {
- var raw = cap[0];
- var text = indentCodeCompensation(raw, cap[3] || '');
- var lang = cap[2] ? cap[2].trim() : cap[2];
- if (['latex', 'katex', 'math'].indexOf(lang) >= 0) {
- var id = next_id();
- var expression = text;
- text = id;
- math_expressions[id] = {
- type: 'block',
- expression: expression
- };
- }
- return {
- type: 'code',
- raw: raw,
- lang: lang,
- text: text
- };
- }
- }
-};
-var latexRegex = /(?:\${2})([^\n`]+?)(?:\${2})/gi;
-var katex_count = 0;
-var next_id = function next_id() {
- return "__special_katext_id_".concat(katex_count++, "__");
-};
-var math_expressions = {};
-function getMathExpressions() {
- return math_expressions;
-}
-function resetMathExpressions() {
- katex_count = 0;
- math_expressions = {};
-}
-function replace_math_with_ids(text) {
- text = text.replace(latexRegex, function (_match, expression) {
- var id = next_id();
- math_expressions[id] = {
- type: 'inline',
- expression: expression
- };
- return id;
- });
- return text;
-}
-var original_listitem = renderer.listitem;
-renderer.listitem = function (text) {
- return original_listitem(replace_math_with_ids(text));
-};
-var original_paragraph = renderer.paragraph;
-renderer.paragraph = function (text) {
- return original_paragraph(replace_math_with_ids(text));
-};
-var original_tablecell = renderer.tablecell;
-renderer.tablecell = function (content, flags) {
- return original_tablecell(replace_math_with_ids(content), flags);
-};
-renderer.code = function (code, infostring, escaped) {
- var lang = (infostring || '').match(/\S*/)[0];
- if (!lang) {
- return '
' + (escaped ? code : (0,marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__.escape)(code, true)) + '
';
- }
- if (['latex', 'katex', 'math'].indexOf(lang) >= 0) {
- return "".concat(code, "
");
- } else {
- return "").concat(escaped ? code : (0,marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__.escape)(code, true), "
\n");
- }
-};
-renderer.heading = function (text, level, raw) {
- var anchor = this.options.headerPrefix + raw.toLowerCase().replace(/[^\w\\u4e00-\\u9fa5]]+/g, '-');
- toc.push({
- anchor: anchor,
- level: level,
- text: text
- });
- return '' + text + ' ';
-};
-marked__WEBPACK_IMPORTED_MODULE_1___default().setOptions({
- silent: true,
- gfm: true,
- pedantic: false
-});
-marked__WEBPACK_IMPORTED_MODULE_1___default().use({
- tokenizer: tokenizer,
- renderer: renderer
-});
-/* harmony default export */ __webpack_exports__.ZP = ((marked__WEBPACK_IMPORTED_MODULE_1___default()));
-
-/***/ }),
-
/***/ 66325:
/*!***********************************************************************!*\
!*** ./src/pages/Classrooms/Lists/Exercise/Export/index.less?modules ***!
\***********************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__) {
+"use strict";
// extracted by mini-css-extract-plugin
/* harmony default export */ __webpack_exports__.Z = ({"flex_box_center":"flex_box_center___GW1u0","flex_space_between":"flex_space_between___XhK9z","flex_box_vertical_center":"flex_box_vertical_center___NKIbp","flex_box_center_end":"flex_box_center_end___V3qhT","flex_box_column":"flex_box_column___b4G29","bg":"bg___exMJB","paginationWrapper":"paginationWrapper___ROsRI","totalText":"totalText___PGE6D","num":"num___jLrBF","title":"title___yiXeD","questionIcons":"questionIcons___v75Tz","green":"green___HRGef","orange":"orange___tdW4E","greenTip":"greenTip___f2SpQ","redTip":"redTip___jc8UE","orangeTip":"orangeTip___VMO_s","flexRow":"flexRow___Jshv2","simpleWrap":"simpleWrap___ul6oi","divider":"divider___Of_8z","modal":"modal___oAD7F","programTitle":"programTitle___ybswa","simpleBg":"simpleBg___yLrQy","exportBtn":"exportBtn___x5fcE","export_type_modal":"export_type_modal___hmW4i","export_type_modal_con":"export_type_modal_con___R2S3f","type_item":"type_item___NsmrH","img_warp":"img_warp___LUfHa","img_warp_active":"img_warp_active____uL7y"});
@@ -5491,6 +6370,7 @@ marked__WEBPACK_IMPORTED_MODULE_1___default().use({
\*********************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__) {
+"use strict";
// extracted by mini-css-extract-plugin
/* harmony default export */ __webpack_exports__.Z = ({"flex_box_center":"flex_box_center___VAUts","flex_space_between":"flex_space_between___gx5ZV","flex_box_vertical_center":"flex_box_vertical_center___HV_tL","flex_box_center_end":"flex_box_center_end___fVsIw","flex_box_column":"flex_box_column___F5DHk","shixunWrp":"shixunWrp___pinaF","s":"s___mtpV4","fillComment":"fillComment___WEgkI","commentContent":"commentContent___v_Ebo","commentText":"commentText___fyDle","simpleWrap":"simpleWrap___uwIie","fillBg":"fillBg___iyMsm","simpleBg":"simpleBg___UqElF","lookCode":"lookCode___xKifS"});
@@ -5502,6 +6382,7 @@ marked__WEBPACK_IMPORTED_MODULE_1___default().use({
\***********************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__) {
+"use strict";
// extracted by mini-css-extract-plugin
/* harmony default export */ __webpack_exports__.Z = ({"flex_box_center":"flex_box_center___D6Qly","flex_space_between":"flex_space_between___ZA98O","flex_box_vertical_center":"flex_box_vertical_center___aST6E","flex_box_center_end":"flex_box_center_end___kJ_eQ","flex_box_column":"flex_box_column___ZOkyZ","bg":"bg___rbSyL","circularBlue":"circularBlue___qvnla","circularRed":"circularRed___jo0FU","circularOrange":"circularOrange___GteY7","circularGreen":"circularGreen___PW_tz","circularGrey":"circularGrey___Nt7Wc","title":"title___Volf5","questionIcons":"questionIcons___MIxzq","grey":"grey___XquYB","green":"green___sjsXt","blue":"blue___Jwa9H","orange":"orange___cGfa7","red":"red___NensB","greenTip":"greenTip___lDmky","redTip":"redTip___Yp9nM","cccTip":"cccTip___Uzudc","orangeTip":"orangeTip___gA104","flexRow":"flexRow___GsOMs","simpleWrap":"simpleWrap___jppmP","userPhoto":"userPhoto___LUsoO","CCCIcons":"CCCIcons___STbxr","buttonFixed":"buttonFixed___aUnd3","progress":"progress___w_inO","typeTitle":"typeTitle___i1hJu","answerResult":"answerResult___kLknn","questionsInfo":"questionsInfo___spnx1","leftBar":"leftBar___AjrjB","greenBg":"greenBg___nlTOV","blueBg":"blueBg___nYACT","redBg":"redBg___WTgtT","orangeBg":"orangeBg___mMAXu","greyBg":"greyBg___eAdgQ","commentText":"commentText___smAVm","full":"full____Rgkm","answerInfo":"answerInfo___iSSvg","listType":"listType___fUHyn","userInfo":"userInfo___sc77e","userImg":"userImg___mL2tk","userInfoTitle":"userInfoTitle___U2d5B","userInfoValue":"userInfoValue___DBOCD","status":"status___yZSrO","result":"result___TOeTF","evaluate":"evaluate___CJGFj","analysis":"analysis___NuY61","userInfoModel":"userInfoModel___jHeA_","width":"width___UtVF4","Title":"Title___BfkeS","Value":"Value___sj9SB","userInfoModelbody":"userInfoModelbody___nQNbP","answerError":"answerError___kJTJu","export_type_modal":"export_type_modal___UwY7W","export_type_modal_con":"export_type_modal_con___iD92j","type_item":"type_item___hBzOc","img_warp":"img_warp___ijcxd","img_warp_active":"img_warp_active___VUIa8","scoreByBlankRadio":"scoreByBlankRadio___Z7ZDy","newProgramBg":"newProgramBg___zKYmY"});
@@ -5513,6 +6394,7 @@ marked__WEBPACK_IMPORTED_MODULE_1___default().use({
\*************************************************/
/***/ (function(module) {
+"use strict";
module.exports = "data:image/png;base64,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";
/***/ }),
@@ -5523,8 +6405,20 @@ module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0CAYAAADL
\**************************************************/
/***/ (function(module) {
+"use strict";
module.exports = "data:image/png;base64,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";
+/***/ }),
+
+/***/ 93314:
+/*!********************************************!*\
+ !*** ./src/assets/images/icons/nodata.png ***!
+ \********************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "data:image/png;base64,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";
+
/***/ })
}]);
\ No newline at end of file
diff --git a/89471.chunk.css b/30318.chunk.css
similarity index 96%
rename from 89471.chunk.css
rename to 30318.chunk.css
index 6ea95b5f5d..6ee2e42855 100644
--- a/89471.chunk.css
+++ b/30318.chunk.css
@@ -702,6 +702,99 @@
.highlighted-line {
background: #4B4B18;
}
+/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/components/MathsLatexKeybords/index.less?modules ***!
+ \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+.lists___xhHyq {
+ padding-bottom: 10px;
+}
+.lists___xhHyq code {
+ background: none !important;
+}
+.lists___xhHyq > div > div:first-child {
+ background: #f6f6f6;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+ padding: 10px 0;
+ font-size: 12px;
+ cursor: pointer;
+}
+.lists___xhHyq > div > div:first-child [class^="katex"] {
+ font-size: 22px;
+}
+.item___pWJAA {
+ position: relative;
+}
+.item___pWJAA:nth-last-child(-n + 3) .children___sDG61 {
+ left: auto;
+ left: initial;
+ right: 5px;
+}
+.item___pWJAA:hover {
+ z-index: 2147483648;
+}
+.item___pWJAA:hover .children___sDG61 {
+ display: block;
+}
+.children___sDG61 {
+ display: none;
+ position: absolute;
+ left: 6px;
+ top: 70px;
+ width: 440px;
+ max-height: 400px;
+ overflow: auto;
+ background: #fff;
+ border: 1px solid #ccc;
+ border-radius: 4px;
+ box-shadow: 0 0px 6px #ccc;
+ padding: 15px;
+}
+.children___sDG61 h1 {
+ font-size: 14px;
+ padding-top: 6px;
+}
+.children___sDG61 .diamond___FwgzD > div {
+ background: #f6f6f6;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+ cursor: pointer;
+ height: 50px;
+ font-size: 12px;
+ padding: 0 10px;
+ min-width: 80px;
+}
+.children___sDG61 .diamond___FwgzD > div [class^="katex"] {
+ font-size: 14px;
+}
+.button___WPN6r {
+ position: absolute;
+ right: 20px;
+ bottom: 20px;
+}
+.mathWrap___FmnMJ {
+ width: 800px;
+ height: 550px;
+}
+.mathFillWrap___PmY3H {
+ cursor: pointer;
+}
+.mathFillWrap___PmY3H ::part(menu-toggle) {
+ color: blue;
+ opacity: 1;
+ display: none;
+}
+.mathFillWrap___PmY3H math-field {
+ background: none;
+}
+.mathFillWrap___PmY3H * {
+ pointer-events: none;
+}
+
/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/pages/Classrooms/Lists/Exercise/Review/component/index.less?modules ***!
\*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
diff --git a/30357.async.js b/30357.async.js
index ff4d128f97..945edc3d67 100644
--- a/30357.async.js
+++ b/30357.async.js
@@ -30,8 +30,8 @@ var message = __webpack_require__(8591);
var dropdown = __webpack_require__(38854);
// EXTERNAL MODULE: ./node_modules/_flv.js@1.5.0@flv.js/src/flv.js + 38 modules
var flv = __webpack_require__(51021);
-// EXTERNAL MODULE: ./node_modules/_hls.js@1.5.1@hls.js/dist/hls.mjs
-var dist_hls = __webpack_require__(27627);
+// EXTERNAL MODULE: ./node_modules/_hls.js@1.5.2@hls.js/dist/hls.mjs
+var dist_hls = __webpack_require__(13989);
// EXTERNAL MODULE: ./src/utils/authority.ts
var authority = __webpack_require__(63813);
// EXTERNAL MODULE: ./node_modules/_react-copy-to-clipboard@5.0.2@react-copy-to-clipboard/lib/index.js
diff --git a/68133.async.js b/31165.async.js
similarity index 96%
rename from 68133.async.js
rename to 31165.async.js
index b6503f3290..047891824b 100644
--- a/68133.async.js
+++ b/31165.async.js
@@ -1,5 +1,5 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[68133],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[31165],{
/***/ 3879:
/*!**************************************************************!*\
@@ -33,7 +33,7 @@ var statistic = __webpack_require__(31797);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
var es_modal = __webpack_require__(43418);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/table/index.js + 85 modules
-var table = __webpack_require__(72315);
+var table = __webpack_require__(96860);
// EXTERNAL MODULE: ./src/utils/fullscreen.ts
var fullscreen = __webpack_require__(89365);
// EXTERNAL MODULE: ./src/service/exercise.ts
@@ -784,66 +784,6 @@ var RecordScreen = function RecordScreen(_ref) {
/***/ }),
-/***/ 782:
-/*!*****************************************!*\
- !*** ./src/components/NoData/index.tsx ***!
- \*****************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/assets/images/icons/nodata.png */ 93314);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd */ 3113);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
-
-
-
-
-
-
-var noData = function noData(_ref) {
- var img = _ref.img,
- _ref$buttonProps = _ref.buttonProps,
- buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
- _ref$styles = _ref.styles,
- styles = _ref$styles === void 0 ? {} : _ref$styles,
- customText = _ref.customText,
- ButtonText = _ref.ButtonText,
- ButtonClick = _ref.ButtonClick,
- Buttonclass = _ref.Buttonclass,
- ButtonTwo = _ref.ButtonTwo,
- imgStyles = _ref.imgStyles,
- _ref$loading = _ref.loading,
- loading = _ref$loading === void 0 ? false : _ref$loading;
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("section", {
- className: "tc animated fadeIn",
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, {
- color: '#999',
- margin: '100px auto',
- visibility: loading ? 'hidden' : 'visible'
- }), styles),
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
- src: img || _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__,
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, imgStyles), {}, {
- pointerEvents: "none",
- userSelect: "none"
- })
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("p", {
- className: "mt20 font14",
- children: customText || '暂时还没有相关数据哦!'
- }), ButtonText && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(antd__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .ZP, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({
- className: Buttonclass,
- onClick: ButtonClick
- }, buttonProps), {}, {
- children: ButtonText
- })), ButtonTwo && ButtonTwo]
- });
-};
-/* harmony default export */ __webpack_exports__.Z = (noData);
-
-/***/ }),
-
/***/ 11810:
/*!******************************************************!*\
!*** ./src/components/Spinner/index.tsx + 1 modules ***!
diff --git a/60175.async.js b/31942.async.js
similarity index 58%
rename from 60175.async.js
rename to 31942.async.js
index 983bd163a7..862db32343 100644
--- a/60175.async.js
+++ b/31942.async.js
@@ -1,5 +1,934 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[60175,4977],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[31942,4977],{
+
+/***/ 75738:
+/*!********************************************************!*\
+ !*** ./src/components/CutOffNow/index.tsx + 1 modules ***!
+ \********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ CutOffNow; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
+var regeneratorRuntime = __webpack_require__(7557);
+var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
+var asyncToGenerator = __webpack_require__(41498);
+var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
+var slicedToArray = __webpack_require__(79800);
+var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
+var es_form = __webpack_require__(78241);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
+var message = __webpack_require__(8591);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
+var modal = __webpack_require__(43418);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/date-picker/index.js + 66 modules
+var date_picker = __webpack_require__(40209);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
+var input = __webpack_require__(11694);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/table/index.js + 85 modules
+var table = __webpack_require__(96860);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/row/index.js
+var row = __webpack_require__(95237);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/col/index.js
+var col = __webpack_require__(43604);
+// EXTERNAL MODULE: ./node_modules/_dayjs@1.11.10@dayjs/dayjs.min.js
+var dayjs_min = __webpack_require__(9498);
+var dayjs_min_default = /*#__PURE__*/__webpack_require__.n(dayjs_min);
+// EXTERNAL MODULE: ./src/utils/util.tsx
+var util = __webpack_require__(72345);
+// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 15 modules
+var _umi_production_exports = __webpack_require__(16749);
+;// CONCATENATED MODULE: ./src/components/CutOffNow/index.less?modules
+// extracted by mini-css-extract-plugin
+/* harmony default export */ var CutOffNowmodules = ({"tips":"tips___e8J4O","homeworkType":"homeworkType___ZjN2X","antdTable":"antdTable___amDdp","modalWrapper":"modalWrapper___XPojI"});
+// EXTERNAL MODULE: ./src/service/classrooms.ts
+var classrooms = __webpack_require__(73400);
+// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/ShixunHomeworks/Detail/components/ConfigWorks/Releasesetting.tsx
+var Releasesetting = __webpack_require__(32226);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
+var jsx_runtime = __webpack_require__(37712);
+;// CONCATENATED MODULE: ./src/components/CutOffNow/index.tsx
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+var CuttOffNow = function CuttOffNow(_ref) {
+ var dispatch = _ref.dispatch,
+ courseEndTime = _ref.courseEndTime,
+ classroomList = _ref.classroomList,
+ _ref$successCallback = _ref.successCallback,
+ successCallback = _ref$successCallback === void 0 ? function () {} : _ref$successCallback,
+ visible = _ref.visible,
+ homeworkIds = _ref.homeworkIds,
+ courseId = _ref.courseId,
+ isBatch = _ref.isBatch,
+ shixunHomeworks = _ref.shixunHomeworks;
+ var _Form$useForm = es_form/* default */.Z.useForm(),
+ _Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
+ form = _Form$useForm2[0];
+ var _useState = (0,_react_17_0_2_react.useState)(false),
+ _useState2 = slicedToArray_default()(_useState, 2),
+ tableLoading = _useState2[0],
+ setTableLoading = _useState2[1];
+ var _useState3 = (0,_react_17_0_2_react.useState)(false),
+ _useState4 = slicedToArray_default()(_useState3, 2),
+ confirmLoading = _useState4[0],
+ setConfirmLoading = _useState4[1];
+ var _useState5 = (0,_react_17_0_2_react.useState)(false),
+ _useState6 = slicedToArray_default()(_useState5, 2),
+ noGroup = _useState6[0],
+ setNoGroup = _useState6[1];
+ //作业截止
+ var _useState7 = (0,_react_17_0_2_react.useState)([]),
+ _useState8 = slicedToArray_default()(_useState7, 2),
+ submitCourseGroups = _useState8[0],
+ setSubmitCourseGroups = _useState8[1];
+ var _useState9 = (0,_react_17_0_2_react.useState)([]),
+ _useState10 = slicedToArray_default()(_useState9, 2),
+ submitCourseTableData = _useState10[0],
+ setSubmitCourseTableData = _useState10[1];
+ var _useState11 = (0,_react_17_0_2_react.useState)([]),
+ _useState12 = slicedToArray_default()(_useState11, 2),
+ selectedSubmitCourseIds = _useState12[0],
+ setSelectedSubmitCourseIds = _useState12[1];
+ //补交截止
+ var _useState13 = (0,_react_17_0_2_react.useState)([]),
+ _useState14 = slicedToArray_default()(_useState13, 2),
+ lateCourseGroups = _useState14[0],
+ setLateCourseGroups = _useState14[1];
+ var _useState15 = (0,_react_17_0_2_react.useState)([]),
+ _useState16 = slicedToArray_default()(_useState15, 2),
+ lateCourseTableData = _useState16[0],
+ setLateCourseTableData = _useState16[1];
+ var _useState17 = (0,_react_17_0_2_react.useState)([]),
+ _useState18 = slicedToArray_default()(_useState17, 2),
+ selectedLateCourseIds = _useState18[0],
+ setSelectedLateCourseIds = _useState18[1];
+ //批量截止
+ var _useState19 = (0,_react_17_0_2_react.useState)([]),
+ _useState20 = slicedToArray_default()(_useState19, 2),
+ allCourseGroups = _useState20[0],
+ setAllCourseGroups = _useState20[1];
+ var _useState21 = (0,_react_17_0_2_react.useState)([]),
+ _useState22 = slicedToArray_default()(_useState21, 2),
+ allCourseTableData = _useState22[0],
+ setAllCourseTableData = _useState22[1];
+ var _useState23 = (0,_react_17_0_2_react.useState)([]),
+ _useState24 = slicedToArray_default()(_useState23, 2),
+ selectedAllCourseIds = _useState24[0],
+ setSelectedAllCourseIds = _useState24[1];
+ (0,_react_17_0_2_react.useEffect)(function () {
+ if (visible) {
+ getData();
+ } else {
+ clear();
+ }
+ }, [visible]);
+ var getData = /*#__PURE__*/function () {
+ var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
+ var res;
+ return regeneratorRuntime_default()().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ setTableLoading(true);
+ _context.next = 3;
+ return (0,classrooms/* getAllowEndGroups */.oR)(homeworkIds[0], {
+ course_id: courseId
+ });
+ case 3:
+ res = _context.sent;
+ setNoGroup(res.no_group);
+ if (isBatch) {
+ setAllCourseGroups(res.all_course_groups);
+ setAllCourseTableData(res.all_course_groups);
+ } else {
+ setLateCourseGroups(res.late_course_groups);
+ setLateCourseTableData(res.late_course_groups);
+ setSubmitCourseGroups(res.submit_course_groups);
+ setSubmitCourseTableData(res.submit_course_groups);
+ }
+ setTableLoading(false);
+ form.setFieldsValue({
+ 'end_time': dayjs_min_default()()
+ });
+ case 8:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }));
+ return function getData() {
+ return _ref2.apply(this, arguments);
+ };
+ }();
+ var handleOk = /*#__PURE__*/function () {
+ var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
+ var formValue, endTimeString, selectNothing, res;
+ return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ formValue = form.getFieldsValue();
+ endTimeString = dayjs_min_default()(formValue.end_time).format('YYYY-MM-DD HH:mm');
+ selectNothing = isBatch ? selectedAllCourseIds.length === 0 : selectedSubmitCourseIds.length === 0 && selectedLateCourseIds.length === 0;
+ if (!(selectNothing && !noGroup)) {
+ _context2.next = 6;
+ break;
+ }
+ message/* default */.ZP.warning('请选择需要操作的班级');
+ return _context2.abrupt("return");
+ case 6:
+ setConfirmLoading(true);
+ _context2.next = 9;
+ return (0,classrooms/* stopHomework */.Mc)(courseId, {
+ no_group: noGroup,
+ homework_ids: homeworkIds,
+ group_ids: isBatch ? selectedAllCourseIds : selectedSubmitCourseIds,
+ end_time: endTimeString,
+ late_group_ids: isBatch ? selectedAllCourseIds : selectedLateCourseIds
+ });
+ case 9:
+ res = _context2.sent;
+ setConfirmLoading(false);
+ if (res.status === 0) {
+ clear();
+ message/* default */.ZP.success('操作成功');
+ successCallback();
+ dispatch({
+ type: 'classroomList/setActionTabs',
+ payload: {
+ key: '清除选择数据'
+ }
+ });
+ }
+ case 12:
+ case "end":
+ return _context2.stop();
+ }
+ }, _callee2);
+ }));
+ return function handleOk() {
+ return _ref3.apply(this, arguments);
+ };
+ }();
+ var clear = function clear() {
+ setSelectedSubmitCourseIds([]);
+ setSelectedLateCourseIds([]);
+ setSubmitCourseTableData([]);
+ setLateCourseTableData([]);
+ };
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)(modal/* default */.Z, {
+ centered: true,
+ title: "\u7ACB\u5373\u622A\u6B62",
+ className: CutOffNowmodules.modalWrapper,
+ width: isBatch || noGroup ? 520 : 760,
+ open: visible,
+ confirmLoading: confirmLoading,
+ destroyOnClose: true,
+ okText: "\u622A\u6B62",
+ cancelText: "\u53D6\u6D88",
+ onOk: function onOk() {
+ return handleOk();
+ },
+ onCancel: function onCancel() {
+ clear();
+ dispatch({
+ type: 'classroomList/setActionTabs',
+ payload: {}
+ });
+ },
+ children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ className: CutOffNowmodules.tips,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ children: "1\u3001\u622A\u6B62\u540E\u5B66\u751F\u4E0D\u80FD\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ children: "2\u3001\u672C\u64CD\u4F5C\u53EA\u5BF9\u201C\u63D0\u4EA4\u4E2D\u201D\u3001\u201C\u8865\u4EA4\u4E2D\u201D\u7684\u4F5C\u4E1A\u6709\u6548\u3002"
+ })]
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z, {
+ form: form,
+ layout: "vertical",
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
+ name: "end_time",
+ label: "\u622A\u6B62\u65F6\u95F4",
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker["default"], {
+ style: {
+ width: '100%'
+ },
+ disabledDate: function disabledDate(current) {
+ return (0,Releasesetting/* disabledDate */.Q8)(current, courseEndTime);
+ },
+ disabledTime: function disabledTime(current) {
+ return (0,Releasesetting/* disabledTime */.d0)(current);
+ },
+ placeholder: '请选择结束时间',
+ showTime: {
+ format: 'HH:mm',
+ defaultValue: dayjs_min_default()((0,util/* HalfPastOne */.U6)(), 'HH:mm')
+ },
+ format: "YYYY-MM-DD HH:mm",
+ allowClear: false
+ })
+ })
+ }), !noGroup && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
+ children: isBatch ? /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
+ placeholder: "\u641C\u7D22\u73ED\u7EA7"
+ // suffix={}
+ ,
+ onChange: function onChange(e) {
+ setAllCourseTableData(allCourseGroups.filter(function (item) {
+ return item.name.indexOf(e.target.value) > -1;
+ }));
+ }
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
+ style: {
+ marginTop: '10px',
+ height: '300px',
+ overflow: 'auto'
+ },
+ className: CutOffNowmodules.antdTable,
+ rowSelection: {
+ type: 'checkbox',
+ onChange: function onChange(selectedRowKeys) {
+ setSelectedAllCourseIds(selectedRowKeys);
+ }
+ },
+ rowKey: "id",
+ pagination: false,
+ dataSource: allCourseTableData,
+ loading: tableLoading,
+ columns: [{
+ title: '班级',
+ dataIndex: 'name'
+ }]
+ })]
+ }) : /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
+ gutter: 24,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
+ span: 14,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ className: CutOffNowmodules.homeworkType,
+ children: "\u4F5C\u4E1A\u622A\u6B62"
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
+ placeholder: "\u641C\u7D22\u73ED\u7EA7"
+ // suffix={}
+ ,
+ onChange: function onChange(e) {
+ setSubmitCourseTableData(submitCourseGroups.filter(function (item) {
+ return item.name.indexOf(e.target.value) > -1;
+ }));
+ }
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ className: CutOffNowmodules.tableWrapper,
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
+ style: {
+ marginTop: '10px',
+ height: '260px',
+ overflow: 'auto'
+ },
+ className: CutOffNowmodules.antdTable,
+ rowSelection: {
+ type: 'checkbox',
+ onChange: function onChange(selectedRowKeys) {
+ setSelectedSubmitCourseIds(selectedRowKeys);
+ }
+ },
+ rowKey: "id",
+ pagination: false,
+ dataSource: submitCourseTableData,
+ loading: tableLoading,
+ columns: [{
+ title: '班级',
+ dataIndex: 'name',
+ ellipsis: true
+ }, {
+ title: '发布时间',
+ dataIndex: 'publish_time'
+ }, {
+ title: '截止时间',
+ dataIndex: 'end_time'
+ }]
+ })
+ })]
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
+ flex: 10,
+ style: {
+ maxWidth: "280px"
+ },
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ className: CutOffNowmodules.homeworkType,
+ children: "\u8865\u4EA4\u622A\u6B62"
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
+ placeholder: "\u641C\u7D22\u73ED\u7EA7",
+ onChange: function onChange(e) {
+ setLateCourseTableData(lateCourseGroups.filter(function (item) {
+ return item.name.indexOf(e.target.value) > -1;
+ }));
+ }
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ className: CutOffNowmodules.tableWrapper,
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
+ style: {
+ marginTop: '10px',
+ height: '260px',
+ overflow: 'auto',
+ maxWidth: "280px"
+ },
+ className: CutOffNowmodules.antdTable,
+ rowSelection: {
+ type: 'checkbox',
+ onChange: function onChange(selectedRowKeys) {
+ setSelectedLateCourseIds(selectedRowKeys);
+ }
+ },
+ rowKey: "id",
+ pagination: false,
+ loading: tableLoading,
+ dataSource: lateCourseTableData,
+ columns: [{
+ title: '班级',
+ dataIndex: 'name',
+ ellipsis: true,
+ width: 120
+ }, {
+ title: '截止时间',
+ dataIndex: 'late_time'
+ }]
+ })
+ })]
+ })]
+ })
+ })]
+ });
+};
+/* harmony default export */ var CutOffNow = ((0,_umi_production_exports.connect)(function (_ref4) {
+ var shixunHomeworks = _ref4.shixunHomeworks,
+ classroomList = _ref4.classroomList;
+ return {
+ shixunHomeworks: shixunHomeworks,
+ classroomList: classroomList
+ };
+})(CuttOffNow));
+
+/***/ }),
+
+/***/ 18651:
+/*!**********************************************************!*\
+ !*** ./src/components/MultiUpload/index.tsx + 3 modules ***!
+ \**********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ z: function() { return /* binding */ coverToFileList; },
+ Z: function() { return /* binding */ MultiUpload; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
+var regeneratorRuntime = __webpack_require__(7557);
+var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
+var asyncToGenerator = __webpack_require__(41498);
+var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
+var objectSpread2 = __webpack_require__(82242);
+var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/toConsumableArray.js
+var toConsumableArray = __webpack_require__(37205);
+var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
+var slicedToArray = __webpack_require__(79800);
+var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/upload/index.js + 24 modules
+var upload = __webpack_require__(53188);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
+var es_message = __webpack_require__(8591);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
+var modal = __webpack_require__(43418);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
+var es_button = __webpack_require__(3113);
+// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
+var env = __webpack_require__(83877);
+// EXTERNAL MODULE: ./src/pages/MoopCases/FormPanel/service.ts
+var service = __webpack_require__(4937);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
+var jsx_runtime = __webpack_require__(37712);
+;// CONCATENATED MODULE: ./src/components/SingleUpload/index.tsx
+
+
+
+
+
+
+
+
+
+
+var uploadNameSizeSeperator = ' ';
+function bytesToSize(bytes) {
+ var sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB'];
+ if (bytes == 0) return '0 Byte';
+ var i = parseInt('' + Math.floor(Math.log(bytes) / Math.log(1024)), 10);
+ return (bytes / Math.pow(1024, i)).toFixed(1) + ' ' + sizes[i];
+}
+/* harmony default export */ var SingleUpload = (function (_ref) {
+ var _ref$value = _ref.value,
+ value = _ref$value === void 0 ? [] : _ref$value,
+ action = _ref.action,
+ _onChange = _ref.onChange,
+ className = _ref.className,
+ _ref$maxSize = _ref.maxSize,
+ maxSize = _ref$maxSize === void 0 ? 150 : _ref$maxSize,
+ _ref$title = _ref.title,
+ title = _ref$title === void 0 ? '文件上传' : _ref$title,
+ _ref$accept = _ref.accept,
+ accept = _ref$accept === void 0 ? null : _ref$accept;
+ var uploadProps = {
+ multiple: false,
+ fileList: value,
+ accept: accept,
+ withCredentials: true,
+ beforeUpload: function beforeUpload(file) {
+ var fileSize = file.size / 1024 / 1024;
+ if (!(fileSize < maxSize)) {
+ message.error("\u8BE5\u6587\u4EF6\u65E0\u6CD5\u4E0A\u4F20\u3002\u8D85\u8FC7\u6587\u4EF6\u5927\u5C0F\u9650\u5236(".concat(maxSize, "MB),\u5EFA\u8BAE\u4E0A\u4F20\u5230\u767E\u5EA6\u4E91\u7B49\u5176\u5B83\u5171\u4EAB\u5DE5\u5177\u91CC\uFF0C\u7136\u540E\u518Dtxt\u6587\u6863\u91CC\u7ED9\u51FA\u94FE\u63A5\u4EE5\u53CA\u5171\u4EAB\u5BC6\u7801\u5E76\u4E0A\u4F20"));
+ return Promise.reject();
+ }
+ return true;
+ },
+ action: "".concat(ENV.API_SERVER, "/api/attachments.json"),
+ // ?debug=student&randomcode=undefined&client_key=6d57f8c3dd186c5ada392546ace9620a
+ onChange: function onChange(info) {
+ var _info$file;
+ var fileList = _toConsumableArray(info.fileList);
+ fileList = fileList.map(function (file) {
+ if (file.name.indexOf(uploadNameSizeSeperator) === -1) {
+ file.name = "".concat(file.name).concat(uploadNameSizeSeperator).concat(bytesToSize(file.size));
+ }
+ return _objectSpread({}, file);
+ });
+ if (info.file.status === 'done' && ((_info$file = info.file) === null || _info$file === void 0 || (_info$file = _info$file.response) === null || _info$file === void 0 ? void 0 : _info$file.status) === -1) {
+ var _info$file2;
+ message.error((_info$file2 = info.file) === null || _info$file2 === void 0 || (_info$file2 = _info$file2.response) === null || _info$file2 === void 0 ? void 0 : _info$file2.message);
+ _onChange([]);
+ return;
+ }
+ _onChange(fileList);
+ },
+ onRemove: function () {
+ var _onRemove = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(file) {
+ var fileSize, id, rs;
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ fileSize = file.size / 1024 / 1024;
+ if (!(file.status === 'uploading')) {
+ _context.next = 3;
+ break;
+ }
+ return _context.abrupt("return", true);
+ case 3:
+ if (fileSize < maxSize) {
+ _context.next = 7;
+ break;
+ }
+ return _context.abrupt("return", true);
+ case 7:
+ id = file.response ? file.response.id : file.uid;
+ if (!id) {
+ _context.next = 15;
+ break;
+ }
+ _context.next = 11;
+ return removeAttachment(file.response ? file.response.id : file.id);
+ case 11:
+ rs = _context.sent;
+ return _context.abrupt("return", rs);
+ case 15:
+ return _context.abrupt("return", true);
+ case 16:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }));
+ function onRemove(_x) {
+ return _onRemove.apply(this, arguments);
+ }
+ return onRemove;
+ }()
+ };
+ function onCancel(e) {
+ e.preventDefault();
+ e.stopPropagation();
+ }
+ return /*#__PURE__*/_jsx("div", {
+ className: "single-upload ".concat(className ? className : ''),
+ children: /*#__PURE__*/_jsxs(Upload, _objectSpread(_objectSpread({}, uploadProps), {}, {
+ children: [/*#__PURE__*/_jsx(Button, {
+ type: "primary",
+ title: value.length > 0 ? '每次只能上传一个资源, 删除下面资源可重新上传 ' : '',
+ disabled: value.length > 0,
+ ghost: true,
+ children: title
+ }), /*#__PURE__*/_jsxs("span", {
+ onClick: onCancel,
+ style: {
+ marginLeft: 10
+ },
+ children: ["(\u5355\u4E2A\u6587\u4EF6\u6700\u5927", maxSize, "M)", ' ']
+ })]
+ }))
+ });
+});
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/InboxOutlined.js + 1 modules
+var InboxOutlined = __webpack_require__(15228);
+// EXTERNAL MODULE: ./node_modules/_lodash@4.17.21@lodash/lodash.js
+var lodash = __webpack_require__(89392);
+;// CONCATENATED MODULE: ./src/components/MultiUpload/index.less
+// extracted by mini-css-extract-plugin
+
+;// CONCATENATED MODULE: ./src/assets/images/uploadImg.svg
+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(_e) { throw _e; }, 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(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
+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; }
+var __defProp = Object.defineProperty;
+var __getOwnPropSymbols = Object.getOwnPropertySymbols;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __propIsEnum = Object.prototype.propertyIsEnumerable;
+var __defNormalProp = function __defNormalProp(obj, key, value) {
+ return key in obj ? __defProp(obj, key, {
+ enumerable: true,
+ configurable: true,
+ writable: true,
+ value: value
+ }) : obj[key] = value;
+};
+var __spreadValues = function __spreadValues(a, b) {
+ for (var prop in b || (b = {})) if (__hasOwnProp.call(b, prop)) __defNormalProp(a, prop, b[prop]);
+ if (__getOwnPropSymbols) {
+ var _iterator = _createForOfIteratorHelper(__getOwnPropSymbols(b)),
+ _step;
+ try {
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
+ var prop = _step.value;
+ if (__propIsEnum.call(b, prop)) __defNormalProp(a, prop, b[prop]);
+ }
+ } catch (err) {
+ _iterator.e(err);
+ } finally {
+ _iterator.f();
+ }
+ }
+ return a;
+};
+
+var SvgUploadImg = function SvgUploadImg(props) {
+ return /* @__PURE__ */React.createElement("svg", __spreadValues({
+ width: 14,
+ height: 14,
+ xmlns: "http://www.w3.org/2000/svg"
+ }, props), /* @__PURE__ */React.createElement("title", null, "\u5F62\u72B6"), /* @__PURE__ */React.createElement("path", {
+ d: "M10.354 3.5h-2.77v8.167H6.416V3.5H3.646L7 0l3.354 3.5ZM14 7h-1.167v5.833H1.167V7H0v7h14V7Z",
+ fill: "#3061D0",
+ fillRule: "nonzero"
+ }));
+};
+
+/* harmony default export */ var uploadImg = ("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEwLjM1NCAzLjVoLTIuNzd2OC4xNjdINi40MTZWMy41SDMuNjQ2TDcgMGwzLjM1NCAzLjVaTTE0IDdoLTEuMTY3djUuODMzSDEuMTY3VjdIMHY3aDE0VjdaIiBmaWxsPSIjMzA2MUQwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L3N2Zz4=");
+;// CONCATENATED MODULE: ./src/components/MultiUpload/index.tsx
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+var Dragger = upload/* default */.Z.Dragger;
+function coverToFileList(data) {
+ var rs = [];
+ if (data && data.length > 0) {
+ rs = data.map(function (item) {
+ return {
+ uid: item.id,
+ id: item.id,
+ name: item.title + uploadNameSizeSeperator + item.filesize,
+ url: item.url,
+ filesize: item.filesize,
+ status: 'done',
+ response: {
+ id: item.id
+ }
+ };
+ });
+ }
+ return rs;
+}
+/* harmony default export */ var MultiUpload = (function (_ref) {
+ var value = _ref.value,
+ _onChange = _ref.onChange,
+ action = _ref.action,
+ data = _ref.data,
+ className = _ref.className,
+ _ref$maxSize = _ref.maxSize,
+ maxSize = _ref$maxSize === void 0 ? 150 : _ref$maxSize,
+ _ref$title = _ref.title,
+ title = _ref$title === void 0 ? '上传附件' : _ref$title,
+ _ref$showRemoveModal = _ref.showRemoveModal,
+ showRemoveModal = _ref$showRemoveModal === void 0 ? false : _ref$showRemoveModal,
+ _ref$accept = _ref.accept,
+ accept = _ref$accept === void 0 ? '' : _ref$accept,
+ additionalText = _ref.additionalText,
+ isDragger = _ref.isDragger,
+ _ref$number = _ref.number,
+ number = _ref$number === void 0 ? 1000 : _ref$number,
+ _ref$aloneClear = _ref.aloneClear,
+ aloneClear = _ref$aloneClear === void 0 ? false : _ref$aloneClear;
+ var _useState = (0,_react_17_0_2_react.useState)(false),
+ _useState2 = slicedToArray_default()(_useState, 2),
+ disabled = _useState2[0],
+ setDisabled = _useState2[1];
+ var _useState3 = (0,_react_17_0_2_react.useState)(value || []),
+ _useState4 = slicedToArray_default()(_useState3, 2),
+ fileList = _useState4[0],
+ setFileList = _useState4[1];
+ var _useState5 = (0,_react_17_0_2_react.useState)(1),
+ _useState6 = slicedToArray_default()(_useState5, 2),
+ nums = _useState6[0],
+ setnums = _useState6[1];
+ (0,_react_17_0_2_react.useEffect)(function () {
+ if (value) {
+ if (nums === 1) {
+ setFileList(toConsumableArray_default()(value));
+ }
+ setnums(2);
+ if (number === (value === null || value === void 0 ? void 0 : value.length)) {
+ setDisabled(true);
+ }
+ }
+ }, [value]);
+ var clearLastFile = function clearLastFile() {
+ setTimeout(function () {
+ fileList.pop();
+ setFileList(toConsumableArray_default()(fileList));
+ }, 500);
+ };
+ var uploadProps = {
+ multiple: true,
+ disabled: disabled,
+ accept: accept,
+ withCredentials: true,
+ fileList: fileList,
+ // fileList: fileList?.length ? fileList : value,
+ beforeUpload: function beforeUpload(file, fileArr) {
+ var fileSize = file.size / 1024 / 1024;
+ if (fileList.concat(fileArr).length > number) {
+ fileList.pop();
+ setFileList(toConsumableArray_default()(fileList));
+ es_message/* default */.ZP.error("\u6700\u591A\u53EA\u80FD\u4E0A\u4F20".concat(number, "\u4E2A\u6587\u4EF6"));
+ if (aloneClear) {
+ return Promise.reject();
+ }
+ clearLastFile();
+ return false;
+ }
+ if (!(fileSize < maxSize)) {
+ es_message/* default */.ZP.error("\u8BE5\u6587\u4EF6\u65E0\u6CD5\u4E0A\u4F20\u3002\u8D85\u8FC7\u6587\u4EF6\u5927\u5C0F\u9650\u5236(".concat(maxSize, "MB)."));
+ if (aloneClear) {
+ return Promise.reject();
+ }
+ clearLastFile();
+ return false;
+ }
+ return true;
+ },
+ data: data,
+ action: action || "".concat(env/* default */.Z.API_SERVER, "/api/attachments.json"),
+ // ?debug=student&randomcode=undefined&client_key=6d57f8c3dd186c5ada392546ace9620a
+ onChange: function onChange(info) {
+ var _info$file;
+ if (info.file.status === "removed") {
+ fileList = info.fileList;
+ } else {
+ fileList = (0,lodash.uniqBy)([].concat(toConsumableArray_default()(info.fileList), toConsumableArray_default()(fileList)), 'uid');
+ }
+ if (info.file.status === 'done' && ((_info$file = info.file) === null || _info$file === void 0 || (_info$file = _info$file.response) === null || _info$file === void 0 ? void 0 : _info$file.status) === -1) {
+ var _info$file2;
+ es_message/* default */.ZP.error((_info$file2 = info.file) === null || _info$file2 === void 0 || (_info$file2 = _info$file2.response) === null || _info$file2 === void 0 ? void 0 : _info$file2.message);
+ return;
+ }
+ if (fileList.length >= number) setDisabled(true);else setDisabled(false);
+ setFileList(toConsumableArray_default()(fileList));
+ fileList = fileList.map(function (file) {
+ var _file$response;
+ if (file !== null && file !== void 0 && (_file$response = file.response) !== null && _file$response !== void 0 && _file$response.id) {
+ var _file$response2;
+ file.url = "/api/attachments/".concat(file === null || file === void 0 || (_file$response2 = file.response) === null || _file$response2 === void 0 ? void 0 : _file$response2.id);
+ }
+ if (file.name.indexOf(uploadNameSizeSeperator) === -1) {
+ file.name = "".concat(file.name).concat(uploadNameSizeSeperator).concat(bytesToSize(file.size));
+ }
+ return objectSpread2_default()({}, file);
+ });
+ console.log('info:', info, fileList);
+ _onChange(fileList);
+ },
+ onRemove: function () {
+ var _onRemove = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(file) {
+ var remove;
+ return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
+ while (1) switch (_context3.prev = _context3.next) {
+ case 0:
+ remove = /*#__PURE__*/function () {
+ var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
+ var id, rs;
+ return regeneratorRuntime_default()().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ id = file.response ? file.response.id : file.id;
+ if (!id) {
+ _context.next = 8;
+ break;
+ }
+ _context.next = 4;
+ return (0,service/* removeAttachment */.JZ)(file.response ? file.response.id : file.uid);
+ case 4:
+ rs = _context.sent;
+ return _context.abrupt("return", Promise.resolve(rs));
+ case 8:
+ return _context.abrupt("return", true);
+ case 9:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }));
+ return function remove() {
+ return _ref2.apply(this, arguments);
+ };
+ }();
+ if (!showRemoveModal) {
+ _context3.next = 5;
+ break;
+ }
+ return _context3.abrupt("return", new Promise(function (resolve, reject) {
+ modal/* default */.Z.confirm({
+ centered: true,
+ width: 530,
+ okText: '确定',
+ cancelText: '取消',
+ title: '提示',
+ content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ className: "tc font16",
+ children: "\u662F\u5426\u786E\u8BA4\u5220\u9664?"
+ }),
+ onOk: function () {
+ var _onOk = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
+ var res;
+ return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ _context2.next = 2;
+ return remove();
+ case 2:
+ res = _context2.sent;
+ es_message/* default */.ZP.success('删除成功');
+ resolve(true);
+ case 5:
+ case "end":
+ return _context2.stop();
+ }
+ }, _callee2);
+ }));
+ function onOk() {
+ return _onOk.apply(this, arguments);
+ }
+ return onOk;
+ }(),
+ onCancel: function onCancel() {
+ return resolve(false);
+ }
+ });
+ }));
+ case 5:
+ _context3.next = 7;
+ return remove();
+ case 7:
+ return _context3.abrupt("return", _context3.sent);
+ case 8:
+ case "end":
+ return _context3.stop();
+ }
+ }, _callee3);
+ }));
+ function onRemove(_x) {
+ return _onRemove.apply(this, arguments);
+ }
+ return onRemove;
+ }()
+ };
+ function onCancel(e) {
+ e.preventDefault();
+ e.stopPropagation();
+ }
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ className: "multi-upload ".concat(className ? className : ''),
+ children: [isDragger && /*#__PURE__*/(0,jsx_runtime.jsxs)(Dragger, objectSpread2_default()(objectSpread2_default()({}, uploadProps), {}, {
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
+ className: "ant-upload-drag-icon",
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(InboxOutlined/* default */.Z, {})
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
+ className: "ant-upload-text",
+ children: ["\u70B9\u51FB\u4E0A\u4F20\u56FE\u6807\uFF0C\u9009\u62E9\u8981\u4E0A\u4F20\u7684\u6587\u4EF6\u6216\u5C06\u6587\u4EF6\u62D6\u62FD\u5230\u6B64", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "(\u5355\u4E2A\u6587\u4EF6\u6700\u5927\u9650\u5236\u4E3A", maxSize, "MB)", ' ']
+ }), additionalText]
+ })), !isDragger && /*#__PURE__*/(0,jsx_runtime.jsxs)(upload/* default */.Z, objectSpread2_default()(objectSpread2_default()({}, uploadProps), {}, {
+ children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
+ disabled: disabled,
+ className: "upload_button",
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
+ className: "aBtn_img",
+ src: uploadImg
+ }), title]
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
+ onClick: onCancel,
+ className: "upload_text",
+ children: ["(\u5355\u4E2A\u6587\u4EF6\u6700\u5927", maxSize, "MB)", ' ']
+ })]
+ }))]
+ });
+});
+
+/***/ }),
/***/ 72633:
/*!********************************************************************************!*\
@@ -18,7 +947,7 @@
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! antd */ 78241);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! antd */ 43418);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! antd */ 1056);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! antd */ 11694);
/* harmony import */ var _service_shixunHomeworks__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/service/shixunHomeworks */ 39255);
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! umi */ 16749);
/* harmony import */ var _components_MultiUpload__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/components/MultiUpload */ 18651);
@@ -147,7 +1076,7 @@ var PublishShixun = function PublishShixun(_ref) {
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! antd */ 43418);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! antd */ 95237);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! antd */ 43604);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! antd */ 52409);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! antd */ 40209);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! antd */ 5112);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! antd */ 24905);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! moment */ 9498);
@@ -596,6 +1525,332 @@ var PublishShixun = function PublishShixun(_ref) {
/***/ }),
+/***/ 76741:
+/*!*********************************************************************************************!*\
+ !*** ./src/pages/Classrooms/Lists/ShixunHomeworks/components/TrfList/index.tsx + 2 modules ***!
+ \*********************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ components_TrfList; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
+var regeneratorRuntime = __webpack_require__(7557);
+var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
+var asyncToGenerator = __webpack_require__(41498);
+var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
+var slicedToArray = __webpack_require__(79800);
+var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
+var input = __webpack_require__(11694);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/index.js + 3 modules
+var es_checkbox = __webpack_require__(24905);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/row/index.js
+var row = __webpack_require__(95237);
+;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ShixunHomeworks/components/TrfList/index.less?modules
+// extracted by mini-css-extract-plugin
+/* harmony default export */ var TrfListmodules = ({"leftdiv":"leftdiv___aBzsX","listClass":"listClass___bxIEW","spantitle":"spantitle___v_Vc4","rightdiv":"rightdiv___xWu4M"});
+;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ShixunHomeworks/components/TrfList/delete.png
+var delete_namespaceObject = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAbVJREFUOE+Nk79rFUEUhb+zE4OFwUD+CyGKKQQbSaMikQQ7C1tBBIsUQaJvl2Fn/cWDpAiIYJsi7YOIaCUWFoKKRhG0sbEzEImFGnev7G6yyXsxeU5159yZb87l3hG9q2WLiBO79FIwXpLp0s6cwITnQCMWrGDM43jdBckZQ0wTMdrong2R2Bxm0/98sZ8ozdcOEm5hjOC41u9Olc9ZQKySclOVkNhljCmCzjeAJM/4FbW5p+8k5tlggTtarfKxLSM6pHq4BTiL0SboaAOIi284jeP1nti+ApMEvdoEvEPMkOpJDZi1IwzwgqDh/wSsYZwk08ca4O0Qua3zW8OV5crmHg6u22EGbQ2nIbx+1IC6rrK+cYJW9gXEVrbxGUEj5bltQGJvgBapHu0LSGwCyEh1vBsQWwd4TNCDPg6uAOcImuoFlL1dJ9WNPg5uYwwRVM3MzhJmKIpjZK6e9bj4jNNpvL4QFx9wuoDXJ1r5IlH0llTtXgcXwa4SolObnYnwKnbFcfEcdJ+gpW6AtzFynuIop/Fn053u4CA5yzjO4FV9tu0Syl2S38WiSWBgD8AfoEPQ7Fb+LwIiyhxWwe2KAAAAAElFTkSuQmCC";
+// EXTERNAL MODULE: ./src/components/NoData/index.tsx
+var NoData = __webpack_require__(782);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
+var jsx_runtime = __webpack_require__(37712);
+;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ShixunHomeworks/components/TrfList/index.tsx
+
+
+
+
+
+
+
+//滚动加载
+
+
+
+
+var TrfList = function TrfList(_ref) {
+ var data = _ref.data,
+ _ref$value = _ref.value,
+ value = _ref$value === void 0 ? [] : _ref$value,
+ handleChangePage = _ref.handleChangePage,
+ setSelectedRowKeys = _ref.setSelectedRowKeys,
+ selectedRowKeys = _ref.selectedRowKeys,
+ _ref$onChange = _ref.onChange,
+ onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange;
+ var _useState = (0,_react_17_0_2_react.useState)([]),
+ _useState2 = slicedToArray_default()(_useState, 2),
+ leftList = _useState2[0],
+ setleftList = _useState2[1];
+ var _useState3 = (0,_react_17_0_2_react.useState)([]),
+ _useState4 = slicedToArray_default()(_useState3, 2),
+ rightList = _useState4[0],
+ setRightList = _useState4[1];
+ var _useState5 = (0,_react_17_0_2_react.useState)([]),
+ _useState6 = slicedToArray_default()(_useState5, 2),
+ checkoutList = _useState6[0],
+ setCheckoutList = _useState6[1];
+ var _useState7 = (0,_react_17_0_2_react.useState)(1),
+ _useState8 = slicedToArray_default()(_useState7, 2),
+ page = _useState8[0],
+ setpage = _useState8[1];
+ var _useState9 = (0,_react_17_0_2_react.useState)(),
+ _useState10 = slicedToArray_default()(_useState9, 2),
+ sechar = _useState10[0],
+ setsechar = _useState10[1];
+ (0,_react_17_0_2_react.useEffect)(function () {
+ setleftList(data);
+ setRightList([]);
+ setCheckoutList([]);
+ }, [data]);
+ (0,_react_17_0_2_react.useEffect)(function () {
+ if (setSelectedRowKeys) {
+ setRightList(selectedRowKeys);
+ setCheckoutList(selectedRowKeys);
+ }
+ }, [selectedRowKeys]);
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ style: {
+ display: 'flex',
+ justifyContent: 'space-between'
+ },
+ children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ className: TrfListmodules.leftdiv,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {
+ size: 'middle',
+ onChange: ( /*#__PURE__*/function () {
+ var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(e) {
+ return regeneratorRuntime_default()().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ // const res = await Fetch(`/api/common_exercises/exercise_users/student_groups.json`, { method: "get", params: {page: 1, per_page: 200,student_group:e} });
+ // if (res.status === 0) {
+ // setleftList(res?.data)
+ // setsechar(e);
+ // }
+ // if(!e){
+ // setsechar('');
+ // }
+ // setpage(1);
+ setleftList(data.filter(function (item) {
+ var _item$name;
+ return item === null || item === void 0 || (_item$name = item.name) === null || _item$name === void 0 ? void 0 : _item$name.includes(e.target.value);
+ }));
+ case 1:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }));
+ return function (_x) {
+ return _ref2.apply(this, arguments);
+ };
+ }()),
+ placeholder: "\u53EF\u8F93\u5165\u73ED\u7EA7\u540D\u79F0\u67E5\u8BE2"
+ }), leftList.length === 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {
+ styles: {
+ margin: '70px auto'
+ },
+ customText: '暂无分班'
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ style: {
+ height: '85%',
+ overflow: 'auto',
+ overflowX: 'hidden'
+ },
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z.Group, {
+ value: rightList.map(function (item) {
+ return "".concat(item.id);
+ }),
+ onChange: function onChange(e) {
+ setSelectedRowKeys(leftList.filter(function (item) {
+ return e.includes("".concat(item.id));
+ }));
+ },
+ style: {
+ marginTop: '10px',
+ flexDirection: "column"
+ },
+ children: leftList.map(function (item, index) {
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
+ style: {
+ marginTop: '10px',
+ lineHeight: '24px',
+ display: 'flex',
+ width: 200
+ },
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
+ style: {
+ display: 'flex',
+ height: '24px',
+ alignItems: 'center'
+ },
+ disabled: item.is_published,
+ value: "".concat(item.id),
+ children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ className: TrfListmodules.listClass,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
+ className: TrfListmodules.spantitle,
+ style: {
+ width: item.is_published ? '108px' : '170px'
+ },
+ children: item.name
+ }), item.is_published && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
+ style: {
+ width: '52px',
+ height: '24px',
+ background: '#B8B8B8',
+ borderRadius: '13px',
+ color: 'white',
+ lineHeight: '24px',
+ textAlign: 'center',
+ display: 'inline-block'
+ },
+ children: "\u5DF2\u53D1\u5E03"
+ })]
+ })
+ })
+ }, item.id);
+ })
+ })
+ })]
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ className: TrfListmodules.rightdiv,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {
+ onChange: function onChange(e) {
+ setCheckoutList(rightList.filter(function (item) {
+ return item.name.includes(e.target.value);
+ }));
+ },
+ size: 'middle',
+ placeholder: "\u53EF\u8F93\u5165\u73ED\u7EA7\u540D\u79F0\u67E5\u8BE2"
+ }), checkoutList.length === 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {
+ styles: {
+ margin: '70px auto'
+ },
+ customText: '暂未选择分班'
+ }), checkoutList.length > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ style: {
+ marginTop: '10px',
+ height: '85%',
+ overflow: 'hidden',
+ position: 'relative'
+ },
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ style: {
+ overflowX: 'hidden',
+ overflowY: 'scroll',
+ position: 'absolute',
+ left: 0,
+ top: 0,
+ right: -17,
+ bottom: 0
+ },
+ children: checkoutList.map(function (item, index) {
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
+ justify: "space-between",
+ style: {
+ marginTop: '10px'
+ },
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ style: {
+ overflow: 'hidden',
+ whiteSpace: 'nowrap',
+ textOverflow: 'ellipsis',
+ marginRight: '5px',
+ marginLeft: '5px',
+ width: '75%'
+ },
+ children: item.name
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
+ src: delete_namespaceObject,
+ style: {
+ cursor: 'pointer',
+ height: '16px',
+ marginRight: 17
+ },
+ onClick: function onClick() {
+ setSelectedRowKeys(rightList.filter(function (items) {
+ return "".concat(items.id) != "".concat(item.id);
+ }));
+ }
+ })]
+ }, item.id);
+ })
+ })
+ })]
+ })]
+ });
+};
+/* harmony default export */ var components_TrfList = (TrfList);
+
+/***/ }),
+
+/***/ 4937:
+/*!**************************************************!*\
+ !*** ./src/pages/MoopCases/FormPanel/service.ts ***!
+ \**************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ $J: function() { return /* binding */ getMoopCase; },
+/* harmony export */ JZ: function() { return /* binding */ removeAttachment; },
+/* harmony export */ bN: function() { return /* binding */ updateMoopCase; },
+/* harmony export */ jP: function() { return /* binding */ addMoopCase; },
+/* harmony export */ rO: function() { return /* binding */ getLibraryTags; }
+/* harmony export */ });
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js */ 7557);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js */ 41498);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/utils/fetch */ 41686);
+
+
+
+function getMoopCase(id) {
+ return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .get */ .U2)("libraries/".concat(id, ".json"));
+}
+function getLibraryTags() {
+ return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .get */ .U2)('library_tags.json');
+}
+function removeAttachment(_x) {
+ return _removeAttachment.apply(this, arguments);
+}
+function _removeAttachment() {
+ _removeAttachment = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee(id) {
+ var response;
+ return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _context.next = 2;
+ return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .del */ .IV)("attachments/".concat(id, ".json"));
+ case 2:
+ response = _context.sent;
+ return _context.abrupt("return", response.status === 0);
+ case 4:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }));
+ return _removeAttachment.apply(this, arguments);
+}
+function addMoopCase(params) {
+ return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .post */ .v_)("libraries.json", params);
+}
+function updateMoopCase(id, params) {
+ return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .put */ .gz)("libraries/".concat(id, ".json"), params);
+}
+
+/***/ }),
+
/***/ 24560:
/*!**********************************!*\
!*** ./src/utils/shixunExec.tsx ***!
@@ -612,7 +1867,7 @@ var PublishShixun = function PublishShixun(_ref) {
/* harmony import */ var _service_shixuns__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/service/shixuns */ 47907);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! antd */ 43418);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! antd */ 8591);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! antd */ 72315);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! antd */ 96860);
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/utils/util */ 72345);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
diff --git a/23042.async.js b/32226.async.js
similarity index 95%
rename from 23042.async.js
rename to 32226.async.js
index 3c5d33d31a..5a8ef5cd55 100644
--- a/23042.async.js
+++ b/32226.async.js
@@ -1,65 +1,5 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[23042],{
-
-/***/ 782:
-/*!*****************************************!*\
- !*** ./src/components/NoData/index.tsx ***!
- \*****************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/assets/images/icons/nodata.png */ 93314);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd */ 3113);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
-
-
-
-
-
-
-var noData = function noData(_ref) {
- var img = _ref.img,
- _ref$buttonProps = _ref.buttonProps,
- buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
- _ref$styles = _ref.styles,
- styles = _ref$styles === void 0 ? {} : _ref$styles,
- customText = _ref.customText,
- ButtonText = _ref.ButtonText,
- ButtonClick = _ref.ButtonClick,
- Buttonclass = _ref.Buttonclass,
- ButtonTwo = _ref.ButtonTwo,
- imgStyles = _ref.imgStyles,
- _ref$loading = _ref.loading,
- loading = _ref$loading === void 0 ? false : _ref$loading;
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("section", {
- className: "tc animated fadeIn",
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, {
- color: '#999',
- margin: '100px auto',
- visibility: loading ? 'hidden' : 'visible'
- }), styles),
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
- src: img || _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__,
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, imgStyles), {}, {
- pointerEvents: "none",
- userSelect: "none"
- })
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("p", {
- className: "mt20 font14",
- children: customText || '暂时还没有相关数据哦!'
- }), ButtonText && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(antd__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .ZP, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({
- className: Buttonclass,
- onClick: ButtonClick
- }, buttonProps), {}, {
- children: ButtonText
- })), ButtonTwo && ButtonTwo]
- });
-};
-/* harmony default export */ __webpack_exports__.Z = (noData);
-
-/***/ }),
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[32226],{
/***/ 22042:
/*!************************************************!*\
@@ -192,7 +132,7 @@ var PercentSelect = function PercentSelect(_ref) {
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! antd */ 52409);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! antd */ 40209);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! antd */ 57809);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! antd */ 8591);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! antd */ 43418);
@@ -204,9 +144,9 @@ var PercentSelect = function PercentSelect(_ref) {
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! antd */ 24905);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! antd */ 6848);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! antd */ 78673);
-/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! @ant-design/icons */ 47966);
-/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! @ant-design/icons */ 71029);
-/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! @ant-design/icons */ 98815);
+/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! @ant-design/icons */ 78190);
+/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! @ant-design/icons */ 12635);
+/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! @ant-design/icons */ 9747);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! moment */ 9498);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var _utils_authority__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/utils/authority */ 63813);
diff --git a/32404.async.js b/32404.async.js
index abda1d8983..e8580f6b54 100644
--- a/32404.async.js
+++ b/32404.async.js
@@ -42,7 +42,7 @@ var authority = __webpack_require__(63813);
// EXTERNAL MODULE: ./src/utils/util.tsx
var util = __webpack_require__(72345);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules
-var ExclamationCircleOutlined = __webpack_require__(80045);
+var ExclamationCircleOutlined = __webpack_require__(51954);
// EXTERNAL MODULE: ./src/assets/images/403Qrcode.png
var _403Qrcode = __webpack_require__(25510);
;// CONCATENATED MODULE: ./src/assets/images/Authorize.png
diff --git a/61314.async.js b/32642.async.js
similarity index 98%
rename from 61314.async.js
rename to 32642.async.js
index 857fdb4cb7..cfeb5ccbbd 100644
--- a/61314.async.js
+++ b/32642.async.js
@@ -1,6 +1,6 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[61314],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[32642],{
-/***/ 80045:
+/***/ 51954:
/*!*******************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules ***!
\*******************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ExclamationCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
// This icon file is generated automatically.
var ExclamationCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }, { "tag": "path", "attrs": { "d": "M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z" } }] }, "name": "exclamation-circle", "theme": "outlined" };
/* harmony default export */ var asn_ExclamationCircleOutlined = (ExclamationCircleOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 80354:
+/***/ 48238:
/*!************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js + 1 modules ***!
\************************************************************************************************************/
@@ -56,11 +56,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_FolderOpenOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/FolderOpenOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/FolderOpenOutlined.js
// This icon file is generated automatically.
var FolderOpenOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z" } }] }, "name": "folder-open", "theme": "outlined" };
/* harmony default export */ var asn_FolderOpenOutlined = (FolderOpenOutlined);
@@ -256,8 +256,8 @@ const InternalCheckbox = (props, ref) => {
const Checkbox = /*#__PURE__*/_react_17_0_2_react.forwardRef(InternalCheckbox);
if (false) {}
/* harmony default export */ var checkbox_Checkbox = (Checkbox);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/Group.js
@@ -913,7 +913,7 @@ CompoundedSpace.Compact = Compact/* default */.ZP;
/***/ }),
-/***/ 51218:
+/***/ 66328:
/*!********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/tree/index.js + 8 modules ***!
\********************************************************************/
@@ -927,18 +927,18 @@ __webpack_require__.d(__webpack_exports__, {
});
// EXTERNAL MODULE: ./node_modules/_rc-tree@5.7.12@rc-tree/es/index.js + 7 modules
-var es = __webpack_require__(91265);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
+var es = __webpack_require__(11548);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FileOutlined.js + 1 modules
-var FileOutlined = __webpack_require__(87970);
+var FileOutlined = __webpack_require__(26298);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js + 1 modules
-var FolderOpenOutlined = __webpack_require__(80354);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+var FolderOpenOutlined = __webpack_require__(48238);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/FolderOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/FolderOutlined.js
// This icon file is generated automatically.
var FolderOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z" } }] }, "name": "folder", "theme": "outlined" };
/* harmony default export */ var asn_FolderOutlined = (FolderOutlined);
@@ -970,7 +970,7 @@ var util = __webpack_require__(35654);
var treeUtil = __webpack_require__(71430);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/HolderOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/HolderOutlined.js
// This icon file is generated automatically.
var HolderOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z" } }] }, "name": "holder", "theme": "outlined" };
/* harmony default export */ var asn_HolderOutlined = (HolderOutlined);
@@ -1033,7 +1033,7 @@ function dropIndicatorRender(props) {
});
}
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/utils/iconUtil.js + 2 modules
-var iconUtil = __webpack_require__(1711);
+var iconUtil = __webpack_require__(4006);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/Tree.js
"use client";
diff --git a/32937.async.js b/32937.async.js
new file mode 100644
index 0000000000..906a930034
--- /dev/null
+++ b/32937.async.js
@@ -0,0 +1,2426 @@
+"use strict";
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[32937,22804],{
+
+/***/ 48238:
+/*!************************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js + 1 modules ***!
+ \************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_FolderOpenOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/FolderOpenOutlined.js
+// This icon file is generated automatically.
+var FolderOpenOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z" } }] }, "name": "folder-open", "theme": "outlined" };
+/* harmony default export */ var asn_FolderOpenOutlined = (FolderOpenOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var FolderOpenOutlined_FolderOpenOutlined = function FolderOpenOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_FolderOpenOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_FolderOpenOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(FolderOpenOutlined_FolderOpenOutlined));
+
+/***/ }),
+
+/***/ 24905:
+/*!************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/checkbox/index.js + 3 modules ***!
+ \************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ es_checkbox; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-checkbox@3.1.0@rc-checkbox/es/index.js
+var es = __webpack_require__(5630);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var config_provider_context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/DisabledContext.js
+var DisabledContext = __webpack_require__(1684);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/context.js
+var context = __webpack_require__(32441);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/GroupContext.js
+
+const GroupContext = /*#__PURE__*/_react_17_0_2_react.createContext(null);
+/* harmony default export */ var checkbox_GroupContext = (GroupContext);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/style/index.js
+var checkbox_style = __webpack_require__(98447);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/wave/index.js + 4 modules
+var wave = __webpack_require__(14088);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/wave/interface.js
+var wave_interface = __webpack_require__(4572);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/Checkbox.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+
+
+
+
+const InternalCheckbox = (props, ref) => {
+ var _a;
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ children,
+ indeterminate = false,
+ style,
+ onMouseEnter,
+ onMouseLeave,
+ skipGroup = false,
+ disabled
+ } = props,
+ restProps = __rest(props, ["prefixCls", "className", "rootClassName", "children", "indeterminate", "style", "onMouseEnter", "onMouseLeave", "skipGroup", "disabled"]);
+ const {
+ getPrefixCls,
+ direction,
+ checkbox
+ } = _react_17_0_2_react.useContext(config_provider_context/* ConfigContext */.E_);
+ const checkboxGroup = _react_17_0_2_react.useContext(checkbox_GroupContext);
+ const {
+ isFormItemInput
+ } = _react_17_0_2_react.useContext(context/* FormItemInputContext */.aM);
+ const contextDisabled = _react_17_0_2_react.useContext(DisabledContext/* default */.Z);
+ const mergedDisabled = (_a = (checkboxGroup === null || checkboxGroup === void 0 ? void 0 : checkboxGroup.disabled) || disabled) !== null && _a !== void 0 ? _a : contextDisabled;
+ const prevValue = _react_17_0_2_react.useRef(restProps.value);
+ _react_17_0_2_react.useEffect(() => {
+ checkboxGroup === null || checkboxGroup === void 0 ? void 0 : checkboxGroup.registerValue(restProps.value);
+ false ? 0 : void 0;
+ }, []);
+ _react_17_0_2_react.useEffect(() => {
+ if (skipGroup) {
+ return;
+ }
+ if (restProps.value !== prevValue.current) {
+ checkboxGroup === null || checkboxGroup === void 0 ? void 0 : checkboxGroup.cancelValue(prevValue.current);
+ checkboxGroup === null || checkboxGroup === void 0 ? void 0 : checkboxGroup.registerValue(restProps.value);
+ prevValue.current = restProps.value;
+ }
+ return () => checkboxGroup === null || checkboxGroup === void 0 ? void 0 : checkboxGroup.cancelValue(restProps.value);
+ }, [restProps.value]);
+ const prefixCls = getPrefixCls('checkbox', customizePrefixCls);
+ const [wrapSSR, hashId] = (0,checkbox_style/* default */.ZP)(prefixCls);
+ const checkboxProps = Object.assign({}, restProps);
+ if (checkboxGroup && !skipGroup) {
+ checkboxProps.onChange = function () {
+ if (restProps.onChange) {
+ restProps.onChange.apply(restProps, arguments);
+ }
+ if (checkboxGroup.toggleOption) {
+ checkboxGroup.toggleOption({
+ label: children,
+ value: restProps.value
+ });
+ }
+ };
+ checkboxProps.name = checkboxGroup.name;
+ checkboxProps.checked = checkboxGroup.value.includes(restProps.value);
+ }
+ const classString = _classnames_2_5_1_classnames_default()(`${prefixCls}-wrapper`, {
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-wrapper-checked`]: checkboxProps.checked,
+ [`${prefixCls}-wrapper-disabled`]: mergedDisabled,
+ [`${prefixCls}-wrapper-in-form-item`]: isFormItemInput
+ }, checkbox === null || checkbox === void 0 ? void 0 : checkbox.className, className, rootClassName, hashId);
+ const checkboxClass = _classnames_2_5_1_classnames_default()({
+ [`${prefixCls}-indeterminate`]: indeterminate
+ }, wave_interface/* TARGET_CLS */.A, hashId);
+ const ariaChecked = indeterminate ? 'mixed' : undefined;
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(wave/* default */.Z, {
+ component: "Checkbox",
+ disabled: mergedDisabled
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("label", {
+ className: classString,
+ style: Object.assign(Object.assign({}, checkbox === null || checkbox === void 0 ? void 0 : checkbox.style), style),
+ onMouseEnter: onMouseEnter,
+ onMouseLeave: onMouseLeave
+ }, /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, Object.assign({
+ "aria-checked": ariaChecked
+ }, checkboxProps, {
+ prefixCls: prefixCls,
+ className: checkboxClass,
+ disabled: mergedDisabled,
+ ref: ref
+ })), children !== undefined && /*#__PURE__*/_react_17_0_2_react.createElement("span", null, children))));
+};
+const Checkbox = /*#__PURE__*/_react_17_0_2_react.forwardRef(InternalCheckbox);
+if (false) {}
+/* harmony default export */ var checkbox_Checkbox = (Checkbox);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
+var omit = __webpack_require__(99468);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/Group.js
+"use client";
+
+
+var Group_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+const InternalGroup = (props, ref) => {
+ const {
+ defaultValue,
+ children,
+ options = [],
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ style,
+ onChange
+ } = props,
+ restProps = Group_rest(props, ["defaultValue", "children", "options", "prefixCls", "className", "rootClassName", "style", "onChange"]);
+ const {
+ getPrefixCls,
+ direction
+ } = _react_17_0_2_react.useContext(config_provider_context/* ConfigContext */.E_);
+ const [value, setValue] = _react_17_0_2_react.useState(restProps.value || defaultValue || []);
+ const [registeredValues, setRegisteredValues] = _react_17_0_2_react.useState([]);
+ _react_17_0_2_react.useEffect(() => {
+ if ('value' in restProps) {
+ setValue(restProps.value || []);
+ }
+ }, [restProps.value]);
+ const memoOptions = _react_17_0_2_react.useMemo(() => options.map(option => {
+ if (typeof option === 'string' || typeof option === 'number') {
+ return {
+ label: option,
+ value: option
+ };
+ }
+ return option;
+ }), [options]);
+ const cancelValue = val => {
+ setRegisteredValues(prevValues => prevValues.filter(v => v !== val));
+ };
+ const registerValue = val => {
+ setRegisteredValues(prevValues => [].concat((0,toConsumableArray/* default */.Z)(prevValues), [val]));
+ };
+ const toggleOption = option => {
+ const optionIndex = value.indexOf(option.value);
+ const newValue = (0,toConsumableArray/* default */.Z)(value);
+ if (optionIndex === -1) {
+ newValue.push(option.value);
+ } else {
+ newValue.splice(optionIndex, 1);
+ }
+ if (!('value' in restProps)) {
+ setValue(newValue);
+ }
+ onChange === null || onChange === void 0 ? void 0 : onChange(newValue.filter(val => registeredValues.includes(val)).sort((a, b) => {
+ const indexA = memoOptions.findIndex(opt => opt.value === a);
+ const indexB = memoOptions.findIndex(opt => opt.value === b);
+ return indexA - indexB;
+ }));
+ };
+ const prefixCls = getPrefixCls('checkbox', customizePrefixCls);
+ const groupPrefixCls = `${prefixCls}-group`;
+ const [wrapSSR, hashId] = (0,checkbox_style/* default */.ZP)(prefixCls);
+ const domProps = (0,omit/* default */.Z)(restProps, ['value', 'disabled']);
+ const childrenNode = options.length ? memoOptions.map(option => /*#__PURE__*/_react_17_0_2_react.createElement(checkbox_Checkbox, {
+ prefixCls: prefixCls,
+ key: option.value.toString(),
+ disabled: 'disabled' in option ? option.disabled : restProps.disabled,
+ value: option.value,
+ checked: value.includes(option.value),
+ onChange: option.onChange,
+ className: `${groupPrefixCls}-item`,
+ style: option.style,
+ title: option.title
+ }, option.label)) : children;
+ // eslint-disable-next-line react/jsx-no-constructed-context-values
+ const context = {
+ toggleOption,
+ value,
+ disabled: restProps.disabled,
+ name: restProps.name,
+ // https://github.com/ant-design/ant-design/issues/16376
+ registerValue,
+ cancelValue
+ };
+ const classString = _classnames_2_5_1_classnames_default()(groupPrefixCls, {
+ [`${groupPrefixCls}-rtl`]: direction === 'rtl'
+ }, className, rootClassName, hashId);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", Object.assign({
+ className: classString,
+ style: style
+ }, domProps, {
+ ref: ref
+ }), /*#__PURE__*/_react_17_0_2_react.createElement(checkbox_GroupContext.Provider, {
+ value: context
+ }, childrenNode)));
+};
+
+const CheckboxGroup = /*#__PURE__*/_react_17_0_2_react.forwardRef(InternalGroup);
+/* harmony default export */ var Group = (/*#__PURE__*/_react_17_0_2_react.memo(CheckboxGroup));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/index.js
+"use client";
+
+
+
+const es_checkbox_Checkbox = checkbox_Checkbox;
+es_checkbox_Checkbox.Group = Group;
+es_checkbox_Checkbox.__ANT_CHECKBOX = true;
+if (false) {}
+/* harmony default export */ var es_checkbox = (es_checkbox_Checkbox);
+
+/***/ }),
+
+/***/ 28103:
+/*!***********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/divider/index.js + 1 modules ***!
+ \***********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ divider; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/style/index.js
+
+
+// ============================== Shared ==============================
+const genSharedDividerStyle = token => {
+ const {
+ componentCls,
+ sizePaddingEdgeHorizontal,
+ colorSplit,
+ lineWidth,
+ textPaddingInline,
+ orientationMargin,
+ verticalMarginInline
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ borderBlockStart: `${lineWidth}px solid ${colorSplit}`,
+ // vertical
+ '&-vertical': {
+ position: 'relative',
+ top: '-0.06em',
+ display: 'inline-block',
+ height: '0.9em',
+ marginInline: verticalMarginInline,
+ marginBlock: 0,
+ verticalAlign: 'middle',
+ borderTop: 0,
+ borderInlineStart: `${lineWidth}px solid ${colorSplit}`
+ },
+ '&-horizontal': {
+ display: 'flex',
+ clear: 'both',
+ width: '100%',
+ minWidth: '100%',
+ margin: `${token.dividerHorizontalGutterMargin}px 0`
+ },
+ [`&-horizontal${componentCls}-with-text`]: {
+ display: 'flex',
+ alignItems: 'center',
+ margin: `${token.dividerHorizontalWithTextGutterMargin}px 0`,
+ color: token.colorTextHeading,
+ fontWeight: 500,
+ fontSize: token.fontSizeLG,
+ whiteSpace: 'nowrap',
+ textAlign: 'center',
+ borderBlockStart: `0 ${colorSplit}`,
+ '&::before, &::after': {
+ position: 'relative',
+ width: '50%',
+ borderBlockStart: `${lineWidth}px solid transparent`,
+ // Chrome not accept `inherit` in `border-top`
+ borderBlockStartColor: 'inherit',
+ borderBlockEnd: 0,
+ transform: 'translateY(50%)',
+ content: "''"
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-left`]: {
+ '&::before': {
+ width: `${orientationMargin * 100}%`
+ },
+ '&::after': {
+ width: `${100 - orientationMargin * 100}%`
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-right`]: {
+ '&::before': {
+ width: `${100 - orientationMargin * 100}%`
+ },
+ '&::after': {
+ width: `${orientationMargin * 100}%`
+ }
+ },
+ [`${componentCls}-inner-text`]: {
+ display: 'inline-block',
+ paddingBlock: 0,
+ paddingInline: textPaddingInline
+ },
+ '&-dashed': {
+ background: 'none',
+ borderColor: colorSplit,
+ borderStyle: 'dashed',
+ borderWidth: `${lineWidth}px 0 0`
+ },
+ [`&-horizontal${componentCls}-with-text${componentCls}-dashed`]: {
+ '&::before, &::after': {
+ borderStyle: 'dashed none none'
+ }
+ },
+ [`&-vertical${componentCls}-dashed`]: {
+ borderInlineStartWidth: lineWidth,
+ borderInlineEnd: 0,
+ borderBlockStart: 0,
+ borderBlockEnd: 0
+ },
+ [`&-plain${componentCls}-with-text`]: {
+ color: token.colorText,
+ fontWeight: 'normal',
+ fontSize: token.fontSize
+ },
+ [`&-horizontal${componentCls}-with-text-left${componentCls}-no-default-orientation-margin-left`]: {
+ '&::before': {
+ width: 0
+ },
+ '&::after': {
+ width: '100%'
+ },
+ [`${componentCls}-inner-text`]: {
+ paddingInlineStart: sizePaddingEdgeHorizontal
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-right${componentCls}-no-default-orientation-margin-right`]: {
+ '&::before': {
+ width: '100%'
+ },
+ '&::after': {
+ width: 0
+ },
+ [`${componentCls}-inner-text`]: {
+ paddingInlineEnd: sizePaddingEdgeHorizontal
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var divider_style = ((0,genComponentStyleHook/* default */.Z)('Divider', token => {
+ const dividerToken = (0,statistic/* merge */.TS)(token, {
+ dividerHorizontalWithTextGutterMargin: token.margin,
+ dividerHorizontalGutterMargin: token.marginLG,
+ sizePaddingEdgeHorizontal: 0
+ });
+ return [genSharedDividerStyle(dividerToken)];
+}, token => ({
+ textPaddingInline: '1em',
+ orientationMargin: 0.05,
+ verticalMarginInline: token.marginXS
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+const Divider = props => {
+ const {
+ getPrefixCls,
+ direction,
+ divider
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ type = 'horizontal',
+ orientation = 'center',
+ orientationMargin,
+ className,
+ rootClassName,
+ children,
+ dashed,
+ plain,
+ style
+ } = props,
+ restProps = __rest(props, ["prefixCls", "type", "orientation", "orientationMargin", "className", "rootClassName", "children", "dashed", "plain", "style"]);
+ const prefixCls = getPrefixCls('divider', customizePrefixCls);
+ const [wrapSSR, hashId] = divider_style(prefixCls);
+ const orientationPrefix = orientation.length > 0 ? `-${orientation}` : orientation;
+ const hasChildren = !!children;
+ const hasCustomMarginLeft = orientation === 'left' && orientationMargin != null;
+ const hasCustomMarginRight = orientation === 'right' && orientationMargin != null;
+ const classString = _classnames_2_5_1_classnames_default()(prefixCls, divider === null || divider === void 0 ? void 0 : divider.className, hashId, `${prefixCls}-${type}`, {
+ [`${prefixCls}-with-text`]: hasChildren,
+ [`${prefixCls}-with-text${orientationPrefix}`]: hasChildren,
+ [`${prefixCls}-dashed`]: !!dashed,
+ [`${prefixCls}-plain`]: !!plain,
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-no-default-orientation-margin-left`]: hasCustomMarginLeft,
+ [`${prefixCls}-no-default-orientation-margin-right`]: hasCustomMarginRight
+ }, className, rootClassName);
+ const memoizedOrientationMargin = _react_17_0_2_react.useMemo(() => {
+ if (typeof orientationMargin === 'number') {
+ return orientationMargin;
+ }
+ if (/^\d+$/.test(orientationMargin)) {
+ return Number(orientationMargin);
+ }
+ return orientationMargin;
+ }, [orientationMargin]);
+ const innerStyle = Object.assign(Object.assign({}, hasCustomMarginLeft && {
+ marginLeft: memoizedOrientationMargin
+ }), hasCustomMarginRight && {
+ marginRight: memoizedOrientationMargin
+ });
+ // Warning children not work in vertical mode
+ if (false) {}
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", Object.assign({
+ className: classString,
+ style: Object.assign(Object.assign({}, divider === null || divider === void 0 ? void 0 : divider.style), style)
+ }, restProps, {
+ role: "separator"
+ }), children && type !== 'vertical' && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-inner-text`,
+ style: innerStyle
+ }, children)));
+};
+if (false) {}
+/* harmony default export */ var divider = (Divider);
+
+/***/ }),
+
+/***/ 38854:
+/*!************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/dropdown/index.js + 1 modules ***!
+ \************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ es_dropdown; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
+var dropdown = __webpack_require__(91857);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EllipsisOutlined.js + 1 modules
+var EllipsisOutlined = __webpack_require__(12440);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
+var es_button = __webpack_require__(3113);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/space/index.js + 3 modules
+var space = __webpack_require__(81327);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/space/Compact.js
+var Compact = __webpack_require__(33234);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/style/index.js + 1 modules
+var style = __webpack_require__(47211);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown-button.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+
+
+const DropdownButton = props => {
+ const {
+ getPopupContainer: getContextPopupContainer,
+ getPrefixCls,
+ direction
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ type = 'default',
+ danger,
+ disabled,
+ loading,
+ onClick,
+ htmlType,
+ children,
+ className,
+ menu,
+ arrow,
+ autoFocus,
+ overlay,
+ trigger,
+ align,
+ open,
+ onOpenChange,
+ placement,
+ getPopupContainer,
+ href,
+ icon = /*#__PURE__*/_react_17_0_2_react.createElement(EllipsisOutlined/* default */.Z, null),
+ title,
+ buttonsRender = buttons => buttons,
+ mouseEnterDelay,
+ mouseLeaveDelay,
+ overlayClassName,
+ overlayStyle,
+ destroyPopupOnHide,
+ dropdownRender
+ } = props,
+ restProps = __rest(props, ["prefixCls", "type", "danger", "disabled", "loading", "onClick", "htmlType", "children", "className", "menu", "arrow", "autoFocus", "overlay", "trigger", "align", "open", "onOpenChange", "placement", "getPopupContainer", "href", "icon", "title", "buttonsRender", "mouseEnterDelay", "mouseLeaveDelay", "overlayClassName", "overlayStyle", "destroyPopupOnHide", "dropdownRender"]);
+ const prefixCls = getPrefixCls('dropdown', customizePrefixCls);
+ const buttonPrefixCls = `${prefixCls}-button`;
+ const [wrapSSR, hashId] = (0,style/* default */.Z)(prefixCls);
+ const dropdownProps = {
+ menu,
+ arrow,
+ autoFocus,
+ align,
+ disabled,
+ trigger: disabled ? [] : trigger,
+ onOpenChange,
+ getPopupContainer: getPopupContainer || getContextPopupContainer,
+ mouseEnterDelay,
+ mouseLeaveDelay,
+ overlayClassName,
+ overlayStyle,
+ destroyPopupOnHide,
+ dropdownRender
+ };
+ const {
+ compactSize,
+ compactItemClassnames
+ } = (0,Compact/* useCompactItemContext */.ri)(prefixCls, direction);
+ const classes = _classnames_2_5_1_classnames_default()(buttonPrefixCls, compactItemClassnames, className, hashId);
+ if ('overlay' in props) {
+ dropdownProps.overlay = overlay;
+ }
+ if ('open' in props) {
+ dropdownProps.open = open;
+ }
+ if ('placement' in props) {
+ dropdownProps.placement = placement;
+ } else {
+ dropdownProps.placement = direction === 'rtl' ? 'bottomLeft' : 'bottomRight';
+ }
+ const leftButton = /*#__PURE__*/_react_17_0_2_react.createElement(es_button/* default */.ZP, {
+ type: type,
+ danger: danger,
+ disabled: disabled,
+ loading: loading,
+ onClick: onClick,
+ htmlType: htmlType,
+ href: href,
+ title: title
+ }, children);
+ const rightButton = /*#__PURE__*/_react_17_0_2_react.createElement(es_button/* default */.ZP, {
+ type: type,
+ danger: danger,
+ icon: icon
+ });
+ const [leftButtonToRender, rightButtonToRender] = buttonsRender([leftButton, rightButton]);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(space/* default */.Z.Compact, Object.assign({
+ className: classes,
+ size: compactSize,
+ block: true
+ }, restProps), leftButtonToRender, /*#__PURE__*/_react_17_0_2_react.createElement(dropdown/* default */.Z, Object.assign({}, dropdownProps), rightButtonToRender)));
+};
+DropdownButton.__ANT_BUTTON = true;
+/* harmony default export */ var dropdown_button = (DropdownButton);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/index.js
+"use client";
+
+
+
+const Dropdown = dropdown/* default */.Z;
+Dropdown.Button = dropdown_button;
+/* harmony default export */ var es_dropdown = (Dropdown);
+
+/***/ }),
+
+/***/ 91052:
+/*!********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/rate/index.js + 8 modules ***!
+ \********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ rate; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/StarFilled.js
+// This icon file is generated automatically.
+var StarFilled = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M908.1 353.1l-253.9-36.9L540.7 86.1c-3.1-6.3-8.2-11.4-14.5-14.5-15.8-7.8-35-1.3-42.9 14.5L369.8 316.2l-253.9 36.9c-7 1-13.4 4.3-18.3 9.3a32.05 32.05 0 00.6 45.3l183.7 179.1-43.4 252.9a31.95 31.95 0 0046.4 33.7L512 754l227.1 119.4c6.2 3.3 13.4 4.4 20.3 3.2 17.4-3 29.1-19.5 26.1-36.9l-43.4-252.9 183.7-179.1c5-4.9 8.3-11.3 9.3-18.3 2.7-17.5-9.5-33.7-27-36.3z" } }] }, "name": "star", "theme": "filled" };
+/* harmony default export */ var asn_StarFilled = (StarFilled);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/StarFilled.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var StarFilled_StarFilled = function StarFilled(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_StarFilled
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_StarFilled = (/*#__PURE__*/_react_17_0_2_react.forwardRef(StarFilled_StarFilled));
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
+var useMergedState = __webpack_require__(84381);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/pickAttrs.js
+var pickAttrs = __webpack_require__(3286);
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Star.js
+
+
+
+function Star(props, ref) {
+ var disabled = props.disabled,
+ prefixCls = props.prefixCls,
+ character = props.character,
+ characterRender = props.characterRender,
+ index = props.index,
+ count = props.count,
+ value = props.value,
+ allowHalf = props.allowHalf,
+ focused = props.focused,
+ onHover = props.onHover,
+ onClick = props.onClick;
+ // =========================== Events ===========================
+ var onInternalHover = function onInternalHover(e) {
+ onHover(e, index);
+ };
+ var onInternalClick = function onInternalClick(e) {
+ onClick(e, index);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(e) {
+ if (e.keyCode === KeyCode/* default */.Z.ENTER) {
+ onClick(e, index);
+ }
+ };
+ // =========================== Render ===========================
+ // >>>>> ClassName
+ var starValue = index + 1;
+ var classNameList = new Set([prefixCls]);
+ // TODO: Current we just refactor from CC to FC. This logic seems can be optimized.
+ if (value === 0 && index === 0 && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ } else if (allowHalf && value + 0.5 >= starValue && value < starValue) {
+ classNameList.add("".concat(prefixCls, "-half"));
+ classNameList.add("".concat(prefixCls, "-active"));
+ if (focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ } else {
+ if (starValue <= value) {
+ classNameList.add("".concat(prefixCls, "-full"));
+ } else {
+ classNameList.add("".concat(prefixCls, "-zero"));
+ }
+ if (starValue === value && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ }
+ // >>>>> Node
+ var characterNode = typeof character === 'function' ? character(props) : character;
+ var start = /*#__PURE__*/_react_17_0_2_react.createElement("li", {
+ className: _classnames_2_5_1_classnames_default()(Array.from(classNameList)),
+ ref: ref
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ onClick: disabled ? null : onInternalClick,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ onMouseMove: disabled ? null : onInternalHover,
+ role: "radio",
+ "aria-checked": value > index ? 'true' : 'false',
+ "aria-posinset": index + 1,
+ "aria-setsize": count,
+ tabIndex: disabled ? -1 : 0
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-first")
+ }, characterNode), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-second")
+ }, characterNode)));
+ if (characterRender) {
+ start = characterRender(start, props);
+ }
+ return start;
+}
+/* harmony default export */ var es_Star = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Star));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/useRefs.js
+
+function useRefs() {
+ var nodeRef = _react_17_0_2_react.useRef({});
+ function getRef(index) {
+ return nodeRef.current[index];
+ }
+ function setRef(index) {
+ return function (node) {
+ nodeRef.current[index] = node;
+ };
+ }
+ return [getRef, setRef];
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/util.js
+function getScroll(w) {
+ var ret = w.pageXOffset;
+ var method = 'scrollLeft';
+ if (typeof ret !== 'number') {
+ var d = w.document;
+ // ie6,7,8 standard mode
+ ret = d.documentElement[method];
+ if (typeof ret !== 'number') {
+ // quirks mode
+ ret = d.body[method];
+ }
+ }
+ return ret;
+}
+function getClientPosition(elem) {
+ var x;
+ var y;
+ var doc = elem.ownerDocument;
+ var body = doc.body;
+ var docElem = doc && doc.documentElement;
+ var box = elem.getBoundingClientRect();
+ x = box.left;
+ y = box.top;
+ x -= docElem.clientLeft || body.clientLeft || 0;
+ y -= docElem.clientTop || body.clientTop || 0;
+ return {
+ left: x,
+ top: y
+ };
+}
+function getOffsetLeft(el) {
+ var pos = getClientPosition(el);
+ var doc = el.ownerDocument;
+ // Only IE use `parentWindow`
+ var w = doc.defaultView || doc.parentWindow;
+ pos.left += getScroll(w);
+ return pos.left;
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Rate.js
+
+
+
+
+var _excluded = ["prefixCls", "className", "defaultValue", "value", "count", "allowHalf", "allowClear", "character", "characterRender", "disabled", "direction", "tabIndex", "autoFocus", "onHoverChange", "onChange", "onFocus", "onBlur", "onKeyDown", "onMouseLeave"];
+
+
+
+
+
+
+
+
+function Rate(props, ref) {
+ var _classNames;
+ var _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-rate' : _props$prefixCls,
+ className = props.className,
+ defaultValue = props.defaultValue,
+ propValue = props.value,
+ _props$count = props.count,
+ count = _props$count === void 0 ? 5 : _props$count,
+ _props$allowHalf = props.allowHalf,
+ allowHalf = _props$allowHalf === void 0 ? false : _props$allowHalf,
+ _props$allowClear = props.allowClear,
+ allowClear = _props$allowClear === void 0 ? true : _props$allowClear,
+ _props$character = props.character,
+ character = _props$character === void 0 ? '★' : _props$character,
+ characterRender = props.characterRender,
+ disabled = props.disabled,
+ _props$direction = props.direction,
+ direction = _props$direction === void 0 ? 'ltr' : _props$direction,
+ _props$tabIndex = props.tabIndex,
+ tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,
+ autoFocus = props.autoFocus,
+ onHoverChange = props.onHoverChange,
+ onChange = props.onChange,
+ onFocus = props.onFocus,
+ onBlur = props.onBlur,
+ onKeyDown = props.onKeyDown,
+ onMouseLeave = props.onMouseLeave,
+ restProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var _useRefs = useRefs(),
+ _useRefs2 = (0,slicedToArray/* default */.Z)(_useRefs, 2),
+ getStarRef = _useRefs2[0],
+ setStarRef = _useRefs2[1];
+ var rateRef = _react_17_0_2_react.useRef(null);
+ // ============================ Ref =============================
+ var triggerFocus = function triggerFocus() {
+ if (!disabled) {
+ var _rateRef$current;
+ (_rateRef$current = rateRef.current) === null || _rateRef$current === void 0 ? void 0 : _rateRef$current.focus();
+ }
+ };
+ _react_17_0_2_react.useImperativeHandle(ref, function () {
+ return {
+ focus: triggerFocus,
+ blur: function blur() {
+ if (!disabled) {
+ var _rateRef$current2;
+ (_rateRef$current2 = rateRef.current) === null || _rateRef$current2 === void 0 ? void 0 : _rateRef$current2.blur();
+ }
+ }
+ };
+ });
+ // =========================== Value ============================
+ var _useMergedState = (0,useMergedState/* default */.Z)(defaultValue || 0, {
+ value: propValue
+ }),
+ _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
+ value = _useMergedState2[0],
+ setValue = _useMergedState2[1];
+ var _useMergedState3 = (0,useMergedState/* default */.Z)(null),
+ _useMergedState4 = (0,slicedToArray/* default */.Z)(_useMergedState3, 2),
+ cleanedValue = _useMergedState4[0],
+ setCleanedValue = _useMergedState4[1];
+ var getStarValue = function getStarValue(index, x) {
+ var reverse = direction === 'rtl';
+ var starValue = index + 1;
+ if (allowHalf) {
+ var starEle = getStarRef(index);
+ var leftDis = getOffsetLeft(starEle);
+ var width = starEle.clientWidth;
+ if (reverse && x - leftDis > width / 2) {
+ starValue -= 0.5;
+ } else if (!reverse && x - leftDis < width / 2) {
+ starValue -= 0.5;
+ }
+ }
+ return starValue;
+ };
+ // >>>>> Change
+ var changeValue = function changeValue(nextValue) {
+ setValue(nextValue);
+ onChange === null || onChange === void 0 ? void 0 : onChange(nextValue);
+ };
+ // =========================== Focus ============================
+ var _React$useState = _react_17_0_2_react.useState(false),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ focused = _React$useState2[0],
+ setFocused = _React$useState2[1];
+ var onInternalFocus = function onInternalFocus() {
+ setFocused(true);
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus();
+ };
+ var onInternalBlur = function onInternalBlur() {
+ setFocused(false);
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur();
+ };
+ // =========================== Hover ============================
+ var _React$useState3 = _react_17_0_2_react.useState(null),
+ _React$useState4 = (0,slicedToArray/* default */.Z)(_React$useState3, 2),
+ hoverValue = _React$useState4[0],
+ setHoverValue = _React$useState4[1];
+ var onHover = function onHover(event, index) {
+ var nextHoverValue = getStarValue(index, event.pageX);
+ if (nextHoverValue !== cleanedValue) {
+ setHoverValue(nextHoverValue);
+ setCleanedValue(null);
+ }
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(nextHoverValue);
+ };
+ var onMouseLeaveCallback = function onMouseLeaveCallback(event) {
+ if (!disabled) {
+ setHoverValue(null);
+ setCleanedValue(null);
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(undefined);
+ }
+ if (event) {
+ onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave(event);
+ }
+ };
+ // =========================== Click ============================
+ var onClick = function onClick(event, index) {
+ var newValue = getStarValue(index, event.pageX);
+ var isReset = false;
+ if (allowClear) {
+ isReset = newValue === value;
+ }
+ onMouseLeaveCallback();
+ changeValue(isReset ? 0 : newValue);
+ setCleanedValue(isReset ? newValue : null);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(event) {
+ var keyCode = event.keyCode;
+ var reverse = direction === 'rtl';
+ var nextValue = value;
+ if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue < count && !reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue > 0 && !reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue > 0 && reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue < count && reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ }
+ onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);
+ };
+ // =========================== Effect ===========================
+ _react_17_0_2_react.useEffect(function () {
+ if (autoFocus && !disabled) {
+ triggerFocus();
+ }
+ }, []);
+ // =========================== Render ===========================
+ // >>> Star
+ var starNodes = new Array(count).fill(0).map(function (item, index) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_Star, {
+ ref: setStarRef(index),
+ index: index,
+ count: count,
+ disabled: disabled,
+ prefixCls: "".concat(prefixCls, "-star"),
+ allowHalf: allowHalf,
+ value: hoverValue === null ? value : hoverValue,
+ onClick: onClick,
+ onHover: onHover,
+ key: item || index,
+ character: character,
+ characterRender: characterRender,
+ focused: focused
+ });
+ });
+ var classString = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-rtl"), direction === 'rtl'), _classNames));
+ // >>> Node
+ return /*#__PURE__*/_react_17_0_2_react.createElement("ul", (0,esm_extends/* default */.Z)({
+ className: classString,
+ onMouseLeave: onMouseLeaveCallback,
+ tabIndex: disabled ? -1 : tabIndex,
+ onFocus: disabled ? null : onInternalFocus,
+ onBlur: disabled ? null : onInternalBlur,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ ref: rateRef,
+ role: "radiogroup"
+ }, (0,pickAttrs/* default */.Z)(restProps, {
+ aria: true,
+ data: true,
+ attr: true
+ })), starNodes);
+}
+/* harmony default export */ var es_Rate = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Rate));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/index.js
+
+/* harmony default export */ var es = (es_Rate);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
+var tooltip = __webpack_require__(6848);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/style/index.js
+"use client";
+
+
+
+const genRateStarStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [`${componentCls}-star`]: {
+ position: 'relative',
+ display: 'inline-block',
+ color: 'inherit',
+ cursor: 'pointer',
+ '&:not(:last-child)': {
+ marginInlineEnd: token.marginXS
+ },
+ '> div': {
+ transition: `all ${token.motionDurationMid}, outline 0s`,
+ '&:hover': {
+ transform: token.starHoverScale
+ },
+ '&:focus': {
+ outline: 0
+ },
+ '&:focus-visible': {
+ outline: `${token.lineWidth}px dashed ${token.starColor}`,
+ transform: token.starHoverScale
+ }
+ },
+ '&-first, &-second': {
+ color: token.starBg,
+ transition: `all ${token.motionDurationMid}`,
+ userSelect: 'none',
+ [token.iconCls]: {
+ verticalAlign: 'middle'
+ }
+ },
+ '&-first': {
+ position: 'absolute',
+ top: 0,
+ insetInlineStart: 0,
+ width: '50%',
+ height: '100%',
+ overflow: 'hidden',
+ opacity: 0
+ },
+ [`&-half ${componentCls}-star-first, &-half ${componentCls}-star-second`]: {
+ opacity: 1
+ },
+ [`&-half ${componentCls}-star-first, &-full ${componentCls}-star-second`]: {
+ color: 'inherit'
+ }
+ }
+ };
+};
+const genRateRtlStyle = token => ({
+ [`&-rtl${token.componentCls}`]: {
+ direction: 'rtl'
+ }
+});
+const genRateStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ display: 'inline-block',
+ margin: 0,
+ padding: 0,
+ color: token.starColor,
+ fontSize: token.starSize,
+ lineHeight: 'unset',
+ listStyle: 'none',
+ outline: 'none',
+ // disable styles
+ [`&-disabled${componentCls} ${componentCls}-star`]: {
+ cursor: 'default',
+ '> div:hover': {
+ transform: 'scale(1)'
+ }
+ }
+ }), genRateStarStyle(token)), {
+ // text styles
+ [`+ ${componentCls}-text`]: {
+ display: 'inline-block',
+ marginInlineStart: token.marginXS,
+ fontSize: token.fontSize
+ }
+ }), genRateRtlStyle(token))
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var rate_style = ((0,genComponentStyleHook/* default */.Z)('Rate', token => {
+ const rateToken = (0,statistic/* merge */.TS)(token, {});
+ return [genRateStyle(rateToken)];
+}, token => ({
+ starColor: token.yellow6,
+ starSize: token.controlHeightLG * 0.5,
+ starHoverScale: 'scale(1.1)',
+ starBg: token.colorFillContent
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+const rate_Rate = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ const {
+ prefixCls,
+ className,
+ rootClassName,
+ style,
+ tooltips,
+ character = /*#__PURE__*/_react_17_0_2_react.createElement(icons_StarFilled, null)
+ } = props,
+ rest = __rest(props, ["prefixCls", "className", "rootClassName", "style", "tooltips", "character"]);
+ const characterRender = (node, _ref) => {
+ let {
+ index
+ } = _ref;
+ if (!tooltips) {
+ return node;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(tooltip/* default */.Z, {
+ title: tooltips[index]
+ }, node);
+ };
+ const {
+ getPrefixCls,
+ direction,
+ rate
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const ratePrefixCls = getPrefixCls('rate', prefixCls);
+ // Style
+ const [wrapSSR, hashId] = rate_style(ratePrefixCls);
+ const mergedStyle = Object.assign(Object.assign({}, rate === null || rate === void 0 ? void 0 : rate.style), style);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({
+ ref: ref,
+ character: character,
+ characterRender: characterRender
+ }, rest, {
+ className: _classnames_2_5_1_classnames_default()(className, rootClassName, hashId, rate === null || rate === void 0 ? void 0 : rate.className),
+ style: mergedStyle,
+ prefixCls: ratePrefixCls,
+ direction: direction
+ })));
+});
+if (false) {}
+/* harmony default export */ var rate = (rate_Rate);
+
+/***/ }),
+
+/***/ 81327:
+/*!*********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/space/index.js + 3 modules ***!
+ \*********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ space; }
+});
+
+// UNUSED EXPORTS: SpaceContext
+
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Children/toArray.js
+var toArray = __webpack_require__(45659);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/space/Compact.js
+var Compact = __webpack_require__(33234);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/space/context.js
+
+const SpaceContext = /*#__PURE__*/_react_17_0_2_react.createContext({
+ latestIndex: 0
+});
+const SpaceContextProvider = SpaceContext.Provider;
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/space/Item.js
+"use client";
+
+
+
+const Item = _ref => {
+ let {
+ className,
+ index,
+ children,
+ split,
+ style
+ } = _ref;
+ const {
+ latestIndex
+ } = _react_17_0_2_react.useContext(SpaceContext);
+ if (children === null || children === undefined) {
+ return null;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: className,
+ style: style
+ }, children), index < latestIndex && split && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${className}-split`
+ }, split));
+};
+/* harmony default export */ var space_Item = (Item);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/space/style/index.js + 1 modules
+var space_style = __webpack_require__(2856);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/space/utils.js
+function isPresetSize(size) {
+ return ['small', 'middle', 'large'].includes(size);
+}
+function isValidGapNumber(size) {
+ if (!size) {
+ // The case of size = 0 is deliberately excluded here, because the default value of the gap attribute in CSS is 0, so if the user passes 0 in, we can directly ignore it.
+ return false;
+ }
+ return typeof size === 'number' && !Number.isNaN(size);
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/space/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+
+
+
+const Space = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ var _a, _b;
+ const {
+ getPrefixCls,
+ space,
+ direction: directionConfig
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ size = (space === null || space === void 0 ? void 0 : space.size) || 'small',
+ align,
+ className,
+ rootClassName,
+ children,
+ direction = 'horizontal',
+ prefixCls: customizePrefixCls,
+ split,
+ style,
+ wrap = false,
+ classNames: customClassNames,
+ styles
+ } = props,
+ otherProps = __rest(props, ["size", "align", "className", "rootClassName", "children", "direction", "prefixCls", "split", "style", "wrap", "classNames", "styles"]);
+ const [horizontalSize, verticalSize] = Array.isArray(size) ? size : [size, size];
+ const isPresetVerticalSize = isPresetSize(verticalSize);
+ const isPresetHorizontalSize = isPresetSize(horizontalSize);
+ const isValidVerticalSize = isValidGapNumber(verticalSize);
+ const isValidHorizontalSize = isValidGapNumber(horizontalSize);
+ const childNodes = (0,toArray/* default */.Z)(children, {
+ keepEmpty: true
+ });
+ const mergedAlign = align === undefined && direction === 'horizontal' ? 'center' : align;
+ const prefixCls = getPrefixCls('space', customizePrefixCls);
+ const [wrapSSR, hashId] = (0,space_style/* default */.Z)(prefixCls);
+ const cls = _classnames_2_5_1_classnames_default()(prefixCls, space === null || space === void 0 ? void 0 : space.className, hashId, `${prefixCls}-${direction}`, {
+ [`${prefixCls}-rtl`]: directionConfig === 'rtl',
+ [`${prefixCls}-align-${mergedAlign}`]: mergedAlign,
+ [`${prefixCls}-gap-row-${verticalSize}`]: isPresetVerticalSize,
+ [`${prefixCls}-gap-col-${horizontalSize}`]: isPresetHorizontalSize
+ }, className, rootClassName);
+ const itemClassName = _classnames_2_5_1_classnames_default()(`${prefixCls}-item`, (_a = customClassNames === null || customClassNames === void 0 ? void 0 : customClassNames.item) !== null && _a !== void 0 ? _a : (_b = space === null || space === void 0 ? void 0 : space.classNames) === null || _b === void 0 ? void 0 : _b.item);
+ // Calculate latest one
+ let latestIndex = 0;
+ const nodes = childNodes.map((child, i) => {
+ var _a, _b;
+ if (child !== null && child !== undefined) {
+ latestIndex = i;
+ }
+ const key = child && child.key || `${itemClassName}-${i}`;
+ return /*#__PURE__*/_react_17_0_2_react.createElement(space_Item, {
+ className: itemClassName,
+ key: key,
+ index: i,
+ split: split,
+ style: (_a = styles === null || styles === void 0 ? void 0 : styles.item) !== null && _a !== void 0 ? _a : (_b = space === null || space === void 0 ? void 0 : space.styles) === null || _b === void 0 ? void 0 : _b.item
+ }, child);
+ });
+ const spaceContext = _react_17_0_2_react.useMemo(() => ({
+ latestIndex
+ }), [latestIndex]);
+ // =========================== Render ===========================
+ if (childNodes.length === 0) {
+ return null;
+ }
+ const gapStyle = {};
+ if (wrap) {
+ gapStyle.flexWrap = 'wrap';
+ }
+ if (!isPresetHorizontalSize && isValidHorizontalSize) {
+ gapStyle.columnGap = horizontalSize;
+ }
+ if (!isPresetVerticalSize && isValidVerticalSize) {
+ gapStyle.rowGap = verticalSize;
+ }
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", Object.assign({
+ ref: ref,
+ className: cls,
+ style: Object.assign(Object.assign(Object.assign({}, gapStyle), space === null || space === void 0 ? void 0 : space.style), style)
+ }, otherProps), /*#__PURE__*/_react_17_0_2_react.createElement(SpaceContextProvider, {
+ value: spaceContext
+ }, nodes)));
+});
+if (false) {}
+const CompoundedSpace = Space;
+CompoundedSpace.Compact = Compact/* default */.ZP;
+/* harmony default export */ var space = (CompoundedSpace);
+
+/***/ }),
+
+/***/ 31797:
+/*!*************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/statistic/index.js + 5 modules ***!
+ \*************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ es_statistic; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/hooks/useForceUpdate.js
+var useForceUpdate = __webpack_require__(56762);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/skeleton/index.js + 12 modules
+var skeleton = __webpack_require__(60371);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Number.js
+"use client";
+
+
+const StatisticNumber = props => {
+ const {
+ value,
+ formatter,
+ precision,
+ decimalSeparator,
+ groupSeparator = '',
+ prefixCls
+ } = props;
+ let valueNode;
+ if (typeof formatter === 'function') {
+ // Customize formatter
+ valueNode = formatter(value);
+ } else {
+ // Internal formatter
+ const val = String(value);
+ const cells = val.match(/^(-?)(\d*)(\.(\d+))?$/);
+ // Process if illegal number
+ if (!cells || val === '-') {
+ valueNode = val;
+ } else {
+ const negative = cells[1];
+ let int = cells[2] || '0';
+ let decimal = cells[4] || '';
+ int = int.replace(/\B(?=(\d{3})+(?!\d))/g, groupSeparator);
+ if (typeof precision === 'number') {
+ decimal = decimal.padEnd(precision, '0').slice(0, precision > 0 ? precision : 0);
+ }
+ if (decimal) {
+ decimal = `${decimalSeparator}${decimal}`;
+ }
+ valueNode = [/*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "int",
+ className: `${prefixCls}-content-value-int`
+ }, negative, int), decimal && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "decimal",
+ className: `${prefixCls}-content-value-decimal`
+ }, decimal)];
+ }
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-value`
+ }, valueNode);
+};
+/* harmony default export */ var statistic_Number = (StatisticNumber);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/style/index.js
+"use client";
+
+
+
+const genStatisticStyle = token => {
+ const {
+ componentCls,
+ marginXXS,
+ padding,
+ colorTextDescription,
+ titleFontSize,
+ colorTextHeading,
+ contentFontSize,
+ fontFamily
+ } = token;
+ return {
+ [`${componentCls}`]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ [`${componentCls}-title`]: {
+ marginBottom: marginXXS,
+ color: colorTextDescription,
+ fontSize: titleFontSize
+ },
+ [`${componentCls}-skeleton`]: {
+ paddingTop: padding
+ },
+ [`${componentCls}-content`]: {
+ color: colorTextHeading,
+ fontSize: contentFontSize,
+ fontFamily,
+ [`${componentCls}-content-value`]: {
+ display: 'inline-block',
+ direction: 'ltr'
+ },
+ [`${componentCls}-content-prefix, ${componentCls}-content-suffix`]: {
+ display: 'inline-block'
+ },
+ [`${componentCls}-content-prefix`]: {
+ marginInlineEnd: marginXXS
+ },
+ [`${componentCls}-content-suffix`]: {
+ marginInlineStart: marginXXS
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var statistic_style = ((0,genComponentStyleHook/* default */.Z)('Statistic', token => {
+ const statisticToken = (0,statistic/* merge */.TS)(token, {});
+ return [genStatisticStyle(statisticToken)];
+}, token => {
+ const {
+ fontSizeHeading3,
+ fontSize
+ } = token;
+ return {
+ titleFontSize: fontSize,
+ contentFontSize: fontSizeHeading3
+ };
+}));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Statistic.js
+"use client";
+
+
+
+
+
+
+
+const Statistic = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ style,
+ valueStyle,
+ value = 0,
+ title,
+ valueRender,
+ prefix,
+ suffix,
+ loading = false,
+ onMouseEnter,
+ onMouseLeave,
+ decimalSeparator = '.',
+ groupSeparator = ','
+ } = props;
+ const {
+ getPrefixCls,
+ direction,
+ statistic
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('statistic', customizePrefixCls);
+ const [wrapSSR, hashId] = statistic_style(prefixCls);
+ const valueNode = /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Number, Object.assign({
+ decimalSeparator: decimalSeparator,
+ groupSeparator: groupSeparator,
+ prefixCls: prefixCls
+ }, props, {
+ value: value
+ }));
+ const cls = _classnames_2_5_1_classnames_default()(prefixCls, {
+ [`${prefixCls}-rtl`]: direction === 'rtl'
+ }, statistic === null || statistic === void 0 ? void 0 : statistic.className, className, rootClassName, hashId);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: cls,
+ style: Object.assign(Object.assign({}, statistic === null || statistic === void 0 ? void 0 : statistic.style), style),
+ onMouseEnter: onMouseEnter,
+ onMouseLeave: onMouseLeave
+ }, title && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-title`
+ }, title), /*#__PURE__*/_react_17_0_2_react.createElement(skeleton/* default */.Z, {
+ paragraph: false,
+ loading: loading,
+ className: `${prefixCls}-skeleton`
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ style: valueStyle,
+ className: `${prefixCls}-content`
+ }, prefix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-prefix`
+ }, prefix), valueRender ? valueRender(valueNode) : valueNode, suffix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-suffix`
+ }, suffix)))));
+};
+if (false) {}
+/* harmony default export */ var statistic_Statistic = (Statistic);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/utils.js
+// Countdown
+const timeUnits = [['Y', 1000 * 60 * 60 * 24 * 365], ['M', 1000 * 60 * 60 * 24 * 30], ['D', 1000 * 60 * 60 * 24], ['H', 1000 * 60 * 60], ['m', 1000 * 60], ['s', 1000], ['S', 1] // million seconds
+];
+
+function formatTimeStr(duration, format) {
+ let leftDuration = duration;
+ const escapeRegex = /\[[^\]]*]/g;
+ const keepList = (format.match(escapeRegex) || []).map(str => str.slice(1, -1));
+ const templateText = format.replace(escapeRegex, '[]');
+ const replacedText = timeUnits.reduce((current, _ref) => {
+ let [name, unit] = _ref;
+ if (current.includes(name)) {
+ const value = Math.floor(leftDuration / unit);
+ leftDuration -= value * unit;
+ return current.replace(new RegExp(`${name}+`, 'g'), match => {
+ const len = match.length;
+ return value.toString().padStart(len, '0');
+ });
+ }
+ return current;
+ }, templateText);
+ let index = 0;
+ return replacedText.replace(escapeRegex, () => {
+ const match = keepList[index];
+ index += 1;
+ return match;
+ });
+}
+function formatCountdown(value, config) {
+ const {
+ format = ''
+ } = config;
+ const target = new Date(value).getTime();
+ const current = Date.now();
+ const diff = Math.max(target - current, 0);
+ return formatTimeStr(diff, format);
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Countdown.js
+"use client";
+
+
+
+
+
+
+const REFRESH_INTERVAL = 1000 / 30;
+function getTime(value) {
+ return new Date(value).getTime();
+}
+const Countdown = props => {
+ const {
+ value,
+ format = 'HH:mm:ss',
+ onChange,
+ onFinish
+ } = props;
+ const forceUpdate = (0,useForceUpdate/* default */.Z)();
+ const countdown = _react_17_0_2_react.useRef(null);
+ const stopTimer = () => {
+ onFinish === null || onFinish === void 0 ? void 0 : onFinish();
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ const syncTimer = () => {
+ const timestamp = getTime(value);
+ if (timestamp >= Date.now()) {
+ countdown.current = setInterval(() => {
+ forceUpdate();
+ onChange === null || onChange === void 0 ? void 0 : onChange(timestamp - Date.now());
+ if (timestamp < Date.now()) {
+ stopTimer();
+ }
+ }, REFRESH_INTERVAL);
+ }
+ };
+ _react_17_0_2_react.useEffect(() => {
+ syncTimer();
+ return () => {
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ }, [value]);
+ const formatter = (formatValue, config) => formatCountdown(formatValue, Object.assign(Object.assign({}, config), {
+ format
+ }));
+ const valueRender = node => (0,reactNode/* cloneElement */.Tm)(node, {
+ title: undefined
+ });
+ return /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Statistic, Object.assign({}, props, {
+ valueRender: valueRender,
+ formatter: formatter
+ }));
+};
+/* harmony default export */ var statistic_Countdown = (/*#__PURE__*/_react_17_0_2_react.memo(Countdown));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/index.js
+"use client";
+
+
+
+statistic_Statistic.Countdown = statistic_Countdown;
+/* harmony default export */ var es_statistic = (statistic_Statistic);
+
+/***/ }),
+
+/***/ 66328:
+/*!********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/tree/index.js + 8 modules ***!
+ \********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ tree; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_rc-tree@5.7.12@rc-tree/es/index.js + 7 modules
+var es = __webpack_require__(11548);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FileOutlined.js + 1 modules
+var FileOutlined = __webpack_require__(26298);
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js + 1 modules
+var FolderOpenOutlined = __webpack_require__(48238);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/FolderOutlined.js
+// This icon file is generated automatically.
+var FolderOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z" } }] }, "name": "folder", "theme": "outlined" };
+/* harmony default export */ var asn_FolderOutlined = (FolderOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var FolderOutlined_FolderOutlined = function FolderOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_FolderOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_FolderOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(FolderOutlined_FolderOutlined));
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-tree@5.7.12@rc-tree/es/util.js
+var util = __webpack_require__(35654);
+// EXTERNAL MODULE: ./node_modules/_rc-tree@5.7.12@rc-tree/es/utils/treeUtil.js
+var treeUtil = __webpack_require__(71430);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/HolderOutlined.js
+// This icon file is generated automatically.
+var HolderOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z" } }] }, "name": "holder", "theme": "outlined" };
+/* harmony default export */ var asn_HolderOutlined = (HolderOutlined);
+
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/HolderOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var HolderOutlined_HolderOutlined = function HolderOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_HolderOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_HolderOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(HolderOutlined_HolderOutlined));
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/motion.js
+var _util_motion = __webpack_require__(62892);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/style/index.js
+var tree_style = __webpack_require__(20648);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/utils/dropIndicator.js
+"use client";
+
+
+const offset = 4;
+function dropIndicatorRender(props) {
+ const {
+ dropPosition,
+ dropLevelOffset,
+ prefixCls,
+ indent,
+ direction = 'ltr'
+ } = props;
+ const startPosition = direction === 'ltr' ? 'left' : 'right';
+ const endPosition = direction === 'ltr' ? 'right' : 'left';
+ const style = {
+ [startPosition]: -dropLevelOffset * indent + offset,
+ [endPosition]: 0
+ };
+ switch (dropPosition) {
+ case -1:
+ style.top = -3;
+ break;
+ case 1:
+ style.bottom = -3;
+ break;
+ default:
+ // dropPosition === 0
+ style.bottom = -3;
+ style[startPosition] = indent + offset;
+ break;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ style: style,
+ className: `${prefixCls}-drop-indicator`
+ });
+}
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/utils/iconUtil.js + 2 modules
+var iconUtil = __webpack_require__(4006);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/Tree.js
+"use client";
+
+
+
+
+
+
+
+
+
+
+const Tree = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ const {
+ getPrefixCls,
+ direction,
+ virtual,
+ tree
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ showIcon = false,
+ showLine,
+ switcherIcon,
+ blockNode = false,
+ children,
+ checkable = false,
+ selectable = true,
+ draggable,
+ motion: customMotion,
+ style
+ } = props;
+ const prefixCls = getPrefixCls('tree', customizePrefixCls);
+ const rootPrefixCls = getPrefixCls();
+ const motion = customMotion !== null && customMotion !== void 0 ? customMotion : Object.assign(Object.assign({}, (0,_util_motion/* default */.Z)(rootPrefixCls)), {
+ motionAppear: false
+ });
+ const newProps = Object.assign(Object.assign({}, props), {
+ checkable,
+ selectable,
+ showIcon,
+ motion,
+ blockNode,
+ showLine: Boolean(showLine),
+ dropIndicatorRender: dropIndicatorRender
+ });
+ const [wrapSSR, hashId] = (0,tree_style/* default */.ZP)(prefixCls);
+ const draggableConfig = _react_17_0_2_react.useMemo(() => {
+ if (!draggable) {
+ return false;
+ }
+ let mergedDraggable = {};
+ switch (typeof draggable) {
+ case 'function':
+ mergedDraggable.nodeDraggable = draggable;
+ break;
+ case 'object':
+ mergedDraggable = Object.assign({}, draggable);
+ break;
+ default:
+ break;
+ // Do nothing
+ }
+
+ if (mergedDraggable.icon !== false) {
+ mergedDraggable.icon = mergedDraggable.icon || /*#__PURE__*/_react_17_0_2_react.createElement(icons_HolderOutlined, null);
+ }
+ return mergedDraggable;
+ }, [draggable]);
+ const renderSwitcherIcon = nodeProps => /*#__PURE__*/_react_17_0_2_react.createElement(iconUtil/* default */.Z, {
+ prefixCls: prefixCls,
+ switcherIcon: switcherIcon,
+ treeNodeProps: nodeProps,
+ showLine: showLine
+ });
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, Object.assign({
+ itemHeight: 20,
+ ref: ref,
+ virtual: virtual
+ }, newProps, {
+ // newProps may contain style so declare style below it
+ style: Object.assign(Object.assign({}, tree === null || tree === void 0 ? void 0 : tree.style), style),
+ prefixCls: prefixCls,
+ className: _classnames_2_5_1_classnames_default()({
+ [`${prefixCls}-icon-hide`]: !showIcon,
+ [`${prefixCls}-block-node`]: blockNode,
+ [`${prefixCls}-unselectable`]: !selectable,
+ [`${prefixCls}-rtl`]: direction === 'rtl'
+ }, tree === null || tree === void 0 ? void 0 : tree.className, className, hashId),
+ direction: direction,
+ checkable: checkable ? /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-checkbox-inner`
+ }) : checkable,
+ selectable: selectable,
+ switcherIcon: renderSwitcherIcon,
+ draggable: draggableConfig
+ }), children));
+});
+if (false) {}
+/* harmony default export */ var tree_Tree = (Tree);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/utils/dictUtil.js
+
+var Record;
+(function (Record) {
+ Record[Record["None"] = 0] = "None";
+ Record[Record["Start"] = 1] = "Start";
+ Record[Record["End"] = 2] = "End";
+})(Record || (Record = {}));
+function traverseNodesKey(treeData, callback) {
+ function processNode(dataNode) {
+ const {
+ key,
+ children
+ } = dataNode;
+ if (callback(key, dataNode) !== false) {
+ traverseNodesKey(children || [], callback);
+ }
+ }
+ treeData.forEach(processNode);
+}
+/** 计算选中范围,只考虑expanded情况以优化性能 */
+function calcRangeKeys(_ref) {
+ let {
+ treeData,
+ expandedKeys,
+ startKey,
+ endKey
+ } = _ref;
+ const keys = [];
+ let record = Record.None;
+ if (startKey && startKey === endKey) {
+ return [startKey];
+ }
+ if (!startKey || !endKey) {
+ return [];
+ }
+ function matchKey(key) {
+ return key === startKey || key === endKey;
+ }
+ traverseNodesKey(treeData, key => {
+ if (record === Record.End) {
+ return false;
+ }
+ if (matchKey(key)) {
+ // Match test
+ keys.push(key);
+ if (record === Record.None) {
+ record = Record.Start;
+ } else if (record === Record.Start) {
+ record = Record.End;
+ return false;
+ }
+ } else if (record === Record.Start) {
+ // Append selection
+ keys.push(key);
+ }
+ return expandedKeys.includes(key);
+ });
+ return keys;
+}
+function convertDirectoryKeysToNodes(treeData, keys) {
+ const restKeys = (0,toConsumableArray/* default */.Z)(keys);
+ const nodes = [];
+ traverseNodesKey(treeData, (key, node) => {
+ const index = restKeys.indexOf(key);
+ if (index !== -1) {
+ nodes.push(node);
+ restKeys.splice(index, 1);
+ }
+ return !!restKeys.length;
+ });
+ return nodes;
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/DirectoryTree.js
+"use client";
+
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+
+
+
+function getIcon(props) {
+ const {
+ isLeaf,
+ expanded
+ } = props;
+ if (isLeaf) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(FileOutlined/* default */.Z, null);
+ }
+ return expanded ? /*#__PURE__*/_react_17_0_2_react.createElement(FolderOpenOutlined/* default */.Z, null) : /*#__PURE__*/_react_17_0_2_react.createElement(icons_FolderOutlined, null);
+}
+function getTreeData(_ref) {
+ let {
+ treeData,
+ children
+ } = _ref;
+ return treeData || (0,treeUtil/* convertTreeToData */.zn)(children);
+}
+const DirectoryTree = (_a, ref) => {
+ var {
+ defaultExpandAll,
+ defaultExpandParent,
+ defaultExpandedKeys
+ } = _a,
+ props = __rest(_a, ["defaultExpandAll", "defaultExpandParent", "defaultExpandedKeys"]);
+ // Shift click usage
+ const lastSelectedKey = _react_17_0_2_react.useRef();
+ const cachedSelectedKeys = _react_17_0_2_react.useRef();
+ const getInitExpandedKeys = () => {
+ const {
+ keyEntities
+ } = (0,treeUtil/* convertDataToEntities */.I8)(getTreeData(props));
+ let initExpandedKeys;
+ // Expanded keys
+ if (defaultExpandAll) {
+ initExpandedKeys = Object.keys(keyEntities);
+ } else if (defaultExpandParent) {
+ initExpandedKeys = (0,util/* conductExpandParent */.r7)(props.expandedKeys || defaultExpandedKeys || [], keyEntities);
+ } else {
+ initExpandedKeys = props.expandedKeys || defaultExpandedKeys;
+ }
+ return initExpandedKeys;
+ };
+ const [selectedKeys, setSelectedKeys] = _react_17_0_2_react.useState(props.selectedKeys || props.defaultSelectedKeys || []);
+ const [expandedKeys, setExpandedKeys] = _react_17_0_2_react.useState(() => getInitExpandedKeys());
+ _react_17_0_2_react.useEffect(() => {
+ if ('selectedKeys' in props) {
+ setSelectedKeys(props.selectedKeys);
+ }
+ }, [props.selectedKeys]);
+ _react_17_0_2_react.useEffect(() => {
+ if ('expandedKeys' in props) {
+ setExpandedKeys(props.expandedKeys);
+ }
+ }, [props.expandedKeys]);
+ const onExpand = (keys, info) => {
+ var _a;
+ if (!('expandedKeys' in props)) {
+ setExpandedKeys(keys);
+ }
+ // Call origin function
+ return (_a = props.onExpand) === null || _a === void 0 ? void 0 : _a.call(props, keys, info);
+ };
+ const onSelect = (keys, event) => {
+ var _a;
+ const {
+ multiple
+ } = props;
+ const {
+ node,
+ nativeEvent
+ } = event;
+ const {
+ key = ''
+ } = node;
+ const treeData = getTreeData(props);
+ // const newState: DirectoryTreeState = {};
+ // We need wrap this event since some value is not same
+ const newEvent = Object.assign(Object.assign({}, event), {
+ selected: true
+ });
+ // Windows / Mac single pick
+ const ctrlPick = (nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.ctrlKey) || (nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.metaKey);
+ const shiftPick = nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.shiftKey;
+ // Generate new selected keys
+ let newSelectedKeys;
+ if (multiple && ctrlPick) {
+ // Control click
+ newSelectedKeys = keys;
+ lastSelectedKey.current = key;
+ cachedSelectedKeys.current = newSelectedKeys;
+ newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);
+ } else if (multiple && shiftPick) {
+ // Shift click
+ newSelectedKeys = Array.from(new Set([].concat((0,toConsumableArray/* default */.Z)(cachedSelectedKeys.current || []), (0,toConsumableArray/* default */.Z)(calcRangeKeys({
+ treeData,
+ expandedKeys,
+ startKey: key,
+ endKey: lastSelectedKey.current
+ })))));
+ newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);
+ } else {
+ // Single click
+ newSelectedKeys = [key];
+ lastSelectedKey.current = key;
+ cachedSelectedKeys.current = newSelectedKeys;
+ newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);
+ }
+ (_a = props.onSelect) === null || _a === void 0 ? void 0 : _a.call(props, newSelectedKeys, newEvent);
+ if (!('selectedKeys' in props)) {
+ setSelectedKeys(newSelectedKeys);
+ }
+ };
+ const {
+ getPrefixCls,
+ direction
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ showIcon = true,
+ expandAction = 'click'
+ } = props,
+ otherProps = __rest(props, ["prefixCls", "className", "showIcon", "expandAction"]);
+ const prefixCls = getPrefixCls('tree', customizePrefixCls);
+ const connectClassName = _classnames_2_5_1_classnames_default()(`${prefixCls}-directory`, {
+ [`${prefixCls}-directory-rtl`]: direction === 'rtl'
+ }, className);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(tree_Tree, Object.assign({
+ icon: getIcon,
+ ref: ref,
+ blockNode: true
+ }, otherProps, {
+ showIcon: showIcon,
+ expandAction: expandAction,
+ prefixCls: prefixCls,
+ className: connectClassName,
+ expandedKeys: expandedKeys,
+ selectedKeys: selectedKeys,
+ onSelect: onSelect,
+ onExpand: onExpand
+ }));
+};
+const ForwardDirectoryTree = /*#__PURE__*/_react_17_0_2_react.forwardRef(DirectoryTree);
+if (false) {}
+/* harmony default export */ var tree_DirectoryTree = (ForwardDirectoryTree);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/index.js
+"use client";
+
+
+
+
+const es_tree_Tree = tree_Tree;
+es_tree_Tree.DirectoryTree = tree_DirectoryTree;
+es_tree_Tree.TreeNode = es/* TreeNode */.O;
+/* harmony default export */ var tree = (es_tree_Tree);
+
+/***/ }),
+
+/***/ 7761:
+/*!*************************************************************************!*\
+ !*** ./node_modules/_rc-util@5.38.1@rc-util/es/Dom/addEventListener.js ***!
+ \*************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ Z: function() { return /* binding */ addEventListenerWrap; }
+/* harmony export */ });
+/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-dom */ 4676);
+
+function addEventListenerWrap(target, eventType, cb, option) {
+ /* eslint camelcase: 2 */
+ var callback = react_dom__WEBPACK_IMPORTED_MODULE_0__.unstable_batchedUpdates ? function run(e) {
+ react_dom__WEBPACK_IMPORTED_MODULE_0__.unstable_batchedUpdates(cb, e);
+ } : cb;
+ if (target !== null && target !== void 0 && target.addEventListener) {
+ target.addEventListener(eventType, callback, option);
+ }
+ return {
+ remove: function remove() {
+ if (target !== null && target !== void 0 && target.removeEventListener) {
+ target.removeEventListener(eventType, callback, option);
+ }
+ }
+ };
+}
+
+/***/ }),
+
+/***/ 63830:
+/*!************************************************************!*\
+ !*** ./node_modules/_rc-util@5.38.1@rc-util/es/Dom/css.js ***!
+ \************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ g1: function() { return /* binding */ getClientSize; },
+/* harmony export */ os: function() { return /* binding */ getOffset; }
+/* harmony export */ });
+/* unused harmony exports get, set, getOuterWidth, getOuterHeight, getDocSize, getScroll */
+/* eslint-disable no-nested-ternary */
+var PIXEL_PATTERN = /margin|padding|width|height|max|min|offset/;
+var removePixel = {
+ left: true,
+ top: true
+};
+var floatMap = {
+ cssFloat: 1,
+ styleFloat: 1,
+ float: 1
+};
+function getComputedStyle(node) {
+ return node.nodeType === 1 ? node.ownerDocument.defaultView.getComputedStyle(node, null) : {};
+}
+function getStyleValue(node, type, value) {
+ type = type.toLowerCase();
+ if (value === 'auto') {
+ if (type === 'height') {
+ return node.offsetHeight;
+ }
+ if (type === 'width') {
+ return node.offsetWidth;
+ }
+ }
+ if (!(type in removePixel)) {
+ removePixel[type] = PIXEL_PATTERN.test(type);
+ }
+ return removePixel[type] ? parseFloat(value) || 0 : value;
+}
+function get(node, name) {
+ var length = arguments.length;
+ var style = getComputedStyle(node);
+ name = floatMap[name] ? 'cssFloat' in node.style ? 'cssFloat' : 'styleFloat' : name;
+ return length === 1 ? style : getStyleValue(node, name, style[name] || node.style[name]);
+}
+function set(node, name, value) {
+ var length = arguments.length;
+ name = floatMap[name] ? 'cssFloat' in node.style ? 'cssFloat' : 'styleFloat' : name;
+ if (length === 3) {
+ if (typeof value === 'number' && PIXEL_PATTERN.test(name)) {
+ value = "".concat(value, "px");
+ }
+ node.style[name] = value; // Number
+ return value;
+ }
+ for (var x in name) {
+ if (name.hasOwnProperty(x)) {
+ set(node, x, name[x]);
+ }
+ }
+ return getComputedStyle(node);
+}
+function getOuterWidth(el) {
+ if (el === document.body) {
+ return document.documentElement.clientWidth;
+ }
+ return el.offsetWidth;
+}
+function getOuterHeight(el) {
+ if (el === document.body) {
+ return window.innerHeight || document.documentElement.clientHeight;
+ }
+ return el.offsetHeight;
+}
+function getDocSize() {
+ var width = Math.max(document.documentElement.scrollWidth, document.body.scrollWidth);
+ var height = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);
+ return {
+ width: width,
+ height: height
+ };
+}
+function getClientSize() {
+ var width = document.documentElement.clientWidth;
+ var height = window.innerHeight || document.documentElement.clientHeight;
+ return {
+ width: width,
+ height: height
+ };
+}
+function getScroll() {
+ return {
+ scrollLeft: Math.max(document.documentElement.scrollLeft, document.body.scrollLeft),
+ scrollTop: Math.max(document.documentElement.scrollTop, document.body.scrollTop)
+ };
+}
+function getOffset(node) {
+ var box = node.getBoundingClientRect();
+ var docElem = document.documentElement;
+
+ // < ie8 不支持 win.pageXOffset, 则使用 docElem.scrollLeft
+ return {
+ left: box.left + (window.pageXOffset || docElem.scrollLeft) - (docElem.clientLeft || document.body.clientLeft || 0),
+ top: box.top + (window.pageYOffset || docElem.scrollTop) - (docElem.clientTop || document.body.clientTop || 0)
+ };
+}
+
+/***/ })
+
+}]);
\ No newline at end of file
diff --git a/33013.async.js b/33013.async.js
new file mode 100644
index 0000000000..cf3e50bc1a
--- /dev/null
+++ b/33013.async.js
@@ -0,0 +1,801 @@
+"use strict";
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[33013],{
+
+/***/ 60124:
+/*!******************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LeftOutlined.js + 1 modules ***!
+ \******************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_LeftOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/LeftOutlined.js
+// This icon file is generated automatically.
+var LeftOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z" } }] }, "name": "left", "theme": "outlined" };
+/* harmony default export */ var asn_LeftOutlined = (LeftOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LeftOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var LeftOutlined_LeftOutlined = function LeftOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_LeftOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_LeftOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(LeftOutlined_LeftOutlined));
+
+/***/ }),
+
+/***/ 78864:
+/*!*******************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/RightOutlined.js + 1 modules ***!
+ \*******************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_RightOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/RightOutlined.js
+// This icon file is generated automatically.
+var RightOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z" } }] }, "name": "right", "theme": "outlined" };
+/* harmony default export */ var asn_RightOutlined = (RightOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/RightOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var RightOutlined_RightOutlined = function RightOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_RightOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_RightOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(RightOutlined_RightOutlined));
+
+/***/ }),
+
+/***/ 28103:
+/*!***********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/divider/index.js + 1 modules ***!
+ \***********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ divider; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/style/index.js
+
+
+// ============================== Shared ==============================
+const genSharedDividerStyle = token => {
+ const {
+ componentCls,
+ sizePaddingEdgeHorizontal,
+ colorSplit,
+ lineWidth,
+ textPaddingInline,
+ orientationMargin,
+ verticalMarginInline
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ borderBlockStart: `${lineWidth}px solid ${colorSplit}`,
+ // vertical
+ '&-vertical': {
+ position: 'relative',
+ top: '-0.06em',
+ display: 'inline-block',
+ height: '0.9em',
+ marginInline: verticalMarginInline,
+ marginBlock: 0,
+ verticalAlign: 'middle',
+ borderTop: 0,
+ borderInlineStart: `${lineWidth}px solid ${colorSplit}`
+ },
+ '&-horizontal': {
+ display: 'flex',
+ clear: 'both',
+ width: '100%',
+ minWidth: '100%',
+ margin: `${token.dividerHorizontalGutterMargin}px 0`
+ },
+ [`&-horizontal${componentCls}-with-text`]: {
+ display: 'flex',
+ alignItems: 'center',
+ margin: `${token.dividerHorizontalWithTextGutterMargin}px 0`,
+ color: token.colorTextHeading,
+ fontWeight: 500,
+ fontSize: token.fontSizeLG,
+ whiteSpace: 'nowrap',
+ textAlign: 'center',
+ borderBlockStart: `0 ${colorSplit}`,
+ '&::before, &::after': {
+ position: 'relative',
+ width: '50%',
+ borderBlockStart: `${lineWidth}px solid transparent`,
+ // Chrome not accept `inherit` in `border-top`
+ borderBlockStartColor: 'inherit',
+ borderBlockEnd: 0,
+ transform: 'translateY(50%)',
+ content: "''"
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-left`]: {
+ '&::before': {
+ width: `${orientationMargin * 100}%`
+ },
+ '&::after': {
+ width: `${100 - orientationMargin * 100}%`
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-right`]: {
+ '&::before': {
+ width: `${100 - orientationMargin * 100}%`
+ },
+ '&::after': {
+ width: `${orientationMargin * 100}%`
+ }
+ },
+ [`${componentCls}-inner-text`]: {
+ display: 'inline-block',
+ paddingBlock: 0,
+ paddingInline: textPaddingInline
+ },
+ '&-dashed': {
+ background: 'none',
+ borderColor: colorSplit,
+ borderStyle: 'dashed',
+ borderWidth: `${lineWidth}px 0 0`
+ },
+ [`&-horizontal${componentCls}-with-text${componentCls}-dashed`]: {
+ '&::before, &::after': {
+ borderStyle: 'dashed none none'
+ }
+ },
+ [`&-vertical${componentCls}-dashed`]: {
+ borderInlineStartWidth: lineWidth,
+ borderInlineEnd: 0,
+ borderBlockStart: 0,
+ borderBlockEnd: 0
+ },
+ [`&-plain${componentCls}-with-text`]: {
+ color: token.colorText,
+ fontWeight: 'normal',
+ fontSize: token.fontSize
+ },
+ [`&-horizontal${componentCls}-with-text-left${componentCls}-no-default-orientation-margin-left`]: {
+ '&::before': {
+ width: 0
+ },
+ '&::after': {
+ width: '100%'
+ },
+ [`${componentCls}-inner-text`]: {
+ paddingInlineStart: sizePaddingEdgeHorizontal
+ }
+ },
+ [`&-horizontal${componentCls}-with-text-right${componentCls}-no-default-orientation-margin-right`]: {
+ '&::before': {
+ width: '100%'
+ },
+ '&::after': {
+ width: 0
+ },
+ [`${componentCls}-inner-text`]: {
+ paddingInlineEnd: sizePaddingEdgeHorizontal
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var divider_style = ((0,genComponentStyleHook/* default */.Z)('Divider', token => {
+ const dividerToken = (0,statistic/* merge */.TS)(token, {
+ dividerHorizontalWithTextGutterMargin: token.margin,
+ dividerHorizontalGutterMargin: token.marginLG,
+ sizePaddingEdgeHorizontal: 0
+ });
+ return [genSharedDividerStyle(dividerToken)];
+}, token => ({
+ textPaddingInline: '1em',
+ orientationMargin: 0.05,
+ verticalMarginInline: token.marginXS
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+const Divider = props => {
+ const {
+ getPrefixCls,
+ direction,
+ divider
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const {
+ prefixCls: customizePrefixCls,
+ type = 'horizontal',
+ orientation = 'center',
+ orientationMargin,
+ className,
+ rootClassName,
+ children,
+ dashed,
+ plain,
+ style
+ } = props,
+ restProps = __rest(props, ["prefixCls", "type", "orientation", "orientationMargin", "className", "rootClassName", "children", "dashed", "plain", "style"]);
+ const prefixCls = getPrefixCls('divider', customizePrefixCls);
+ const [wrapSSR, hashId] = divider_style(prefixCls);
+ const orientationPrefix = orientation.length > 0 ? `-${orientation}` : orientation;
+ const hasChildren = !!children;
+ const hasCustomMarginLeft = orientation === 'left' && orientationMargin != null;
+ const hasCustomMarginRight = orientation === 'right' && orientationMargin != null;
+ const classString = _classnames_2_5_1_classnames_default()(prefixCls, divider === null || divider === void 0 ? void 0 : divider.className, hashId, `${prefixCls}-${type}`, {
+ [`${prefixCls}-with-text`]: hasChildren,
+ [`${prefixCls}-with-text${orientationPrefix}`]: hasChildren,
+ [`${prefixCls}-dashed`]: !!dashed,
+ [`${prefixCls}-plain`]: !!plain,
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-no-default-orientation-margin-left`]: hasCustomMarginLeft,
+ [`${prefixCls}-no-default-orientation-margin-right`]: hasCustomMarginRight
+ }, className, rootClassName);
+ const memoizedOrientationMargin = _react_17_0_2_react.useMemo(() => {
+ if (typeof orientationMargin === 'number') {
+ return orientationMargin;
+ }
+ if (/^\d+$/.test(orientationMargin)) {
+ return Number(orientationMargin);
+ }
+ return orientationMargin;
+ }, [orientationMargin]);
+ const innerStyle = Object.assign(Object.assign({}, hasCustomMarginLeft && {
+ marginLeft: memoizedOrientationMargin
+ }), hasCustomMarginRight && {
+ marginRight: memoizedOrientationMargin
+ });
+ // Warning children not work in vertical mode
+ if (false) {}
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", Object.assign({
+ className: classString,
+ style: Object.assign(Object.assign({}, divider === null || divider === void 0 ? void 0 : divider.style), style)
+ }, restProps, {
+ role: "separator"
+ }), children && type !== 'vertical' && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-inner-text`,
+ style: innerStyle
+ }, children)));
+};
+if (false) {}
+/* harmony default export */ var divider = (Divider);
+
+/***/ }),
+
+/***/ 8378:
+/*!*******************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/style/motion/collapse.js ***!
+ \*******************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__) {
+
+const genCollapseMotion = token => ({
+ [token.componentCls]: {
+ // For common/openAnimation
+ [`${token.antCls}-motion-collapse-legacy`]: {
+ overflow: 'hidden',
+ '&-active': {
+ transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},
+ opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`
+ }
+ },
+ [`${token.antCls}-motion-collapse`]: {
+ overflow: 'hidden',
+ transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},
+ opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`
+ }
+ }
+});
+/* harmony default export */ __webpack_exports__.Z = (genCollapseMotion);
+
+/***/ }),
+
+/***/ 31561:
+/*!*****************************************************************************!*\
+ !*** ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/index.js + 4 modules ***!
+ \*****************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ _rc_dropdown_4_1_0_rc_dropdown_es; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/index.js + 11 modules
+var es = __webpack_require__(35593);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
+var es_ref = __webpack_require__(88831);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/raf.js
+var raf = __webpack_require__(90571);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/hooks/useAccessibility.js
+
+
+
+var ESC = KeyCode/* default */.Z.ESC,
+ TAB = KeyCode/* default */.Z.TAB;
+function useAccessibility(_ref) {
+ var visible = _ref.visible,
+ triggerRef = _ref.triggerRef,
+ onVisibleChange = _ref.onVisibleChange,
+ autoFocus = _ref.autoFocus,
+ overlayRef = _ref.overlayRef;
+ var focusMenuRef = _react_17_0_2_react.useRef(false);
+ var handleCloseMenuAndReturnFocus = function handleCloseMenuAndReturnFocus() {
+ if (visible) {
+ var _triggerRef$current, _triggerRef$current$f;
+ (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$f = _triggerRef$current.focus) === null || _triggerRef$current$f === void 0 ? void 0 : _triggerRef$current$f.call(_triggerRef$current);
+ onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(false);
+ }
+ };
+ var focusMenu = function focusMenu() {
+ var _overlayRef$current;
+ if ((_overlayRef$current = overlayRef.current) !== null && _overlayRef$current !== void 0 && _overlayRef$current.focus) {
+ overlayRef.current.focus();
+ focusMenuRef.current = true;
+ return true;
+ }
+ return false;
+ };
+ var handleKeyDown = function handleKeyDown(event) {
+ switch (event.keyCode) {
+ case ESC:
+ handleCloseMenuAndReturnFocus();
+ break;
+ case TAB:
+ {
+ var focusResult = false;
+ if (!focusMenuRef.current) {
+ focusResult = focusMenu();
+ }
+ if (focusResult) {
+ event.preventDefault();
+ } else {
+ handleCloseMenuAndReturnFocus();
+ }
+ break;
+ }
+ }
+ };
+ _react_17_0_2_react.useEffect(function () {
+ if (visible) {
+ window.addEventListener("keydown", handleKeyDown);
+ if (autoFocus) {
+ // FIXME: hack with raf
+ (0,raf/* default */.Z)(focusMenu, 3);
+ }
+ return function () {
+ window.removeEventListener("keydown", handleKeyDown);
+ focusMenuRef.current = false;
+ };
+ }
+ return function () {
+ focusMenuRef.current = false;
+ };
+ }, [visible]); // eslint-disable-line react-hooks/exhaustive-deps
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/Overlay.js
+
+
+var Overlay = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(function (props, ref) {
+ var overlay = props.overlay,
+ arrow = props.arrow,
+ prefixCls = props.prefixCls;
+ var overlayNode = (0,_react_17_0_2_react.useMemo)(function () {
+ var overlayElement;
+ if (typeof overlay === 'function') {
+ overlayElement = overlay();
+ } else {
+ overlayElement = overlay;
+ }
+ return overlayElement;
+ }, [overlay]);
+ var composedRef = (0,es_ref/* composeRef */.sQ)(ref, overlayNode === null || overlayNode === void 0 ? void 0 : overlayNode.ref);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, arrow && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-arrow")
+ }), /*#__PURE__*/_react_17_0_2_react.cloneElement(overlayNode, {
+ ref: (0,es_ref/* supportRef */.Yr)(overlayNode) ? composedRef : undefined
+ }));
+});
+/* harmony default export */ var es_Overlay = (Overlay);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/placements.js
+var autoAdjustOverflow = {
+ adjustX: 1,
+ adjustY: 1
+};
+var targetOffset = [0, 0];
+var placements = {
+ topLeft: {
+ points: ['bl', 'tl'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ top: {
+ points: ['bc', 'tc'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ topRight: {
+ points: ['br', 'tr'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ bottomLeft: {
+ points: ['tl', 'bl'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ },
+ bottom: {
+ points: ['tc', 'bc'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ },
+ bottomRight: {
+ points: ['tr', 'br'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ }
+};
+/* harmony default export */ var es_placements = (placements);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/Dropdown.js
+
+
+
+
+var _excluded = ["arrow", "prefixCls", "transitionName", "animation", "align", "placement", "placements", "getPopupContainer", "showAction", "hideAction", "overlayClassName", "overlayStyle", "visible", "trigger", "autoFocus", "overlay", "children", "onVisibleChange"];
+
+
+
+
+
+
+
+function Dropdown(props, ref) {
+ var _children$props;
+ var _props$arrow = props.arrow,
+ arrow = _props$arrow === void 0 ? false : _props$arrow,
+ _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-dropdown' : _props$prefixCls,
+ transitionName = props.transitionName,
+ animation = props.animation,
+ align = props.align,
+ _props$placement = props.placement,
+ placement = _props$placement === void 0 ? 'bottomLeft' : _props$placement,
+ _props$placements = props.placements,
+ placements = _props$placements === void 0 ? es_placements : _props$placements,
+ getPopupContainer = props.getPopupContainer,
+ showAction = props.showAction,
+ hideAction = props.hideAction,
+ overlayClassName = props.overlayClassName,
+ overlayStyle = props.overlayStyle,
+ visible = props.visible,
+ _props$trigger = props.trigger,
+ trigger = _props$trigger === void 0 ? ['hover'] : _props$trigger,
+ autoFocus = props.autoFocus,
+ overlay = props.overlay,
+ children = props.children,
+ onVisibleChange = props.onVisibleChange,
+ otherProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var _React$useState = _react_17_0_2_react.useState(),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ triggerVisible = _React$useState2[0],
+ setTriggerVisible = _React$useState2[1];
+ var mergedVisible = 'visible' in props ? visible : triggerVisible;
+ var triggerRef = _react_17_0_2_react.useRef(null);
+ var overlayRef = _react_17_0_2_react.useRef(null);
+ var childRef = _react_17_0_2_react.useRef(null);
+ _react_17_0_2_react.useImperativeHandle(ref, function () {
+ return triggerRef.current;
+ });
+ var handleVisibleChange = function handleVisibleChange(newVisible) {
+ setTriggerVisible(newVisible);
+ onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(newVisible);
+ };
+ useAccessibility({
+ visible: mergedVisible,
+ triggerRef: childRef,
+ onVisibleChange: handleVisibleChange,
+ autoFocus: autoFocus,
+ overlayRef: overlayRef
+ });
+ var onClick = function onClick(e) {
+ var onOverlayClick = props.onOverlayClick;
+ setTriggerVisible(false);
+ if (onOverlayClick) {
+ onOverlayClick(e);
+ }
+ };
+ var getMenuElement = function getMenuElement() {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_Overlay, {
+ ref: overlayRef,
+ overlay: overlay,
+ prefixCls: prefixCls,
+ arrow: arrow
+ });
+ };
+ var getMenuElementOrLambda = function getMenuElementOrLambda() {
+ if (typeof overlay === 'function') {
+ return getMenuElement;
+ }
+ return getMenuElement();
+ };
+ var getMinOverlayWidthMatchTrigger = function getMinOverlayWidthMatchTrigger() {
+ var minOverlayWidthMatchTrigger = props.minOverlayWidthMatchTrigger,
+ alignPoint = props.alignPoint;
+ if ('minOverlayWidthMatchTrigger' in props) {
+ return minOverlayWidthMatchTrigger;
+ }
+ return !alignPoint;
+ };
+ var getOpenClassName = function getOpenClassName() {
+ var openClassName = props.openClassName;
+ if (openClassName !== undefined) {
+ return openClassName;
+ }
+ return "".concat(prefixCls, "-open");
+ };
+ var childrenNode = /*#__PURE__*/_react_17_0_2_react.cloneElement(children, {
+ className: _classnames_2_5_1_classnames_default()((_children$props = children.props) === null || _children$props === void 0 ? void 0 : _children$props.className, mergedVisible && getOpenClassName()),
+ ref: (0,es_ref/* supportRef */.Yr)(children) ? (0,es_ref/* composeRef */.sQ)(childRef, children.ref) : undefined
+ });
+ var triggerHideAction = hideAction;
+ if (!triggerHideAction && trigger.indexOf('contextMenu') !== -1) {
+ triggerHideAction = ['click'];
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, (0,esm_extends/* default */.Z)({
+ builtinPlacements: placements
+ }, otherProps, {
+ prefixCls: prefixCls,
+ ref: triggerRef,
+ popupClassName: _classnames_2_5_1_classnames_default()(overlayClassName, (0,defineProperty/* default */.Z)({}, "".concat(prefixCls, "-show-arrow"), arrow)),
+ popupStyle: overlayStyle,
+ action: trigger,
+ showAction: showAction,
+ hideAction: triggerHideAction,
+ popupPlacement: placement,
+ popupAlign: align,
+ popupTransitionName: transitionName,
+ popupAnimation: animation,
+ popupVisible: mergedVisible,
+ stretch: getMinOverlayWidthMatchTrigger() ? 'minWidth' : '',
+ popup: getMenuElementOrLambda(),
+ onPopupVisibleChange: handleVisibleChange,
+ onPopupClick: onClick,
+ getPopupContainer: getPopupContainer
+ }), childrenNode);
+}
+/* harmony default export */ var es_Dropdown = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Dropdown));
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/index.js
+
+/* harmony default export */ var _rc_dropdown_4_1_0_rc_dropdown_es = (es_Dropdown);
+
+/***/ }),
+
+/***/ 7761:
+/*!*************************************************************************!*\
+ !*** ./node_modules/_rc-util@5.38.1@rc-util/es/Dom/addEventListener.js ***!
+ \*************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ Z: function() { return /* binding */ addEventListenerWrap; }
+/* harmony export */ });
+/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-dom */ 4676);
+
+function addEventListenerWrap(target, eventType, cb, option) {
+ /* eslint camelcase: 2 */
+ var callback = react_dom__WEBPACK_IMPORTED_MODULE_0__.unstable_batchedUpdates ? function run(e) {
+ react_dom__WEBPACK_IMPORTED_MODULE_0__.unstable_batchedUpdates(cb, e);
+ } : cb;
+ if (target !== null && target !== void 0 && target.addEventListener) {
+ target.addEventListener(eventType, callback, option);
+ }
+ return {
+ remove: function remove() {
+ if (target !== null && target !== void 0 && target.removeEventListener) {
+ target.removeEventListener(eventType, callback, option);
+ }
+ }
+ };
+}
+
+/***/ }),
+
+/***/ 63830:
+/*!************************************************************!*\
+ !*** ./node_modules/_rc-util@5.38.1@rc-util/es/Dom/css.js ***!
+ \************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ g1: function() { return /* binding */ getClientSize; },
+/* harmony export */ os: function() { return /* binding */ getOffset; }
+/* harmony export */ });
+/* unused harmony exports get, set, getOuterWidth, getOuterHeight, getDocSize, getScroll */
+/* eslint-disable no-nested-ternary */
+var PIXEL_PATTERN = /margin|padding|width|height|max|min|offset/;
+var removePixel = {
+ left: true,
+ top: true
+};
+var floatMap = {
+ cssFloat: 1,
+ styleFloat: 1,
+ float: 1
+};
+function getComputedStyle(node) {
+ return node.nodeType === 1 ? node.ownerDocument.defaultView.getComputedStyle(node, null) : {};
+}
+function getStyleValue(node, type, value) {
+ type = type.toLowerCase();
+ if (value === 'auto') {
+ if (type === 'height') {
+ return node.offsetHeight;
+ }
+ if (type === 'width') {
+ return node.offsetWidth;
+ }
+ }
+ if (!(type in removePixel)) {
+ removePixel[type] = PIXEL_PATTERN.test(type);
+ }
+ return removePixel[type] ? parseFloat(value) || 0 : value;
+}
+function get(node, name) {
+ var length = arguments.length;
+ var style = getComputedStyle(node);
+ name = floatMap[name] ? 'cssFloat' in node.style ? 'cssFloat' : 'styleFloat' : name;
+ return length === 1 ? style : getStyleValue(node, name, style[name] || node.style[name]);
+}
+function set(node, name, value) {
+ var length = arguments.length;
+ name = floatMap[name] ? 'cssFloat' in node.style ? 'cssFloat' : 'styleFloat' : name;
+ if (length === 3) {
+ if (typeof value === 'number' && PIXEL_PATTERN.test(name)) {
+ value = "".concat(value, "px");
+ }
+ node.style[name] = value; // Number
+ return value;
+ }
+ for (var x in name) {
+ if (name.hasOwnProperty(x)) {
+ set(node, x, name[x]);
+ }
+ }
+ return getComputedStyle(node);
+}
+function getOuterWidth(el) {
+ if (el === document.body) {
+ return document.documentElement.clientWidth;
+ }
+ return el.offsetWidth;
+}
+function getOuterHeight(el) {
+ if (el === document.body) {
+ return window.innerHeight || document.documentElement.clientHeight;
+ }
+ return el.offsetHeight;
+}
+function getDocSize() {
+ var width = Math.max(document.documentElement.scrollWidth, document.body.scrollWidth);
+ var height = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);
+ return {
+ width: width,
+ height: height
+ };
+}
+function getClientSize() {
+ var width = document.documentElement.clientWidth;
+ var height = window.innerHeight || document.documentElement.clientHeight;
+ return {
+ width: width,
+ height: height
+ };
+}
+function getScroll() {
+ return {
+ scrollLeft: Math.max(document.documentElement.scrollLeft, document.body.scrollLeft),
+ scrollTop: Math.max(document.documentElement.scrollTop, document.body.scrollTop)
+ };
+}
+function getOffset(node) {
+ var box = node.getBoundingClientRect();
+ var docElem = document.documentElement;
+
+ // < ie8 不支持 win.pageXOffset, 则使用 docElem.scrollLeft
+ return {
+ left: box.left + (window.pageXOffset || docElem.scrollLeft) - (docElem.clientLeft || document.body.clientLeft || 0),
+ top: box.top + (window.pageYOffset || docElem.scrollTop) - (docElem.clientTop || document.body.clientTop || 0)
+ };
+}
+
+/***/ })
+
+}]);
\ No newline at end of file
diff --git a/33461.async.js b/33461.async.js
deleted file mode 100644
index 6a2c0c10d7..0000000000
--- a/33461.async.js
+++ /dev/null
@@ -1,761 +0,0 @@
-"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[33461],{
-
-/***/ 47104:
-/*!*************************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseCircleOutlined.js + 1 modules ***!
- \*************************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ icons_CloseCircleOutlined; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/CloseCircleOutlined.js
-// This icon file is generated automatically.
-var CloseCircleOutlined = { "icon": { "tag": "svg", "attrs": { "fill-rule": "evenodd", "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm0 76c-205.4 0-372 166.6-372 372s166.6 372 372 372 372-166.6 372-372-166.6-372-372-372zm128.01 198.83c.03 0 .05.01.09.06l45.02 45.01a.2.2 0 01.05.09.12.12 0 010 .07c0 .02-.01.04-.05.08L557.25 512l127.87 127.86a.27.27 0 01.05.06v.02a.12.12 0 010 .07c0 .03-.01.05-.05.09l-45.02 45.02a.2.2 0 01-.09.05.12.12 0 01-.07 0c-.02 0-.04-.01-.08-.05L512 557.25 384.14 685.12c-.04.04-.06.05-.08.05a.12.12 0 01-.07 0c-.03 0-.05-.01-.09-.05l-45.02-45.02a.2.2 0 01-.05-.09.12.12 0 010-.07c0-.02.01-.04.06-.08L466.75 512 338.88 384.14a.27.27 0 01-.05-.06l-.01-.02a.12.12 0 010-.07c0-.03.01-.05.05-.09l45.02-45.02a.2.2 0 01.09-.05.12.12 0 01.07 0c.02 0 .04.01.08.06L512 466.75l127.86-127.86c.04-.05.06-.06.08-.06a.12.12 0 01.07 0z" } }] }, "name": "close-circle", "theme": "outlined" };
-/* harmony default export */ var asn_CloseCircleOutlined = (CloseCircleOutlined);
-
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
-var AntdIcon = __webpack_require__(91851);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseCircleOutlined.js
-
-// GENERATE BY ./scripts/generate.ts
-// DON NOT EDIT IT MANUALLY
-
-
-
-
-var CloseCircleOutlined_CloseCircleOutlined = function CloseCircleOutlined(props, ref) {
- return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
- ref: ref,
- icon: asn_CloseCircleOutlined
- }));
-};
-if (false) {}
-/* harmony default export */ var icons_CloseCircleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(CloseCircleOutlined_CloseCircleOutlined));
-
-/***/ }),
-
-/***/ 52063:
-/*!******************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LeftOutlined.js + 1 modules ***!
- \******************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ icons_LeftOutlined; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/LeftOutlined.js
-// This icon file is generated automatically.
-var LeftOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z" } }] }, "name": "left", "theme": "outlined" };
-/* harmony default export */ var asn_LeftOutlined = (LeftOutlined);
-
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
-var AntdIcon = __webpack_require__(91851);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LeftOutlined.js
-
-// GENERATE BY ./scripts/generate.ts
-// DON NOT EDIT IT MANUALLY
-
-
-
-
-var LeftOutlined_LeftOutlined = function LeftOutlined(props, ref) {
- return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
- ref: ref,
- icon: asn_LeftOutlined
- }));
-};
-if (false) {}
-/* harmony default export */ var icons_LeftOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(LeftOutlined_LeftOutlined));
-
-/***/ }),
-
-/***/ 22321:
-/*!**********************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PoweroffOutlined.js + 1 modules ***!
- \**********************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ icons_PoweroffOutlined; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/PoweroffOutlined.js
-// This icon file is generated automatically.
-var PoweroffOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M705.6 124.9a8 8 0 00-11.6 7.2v64.2c0 5.5 2.9 10.6 7.5 13.6a352.2 352.2 0 0162.2 49.8c32.7 32.8 58.4 70.9 76.3 113.3a355 355 0 0127.9 138.7c0 48.1-9.4 94.8-27.9 138.7a355.92 355.92 0 01-76.3 113.3 353.06 353.06 0 01-113.2 76.4c-43.8 18.6-90.5 28-138.5 28s-94.7-9.4-138.5-28a353.06 353.06 0 01-113.2-76.4A355.92 355.92 0 01184 650.4a355 355 0 01-27.9-138.7c0-48.1 9.4-94.8 27.9-138.7 17.9-42.4 43.6-80.5 76.3-113.3 19-19 39.8-35.6 62.2-49.8 4.7-2.9 7.5-8.1 7.5-13.6V132c0-6-6.3-9.8-11.6-7.2C178.5 195.2 82 339.3 80 506.3 77.2 745.1 272.5 943.5 511.2 944c239 .5 432.8-193.3 432.8-432.4 0-169.2-97-315.7-238.4-386.7zM480 560h64c4.4 0 8-3.6 8-8V88c0-4.4-3.6-8-8-8h-64c-4.4 0-8 3.6-8 8v464c0 4.4 3.6 8 8 8z" } }] }, "name": "poweroff", "theme": "outlined" };
-/* harmony default export */ var asn_PoweroffOutlined = (PoweroffOutlined);
-
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
-var AntdIcon = __webpack_require__(91851);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PoweroffOutlined.js
-
-// GENERATE BY ./scripts/generate.ts
-// DON NOT EDIT IT MANUALLY
-
-
-
-
-var PoweroffOutlined_PoweroffOutlined = function PoweroffOutlined(props, ref) {
- return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
- ref: ref,
- icon: asn_PoweroffOutlined
- }));
-};
-if (false) {}
-/* harmony default export */ var icons_PoweroffOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(PoweroffOutlined_PoweroffOutlined));
-
-/***/ }),
-
-/***/ 22311:
-/*!*******************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/RightOutlined.js + 1 modules ***!
- \*******************************************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ icons_RightOutlined; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/RightOutlined.js
-// This icon file is generated automatically.
-var RightOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z" } }] }, "name": "right", "theme": "outlined" };
-/* harmony default export */ var asn_RightOutlined = (RightOutlined);
-
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
-var AntdIcon = __webpack_require__(91851);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/RightOutlined.js
-
-// GENERATE BY ./scripts/generate.ts
-// DON NOT EDIT IT MANUALLY
-
-
-
-
-var RightOutlined_RightOutlined = function RightOutlined(props, ref) {
- return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
- ref: ref,
- icon: asn_RightOutlined
- }));
-};
-if (false) {}
-/* harmony default export */ var icons_RightOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(RightOutlined_RightOutlined));
-
-/***/ }),
-
-/***/ 56762:
-/*!************************************************************************!*\
- !*** ./node_modules/_antd@5.9.0@antd/es/_util/hooks/useForceUpdate.js ***!
- \************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ Z: function() { return /* binding */ useForceUpdate; }
-/* harmony export */ });
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
-
-function useForceUpdate() {
- const [, forceUpdate] = react__WEBPACK_IMPORTED_MODULE_0__.useReducer(x => x + 1, 0);
- return forceUpdate;
-}
-
-/***/ }),
-
-/***/ 14478:
-/*!**************************************************************************!*\
- !*** ./node_modules/_antd@5.9.0@antd/es/popconfirm/index.js + 2 modules ***!
- \**************************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ popconfirm; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleFilled.js + 1 modules
-var ExclamationCircleFilled = __webpack_require__(86850);
-// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
-var _classnames_2_5_1_classnames = __webpack_require__(92310);
-var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
-var KeyCode = __webpack_require__(84821);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
-var useMergedState = __webpack_require__(84381);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
-var omit = __webpack_require__(99468);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
-var reactNode = __webpack_require__(92343);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
-var context = __webpack_require__(36355);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/popover/index.js
-var popover = __webpack_require__(60324);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/ActionButton.js
-var ActionButton = __webpack_require__(92806);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/getRenderPropValue.js
-var getRenderPropValue = __webpack_require__(77578);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
-var es_button = __webpack_require__(3113);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/button.js + 8 modules
-var button_button = __webpack_require__(67797);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/locale/useLocale.js
-var useLocale = __webpack_require__(9763);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/locale/en_US.js + 1 modules
-var en_US = __webpack_require__(31724);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/popover/PurePanel.js
-var PurePanel = __webpack_require__(39722);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
-var genComponentStyleHook = __webpack_require__(83116);
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/popconfirm/style/index.js
-"use client";
-
-
-// =============================== Base ===============================
-const genBaseStyle = token => {
- const {
- componentCls,
- iconCls,
- antCls,
- zIndexPopup,
- colorText,
- colorWarning,
- marginXXS,
- marginXS,
- fontSize,
- fontWeightStrong,
- colorTextHeading
- } = token;
- return {
- [componentCls]: {
- zIndex: zIndexPopup,
- [`&${antCls}-popover`]: {
- fontSize
- },
- [`${componentCls}-message`]: {
- marginBottom: marginXS,
- display: 'flex',
- flexWrap: 'nowrap',
- alignItems: 'start',
- [`> ${componentCls}-message-icon ${iconCls}`]: {
- color: colorWarning,
- fontSize,
- lineHeight: 1,
- marginInlineEnd: marginXS
- },
- [`${componentCls}-title`]: {
- fontWeight: fontWeightStrong,
- color: colorTextHeading,
- '&:only-child': {
- fontWeight: 'normal'
- }
- },
- [`${componentCls}-description`]: {
- marginTop: marginXXS,
- color: colorText
- }
- },
- [`${componentCls}-buttons`]: {
- textAlign: 'end',
- whiteSpace: 'nowrap',
- button: {
- marginInlineStart: marginXS
- }
- }
- }
- };
-};
-// ============================== Export ==============================
-/* harmony default export */ var popconfirm_style = ((0,genComponentStyleHook/* default */.Z)('Popconfirm', token => genBaseStyle(token), token => {
- const {
- zIndexPopupBase
- } = token;
- return {
- zIndexPopup: zIndexPopupBase + 60
- };
-}, {
- resetStyle: false
-}));
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/popconfirm/PurePanel.js
-"use client";
-
-var __rest = undefined && undefined.__rest || function (s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
- }
- return t;
-};
-
-
-
-
-
-
-
-
-
-
-
-
-const Overlay = props => {
- const {
- prefixCls,
- okButtonProps,
- cancelButtonProps,
- title,
- description,
- cancelText,
- okText,
- okType = 'primary',
- icon = /*#__PURE__*/_react_17_0_2_react.createElement(ExclamationCircleFilled/* default */.Z, null),
- showCancel = true,
- close,
- onConfirm,
- onCancel,
- onPopupClick
- } = props;
- const {
- getPrefixCls
- } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
- const [contextLocale] = (0,useLocale/* default */.Z)('Popconfirm', en_US/* default */.Z.Popconfirm);
- const theTitle = (0,getRenderPropValue/* getRenderPropValue */.Z)(title);
- const theDescription = (0,getRenderPropValue/* getRenderPropValue */.Z)(description);
- return /*#__PURE__*/_react_17_0_2_react.createElement("div", {
- className: `${prefixCls}-inner-content`,
- onClick: onPopupClick
- }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
- className: `${prefixCls}-message`
- }, icon && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: `${prefixCls}-message-icon`
- }, icon), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
- className: `${prefixCls}-message-text`
- }, theTitle && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
- className: _classnames_2_5_1_classnames_default()(`${prefixCls}-title`)
- }, theTitle), theDescription && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
- className: `${prefixCls}-description`
- }, theDescription))), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
- className: `${prefixCls}-buttons`
- }, showCancel && /*#__PURE__*/_react_17_0_2_react.createElement(es_button/* default */.ZP, Object.assign({
- onClick: onCancel,
- size: "small"
- }, cancelButtonProps), cancelText !== null && cancelText !== void 0 ? cancelText : contextLocale === null || contextLocale === void 0 ? void 0 : contextLocale.cancelText), /*#__PURE__*/_react_17_0_2_react.createElement(ActionButton/* default */.Z, {
- buttonProps: Object.assign(Object.assign({
- size: 'small'
- }, (0,button_button/* convertLegacyProps */.n)(okType)), okButtonProps),
- actionFn: onConfirm,
- close: close,
- prefixCls: getPrefixCls('btn'),
- quitOnNullishReturnValue: true,
- emitEvent: true
- }, okText !== null && okText !== void 0 ? okText : contextLocale === null || contextLocale === void 0 ? void 0 : contextLocale.okText)));
-};
-const PurePanel_PurePanel = props => {
- const {
- prefixCls: customizePrefixCls,
- placement,
- className,
- style
- } = props,
- restProps = __rest(props, ["prefixCls", "placement", "className", "style"]);
- const {
- getPrefixCls
- } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
- const prefixCls = getPrefixCls('popconfirm', customizePrefixCls);
- const [wrapSSR] = popconfirm_style(prefixCls);
- return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(PurePanel/* default */.ZP, {
- placement: placement,
- className: _classnames_2_5_1_classnames_default()(prefixCls, className),
- style: style,
- content: /*#__PURE__*/_react_17_0_2_react.createElement(Overlay, Object.assign({
- prefixCls: prefixCls
- }, restProps))
- }));
-};
-/* harmony default export */ var popconfirm_PurePanel = (PurePanel_PurePanel);
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/popconfirm/index.js
-"use client";
-
-var popconfirm_rest = undefined && undefined.__rest || function (s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
- }
- return t;
-};
-
-
-
-
-
-
-
-
-
-
-
-const Popconfirm = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
- const {
- prefixCls: customizePrefixCls,
- placement = 'top',
- trigger = 'click',
- okType = 'primary',
- icon = /*#__PURE__*/_react_17_0_2_react.createElement(ExclamationCircleFilled/* default */.Z, null),
- children,
- overlayClassName,
- onOpenChange,
- onVisibleChange
- } = props,
- restProps = popconfirm_rest(props, ["prefixCls", "placement", "trigger", "okType", "icon", "children", "overlayClassName", "onOpenChange", "onVisibleChange"]);
- const {
- getPrefixCls
- } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
- const [open, setOpen] = (0,useMergedState/* default */.Z)(false, {
- value: props.open,
- defaultValue: props.defaultOpen
- });
- // const isDestroyed = useDestroyed();
- const settingOpen = (value, e) => {
- setOpen(value, true);
- onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(value);
- onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(value, e);
- };
- const close = e => {
- settingOpen(false, e);
- };
- const onConfirm = e => {
- var _a;
- return (_a = props.onConfirm) === null || _a === void 0 ? void 0 : _a.call(undefined, e);
- };
- const onCancel = e => {
- var _a;
- settingOpen(false, e);
- (_a = props.onCancel) === null || _a === void 0 ? void 0 : _a.call(undefined, e);
- };
- const onKeyDown = e => {
- if (e.keyCode === KeyCode/* default */.Z.ESC && open) {
- settingOpen(false, e);
- }
- };
- const onInternalOpenChange = value => {
- const {
- disabled = false
- } = props;
- if (disabled) {
- return;
- }
- settingOpen(value);
- };
- const prefixCls = getPrefixCls('popconfirm', customizePrefixCls);
- const overlayClassNames = _classnames_2_5_1_classnames_default()(prefixCls, overlayClassName);
- const [wrapSSR] = popconfirm_style(prefixCls);
- return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(popover/* default */.Z, Object.assign({}, (0,omit/* default */.Z)(restProps, ['title']), {
- trigger: trigger,
- placement: placement,
- onOpenChange: onInternalOpenChange,
- open: open,
- ref: ref,
- overlayClassName: overlayClassNames,
- content: /*#__PURE__*/_react_17_0_2_react.createElement(Overlay, Object.assign({
- okType: okType,
- icon: icon
- }, props, {
- prefixCls: prefixCls,
- close: close,
- onConfirm: onConfirm,
- onCancel: onCancel
- })),
- "data-popover-inject": true
- }), (0,reactNode/* cloneElement */.Tm)(children, {
- onKeyDown: e => {
- var _a, _b;
- if ( /*#__PURE__*/_react_17_0_2_react.isValidElement(children)) {
- (_b = children === null || children === void 0 ? void 0 : (_a = children.props).onKeyDown) === null || _b === void 0 ? void 0 : _b.call(_a, e);
- }
- onKeyDown(e);
- }
- })));
-});
-// We don't care debug panel
-/* istanbul ignore next */
-Popconfirm._InternalPanelDoNotUseOrYouWillBeFired = popconfirm_PurePanel;
-if (false) {}
-/* harmony default export */ var popconfirm = (Popconfirm);
-
-/***/ }),
-
-/***/ 57809:
-/*!**********************************************************!*\
- !*** ./node_modules/_antd@5.9.0@antd/es/select/index.js ***!
- \**********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
-/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var rc_select__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rc-select */ 77861);
-/* harmony import */ var rc_util_es_omit__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! rc-util/es/omit */ 99468);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var _util_PurePanel__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../_util/PurePanel */ 53487);
-/* harmony import */ var _util_motion__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../_util/motion */ 62892);
-/* harmony import */ var _util_statusUtils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../_util/statusUtils */ 19080);
-/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../config-provider */ 36355);
-/* harmony import */ var _config_provider_DisabledContext__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../config-provider/DisabledContext */ 1684);
-/* harmony import */ var _config_provider_defaultRenderEmpty__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../config-provider/defaultRenderEmpty */ 93891);
-/* harmony import */ var _config_provider_hooks_useSize__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../config-provider/hooks/useSize */ 19716);
-/* harmony import */ var _form_context__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../form/context */ 32441);
-/* harmony import */ var _space_Compact__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../space/Compact */ 33234);
-/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./style */ 14154);
-/* harmony import */ var _useBuiltinPlacements__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./useBuiltinPlacements */ 58582);
-/* harmony import */ var _useShowArrow__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./useShowArrow */ 84443);
-/* harmony import */ var _utils_iconUtil__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./utils/iconUtil */ 66339);
-"use client";
-
-var __rest = undefined && undefined.__rest || function (s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
- }
- return t;
-};
-// TODO: 4.0 - codemod should help to change `filterOption` to support node props.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-const SECRET_COMBOBOX_MODE_DO_NOT_USE = 'SECRET_COMBOBOX_MODE_DO_NOT_USE';
-const InternalSelect = (_a, ref) => {
- var _b;
- var {
- prefixCls: customizePrefixCls,
- bordered = true,
- className,
- rootClassName,
- getPopupContainer,
- popupClassName,
- dropdownClassName,
- listHeight = 256,
- placement,
- listItemHeight = 24,
- size: customizeSize,
- disabled: customDisabled,
- notFoundContent,
- status: customStatus,
- builtinPlacements,
- dropdownMatchSelectWidth,
- popupMatchSelectWidth,
- direction: propDirection,
- style,
- allowClear
- } = _a,
- props = __rest(_a, ["prefixCls", "bordered", "className", "rootClassName", "getPopupContainer", "popupClassName", "dropdownClassName", "listHeight", "placement", "listItemHeight", "size", "disabled", "notFoundContent", "status", "builtinPlacements", "dropdownMatchSelectWidth", "popupMatchSelectWidth", "direction", "style", "allowClear"]);
- const {
- getPopupContainer: getContextPopupContainer,
- getPrefixCls,
- renderEmpty,
- direction: contextDirection,
- virtual,
- popupMatchSelectWidth: contextPopupMatchSelectWidth,
- popupOverflow,
- select
- } = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_3__/* .ConfigContext */ .E_);
- const prefixCls = getPrefixCls('select', customizePrefixCls);
- const rootPrefixCls = getPrefixCls();
- const direction = propDirection !== null && propDirection !== void 0 ? propDirection : contextDirection;
- const {
- compactSize,
- compactItemClassnames
- } = (0,_space_Compact__WEBPACK_IMPORTED_MODULE_4__/* .useCompactItemContext */ .ri)(prefixCls, direction);
- const [wrapSSR, hashId] = (0,_style__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)(prefixCls);
- const mode = react__WEBPACK_IMPORTED_MODULE_2__.useMemo(() => {
- const {
- mode: m
- } = props;
- if (m === 'combobox') {
- return undefined;
- }
- if (m === SECRET_COMBOBOX_MODE_DO_NOT_USE) {
- return 'combobox';
- }
- return m;
- }, [props.mode]);
- const isMultiple = mode === 'multiple' || mode === 'tags';
- const showSuffixIcon = (0,_useShowArrow__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z)(props.suffixIcon, props.showArrow);
- const mergedPopupMatchSelectWidth = (_b = popupMatchSelectWidth !== null && popupMatchSelectWidth !== void 0 ? popupMatchSelectWidth : dropdownMatchSelectWidth) !== null && _b !== void 0 ? _b : contextPopupMatchSelectWidth;
- // ===================== Form Status =====================
- const {
- status: contextStatus,
- hasFeedback,
- isFormItemInput,
- feedbackIcon
- } = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_form_context__WEBPACK_IMPORTED_MODULE_7__/* .FormItemInputContext */ .aM);
- const mergedStatus = (0,_util_statusUtils__WEBPACK_IMPORTED_MODULE_8__/* .getMergedStatus */ .F)(contextStatus, customStatus);
- // ===================== Empty =====================
- let mergedNotFound;
- if (notFoundContent !== undefined) {
- mergedNotFound = notFoundContent;
- } else if (mode === 'combobox') {
- mergedNotFound = null;
- } else {
- mergedNotFound = (renderEmpty === null || renderEmpty === void 0 ? void 0 : renderEmpty('Select')) || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(_config_provider_defaultRenderEmpty__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {
- componentName: "Select"
- });
- }
- // ===================== Icons =====================
- const {
- suffixIcon,
- itemIcon,
- removeIcon,
- clearIcon
- } = (0,_utils_iconUtil__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z)(Object.assign(Object.assign({}, props), {
- multiple: isMultiple,
- hasFeedback,
- feedbackIcon,
- showSuffixIcon,
- prefixCls,
- showArrow: props.showArrow,
- componentName: 'Select'
- }));
- const mergedAllowClear = allowClear === true ? {
- clearIcon
- } : allowClear;
- const selectProps = (0,rc_util_es_omit__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z)(props, ['suffixIcon', 'itemIcon']);
- const rcSelectRtlDropdownClassName = classnames__WEBPACK_IMPORTED_MODULE_0___default()(popupClassName || dropdownClassName, {
- [`${prefixCls}-dropdown-${direction}`]: direction === 'rtl'
- }, rootClassName, hashId);
- const mergedSize = (0,_config_provider_hooks_useSize__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z)(ctx => {
- var _a;
- return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : compactSize) !== null && _a !== void 0 ? _a : ctx;
- });
- // ===================== Disabled =====================
- const disabled = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_config_provider_DisabledContext__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z);
- const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;
- const mergedClassName = classnames__WEBPACK_IMPORTED_MODULE_0___default()({
- [`${prefixCls}-lg`]: mergedSize === 'large',
- [`${prefixCls}-sm`]: mergedSize === 'small',
- [`${prefixCls}-rtl`]: direction === 'rtl',
- [`${prefixCls}-borderless`]: !bordered,
- [`${prefixCls}-in-form-item`]: isFormItemInput
- }, (0,_util_statusUtils__WEBPACK_IMPORTED_MODULE_8__/* .getStatusClassNames */ .Z)(prefixCls, mergedStatus, hasFeedback), compactItemClassnames, select === null || select === void 0 ? void 0 : select.className, className, rootClassName, hashId);
- // ===================== Placement =====================
- const memoPlacement = react__WEBPACK_IMPORTED_MODULE_2__.useMemo(() => {
- if (placement !== undefined) {
- return placement;
- }
- return direction === 'rtl' ? 'bottomRight' : 'bottomLeft';
- }, [placement, direction]);
- const mergedBuiltinPlacements = (0,_useBuiltinPlacements__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z)(builtinPlacements, popupOverflow);
- // ====================== Warning ======================
- if (false) {}
- // ====================== Render =======================
- return wrapSSR( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(rc_select__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .ZP, Object.assign({
- ref: ref,
- virtual: virtual,
- showSearch: select === null || select === void 0 ? void 0 : select.showSearch
- }, selectProps, {
- style: Object.assign(Object.assign({}, select === null || select === void 0 ? void 0 : select.style), style),
- dropdownMatchSelectWidth: mergedPopupMatchSelectWidth,
- builtinPlacements: mergedBuiltinPlacements,
- transitionName: (0,_util_motion__WEBPACK_IMPORTED_MODULE_15__/* .getTransitionName */ .m)(rootPrefixCls, 'slide-up', props.transitionName),
- listHeight: listHeight,
- listItemHeight: listItemHeight,
- mode: mode,
- prefixCls: prefixCls,
- placement: memoPlacement,
- direction: direction,
- suffixIcon: suffixIcon,
- menuItemSelectedIcon: itemIcon,
- removeIcon: removeIcon,
- allowClear: mergedAllowClear,
- notFoundContent: mergedNotFound,
- className: mergedClassName,
- getPopupContainer: getPopupContainer || getContextPopupContainer,
- dropdownClassName: rcSelectRtlDropdownClassName,
- disabled: mergedDisabled
- })));
-};
-if (false) {}
-const Select = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.forwardRef(InternalSelect);
-// We don't care debug panel
-/* istanbul ignore next */
-const PurePanel = (0,_util_PurePanel__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z)(Select);
-Select.SECRET_COMBOBOX_MODE_DO_NOT_USE = SECRET_COMBOBOX_MODE_DO_NOT_USE;
-Select.Option = rc_select__WEBPACK_IMPORTED_MODULE_1__/* .Option */ .Wx;
-Select.OptGroup = rc_select__WEBPACK_IMPORTED_MODULE_1__/* .OptGroup */ .Xo;
-Select._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;
-if (false) {}
-/* harmony default export */ __webpack_exports__["default"] = (Select);
-
-/***/ }),
-
-/***/ 8378:
-/*!*******************************************************************!*\
- !*** ./node_modules/_antd@5.9.0@antd/es/style/motion/collapse.js ***!
- \*******************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__) {
-
-const genCollapseMotion = token => ({
- [token.componentCls]: {
- // For common/openAnimation
- [`${token.antCls}-motion-collapse-legacy`]: {
- overflow: 'hidden',
- '&-active': {
- transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},
- opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`
- }
- },
- [`${token.antCls}-motion-collapse`]: {
- overflow: 'hidden',
- transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},
- opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`
- }
- }
-});
-/* harmony default export */ __webpack_exports__.Z = (genCollapseMotion);
-
-/***/ })
-
-}]);
\ No newline at end of file
diff --git a/11062.async.js b/33473.async.js
similarity index 98%
rename from 11062.async.js
rename to 33473.async.js
index e141e81d26..3dff82f187 100644
--- a/11062.async.js
+++ b/33473.async.js
@@ -1,6 +1,6 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[11062,72032],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[33473,72032],{
-/***/ 47104:
+/***/ 30063:
/*!*************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseCircleOutlined.js + 1 modules ***!
\*************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_CloseCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/CloseCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/CloseCircleOutlined.js
// This icon file is generated automatically.
var CloseCircleOutlined = { "icon": { "tag": "svg", "attrs": { "fill-rule": "evenodd", "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm0 76c-205.4 0-372 166.6-372 372s166.6 372 372 372 372-166.6 372-372-166.6-372-372-372zm128.01 198.83c.03 0 .05.01.09.06l45.02 45.01a.2.2 0 01.05.09.12.12 0 010 .07c0 .02-.01.04-.05.08L557.25 512l127.87 127.86a.27.27 0 01.05.06v.02a.12.12 0 010 .07c0 .03-.01.05-.05.09l-45.02 45.02a.2.2 0 01-.09.05.12.12 0 01-.07 0c-.02 0-.04-.01-.08-.05L512 557.25 384.14 685.12c-.04.04-.06.05-.08.05a.12.12 0 01-.07 0c-.03 0-.05-.01-.09-.05l-45.02-45.02a.2.2 0 01-.05-.09.12.12 0 010-.07c0-.02.01-.04.06-.08L466.75 512 338.88 384.14a.27.27 0 01-.05-.06l-.01-.02a.12.12 0 010-.07c0-.03.01-.05.05-.09l45.02-45.02a.2.2 0 01.09-.05.12.12 0 01.07 0c.02 0 .04.01.08.06L512 466.75l127.86-127.86c.04-.05.06-.06.08-.06a.12.12 0 01.07 0z" } }] }, "name": "close-circle", "theme": "outlined" };
/* harmony default export */ var asn_CloseCircleOutlined = (CloseCircleOutlined);
@@ -80,7 +80,7 @@ var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/hooks/useSize.js
var useSize = __webpack_require__(19716);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/skeleton/index.js + 12 modules
-var skeleton = __webpack_require__(59981);
+var skeleton = __webpack_require__(60371);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tabs/index.js + 24 modules
var es_tabs = __webpack_require__(99313);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/card/Grid.js
@@ -674,7 +674,7 @@ if (false) {}
/***/ }),
-/***/ 19479:
+/***/ 91052:
/*!********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/rate/index.js + 8 modules ***!
\********************************************************************/
@@ -687,11 +687,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ rate; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/StarFilled.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/StarFilled.js
// This icon file is generated automatically.
var StarFilled = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M908.1 353.1l-253.9-36.9L540.7 86.1c-3.1-6.3-8.2-11.4-14.5-14.5-15.8-7.8-35-1.3-42.9 14.5L369.8 316.2l-253.9 36.9c-7 1-13.4 4.3-18.3 9.3a32.05 32.05 0 00.6 45.3l183.7 179.1-43.4 252.9a31.95 31.95 0 0046.4 33.7L512 754l227.1 119.4c6.2 3.3 13.4 4.4 20.3 3.2 17.4-3 29.1-19.5 26.1-36.9l-43.4-252.9 183.7-179.1c5-4.9 8.3-11.3 9.3-18.3 2.7-17.5-9.5-33.7-27-36.3z" } }] }, "name": "star", "theme": "filled" };
/* harmony default export */ var asn_StarFilled = (StarFilled);
@@ -717,12 +717,12 @@ if (false) {}
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
var useMergedState = __webpack_require__(84381);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
@@ -1280,7 +1280,7 @@ __webpack_require__.d(__webpack_exports__, {
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseOutlined.js + 1 modules
-var CloseOutlined = __webpack_require__(99174);
+var CloseOutlined = __webpack_require__(30449);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
diff --git a/10375.async.js b/33807.async.js
similarity index 98%
rename from 10375.async.js
rename to 33807.async.js
index 6a0bdf21ed..75c0cf918c 100644
--- a/10375.async.js
+++ b/33807.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[10375,64802,34668],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[33807,94766,88766],{
-/***/ 15997:
+/***/ 41435:
/*!*****************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules ***!
\*****************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_EyeOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeOutlined.js
// This icon file is generated automatically.
var EyeOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z" } }] }, "name": "eye", "theme": "outlined" };
/* harmony default export */ var asn_EyeOutlined = (EyeOutlined);
@@ -81,7 +81,7 @@ var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_c
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EllipsisOutlined.js + 1 modules
-var EllipsisOutlined = __webpack_require__(93319);
+var EllipsisOutlined = __webpack_require__(12440);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
@@ -220,7 +220,7 @@ Dropdown.Button = dropdown_button;
/***/ }),
-/***/ 1056:
+/***/ 11694:
/*!*********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules ***!
\*********************************************************************/
@@ -290,9 +290,9 @@ const Group = props => {
/* harmony default export */ var input_Group = (Group);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/Input.js + 1 modules
var Input = __webpack_require__(9432);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
// This icon file is generated automatically.
var EyeInvisibleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z" } }, { "tag": "path", "attrs": { "d": "M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z" } }] }, "name": "eye-invisible", "theme": "outlined" };
/* harmony default export */ var asn_EyeInvisibleOutlined = (EyeInvisibleOutlined);
@@ -316,7 +316,7 @@ var EyeInvisibleOutlined_EyeInvisibleOutlined = function EyeInvisibleOutlined(pr
if (false) {}
/* harmony default export */ var icons_EyeInvisibleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(EyeInvisibleOutlined_EyeInvisibleOutlined));
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules
-var EyeOutlined = __webpack_require__(15997);
+var EyeOutlined = __webpack_require__(41435);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
@@ -438,7 +438,7 @@ const Password = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
if (false) {}
/* harmony default export */ var input_Password = (Password);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SearchOutlined.js + 1 modules
-var SearchOutlined = __webpack_require__(46820);
+var SearchOutlined = __webpack_require__(23097);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
@@ -806,7 +806,7 @@ CompoundedSpace.Compact = Compact/* default */.ZP;
/* harmony export */ Fm: function() { return /* binding */ initMoveMotion; }
/* harmony export */ });
/* unused harmony exports moveDownIn, moveDownOut, moveLeftIn, moveLeftOut, moveRightIn, moveRightOut, moveUpIn, moveUpOut */
-/* harmony import */ var _ant_design_cssinjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @ant-design/cssinjs */ 3775);
+/* harmony import */ var _ant_design_cssinjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @ant-design/cssinjs */ 78600);
/* harmony import */ var _motion__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./motion */ 95406);
diff --git a/21560.async.js b/35372.async.js
similarity index 53%
rename from 21560.async.js
rename to 35372.async.js
index fdedee990d..00cd751c27 100644
--- a/21560.async.js
+++ b/35372.async.js
@@ -1,432 +1,462 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[21560],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[35372],{
-/***/ 78673:
-/*!**********************************************************************!*\
- !*** ./node_modules/_antd@5.9.0@antd/es/switch/index.js + 2 modules ***!
- \**********************************************************************/
+/***/ 60124:
+/*!******************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LeftOutlined.js + 1 modules ***!
+ \******************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ es_switch; }
+ Z: function() { return /* binding */ icons_LeftOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LoadingOutlined.js + 1 modules
-var LoadingOutlined = __webpack_require__(38521);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/LeftOutlined.js
+// This icon file is generated automatically.
+var LeftOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z" } }] }, "name": "left", "theme": "outlined" };
+/* harmony default export */ var asn_LeftOutlined = (LeftOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LeftOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var LeftOutlined_LeftOutlined = function LeftOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_LeftOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_LeftOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(LeftOutlined_LeftOutlined));
+
+/***/ }),
+
+/***/ 78864:
+/*!*******************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/RightOutlined.js + 1 modules ***!
+ \*******************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_RightOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/RightOutlined.js
+// This icon file is generated automatically.
+var RightOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z" } }] }, "name": "right", "theme": "outlined" };
+/* harmony default export */ var asn_RightOutlined = (RightOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/RightOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var RightOutlined_RightOutlined = function RightOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_RightOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_RightOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(RightOutlined_RightOutlined));
+
+/***/ }),
+
+/***/ 56762:
+/*!************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/_util/hooks/useForceUpdate.js ***!
+ \************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ Z: function() { return /* binding */ useForceUpdate; }
+/* harmony export */ });
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
+
+function useForceUpdate() {
+ const [, forceUpdate] = react__WEBPACK_IMPORTED_MODULE_0__.useReducer(x => x + 1, 0);
+ return forceUpdate;
+}
+
+/***/ }),
+
+/***/ 14478:
+/*!**************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popconfirm/index.js + 2 modules ***!
+ \**************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ popconfirm; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleFilled.js + 1 modules
+var ExclamationCircleFilled = __webpack_require__(84479);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
-var useMergedState = __webpack_require__(84381);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
var KeyCode = __webpack_require__(84821);
-;// CONCATENATED MODULE: ./node_modules/_rc-switch@4.1.0@rc-switch/es/index.js
-
-
-
-
-var _excluded = ["prefixCls", "className", "checked", "defaultChecked", "disabled", "loadingIcon", "checkedChildren", "unCheckedChildren", "onClick", "onChange", "onKeyDown"];
-
-
-
-
-var Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (_ref, ref) {
- var _classNames;
- var _ref$prefixCls = _ref.prefixCls,
- prefixCls = _ref$prefixCls === void 0 ? 'rc-switch' : _ref$prefixCls,
- className = _ref.className,
- checked = _ref.checked,
- defaultChecked = _ref.defaultChecked,
- disabled = _ref.disabled,
- loadingIcon = _ref.loadingIcon,
- checkedChildren = _ref.checkedChildren,
- unCheckedChildren = _ref.unCheckedChildren,
- onClick = _ref.onClick,
- onChange = _ref.onChange,
- onKeyDown = _ref.onKeyDown,
- restProps = (0,objectWithoutProperties/* default */.Z)(_ref, _excluded);
- var _useMergedState = (0,useMergedState/* default */.Z)(false, {
- value: checked,
- defaultValue: defaultChecked
- }),
- _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
- innerChecked = _useMergedState2[0],
- setInnerChecked = _useMergedState2[1];
- function triggerChange(newChecked, event) {
- var mergedChecked = innerChecked;
- if (!disabled) {
- mergedChecked = newChecked;
- setInnerChecked(mergedChecked);
- onChange === null || onChange === void 0 ? void 0 : onChange(mergedChecked, event);
- }
- return mergedChecked;
- }
- function onInternalKeyDown(e) {
- if (e.which === KeyCode/* default */.Z.LEFT) {
- triggerChange(false, e);
- } else if (e.which === KeyCode/* default */.Z.RIGHT) {
- triggerChange(true, e);
- }
- onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);
- }
- function onInternalClick(e) {
- var ret = triggerChange(!innerChecked, e);
- // [Legacy] trigger onClick with value
- onClick === null || onClick === void 0 ? void 0 : onClick(ret, e);
- }
- var switchClassName = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-checked"), innerChecked), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), _classNames));
- return /*#__PURE__*/_react_17_0_2_react.createElement("button", (0,esm_extends/* default */.Z)({}, restProps, {
- type: "button",
- role: "switch",
- "aria-checked": innerChecked,
- disabled: disabled,
- className: switchClassName,
- ref: ref,
- onKeyDown: onInternalKeyDown,
- onClick: onInternalClick
- }), loadingIcon, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner")
- }, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner-checked")
- }, checkedChildren), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner-unchecked")
- }, unCheckedChildren)));
-});
-Switch.displayName = 'Switch';
-/* harmony default export */ var es = (Switch);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/wave/index.js + 4 modules
-var wave = __webpack_require__(14088);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
+var useMergedState = __webpack_require__(84381);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
+var omit = __webpack_require__(99468);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/DisabledContext.js
-var DisabledContext = __webpack_require__(1684);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/hooks/useSize.js
-var useSize = __webpack_require__(19716);
-// EXTERNAL MODULE: ./node_modules/_@ctrl_tinycolor@3.6.1@@ctrl/tinycolor/dist/module/index.js
-var dist_module = __webpack_require__(64993);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
-var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/popover/index.js
+var popover = __webpack_require__(60324);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/ActionButton.js
+var ActionButton = __webpack_require__(92806);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/getRenderPropValue.js
+var getRenderPropValue = __webpack_require__(77578);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
+var es_button = __webpack_require__(3113);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/button.js + 8 modules
+var button_button = __webpack_require__(67797);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/locale/useLocale.js
+var useLocale = __webpack_require__(9763);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/locale/en_US.js + 1 modules
+var en_US = __webpack_require__(31724);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/popover/PurePanel.js
+var PurePanel = __webpack_require__(39722);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
var genComponentStyleHook = __webpack_require__(83116);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
-var statistic = __webpack_require__(37613);
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/style/index.js
-
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/popconfirm/style/index.js
+"use client";
-const genSwitchSmallStyle = token => {
+// =============================== Base ===============================
+const genBaseStyle = token => {
const {
componentCls,
- trackHeightSM,
- trackPadding,
- trackMinWidthSM,
- innerMinMarginSM,
- innerMaxMarginSM,
- handleSizeSM
+ iconCls,
+ antCls,
+ zIndexPopup,
+ colorText,
+ colorWarning,
+ marginXXS,
+ marginXS,
+ fontSize,
+ fontWeightStrong,
+ colorTextHeading
} = token;
- const switchInnerCls = `${componentCls}-inner`;
return {
[componentCls]: {
- [`&${componentCls}-small`]: {
- minWidth: trackMinWidthSM,
- height: trackHeightSM,
- lineHeight: `${trackHeightSM}px`,
- [`${componentCls}-inner`]: {
- paddingInlineStart: innerMaxMarginSM,
- paddingInlineEnd: innerMinMarginSM,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`,
- marginInlineEnd: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`
- },
- [`${switchInnerCls}-unchecked`]: {
- marginTop: -trackHeightSM,
- marginInlineStart: 0,
- marginInlineEnd: 0
- }
- },
- [`${componentCls}-handle`]: {
- width: handleSizeSM,
- height: handleSizeSM
- },
- [`${componentCls}-loading-icon`]: {
- top: (handleSizeSM - token.switchLoadingIconSize) / 2,
- fontSize: token.switchLoadingIconSize
+ zIndex: zIndexPopup,
+ [`&${antCls}-popover`]: {
+ fontSize
+ },
+ [`${componentCls}-message`]: {
+ marginBottom: marginXS,
+ display: 'flex',
+ flexWrap: 'nowrap',
+ alignItems: 'start',
+ [`> ${componentCls}-message-icon ${iconCls}`]: {
+ color: colorWarning,
+ fontSize,
+ lineHeight: 1,
+ marginInlineEnd: marginXS
},
- [`&${componentCls}-checked`]: {
- [`${componentCls}-inner`]: {
- paddingInlineStart: innerMinMarginSM,
- paddingInlineEnd: innerMaxMarginSM,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: 0,
- marginInlineEnd: 0
- },
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`,
- marginInlineEnd: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`
- }
- },
- [`${componentCls}-handle`]: {
- insetInlineStart: `calc(100% - ${handleSizeSM + trackPadding}px)`
+ [`${componentCls}-title`]: {
+ fontWeight: fontWeightStrong,
+ color: colorTextHeading,
+ '&:only-child': {
+ fontWeight: 'normal'
}
},
- [`&:not(${componentCls}-disabled):active`]: {
- [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: token.marginXXS / 2,
- marginInlineEnd: -token.marginXXS / 2
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: -token.marginXXS / 2,
- marginInlineEnd: token.marginXXS / 2
- }
- }
+ [`${componentCls}-description`]: {
+ marginTop: marginXXS,
+ color: colorText
}
- }
- }
- };
-};
-const genSwitchLoadingStyle = token => {
- const {
- componentCls,
- handleSize
- } = token;
- return {
- [componentCls]: {
- [`${componentCls}-loading-icon${token.iconCls}`]: {
- position: 'relative',
- top: (handleSize - token.fontSize) / 2,
- color: token.switchLoadingIconColor,
- verticalAlign: 'top'
},
- [`&${componentCls}-checked ${componentCls}-loading-icon`]: {
- color: token.switchColor
+ [`${componentCls}-buttons`]: {
+ textAlign: 'end',
+ whiteSpace: 'nowrap',
+ button: {
+ marginInlineStart: marginXS
+ }
}
}
};
};
-const genSwitchHandleStyle = token => {
+// ============================== Export ==============================
+/* harmony default export */ var popconfirm_style = ((0,genComponentStyleHook/* default */.Z)('Popconfirm', token => genBaseStyle(token), token => {
const {
- componentCls,
- motion,
- trackPadding,
- handleBg,
- handleShadow,
- handleSize
+ zIndexPopupBase
} = token;
- const switchHandleCls = `${componentCls}-handle`;
return {
- [componentCls]: {
- [switchHandleCls]: {
- position: 'absolute',
- top: trackPadding,
- insetInlineStart: trackPadding,
- width: handleSize,
- height: handleSize,
- transition: `all ${token.switchDuration} ease-in-out`,
- '&::before': {
- position: 'absolute',
- top: 0,
- insetInlineEnd: 0,
- bottom: 0,
- insetInlineStart: 0,
- backgroundColor: handleBg,
- borderRadius: handleSize / 2,
- boxShadow: handleShadow,
- transition: `all ${token.switchDuration} ease-in-out`,
- content: '""'
- }
- },
- [`&${componentCls}-checked ${switchHandleCls}`]: {
- insetInlineStart: `calc(100% - ${handleSize + trackPadding}px)`
- },
- [`&:not(${componentCls}-disabled):active`]: motion ? {
- [`${switchHandleCls}::before`]: {
- insetInlineEnd: token.switchHandleActiveInset,
- insetInlineStart: 0
- },
- [`&${componentCls}-checked ${switchHandleCls}::before`]: {
- insetInlineEnd: 0,
- insetInlineStart: token.switchHandleActiveInset
- }
- } : /* istanbul ignore next */
- {}
- }
+ zIndexPopup: zIndexPopupBase + 60
};
+}, {
+ resetStyle: false
+}));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/popconfirm/PurePanel.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
};
-const genSwitchInnerStyle = token => {
+
+
+
+
+
+
+
+
+
+
+
+
+const Overlay = props => {
const {
- componentCls,
- trackHeight,
- trackPadding,
- innerMinMargin,
- innerMaxMargin,
- handleSize
- } = token;
- const switchInnerCls = `${componentCls}-inner`;
- return {
- [componentCls]: {
- [switchInnerCls]: {
- display: 'block',
- overflow: 'hidden',
- borderRadius: 100,
- height: '100%',
- paddingInlineStart: innerMaxMargin,
- paddingInlineEnd: innerMinMargin,
- transition: `padding-inline-start ${token.switchDuration} ease-in-out, padding-inline-end ${token.switchDuration} ease-in-out`,
- [`${switchInnerCls}-checked, ${switchInnerCls}-unchecked`]: {
- display: 'block',
- color: token.colorTextLightSolid,
- fontSize: token.fontSizeSM,
- transition: `margin-inline-start ${token.switchDuration} ease-in-out, margin-inline-end ${token.switchDuration} ease-in-out`,
- pointerEvents: 'none'
- },
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`,
- marginInlineEnd: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`
- },
- [`${switchInnerCls}-unchecked`]: {
- marginTop: -trackHeight,
- marginInlineStart: 0,
- marginInlineEnd: 0
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- paddingInlineStart: innerMinMargin,
- paddingInlineEnd: innerMaxMargin,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: 0,
- marginInlineEnd: 0
- },
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`,
- marginInlineEnd: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`
- }
- },
- [`&:not(${componentCls}-disabled):active`]: {
- [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: trackPadding * 2,
- marginInlineEnd: -trackPadding * 2
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: -trackPadding * 2,
- marginInlineEnd: trackPadding * 2
- }
- }
- }
- }
- };
+ prefixCls,
+ okButtonProps,
+ cancelButtonProps,
+ title,
+ description,
+ cancelText,
+ okText,
+ okType = 'primary',
+ icon = /*#__PURE__*/_react_17_0_2_react.createElement(ExclamationCircleFilled/* default */.Z, null),
+ showCancel = true,
+ close,
+ onConfirm,
+ onCancel,
+ onPopupClick
+ } = props;
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const [contextLocale] = (0,useLocale/* default */.Z)('Popconfirm', en_US/* default */.Z.Popconfirm);
+ const theTitle = (0,getRenderPropValue/* getRenderPropValue */.Z)(title);
+ const theDescription = (0,getRenderPropValue/* getRenderPropValue */.Z)(description);
+ return /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-inner-content`,
+ onClick: onPopupClick
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-message`
+ }, icon && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-message-icon`
+ }, icon), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-message-text`
+ }, theTitle && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: _classnames_2_5_1_classnames_default()(`${prefixCls}-title`)
+ }, theTitle), theDescription && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-description`
+ }, theDescription))), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-buttons`
+ }, showCancel && /*#__PURE__*/_react_17_0_2_react.createElement(es_button/* default */.ZP, Object.assign({
+ onClick: onCancel,
+ size: "small"
+ }, cancelButtonProps), cancelText !== null && cancelText !== void 0 ? cancelText : contextLocale === null || contextLocale === void 0 ? void 0 : contextLocale.cancelText), /*#__PURE__*/_react_17_0_2_react.createElement(ActionButton/* default */.Z, {
+ buttonProps: Object.assign(Object.assign({
+ size: 'small'
+ }, (0,button_button/* convertLegacyProps */.n)(okType)), okButtonProps),
+ actionFn: onConfirm,
+ close: close,
+ prefixCls: getPrefixCls('btn'),
+ quitOnNullishReturnValue: true,
+ emitEvent: true
+ }, okText !== null && okText !== void 0 ? okText : contextLocale === null || contextLocale === void 0 ? void 0 : contextLocale.okText)));
};
-const genSwitchStyle = token => {
+const PurePanel_PurePanel = props => {
const {
- componentCls,
- trackHeight,
- trackMinWidth
- } = token;
- return {
- [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
- position: 'relative',
- display: 'inline-block',
- boxSizing: 'border-box',
- minWidth: trackMinWidth,
- height: trackHeight,
- lineHeight: `${trackHeight}px`,
- verticalAlign: 'middle',
- background: token.colorTextQuaternary,
- border: '0',
- borderRadius: 100,
- cursor: 'pointer',
- transition: `all ${token.motionDurationMid}`,
- userSelect: 'none',
- [`&:hover:not(${componentCls}-disabled)`]: {
- background: token.colorTextTertiary
- }
- }), (0,style/* genFocusStyle */.Qy)(token)), {
- [`&${componentCls}-checked`]: {
- background: token.switchColor,
- [`&:hover:not(${componentCls}-disabled)`]: {
- background: token.colorPrimaryHover
- }
- },
- [`&${componentCls}-loading, &${componentCls}-disabled`]: {
- cursor: 'not-allowed',
- opacity: token.switchDisabledOpacity,
- '*': {
- boxShadow: 'none',
- cursor: 'not-allowed'
- }
- },
- // rtl style
- [`&${componentCls}-rtl`]: {
- direction: 'rtl'
- }
- })
- };
+ prefixCls: customizePrefixCls,
+ placement,
+ className,
+ style
+ } = props,
+ restProps = __rest(props, ["prefixCls", "placement", "className", "style"]);
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('popconfirm', customizePrefixCls);
+ const [wrapSSR] = popconfirm_style(prefixCls);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(PurePanel/* default */.ZP, {
+ placement: placement,
+ className: _classnames_2_5_1_classnames_default()(prefixCls, className),
+ style: style,
+ content: /*#__PURE__*/_react_17_0_2_react.createElement(Overlay, Object.assign({
+ prefixCls: prefixCls
+ }, restProps))
+ }));
};
-// ============================== Export ==============================
-/* harmony default export */ var switch_style = ((0,genComponentStyleHook/* default */.Z)('Switch', token => {
- const switchToken = (0,statistic/* merge */.TS)(token, {
- switchDuration: token.motionDurationMid,
- switchColor: token.colorPrimary,
- switchDisabledOpacity: token.opacityLoading,
- switchLoadingIconSize: token.fontSizeIcon * 0.75,
- switchLoadingIconColor: `rgba(0, 0, 0, ${token.opacityLoading})`,
- switchHandleActiveInset: '-30%'
- });
- return [genSwitchStyle(switchToken),
- // inner style
- genSwitchInnerStyle(switchToken),
- // handle style
- genSwitchHandleStyle(switchToken),
- // loading style
- genSwitchLoadingStyle(switchToken),
- // small style
- genSwitchSmallStyle(switchToken)];
-}, token => {
+/* harmony default export */ var popconfirm_PurePanel = (PurePanel_PurePanel);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/popconfirm/index.js
+"use client";
+
+var popconfirm_rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+
+
+
+
+const Popconfirm = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
const {
- fontSize,
- lineHeight,
- controlHeight,
- colorWhite
- } = token;
- const height = fontSize * lineHeight;
- const heightSM = controlHeight / 2;
- const padding = 2; // Fixed value
- const handleSize = height - padding * 2;
- const handleSizeSM = heightSM - padding * 2;
- return {
- trackHeight: height,
- trackHeightSM: heightSM,
- trackMinWidth: handleSize * 2 + padding * 4,
- trackMinWidthSM: handleSizeSM * 2 + padding * 2,
- trackPadding: padding,
- handleBg: colorWhite,
- handleSize,
- handleSizeSM,
- handleShadow: `0 2px 4px 0 ${new dist_module/* TinyColor */.C('#00230b').setAlpha(0.2).toRgbString()}`,
- innerMinMargin: handleSize / 2,
- innerMaxMargin: handleSize + padding + padding * 2,
- innerMinMarginSM: handleSizeSM / 2,
- innerMaxMarginSM: handleSizeSM + padding + padding * 2
+ prefixCls: customizePrefixCls,
+ placement = 'top',
+ trigger = 'click',
+ okType = 'primary',
+ icon = /*#__PURE__*/_react_17_0_2_react.createElement(ExclamationCircleFilled/* default */.Z, null),
+ children,
+ overlayClassName,
+ onOpenChange,
+ onVisibleChange
+ } = props,
+ restProps = popconfirm_rest(props, ["prefixCls", "placement", "trigger", "okType", "icon", "children", "overlayClassName", "onOpenChange", "onVisibleChange"]);
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const [open, setOpen] = (0,useMergedState/* default */.Z)(false, {
+ value: props.open,
+ defaultValue: props.defaultOpen
+ });
+ // const isDestroyed = useDestroyed();
+ const settingOpen = (value, e) => {
+ setOpen(value, true);
+ onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(value);
+ onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(value, e);
};
-}));
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/index.js
+ const close = e => {
+ settingOpen(false, e);
+ };
+ const onConfirm = e => {
+ var _a;
+ return (_a = props.onConfirm) === null || _a === void 0 ? void 0 : _a.call(undefined, e);
+ };
+ const onCancel = e => {
+ var _a;
+ settingOpen(false, e);
+ (_a = props.onCancel) === null || _a === void 0 ? void 0 : _a.call(undefined, e);
+ };
+ const onKeyDown = e => {
+ if (e.keyCode === KeyCode/* default */.Z.ESC && open) {
+ settingOpen(false, e);
+ }
+ };
+ const onInternalOpenChange = value => {
+ const {
+ disabled = false
+ } = props;
+ if (disabled) {
+ return;
+ }
+ settingOpen(value);
+ };
+ const prefixCls = getPrefixCls('popconfirm', customizePrefixCls);
+ const overlayClassNames = _classnames_2_5_1_classnames_default()(prefixCls, overlayClassName);
+ const [wrapSSR] = popconfirm_style(prefixCls);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(popover/* default */.Z, Object.assign({}, (0,omit/* default */.Z)(restProps, ['title']), {
+ trigger: trigger,
+ placement: placement,
+ onOpenChange: onInternalOpenChange,
+ open: open,
+ ref: ref,
+ overlayClassName: overlayClassNames,
+ content: /*#__PURE__*/_react_17_0_2_react.createElement(Overlay, Object.assign({
+ okType: okType,
+ icon: icon
+ }, props, {
+ prefixCls: prefixCls,
+ close: close,
+ onConfirm: onConfirm,
+ onCancel: onCancel
+ })),
+ "data-popover-inject": true
+ }), (0,reactNode/* cloneElement */.Tm)(children, {
+ onKeyDown: e => {
+ var _a, _b;
+ if ( /*#__PURE__*/_react_17_0_2_react.isValidElement(children)) {
+ (_b = children === null || children === void 0 ? void 0 : (_a = children.props).onKeyDown) === null || _b === void 0 ? void 0 : _b.call(_a, e);
+ }
+ onKeyDown(e);
+ }
+ })));
+});
+// We don't care debug panel
+/* istanbul ignore next */
+Popconfirm._InternalPanelDoNotUseOrYouWillBeFired = popconfirm_PurePanel;
+if (false) {}
+/* harmony default export */ var popconfirm = (Popconfirm);
+
+/***/ }),
+
+/***/ 57809:
+/*!**********************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/select/index.js ***!
+ \**********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var rc_select__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rc-select */ 77861);
+/* harmony import */ var rc_util_es_omit__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! rc-util/es/omit */ 99468);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _util_PurePanel__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../_util/PurePanel */ 53487);
+/* harmony import */ var _util_motion__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../_util/motion */ 62892);
+/* harmony import */ var _util_statusUtils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../_util/statusUtils */ 19080);
+/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../config-provider */ 36355);
+/* harmony import */ var _config_provider_DisabledContext__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../config-provider/DisabledContext */ 1684);
+/* harmony import */ var _config_provider_defaultRenderEmpty__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../config-provider/defaultRenderEmpty */ 93891);
+/* harmony import */ var _config_provider_hooks_useSize__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../config-provider/hooks/useSize */ 19716);
+/* harmony import */ var _form_context__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../form/context */ 32441);
+/* harmony import */ var _space_Compact__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../space/Compact */ 33234);
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./style */ 14154);
+/* harmony import */ var _useBuiltinPlacements__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./useBuiltinPlacements */ 58582);
+/* harmony import */ var _useShowArrow__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./useShowArrow */ 84443);
+/* harmony import */ var _utils_iconUtil__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./utils/iconUtil */ 66339);
"use client";
var __rest = undefined && undefined.__rest || function (s, e) {
@@ -437,6 +467,7 @@ var __rest = undefined && undefined.__rest || function (s, e) {
}
return t;
};
+// TODO: 4.0 - codemod should help to change `filterOption` to support node props.
@@ -447,55 +478,507 @@ var __rest = undefined && undefined.__rest || function (s, e) {
-const switch_Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
- const {
+
+
+
+
+
+
+
+
+const SECRET_COMBOBOX_MODE_DO_NOT_USE = 'SECRET_COMBOBOX_MODE_DO_NOT_USE';
+const InternalSelect = (_a, ref) => {
+ var _b;
+ var {
prefixCls: customizePrefixCls,
- size: customizeSize,
- disabled: customDisabled,
- loading,
+ bordered = true,
className,
rootClassName,
- style
- } = props,
- restProps = __rest(props, ["prefixCls", "size", "disabled", "loading", "className", "rootClassName", "style"]);
- false ? 0 : void 0;
+ getPopupContainer,
+ popupClassName,
+ dropdownClassName,
+ listHeight = 256,
+ placement,
+ listItemHeight = 24,
+ size: customizeSize,
+ disabled: customDisabled,
+ notFoundContent,
+ status: customStatus,
+ builtinPlacements,
+ dropdownMatchSelectWidth,
+ popupMatchSelectWidth,
+ direction: propDirection,
+ style,
+ allowClear
+ } = _a,
+ props = __rest(_a, ["prefixCls", "bordered", "className", "rootClassName", "getPopupContainer", "popupClassName", "dropdownClassName", "listHeight", "placement", "listItemHeight", "size", "disabled", "notFoundContent", "status", "builtinPlacements", "dropdownMatchSelectWidth", "popupMatchSelectWidth", "direction", "style", "allowClear"]);
const {
+ getPopupContainer: getContextPopupContainer,
getPrefixCls,
- direction,
- switch: SWITCH
- } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
- // ===================== Disabled =====================
- const disabled = _react_17_0_2_react.useContext(DisabledContext/* default */.Z);
- const mergedDisabled = (customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled) || loading;
- const prefixCls = getPrefixCls('switch', customizePrefixCls);
- const loadingIcon = /*#__PURE__*/_react_17_0_2_react.createElement("div", {
- className: `${prefixCls}-handle`
- }, loading && /*#__PURE__*/_react_17_0_2_react.createElement(LoadingOutlined/* default */.Z, {
- className: `${prefixCls}-loading-icon`
+ renderEmpty,
+ direction: contextDirection,
+ virtual,
+ popupMatchSelectWidth: contextPopupMatchSelectWidth,
+ popupOverflow,
+ select
+ } = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_3__/* .ConfigContext */ .E_);
+ const prefixCls = getPrefixCls('select', customizePrefixCls);
+ const rootPrefixCls = getPrefixCls();
+ const direction = propDirection !== null && propDirection !== void 0 ? propDirection : contextDirection;
+ const {
+ compactSize,
+ compactItemClassnames
+ } = (0,_space_Compact__WEBPACK_IMPORTED_MODULE_4__/* .useCompactItemContext */ .ri)(prefixCls, direction);
+ const [wrapSSR, hashId] = (0,_style__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)(prefixCls);
+ const mode = react__WEBPACK_IMPORTED_MODULE_2__.useMemo(() => {
+ const {
+ mode: m
+ } = props;
+ if (m === 'combobox') {
+ return undefined;
+ }
+ if (m === SECRET_COMBOBOX_MODE_DO_NOT_USE) {
+ return 'combobox';
+ }
+ return m;
+ }, [props.mode]);
+ const isMultiple = mode === 'multiple' || mode === 'tags';
+ const showSuffixIcon = (0,_useShowArrow__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z)(props.suffixIcon, props.showArrow);
+ const mergedPopupMatchSelectWidth = (_b = popupMatchSelectWidth !== null && popupMatchSelectWidth !== void 0 ? popupMatchSelectWidth : dropdownMatchSelectWidth) !== null && _b !== void 0 ? _b : contextPopupMatchSelectWidth;
+ // ===================== Form Status =====================
+ const {
+ status: contextStatus,
+ hasFeedback,
+ isFormItemInput,
+ feedbackIcon
+ } = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_form_context__WEBPACK_IMPORTED_MODULE_7__/* .FormItemInputContext */ .aM);
+ const mergedStatus = (0,_util_statusUtils__WEBPACK_IMPORTED_MODULE_8__/* .getMergedStatus */ .F)(contextStatus, customStatus);
+ // ===================== Empty =====================
+ let mergedNotFound;
+ if (notFoundContent !== undefined) {
+ mergedNotFound = notFoundContent;
+ } else if (mode === 'combobox') {
+ mergedNotFound = null;
+ } else {
+ mergedNotFound = (renderEmpty === null || renderEmpty === void 0 ? void 0 : renderEmpty('Select')) || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(_config_provider_defaultRenderEmpty__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {
+ componentName: "Select"
+ });
+ }
+ // ===================== Icons =====================
+ const {
+ suffixIcon,
+ itemIcon,
+ removeIcon,
+ clearIcon
+ } = (0,_utils_iconUtil__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z)(Object.assign(Object.assign({}, props), {
+ multiple: isMultiple,
+ hasFeedback,
+ feedbackIcon,
+ showSuffixIcon,
+ prefixCls,
+ showArrow: props.showArrow,
+ componentName: 'Select'
}));
- // Style
- const [wrapSSR, hashId] = switch_style(prefixCls);
- const mergedSize = (0,useSize/* default */.Z)(customizeSize);
- const classes = _classnames_2_5_1_classnames_default()(SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.className, {
- [`${prefixCls}-small`]: mergedSize === 'small',
- [`${prefixCls}-loading`]: loading,
- [`${prefixCls}-rtl`]: direction === 'rtl'
- }, className, rootClassName, hashId);
- const mergedStyle = Object.assign(Object.assign({}, SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.style), style);
- return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(wave/* default */.Z, {
- component: "Switch"
- }, /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({}, restProps, {
- prefixCls: prefixCls,
- className: classes,
- style: mergedStyle,
- disabled: mergedDisabled,
+ const mergedAllowClear = allowClear === true ? {
+ clearIcon
+ } : allowClear;
+ const selectProps = (0,rc_util_es_omit__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z)(props, ['suffixIcon', 'itemIcon']);
+ const rcSelectRtlDropdownClassName = classnames__WEBPACK_IMPORTED_MODULE_0___default()(popupClassName || dropdownClassName, {
+ [`${prefixCls}-dropdown-${direction}`]: direction === 'rtl'
+ }, rootClassName, hashId);
+ const mergedSize = (0,_config_provider_hooks_useSize__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z)(ctx => {
+ var _a;
+ return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : compactSize) !== null && _a !== void 0 ? _a : ctx;
+ });
+ // ===================== Disabled =====================
+ const disabled = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_config_provider_DisabledContext__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z);
+ const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;
+ const mergedClassName = classnames__WEBPACK_IMPORTED_MODULE_0___default()({
+ [`${prefixCls}-lg`]: mergedSize === 'large',
+ [`${prefixCls}-sm`]: mergedSize === 'small',
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-borderless`]: !bordered,
+ [`${prefixCls}-in-form-item`]: isFormItemInput
+ }, (0,_util_statusUtils__WEBPACK_IMPORTED_MODULE_8__/* .getStatusClassNames */ .Z)(prefixCls, mergedStatus, hasFeedback), compactItemClassnames, select === null || select === void 0 ? void 0 : select.className, className, rootClassName, hashId);
+ // ===================== Placement =====================
+ const memoPlacement = react__WEBPACK_IMPORTED_MODULE_2__.useMemo(() => {
+ if (placement !== undefined) {
+ return placement;
+ }
+ return direction === 'rtl' ? 'bottomRight' : 'bottomLeft';
+ }, [placement, direction]);
+ const mergedBuiltinPlacements = (0,_useBuiltinPlacements__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z)(builtinPlacements, popupOverflow);
+ // ====================== Warning ======================
+ if (false) {}
+ // ====================== Render =======================
+ return wrapSSR( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(rc_select__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .ZP, Object.assign({
ref: ref,
- loadingIcon: loadingIcon
- }))));
-});
-switch_Switch.__ANT_SWITCH = true;
+ virtual: virtual,
+ showSearch: select === null || select === void 0 ? void 0 : select.showSearch
+ }, selectProps, {
+ style: Object.assign(Object.assign({}, select === null || select === void 0 ? void 0 : select.style), style),
+ dropdownMatchSelectWidth: mergedPopupMatchSelectWidth,
+ builtinPlacements: mergedBuiltinPlacements,
+ transitionName: (0,_util_motion__WEBPACK_IMPORTED_MODULE_15__/* .getTransitionName */ .m)(rootPrefixCls, 'slide-up', props.transitionName),
+ listHeight: listHeight,
+ listItemHeight: listItemHeight,
+ mode: mode,
+ prefixCls: prefixCls,
+ placement: memoPlacement,
+ direction: direction,
+ suffixIcon: suffixIcon,
+ menuItemSelectedIcon: itemIcon,
+ removeIcon: removeIcon,
+ allowClear: mergedAllowClear,
+ notFoundContent: mergedNotFound,
+ className: mergedClassName,
+ getPopupContainer: getPopupContainer || getContextPopupContainer,
+ dropdownClassName: rcSelectRtlDropdownClassName,
+ disabled: mergedDisabled
+ })));
+};
+if (false) {}
+const Select = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.forwardRef(InternalSelect);
+// We don't care debug panel
+/* istanbul ignore next */
+const PurePanel = (0,_util_PurePanel__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z)(Select);
+Select.SECRET_COMBOBOX_MODE_DO_NOT_USE = SECRET_COMBOBOX_MODE_DO_NOT_USE;
+Select.Option = rc_select__WEBPACK_IMPORTED_MODULE_1__/* .Option */ .Wx;
+Select.OptGroup = rc_select__WEBPACK_IMPORTED_MODULE_1__/* .OptGroup */ .Xo;
+Select._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;
if (false) {}
-/* harmony default export */ var es_switch = (switch_Switch);
+/* harmony default export */ __webpack_exports__["default"] = (Select);
+
+/***/ }),
+
+/***/ 8378:
+/*!*******************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/style/motion/collapse.js ***!
+ \*******************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__) {
+
+"use strict";
+const genCollapseMotion = token => ({
+ [token.componentCls]: {
+ // For common/openAnimation
+ [`${token.antCls}-motion-collapse-legacy`]: {
+ overflow: 'hidden',
+ '&-active': {
+ transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},
+ opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`
+ }
+ },
+ [`${token.antCls}-motion-collapse`]: {
+ overflow: 'hidden',
+ transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},
+ opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`
+ }
+ }
+});
+/* harmony default export */ __webpack_exports__.Z = (genCollapseMotion);
+
+/***/ }),
+
+/***/ 31561:
+/*!*****************************************************************************!*\
+ !*** ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/index.js + 4 modules ***!
+ \*****************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ _rc_dropdown_4_1_0_rc_dropdown_es; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/index.js + 11 modules
+var es = __webpack_require__(35593);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
+var es_ref = __webpack_require__(88831);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/raf.js
+var raf = __webpack_require__(90571);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/hooks/useAccessibility.js
+
+
+
+var ESC = KeyCode/* default */.Z.ESC,
+ TAB = KeyCode/* default */.Z.TAB;
+function useAccessibility(_ref) {
+ var visible = _ref.visible,
+ triggerRef = _ref.triggerRef,
+ onVisibleChange = _ref.onVisibleChange,
+ autoFocus = _ref.autoFocus,
+ overlayRef = _ref.overlayRef;
+ var focusMenuRef = _react_17_0_2_react.useRef(false);
+ var handleCloseMenuAndReturnFocus = function handleCloseMenuAndReturnFocus() {
+ if (visible) {
+ var _triggerRef$current, _triggerRef$current$f;
+ (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$f = _triggerRef$current.focus) === null || _triggerRef$current$f === void 0 ? void 0 : _triggerRef$current$f.call(_triggerRef$current);
+ onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(false);
+ }
+ };
+ var focusMenu = function focusMenu() {
+ var _overlayRef$current;
+ if ((_overlayRef$current = overlayRef.current) !== null && _overlayRef$current !== void 0 && _overlayRef$current.focus) {
+ overlayRef.current.focus();
+ focusMenuRef.current = true;
+ return true;
+ }
+ return false;
+ };
+ var handleKeyDown = function handleKeyDown(event) {
+ switch (event.keyCode) {
+ case ESC:
+ handleCloseMenuAndReturnFocus();
+ break;
+ case TAB:
+ {
+ var focusResult = false;
+ if (!focusMenuRef.current) {
+ focusResult = focusMenu();
+ }
+ if (focusResult) {
+ event.preventDefault();
+ } else {
+ handleCloseMenuAndReturnFocus();
+ }
+ break;
+ }
+ }
+ };
+ _react_17_0_2_react.useEffect(function () {
+ if (visible) {
+ window.addEventListener("keydown", handleKeyDown);
+ if (autoFocus) {
+ // FIXME: hack with raf
+ (0,raf/* default */.Z)(focusMenu, 3);
+ }
+ return function () {
+ window.removeEventListener("keydown", handleKeyDown);
+ focusMenuRef.current = false;
+ };
+ }
+ return function () {
+ focusMenuRef.current = false;
+ };
+ }, [visible]); // eslint-disable-line react-hooks/exhaustive-deps
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/Overlay.js
+
+
+var Overlay = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(function (props, ref) {
+ var overlay = props.overlay,
+ arrow = props.arrow,
+ prefixCls = props.prefixCls;
+ var overlayNode = (0,_react_17_0_2_react.useMemo)(function () {
+ var overlayElement;
+ if (typeof overlay === 'function') {
+ overlayElement = overlay();
+ } else {
+ overlayElement = overlay;
+ }
+ return overlayElement;
+ }, [overlay]);
+ var composedRef = (0,es_ref/* composeRef */.sQ)(ref, overlayNode === null || overlayNode === void 0 ? void 0 : overlayNode.ref);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, arrow && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-arrow")
+ }), /*#__PURE__*/_react_17_0_2_react.cloneElement(overlayNode, {
+ ref: (0,es_ref/* supportRef */.Yr)(overlayNode) ? composedRef : undefined
+ }));
+});
+/* harmony default export */ var es_Overlay = (Overlay);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/placements.js
+var autoAdjustOverflow = {
+ adjustX: 1,
+ adjustY: 1
+};
+var targetOffset = [0, 0];
+var placements = {
+ topLeft: {
+ points: ['bl', 'tl'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ top: {
+ points: ['bc', 'tc'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ topRight: {
+ points: ['br', 'tr'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ bottomLeft: {
+ points: ['tl', 'bl'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ },
+ bottom: {
+ points: ['tc', 'bc'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ },
+ bottomRight: {
+ points: ['tr', 'br'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ }
+};
+/* harmony default export */ var es_placements = (placements);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/Dropdown.js
+
+
+
+
+var _excluded = ["arrow", "prefixCls", "transitionName", "animation", "align", "placement", "placements", "getPopupContainer", "showAction", "hideAction", "overlayClassName", "overlayStyle", "visible", "trigger", "autoFocus", "overlay", "children", "onVisibleChange"];
+
+
+
+
+
+
+
+function Dropdown(props, ref) {
+ var _children$props;
+ var _props$arrow = props.arrow,
+ arrow = _props$arrow === void 0 ? false : _props$arrow,
+ _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-dropdown' : _props$prefixCls,
+ transitionName = props.transitionName,
+ animation = props.animation,
+ align = props.align,
+ _props$placement = props.placement,
+ placement = _props$placement === void 0 ? 'bottomLeft' : _props$placement,
+ _props$placements = props.placements,
+ placements = _props$placements === void 0 ? es_placements : _props$placements,
+ getPopupContainer = props.getPopupContainer,
+ showAction = props.showAction,
+ hideAction = props.hideAction,
+ overlayClassName = props.overlayClassName,
+ overlayStyle = props.overlayStyle,
+ visible = props.visible,
+ _props$trigger = props.trigger,
+ trigger = _props$trigger === void 0 ? ['hover'] : _props$trigger,
+ autoFocus = props.autoFocus,
+ overlay = props.overlay,
+ children = props.children,
+ onVisibleChange = props.onVisibleChange,
+ otherProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var _React$useState = _react_17_0_2_react.useState(),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ triggerVisible = _React$useState2[0],
+ setTriggerVisible = _React$useState2[1];
+ var mergedVisible = 'visible' in props ? visible : triggerVisible;
+ var triggerRef = _react_17_0_2_react.useRef(null);
+ var overlayRef = _react_17_0_2_react.useRef(null);
+ var childRef = _react_17_0_2_react.useRef(null);
+ _react_17_0_2_react.useImperativeHandle(ref, function () {
+ return triggerRef.current;
+ });
+ var handleVisibleChange = function handleVisibleChange(newVisible) {
+ setTriggerVisible(newVisible);
+ onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(newVisible);
+ };
+ useAccessibility({
+ visible: mergedVisible,
+ triggerRef: childRef,
+ onVisibleChange: handleVisibleChange,
+ autoFocus: autoFocus,
+ overlayRef: overlayRef
+ });
+ var onClick = function onClick(e) {
+ var onOverlayClick = props.onOverlayClick;
+ setTriggerVisible(false);
+ if (onOverlayClick) {
+ onOverlayClick(e);
+ }
+ };
+ var getMenuElement = function getMenuElement() {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_Overlay, {
+ ref: overlayRef,
+ overlay: overlay,
+ prefixCls: prefixCls,
+ arrow: arrow
+ });
+ };
+ var getMenuElementOrLambda = function getMenuElementOrLambda() {
+ if (typeof overlay === 'function') {
+ return getMenuElement;
+ }
+ return getMenuElement();
+ };
+ var getMinOverlayWidthMatchTrigger = function getMinOverlayWidthMatchTrigger() {
+ var minOverlayWidthMatchTrigger = props.minOverlayWidthMatchTrigger,
+ alignPoint = props.alignPoint;
+ if ('minOverlayWidthMatchTrigger' in props) {
+ return minOverlayWidthMatchTrigger;
+ }
+ return !alignPoint;
+ };
+ var getOpenClassName = function getOpenClassName() {
+ var openClassName = props.openClassName;
+ if (openClassName !== undefined) {
+ return openClassName;
+ }
+ return "".concat(prefixCls, "-open");
+ };
+ var childrenNode = /*#__PURE__*/_react_17_0_2_react.cloneElement(children, {
+ className: _classnames_2_5_1_classnames_default()((_children$props = children.props) === null || _children$props === void 0 ? void 0 : _children$props.className, mergedVisible && getOpenClassName()),
+ ref: (0,es_ref/* supportRef */.Yr)(children) ? (0,es_ref/* composeRef */.sQ)(childRef, children.ref) : undefined
+ });
+ var triggerHideAction = hideAction;
+ if (!triggerHideAction && trigger.indexOf('contextMenu') !== -1) {
+ triggerHideAction = ['click'];
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, (0,esm_extends/* default */.Z)({
+ builtinPlacements: placements
+ }, otherProps, {
+ prefixCls: prefixCls,
+ ref: triggerRef,
+ popupClassName: _classnames_2_5_1_classnames_default()(overlayClassName, (0,defineProperty/* default */.Z)({}, "".concat(prefixCls, "-show-arrow"), arrow)),
+ popupStyle: overlayStyle,
+ action: trigger,
+ showAction: showAction,
+ hideAction: triggerHideAction,
+ popupPlacement: placement,
+ popupAlign: align,
+ popupTransitionName: transitionName,
+ popupAnimation: animation,
+ popupVisible: mergedVisible,
+ stretch: getMinOverlayWidthMatchTrigger() ? 'minWidth' : '',
+ popup: getMenuElementOrLambda(),
+ onPopupVisibleChange: handleVisibleChange,
+ onPopupClick: onClick,
+ getPopupContainer: getPopupContainer
+ }), childrenNode);
+}
+/* harmony default export */ var es_Dropdown = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Dropdown));
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/index.js
+
+/* harmony default export */ var _rc_dropdown_4_1_0_rc_dropdown_es = (es_Dropdown);
/***/ }),
diff --git a/84728.async.js b/35593.async.js
similarity index 97%
rename from 84728.async.js
rename to 35593.async.js
index 0a608fe03e..efc238df9a 100644
--- a/84728.async.js
+++ b/35593.async.js
@@ -1,9 +1,9 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[84728],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[35593],{
-/***/ 84728:
+/***/ 35593:
/*!***************************************************************************************************!*\
- !*** ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/index.js + 11 modules ***!
+ !*** ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/index.js + 11 modules ***!
\***************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
@@ -15,12 +15,12 @@ __webpack_require__.d(__webpack_exports__, {
// UNUSED EXPORTS: generateTrigger
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectSpread2.js
-var objectSpread2 = __webpack_require__(96257);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectSpread2.js
+var objectSpread2 = __webpack_require__(54131);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
// EXTERNAL MODULE: ./node_modules/_@rc-component_portal@1.1.2@@rc-component/portal/es/index.js + 6 modules
var es = __webpack_require__(43403);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
@@ -42,13 +42,13 @@ var useLayoutEffect = __webpack_require__(70658);
var isMobile = __webpack_require__(15639);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_rc-motion@2.9.0@rc-motion/es/index.js + 12 modules
var _rc_motion_2_9_0_rc_motion_es = __webpack_require__(44516);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
var es_ref = __webpack_require__(88831);
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/Popup/Arrow.js
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/Popup/Arrow.js
function Arrow(props) {
@@ -106,7 +106,7 @@ function Arrow(props) {
style: alignStyle
}, content);
}
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/Popup/Mask.js
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/Popup/Mask.js
@@ -134,7 +134,7 @@ function Mask(props) {
});
});
}
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/Popup/PopupContent.js
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/Popup/PopupContent.js
var PopupContent = /*#__PURE__*/_react_17_0_2_react.memo(function (_ref) {
var children = _ref.children;
@@ -144,7 +144,7 @@ var PopupContent = /*#__PURE__*/_react_17_0_2_react.memo(function (_ref) {
});
if (false) {}
/* harmony default export */ var Popup_PopupContent = (PopupContent);
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/Popup/index.js
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/Popup/index.js
@@ -328,7 +328,7 @@ var Popup = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (props, ref) {
});
if (false) {}
/* harmony default export */ var es_Popup = (Popup);
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/TriggerWrapper.js
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/TriggerWrapper.js
var TriggerWrapper = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (props, ref) {
@@ -347,11 +347,11 @@ var TriggerWrapper = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (props
});
if (false) {}
/* harmony default export */ var es_TriggerWrapper = (TriggerWrapper);
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/context.js
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/context.js
var TriggerContext = /*#__PURE__*/_react_17_0_2_react.createContext(null);
/* harmony default export */ var es_context = (TriggerContext);
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/hooks/useAction.js
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/hooks/useAction.js
function toArray(val) {
return val ? Array.isArray(val) ? val : [val] : [];
@@ -377,7 +377,7 @@ function useAction(mobile, action, showAction, hideAction) {
}
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Dom/isVisible.js
var isVisible = __webpack_require__(95077);
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/util.js
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/util.js
function isPointsEq() {
var a1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
@@ -532,7 +532,7 @@ function getVisibleArea(initArea, scrollerList) {
});
return visibleArea;
}
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/hooks/useAlign.js
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/hooks/useAlign.js
@@ -1050,9 +1050,9 @@ function useAlign(open, popupEle, target, placement, builtinPlacements, popupAli
}, [open]);
return [offsetInfo.ready, offsetInfo.offsetX, offsetInfo.offsetY, offsetInfo.offsetR, offsetInfo.offsetB, offsetInfo.arrowX, offsetInfo.arrowY, offsetInfo.scaleX, offsetInfo.scaleY, offsetInfo.align, triggerAlign];
}
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/hooks/useWatch.js
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/hooks/useWatch.js
@@ -1093,7 +1093,7 @@ function useWatch(open, target, popup, onAlign, onScroll) {
var warning = __webpack_require__(36014);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/raf.js
var raf = __webpack_require__(90571);
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/hooks/useWinClick.js
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/hooks/useWinClick.js
@@ -1176,7 +1176,7 @@ function useWinClick(open, clickToHide, targetEle, popupEle, mask, maskClosable,
}
}, [clickToHide, targetEle, popupEle, mask, maskClosable]);
}
-;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.2@@rc-component/trigger/es/index.js
+;// CONCATENATED MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/index.js
@@ -1203,7 +1203,9 @@ var _excluded = ["prefixCls", "children", "action", "showAction", "hideAction",
// Removed Props List
// Seems this can be auto
// getDocument?: (element?: HTMLElement) => Document;
+
// New version will not wrap popup with `rc-trigger-popup-content` when multiple children
+
function generateTrigger() {
var PortalComponent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : es/* default */.Z;
var Trigger = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (props, ref) {
@@ -1551,9 +1553,9 @@ function generateTrigger() {
wrapperAction('onPointerEnter', true, mouseEnterDelay, function (event) {
setMousePosByEvent(event);
});
- onPopupMouseEnter = function onPopupMouseEnter() {
+ onPopupMouseEnter = function onPopupMouseEnter(event) {
// Only trigger re-open when popup is visible
- if (mergedOpen || inMotion) {
+ if ((mergedOpen || inMotion) && popupEle !== null && popupEle !== void 0 && popupEle.contains(event.target)) {
triggerOpen(true, mouseEnterDelay);
}
};
diff --git a/38177.async.js b/36144.async.js
similarity index 97%
rename from 38177.async.js
rename to 36144.async.js
index c12faac215..b3178b05ee 100644
--- a/38177.async.js
+++ b/36144.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[38177,64802,34668],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[36144,94766,88766],{
-/***/ 80045:
+/***/ 51954:
/*!*******************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules ***!
\*******************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ExclamationCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
// This icon file is generated automatically.
var ExclamationCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }, { "tag": "path", "attrs": { "d": "M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z" } }] }, "name": "exclamation-circle", "theme": "outlined" };
/* harmony default export */ var asn_ExclamationCircleOutlined = (ExclamationCircleOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 15997:
+/***/ 41435:
/*!*****************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules ***!
\*****************************************************************************************************/
@@ -55,11 +55,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_EyeOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeOutlined.js
// This icon file is generated automatically.
var EyeOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z" } }] }, "name": "eye", "theme": "outlined" };
/* harmony default export */ var asn_EyeOutlined = (EyeOutlined);
@@ -105,7 +105,7 @@ var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_c
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EllipsisOutlined.js + 1 modules
-var EllipsisOutlined = __webpack_require__(93319);
+var EllipsisOutlined = __webpack_require__(12440);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
@@ -244,7 +244,7 @@ Dropdown.Button = dropdown_button;
/***/ }),
-/***/ 1056:
+/***/ 11694:
/*!*********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules ***!
\*********************************************************************/
@@ -314,9 +314,9 @@ const Group = props => {
/* harmony default export */ var input_Group = (Group);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/Input.js + 1 modules
var Input = __webpack_require__(9432);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
// This icon file is generated automatically.
var EyeInvisibleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z" } }, { "tag": "path", "attrs": { "d": "M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z" } }] }, "name": "eye-invisible", "theme": "outlined" };
/* harmony default export */ var asn_EyeInvisibleOutlined = (EyeInvisibleOutlined);
@@ -340,7 +340,7 @@ var EyeInvisibleOutlined_EyeInvisibleOutlined = function EyeInvisibleOutlined(pr
if (false) {}
/* harmony default export */ var icons_EyeInvisibleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(EyeInvisibleOutlined_EyeInvisibleOutlined));
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules
-var EyeOutlined = __webpack_require__(15997);
+var EyeOutlined = __webpack_require__(41435);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
@@ -462,7 +462,7 @@ const Password = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
if (false) {}
/* harmony default export */ var input_Password = (Password);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SearchOutlined.js + 1 modules
-var SearchOutlined = __webpack_require__(46820);
+var SearchOutlined = __webpack_require__(23097);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
diff --git a/77021.async.js b/36215.async.js
similarity index 97%
rename from 77021.async.js
rename to 36215.async.js
index 6811b6c063..85703f5995 100644
--- a/77021.async.js
+++ b/36215.async.js
@@ -1,6 +1,6 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[77021],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[36215],{
-/***/ 68742:
+/***/ 28593:
/*!***********************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ArrowLeftOutlined.js + 1 modules ***!
\***********************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ArrowLeftOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/ArrowLeftOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ArrowLeftOutlined.js
// This icon file is generated automatically.
var ArrowLeftOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M872 474H286.9l350.2-304c5.6-4.9 2.2-14-5.2-14h-88.5c-3.9 0-7.6 1.4-10.5 3.9L155 487.8a31.96 31.96 0 000 48.3L535.1 866c1.5 1.3 3.3 2 5.2 2h91.5c7.4 0 10.8-9.2 5.2-14L286.9 550H872c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8z" } }] }, "name": "arrow-left", "theme": "outlined" };
/* harmony default export */ var asn_ArrowLeftOutlined = (ArrowLeftOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 15997:
+/***/ 41435:
/*!*****************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules ***!
\*****************************************************************************************************/
@@ -56,11 +56,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_EyeOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeOutlined.js
// This icon file is generated automatically.
var EyeOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z" } }] }, "name": "eye", "theme": "outlined" };
/* harmony default export */ var asn_EyeOutlined = (EyeOutlined);
@@ -86,7 +86,7 @@ if (false) {}
/***/ }),
-/***/ 1056:
+/***/ 11694:
/*!*********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules ***!
\*********************************************************************/
@@ -157,9 +157,9 @@ const Group = props => {
/* harmony default export */ var input_Group = (Group);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/Input.js + 1 modules
var Input = __webpack_require__(9432);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js
// This icon file is generated automatically.
var EyeInvisibleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z" } }, { "tag": "path", "attrs": { "d": "M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z" } }] }, "name": "eye-invisible", "theme": "outlined" };
/* harmony default export */ var asn_EyeInvisibleOutlined = (EyeInvisibleOutlined);
@@ -183,7 +183,7 @@ var EyeInvisibleOutlined_EyeInvisibleOutlined = function EyeInvisibleOutlined(pr
if (false) {}
/* harmony default export */ var icons_EyeInvisibleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(EyeInvisibleOutlined_EyeInvisibleOutlined));
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EyeOutlined.js + 1 modules
-var EyeOutlined = __webpack_require__(15997);
+var EyeOutlined = __webpack_require__(41435);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
@@ -305,7 +305,7 @@ const Password = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
if (false) {}
/* harmony default export */ var input_Password = (Password);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SearchOutlined.js + 1 modules
-var SearchOutlined = __webpack_require__(46820);
+var SearchOutlined = __webpack_require__(23097);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
diff --git a/37408.async.js b/37408.async.js
index 2b218bc424..04d5f7c76d 100644
--- a/37408.async.js
+++ b/37408.async.js
@@ -27,7 +27,7 @@ var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
-var DownOutlined = __webpack_require__(42884);
+var DownOutlined = __webpack_require__(8415);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
var dropdown = __webpack_require__(91857);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
diff --git a/44361.async.js b/38103.async.js
similarity index 98%
rename from 44361.async.js
rename to 38103.async.js
index fc76344e29..eb9f61e640 100644
--- a/44361.async.js
+++ b/38103.async.js
@@ -1,6 +1,6 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[44361],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[38103],{
-/***/ 43914:
+/***/ 92066:
/*!*************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseSquareOutlined.js + 1 modules ***!
\*************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_CloseSquareOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/CloseSquareOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/CloseSquareOutlined.js
// This icon file is generated automatically.
var CloseSquareOutlined = { "icon": { "tag": "svg", "attrs": { "fill-rule": "evenodd", "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M880 112c17.7 0 32 14.3 32 32v736c0 17.7-14.3 32-32 32H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32zm-40 72H184v656h656V184zM640.01 338.83c.03 0 .05.01.09.06l45.02 45.01a.2.2 0 01.05.09.12.12 0 010 .07c0 .02-.01.04-.05.08L557.25 512l127.87 127.86a.27.27 0 01.05.06v.02a.12.12 0 010 .07c0 .03-.01.05-.05.09l-45.02 45.02a.2.2 0 01-.09.05.12.12 0 01-.07 0c-.02 0-.04-.01-.08-.05L512 557.25 384.14 685.12c-.04.04-.06.05-.08.05a.12.12 0 01-.07 0c-.03 0-.05-.01-.09-.05l-45.02-45.02a.2.2 0 01-.05-.09.12.12 0 010-.07c0-.02.01-.04.06-.08L466.75 512 338.88 384.14a.27.27 0 01-.05-.06l-.01-.02a.12.12 0 010-.07c0-.03.01-.05.05-.09l45.02-45.02a.2.2 0 01.09-.05.12.12 0 01.07 0c.02 0 .04.01.08.06L512 466.75l127.86-127.86c.04-.05.06-.06.08-.06a.12.12 0 01.07 0z" } }] }, "name": "close-square", "theme": "outlined" };
/* harmony default export */ var asn_CloseSquareOutlined = (CloseSquareOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 80045:
+/***/ 51954:
/*!*******************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules ***!
\*******************************************************************************************************************/
@@ -56,11 +56,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ExclamationCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
// This icon file is generated automatically.
var ExclamationCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }, { "tag": "path", "attrs": { "d": "M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z" } }] }, "name": "exclamation-circle", "theme": "outlined" };
/* harmony default export */ var asn_ExclamationCircleOutlined = (ExclamationCircleOutlined);
@@ -449,7 +449,7 @@ if (false) {}
"use strict";
/* harmony import */ var _layout__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./layout */ 84966);
-/* harmony import */ var _Sider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Sider */ 37534);
+/* harmony import */ var _Sider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Sider */ 32234);
"use client";
diff --git a/41867.async.js b/38623.async.js
similarity index 98%
rename from 41867.async.js
rename to 38623.async.js
index 9807cb7e43..4156fa4f65 100644
--- a/41867.async.js
+++ b/38623.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[41867],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[38623],{
-/***/ 40764:
+/***/ 60896:
/*!*************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DoubleRightOutlined.js + 1 modules ***!
\*************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_DoubleRightOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/DoubleRightOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/DoubleRightOutlined.js
// This icon file is generated automatically.
var DoubleRightOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M533.2 492.3L277.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H188c-6.7 0-10.4 7.7-6.3 12.9L447.1 512 181.7 851.1A7.98 7.98 0 00188 864h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.1c9.1-11.7 9.1-27.9 0-39.5zm304 0L581.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H492c-6.7 0-10.4 7.7-6.3 12.9L751.1 512 485.7 851.1A7.98 7.98 0 00492 864h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.1c9.1-11.7 9.1-27.9 0-39.5z" } }] }, "name": "double-right", "theme": "outlined" };
/* harmony default export */ var asn_DoubleRightOutlined = (DoubleRightOutlined);
@@ -97,7 +97,7 @@ function useBreakpoint() {
/***/ }),
-/***/ 41867:
+/***/ 38623:
/*!***************************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/pagination/index.js + 10 modules ***!
\***************************************************************************/
@@ -109,11 +109,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ pagination; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/DoubleLeftOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/DoubleLeftOutlined.js
// This icon file is generated automatically.
var DoubleLeftOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M272.9 512l265.4-339.1c4.1-5.2.4-12.9-6.3-12.9h-77.3c-4.9 0-9.6 2.3-12.6 6.1L186.8 492.3a31.99 31.99 0 000 39.5l255.3 326.1c3 3.9 7.7 6.1 12.6 6.1H532c6.7 0 10.4-7.7 6.3-12.9L272.9 512zm304 0l265.4-339.1c4.1-5.2.4-12.9-6.3-12.9h-77.3c-4.9 0-9.6 2.3-12.6 6.1L490.8 492.3a31.99 31.99 0 000 39.5l255.3 326.1c3 3.9 7.7 6.1 12.6 6.1H836c6.7 0 10.4-7.7 6.3-12.9L576.9 512z" } }] }, "name": "double-left", "theme": "outlined" };
/* harmony default export */ var asn_DoubleLeftOutlined = (DoubleLeftOutlined);
@@ -137,26 +137,26 @@ var DoubleLeftOutlined_DoubleLeftOutlined = function DoubleLeftOutlined(props, r
if (false) {}
/* harmony default export */ var icons_DoubleLeftOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(DoubleLeftOutlined_DoubleLeftOutlined));
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DoubleRightOutlined.js + 1 modules
-var DoubleRightOutlined = __webpack_require__(40764);
+var DoubleRightOutlined = __webpack_require__(60896);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LeftOutlined.js + 1 modules
-var LeftOutlined = __webpack_require__(52063);
+var LeftOutlined = __webpack_require__(60124);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/RightOutlined.js + 1 modules
-var RightOutlined = __webpack_require__(22311);
+var RightOutlined = __webpack_require__(78864);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectSpread2.js
-var objectSpread2 = __webpack_require__(96257);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/classCallCheck.js
-var classCallCheck = __webpack_require__(32154);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/createClass.js
-var createClass = __webpack_require__(9762);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/inherits.js
-var inherits = __webpack_require__(31684);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/createSuper.js + 1 modules
-var createSuper = __webpack_require__(21928);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectSpread2.js
+var objectSpread2 = __webpack_require__(54131);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/classCallCheck.js
+var classCallCheck = __webpack_require__(61577);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/createClass.js
+var createClass = __webpack_require__(22946);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/inherits.js
+var inherits = __webpack_require__(3711);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/createSuper.js + 1 modules
+var createSuper = __webpack_require__(44961);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/pickAttrs.js
var pickAttrs = __webpack_require__(3286);
;// CONCATENATED MODULE: ./node_modules/_rc-pagination@3.6.1@rc-pagination/es/KeyCode.js
diff --git a/21773.async.js b/38833.async.js
similarity index 74%
rename from 21773.async.js
rename to 38833.async.js
index 720b38f651..6032645d8f 100644
--- a/21773.async.js
+++ b/38833.async.js
@@ -1,5 +1,5 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[21773],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[38833],{
/***/ 77578:
/*!**********************************************************************!*\
@@ -787,6 +787,308 @@ const genCollapseMotion = token => ({
});
/* harmony default export */ __webpack_exports__.Z = (genCollapseMotion);
+/***/ }),
+
+/***/ 31561:
+/*!*****************************************************************************!*\
+ !*** ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/index.js + 4 modules ***!
+ \*****************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ _rc_dropdown_4_1_0_rc_dropdown_es; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/index.js + 11 modules
+var es = __webpack_require__(35593);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
+var es_ref = __webpack_require__(88831);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/raf.js
+var raf = __webpack_require__(90571);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/hooks/useAccessibility.js
+
+
+
+var ESC = KeyCode/* default */.Z.ESC,
+ TAB = KeyCode/* default */.Z.TAB;
+function useAccessibility(_ref) {
+ var visible = _ref.visible,
+ triggerRef = _ref.triggerRef,
+ onVisibleChange = _ref.onVisibleChange,
+ autoFocus = _ref.autoFocus,
+ overlayRef = _ref.overlayRef;
+ var focusMenuRef = _react_17_0_2_react.useRef(false);
+ var handleCloseMenuAndReturnFocus = function handleCloseMenuAndReturnFocus() {
+ if (visible) {
+ var _triggerRef$current, _triggerRef$current$f;
+ (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$f = _triggerRef$current.focus) === null || _triggerRef$current$f === void 0 ? void 0 : _triggerRef$current$f.call(_triggerRef$current);
+ onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(false);
+ }
+ };
+ var focusMenu = function focusMenu() {
+ var _overlayRef$current;
+ if ((_overlayRef$current = overlayRef.current) !== null && _overlayRef$current !== void 0 && _overlayRef$current.focus) {
+ overlayRef.current.focus();
+ focusMenuRef.current = true;
+ return true;
+ }
+ return false;
+ };
+ var handleKeyDown = function handleKeyDown(event) {
+ switch (event.keyCode) {
+ case ESC:
+ handleCloseMenuAndReturnFocus();
+ break;
+ case TAB:
+ {
+ var focusResult = false;
+ if (!focusMenuRef.current) {
+ focusResult = focusMenu();
+ }
+ if (focusResult) {
+ event.preventDefault();
+ } else {
+ handleCloseMenuAndReturnFocus();
+ }
+ break;
+ }
+ }
+ };
+ _react_17_0_2_react.useEffect(function () {
+ if (visible) {
+ window.addEventListener("keydown", handleKeyDown);
+ if (autoFocus) {
+ // FIXME: hack with raf
+ (0,raf/* default */.Z)(focusMenu, 3);
+ }
+ return function () {
+ window.removeEventListener("keydown", handleKeyDown);
+ focusMenuRef.current = false;
+ };
+ }
+ return function () {
+ focusMenuRef.current = false;
+ };
+ }, [visible]); // eslint-disable-line react-hooks/exhaustive-deps
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/Overlay.js
+
+
+var Overlay = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(function (props, ref) {
+ var overlay = props.overlay,
+ arrow = props.arrow,
+ prefixCls = props.prefixCls;
+ var overlayNode = (0,_react_17_0_2_react.useMemo)(function () {
+ var overlayElement;
+ if (typeof overlay === 'function') {
+ overlayElement = overlay();
+ } else {
+ overlayElement = overlay;
+ }
+ return overlayElement;
+ }, [overlay]);
+ var composedRef = (0,es_ref/* composeRef */.sQ)(ref, overlayNode === null || overlayNode === void 0 ? void 0 : overlayNode.ref);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, arrow && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-arrow")
+ }), /*#__PURE__*/_react_17_0_2_react.cloneElement(overlayNode, {
+ ref: (0,es_ref/* supportRef */.Yr)(overlayNode) ? composedRef : undefined
+ }));
+});
+/* harmony default export */ var es_Overlay = (Overlay);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/placements.js
+var autoAdjustOverflow = {
+ adjustX: 1,
+ adjustY: 1
+};
+var targetOffset = [0, 0];
+var placements = {
+ topLeft: {
+ points: ['bl', 'tl'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ top: {
+ points: ['bc', 'tc'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ topRight: {
+ points: ['br', 'tr'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ bottomLeft: {
+ points: ['tl', 'bl'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ },
+ bottom: {
+ points: ['tc', 'bc'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ },
+ bottomRight: {
+ points: ['tr', 'br'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ }
+};
+/* harmony default export */ var es_placements = (placements);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/Dropdown.js
+
+
+
+
+var _excluded = ["arrow", "prefixCls", "transitionName", "animation", "align", "placement", "placements", "getPopupContainer", "showAction", "hideAction", "overlayClassName", "overlayStyle", "visible", "trigger", "autoFocus", "overlay", "children", "onVisibleChange"];
+
+
+
+
+
+
+
+function Dropdown(props, ref) {
+ var _children$props;
+ var _props$arrow = props.arrow,
+ arrow = _props$arrow === void 0 ? false : _props$arrow,
+ _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-dropdown' : _props$prefixCls,
+ transitionName = props.transitionName,
+ animation = props.animation,
+ align = props.align,
+ _props$placement = props.placement,
+ placement = _props$placement === void 0 ? 'bottomLeft' : _props$placement,
+ _props$placements = props.placements,
+ placements = _props$placements === void 0 ? es_placements : _props$placements,
+ getPopupContainer = props.getPopupContainer,
+ showAction = props.showAction,
+ hideAction = props.hideAction,
+ overlayClassName = props.overlayClassName,
+ overlayStyle = props.overlayStyle,
+ visible = props.visible,
+ _props$trigger = props.trigger,
+ trigger = _props$trigger === void 0 ? ['hover'] : _props$trigger,
+ autoFocus = props.autoFocus,
+ overlay = props.overlay,
+ children = props.children,
+ onVisibleChange = props.onVisibleChange,
+ otherProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var _React$useState = _react_17_0_2_react.useState(),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ triggerVisible = _React$useState2[0],
+ setTriggerVisible = _React$useState2[1];
+ var mergedVisible = 'visible' in props ? visible : triggerVisible;
+ var triggerRef = _react_17_0_2_react.useRef(null);
+ var overlayRef = _react_17_0_2_react.useRef(null);
+ var childRef = _react_17_0_2_react.useRef(null);
+ _react_17_0_2_react.useImperativeHandle(ref, function () {
+ return triggerRef.current;
+ });
+ var handleVisibleChange = function handleVisibleChange(newVisible) {
+ setTriggerVisible(newVisible);
+ onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(newVisible);
+ };
+ useAccessibility({
+ visible: mergedVisible,
+ triggerRef: childRef,
+ onVisibleChange: handleVisibleChange,
+ autoFocus: autoFocus,
+ overlayRef: overlayRef
+ });
+ var onClick = function onClick(e) {
+ var onOverlayClick = props.onOverlayClick;
+ setTriggerVisible(false);
+ if (onOverlayClick) {
+ onOverlayClick(e);
+ }
+ };
+ var getMenuElement = function getMenuElement() {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_Overlay, {
+ ref: overlayRef,
+ overlay: overlay,
+ prefixCls: prefixCls,
+ arrow: arrow
+ });
+ };
+ var getMenuElementOrLambda = function getMenuElementOrLambda() {
+ if (typeof overlay === 'function') {
+ return getMenuElement;
+ }
+ return getMenuElement();
+ };
+ var getMinOverlayWidthMatchTrigger = function getMinOverlayWidthMatchTrigger() {
+ var minOverlayWidthMatchTrigger = props.minOverlayWidthMatchTrigger,
+ alignPoint = props.alignPoint;
+ if ('minOverlayWidthMatchTrigger' in props) {
+ return minOverlayWidthMatchTrigger;
+ }
+ return !alignPoint;
+ };
+ var getOpenClassName = function getOpenClassName() {
+ var openClassName = props.openClassName;
+ if (openClassName !== undefined) {
+ return openClassName;
+ }
+ return "".concat(prefixCls, "-open");
+ };
+ var childrenNode = /*#__PURE__*/_react_17_0_2_react.cloneElement(children, {
+ className: _classnames_2_5_1_classnames_default()((_children$props = children.props) === null || _children$props === void 0 ? void 0 : _children$props.className, mergedVisible && getOpenClassName()),
+ ref: (0,es_ref/* supportRef */.Yr)(children) ? (0,es_ref/* composeRef */.sQ)(childRef, children.ref) : undefined
+ });
+ var triggerHideAction = hideAction;
+ if (!triggerHideAction && trigger.indexOf('contextMenu') !== -1) {
+ triggerHideAction = ['click'];
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, (0,esm_extends/* default */.Z)({
+ builtinPlacements: placements
+ }, otherProps, {
+ prefixCls: prefixCls,
+ ref: triggerRef,
+ popupClassName: _classnames_2_5_1_classnames_default()(overlayClassName, (0,defineProperty/* default */.Z)({}, "".concat(prefixCls, "-show-arrow"), arrow)),
+ popupStyle: overlayStyle,
+ action: trigger,
+ showAction: showAction,
+ hideAction: triggerHideAction,
+ popupPlacement: placement,
+ popupAlign: align,
+ popupTransitionName: transitionName,
+ popupAnimation: animation,
+ popupVisible: mergedVisible,
+ stretch: getMinOverlayWidthMatchTrigger() ? 'minWidth' : '',
+ popup: getMenuElementOrLambda(),
+ onPopupVisibleChange: handleVisibleChange,
+ onPopupClick: onClick,
+ getPopupContainer: getPopupContainer
+ }), childrenNode);
+}
+/* harmony default export */ var es_Dropdown = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Dropdown));
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/index.js
+
+/* harmony default export */ var _rc_dropdown_4_1_0_rc_dropdown_es = (es_Dropdown);
+
/***/ })
}]);
\ No newline at end of file
diff --git a/39790.async.js b/39790.async.js
index c3db7fb9e6..7043dad103 100644
--- a/39790.async.js
+++ b/39790.async.js
@@ -444,16 +444,16 @@ module.exports = function(color_string) {
/***/ }),
-/***/ 95894:
+/***/ 73507:
/*!**********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/a-callable.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/a-callable.js ***!
\**********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var tryToString = __webpack_require__(/*! ../internals/try-to-string */ 89635);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var tryToString = __webpack_require__(/*! ../internals/try-to-string */ 98552);
var $TypeError = TypeError;
@@ -466,16 +466,16 @@ module.exports = function (argument) {
/***/ }),
-/***/ 50014:
+/***/ 53513:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/a-constructor.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/a-constructor.js ***!
\*************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var isConstructor = __webpack_require__(/*! ../internals/is-constructor */ 14801);
-var tryToString = __webpack_require__(/*! ../internals/try-to-string */ 89635);
+var isConstructor = __webpack_require__(/*! ../internals/is-constructor */ 99748);
+var tryToString = __webpack_require__(/*! ../internals/try-to-string */ 98552);
var $TypeError = TypeError;
@@ -488,15 +488,15 @@ module.exports = function (argument) {
/***/ }),
-/***/ 35003:
+/***/ 31347:
/*!********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/a-possible-prototype.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/a-possible-prototype.js ***!
\********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var isPossiblePrototype = __webpack_require__(/*! ../internals/is-possible-prototype */ 95813);
+var isPossiblePrototype = __webpack_require__(/*! ../internals/is-possible-prototype */ 36933);
var $String = String;
var $TypeError = TypeError;
@@ -509,17 +509,17 @@ module.exports = function (argument) {
/***/ }),
-/***/ 35390:
+/***/ 64180:
/*!******************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/add-to-unscopables.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/add-to-unscopables.js ***!
\******************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
-var create = __webpack_require__(/*! ../internals/object-create */ 99547);
-var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ 86813).f);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
+var create = __webpack_require__(/*! ../internals/object-create */ 47759);
+var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ 91349).f);
var UNSCOPABLES = wellKnownSymbol('unscopables');
var ArrayPrototype = Array.prototype;
@@ -541,15 +541,15 @@ module.exports = function (key) {
/***/ }),
-/***/ 38119:
+/***/ 62794:
/*!********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/advance-string-index.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/advance-string-index.js ***!
\********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var charAt = (__webpack_require__(/*! ../internals/string-multibyte */ 12685).charAt);
+var charAt = (__webpack_require__(/*! ../internals/string-multibyte */ 87282).charAt);
// `AdvanceStringIndex` abstract operation
// https://tc39.es/ecma262/#sec-advancestringindex
@@ -560,15 +560,15 @@ module.exports = function (S, index, unicode) {
/***/ }),
-/***/ 95182:
+/***/ 58676:
/*!***********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/an-instance.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/an-instance.js ***!
\***********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ 59043);
+var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ 36470);
var $TypeError = TypeError;
@@ -580,15 +580,15 @@ module.exports = function (it, Prototype) {
/***/ }),
-/***/ 80879:
+/***/ 15591:
/*!*********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/an-object.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/an-object.js ***!
\*********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var isObject = __webpack_require__(/*! ../internals/is-object */ 54404);
+var isObject = __webpack_require__(/*! ../internals/is-object */ 62518);
var $String = String;
var $TypeError = TypeError;
@@ -602,17 +602,17 @@ module.exports = function (argument) {
/***/ }),
-/***/ 6885:
+/***/ 72693:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/array-includes.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/array-includes.js ***!
\**************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ 63526);
-var toAbsoluteIndex = __webpack_require__(/*! ../internals/to-absolute-index */ 65518);
-var lengthOfArrayLike = __webpack_require__(/*! ../internals/length-of-array-like */ 37895);
+var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ 44273);
+var toAbsoluteIndex = __webpack_require__(/*! ../internals/to-absolute-index */ 17807);
+var lengthOfArrayLike = __webpack_require__(/*! ../internals/length-of-array-like */ 57529);
// `Array.prototype.{ indexOf, includes }` methods implementation
var createMethod = function (IS_INCLUDES) {
@@ -646,15 +646,15 @@ module.exports = {
/***/ }),
-/***/ 63633:
+/***/ 43334:
/*!**********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/array-method-is-strict.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/array-method-is-strict.js ***!
\**********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
module.exports = function (METHOD_NAME, argument) {
var method = [][METHOD_NAME];
@@ -667,18 +667,18 @@ module.exports = function (METHOD_NAME, argument) {
/***/ }),
-/***/ 60926:
+/***/ 31950:
/*!************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/array-reduce.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/array-reduce.js ***!
\************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var aCallable = __webpack_require__(/*! ../internals/a-callable */ 95894);
-var toObject = __webpack_require__(/*! ../internals/to-object */ 94949);
-var IndexedObject = __webpack_require__(/*! ../internals/indexed-object */ 33861);
-var lengthOfArrayLike = __webpack_require__(/*! ../internals/length-of-array-like */ 37895);
+var aCallable = __webpack_require__(/*! ../internals/a-callable */ 73507);
+var toObject = __webpack_require__(/*! ../internals/to-object */ 42989);
+var IndexedObject = __webpack_require__(/*! ../internals/indexed-object */ 94763);
+var lengthOfArrayLike = __webpack_require__(/*! ../internals/length-of-array-like */ 57529);
var $TypeError = TypeError;
@@ -721,30 +721,30 @@ module.exports = {
/***/ }),
-/***/ 42358:
+/***/ 86775:
/*!***********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/array-slice.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/array-slice.js ***!
\***********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
module.exports = uncurryThis([].slice);
/***/ }),
-/***/ 44104:
+/***/ 6363:
/*!******************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/check-correctness-of-iteration.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/check-correctness-of-iteration.js ***!
\******************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
var ITERATOR = wellKnownSymbol('iterator');
var SAFE_CLOSING = false;
@@ -788,15 +788,15 @@ module.exports = function (exec, SKIP_CLOSING) {
/***/ }),
-/***/ 432:
+/***/ 40992:
/*!***********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/classof-raw.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/classof-raw.js ***!
\***********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
var toString = uncurryThis({}.toString);
var stringSlice = uncurryThis(''.slice);
@@ -808,18 +808,18 @@ module.exports = function (it) {
/***/ }),
-/***/ 5857:
+/***/ 64418:
/*!*******************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/classof.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/classof.js ***!
\*******************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var TO_STRING_TAG_SUPPORT = __webpack_require__(/*! ../internals/to-string-tag-support */ 60069);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var classofRaw = __webpack_require__(/*! ../internals/classof-raw */ 432);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
+var TO_STRING_TAG_SUPPORT = __webpack_require__(/*! ../internals/to-string-tag-support */ 78980);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var classofRaw = __webpack_require__(/*! ../internals/classof-raw */ 40992);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
var $Object = Object;
@@ -849,18 +849,18 @@ module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
/***/ }),
-/***/ 79492:
+/***/ 4474:
/*!***************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/copy-constructor-properties.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/copy-constructor-properties.js ***!
\***************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 45307);
-var ownKeys = __webpack_require__(/*! ../internals/own-keys */ 801);
-var getOwnPropertyDescriptorModule = __webpack_require__(/*! ../internals/object-get-own-property-descriptor */ 3131);
-var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ 86813);
+var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 67514);
+var ownKeys = __webpack_require__(/*! ../internals/own-keys */ 29015);
+var getOwnPropertyDescriptorModule = __webpack_require__(/*! ../internals/object-get-own-property-descriptor */ 87509);
+var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ 91349);
module.exports = function (target, source, exceptions) {
var keys = ownKeys(source);
@@ -877,15 +877,15 @@ module.exports = function (target, source, exceptions) {
/***/ }),
-/***/ 15288:
+/***/ 22043:
/*!***********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/correct-is-regexp-logic.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/correct-is-regexp-logic.js ***!
\***********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
var MATCH = wellKnownSymbol('match');
@@ -904,15 +904,15 @@ module.exports = function (METHOD_NAME) {
/***/ }),
-/***/ 50573:
+/***/ 8496:
/*!************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/correct-prototype-getter.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/correct-prototype-getter.js ***!
\************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
module.exports = !fails(function () {
function F() { /* empty */ }
@@ -924,9 +924,9 @@ module.exports = !fails(function () {
/***/ }),
-/***/ 93885:
+/***/ 75150:
/*!*************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/create-iter-result-object.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/create-iter-result-object.js ***!
\*************************************************************************************/
/***/ (function(module) {
@@ -941,17 +941,17 @@ module.exports = function (value, done) {
/***/ }),
-/***/ 44662:
+/***/ 81462:
/*!******************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/create-non-enumerable-property.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/create-non-enumerable-property.js ***!
\******************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 43235);
-var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ 86813);
-var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ 38631);
+var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 98479);
+var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ 91349);
+var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ 74585);
module.exports = DESCRIPTORS ? function (object, key, value) {
return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
@@ -963,9 +963,9 @@ module.exports = DESCRIPTORS ? function (object, key, value) {
/***/ }),
-/***/ 38631:
+/***/ 74585:
/*!**************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/create-property-descriptor.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/create-property-descriptor.js ***!
\**************************************************************************************/
/***/ (function(module) {
@@ -983,16 +983,16 @@ module.exports = function (bitmap, value) {
/***/ }),
-/***/ 93819:
+/***/ 23798:
/*!************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/define-built-in-accessor.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/define-built-in-accessor.js ***!
\************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var makeBuiltIn = __webpack_require__(/*! ../internals/make-built-in */ 90180);
-var defineProperty = __webpack_require__(/*! ../internals/object-define-property */ 86813);
+var makeBuiltIn = __webpack_require__(/*! ../internals/make-built-in */ 35143);
+var defineProperty = __webpack_require__(/*! ../internals/object-define-property */ 91349);
module.exports = function (target, name, descriptor) {
if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });
@@ -1003,18 +1003,18 @@ module.exports = function (target, name, descriptor) {
/***/ }),
-/***/ 95573:
+/***/ 58393:
/*!***************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/define-built-in.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/define-built-in.js ***!
\***************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ 86813);
-var makeBuiltIn = __webpack_require__(/*! ../internals/make-built-in */ 90180);
-var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ 66152);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ 91349);
+var makeBuiltIn = __webpack_require__(/*! ../internals/make-built-in */ 35143);
+var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ 71345);
module.exports = function (O, key, value, options) {
if (!options) options = {};
@@ -1042,15 +1042,15 @@ module.exports = function (O, key, value, options) {
/***/ }),
-/***/ 66152:
+/***/ 71345:
/*!**********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/define-global-property.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/define-global-property.js ***!
\**********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
// eslint-disable-next-line es/no-object-defineproperty -- safe
var defineProperty = Object.defineProperty;
@@ -1066,15 +1066,15 @@ module.exports = function (key, value) {
/***/ }),
-/***/ 43235:
+/***/ 98479:
/*!***********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/descriptors.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/descriptors.js ***!
\***********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
// Detect IE8's incomplete defineProperty implementation
module.exports = !fails(function () {
@@ -1085,16 +1085,16 @@ module.exports = !fails(function () {
/***/ }),
-/***/ 93704:
+/***/ 86287:
/*!***********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/document-create-element.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/document-create-element.js ***!
\***********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var isObject = __webpack_require__(/*! ../internals/is-object */ 54404);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var isObject = __webpack_require__(/*! ../internals/is-object */ 62518);
var document = global.document;
// typeof document.createElement is 'object' in old IE
@@ -1107,9 +1107,9 @@ module.exports = function (it) {
/***/ }),
-/***/ 42417:
+/***/ 96105:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/dom-iterables.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/dom-iterables.js ***!
\*************************************************************************/
/***/ (function(module) {
@@ -1154,16 +1154,16 @@ module.exports = {
/***/ }),
-/***/ 29749:
+/***/ 1414:
/*!************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/dom-token-list-prototype.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/dom-token-list-prototype.js ***!
\************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`
-var documentCreateElement = __webpack_require__(/*! ../internals/document-create-element */ 93704);
+var documentCreateElement = __webpack_require__(/*! ../internals/document-create-element */ 86287);
var classList = documentCreateElement('span').classList;
var DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;
@@ -1173,16 +1173,16 @@ module.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTok
/***/ }),
-/***/ 13801:
+/***/ 48027:
/*!*****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/engine-is-browser.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/engine-is-browser.js ***!
\*****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var IS_DENO = __webpack_require__(/*! ../internals/engine-is-deno */ 95905);
-var IS_NODE = __webpack_require__(/*! ../internals/engine-is-node */ 13168);
+var IS_DENO = __webpack_require__(/*! ../internals/engine-is-deno */ 69133);
+var IS_NODE = __webpack_require__(/*! ../internals/engine-is-node */ 15848);
module.exports = !IS_DENO && !IS_NODE
&& typeof window == 'object'
@@ -1191,9 +1191,9 @@ module.exports = !IS_DENO && !IS_NODE
/***/ }),
-/***/ 95905:
+/***/ 69133:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/engine-is-deno.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/engine-is-deno.js ***!
\**************************************************************************/
/***/ (function(module) {
@@ -1205,30 +1205,30 @@ module.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'obje
/***/ }),
-/***/ 61714:
+/***/ 55228:
/*!********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/engine-is-ios-pebble.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/engine-is-ios-pebble.js ***!
\********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var userAgent = __webpack_require__(/*! ../internals/engine-user-agent */ 5162);
+var userAgent = __webpack_require__(/*! ../internals/engine-user-agent */ 78327);
module.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';
/***/ }),
-/***/ 80617:
+/***/ 31993:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/engine-is-ios.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/engine-is-ios.js ***!
\*************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var userAgent = __webpack_require__(/*! ../internals/engine-user-agent */ 5162);
+var userAgent = __webpack_require__(/*! ../internals/engine-user-agent */ 78327);
// eslint-disable-next-line redos/no-vulnerable -- safe
module.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);
@@ -1236,40 +1236,40 @@ module.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);
/***/ }),
-/***/ 13168:
+/***/ 15848:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/engine-is-node.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/engine-is-node.js ***!
\**************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var classof = __webpack_require__(/*! ../internals/classof-raw */ 432);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var classof = __webpack_require__(/*! ../internals/classof-raw */ 40992);
module.exports = classof(global.process) === 'process';
/***/ }),
-/***/ 92396:
+/***/ 65633:
/*!**********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/engine-is-webos-webkit.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/engine-is-webos-webkit.js ***!
\**********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var userAgent = __webpack_require__(/*! ../internals/engine-user-agent */ 5162);
+var userAgent = __webpack_require__(/*! ../internals/engine-user-agent */ 78327);
module.exports = /web0s(?!.*chrome)/i.test(userAgent);
/***/ }),
-/***/ 5162:
+/***/ 78327:
/*!*****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/engine-user-agent.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/engine-user-agent.js ***!
\*****************************************************************************/
/***/ (function(module) {
@@ -1280,16 +1280,16 @@ module.exports = typeof navigator != 'undefined' && String(navigator.userAgent)
/***/ }),
-/***/ 30222:
+/***/ 10641:
/*!*****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/engine-v8-version.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/engine-v8-version.js ***!
\*****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var userAgent = __webpack_require__(/*! ../internals/engine-user-agent */ 5162);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var userAgent = __webpack_require__(/*! ../internals/engine-user-agent */ 78327);
var process = global.process;
var Deno = global.Deno;
@@ -1319,9 +1319,9 @@ module.exports = version;
/***/ }),
-/***/ 6340:
+/***/ 79917:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/enum-bug-keys.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/enum-bug-keys.js ***!
\*************************************************************************/
/***/ (function(module) {
@@ -1341,21 +1341,21 @@ module.exports = [
/***/ }),
-/***/ 95308:
+/***/ 15314:
/*!******************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/export.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/export.js ***!
\******************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var getOwnPropertyDescriptor = (__webpack_require__(/*! ../internals/object-get-own-property-descriptor */ 3131).f);
-var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ 44662);
-var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 95573);
-var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ 66152);
-var copyConstructorProperties = __webpack_require__(/*! ../internals/copy-constructor-properties */ 79492);
-var isForced = __webpack_require__(/*! ../internals/is-forced */ 79967);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var getOwnPropertyDescriptor = (__webpack_require__(/*! ../internals/object-get-own-property-descriptor */ 87509).f);
+var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ 81462);
+var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 58393);
+var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ 71345);
+var copyConstructorProperties = __webpack_require__(/*! ../internals/copy-constructor-properties */ 4474);
+var isForced = __webpack_require__(/*! ../internals/is-forced */ 51729);
/*
options.target - name of the target object
@@ -1382,7 +1382,7 @@ module.exports = function (options, source) {
} else if (STATIC) {
target = global[TARGET] || defineGlobalProperty(TARGET, {});
} else {
- target = (global[TARGET] || {}).prototype;
+ target = global[TARGET] && global[TARGET].prototype;
}
if (target) for (key in source) {
sourceProperty = source[key];
@@ -1407,9 +1407,9 @@ module.exports = function (options, source) {
/***/ }),
-/***/ 8469:
+/***/ 98241:
/*!*****************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/fails.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/fails.js ***!
\*****************************************************************/
/***/ (function(module) {
@@ -1426,22 +1426,22 @@ module.exports = function (exec) {
/***/ }),
-/***/ 22645:
+/***/ 36964:
/*!**********************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/fix-regexp-well-known-symbol-logic.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/fix-regexp-well-known-symbol-logic.js ***!
\**********************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
// TODO: Remove from `core-js@4` since it's moved to entry points
-__webpack_require__(/*! ../modules/es.regexp.exec */ 1661);
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this-clause */ 12977);
-var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 95573);
-var regexpExec = __webpack_require__(/*! ../internals/regexp-exec */ 39672);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
-var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ 44662);
+__webpack_require__(/*! ../modules/es.regexp.exec */ 51190);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 58393);
+var regexpExec = __webpack_require__(/*! ../internals/regexp-exec */ 97652);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
+var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ 81462);
var SPECIES = wellKnownSymbol('species');
var RegExpPrototype = RegExp.prototype;
@@ -1450,7 +1450,7 @@ module.exports = function (KEY, exec, FORCED, SHAM) {
var SYMBOL = wellKnownSymbol(KEY);
var DELEGATES_TO_SYMBOL = !fails(function () {
- // String methods call symbol-named RegEp methods
+ // String methods call symbol-named RegExp methods
var O = {};
O[SYMBOL] = function () { return 7; };
return ''[KEY](O) !== 7;
@@ -1488,18 +1488,17 @@ module.exports = function (KEY, exec, FORCED, SHAM) {
!DELEGATES_TO_EXEC ||
FORCED
) {
- var uncurriedNativeRegExpMethod = uncurryThis(/./[SYMBOL]);
+ var nativeRegExpMethod = /./[SYMBOL];
var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
- var uncurriedNativeMethod = uncurryThis(nativeMethod);
var $exec = regexp.exec;
if ($exec === regexpExec || $exec === RegExpPrototype.exec) {
if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
// The native String method already delegates to @@method (this
// polyfilled function), leasing to infinite recursion.
// We avoid it by directly calling the native @@method method.
- return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) };
+ return { done: true, value: call(nativeRegExpMethod, regexp, str, arg2) };
}
- return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) };
+ return { done: true, value: call(nativeMethod, str, regexp, arg2) };
}
return { done: false };
});
@@ -1514,15 +1513,15 @@ module.exports = function (KEY, exec, FORCED, SHAM) {
/***/ }),
-/***/ 53951:
+/***/ 34635:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/function-apply.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/function-apply.js ***!
\**************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ 95959);
+var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ 81714);
var FunctionPrototype = Function.prototype;
var apply = FunctionPrototype.apply;
@@ -1536,17 +1535,17 @@ module.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? c
/***/ }),
-/***/ 61848:
+/***/ 23665:
/*!*********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/function-bind-context.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/function-bind-context.js ***!
\*********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this-clause */ 12977);
-var aCallable = __webpack_require__(/*! ../internals/a-callable */ 95894);
-var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ 95959);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this-clause */ 94657);
+var aCallable = __webpack_require__(/*! ../internals/a-callable */ 73507);
+var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ 81714);
var bind = uncurryThis(uncurryThis.bind);
@@ -1561,15 +1560,15 @@ module.exports = function (fn, that) {
/***/ }),
-/***/ 95959:
+/***/ 81714:
/*!********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/function-bind-native.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/function-bind-native.js ***!
\********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
module.exports = !fails(function () {
// eslint-disable-next-line es/no-function-prototype-bind -- safe
@@ -1581,15 +1580,15 @@ module.exports = !fails(function () {
/***/ }),
-/***/ 27872:
+/***/ 59015:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/function-call.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/function-call.js ***!
\*************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ 95959);
+var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ 81714);
var call = Function.prototype.call;
@@ -1600,16 +1599,16 @@ module.exports = NATIVE_BIND ? call.bind(call) : function () {
/***/ }),
-/***/ 59665:
+/***/ 82997:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/function-name.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/function-name.js ***!
\*************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 43235);
-var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 45307);
+var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 98479);
+var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 67514);
var FunctionPrototype = Function.prototype;
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
@@ -1629,16 +1628,16 @@ module.exports = {
/***/ }),
-/***/ 10931:
+/***/ 81315:
/*!******************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/function-uncurry-this-accessor.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/function-uncurry-this-accessor.js ***!
\******************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var aCallable = __webpack_require__(/*! ../internals/a-callable */ 95894);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var aCallable = __webpack_require__(/*! ../internals/a-callable */ 73507);
module.exports = function (object, key, method) {
try {
@@ -1650,16 +1649,16 @@ module.exports = function (object, key, method) {
/***/ }),
-/***/ 12977:
+/***/ 94657:
/*!****************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/function-uncurry-this-clause.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/function-uncurry-this-clause.js ***!
\****************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var classofRaw = __webpack_require__(/*! ../internals/classof-raw */ 432);
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
+var classofRaw = __webpack_require__(/*! ../internals/classof-raw */ 40992);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
module.exports = function (fn) {
// Nashorn bug:
@@ -1671,15 +1670,15 @@ module.exports = function (fn) {
/***/ }),
-/***/ 9104:
+/***/ 32716:
/*!*********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/function-uncurry-this.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/function-uncurry-this.js ***!
\*********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ 95959);
+var NATIVE_BIND = __webpack_require__(/*! ../internals/function-bind-native */ 81714);
var FunctionPrototype = Function.prototype;
var call = FunctionPrototype.call;
@@ -1694,16 +1693,16 @@ module.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {
/***/ }),
-/***/ 36289:
+/***/ 43920:
/*!************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/get-built-in.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/get-built-in.js ***!
\************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
var aFunction = function (argument) {
return isCallable(argument) ? argument : undefined;
@@ -1716,19 +1715,19 @@ module.exports = function (namespace, method) {
/***/ }),
-/***/ 48952:
+/***/ 24532:
/*!*******************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/get-iterator-method.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/get-iterator-method.js ***!
\*******************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var classof = __webpack_require__(/*! ../internals/classof */ 5857);
-var getMethod = __webpack_require__(/*! ../internals/get-method */ 86157);
-var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 98806);
-var Iterators = __webpack_require__(/*! ../internals/iterators */ 76796);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
+var classof = __webpack_require__(/*! ../internals/classof */ 64418);
+var getMethod = __webpack_require__(/*! ../internals/get-method */ 4525);
+var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 51474);
+var Iterators = __webpack_require__(/*! ../internals/iterators */ 65470);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
var ITERATOR = wellKnownSymbol('iterator');
@@ -1741,19 +1740,19 @@ module.exports = function (it) {
/***/ }),
-/***/ 8643:
+/***/ 2983:
/*!************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/get-iterator.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/get-iterator.js ***!
\************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var aCallable = __webpack_require__(/*! ../internals/a-callable */ 95894);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var tryToString = __webpack_require__(/*! ../internals/try-to-string */ 89635);
-var getIteratorMethod = __webpack_require__(/*! ../internals/get-iterator-method */ 48952);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var aCallable = __webpack_require__(/*! ../internals/a-callable */ 73507);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var tryToString = __webpack_require__(/*! ../internals/try-to-string */ 98552);
+var getIteratorMethod = __webpack_require__(/*! ../internals/get-iterator-method */ 24532);
var $TypeError = TypeError;
@@ -1766,16 +1765,16 @@ module.exports = function (argument, usingIterator) {
/***/ }),
-/***/ 86157:
+/***/ 4525:
/*!**********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/get-method.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/get-method.js ***!
\**********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var aCallable = __webpack_require__(/*! ../internals/a-callable */ 95894);
-var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 98806);
+var aCallable = __webpack_require__(/*! ../internals/a-callable */ 73507);
+var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 51474);
// `GetMethod` abstract operation
// https://tc39.es/ecma262/#sec-getmethod
@@ -1787,16 +1786,16 @@ module.exports = function (V, P) {
/***/ }),
-/***/ 8164:
+/***/ 30159:
/*!****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/get-substitution.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/get-substitution.js ***!
\****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var toObject = __webpack_require__(/*! ../internals/to-object */ 94949);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var toObject = __webpack_require__(/*! ../internals/to-object */ 42989);
var floor = Math.floor;
var charAt = uncurryThis(''.charAt);
@@ -1844,9 +1843,9 @@ module.exports = function (matched, str, position, captures, namedCaptures, repl
/***/ }),
-/***/ 6961:
+/***/ 62015:
/*!******************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/global.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/global.js ***!
\******************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
@@ -1871,16 +1870,16 @@ module.exports =
/***/ }),
-/***/ 45307:
+/***/ 67514:
/*!****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/has-own-property.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/has-own-property.js ***!
\****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var toObject = __webpack_require__(/*! ../internals/to-object */ 94949);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var toObject = __webpack_require__(/*! ../internals/to-object */ 42989);
var hasOwnProperty = uncurryThis({}.hasOwnProperty);
@@ -1894,9 +1893,9 @@ module.exports = Object.hasOwn || function hasOwn(it, key) {
/***/ }),
-/***/ 45891:
+/***/ 85376:
/*!***********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/hidden-keys.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/hidden-keys.js ***!
\***********************************************************************/
/***/ (function(module) {
@@ -1907,9 +1906,9 @@ module.exports = {};
/***/ }),
-/***/ 52958:
+/***/ 75471:
/*!******************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/host-report-errors.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/host-report-errors.js ***!
\******************************************************************************/
/***/ (function(module) {
@@ -1925,32 +1924,32 @@ module.exports = function (a, b) {
/***/ }),
-/***/ 58356:
+/***/ 51690:
/*!****************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/html.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/html.js ***!
\****************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 36289);
+var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 43920);
module.exports = getBuiltIn('document', 'documentElement');
/***/ }),
-/***/ 39673:
+/***/ 32263:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/ie8-dom-define.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/ie8-dom-define.js ***!
\**************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 43235);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var createElement = __webpack_require__(/*! ../internals/document-create-element */ 93704);
+var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 98479);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var createElement = __webpack_require__(/*! ../internals/document-create-element */ 86287);
// Thanks to IE8 for its funny defineProperty
module.exports = !DESCRIPTORS && !fails(function () {
@@ -1963,17 +1962,17 @@ module.exports = !DESCRIPTORS && !fails(function () {
/***/ }),
-/***/ 33861:
+/***/ 94763:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/indexed-object.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/indexed-object.js ***!
\**************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var classof = __webpack_require__(/*! ../internals/classof-raw */ 432);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var classof = __webpack_require__(/*! ../internals/classof-raw */ 40992);
var $Object = Object;
var split = uncurryThis(''.split);
@@ -1990,17 +1989,17 @@ module.exports = fails(function () {
/***/ }),
-/***/ 10204:
+/***/ 14987:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/inspect-source.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/inspect-source.js ***!
\**************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var store = __webpack_require__(/*! ../internals/shared-store */ 28195);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var store = __webpack_require__(/*! ../internals/shared-store */ 48353);
var functionToString = uncurryThis(Function.toString);
@@ -2016,22 +2015,22 @@ module.exports = store.inspectSource;
/***/ }),
-/***/ 82745:
+/***/ 29930:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/internal-state.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/internal-state.js ***!
\**************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var NATIVE_WEAK_MAP = __webpack_require__(/*! ../internals/weak-map-basic-detection */ 35995);
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var isObject = __webpack_require__(/*! ../internals/is-object */ 54404);
-var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ 44662);
-var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 45307);
-var shared = __webpack_require__(/*! ../internals/shared-store */ 28195);
-var sharedKey = __webpack_require__(/*! ../internals/shared-key */ 29355);
-var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ 45891);
+var NATIVE_WEAK_MAP = __webpack_require__(/*! ../internals/weak-map-basic-detection */ 3516);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var isObject = __webpack_require__(/*! ../internals/is-object */ 62518);
+var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ 81462);
+var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 67514);
+var shared = __webpack_require__(/*! ../internals/shared-store */ 48353);
+var sharedKey = __webpack_require__(/*! ../internals/shared-key */ 51698);
+var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ 85376);
var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';
var TypeError = global.TypeError;
@@ -2098,16 +2097,16 @@ module.exports = {
/***/ }),
-/***/ 43598:
+/***/ 63938:
/*!************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/is-array-iterator-method.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/is-array-iterator-method.js ***!
\************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
-var Iterators = __webpack_require__(/*! ../internals/iterators */ 76796);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
+var Iterators = __webpack_require__(/*! ../internals/iterators */ 65470);
var ITERATOR = wellKnownSymbol('iterator');
var ArrayPrototype = Array.prototype;
@@ -2120,15 +2119,15 @@ module.exports = function (it) {
/***/ }),
-/***/ 44206:
+/***/ 96714:
/*!********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/is-array.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/is-array.js ***!
\********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var classof = __webpack_require__(/*! ../internals/classof-raw */ 432);
+var classof = __webpack_require__(/*! ../internals/classof-raw */ 40992);
// `IsArray` abstract operation
// https://tc39.es/ecma262/#sec-isarray
@@ -2140,9 +2139,9 @@ module.exports = Array.isArray || function isArray(argument) {
/***/ }),
-/***/ 26898:
+/***/ 91806:
/*!***********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/is-callable.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/is-callable.js ***!
\***********************************************************************/
/***/ (function(module) {
@@ -2163,23 +2162,22 @@ module.exports = typeof documentAll == 'undefined' && documentAll !== undefined
/***/ }),
-/***/ 14801:
+/***/ 99748:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/is-constructor.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/is-constructor.js ***!
\**************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var classof = __webpack_require__(/*! ../internals/classof */ 5857);
-var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 36289);
-var inspectSource = __webpack_require__(/*! ../internals/inspect-source */ 10204);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var classof = __webpack_require__(/*! ../internals/classof */ 64418);
+var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 43920);
+var inspectSource = __webpack_require__(/*! ../internals/inspect-source */ 14987);
var noop = function () { /* empty */ };
-var empty = [];
var construct = getBuiltIn('Reflect', 'construct');
var constructorRegExp = /^\s*(?:class|function)\b/;
var exec = uncurryThis(constructorRegExp.exec);
@@ -2188,7 +2186,7 @@ var INCORRECT_TO_STRING = !constructorRegExp.test(noop);
var isConstructorModern = function isConstructor(argument) {
if (!isCallable(argument)) return false;
try {
- construct(noop, empty, argument);
+ construct(noop, [], argument);
return true;
} catch (error) {
return false;
@@ -2227,16 +2225,16 @@ module.exports = !construct || fails(function () {
/***/ }),
-/***/ 79967:
+/***/ 51729:
/*!*********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/is-forced.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/is-forced.js ***!
\*********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
var replacement = /#|\.prototype\./;
@@ -2261,9 +2259,9 @@ module.exports = isForced;
/***/ }),
-/***/ 98806:
+/***/ 51474:
/*!********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/is-null-or-undefined.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/is-null-or-undefined.js ***!
\********************************************************************************/
/***/ (function(module) {
@@ -2278,15 +2276,15 @@ module.exports = function (it) {
/***/ }),
-/***/ 54404:
+/***/ 62518:
/*!*********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/is-object.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/is-object.js ***!
\*********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
module.exports = function (it) {
return typeof it == 'object' ? it !== null : isCallable(it);
@@ -2295,15 +2293,15 @@ module.exports = function (it) {
/***/ }),
-/***/ 95813:
+/***/ 36933:
/*!*********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/is-possible-prototype.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/is-possible-prototype.js ***!
\*********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var isObject = __webpack_require__(/*! ../internals/is-object */ 54404);
+var isObject = __webpack_require__(/*! ../internals/is-object */ 62518);
module.exports = function (argument) {
return isObject(argument) || argument === null;
@@ -2312,9 +2310,9 @@ module.exports = function (argument) {
/***/ }),
-/***/ 1824:
+/***/ 55213:
/*!*******************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/is-pure.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/is-pure.js ***!
\*******************************************************************/
/***/ (function(module) {
@@ -2325,17 +2323,17 @@ module.exports = false;
/***/ }),
-/***/ 28789:
+/***/ 41719:
/*!*********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/is-regexp.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/is-regexp.js ***!
\*********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var isObject = __webpack_require__(/*! ../internals/is-object */ 54404);
-var classof = __webpack_require__(/*! ../internals/classof-raw */ 432);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
+var isObject = __webpack_require__(/*! ../internals/is-object */ 62518);
+var classof = __webpack_require__(/*! ../internals/classof-raw */ 40992);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
var MATCH = wellKnownSymbol('match');
@@ -2349,18 +2347,18 @@ module.exports = function (it) {
/***/ }),
-/***/ 63601:
+/***/ 89771:
/*!*********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/is-symbol.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/is-symbol.js ***!
\*********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 36289);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ 59043);
-var USE_SYMBOL_AS_UID = __webpack_require__(/*! ../internals/use-symbol-as-uid */ 96074);
+var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 43920);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ 36470);
+var USE_SYMBOL_AS_UID = __webpack_require__(/*! ../internals/use-symbol-as-uid */ 15982);
var $Object = Object;
@@ -2374,24 +2372,24 @@ module.exports = USE_SYMBOL_AS_UID ? function (it) {
/***/ }),
-/***/ 77837:
+/***/ 72597:
/*!*******************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/iterate.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/iterate.js ***!
\*******************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var bind = __webpack_require__(/*! ../internals/function-bind-context */ 61848);
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var tryToString = __webpack_require__(/*! ../internals/try-to-string */ 89635);
-var isArrayIteratorMethod = __webpack_require__(/*! ../internals/is-array-iterator-method */ 43598);
-var lengthOfArrayLike = __webpack_require__(/*! ../internals/length-of-array-like */ 37895);
-var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ 59043);
-var getIterator = __webpack_require__(/*! ../internals/get-iterator */ 8643);
-var getIteratorMethod = __webpack_require__(/*! ../internals/get-iterator-method */ 48952);
-var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ 46012);
+var bind = __webpack_require__(/*! ../internals/function-bind-context */ 23665);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var tryToString = __webpack_require__(/*! ../internals/try-to-string */ 98552);
+var isArrayIteratorMethod = __webpack_require__(/*! ../internals/is-array-iterator-method */ 63938);
+var lengthOfArrayLike = __webpack_require__(/*! ../internals/length-of-array-like */ 57529);
+var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ 36470);
+var getIterator = __webpack_require__(/*! ../internals/get-iterator */ 2983);
+var getIteratorMethod = __webpack_require__(/*! ../internals/get-iterator-method */ 24532);
+var iteratorClose = __webpack_require__(/*! ../internals/iterator-close */ 37302);
var $TypeError = TypeError;
@@ -2454,17 +2452,17 @@ module.exports = function (iterable, unboundFunction, options) {
/***/ }),
-/***/ 46012:
+/***/ 37302:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/iterator-close.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/iterator-close.js ***!
\**************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var getMethod = __webpack_require__(/*! ../internals/get-method */ 86157);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var getMethod = __webpack_require__(/*! ../internals/get-method */ 4525);
module.exports = function (iterator, kind, value) {
var innerResult, innerError;
@@ -2489,19 +2487,19 @@ module.exports = function (iterator, kind, value) {
/***/ }),
-/***/ 21009:
+/***/ 87663:
/*!***************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/iterator-create-constructor.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/iterator-create-constructor.js ***!
\***************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var IteratorPrototype = (__webpack_require__(/*! ../internals/iterators-core */ 14918).IteratorPrototype);
-var create = __webpack_require__(/*! ../internals/object-create */ 99547);
-var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ 38631);
-var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ 77190);
-var Iterators = __webpack_require__(/*! ../internals/iterators */ 76796);
+var IteratorPrototype = (__webpack_require__(/*! ../internals/iterators-core */ 55733).IteratorPrototype);
+var create = __webpack_require__(/*! ../internals/object-create */ 47759);
+var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ 74585);
+var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ 35179);
+var Iterators = __webpack_require__(/*! ../internals/iterators */ 65470);
var returnThis = function () { return this; };
@@ -2516,28 +2514,28 @@ module.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {
/***/ }),
-/***/ 43287:
+/***/ 21952:
/*!***************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/iterator-define.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/iterator-define.js ***!
\***************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 1824);
-var FunctionName = __webpack_require__(/*! ../internals/function-name */ 59665);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var createIteratorConstructor = __webpack_require__(/*! ../internals/iterator-create-constructor */ 21009);
-var getPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ 34408);
-var setPrototypeOf = __webpack_require__(/*! ../internals/object-set-prototype-of */ 46257);
-var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ 77190);
-var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ 44662);
-var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 95573);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
-var Iterators = __webpack_require__(/*! ../internals/iterators */ 76796);
-var IteratorsCore = __webpack_require__(/*! ../internals/iterators-core */ 14918);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 55213);
+var FunctionName = __webpack_require__(/*! ../internals/function-name */ 82997);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var createIteratorConstructor = __webpack_require__(/*! ../internals/iterator-create-constructor */ 87663);
+var getPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ 58003);
+var setPrototypeOf = __webpack_require__(/*! ../internals/object-set-prototype-of */ 10825);
+var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ 35179);
+var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ 81462);
+var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 58393);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
+var Iterators = __webpack_require__(/*! ../internals/iterators */ 65470);
+var IteratorsCore = __webpack_require__(/*! ../internals/iterators-core */ 55733);
var PROPER_FUNCTION_NAME = FunctionName.PROPER;
var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;
@@ -2629,22 +2627,22 @@ module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, I
/***/ }),
-/***/ 14918:
+/***/ 55733:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/iterators-core.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/iterators-core.js ***!
\**************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var isObject = __webpack_require__(/*! ../internals/is-object */ 54404);
-var create = __webpack_require__(/*! ../internals/object-create */ 99547);
-var getPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ 34408);
-var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 95573);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
-var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 1824);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var isObject = __webpack_require__(/*! ../internals/is-object */ 62518);
+var create = __webpack_require__(/*! ../internals/object-create */ 47759);
+var getPrototypeOf = __webpack_require__(/*! ../internals/object-get-prototype-of */ 58003);
+var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 58393);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
+var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 55213);
var ITERATOR = wellKnownSymbol('iterator');
var BUGGY_SAFARI_ITERATORS = false;
@@ -2689,9 +2687,9 @@ module.exports = {
/***/ }),
-/***/ 76796:
+/***/ 65470:
/*!*********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/iterators.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/iterators.js ***!
\*********************************************************************/
/***/ (function(module) {
@@ -2702,15 +2700,15 @@ module.exports = {};
/***/ }),
-/***/ 37895:
+/***/ 57529:
/*!********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/length-of-array-like.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/length-of-array-like.js ***!
\********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var toLength = __webpack_require__(/*! ../internals/to-length */ 40568);
+var toLength = __webpack_require__(/*! ../internals/to-length */ 39785);
// `LengthOfArrayLike` abstract operation
// https://tc39.es/ecma262/#sec-lengthofarraylike
@@ -2721,22 +2719,22 @@ module.exports = function (obj) {
/***/ }),
-/***/ 90180:
+/***/ 35143:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/make-built-in.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/make-built-in.js ***!
\*************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 45307);
-var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 43235);
-var CONFIGURABLE_FUNCTION_NAME = (__webpack_require__(/*! ../internals/function-name */ 59665).CONFIGURABLE);
-var inspectSource = __webpack_require__(/*! ../internals/inspect-source */ 10204);
-var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ 82745);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 67514);
+var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 98479);
+var CONFIGURABLE_FUNCTION_NAME = (__webpack_require__(/*! ../internals/function-name */ 82997).CONFIGURABLE);
+var inspectSource = __webpack_require__(/*! ../internals/inspect-source */ 14987);
+var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ 29930);
var enforceInternalState = InternalStateModule.enforce;
var getInternalState = InternalStateModule.get;
@@ -2755,7 +2753,7 @@ var TEMPLATE = String(String).split('String');
var makeBuiltIn = module.exports = function (value, name, options) {
if (stringSlice($String(name), 0, 7) === 'Symbol(') {
- name = '[' + replace($String(name), /^Symbol\(([^)]*)\)/, '$1') + ']';
+ name = '[' + replace($String(name), /^Symbol\(([^)]*)\).*$/, '$1') + ']';
}
if (options && options.getter) name = 'get ' + name;
if (options && options.setter) name = 'set ' + name;
@@ -2787,9 +2785,9 @@ Function.prototype.toString = makeBuiltIn(function toString() {
/***/ }),
-/***/ 95668:
+/***/ 68312:
/*!**********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/math-trunc.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/math-trunc.js ***!
\**********************************************************************/
/***/ (function(module) {
@@ -2809,23 +2807,23 @@ module.exports = Math.trunc || function trunc(x) {
/***/ }),
-/***/ 1417:
+/***/ 5538:
/*!*********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/microtask.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/microtask.js ***!
\*********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var safeGetBuiltIn = __webpack_require__(/*! ../internals/safe-get-built-in */ 69896);
-var bind = __webpack_require__(/*! ../internals/function-bind-context */ 61848);
-var macrotask = (__webpack_require__(/*! ../internals/task */ 65229).set);
-var Queue = __webpack_require__(/*! ../internals/queue */ 13122);
-var IS_IOS = __webpack_require__(/*! ../internals/engine-is-ios */ 80617);
-var IS_IOS_PEBBLE = __webpack_require__(/*! ../internals/engine-is-ios-pebble */ 61714);
-var IS_WEBOS_WEBKIT = __webpack_require__(/*! ../internals/engine-is-webos-webkit */ 92396);
-var IS_NODE = __webpack_require__(/*! ../internals/engine-is-node */ 13168);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var safeGetBuiltIn = __webpack_require__(/*! ../internals/safe-get-built-in */ 57223);
+var bind = __webpack_require__(/*! ../internals/function-bind-context */ 23665);
+var macrotask = (__webpack_require__(/*! ../internals/task */ 5788).set);
+var Queue = __webpack_require__(/*! ../internals/queue */ 47515);
+var IS_IOS = __webpack_require__(/*! ../internals/engine-is-ios */ 31993);
+var IS_IOS_PEBBLE = __webpack_require__(/*! ../internals/engine-is-ios-pebble */ 55228);
+var IS_WEBOS_WEBKIT = __webpack_require__(/*! ../internals/engine-is-webos-webkit */ 65633);
+var IS_NODE = __webpack_require__(/*! ../internals/engine-is-node */ 15848);
var MutationObserver = global.MutationObserver || global.WebKitMutationObserver;
var document = global.document;
@@ -2899,15 +2897,15 @@ module.exports = microtask;
/***/ }),
-/***/ 19909:
+/***/ 6790:
/*!**********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/new-promise-capability.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/new-promise-capability.js ***!
\**********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var aCallable = __webpack_require__(/*! ../internals/a-callable */ 95894);
+var aCallable = __webpack_require__(/*! ../internals/a-callable */ 73507);
var $TypeError = TypeError;
@@ -2931,15 +2929,15 @@ module.exports.f = function (C) {
/***/ }),
-/***/ 53831:
+/***/ 57073:
/*!************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/not-a-regexp.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/not-a-regexp.js ***!
\************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var isRegExp = __webpack_require__(/*! ../internals/is-regexp */ 28789);
+var isRegExp = __webpack_require__(/*! ../internals/is-regexp */ 41719);
var $TypeError = TypeError;
@@ -2952,22 +2950,22 @@ module.exports = function (it) {
/***/ }),
-/***/ 99547:
+/***/ 47759:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-create.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-create.js ***!
\*************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
/* global ActiveXObject -- old IE, WSH */
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var definePropertiesModule = __webpack_require__(/*! ../internals/object-define-properties */ 15445);
-var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ 6340);
-var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ 45891);
-var html = __webpack_require__(/*! ../internals/html */ 58356);
-var documentCreateElement = __webpack_require__(/*! ../internals/document-create-element */ 93704);
-var sharedKey = __webpack_require__(/*! ../internals/shared-key */ 29355);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var definePropertiesModule = __webpack_require__(/*! ../internals/object-define-properties */ 29882);
+var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ 79917);
+var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ 85376);
+var html = __webpack_require__(/*! ../internals/html */ 51690);
+var documentCreateElement = __webpack_require__(/*! ../internals/document-create-element */ 86287);
+var sharedKey = __webpack_require__(/*! ../internals/shared-key */ 51698);
var GT = '>';
var LT = '<';
@@ -3047,20 +3045,20 @@ module.exports = Object.create || function create(O, Properties) {
/***/ }),
-/***/ 15445:
+/***/ 29882:
/*!************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-define-properties.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-define-properties.js ***!
\************************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
-var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 43235);
-var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(/*! ../internals/v8-prototype-define-bug */ 69819);
-var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ 86813);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ 63526);
-var objectKeys = __webpack_require__(/*! ../internals/object-keys */ 26458);
+var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 98479);
+var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(/*! ../internals/v8-prototype-define-bug */ 31238);
+var definePropertyModule = __webpack_require__(/*! ../internals/object-define-property */ 91349);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ 44273);
+var objectKeys = __webpack_require__(/*! ../internals/object-keys */ 4793);
// `Object.defineProperties` method
// https://tc39.es/ecma262/#sec-object.defineproperties
@@ -3079,19 +3077,19 @@ exports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties :
/***/ }),
-/***/ 86813:
+/***/ 91349:
/*!**********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-define-property.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-define-property.js ***!
\**********************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
-var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 43235);
-var IE8_DOM_DEFINE = __webpack_require__(/*! ../internals/ie8-dom-define */ 39673);
-var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(/*! ../internals/v8-prototype-define-bug */ 69819);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var toPropertyKey = __webpack_require__(/*! ../internals/to-property-key */ 29977);
+var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 98479);
+var IE8_DOM_DEFINE = __webpack_require__(/*! ../internals/ie8-dom-define */ 32263);
+var V8_PROTOTYPE_DEFINE_BUG = __webpack_require__(/*! ../internals/v8-prototype-define-bug */ 31238);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var toPropertyKey = __webpack_require__(/*! ../internals/to-property-key */ 85821);
var $TypeError = TypeError;
// eslint-disable-next-line es/no-object-defineproperty -- safe
@@ -3134,22 +3132,22 @@ exports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P
/***/ }),
-/***/ 3131:
+/***/ 87509:
/*!**********************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-get-own-property-descriptor.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-get-own-property-descriptor.js ***!
\**********************************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
-var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 43235);
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var propertyIsEnumerableModule = __webpack_require__(/*! ../internals/object-property-is-enumerable */ 67493);
-var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ 38631);
-var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ 63526);
-var toPropertyKey = __webpack_require__(/*! ../internals/to-property-key */ 29977);
-var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 45307);
-var IE8_DOM_DEFINE = __webpack_require__(/*! ../internals/ie8-dom-define */ 39673);
+var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 98479);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var propertyIsEnumerableModule = __webpack_require__(/*! ../internals/object-property-is-enumerable */ 78949);
+var createPropertyDescriptor = __webpack_require__(/*! ../internals/create-property-descriptor */ 74585);
+var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ 44273);
+var toPropertyKey = __webpack_require__(/*! ../internals/to-property-key */ 85821);
+var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 67514);
+var IE8_DOM_DEFINE = __webpack_require__(/*! ../internals/ie8-dom-define */ 32263);
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
@@ -3168,16 +3166,16 @@ exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDes
/***/ }),
-/***/ 85275:
+/***/ 37791:
/*!*****************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-get-own-property-names.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-get-own-property-names.js ***!
\*****************************************************************************************/
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
-var internalObjectKeys = __webpack_require__(/*! ../internals/object-keys-internal */ 94236);
-var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ 6340);
+var internalObjectKeys = __webpack_require__(/*! ../internals/object-keys-internal */ 18822);
+var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ 79917);
var hiddenKeys = enumBugKeys.concat('length', 'prototype');
@@ -3191,9 +3189,9 @@ exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
/***/ }),
-/***/ 38551:
+/***/ 31794:
/*!*******************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-get-own-property-symbols.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-get-own-property-symbols.js ***!
\*******************************************************************************************/
/***/ (function(__unused_webpack_module, exports) {
@@ -3205,19 +3203,19 @@ exports.f = Object.getOwnPropertySymbols;
/***/ }),
-/***/ 34408:
+/***/ 58003:
/*!***********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-get-prototype-of.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-get-prototype-of.js ***!
\***********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 45307);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var toObject = __webpack_require__(/*! ../internals/to-object */ 94949);
-var sharedKey = __webpack_require__(/*! ../internals/shared-key */ 29355);
-var CORRECT_PROTOTYPE_GETTER = __webpack_require__(/*! ../internals/correct-prototype-getter */ 50573);
+var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 67514);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var toObject = __webpack_require__(/*! ../internals/to-object */ 42989);
+var sharedKey = __webpack_require__(/*! ../internals/shared-key */ 51698);
+var CORRECT_PROTOTYPE_GETTER = __webpack_require__(/*! ../internals/correct-prototype-getter */ 8496);
var IE_PROTO = sharedKey('IE_PROTO');
var $Object = Object;
@@ -3238,34 +3236,34 @@ module.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O
/***/ }),
-/***/ 59043:
+/***/ 36470:
/*!**********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-is-prototype-of.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-is-prototype-of.js ***!
\**********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
module.exports = uncurryThis({}.isPrototypeOf);
/***/ }),
-/***/ 94236:
+/***/ 18822:
/*!********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-keys-internal.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-keys-internal.js ***!
\********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 45307);
-var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ 63526);
-var indexOf = (__webpack_require__(/*! ../internals/array-includes */ 6885).indexOf);
-var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ 45891);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 67514);
+var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ 44273);
+var indexOf = (__webpack_require__(/*! ../internals/array-includes */ 72693).indexOf);
+var hiddenKeys = __webpack_require__(/*! ../internals/hidden-keys */ 85376);
var push = uncurryThis([].push);
@@ -3285,16 +3283,16 @@ module.exports = function (object, names) {
/***/ }),
-/***/ 26458:
+/***/ 4793:
/*!***********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-keys.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-keys.js ***!
\***********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var internalObjectKeys = __webpack_require__(/*! ../internals/object-keys-internal */ 94236);
-var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ 6340);
+var internalObjectKeys = __webpack_require__(/*! ../internals/object-keys-internal */ 18822);
+var enumBugKeys = __webpack_require__(/*! ../internals/enum-bug-keys */ 79917);
// `Object.keys` method
// https://tc39.es/ecma262/#sec-object.keys
@@ -3306,9 +3304,9 @@ module.exports = Object.keys || function keys(O) {
/***/ }),
-/***/ 67493:
+/***/ 78949:
/*!*****************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-property-is-enumerable.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-property-is-enumerable.js ***!
\*****************************************************************************************/
/***/ (function(__unused_webpack_module, exports) {
@@ -3331,18 +3329,18 @@ exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
/***/ }),
-/***/ 46257:
+/***/ 10825:
/*!***********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/object-set-prototype-of.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/object-set-prototype-of.js ***!
\***********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
/* eslint-disable no-proto -- safe */
-var uncurryThisAccessor = __webpack_require__(/*! ../internals/function-uncurry-this-accessor */ 10931);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var aPossiblePrototype = __webpack_require__(/*! ../internals/a-possible-prototype */ 35003);
+var uncurryThisAccessor = __webpack_require__(/*! ../internals/function-uncurry-this-accessor */ 81315);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var aPossiblePrototype = __webpack_require__(/*! ../internals/a-possible-prototype */ 31347);
// `Object.setPrototypeOf` method
// https://tc39.es/ecma262/#sec-object.setprototypeof
@@ -3369,17 +3367,17 @@ module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
/***/ }),
-/***/ 4727:
+/***/ 68798:
/*!*********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/ordinary-to-primitive.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/ordinary-to-primitive.js ***!
\*********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var isObject = __webpack_require__(/*! ../internals/is-object */ 54404);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var isObject = __webpack_require__(/*! ../internals/is-object */ 62518);
var $TypeError = TypeError;
@@ -3396,19 +3394,19 @@ module.exports = function (input, pref) {
/***/ }),
-/***/ 801:
+/***/ 29015:
/*!********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/own-keys.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/own-keys.js ***!
\********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 36289);
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var getOwnPropertyNamesModule = __webpack_require__(/*! ../internals/object-get-own-property-names */ 85275);
-var getOwnPropertySymbolsModule = __webpack_require__(/*! ../internals/object-get-own-property-symbols */ 38551);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
+var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 43920);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var getOwnPropertyNamesModule = __webpack_require__(/*! ../internals/object-get-own-property-names */ 37791);
+var getOwnPropertySymbolsModule = __webpack_require__(/*! ../internals/object-get-own-property-symbols */ 31794);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
var concat = uncurryThis([].concat);
@@ -3422,9 +3420,9 @@ module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
/***/ }),
-/***/ 79019:
+/***/ 19528:
/*!*******************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/perform.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/perform.js ***!
\*******************************************************************/
/***/ (function(module) {
@@ -3441,24 +3439,24 @@ module.exports = function (exec) {
/***/ }),
-/***/ 68168:
+/***/ 67396:
/*!*****************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/promise-constructor-detection.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/promise-constructor-detection.js ***!
\*****************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var NativePromiseConstructor = __webpack_require__(/*! ../internals/promise-native-constructor */ 6707);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var isForced = __webpack_require__(/*! ../internals/is-forced */ 79967);
-var inspectSource = __webpack_require__(/*! ../internals/inspect-source */ 10204);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
-var IS_BROWSER = __webpack_require__(/*! ../internals/engine-is-browser */ 13801);
-var IS_DENO = __webpack_require__(/*! ../internals/engine-is-deno */ 95905);
-var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 1824);
-var V8_VERSION = __webpack_require__(/*! ../internals/engine-v8-version */ 30222);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var NativePromiseConstructor = __webpack_require__(/*! ../internals/promise-native-constructor */ 34059);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var isForced = __webpack_require__(/*! ../internals/is-forced */ 51729);
+var inspectSource = __webpack_require__(/*! ../internals/inspect-source */ 14987);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
+var IS_BROWSER = __webpack_require__(/*! ../internals/engine-is-browser */ 48027);
+var IS_DENO = __webpack_require__(/*! ../internals/engine-is-deno */ 69133);
+var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 55213);
+var V8_VERSION = __webpack_require__(/*! ../internals/engine-v8-version */ 10641);
var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;
var SPECIES = wellKnownSymbol('species');
@@ -3500,32 +3498,32 @@ module.exports = {
/***/ }),
-/***/ 6707:
+/***/ 34059:
/*!**************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/promise-native-constructor.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/promise-native-constructor.js ***!
\**************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
module.exports = global.Promise;
/***/ }),
-/***/ 18825:
+/***/ 2370:
/*!***************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/promise-resolve.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/promise-resolve.js ***!
\***************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var isObject = __webpack_require__(/*! ../internals/is-object */ 54404);
-var newPromiseCapability = __webpack_require__(/*! ../internals/new-promise-capability */ 19909);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var isObject = __webpack_require__(/*! ../internals/is-object */ 62518);
+var newPromiseCapability = __webpack_require__(/*! ../internals/new-promise-capability */ 6790);
module.exports = function (C, x) {
anObject(C);
@@ -3539,17 +3537,17 @@ module.exports = function (C, x) {
/***/ }),
-/***/ 33422:
+/***/ 14194:
/*!***********************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/promise-statics-incorrect-iteration.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/promise-statics-incorrect-iteration.js ***!
\***********************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var NativePromiseConstructor = __webpack_require__(/*! ../internals/promise-native-constructor */ 6707);
-var checkCorrectnessOfIteration = __webpack_require__(/*! ../internals/check-correctness-of-iteration */ 44104);
-var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(/*! ../internals/promise-constructor-detection */ 68168).CONSTRUCTOR);
+var NativePromiseConstructor = __webpack_require__(/*! ../internals/promise-native-constructor */ 34059);
+var checkCorrectnessOfIteration = __webpack_require__(/*! ../internals/check-correctness-of-iteration */ 6363);
+var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(/*! ../internals/promise-constructor-detection */ 67396).CONSTRUCTOR);
module.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {
NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });
@@ -3558,9 +3556,9 @@ module.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(func
/***/ }),
-/***/ 13122:
+/***/ 47515:
/*!*****************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/queue.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/queue.js ***!
\*****************************************************************/
/***/ (function(module) {
@@ -3594,19 +3592,19 @@ module.exports = Queue;
/***/ }),
-/***/ 89247:
+/***/ 78505:
/*!********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/regexp-exec-abstract.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/regexp-exec-abstract.js ***!
\********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var classof = __webpack_require__(/*! ../internals/classof-raw */ 432);
-var regexpExec = __webpack_require__(/*! ../internals/regexp-exec */ 39672);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var classof = __webpack_require__(/*! ../internals/classof-raw */ 40992);
+var regexpExec = __webpack_require__(/*! ../internals/regexp-exec */ 97652);
var $TypeError = TypeError;
@@ -3626,9 +3624,9 @@ module.exports = function (R, S) {
/***/ }),
-/***/ 39672:
+/***/ 97652:
/*!***********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/regexp-exec.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/regexp-exec.js ***!
\***********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
@@ -3636,16 +3634,16 @@ module.exports = function (R, S) {
/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */
/* eslint-disable regexp/no-useless-quantifier -- testing */
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var toString = __webpack_require__(/*! ../internals/to-string */ 47718);
-var regexpFlags = __webpack_require__(/*! ../internals/regexp-flags */ 93942);
-var stickyHelpers = __webpack_require__(/*! ../internals/regexp-sticky-helpers */ 78489);
-var shared = __webpack_require__(/*! ../internals/shared */ 97407);
-var create = __webpack_require__(/*! ../internals/object-create */ 99547);
-var getInternalState = (__webpack_require__(/*! ../internals/internal-state */ 82745).get);
-var UNSUPPORTED_DOT_ALL = __webpack_require__(/*! ../internals/regexp-unsupported-dot-all */ 54042);
-var UNSUPPORTED_NCG = __webpack_require__(/*! ../internals/regexp-unsupported-ncg */ 48366);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var toString = __webpack_require__(/*! ../internals/to-string */ 98957);
+var regexpFlags = __webpack_require__(/*! ../internals/regexp-flags */ 30104);
+var stickyHelpers = __webpack_require__(/*! ../internals/regexp-sticky-helpers */ 87924);
+var shared = __webpack_require__(/*! ../internals/shared */ 98910);
+var create = __webpack_require__(/*! ../internals/object-create */ 47759);
+var getInternalState = (__webpack_require__(/*! ../internals/internal-state */ 29930).get);
+var UNSUPPORTED_DOT_ALL = __webpack_require__(/*! ../internals/regexp-unsupported-dot-all */ 87629);
+var UNSUPPORTED_NCG = __webpack_require__(/*! ../internals/regexp-unsupported-ncg */ 44432);
var nativeReplace = shared('native-string-replace', String.prototype.replace);
var nativeExec = RegExp.prototype.exec;
@@ -3754,15 +3752,15 @@ module.exports = patchedExec;
/***/ }),
-/***/ 93942:
+/***/ 30104:
/*!************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/regexp-flags.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/regexp-flags.js ***!
\************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
// `RegExp.prototype.flags` getter implementation
// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
@@ -3783,18 +3781,18 @@ module.exports = function () {
/***/ }),
-/***/ 31567:
+/***/ 79093:
/*!****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/regexp-get-flags.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/regexp-get-flags.js ***!
\****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 45307);
-var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ 59043);
-var regExpFlags = __webpack_require__(/*! ../internals/regexp-flags */ 93942);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 67514);
+var isPrototypeOf = __webpack_require__(/*! ../internals/object-is-prototype-of */ 36470);
+var regExpFlags = __webpack_require__(/*! ../internals/regexp-flags */ 30104);
var RegExpPrototype = RegExp.prototype;
@@ -3807,16 +3805,16 @@ module.exports = function (R) {
/***/ }),
-/***/ 78489:
+/***/ 87924:
/*!*********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/regexp-sticky-helpers.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/regexp-sticky-helpers.js ***!
\*********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var global = __webpack_require__(/*! ../internals/global */ 6961);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
var $RegExp = global.RegExp;
@@ -3849,16 +3847,16 @@ module.exports = {
/***/ }),
-/***/ 54042:
+/***/ 87629:
/*!**************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/regexp-unsupported-dot-all.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/regexp-unsupported-dot-all.js ***!
\**************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var global = __webpack_require__(/*! ../internals/global */ 6961);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError
var $RegExp = global.RegExp;
@@ -3871,16 +3869,16 @@ module.exports = fails(function () {
/***/ }),
-/***/ 48366:
+/***/ 44432:
/*!**********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/regexp-unsupported-ncg.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/regexp-unsupported-ncg.js ***!
\**********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var global = __webpack_require__(/*! ../internals/global */ 6961);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError
var $RegExp = global.RegExp;
@@ -3894,15 +3892,15 @@ module.exports = fails(function () {
/***/ }),
-/***/ 12037:
+/***/ 87799:
/*!************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/require-object-coercible.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/require-object-coercible.js ***!
\************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 98806);
+var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 51474);
var $TypeError = TypeError;
@@ -3916,16 +3914,16 @@ module.exports = function (it) {
/***/ }),
-/***/ 69896:
+/***/ 57223:
/*!*****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/safe-get-built-in.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/safe-get-built-in.js ***!
\*****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 43235);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 98479);
// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
@@ -3940,18 +3938,18 @@ module.exports = function (name) {
/***/ }),
-/***/ 71420:
+/***/ 83085:
/*!***********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/set-species.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/set-species.js ***!
\***********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 36289);
-var defineBuiltInAccessor = __webpack_require__(/*! ../internals/define-built-in-accessor */ 93819);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
-var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 43235);
+var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 43920);
+var defineBuiltInAccessor = __webpack_require__(/*! ../internals/define-built-in-accessor */ 23798);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
+var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 98479);
var SPECIES = wellKnownSymbol('species');
@@ -3969,17 +3967,17 @@ module.exports = function (CONSTRUCTOR_NAME) {
/***/ }),
-/***/ 77190:
+/***/ 35179:
/*!*****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/set-to-string-tag.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/set-to-string-tag.js ***!
\*****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ 86813).f);
-var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 45307);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
+var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ 91349).f);
+var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 67514);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
@@ -3993,16 +3991,16 @@ module.exports = function (target, TAG, STATIC) {
/***/ }),
-/***/ 29355:
+/***/ 51698:
/*!**********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/shared-key.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/shared-key.js ***!
\**********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var shared = __webpack_require__(/*! ../internals/shared */ 97407);
-var uid = __webpack_require__(/*! ../internals/uid */ 77696);
+var shared = __webpack_require__(/*! ../internals/shared */ 98910);
+var uid = __webpack_require__(/*! ../internals/uid */ 39688);
var keys = shared('keys');
@@ -4013,16 +4011,16 @@ module.exports = function (key) {
/***/ }),
-/***/ 28195:
+/***/ 48353:
/*!************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/shared-store.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/shared-store.js ***!
\************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ 66152);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var defineGlobalProperty = __webpack_require__(/*! ../internals/define-global-property */ 71345);
var SHARED = '__core-js_shared__';
var store = global[SHARED] || defineGlobalProperty(SHARED, {});
@@ -4032,42 +4030,42 @@ module.exports = store;
/***/ }),
-/***/ 97407:
+/***/ 98910:
/*!******************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/shared.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/shared.js ***!
\******************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 1824);
-var store = __webpack_require__(/*! ../internals/shared-store */ 28195);
+var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 55213);
+var store = __webpack_require__(/*! ../internals/shared-store */ 48353);
(module.exports = function (key, value) {
return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
- version: '3.35.0',
+ version: '3.35.1',
mode: IS_PURE ? 'pure' : 'global',
- copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',
- license: 'https://github.com/zloirock/core-js/blob/v3.35.0/LICENSE',
+ copyright: '© 2014-2024 Denis Pushkarev (zloirock.ru)',
+ license: 'https://github.com/zloirock/core-js/blob/v3.35.1/LICENSE',
source: 'https://github.com/zloirock/core-js'
});
/***/ }),
-/***/ 78408:
+/***/ 27021:
/*!*******************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/species-constructor.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/species-constructor.js ***!
\*******************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var aConstructor = __webpack_require__(/*! ../internals/a-constructor */ 50014);
-var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 98806);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var aConstructor = __webpack_require__(/*! ../internals/a-constructor */ 53513);
+var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 51474);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
var SPECIES = wellKnownSymbol('species');
@@ -4082,18 +4080,18 @@ module.exports = function (O, defaultConstructor) {
/***/ }),
-/***/ 12685:
+/***/ 87282:
/*!****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/string-multibyte.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/string-multibyte.js ***!
\****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ 36392);
-var toString = __webpack_require__(/*! ../internals/to-string */ 47718);
-var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 12037);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ 16360);
+var toString = __webpack_require__(/*! ../internals/to-string */ 98957);
+var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 87799);
var charAt = uncurryThis(''.charAt);
var charCodeAt = uncurryThis(''.charCodeAt);
@@ -4130,17 +4128,17 @@ module.exports = {
/***/ }),
-/***/ 15113:
+/***/ 36213:
/*!******************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/string-trim-forced.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/string-trim-forced.js ***!
\******************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var PROPER_FUNCTION_NAME = (__webpack_require__(/*! ../internals/function-name */ 59665).PROPER);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var whitespaces = __webpack_require__(/*! ../internals/whitespaces */ 93793);
+var PROPER_FUNCTION_NAME = (__webpack_require__(/*! ../internals/function-name */ 82997).PROPER);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var whitespaces = __webpack_require__(/*! ../internals/whitespaces */ 54625);
var non = '\u200B\u0085\u180E';
@@ -4157,18 +4155,18 @@ module.exports = function (METHOD_NAME) {
/***/ }),
-/***/ 57875:
+/***/ 21504:
/*!***********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/string-trim.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/string-trim.js ***!
\***********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 12037);
-var toString = __webpack_require__(/*! ../internals/to-string */ 47718);
-var whitespaces = __webpack_require__(/*! ../internals/whitespaces */ 93793);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 87799);
+var toString = __webpack_require__(/*! ../internals/to-string */ 98957);
+var whitespaces = __webpack_require__(/*! ../internals/whitespaces */ 54625);
var replace = uncurryThis(''.replace);
var ltrim = RegExp('^[' + whitespaces + ']+');
@@ -4199,18 +4197,18 @@ module.exports = {
/***/ }),
-/***/ 20664:
+/***/ 44254:
/*!****************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/symbol-constructor-detection.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/symbol-constructor-detection.js ***!
\****************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
/* eslint-disable es/no-symbol -- required for testing */
-var V8_VERSION = __webpack_require__(/*! ../internals/engine-v8-version */ 30222);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var global = __webpack_require__(/*! ../internals/global */ 6961);
+var V8_VERSION = __webpack_require__(/*! ../internals/engine-v8-version */ 10641);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
var $String = global.String;
@@ -4229,26 +4227,26 @@ module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
/***/ }),
-/***/ 65229:
+/***/ 5788:
/*!****************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/task.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/task.js ***!
\****************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var apply = __webpack_require__(/*! ../internals/function-apply */ 53951);
-var bind = __webpack_require__(/*! ../internals/function-bind-context */ 61848);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 45307);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var html = __webpack_require__(/*! ../internals/html */ 58356);
-var arraySlice = __webpack_require__(/*! ../internals/array-slice */ 42358);
-var createElement = __webpack_require__(/*! ../internals/document-create-element */ 93704);
-var validateArgumentsLength = __webpack_require__(/*! ../internals/validate-arguments-length */ 64919);
-var IS_IOS = __webpack_require__(/*! ../internals/engine-is-ios */ 80617);
-var IS_NODE = __webpack_require__(/*! ../internals/engine-is-node */ 13168);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var apply = __webpack_require__(/*! ../internals/function-apply */ 34635);
+var bind = __webpack_require__(/*! ../internals/function-bind-context */ 23665);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 67514);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var html = __webpack_require__(/*! ../internals/html */ 51690);
+var arraySlice = __webpack_require__(/*! ../internals/array-slice */ 86775);
+var createElement = __webpack_require__(/*! ../internals/document-create-element */ 86287);
+var validateArgumentsLength = __webpack_require__(/*! ../internals/validate-arguments-length */ 26656);
+var IS_IOS = __webpack_require__(/*! ../internals/engine-is-ios */ 31993);
+var IS_NODE = __webpack_require__(/*! ../internals/engine-is-node */ 15848);
var set = global.setImmediate;
var clear = global.clearImmediate;
@@ -4357,15 +4355,15 @@ module.exports = {
/***/ }),
-/***/ 65518:
+/***/ 17807:
/*!*****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/to-absolute-index.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/to-absolute-index.js ***!
\*****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ 36392);
+var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ 16360);
var max = Math.max;
var min = Math.min;
@@ -4381,17 +4379,17 @@ module.exports = function (index, length) {
/***/ }),
-/***/ 63526:
+/***/ 44273:
/*!*****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/to-indexed-object.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/to-indexed-object.js ***!
\*****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
// toObject with fallback for non-array-like ES3 strings
-var IndexedObject = __webpack_require__(/*! ../internals/indexed-object */ 33861);
-var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 12037);
+var IndexedObject = __webpack_require__(/*! ../internals/indexed-object */ 94763);
+var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 87799);
module.exports = function (it) {
return IndexedObject(requireObjectCoercible(it));
@@ -4400,15 +4398,15 @@ module.exports = function (it) {
/***/ }),
-/***/ 36392:
+/***/ 16360:
/*!**********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/to-integer-or-infinity.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/to-integer-or-infinity.js ***!
\**********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var trunc = __webpack_require__(/*! ../internals/math-trunc */ 95668);
+var trunc = __webpack_require__(/*! ../internals/math-trunc */ 68312);
// `ToIntegerOrInfinity` abstract operation
// https://tc39.es/ecma262/#sec-tointegerorinfinity
@@ -4421,36 +4419,37 @@ module.exports = function (argument) {
/***/ }),
-/***/ 40568:
+/***/ 39785:
/*!*********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/to-length.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/to-length.js ***!
\*********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ 36392);
+var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ 16360);
var min = Math.min;
// `ToLength` abstract operation
// https://tc39.es/ecma262/#sec-tolength
module.exports = function (argument) {
- return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
+ var len = toIntegerOrInfinity(argument);
+ return len > 0 ? min(len, 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
};
/***/ }),
-/***/ 94949:
+/***/ 42989:
/*!*********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/to-object.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/to-object.js ***!
\*********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 12037);
+var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 87799);
var $Object = Object;
@@ -4463,20 +4462,20 @@ module.exports = function (argument) {
/***/ }),
-/***/ 13345:
+/***/ 31538:
/*!************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/to-primitive.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/to-primitive.js ***!
\************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var isObject = __webpack_require__(/*! ../internals/is-object */ 54404);
-var isSymbol = __webpack_require__(/*! ../internals/is-symbol */ 63601);
-var getMethod = __webpack_require__(/*! ../internals/get-method */ 86157);
-var ordinaryToPrimitive = __webpack_require__(/*! ../internals/ordinary-to-primitive */ 4727);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var isObject = __webpack_require__(/*! ../internals/is-object */ 62518);
+var isSymbol = __webpack_require__(/*! ../internals/is-symbol */ 89771);
+var getMethod = __webpack_require__(/*! ../internals/get-method */ 4525);
+var ordinaryToPrimitive = __webpack_require__(/*! ../internals/ordinary-to-primitive */ 68798);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
var $TypeError = TypeError;
var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');
@@ -4500,16 +4499,16 @@ module.exports = function (input, pref) {
/***/ }),
-/***/ 29977:
+/***/ 85821:
/*!***************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/to-property-key.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/to-property-key.js ***!
\***************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var toPrimitive = __webpack_require__(/*! ../internals/to-primitive */ 13345);
-var isSymbol = __webpack_require__(/*! ../internals/is-symbol */ 63601);
+var toPrimitive = __webpack_require__(/*! ../internals/to-primitive */ 31538);
+var isSymbol = __webpack_require__(/*! ../internals/is-symbol */ 89771);
// `ToPropertyKey` abstract operation
// https://tc39.es/ecma262/#sec-topropertykey
@@ -4521,15 +4520,15 @@ module.exports = function (argument) {
/***/ }),
-/***/ 60069:
+/***/ 78980:
/*!*********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/to-string-tag-support.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/to-string-tag-support.js ***!
\*********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
var test = {};
@@ -4541,15 +4540,15 @@ module.exports = String(test) === '[object z]';
/***/ }),
-/***/ 47718:
+/***/ 98957:
/*!*********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/to-string.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/to-string.js ***!
\*********************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var classof = __webpack_require__(/*! ../internals/classof */ 5857);
+var classof = __webpack_require__(/*! ../internals/classof */ 64418);
var $String = String;
@@ -4561,9 +4560,9 @@ module.exports = function (argument) {
/***/ }),
-/***/ 89635:
+/***/ 98552:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/try-to-string.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/try-to-string.js ***!
\*************************************************************************/
/***/ (function(module) {
@@ -4582,15 +4581,15 @@ module.exports = function (argument) {
/***/ }),
-/***/ 77696:
+/***/ 39688:
/*!***************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/uid.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/uid.js ***!
\***************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
var id = 0;
var postfix = Math.random();
@@ -4603,16 +4602,16 @@ module.exports = function (key) {
/***/ }),
-/***/ 96074:
+/***/ 15982:
/*!*****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/use-symbol-as-uid.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/use-symbol-as-uid.js ***!
\*****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
/* eslint-disable es/no-symbol -- required for testing */
-var NATIVE_SYMBOL = __webpack_require__(/*! ../internals/symbol-constructor-detection */ 20664);
+var NATIVE_SYMBOL = __webpack_require__(/*! ../internals/symbol-constructor-detection */ 44254);
module.exports = NATIVE_SYMBOL
&& !Symbol.sham
@@ -4621,16 +4620,16 @@ module.exports = NATIVE_SYMBOL
/***/ }),
-/***/ 69819:
+/***/ 31238:
/*!***********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/v8-prototype-define-bug.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/v8-prototype-define-bug.js ***!
\***********************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 43235);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
+var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 98479);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
// V8 ~ Chrome 36-
// https://bugs.chromium.org/p/v8/issues/detail?id=3334
@@ -4645,9 +4644,9 @@ module.exports = DESCRIPTORS && fails(function () {
/***/ }),
-/***/ 64919:
+/***/ 26656:
/*!*************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/validate-arguments-length.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/validate-arguments-length.js ***!
\*************************************************************************************/
/***/ (function(module) {
@@ -4663,16 +4662,16 @@ module.exports = function (passed, required) {
/***/ }),
-/***/ 35995:
+/***/ 3516:
/*!************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/weak-map-basic-detection.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/weak-map-basic-detection.js ***!
\************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
var WeakMap = global.WeakMap;
@@ -4681,20 +4680,20 @@ module.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));
/***/ }),
-/***/ 21567:
+/***/ 85620:
/*!*****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/well-known-symbol.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/well-known-symbol.js ***!
\*****************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var shared = __webpack_require__(/*! ../internals/shared */ 97407);
-var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 45307);
-var uid = __webpack_require__(/*! ../internals/uid */ 77696);
-var NATIVE_SYMBOL = __webpack_require__(/*! ../internals/symbol-constructor-detection */ 20664);
-var USE_SYMBOL_AS_UID = __webpack_require__(/*! ../internals/use-symbol-as-uid */ 96074);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var shared = __webpack_require__(/*! ../internals/shared */ 98910);
+var hasOwn = __webpack_require__(/*! ../internals/has-own-property */ 67514);
+var uid = __webpack_require__(/*! ../internals/uid */ 39688);
+var NATIVE_SYMBOL = __webpack_require__(/*! ../internals/symbol-constructor-detection */ 44254);
+var USE_SYMBOL_AS_UID = __webpack_require__(/*! ../internals/use-symbol-as-uid */ 15982);
var Symbol = global.Symbol;
var WellKnownSymbolsStore = shared('wks');
@@ -4711,9 +4710,9 @@ module.exports = function (name) {
/***/ }),
-/***/ 93793:
+/***/ 54625:
/*!***********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/internals/whitespaces.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/internals/whitespaces.js ***!
\***********************************************************************/
/***/ (function(module) {
@@ -4726,19 +4725,19 @@ module.exports = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u
/***/ }),
-/***/ 69067:
+/***/ 714:
/*!***************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.array.index-of.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.array.index-of.js ***!
\***************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
/* eslint-disable es/no-array-prototype-indexof -- required for testing */
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this-clause */ 12977);
-var $indexOf = (__webpack_require__(/*! ../internals/array-includes */ 6885).indexOf);
-var arrayMethodIsStrict = __webpack_require__(/*! ../internals/array-method-is-strict */ 63633);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this-clause */ 94657);
+var $indexOf = (__webpack_require__(/*! ../internals/array-includes */ 72693).indexOf);
+var arrayMethodIsStrict = __webpack_require__(/*! ../internals/array-method-is-strict */ 43334);
var nativeIndexOf = uncurryThis([].indexOf);
@@ -4760,23 +4759,23 @@ $({ target: 'Array', proto: true, forced: FORCED }, {
/***/ }),
-/***/ 15605:
+/***/ 63103:
/*!***************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.array.iterator.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.array.iterator.js ***!
\***************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ 63526);
-var addToUnscopables = __webpack_require__(/*! ../internals/add-to-unscopables */ 35390);
-var Iterators = __webpack_require__(/*! ../internals/iterators */ 76796);
-var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ 82745);
-var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ 86813).f);
-var defineIterator = __webpack_require__(/*! ../internals/iterator-define */ 43287);
-var createIterResultObject = __webpack_require__(/*! ../internals/create-iter-result-object */ 93885);
-var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 1824);
-var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 43235);
+var toIndexedObject = __webpack_require__(/*! ../internals/to-indexed-object */ 44273);
+var addToUnscopables = __webpack_require__(/*! ../internals/add-to-unscopables */ 64180);
+var Iterators = __webpack_require__(/*! ../internals/iterators */ 65470);
+var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ 29930);
+var defineProperty = (__webpack_require__(/*! ../internals/object-define-property */ 91349).f);
+var defineIterator = __webpack_require__(/*! ../internals/iterator-define */ 21952);
+var createIterResultObject = __webpack_require__(/*! ../internals/create-iter-result-object */ 75150);
+var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 55213);
+var DESCRIPTORS = __webpack_require__(/*! ../internals/descriptors */ 98479);
var ARRAY_ITERATOR = 'Array Iterator';
var setInternalState = InternalStateModule.set;
@@ -4833,19 +4832,19 @@ if (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {
/***/ }),
-/***/ 27425:
+/***/ 1467:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.array.reduce.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.array.reduce.js ***!
\*************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var $reduce = (__webpack_require__(/*! ../internals/array-reduce */ 60926).left);
-var arrayMethodIsStrict = __webpack_require__(/*! ../internals/array-method-is-strict */ 63633);
-var CHROME_VERSION = __webpack_require__(/*! ../internals/engine-v8-version */ 30222);
-var IS_NODE = __webpack_require__(/*! ../internals/engine-is-node */ 13168);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var $reduce = (__webpack_require__(/*! ../internals/array-reduce */ 31950).left);
+var arrayMethodIsStrict = __webpack_require__(/*! ../internals/array-method-is-strict */ 43334);
+var CHROME_VERSION = __webpack_require__(/*! ../internals/engine-v8-version */ 10641);
+var IS_NODE = __webpack_require__(/*! ../internals/engine-is-node */ 15848);
// Chrome 80-82 has a critical bug
// https://bugs.chromium.org/p/chromium/issues/detail?id=1049982
@@ -4864,17 +4863,17 @@ $({ target: 'Array', proto: true, forced: FORCED }, {
/***/ }),
-/***/ 65994:
+/***/ 53787:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.array.reverse.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.array.reverse.js ***!
\**************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var isArray = __webpack_require__(/*! ../internals/is-array */ 44206);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var isArray = __webpack_require__(/*! ../internals/is-array */ 96714);
var nativeReverse = uncurryThis([].reverse);
var test = [1, 2];
@@ -4894,21 +4893,21 @@ $({ target: 'Array', proto: true, forced: String(test) === String(test.reverse()
/***/ }),
-/***/ 65374:
+/***/ 83087:
/*!************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.promise.all.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.promise.all.js ***!
\************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var aCallable = __webpack_require__(/*! ../internals/a-callable */ 95894);
-var newPromiseCapabilityModule = __webpack_require__(/*! ../internals/new-promise-capability */ 19909);
-var perform = __webpack_require__(/*! ../internals/perform */ 79019);
-var iterate = __webpack_require__(/*! ../internals/iterate */ 77837);
-var PROMISE_STATICS_INCORRECT_ITERATION = __webpack_require__(/*! ../internals/promise-statics-incorrect-iteration */ 33422);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var aCallable = __webpack_require__(/*! ../internals/a-callable */ 73507);
+var newPromiseCapabilityModule = __webpack_require__(/*! ../internals/new-promise-capability */ 6790);
+var perform = __webpack_require__(/*! ../internals/perform */ 19528);
+var iterate = __webpack_require__(/*! ../internals/iterate */ 72597);
+var PROMISE_STATICS_INCORRECT_ITERATION = __webpack_require__(/*! ../internals/promise-statics-incorrect-iteration */ 14194);
// `Promise.all` method
// https://tc39.es/ecma262/#sec-promise.all
@@ -4944,21 +4943,21 @@ $({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }
/***/ }),
-/***/ 73086:
+/***/ 11635:
/*!**************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.promise.catch.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.promise.catch.js ***!
\**************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 1824);
-var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(/*! ../internals/promise-constructor-detection */ 68168).CONSTRUCTOR);
-var NativePromiseConstructor = __webpack_require__(/*! ../internals/promise-native-constructor */ 6707);
-var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 36289);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 95573);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 55213);
+var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(/*! ../internals/promise-constructor-detection */ 67396).CONSTRUCTOR);
+var NativePromiseConstructor = __webpack_require__(/*! ../internals/promise-native-constructor */ 34059);
+var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 43920);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 58393);
var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;
@@ -4981,37 +4980,37 @@ if (!IS_PURE && isCallable(NativePromiseConstructor)) {
/***/ }),
-/***/ 73430:
+/***/ 49719:
/*!********************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.promise.constructor.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.promise.constructor.js ***!
\********************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 1824);
-var IS_NODE = __webpack_require__(/*! ../internals/engine-is-node */ 13168);
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 95573);
-var setPrototypeOf = __webpack_require__(/*! ../internals/object-set-prototype-of */ 46257);
-var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ 77190);
-var setSpecies = __webpack_require__(/*! ../internals/set-species */ 71420);
-var aCallable = __webpack_require__(/*! ../internals/a-callable */ 95894);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var isObject = __webpack_require__(/*! ../internals/is-object */ 54404);
-var anInstance = __webpack_require__(/*! ../internals/an-instance */ 95182);
-var speciesConstructor = __webpack_require__(/*! ../internals/species-constructor */ 78408);
-var task = (__webpack_require__(/*! ../internals/task */ 65229).set);
-var microtask = __webpack_require__(/*! ../internals/microtask */ 1417);
-var hostReportErrors = __webpack_require__(/*! ../internals/host-report-errors */ 52958);
-var perform = __webpack_require__(/*! ../internals/perform */ 79019);
-var Queue = __webpack_require__(/*! ../internals/queue */ 13122);
-var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ 82745);
-var NativePromiseConstructor = __webpack_require__(/*! ../internals/promise-native-constructor */ 6707);
-var PromiseConstructorDetection = __webpack_require__(/*! ../internals/promise-constructor-detection */ 68168);
-var newPromiseCapabilityModule = __webpack_require__(/*! ../internals/new-promise-capability */ 19909);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 55213);
+var IS_NODE = __webpack_require__(/*! ../internals/engine-is-node */ 15848);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 58393);
+var setPrototypeOf = __webpack_require__(/*! ../internals/object-set-prototype-of */ 10825);
+var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ 35179);
+var setSpecies = __webpack_require__(/*! ../internals/set-species */ 83085);
+var aCallable = __webpack_require__(/*! ../internals/a-callable */ 73507);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var isObject = __webpack_require__(/*! ../internals/is-object */ 62518);
+var anInstance = __webpack_require__(/*! ../internals/an-instance */ 58676);
+var speciesConstructor = __webpack_require__(/*! ../internals/species-constructor */ 27021);
+var task = (__webpack_require__(/*! ../internals/task */ 5788).set);
+var microtask = __webpack_require__(/*! ../internals/microtask */ 5538);
+var hostReportErrors = __webpack_require__(/*! ../internals/host-report-errors */ 75471);
+var perform = __webpack_require__(/*! ../internals/perform */ 19528);
+var Queue = __webpack_require__(/*! ../internals/queue */ 47515);
+var InternalStateModule = __webpack_require__(/*! ../internals/internal-state */ 29930);
+var NativePromiseConstructor = __webpack_require__(/*! ../internals/promise-native-constructor */ 34059);
+var PromiseConstructorDetection = __webpack_require__(/*! ../internals/promise-constructor-detection */ 67396);
+var newPromiseCapabilityModule = __webpack_require__(/*! ../internals/new-promise-capability */ 6790);
var PROMISE = 'Promise';
var FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;
@@ -5280,40 +5279,40 @@ setSpecies(PROMISE);
/***/ }),
-/***/ 50316:
+/***/ 58093:
/*!********************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.promise.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.promise.js ***!
\********************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
// TODO: Remove this module from `core-js@4` since it's split to modules listed below
-__webpack_require__(/*! ../modules/es.promise.constructor */ 73430);
-__webpack_require__(/*! ../modules/es.promise.all */ 65374);
-__webpack_require__(/*! ../modules/es.promise.catch */ 73086);
-__webpack_require__(/*! ../modules/es.promise.race */ 92970);
-__webpack_require__(/*! ../modules/es.promise.reject */ 94182);
-__webpack_require__(/*! ../modules/es.promise.resolve */ 13500);
+__webpack_require__(/*! ../modules/es.promise.constructor */ 49719);
+__webpack_require__(/*! ../modules/es.promise.all */ 83087);
+__webpack_require__(/*! ../modules/es.promise.catch */ 11635);
+__webpack_require__(/*! ../modules/es.promise.race */ 93419);
+__webpack_require__(/*! ../modules/es.promise.reject */ 6229);
+__webpack_require__(/*! ../modules/es.promise.resolve */ 85303);
/***/ }),
-/***/ 92970:
+/***/ 93419:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.promise.race.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.promise.race.js ***!
\*************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var aCallable = __webpack_require__(/*! ../internals/a-callable */ 95894);
-var newPromiseCapabilityModule = __webpack_require__(/*! ../internals/new-promise-capability */ 19909);
-var perform = __webpack_require__(/*! ../internals/perform */ 79019);
-var iterate = __webpack_require__(/*! ../internals/iterate */ 77837);
-var PROMISE_STATICS_INCORRECT_ITERATION = __webpack_require__(/*! ../internals/promise-statics-incorrect-iteration */ 33422);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var aCallable = __webpack_require__(/*! ../internals/a-callable */ 73507);
+var newPromiseCapabilityModule = __webpack_require__(/*! ../internals/new-promise-capability */ 6790);
+var perform = __webpack_require__(/*! ../internals/perform */ 19528);
+var iterate = __webpack_require__(/*! ../internals/iterate */ 72597);
+var PROMISE_STATICS_INCORRECT_ITERATION = __webpack_require__(/*! ../internals/promise-statics-incorrect-iteration */ 14194);
// `Promise.race` method
// https://tc39.es/ecma262/#sec-promise.race
@@ -5336,17 +5335,17 @@ $({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }
/***/ }),
-/***/ 94182:
+/***/ 6229:
/*!***************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.promise.reject.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.promise.reject.js ***!
\***************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var newPromiseCapabilityModule = __webpack_require__(/*! ../internals/new-promise-capability */ 19909);
-var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(/*! ../internals/promise-constructor-detection */ 68168).CONSTRUCTOR);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var newPromiseCapabilityModule = __webpack_require__(/*! ../internals/new-promise-capability */ 6790);
+var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(/*! ../internals/promise-constructor-detection */ 67396).CONSTRUCTOR);
// `Promise.reject` method
// https://tc39.es/ecma262/#sec-promise.reject
@@ -5362,20 +5361,20 @@ $({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {
/***/ }),
-/***/ 13500:
+/***/ 85303:
/*!****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.promise.resolve.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.promise.resolve.js ***!
\****************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 36289);
-var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 1824);
-var NativePromiseConstructor = __webpack_require__(/*! ../internals/promise-native-constructor */ 6707);
-var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(/*! ../internals/promise-constructor-detection */ 68168).CONSTRUCTOR);
-var promiseResolve = __webpack_require__(/*! ../internals/promise-resolve */ 18825);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var getBuiltIn = __webpack_require__(/*! ../internals/get-built-in */ 43920);
+var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 55213);
+var NativePromiseConstructor = __webpack_require__(/*! ../internals/promise-native-constructor */ 34059);
+var FORCED_PROMISE_CONSTRUCTOR = (__webpack_require__(/*! ../internals/promise-constructor-detection */ 67396).CONSTRUCTOR);
+var promiseResolve = __webpack_require__(/*! ../internals/promise-resolve */ 2370);
var PromiseConstructorWrapper = getBuiltIn('Promise');
var CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;
@@ -5391,16 +5390,16 @@ $({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR
/***/ }),
-/***/ 1661:
+/***/ 51190:
/*!************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.regexp.exec.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.regexp.exec.js ***!
\************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var exec = __webpack_require__(/*! ../internals/regexp-exec */ 39672);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var exec = __webpack_require__(/*! ../internals/regexp-exec */ 97652);
// `RegExp.prototype.exec` method
// https://tc39.es/ecma262/#sec-regexp.prototype.exec
@@ -5411,20 +5410,20 @@ $({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {
/***/ }),
-/***/ 5361:
+/***/ 45726:
/*!*****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.regexp.to-string.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.regexp.to-string.js ***!
\*****************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var PROPER_FUNCTION_NAME = (__webpack_require__(/*! ../internals/function-name */ 59665).PROPER);
-var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 95573);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var $toString = __webpack_require__(/*! ../internals/to-string */ 47718);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var getRegExpFlags = __webpack_require__(/*! ../internals/regexp-get-flags */ 31567);
+var PROPER_FUNCTION_NAME = (__webpack_require__(/*! ../internals/function-name */ 82997).PROPER);
+var defineBuiltIn = __webpack_require__(/*! ../internals/define-built-in */ 58393);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var $toString = __webpack_require__(/*! ../internals/to-string */ 98957);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var getRegExpFlags = __webpack_require__(/*! ../internals/regexp-get-flags */ 79093);
var TO_STRING = 'toString';
var RegExpPrototype = RegExp.prototype;
@@ -5448,23 +5447,23 @@ if (NOT_GENERIC || INCORRECT_NAME) {
/***/ }),
-/***/ 64774:
+/***/ 98208:
/*!*****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.string.ends-with.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.string.ends-with.js ***!
\*****************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this-clause */ 12977);
-var getOwnPropertyDescriptor = (__webpack_require__(/*! ../internals/object-get-own-property-descriptor */ 3131).f);
-var toLength = __webpack_require__(/*! ../internals/to-length */ 40568);
-var toString = __webpack_require__(/*! ../internals/to-string */ 47718);
-var notARegExp = __webpack_require__(/*! ../internals/not-a-regexp */ 53831);
-var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 12037);
-var correctIsRegExpLogic = __webpack_require__(/*! ../internals/correct-is-regexp-logic */ 15288);
-var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 1824);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this-clause */ 94657);
+var getOwnPropertyDescriptor = (__webpack_require__(/*! ../internals/object-get-own-property-descriptor */ 87509).f);
+var toLength = __webpack_require__(/*! ../internals/to-length */ 39785);
+var toString = __webpack_require__(/*! ../internals/to-string */ 98957);
+var notARegExp = __webpack_require__(/*! ../internals/not-a-regexp */ 57073);
+var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 87799);
+var correctIsRegExpLogic = __webpack_require__(/*! ../internals/correct-is-regexp-logic */ 22043);
+var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 55213);
var slice = uncurryThis(''.slice);
var min = Math.min;
@@ -5493,20 +5492,20 @@ $({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGE
/***/ }),
-/***/ 34961:
+/***/ 10622:
/*!****************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.string.includes.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.string.includes.js ***!
\****************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var notARegExp = __webpack_require__(/*! ../internals/not-a-regexp */ 53831);
-var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 12037);
-var toString = __webpack_require__(/*! ../internals/to-string */ 47718);
-var correctIsRegExpLogic = __webpack_require__(/*! ../internals/correct-is-regexp-logic */ 15288);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var notARegExp = __webpack_require__(/*! ../internals/not-a-regexp */ 57073);
+var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 87799);
+var toString = __webpack_require__(/*! ../internals/to-string */ 98957);
+var correctIsRegExpLogic = __webpack_require__(/*! ../internals/correct-is-regexp-logic */ 22043);
var stringIndexOf = uncurryThis(''.indexOf);
@@ -5525,24 +5524,24 @@ $({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') },
/***/ }),
-/***/ 55089:
+/***/ 53909:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.string.match.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.string.match.js ***!
\*************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var fixRegExpWellKnownSymbolLogic = __webpack_require__(/*! ../internals/fix-regexp-well-known-symbol-logic */ 22645);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 98806);
-var toLength = __webpack_require__(/*! ../internals/to-length */ 40568);
-var toString = __webpack_require__(/*! ../internals/to-string */ 47718);
-var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 12037);
-var getMethod = __webpack_require__(/*! ../internals/get-method */ 86157);
-var advanceStringIndex = __webpack_require__(/*! ../internals/advance-string-index */ 38119);
-var regExpExec = __webpack_require__(/*! ../internals/regexp-exec-abstract */ 89247);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var fixRegExpWellKnownSymbolLogic = __webpack_require__(/*! ../internals/fix-regexp-well-known-symbol-logic */ 36964);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 51474);
+var toLength = __webpack_require__(/*! ../internals/to-length */ 39785);
+var toString = __webpack_require__(/*! ../internals/to-string */ 98957);
+var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 87799);
+var getMethod = __webpack_require__(/*! ../internals/get-method */ 4525);
+var advanceStringIndex = __webpack_require__(/*! ../internals/advance-string-index */ 62794);
+var regExpExec = __webpack_require__(/*! ../internals/regexp-exec-abstract */ 78505);
// @@match logic
fixRegExpWellKnownSymbolLogic('match', function (MATCH, nativeMatch, maybeCallNative) {
@@ -5584,31 +5583,31 @@ fixRegExpWellKnownSymbolLogic('match', function (MATCH, nativeMatch, maybeCallNa
/***/ }),
-/***/ 38400:
+/***/ 86099:
/*!***************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.string.replace.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.string.replace.js ***!
\***************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var apply = __webpack_require__(/*! ../internals/function-apply */ 53951);
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var fixRegExpWellKnownSymbolLogic = __webpack_require__(/*! ../internals/fix-regexp-well-known-symbol-logic */ 22645);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var isCallable = __webpack_require__(/*! ../internals/is-callable */ 26898);
-var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 98806);
-var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ 36392);
-var toLength = __webpack_require__(/*! ../internals/to-length */ 40568);
-var toString = __webpack_require__(/*! ../internals/to-string */ 47718);
-var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 12037);
-var advanceStringIndex = __webpack_require__(/*! ../internals/advance-string-index */ 38119);
-var getMethod = __webpack_require__(/*! ../internals/get-method */ 86157);
-var getSubstitution = __webpack_require__(/*! ../internals/get-substitution */ 8164);
-var regExpExec = __webpack_require__(/*! ../internals/regexp-exec-abstract */ 89247);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
+var apply = __webpack_require__(/*! ../internals/function-apply */ 34635);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var fixRegExpWellKnownSymbolLogic = __webpack_require__(/*! ../internals/fix-regexp-well-known-symbol-logic */ 36964);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var isCallable = __webpack_require__(/*! ../internals/is-callable */ 91806);
+var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 51474);
+var toIntegerOrInfinity = __webpack_require__(/*! ../internals/to-integer-or-infinity */ 16360);
+var toLength = __webpack_require__(/*! ../internals/to-length */ 39785);
+var toString = __webpack_require__(/*! ../internals/to-string */ 98957);
+var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 87799);
+var advanceStringIndex = __webpack_require__(/*! ../internals/advance-string-index */ 62794);
+var getMethod = __webpack_require__(/*! ../internals/get-method */ 4525);
+var getSubstitution = __webpack_require__(/*! ../internals/get-substitution */ 30159);
+var regExpExec = __webpack_require__(/*! ../internals/regexp-exec-abstract */ 78505);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
var REPLACE = wellKnownSymbol('replace');
var max = Math.max;
@@ -5737,39 +5736,33 @@ fixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNa
/***/ }),
-/***/ 66830:
+/***/ 52701:
/*!*************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.string.split.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.string.split.js ***!
\*************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var apply = __webpack_require__(/*! ../internals/function-apply */ 53951);
-var call = __webpack_require__(/*! ../internals/function-call */ 27872);
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 9104);
-var fixRegExpWellKnownSymbolLogic = __webpack_require__(/*! ../internals/fix-regexp-well-known-symbol-logic */ 22645);
-var anObject = __webpack_require__(/*! ../internals/an-object */ 80879);
-var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 98806);
-var isRegExp = __webpack_require__(/*! ../internals/is-regexp */ 28789);
-var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 12037);
-var speciesConstructor = __webpack_require__(/*! ../internals/species-constructor */ 78408);
-var advanceStringIndex = __webpack_require__(/*! ../internals/advance-string-index */ 38119);
-var toLength = __webpack_require__(/*! ../internals/to-length */ 40568);
-var toString = __webpack_require__(/*! ../internals/to-string */ 47718);
-var getMethod = __webpack_require__(/*! ../internals/get-method */ 86157);
-var arraySlice = __webpack_require__(/*! ../internals/array-slice */ 42358);
-var callRegExpExec = __webpack_require__(/*! ../internals/regexp-exec-abstract */ 89247);
-var regexpExec = __webpack_require__(/*! ../internals/regexp-exec */ 39672);
-var stickyHelpers = __webpack_require__(/*! ../internals/regexp-sticky-helpers */ 78489);
-var fails = __webpack_require__(/*! ../internals/fails */ 8469);
+var call = __webpack_require__(/*! ../internals/function-call */ 59015);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this */ 32716);
+var fixRegExpWellKnownSymbolLogic = __webpack_require__(/*! ../internals/fix-regexp-well-known-symbol-logic */ 36964);
+var anObject = __webpack_require__(/*! ../internals/an-object */ 15591);
+var isNullOrUndefined = __webpack_require__(/*! ../internals/is-null-or-undefined */ 51474);
+var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 87799);
+var speciesConstructor = __webpack_require__(/*! ../internals/species-constructor */ 27021);
+var advanceStringIndex = __webpack_require__(/*! ../internals/advance-string-index */ 62794);
+var toLength = __webpack_require__(/*! ../internals/to-length */ 39785);
+var toString = __webpack_require__(/*! ../internals/to-string */ 98957);
+var getMethod = __webpack_require__(/*! ../internals/get-method */ 4525);
+var regExpExec = __webpack_require__(/*! ../internals/regexp-exec-abstract */ 78505);
+var stickyHelpers = __webpack_require__(/*! ../internals/regexp-sticky-helpers */ 87924);
+var fails = __webpack_require__(/*! ../internals/fails */ 98241);
var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;
var MAX_UINT32 = 0xFFFFFFFF;
var min = Math.min;
-var $push = [].push;
-var exec = uncurryThis(/./.exec);
-var push = uncurryThis($push);
+var push = uncurryThis([].push);
var stringSlice = uncurryThis(''.slice);
// Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
@@ -5783,60 +5776,20 @@ var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
});
+var BUGGY = 'abbc'.split(/(b)*/)[1] === 'c' ||
+ // eslint-disable-next-line regexp/no-empty-group -- required for testing
+ 'test'.split(/(?:)/, -1).length !== 4 ||
+ 'ab'.split(/(?:ab)*/).length !== 2 ||
+ '.'.split(/(.?)(.?)/).length !== 4 ||
+ // eslint-disable-next-line regexp/no-empty-capturing-group, regexp/no-empty-group -- required for testing
+ '.'.split(/()()/).length > 1 ||
+ ''.split(/.?/).length;
+
// @@split logic
fixRegExpWellKnownSymbolLogic('split', function (SPLIT, nativeSplit, maybeCallNative) {
- var internalSplit;
- if (
- 'abbc'.split(/(b)*/)[1] === 'c' ||
- // eslint-disable-next-line regexp/no-empty-group -- required for testing
- 'test'.split(/(?:)/, -1).length !== 4 ||
- 'ab'.split(/(?:ab)*/).length !== 2 ||
- '.'.split(/(.?)(.?)/).length !== 4 ||
- // eslint-disable-next-line regexp/no-empty-capturing-group, regexp/no-empty-group -- required for testing
- '.'.split(/()()/).length > 1 ||
- ''.split(/.?/).length
- ) {
- // based on es5-shim implementation, need to rework it
- internalSplit = function (separator, limit) {
- var string = toString(requireObjectCoercible(this));
- var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
- if (lim === 0) return [];
- if (separator === undefined) return [string];
- // If `separator` is not a regex, use native split
- if (!isRegExp(separator)) {
- return call(nativeSplit, string, separator, lim);
- }
- var output = [];
- var flags = (separator.ignoreCase ? 'i' : '') +
- (separator.multiline ? 'm' : '') +
- (separator.unicode ? 'u' : '') +
- (separator.sticky ? 'y' : '');
- var lastLastIndex = 0;
- // Make `global` and avoid `lastIndex` issues by working with a copy
- var separatorCopy = new RegExp(separator.source, flags + 'g');
- var match, lastIndex, lastLength;
- while (match = call(regexpExec, separatorCopy, string)) {
- lastIndex = separatorCopy.lastIndex;
- if (lastIndex > lastLastIndex) {
- push(output, stringSlice(string, lastLastIndex, match.index));
- if (match.length > 1 && match.index < string.length) apply($push, output, arraySlice(match, 1));
- lastLength = match[0].length;
- lastLastIndex = lastIndex;
- if (output.length >= lim) break;
- }
- if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop
- }
- if (lastLastIndex === string.length) {
- if (lastLength || !exec(separatorCopy, '')) push(output, '');
- } else push(output, stringSlice(string, lastLastIndex));
- return output.length > lim ? arraySlice(output, 0, lim) : output;
- };
- // Chakra, V8
- } else if ('0'.split(undefined, 0).length) {
- internalSplit = function (separator, limit) {
- return separator === undefined && limit === 0 ? [] : call(nativeSplit, this, separator, limit);
- };
- } else internalSplit = nativeSplit;
+ var internalSplit = '0'.split(undefined, 0).length ? function (separator, limit) {
+ return separator === undefined && limit === 0 ? [] : call(nativeSplit, this, separator, limit);
+ } : nativeSplit;
return [
// `String.prototype.split` method
@@ -5856,30 +5809,30 @@ fixRegExpWellKnownSymbolLogic('split', function (SPLIT, nativeSplit, maybeCallNa
function (string, limit) {
var rx = anObject(this);
var S = toString(string);
- var res = maybeCallNative(internalSplit, rx, S, limit, internalSplit !== nativeSplit);
- if (res.done) return res.value;
+ if (!BUGGY) {
+ var res = maybeCallNative(internalSplit, rx, S, limit, internalSplit !== nativeSplit);
+ if (res.done) return res.value;
+ }
var C = speciesConstructor(rx, RegExp);
-
var unicodeMatching = rx.unicode;
var flags = (rx.ignoreCase ? 'i' : '') +
(rx.multiline ? 'm' : '') +
(rx.unicode ? 'u' : '') +
(UNSUPPORTED_Y ? 'g' : 'y');
-
// ^(? + rx + ) is needed, in combination with some S slicing, to
// simulate the 'y' flag.
var splitter = new C(UNSUPPORTED_Y ? '^(?:' + rx.source + ')' : rx, flags);
var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
if (lim === 0) return [];
- if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
+ if (S.length === 0) return regExpExec(splitter, S) === null ? [S] : [];
var p = 0;
var q = 0;
var A = [];
while (q < S.length) {
splitter.lastIndex = UNSUPPORTED_Y ? 0 : q;
- var z = callRegExpExec(splitter, UNSUPPORTED_Y ? stringSlice(S, q) : S);
+ var z = regExpExec(splitter, UNSUPPORTED_Y ? stringSlice(S, q) : S);
var e;
if (
z === null ||
@@ -5900,28 +5853,28 @@ fixRegExpWellKnownSymbolLogic('split', function (SPLIT, nativeSplit, maybeCallNa
return A;
}
];
-}, !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC, UNSUPPORTED_Y);
+}, BUGGY || !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC, UNSUPPORTED_Y);
/***/ }),
-/***/ 51604:
+/***/ 76843:
/*!*******************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.string.starts-with.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.string.starts-with.js ***!
\*******************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this-clause */ 12977);
-var getOwnPropertyDescriptor = (__webpack_require__(/*! ../internals/object-get-own-property-descriptor */ 3131).f);
-var toLength = __webpack_require__(/*! ../internals/to-length */ 40568);
-var toString = __webpack_require__(/*! ../internals/to-string */ 47718);
-var notARegExp = __webpack_require__(/*! ../internals/not-a-regexp */ 53831);
-var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 12037);
-var correctIsRegExpLogic = __webpack_require__(/*! ../internals/correct-is-regexp-logic */ 15288);
-var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 1824);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var uncurryThis = __webpack_require__(/*! ../internals/function-uncurry-this-clause */ 94657);
+var getOwnPropertyDescriptor = (__webpack_require__(/*! ../internals/object-get-own-property-descriptor */ 87509).f);
+var toLength = __webpack_require__(/*! ../internals/to-length */ 39785);
+var toString = __webpack_require__(/*! ../internals/to-string */ 98957);
+var notARegExp = __webpack_require__(/*! ../internals/not-a-regexp */ 57073);
+var requireObjectCoercible = __webpack_require__(/*! ../internals/require-object-coercible */ 87799);
+var correctIsRegExpLogic = __webpack_require__(/*! ../internals/correct-is-regexp-logic */ 22043);
+var IS_PURE = __webpack_require__(/*! ../internals/is-pure */ 55213);
var stringSlice = uncurryThis(''.slice);
var min = Math.min;
@@ -5948,17 +5901,17 @@ $({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGE
/***/ }),
-/***/ 80876:
+/***/ 31591:
/*!************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/es.string.trim.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/es.string.trim.js ***!
\************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var $ = __webpack_require__(/*! ../internals/export */ 95308);
-var $trim = (__webpack_require__(/*! ../internals/string-trim */ 57875).trim);
-var forcedStringTrimMethod = __webpack_require__(/*! ../internals/string-trim-forced */ 15113);
+var $ = __webpack_require__(/*! ../internals/export */ 15314);
+var $trim = (__webpack_require__(/*! ../internals/string-trim */ 21504).trim);
+var forcedStringTrimMethod = __webpack_require__(/*! ../internals/string-trim-forced */ 36213);
// `String.prototype.trim` method
// https://tc39.es/ecma262/#sec-string.prototype.trim
@@ -5971,21 +5924,21 @@ $({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {
/***/ }),
-/***/ 4313:
+/***/ 10084:
/*!**************************************************************************************!*\
- !*** ./node_modules/_core-js@3.35.0@core-js/modules/web.dom-collections.iterator.js ***!
+ !*** ./node_modules/_core-js@3.35.1@core-js/modules/web.dom-collections.iterator.js ***!
\**************************************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
"use strict";
-var global = __webpack_require__(/*! ../internals/global */ 6961);
-var DOMIterables = __webpack_require__(/*! ../internals/dom-iterables */ 42417);
-var DOMTokenListPrototype = __webpack_require__(/*! ../internals/dom-token-list-prototype */ 29749);
-var ArrayIteratorMethods = __webpack_require__(/*! ../modules/es.array.iterator */ 15605);
-var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ 44662);
-var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ 77190);
-var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 21567);
+var global = __webpack_require__(/*! ../internals/global */ 62015);
+var DOMIterables = __webpack_require__(/*! ../internals/dom-iterables */ 96105);
+var DOMTokenListPrototype = __webpack_require__(/*! ../internals/dom-token-list-prototype */ 1414);
+var ArrayIteratorMethods = __webpack_require__(/*! ../modules/es.array.iterator */ 63103);
+var createNonEnumerableProperty = __webpack_require__(/*! ../internals/create-non-enumerable-property */ 81462);
+var setToStringTag = __webpack_require__(/*! ../internals/set-to-string-tag */ 35179);
+var wellKnownSymbol = __webpack_require__(/*! ../internals/well-known-symbol */ 85620);
var ITERATOR = wellKnownSymbol('iterator');
var ArrayValues = ArrayIteratorMethods.values;
@@ -6119,40 +6072,40 @@ __webpack_require__.d(__webpack_exports__, {
vectorsRatio: function() { return /* binding */ vectorsRatio; }
});
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.promise.js
-var es_promise = __webpack_require__(50316);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/asyncToGenerator.js
-var asyncToGenerator = __webpack_require__(93166);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.string.match.js
-var es_string_match = __webpack_require__(55089);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.string.replace.js
-var es_string_replace = __webpack_require__(38400);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.string.starts-with.js
-var es_string_starts_with = __webpack_require__(51604);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.array.iterator.js
-var es_array_iterator = __webpack_require__(15605);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/web.dom-collections.iterator.js
-var web_dom_collections_iterator = __webpack_require__(4313);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.array.reduce.js
-var es_array_reduce = __webpack_require__(27425);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.string.ends-with.js
-var es_string_ends_with = __webpack_require__(64774);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.string.split.js
-var es_string_split = __webpack_require__(66830);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.promise.js
+var es_promise = __webpack_require__(58093);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/asyncToGenerator.js
+var asyncToGenerator = __webpack_require__(90304);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.string.match.js
+var es_string_match = __webpack_require__(53909);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.string.replace.js
+var es_string_replace = __webpack_require__(86099);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.string.starts-with.js
+var es_string_starts_with = __webpack_require__(76843);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.array.iterator.js
+var es_array_iterator = __webpack_require__(63103);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/web.dom-collections.iterator.js
+var web_dom_collections_iterator = __webpack_require__(10084);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.array.reduce.js
+var es_array_reduce = __webpack_require__(1467);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.string.ends-with.js
+var es_string_ends_with = __webpack_require__(98208);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.string.split.js
+var es_string_split = __webpack_require__(52701);
// EXTERNAL MODULE: ./node_modules/_raf@3.4.1@raf/index.js
var _raf_3_4_1_raf = __webpack_require__(32772);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.string.trim.js
-var es_string_trim = __webpack_require__(80876);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.string.trim.js
+var es_string_trim = __webpack_require__(31591);
// EXTERNAL MODULE: ./node_modules/_rgbcolor@1.0.1@rgbcolor/index.js
var _rgbcolor_1_0_1_rgbcolor = __webpack_require__(45810);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.array.index-of.js
-var es_array_index_of = __webpack_require__(69067);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.string.includes.js
-var es_string_includes = __webpack_require__(34961);
-// EXTERNAL MODULE: ./node_modules/_core-js@3.35.0@core-js/modules/es.array.reverse.js
-var es_array_reverse = __webpack_require__(65994);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.array.index-of.js
+var es_array_index_of = __webpack_require__(714);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.string.includes.js
+var es_string_includes = __webpack_require__(10622);
+// EXTERNAL MODULE: ./node_modules/_core-js@3.35.1@core-js/modules/es.array.reverse.js
+var es_array_reverse = __webpack_require__(53787);
;// CONCATENATED MODULE: ./node_modules/_svg-pathdata@6.0.3@svg-pathdata/lib/SVGPathData.module.js
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
@@ -6171,8 +6124,8 @@ PERFORMANCE OF THIS SOFTWARE.
var t=function(r,e){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,r){t.__proto__=r}||function(t,r){for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&(t[e]=r[e])})(r,e)};function r(r,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function i(){this.constructor=r}t(r,e),r.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}function e(t){var r="";Array.isArray(t)||(t=[t]);for(var e=0;et.phi1&&(t.phi2-=2*n),1===t.sweepFlag&&t.phi2i)return[];if(0===i)return[[t*e/(t*t+r*r),r*e/(t*t+r*r)]];var n=Math.sqrt(i);return[[(t*e+r*n)/(t*t+r*r),(r*e-t*n)/(t*t+r*r)],[(t*e-r*n)/(t*t+r*r),(r*e+t*n)/(t*t+r*r)]]}var u,h=Math.PI/180;function c(t,r,e){return(1-e)*t+e*r}function y(t,r,e,i){return t+Math.cos(i/180*n)*r+Math.sin(i/180*n)*e}function p(t,r,e,i){var a=1e-6,n=r-t,o=e-r,s=3*n+3*(i-e)-6*o,u=6*(o-n),h=3*n;return Math.abs(s)T&&(a.sweepFlag=+!a.sweepFlag),a}))}function l(){return function(t){var r={};for(var e in t)r[e]=t[e];return r}}t.ROUND=function(t){function r(r){return Math.round(r*t)/t}return void 0===t&&(t=1e13),a(t),function(t){return void 0!==t.x1&&(t.x1=r(t.x1)),void 0!==t.y1&&(t.y1=r(t.y1)),void 0!==t.x2&&(t.x2=r(t.x2)),void 0!==t.y2&&(t.y2=r(t.y2)),void 0!==t.x&&(t.x=r(t.x)),void 0!==t.y&&(t.y=r(t.y)),void 0!==t.rX&&(t.rX=r(t.rX)),void 0!==t.rY&&(t.rY=r(t.rY)),t}},t.TO_ABS=r,t.TO_REL=function(){return u((function(t,r,e){return t.relative||(void 0!==t.x1&&(t.x1-=r),void 0!==t.y1&&(t.y1-=e),void 0!==t.x2&&(t.x2-=r),void 0!==t.y2&&(t.y2-=e),void 0!==t.x&&(t.x-=r),void 0!==t.y&&(t.y-=e),t.relative=!0),t}))},t.NORMALIZE_HVZ=function(t,r,e){return void 0===t&&(t=!0),void 0===r&&(r=!0),void 0===e&&(e=!0),u((function(i,a,n,o,s){if(isNaN(o)&&!(i.type&_.MOVE_TO))throw new Error("path must start with moveto");return r&&i.type&_.HORIZ_LINE_TO&&(i.type=_.LINE_TO,i.y=i.relative?0:n),e&&i.type&_.VERT_LINE_TO&&(i.type=_.LINE_TO,i.x=i.relative?0:a),t&&i.type&_.CLOSE_PATH&&(i.type=_.LINE_TO,i.x=i.relative?o-a:o,i.y=i.relative?s-n:s),i.type&_.ARC&&(0===i.rX||0===i.rY)&&(i.type=_.LINE_TO,delete i.rX,delete i.rY,delete i.xRot,delete i.lArcFlag,delete i.sweepFlag),i}))},t.NORMALIZE_ST=e,t.QT_TO_C=n,t.INFO=u,t.SANITIZE=function(t){void 0===t&&(t=0),a(t);var r=NaN,e=NaN,i=NaN,n=NaN;return u((function(a,o,s,u,h){var c=Math.abs,y=!1,p=0,m=0;if(a.type&_.SMOOTH_CURVE_TO&&(p=isNaN(r)?0:o-r,m=isNaN(e)?0:s-e),a.type&(_.CURVE_TO|_.SMOOTH_CURVE_TO)?(r=a.relative?o+a.x2:a.x2,e=a.relative?s+a.y2:a.y2):(r=NaN,e=NaN),a.type&_.SMOOTH_QUAD_TO?(i=isNaN(i)?o:2*o-i,n=isNaN(n)?s:2*s-n):a.type&_.QUAD_TO?(i=a.relative?o+a.x1:a.x1,n=a.relative?s+a.y1:a.y2):(i=NaN,n=NaN),a.type&_.LINE_COMMANDS||a.type&_.ARC&&(0===a.rX||0===a.rY||!a.lArcFlag)||a.type&_.CURVE_TO||a.type&_.SMOOTH_CURVE_TO||a.type&_.QUAD_TO||a.type&_.SMOOTH_QUAD_TO){var O=void 0===a.x?0:a.relative?a.x:a.x-o,l=void 0===a.y?0:a.relative?a.y:a.y-s;p=isNaN(i)?void 0===a.x1?p:a.relative?a.x:a.x1-o:i-o,m=isNaN(n)?void 0===a.y1?m:a.relative?a.y:a.y1-s:n-s;var T=void 0===a.x2?0:a.relative?a.x:a.x2-o,v=void 0===a.y2?0:a.relative?a.y:a.y2-s;c(O)<=t&&c(l)<=t&&c(p)<=t&&c(m)<=t&&c(T)<=t&&c(v)<=t&&(y=!0)}return a.type&_.CLOSE_PATH&&c(o-u)<=t&&c(s-h)<=t&&(y=!0),y?[]:a}))},t.MATRIX=O,t.ROTATE=function(t,r,e){void 0===r&&(r=0),void 0===e&&(e=0),a(t,r,e);var i=Math.sin(t),n=Math.cos(t);return O(n,i,-i,n,r-r*n+e*i,e-r*i-e*n)},t.TRANSLATE=function(t,r){return void 0===r&&(r=0),a(t,r),O(1,0,0,1,t,r)},t.SCALE=function(t,r){return void 0===r&&(r=t),a(t,r),O(t,0,0,r,0,0)},t.SKEW_X=function(t){return a(t),O(1,0,Math.atan(t),1,0,0)},t.SKEW_Y=function(t){return a(t),O(1,Math.atan(t),0,1,0,0)},t.X_AXIS_SYMMETRY=function(t){return void 0===t&&(t=0),a(t),O(-1,0,0,1,t,0)},t.Y_AXIS_SYMMETRY=function(t){return void 0===t&&(t=0),a(t),O(1,0,0,-1,0,t)},t.A_TO_C=function(){return u((function(t,r,e){return _.ARC===t.type?function(t,r,e){var a,n,s,u;t.cX||o(t,r,e);for(var y=Math.min(t.phi1,t.phi2),p=Math.max(t.phi1,t.phi2)-y,m=Math.ceil(p/90),O=new Array(m),l=r,T=e,v=0;vc.maxX&&(c.maxX=t),tc.maxY&&(c.maxY=t),tw&&O(m(e,u.x1,u.x2,u.x,w))}for(var f=0,N=p(n,u.y1,u.y2,u.y);fw&&l(m(n,u.y1,u.y2,u.y,w))}}if(u.type&_.ARC){O(u.x),l(u.y),o(u,e,n);for(var x=u.xRot/180*Math.PI,d=Math.cos(x)*u.rX,E=Math.sin(x)*u.rX,A=-Math.sin(x)*u.rY,C=Math.cos(x)*u.rY,M=u.phi1u.phi2?[u.phi2+360,u.phi1+360]:[u.phi2,u.phi1],R=M[0],g=M[1],I=function(t){var r=t[0],e=t[1],i=180*Math.atan2(e,r)/Math.PI;return iR&&wR&&wu)throw new SyntaxError('Expected positive number, got "'+u+'" at index "'+a+'"')}else if((3===this.curArgs.length||4===this.curArgs.length)&&"0"!==this.curNumber&&"1"!==this.curNumber)throw new SyntaxError('Expected a flag, got "'+this.curNumber+'" at index "'+a+'"');this.curArgs.push(u),this.curArgs.length===N[this.curCommandType]&&(_.HORIZ_LINE_TO===this.curCommandType?i({type:_.HORIZ_LINE_TO,relative:this.curCommandRelative,x:u}):_.VERT_LINE_TO===this.curCommandType?i({type:_.VERT_LINE_TO,relative:this.curCommandRelative,y:u}):this.curCommandType===_.MOVE_TO||this.curCommandType===_.LINE_TO||this.curCommandType===_.SMOOTH_QUAD_TO?(i({type:this.curCommandType,relative:this.curCommandRelative,x:this.curArgs[0],y:this.curArgs[1]}),_.MOVE_TO===this.curCommandType&&(this.curCommandType=_.LINE_TO)):this.curCommandType===_.CURVE_TO?i({type:_.CURVE_TO,relative:this.curCommandRelative,x1:this.curArgs[0],y1:this.curArgs[1],x2:this.curArgs[2],y2:this.curArgs[3],x:this.curArgs[4],y:this.curArgs[5]}):this.curCommandType===_.SMOOTH_CURVE_TO?i({type:_.SMOOTH_CURVE_TO,relative:this.curCommandRelative,x2:this.curArgs[0],y2:this.curArgs[1],x:this.curArgs[2],y:this.curArgs[3]}):this.curCommandType===_.QUAD_TO?i({type:_.QUAD_TO,relative:this.curCommandRelative,x1:this.curArgs[0],y1:this.curArgs[1],x:this.curArgs[2],y:this.curArgs[3]}):this.curCommandType===_.ARC&&i({type:_.ARC,relative:this.curCommandRelative,rX:this.curArgs[0],rY:this.curArgs[1],xRot:this.curArgs[2],lArcFlag:this.curArgs[3],sweepFlag:this.curArgs[4],x:this.curArgs[5],y:this.curArgs[6]})),this.curNumber="",this.curNumberHasExpDigits=!1,this.curNumberHasExp=!1,this.curNumberHasDecimal=!1,this.canParseCommandOrComma=!0}if(!T(n))if(","===n&&this.canParseCommandOrComma)this.canParseCommandOrComma=!1;else if("+"!==n&&"-"!==n&&"."!==n)if(s)this.curNumber=n,this.curNumberHasDecimal=!1;else{if(0!==this.curArgs.length)throw new SyntaxError("Unterminated command at index "+a+".");if(!this.canParseCommandOrComma)throw new SyntaxError('Unexpected character "'+n+'" at index '+a+". Command cannot follow comma");if(this.canParseCommandOrComma=!1,"z"!==n&&"Z"!==n)if("h"===n||"H"===n)this.curCommandType=_.HORIZ_LINE_TO,this.curCommandRelative="h"===n;else if("v"===n||"V"===n)this.curCommandType=_.VERT_LINE_TO,this.curCommandRelative="v"===n;else if("m"===n||"M"===n)this.curCommandType=_.MOVE_TO,this.curCommandRelative="m"===n;else if("l"===n||"L"===n)this.curCommandType=_.LINE_TO,this.curCommandRelative="l"===n;else if("c"===n||"C"===n)this.curCommandType=_.CURVE_TO,this.curCommandRelative="c"===n;else if("s"===n||"S"===n)this.curCommandType=_.SMOOTH_CURVE_TO,this.curCommandRelative="s"===n;else if("q"===n||"Q"===n)this.curCommandType=_.QUAD_TO,this.curCommandRelative="q"===n;else if("t"===n||"T"===n)this.curCommandType=_.SMOOTH_QUAD_TO,this.curCommandRelative="t"===n;else{if("a"!==n&&"A"!==n)throw new SyntaxError('Unexpected character "'+n+'" at index '+a+".");this.curCommandType=_.ARC,this.curCommandRelative="a"===n}else r.push({type:_.CLOSE_PATH}),this.canParseCommandOrComma=!0,this.curCommandType=-1}else this.curNumber=n,this.curNumberHasDecimal="."===n}else this.curNumber+=n,this.curNumberHasDecimal=!0;else this.curNumber+=n;else this.curNumber+=n,this.curNumberHasExp=!0;else this.curNumber+=n,this.curNumberHasExpDigits=this.curNumberHasExp}return r},e.prototype.transform=function(t){return Object.create(this,{parse:{value:function(r,e){void 0===e&&(e=[]);for(var i=0,a=Object.getPrototypeOf(this).parse.call(this,r);i= 0; i--) {
+ if (!trim(cookies[i])) {
+ continue
+ }
+ var kvp = cookies[i].split('=')
+ var key = unescape(kvp[0])
+ var val = unescape(kvp[1])
+ callback(val, key)
+ }
+}
+
+function write(key, data) {
+ if(!key) { return }
+ doc.cookie = escape(key) + "=" + escape(data) + "; expires=Tue, 19 Jan 2038 03:14:07 GMT; path=/"
+}
+
+function remove(key) {
+ if (!key || !_has(key)) {
+ return
+ }
+ doc.cookie = escape(key) + "=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/"
+}
+
+function clearAll() {
+ each(function(_, key) {
+ remove(key)
+ })
+}
+
+function _has(key) {
+ return (new RegExp("(?:^|;\\s*)" + escape(key).replace(/[\-\.\+\*]/g, "\\$&") + "\\s*\\=")).test(doc.cookie)
+}
+
+
+/***/ }),
+
+/***/ 52496:
+/*!*******************************************************************!*\
+ !*** ./node_modules/_store@2.0.12@store/storages/localStorage.js ***!
+ \*******************************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+var util = __webpack_require__(/*! ../src/util */ 67039)
+var Global = util.Global
+
+module.exports = {
+ name: 'localStorage',
+ read: read,
+ write: write,
+ each: each,
+ remove: remove,
+ clearAll: clearAll,
+}
+
+function localStorage() {
+ return Global.localStorage
+}
+
+function read(key) {
+ return localStorage().getItem(key)
+}
+
+function write(key, data) {
+ return localStorage().setItem(key, data)
+}
+
+function each(fn) {
+ for (var i = localStorage().length - 1; i >= 0; i--) {
+ var key = localStorage().key(i)
+ fn(read(key), key)
+ }
+}
+
+function remove(key) {
+ return localStorage().removeItem(key)
+}
+
+function clearAll() {
+ return localStorage().clear()
+}
+
+
+/***/ }),
+
+/***/ 65300:
+/*!********************************************************************!*\
+ !*** ./node_modules/_store@2.0.12@store/storages/memoryStorage.js ***!
+ \********************************************************************/
+/***/ (function(module) {
+
+// memoryStorage is a useful last fallback to ensure that the store
+// is functions (meaning store.get(), store.set(), etc will all function).
+// However, stored values will not persist when the browser navigates to
+// a new page or reloads the current page.
+
+module.exports = {
+ name: 'memoryStorage',
+ read: read,
+ write: write,
+ each: each,
+ remove: remove,
+ clearAll: clearAll,
+}
+
+var memoryStorage = {}
+
+function read(key) {
+ return memoryStorage[key]
+}
+
+function write(key, data) {
+ memoryStorage[key] = data
+}
+
+function each(callback) {
+ for (var key in memoryStorage) {
+ if (memoryStorage.hasOwnProperty(key)) {
+ callback(memoryStorage[key], key)
+ }
+ }
+}
+
+function remove(key) {
+ delete memoryStorage[key]
+}
+
+function clearAll(key) {
+ memoryStorage = {}
+}
+
+
+/***/ }),
+
+/***/ 16436:
+/*!**************************************************************************!*\
+ !*** ./node_modules/_store@2.0.12@store/storages/oldFF-globalStorage.js ***!
+ \**************************************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+// oldFF-globalStorage provides storage for Firefox
+// versions 6 and 7, where no localStorage, etc
+// is available.
+
+var util = __webpack_require__(/*! ../src/util */ 67039)
+var Global = util.Global
+
+module.exports = {
+ name: 'oldFF-globalStorage',
+ read: read,
+ write: write,
+ each: each,
+ remove: remove,
+ clearAll: clearAll,
+}
+
+var globalStorage = Global.globalStorage
+
+function read(key) {
+ return globalStorage[key]
+}
+
+function write(key, data) {
+ globalStorage[key] = data
+}
+
+function each(fn) {
+ for (var i = globalStorage.length - 1; i >= 0; i--) {
+ var key = globalStorage.key(i)
+ fn(globalStorage[key], key)
+ }
+}
+
+function remove(key) {
+ return globalStorage.removeItem(key)
+}
+
+function clearAll() {
+ each(function(key, _) {
+ delete globalStorage[key]
+ })
+}
+
+
+/***/ }),
+
+/***/ 76673:
+/*!****************************************************************************!*\
+ !*** ./node_modules/_store@2.0.12@store/storages/oldIE-userDataStorage.js ***!
+ \****************************************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+// oldIE-userDataStorage provides storage for Internet Explorer
+// versions 6 and 7, where no localStorage, sessionStorage, etc
+// is available.
+
+var util = __webpack_require__(/*! ../src/util */ 67039)
+var Global = util.Global
+
+module.exports = {
+ name: 'oldIE-userDataStorage',
+ write: write,
+ read: read,
+ each: each,
+ remove: remove,
+ clearAll: clearAll,
+}
+
+var storageName = 'storejs'
+var doc = Global.document
+var _withStorageEl = _makeIEStorageElFunction()
+var disable = (Global.navigator ? Global.navigator.userAgent : '').match(/ (MSIE 8|MSIE 9|MSIE 10)\./) // MSIE 9.x, MSIE 10.x
+
+function write(unfixedKey, data) {
+ if (disable) { return }
+ var fixedKey = fixKey(unfixedKey)
+ _withStorageEl(function(storageEl) {
+ storageEl.setAttribute(fixedKey, data)
+ storageEl.save(storageName)
+ })
+}
+
+function read(unfixedKey) {
+ if (disable) { return }
+ var fixedKey = fixKey(unfixedKey)
+ var res = null
+ _withStorageEl(function(storageEl) {
+ res = storageEl.getAttribute(fixedKey)
+ })
+ return res
+}
+
+function each(callback) {
+ _withStorageEl(function(storageEl) {
+ var attributes = storageEl.XMLDocument.documentElement.attributes
+ for (var i=attributes.length-1; i>=0; i--) {
+ var attr = attributes[i]
+ callback(storageEl.getAttribute(attr.name), attr.name)
+ }
+ })
+}
+
+function remove(unfixedKey) {
+ var fixedKey = fixKey(unfixedKey)
+ _withStorageEl(function(storageEl) {
+ storageEl.removeAttribute(fixedKey)
+ storageEl.save(storageName)
+ })
+}
+
+function clearAll() {
+ _withStorageEl(function(storageEl) {
+ var attributes = storageEl.XMLDocument.documentElement.attributes
+ storageEl.load(storageName)
+ for (var i=attributes.length-1; i>=0; i--) {
+ storageEl.removeAttribute(attributes[i].name)
+ }
+ storageEl.save(storageName)
+ })
+}
+
+// Helpers
+//////////
+
+// In IE7, keys cannot start with a digit or contain certain chars.
+// See https://github.com/marcuswestin/store.js/issues/40
+// See https://github.com/marcuswestin/store.js/issues/83
+var forbiddenCharsRegex = new RegExp("[!\"#$%&'()*+,/\\\\:;<=>?@[\\]^`{|}~]", "g")
+function fixKey(key) {
+ return key.replace(/^\d/, '___$&').replace(forbiddenCharsRegex, '___')
+}
+
+function _makeIEStorageElFunction() {
+ if (!doc || !doc.documentElement || !doc.documentElement.addBehavior) {
+ return null
+ }
+ var scriptTag = 'script',
+ storageOwner,
+ storageContainer,
+ storageEl
+
+ // Since #userData storage applies only to specific paths, we need to
+ // somehow link our data to a specific path. We choose /favicon.ico
+ // as a pretty safe option, since all browsers already make a request to
+ // this URL anyway and being a 404 will not hurt us here. We wrap an
+ // iframe pointing to the favicon in an ActiveXObject(htmlfile) object
+ // (see: http://msdn.microsoft.com/en-us/library/aa752574(v=VS.85).aspx)
+ // since the iframe access rules appear to allow direct access and
+ // manipulation of the document element, even for a 404 page. This
+ // document can be used instead of the current document (which would
+ // have been limited to the current path) to perform #userData storage.
+ try {
+ /* global ActiveXObject */
+ storageContainer = new ActiveXObject('htmlfile')
+ storageContainer.open()
+ storageContainer.write('<'+scriptTag+'>document.w=window'+scriptTag+'>')
+ storageContainer.close()
+ storageOwner = storageContainer.w.frames[0].document
+ storageEl = storageOwner.createElement('div')
+ } catch(e) {
+ // somehow ActiveXObject instantiation failed (perhaps some special
+ // security settings or otherwse), fall back to per-path storage
+ storageEl = doc.createElement('div')
+ storageOwner = doc.body
+ }
+
+ return function(storeFunction) {
+ var args = [].slice.call(arguments, 0)
+ args.unshift(storageEl)
+ // See http://msdn.microsoft.com/en-us/library/ms531081(v=VS.85).aspx
+ // and http://msdn.microsoft.com/en-us/library/ms531424(v=VS.85).aspx
+ storageOwner.appendChild(storageEl)
+ storageEl.addBehavior('#default#userData')
+ storageEl.load(storageName)
+ storeFunction.apply(this, args)
+ storageOwner.removeChild(storageEl)
+ return
+ }
+}
+
+
+/***/ }),
+
+/***/ 65578:
+/*!*********************************************************************!*\
+ !*** ./node_modules/_store@2.0.12@store/storages/sessionStorage.js ***!
+ \*********************************************************************/
+/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
+
+var util = __webpack_require__(/*! ../src/util */ 67039)
+var Global = util.Global
+
+module.exports = {
+ name: 'sessionStorage',
+ read: read,
+ write: write,
+ each: each,
+ remove: remove,
+ clearAll: clearAll
+}
+
+function sessionStorage() {
+ return Global.sessionStorage
+}
+
+function read(key) {
+ return sessionStorage().getItem(key)
+}
+
+function write(key, data) {
+ return sessionStorage().setItem(key, data)
+}
+
+function each(fn) {
+ for (var i = sessionStorage().length - 1; i >= 0; i--) {
+ var key = sessionStorage().key(i)
+ fn(read(key), key)
+ }
+}
+
+function remove(key) {
+ return sessionStorage().removeItem(key)
+}
+
+function clearAll() {
+ return sessionStorage().clear()
+}
+
+
/***/ })
}]);
\ No newline at end of file
diff --git a/40774.async.js b/40774.async.js
index e546cfe810..78e2ec541c 100644
--- a/40774.async.js
+++ b/40774.async.js
@@ -1373,7 +1373,7 @@ function DiffEditor(_ref4) {
}
(0,_react_17_0_2_react.useEffect)(function () {
if (editorEl.current) {
- Promise.all(/*! import() | monaco-editor */[__webpack_require__.e(19208), __webpack_require__.e(39404)]).then(__webpack_require__.bind(__webpack_require__, /*! monaco-editor/esm/vs/editor/editor.api.js */ 72240)).then(function (mod) {
+ Promise.all(/*! import() | monaco-editor */[__webpack_require__.e(19208), __webpack_require__.e(39404)]).then(__webpack_require__.bind(__webpack_require__, /*! monaco-editor/esm/vs/editor/editor.api.js */ 2550)).then(function (mod) {
monaco = mod;
var instance = monaco.editor.createDiffEditor(editorEl.current, objectSpread2_default()(objectSpread2_default()({
enableSplitViewResizing: false,
diff --git a/42441.async.js b/42441.async.js
index 558e3124dc..be84b60f43 100644
--- a/42441.async.js
+++ b/42441.async.js
@@ -623,7 +623,7 @@ module.exports = _default;
/***/ }),
-/***/ 92293:
+/***/ 2442:
/*!**********************************************************************************!*\
!*** ./node_modules/_echarts@4.8.0@echarts/lib/action/createDataSelectAction.js ***!
\**********************************************************************************/
@@ -15923,7 +15923,7 @@ var mapDataStatistic = __webpack_require__(/*! ./map/mapDataStatistic */ 63730);
var backwardCompat = __webpack_require__(/*! ./map/backwardCompat */ 50027);
-var createDataSelectAction = __webpack_require__(/*! ../action/createDataSelectAction */ 92293);
+var createDataSelectAction = __webpack_require__(/*! ../action/createDataSelectAction */ 2442);
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -17487,7 +17487,7 @@ __webpack_require__(/*! ./pie/PieSeries */ 66403);
__webpack_require__(/*! ./pie/PieView */ 60372);
-var createDataSelectAction = __webpack_require__(/*! ../action/createDataSelectAction */ 92293);
+var createDataSelectAction = __webpack_require__(/*! ../action/createDataSelectAction */ 2442);
var dataColor = __webpack_require__(/*! ../visual/dataColor */ 22333);
diff --git a/75005.async.js b/42472.async.js
similarity index 70%
rename from 75005.async.js
rename to 42472.async.js
index d6a0e7f1b7..c76694e652 100644
--- a/75005.async.js
+++ b/42472.async.js
@@ -1,4 +1,4 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[75005],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[42472],{
/***/ 44000:
/*!**********************************************************!*\
@@ -8,7 +8,7 @@
"use strict";
/* harmony import */ var _layout__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./layout */ 84966);
-/* harmony import */ var _Sider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Sider */ 37534);
+/* harmony import */ var _Sider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Sider */ 32234);
"use client";
@@ -241,6 +241,309 @@ if (false) {}
/***/ }),
+/***/ 31561:
+/*!*****************************************************************************!*\
+ !*** ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/index.js + 4 modules ***!
+ \*****************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ _rc_dropdown_4_1_0_rc_dropdown_es; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_@rc-component_trigger@1.18.3@@rc-component/trigger/es/index.js + 11 modules
+var es = __webpack_require__(35593);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/ref.js
+var es_ref = __webpack_require__(88831);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/raf.js
+var raf = __webpack_require__(90571);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/hooks/useAccessibility.js
+
+
+
+var ESC = KeyCode/* default */.Z.ESC,
+ TAB = KeyCode/* default */.Z.TAB;
+function useAccessibility(_ref) {
+ var visible = _ref.visible,
+ triggerRef = _ref.triggerRef,
+ onVisibleChange = _ref.onVisibleChange,
+ autoFocus = _ref.autoFocus,
+ overlayRef = _ref.overlayRef;
+ var focusMenuRef = _react_17_0_2_react.useRef(false);
+ var handleCloseMenuAndReturnFocus = function handleCloseMenuAndReturnFocus() {
+ if (visible) {
+ var _triggerRef$current, _triggerRef$current$f;
+ (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$f = _triggerRef$current.focus) === null || _triggerRef$current$f === void 0 ? void 0 : _triggerRef$current$f.call(_triggerRef$current);
+ onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(false);
+ }
+ };
+ var focusMenu = function focusMenu() {
+ var _overlayRef$current;
+ if ((_overlayRef$current = overlayRef.current) !== null && _overlayRef$current !== void 0 && _overlayRef$current.focus) {
+ overlayRef.current.focus();
+ focusMenuRef.current = true;
+ return true;
+ }
+ return false;
+ };
+ var handleKeyDown = function handleKeyDown(event) {
+ switch (event.keyCode) {
+ case ESC:
+ handleCloseMenuAndReturnFocus();
+ break;
+ case TAB:
+ {
+ var focusResult = false;
+ if (!focusMenuRef.current) {
+ focusResult = focusMenu();
+ }
+ if (focusResult) {
+ event.preventDefault();
+ } else {
+ handleCloseMenuAndReturnFocus();
+ }
+ break;
+ }
+ }
+ };
+ _react_17_0_2_react.useEffect(function () {
+ if (visible) {
+ window.addEventListener("keydown", handleKeyDown);
+ if (autoFocus) {
+ // FIXME: hack with raf
+ (0,raf/* default */.Z)(focusMenu, 3);
+ }
+ return function () {
+ window.removeEventListener("keydown", handleKeyDown);
+ focusMenuRef.current = false;
+ };
+ }
+ return function () {
+ focusMenuRef.current = false;
+ };
+ }, [visible]); // eslint-disable-line react-hooks/exhaustive-deps
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/Overlay.js
+
+
+var Overlay = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(function (props, ref) {
+ var overlay = props.overlay,
+ arrow = props.arrow,
+ prefixCls = props.prefixCls;
+ var overlayNode = (0,_react_17_0_2_react.useMemo)(function () {
+ var overlayElement;
+ if (typeof overlay === 'function') {
+ overlayElement = overlay();
+ } else {
+ overlayElement = overlay;
+ }
+ return overlayElement;
+ }, [overlay]);
+ var composedRef = (0,es_ref/* composeRef */.sQ)(ref, overlayNode === null || overlayNode === void 0 ? void 0 : overlayNode.ref);
+ return /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, arrow && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-arrow")
+ }), /*#__PURE__*/_react_17_0_2_react.cloneElement(overlayNode, {
+ ref: (0,es_ref/* supportRef */.Yr)(overlayNode) ? composedRef : undefined
+ }));
+});
+/* harmony default export */ var es_Overlay = (Overlay);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/placements.js
+var autoAdjustOverflow = {
+ adjustX: 1,
+ adjustY: 1
+};
+var targetOffset = [0, 0];
+var placements = {
+ topLeft: {
+ points: ['bl', 'tl'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ top: {
+ points: ['bc', 'tc'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ topRight: {
+ points: ['br', 'tr'],
+ overflow: autoAdjustOverflow,
+ offset: [0, -4],
+ targetOffset: targetOffset
+ },
+ bottomLeft: {
+ points: ['tl', 'bl'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ },
+ bottom: {
+ points: ['tc', 'bc'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ },
+ bottomRight: {
+ points: ['tr', 'br'],
+ overflow: autoAdjustOverflow,
+ offset: [0, 4],
+ targetOffset: targetOffset
+ }
+};
+/* harmony default export */ var es_placements = (placements);
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/Dropdown.js
+
+
+
+
+var _excluded = ["arrow", "prefixCls", "transitionName", "animation", "align", "placement", "placements", "getPopupContainer", "showAction", "hideAction", "overlayClassName", "overlayStyle", "visible", "trigger", "autoFocus", "overlay", "children", "onVisibleChange"];
+
+
+
+
+
+
+
+function Dropdown(props, ref) {
+ var _children$props;
+ var _props$arrow = props.arrow,
+ arrow = _props$arrow === void 0 ? false : _props$arrow,
+ _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-dropdown' : _props$prefixCls,
+ transitionName = props.transitionName,
+ animation = props.animation,
+ align = props.align,
+ _props$placement = props.placement,
+ placement = _props$placement === void 0 ? 'bottomLeft' : _props$placement,
+ _props$placements = props.placements,
+ placements = _props$placements === void 0 ? es_placements : _props$placements,
+ getPopupContainer = props.getPopupContainer,
+ showAction = props.showAction,
+ hideAction = props.hideAction,
+ overlayClassName = props.overlayClassName,
+ overlayStyle = props.overlayStyle,
+ visible = props.visible,
+ _props$trigger = props.trigger,
+ trigger = _props$trigger === void 0 ? ['hover'] : _props$trigger,
+ autoFocus = props.autoFocus,
+ overlay = props.overlay,
+ children = props.children,
+ onVisibleChange = props.onVisibleChange,
+ otherProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var _React$useState = _react_17_0_2_react.useState(),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ triggerVisible = _React$useState2[0],
+ setTriggerVisible = _React$useState2[1];
+ var mergedVisible = 'visible' in props ? visible : triggerVisible;
+ var triggerRef = _react_17_0_2_react.useRef(null);
+ var overlayRef = _react_17_0_2_react.useRef(null);
+ var childRef = _react_17_0_2_react.useRef(null);
+ _react_17_0_2_react.useImperativeHandle(ref, function () {
+ return triggerRef.current;
+ });
+ var handleVisibleChange = function handleVisibleChange(newVisible) {
+ setTriggerVisible(newVisible);
+ onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(newVisible);
+ };
+ useAccessibility({
+ visible: mergedVisible,
+ triggerRef: childRef,
+ onVisibleChange: handleVisibleChange,
+ autoFocus: autoFocus,
+ overlayRef: overlayRef
+ });
+ var onClick = function onClick(e) {
+ var onOverlayClick = props.onOverlayClick;
+ setTriggerVisible(false);
+ if (onOverlayClick) {
+ onOverlayClick(e);
+ }
+ };
+ var getMenuElement = function getMenuElement() {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_Overlay, {
+ ref: overlayRef,
+ overlay: overlay,
+ prefixCls: prefixCls,
+ arrow: arrow
+ });
+ };
+ var getMenuElementOrLambda = function getMenuElementOrLambda() {
+ if (typeof overlay === 'function') {
+ return getMenuElement;
+ }
+ return getMenuElement();
+ };
+ var getMinOverlayWidthMatchTrigger = function getMinOverlayWidthMatchTrigger() {
+ var minOverlayWidthMatchTrigger = props.minOverlayWidthMatchTrigger,
+ alignPoint = props.alignPoint;
+ if ('minOverlayWidthMatchTrigger' in props) {
+ return minOverlayWidthMatchTrigger;
+ }
+ return !alignPoint;
+ };
+ var getOpenClassName = function getOpenClassName() {
+ var openClassName = props.openClassName;
+ if (openClassName !== undefined) {
+ return openClassName;
+ }
+ return "".concat(prefixCls, "-open");
+ };
+ var childrenNode = /*#__PURE__*/_react_17_0_2_react.cloneElement(children, {
+ className: _classnames_2_5_1_classnames_default()((_children$props = children.props) === null || _children$props === void 0 ? void 0 : _children$props.className, mergedVisible && getOpenClassName()),
+ ref: (0,es_ref/* supportRef */.Yr)(children) ? (0,es_ref/* composeRef */.sQ)(childRef, children.ref) : undefined
+ });
+ var triggerHideAction = hideAction;
+ if (!triggerHideAction && trigger.indexOf('contextMenu') !== -1) {
+ triggerHideAction = ['click'];
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, (0,esm_extends/* default */.Z)({
+ builtinPlacements: placements
+ }, otherProps, {
+ prefixCls: prefixCls,
+ ref: triggerRef,
+ popupClassName: _classnames_2_5_1_classnames_default()(overlayClassName, (0,defineProperty/* default */.Z)({}, "".concat(prefixCls, "-show-arrow"), arrow)),
+ popupStyle: overlayStyle,
+ action: trigger,
+ showAction: showAction,
+ hideAction: triggerHideAction,
+ popupPlacement: placement,
+ popupAlign: align,
+ popupTransitionName: transitionName,
+ popupAnimation: animation,
+ popupVisible: mergedVisible,
+ stretch: getMinOverlayWidthMatchTrigger() ? 'minWidth' : '',
+ popup: getMenuElementOrLambda(),
+ onPopupVisibleChange: handleVisibleChange,
+ onPopupClick: onClick,
+ getPopupContainer: getPopupContainer
+ }), childrenNode);
+}
+/* harmony default export */ var es_Dropdown = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Dropdown));
+;// CONCATENATED MODULE: ./node_modules/_rc-dropdown@4.1.0@rc-dropdown/es/index.js
+
+/* harmony default export */ var _rc_dropdown_4_1_0_rc_dropdown_es = (es_Dropdown);
+
+/***/ }),
+
/***/ 7761:
/*!*************************************************************************!*\
!*** ./node_modules/_rc-util@5.38.1@rc-util/es/Dom/addEventListener.js ***!
diff --git a/42871.async.js b/42871.async.js
new file mode 100644
index 0000000000..ebeccc86f4
--- /dev/null
+++ b/42871.async.js
@@ -0,0 +1,1756 @@
+"use strict";
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[42871,22804,4977],{
+
+/***/ 15411:
+/*!**********************************************!*\
+ !*** ./src/components/AsyncButton/index.tsx ***!
+ \**********************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ Z: function() { return /* binding */ AsyncButton; }
+/* harmony export */ });
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js */ 7557);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js */ 41498);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectWithoutProperties.js */ 39647);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_4__);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! antd */ 3113);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
+
+
+
+
+
+var _excluded = ["children"];
+
+
+
+var AsyncButton = function AsyncButton(_ref) {
+ var children = _ref.children,
+ props = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_4___default()(_ref, _excluded);
+ var _useState = (0,react__WEBPACK_IMPORTED_MODULE_5__.useState)(false),
+ _useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState, 2),
+ btnLoading = _useState2[0],
+ setBtnLoading = _useState2[1];
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, props), {}, {
+ loading: btnLoading,
+ onClick: ( /*#__PURE__*/function () {
+ var _ref2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee(e) {
+ return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _context.prev = 0;
+ setBtnLoading(true);
+ _context.next = 4;
+ return props.onClick(e);
+ case 4:
+ setBtnLoading(false);
+ _context.next = 11;
+ break;
+ case 7:
+ _context.prev = 7;
+ _context.t0 = _context["catch"](0);
+ console.error(_context.t0);
+ setBtnLoading(false);
+ case 11:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee, null, [[0, 7]]);
+ }));
+ return function (_x) {
+ return _ref2.apply(this, arguments);
+ };
+ }()),
+ children: children
+ }));
+};
+
+/***/ }),
+
+/***/ 54926:
+/*!*****************************************************************************!*\
+ !*** ./src/pages/Shixuns/Edit/body/Environment/Label/index.tsx + 1 modules ***!
+ \*****************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ Environment_Label; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./src/pages/Shixuns/Edit/body/Environment/Label/index.less?modules
+// extracted by mini-css-extract-plugin
+/* harmony default export */ var Labelmodules = ({"label":"label___CZ1_z","left":"left___ZKFRV","right":"right___zVTRn","error":"error___oNJNo"});
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
+var tooltip = __webpack_require__(6848);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
+var jsx_runtime = __webpack_require__(37712);
+;// CONCATENATED MODULE: ./src/pages/Shixuns/Edit/body/Environment/Label/index.tsx
+
+
+
+
+
+var Label = function Label(_ref) {
+ var name = _ref.name,
+ tooltipTitle = _ref.tooltipTitle,
+ children = _ref.children,
+ required = _ref.required,
+ errorKey = _ref.errorKey,
+ errorValue = _ref.errorValue,
+ errorName = _ref.errorName,
+ _ref$errorStyle = _ref.errorStyle,
+ errorStyle = _ref$errorStyle === void 0 ? {} : _ref$errorStyle,
+ _ref$nameWidth = _ref.nameWidth,
+ nameWidth = _ref$nameWidth === void 0 ? 112 : _ref$nameWidth,
+ _ref$align = _ref.align,
+ align = _ref$align === void 0 ? 'center' : _ref$align,
+ _ref$contentStyle = _ref.contentStyle,
+ contentStyle = _ref$contentStyle === void 0 ? {} : _ref$contentStyle;
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(_react_17_0_2_react.Fragment, {
+ children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ className: Labelmodules.label,
+ style: {
+ alignItems: align
+ },
+ children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ className: Labelmodules.left,
+ style: {
+ width: nameWidth
+ },
+ children: [required && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
+ children: "*"
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ children: name
+ }), !!tooltipTitle && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
+ title: tooltipTitle,
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
+ className: "iconfont icon-xiaowenhao2"
+ })
+ })]
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ className: Labelmodules.right,
+ style: contentStyle,
+ children: [children, errorName && errorValue === errorKey && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ className: Labelmodules.error,
+ style: errorStyle,
+ children: errorName
+ })]
+ })]
+ })
+ });
+};
+/* harmony default export */ var Environment_Label = (Label);
+
+/***/ }),
+
+/***/ 86850:
+/*!************************************************************************************************!*\
+ !*** ./src/pages/User/Detail/ExperImentImg/components/ModifyMirrorModal/index.tsx + 1 modules ***!
+ \************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ components_ModifyMirrorModal; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
+var regeneratorRuntime = __webpack_require__(7557);
+var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
+var objectSpread2 = __webpack_require__(82242);
+var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
+var asyncToGenerator = __webpack_require__(41498);
+var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
+var slicedToArray = __webpack_require__(79800);
+var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
+var es_form = __webpack_require__(78241);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
+var message = __webpack_require__(8591);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
+var modal = __webpack_require__(43418);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
+var input = __webpack_require__(11694);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
+var es_button = __webpack_require__(3113);
+// EXTERNAL MODULE: ./src/utils/fetch.ts
+var fetch = __webpack_require__(41686);
+// EXTERNAL MODULE: ./src/components/markdown-editor/index.tsx + 15 modules
+var markdown_editor = __webpack_require__(89215);
+;// CONCATENATED MODULE: ./src/pages/User/Detail/ExperImentImg/components/ModifyMirrorModal/index.less?modules
+// extracted by mini-css-extract-plugin
+/* harmony default export */ var ModifyMirrorModalmodules = ({"errorTip":"errorTip___yZItq","btns":"btns___kcUDL","confirm":"confirm___EXVbh","cancel":"cancel___vQdUc","formWrap":"formWrap___diWab"});
+// EXTERNAL MODULE: ./src/components/AsyncButton/index.tsx
+var AsyncButton = __webpack_require__(15411);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
+var jsx_runtime = __webpack_require__(37712);
+;// CONCATENATED MODULE: ./src/pages/User/Detail/ExperImentImg/components/ModifyMirrorModal/index.tsx
+
+
+
+
+
+
+
+
+
+
+
+
+var ModifyMirrorModal = function ModifyMirrorModal(_ref) {
+ var visible = _ref.visible,
+ mirrorId = _ref.mirrorId,
+ setVisible = _ref.setVisible,
+ getData = _ref.getData;
+ var _Form$useForm = es_form/* default */.Z.useForm(),
+ _Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
+ form = _Form$useForm2[0];
+ var _useState = (0,_react_17_0_2_react.useState)({}),
+ _useState2 = slicedToArray_default()(_useState, 2),
+ formValue = _useState2[0],
+ setFormValue = _useState2[1];
+ var _useState3 = (0,_react_17_0_2_react.useState)(''),
+ _useState4 = slicedToArray_default()(_useState3, 2),
+ errorMsg = _useState4[0],
+ setErrorMsg = _useState4[1];
+ var _useState5 = (0,_react_17_0_2_react.useState)(false),
+ _useState6 = slicedToArray_default()(_useState5, 2),
+ btnLoading = _useState6[0],
+ setBtnLoading = _useState6[1];
+ (0,_react_17_0_2_react.useEffect)(function () {
+ if (mirrorId != undefined && visible) {
+ getMirrorInfo();
+ }
+ }, [mirrorId, visible]);
+ var getMirrorInfo = /*#__PURE__*/function () {
+ var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
+ var res;
+ return regeneratorRuntime_default()().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _context.next = 2;
+ return (0,fetch/* default */.ZP)("/api/user_mirrors/".concat(mirrorId, ".json"), {
+ method: 'get'
+ });
+ case 2:
+ res = _context.sent;
+ if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
+ form.setFieldsValue(objectSpread2_default()({}, res === null || res === void 0 ? void 0 : res.data));
+ setFormValue(objectSpread2_default()({}, res === null || res === void 0 ? void 0 : res.data));
+ }
+ case 4:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }));
+ return function getMirrorInfo() {
+ return _ref2.apply(this, arguments);
+ };
+ }();
+ var onCancel = function onCancel() {
+ setVisible(false);
+ setFormValue({});
+ form.setFieldsValue({});
+ };
+ var onOk = /*#__PURE__*/function () {
+ var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
+ var formValue, res;
+ return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ setBtnLoading(true);
+ _context2.t0 = (objectSpread2_default());
+ _context2.t1 = {};
+ _context2.next = 5;
+ return form.validateFields();
+ case 5:
+ _context2.t2 = _context2.sent;
+ formValue = (0, _context2.t0)(_context2.t1, _context2.t2);
+ _context2.next = 9;
+ return (0,fetch/* default */.ZP)("/api/user_mirrors/".concat(mirrorId, ".json"), {
+ method: 'put',
+ body: {
+ type_name: formValue === null || formValue === void 0 ? void 0 : formValue.type_name,
+ description: formValue === null || formValue === void 0 ? void 0 : formValue.description
+ }
+ });
+ case 9:
+ res = _context2.sent;
+ if (res.status === 0) {
+ message/* default */.ZP.success('修改成功');
+ getData();
+ }
+ setBtnLoading(false);
+ setVisible(false);
+ case 13:
+ case "end":
+ return _context2.stop();
+ }
+ }, _callee2);
+ }));
+ return function onOk() {
+ return _ref3.apply(this, arguments);
+ };
+ }();
+ var checkMirrornameExist = /*#__PURE__*/function () {
+ var _ref4 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(value) {
+ var res;
+ return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
+ while (1) switch (_context3.prev = _context3.next) {
+ case 0:
+ _context3.next = 2;
+ return (0,fetch/* default */.ZP)("/api/user_mirrors/check_mirror_name.json", {
+ method: 'post',
+ body: {
+ type_name: value,
+ id: mirrorId
+ }
+ });
+ case 2:
+ res = _context3.sent;
+ if (!((res === null || res === void 0 ? void 0 : res.status) === 0)) {
+ _context3.next = 7;
+ break;
+ }
+ return _context3.abrupt("return", {
+ state: false
+ });
+ case 7:
+ return _context3.abrupt("return", {
+ state: true,
+ msg: res === null || res === void 0 ? void 0 : res.message
+ });
+ case 8:
+ case "end":
+ return _context3.stop();
+ }
+ }, _callee3);
+ }));
+ return function checkMirrornameExist(_x) {
+ return _ref4.apply(this, arguments);
+ };
+ }();
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)(modal/* default */.Z, {
+ centered: true,
+ width: 1200,
+ title: "\u4FEE\u6539\u955C\u50CF\u4FE1\u606F",
+ maskClosable: false,
+ open: visible,
+ destroyOnClose: true,
+ footer: null,
+ onCancel: onCancel,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
+ style: {
+ marginTop: 20
+ },
+ form: form,
+ scrollToFirstError: true,
+ layout: "horizontal",
+ className: ModifyMirrorModalmodules.formWrap,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
+ label: "\u955C\u50CF\u540D\u79F0",
+ name: "type_name",
+ colon: false,
+ className: ModifyMirrorModalmodules.errorTip,
+ rules: [{
+ required: true,
+ message: ''
+ },
+ // { required: true,message: '镜像名称不能为空'},
+ // { max: 60, message: '最多输入60个字符' },
+ // { pattern: /^[a-zA-Z][a-zA-Z0-9#+.\-/_:]*$/, message: '只能以字母开头,仅支持字母、数字和特殊字符#+.-/_:' },
+ {
+ validator: function () {
+ var _validator = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4(rule, value) {
+ var res;
+ return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
+ while (1) switch (_context4.prev = _context4.next) {
+ case 0:
+ _context4.next = 2;
+ return checkMirrornameExist(value);
+ case 2:
+ res = _context4.sent;
+ return _context4.abrupt("return", (res === null || res === void 0 ? void 0 : res.state) === true ? Promise.reject(res === null || res === void 0 ? void 0 : res.msg) : Promise.resolve());
+ case 4:
+ case "end":
+ return _context4.stop();
+ }
+ }, _callee4);
+ }));
+ function validator(_x2, _x3) {
+ return _validator.apply(this, arguments);
+ }
+ return validator;
+ }()
+ }],
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
+ size: "large",
+ maxLength: 60,
+ placeholder: "\u8BF7\u8F93\u5165\u955C\u50CF\u540D\u79F0"
+ })
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
+ label: "\u955C\u50CF\u63CF\u8FF0",
+ name: "description",
+ colon: false,
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
+ watch: true,
+ height: 300,
+ placeholder: '',
+ defaultValue: formValue === null || formValue === void 0 ? void 0 : formValue.description,
+ onChange: function onChange(value) {
+ form.setFieldsValue(objectSpread2_default()(objectSpread2_default()({}, form.getFieldsValue()), {}, {
+ description: value
+ }));
+ setFormValue(objectSpread2_default()(objectSpread2_default()({}, formValue), {}, {
+ description: value
+ }));
+ },
+ onBlur: function onBlur(value) {
+ form.setFieldsValue(objectSpread2_default()(objectSpread2_default()({}, form.getFieldsValue()), {}, {
+ description: value
+ }));
+ setFormValue(objectSpread2_default()(objectSpread2_default()({}, formValue), {}, {
+ description: value
+ }));
+ }
+ })
+ })]
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ className: ModifyMirrorModalmodules.btns,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
+ onClick: onCancel,
+ className: ModifyMirrorModalmodules.cancel,
+ children: "\u53D6\u6D88 "
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(AsyncButton/* AsyncButton */.Z, {
+ type: "primary",
+ className: ModifyMirrorModalmodules.confirm,
+ onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5() {
+ return regeneratorRuntime_default()().wrap(function _callee5$(_context5) {
+ while (1) switch (_context5.prev = _context5.next) {
+ case 0:
+ _context5.next = 2;
+ return onOk();
+ case 2:
+ case "end":
+ return _context5.stop();
+ }
+ }, _callee5);
+ })),
+ children: "\u786E\u5B9A"
+ })]
+ })]
+ });
+};
+/* harmony default export */ var components_ModifyMirrorModal = (ModifyMirrorModal);
+
+/***/ }),
+
+/***/ 66573:
+/*!*********************************************!*\
+ !*** ./src/pages/tasks/vnc-view/index.less ***!
+ \*********************************************/
+/***/ (function() {
+
+// extracted by mini-css-extract-plugin
+
+
+/***/ }),
+
+/***/ 77578:
+/*!**********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/_util/getRenderPropValue.js ***!
+ \**********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ Z: function() { return /* binding */ getRenderPropValue; }
+/* harmony export */ });
+const getRenderPropValue = propValue => {
+ if (!propValue) {
+ return null;
+ }
+ if (typeof propValue === 'function') {
+ return propValue();
+ }
+ return propValue;
+};
+
+/***/ }),
+
+/***/ 39722:
+/*!***************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/PurePanel.js ***!
+ \***************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ t5: function() { return /* binding */ RawPurePanel; }
+/* harmony export */ });
+/* unused harmony export getOverlay */
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var rc_tooltip__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rc-tooltip */ 55477);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../config-provider */ 36355);
+/* harmony import */ var _util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../_util/getRenderPropValue */ 77578);
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./style */ 17356);
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+const getOverlay = (prefixCls, title, content) => {
+ if (!title && !content) return undefined;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(react__WEBPACK_IMPORTED_MODULE_2__.Fragment, null, title && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-title`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__/* .getRenderPropValue */ .Z)(title)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-inner-content`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_3__/* .getRenderPropValue */ .Z)(content)));
+};
+const RawPurePanel = props => {
+ const {
+ hashId,
+ prefixCls,
+ className,
+ style,
+ placement = 'top',
+ title,
+ content,
+ children
+ } = props;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: classnames__WEBPACK_IMPORTED_MODULE_0___default()(hashId, prefixCls, `${prefixCls}-pure`, `${prefixCls}-placement-${placement}`, className),
+ style: style
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", {
+ className: `${prefixCls}-arrow`
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(rc_tooltip__WEBPACK_IMPORTED_MODULE_1__/* .Popup */ .G, Object.assign({}, props, {
+ className: hashId,
+ prefixCls: prefixCls
+ }), children || getOverlay(prefixCls, title, content)));
+};
+const PurePanel = props => {
+ const {
+ prefixCls: customizePrefixCls
+ } = props,
+ restProps = __rest(props, ["prefixCls"]);
+ const {
+ getPrefixCls
+ } = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_4__/* .ConfigContext */ .E_);
+ const prefixCls = getPrefixCls('popover', customizePrefixCls);
+ const [wrapSSR, hashId] = (0,_style__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)(prefixCls);
+ return wrapSSR( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(RawPurePanel, Object.assign({}, restProps, {
+ prefixCls: prefixCls,
+ hashId: hashId
+ })));
+};
+/* harmony default export */ __webpack_exports__.ZP = (PurePanel);
+
+/***/ }),
+
+/***/ 60324:
+/*!***********************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/index.js ***!
+ \***********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../_util/getRenderPropValue */ 77578);
+/* harmony import */ var _util_motion__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../_util/motion */ 62892);
+/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../config-provider */ 36355);
+/* harmony import */ var _tooltip__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../tooltip */ 6848);
+/* harmony import */ var _PurePanel__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./PurePanel */ 39722);
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./style */ 17356);
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+// CSSINJS
+
+const Overlay = _ref => {
+ let {
+ title,
+ content,
+ prefixCls
+ } = _ref;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, title && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", {
+ className: `${prefixCls}-title`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__/* .getRenderPropValue */ .Z)(title)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", {
+ className: `${prefixCls}-inner-content`
+ }, (0,_util_getRenderPropValue__WEBPACK_IMPORTED_MODULE_2__/* .getRenderPropValue */ .Z)(content)));
+};
+const Popover = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.forwardRef((props, ref) => {
+ const {
+ prefixCls: customizePrefixCls,
+ title,
+ content,
+ overlayClassName,
+ placement = 'top',
+ trigger = 'hover',
+ mouseEnterDelay = 0.1,
+ mouseLeaveDelay = 0.1,
+ overlayStyle = {}
+ } = props,
+ otherProps = __rest(props, ["prefixCls", "title", "content", "overlayClassName", "placement", "trigger", "mouseEnterDelay", "mouseLeaveDelay", "overlayStyle"]);
+ const {
+ getPrefixCls
+ } = react__WEBPACK_IMPORTED_MODULE_1__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_3__/* .ConfigContext */ .E_);
+ const prefixCls = getPrefixCls('popover', customizePrefixCls);
+ const [wrapSSR, hashId] = (0,_style__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(prefixCls);
+ const rootPrefixCls = getPrefixCls();
+ const overlayCls = classnames__WEBPACK_IMPORTED_MODULE_0___default()(overlayClassName, hashId);
+ return wrapSSR( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_tooltip__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, Object.assign({
+ placement: placement,
+ trigger: trigger,
+ mouseEnterDelay: mouseEnterDelay,
+ mouseLeaveDelay: mouseLeaveDelay,
+ overlayStyle: overlayStyle
+ }, otherProps, {
+ prefixCls: prefixCls,
+ overlayClassName: overlayCls,
+ ref: ref,
+ overlay: title || content ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(Overlay, {
+ prefixCls: prefixCls,
+ title: title,
+ content: content
+ }) : null,
+ transitionName: (0,_util_motion__WEBPACK_IMPORTED_MODULE_6__/* .getTransitionName */ .m)(rootPrefixCls, 'zoom-big', otherProps.transitionName),
+ "data-popover-inject": true
+ })));
+});
+if (false) {}
+Popover._InternalPanelDoNotUseOrYouWillBeFired = _PurePanel__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP;
+/* harmony default export */ __webpack_exports__.Z = (Popover);
+
+/***/ }),
+
+/***/ 17356:
+/*!*****************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/popover/style/index.js ***!
+ \*****************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../style */ 17313);
+/* harmony import */ var _style_motion__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../style/motion */ 29878);
+/* harmony import */ var _style_placementArrow__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../style/placementArrow */ 19447);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../theme/internal */ 33166);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../theme/internal */ 83116);
+/* harmony import */ var _theme_internal__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../theme/internal */ 37613);
+"use client";
+
+
+
+
+
+const genBaseStyle = token => {
+ const {
+ componentCls,
+ popoverColor,
+ minWidth,
+ fontWeightStrong,
+ popoverPadding,
+ boxShadowSecondary,
+ colorTextHeading,
+ borderRadiusLG: borderRadius,
+ zIndexPopup,
+ marginXS,
+ colorBgElevated,
+ popoverBg
+ } = token;
+ return [{
+ [componentCls]: Object.assign(Object.assign({}, (0,_style__WEBPACK_IMPORTED_MODULE_0__/* .resetComponent */ .Wf)(token)), {
+ position: 'absolute',
+ top: 0,
+ // use `left` to fix https://github.com/ant-design/ant-design/issues/39195
+ left: {
+ _skip_check_: true,
+ value: 0
+ },
+ zIndex: zIndexPopup,
+ fontWeight: 'normal',
+ whiteSpace: 'normal',
+ textAlign: 'start',
+ cursor: 'auto',
+ userSelect: 'text',
+ transformOrigin: `var(--arrow-x, 50%) var(--arrow-y, 50%)`,
+ '--antd-arrow-background-color': colorBgElevated,
+ '&-rtl': {
+ direction: 'rtl'
+ },
+ '&-hidden': {
+ display: 'none'
+ },
+ [`${componentCls}-content`]: {
+ position: 'relative'
+ },
+ [`${componentCls}-inner`]: {
+ backgroundColor: popoverBg,
+ backgroundClip: 'padding-box',
+ borderRadius,
+ boxShadow: boxShadowSecondary,
+ padding: popoverPadding
+ },
+ [`${componentCls}-title`]: {
+ minWidth,
+ marginBottom: marginXS,
+ color: colorTextHeading,
+ fontWeight: fontWeightStrong
+ },
+ [`${componentCls}-inner-content`]: {
+ color: popoverColor
+ }
+ })
+ },
+ // Arrow Style
+ (0,_style_placementArrow__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .ZP)(token, {
+ colorBg: 'var(--antd-arrow-background-color)'
+ }),
+ // Pure Render
+ {
+ [`${componentCls}-pure`]: {
+ position: 'relative',
+ maxWidth: 'none',
+ margin: token.sizePopupArrow,
+ display: 'inline-block',
+ [`${componentCls}-content`]: {
+ display: 'inline-block'
+ }
+ }
+ }];
+};
+const genColorStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [componentCls]: _theme_internal__WEBPACK_IMPORTED_MODULE_2__/* .PresetColors */ .i.map(colorKey => {
+ const lightColor = token[`${colorKey}6`];
+ return {
+ [`&${componentCls}-${colorKey}`]: {
+ '--antd-arrow-background-color': lightColor,
+ [`${componentCls}-inner`]: {
+ backgroundColor: lightColor
+ },
+ [`${componentCls}-arrow`]: {
+ background: 'transparent'
+ }
+ }
+ };
+ })
+ };
+};
+const genWireframeStyle = token => {
+ const {
+ componentCls,
+ lineWidth,
+ lineType,
+ colorSplit,
+ paddingSM,
+ controlHeight,
+ fontSize,
+ lineHeight,
+ padding
+ } = token;
+ const titlePaddingBlockDist = controlHeight - Math.round(fontSize * lineHeight);
+ const popoverTitlePaddingBlockTop = titlePaddingBlockDist / 2;
+ const popoverTitlePaddingBlockBottom = titlePaddingBlockDist / 2 - lineWidth;
+ const popoverPaddingHorizontal = padding;
+ return {
+ [componentCls]: {
+ [`${componentCls}-inner`]: {
+ padding: 0
+ },
+ [`${componentCls}-title`]: {
+ margin: 0,
+ padding: `${popoverTitlePaddingBlockTop}px ${popoverPaddingHorizontal}px ${popoverTitlePaddingBlockBottom}px`,
+ borderBottom: `${lineWidth}px ${lineType} ${colorSplit}`
+ },
+ [`${componentCls}-inner-content`]: {
+ padding: `${paddingSM}px ${popoverPaddingHorizontal}px`
+ }
+ }
+ };
+};
+/* harmony default export */ __webpack_exports__.Z = ((0,_theme_internal__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z)('Popover', token => {
+ const {
+ colorBgElevated,
+ colorText,
+ wireframe
+ } = token;
+ const popoverToken = (0,_theme_internal__WEBPACK_IMPORTED_MODULE_4__/* .merge */ .TS)(token, {
+ popoverPadding: 12,
+ popoverBg: colorBgElevated,
+ popoverColor: colorText
+ });
+ return [genBaseStyle(popoverToken), genColorStyle(popoverToken), wireframe && genWireframeStyle(popoverToken), (0,_style_motion__WEBPACK_IMPORTED_MODULE_5__/* .initZoomMotion */ ._y)(popoverToken, 'zoom-big')];
+}, token => ({
+ width: 177,
+ minWidth: 177,
+ zIndexPopup: token.zIndexPopupBase + 30
+}), {
+ resetStyle: false,
+ deprecatedTokens: [['width', 'minWidth']]
+}));
+
+/***/ }),
+
+/***/ 91052:
+/*!********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/rate/index.js + 8 modules ***!
+ \********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ rate; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/StarFilled.js
+// This icon file is generated automatically.
+var StarFilled = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M908.1 353.1l-253.9-36.9L540.7 86.1c-3.1-6.3-8.2-11.4-14.5-14.5-15.8-7.8-35-1.3-42.9 14.5L369.8 316.2l-253.9 36.9c-7 1-13.4 4.3-18.3 9.3a32.05 32.05 0 00.6 45.3l183.7 179.1-43.4 252.9a31.95 31.95 0 0046.4 33.7L512 754l227.1 119.4c6.2 3.3 13.4 4.4 20.3 3.2 17.4-3 29.1-19.5 26.1-36.9l-43.4-252.9 183.7-179.1c5-4.9 8.3-11.3 9.3-18.3 2.7-17.5-9.5-33.7-27-36.3z" } }] }, "name": "star", "theme": "filled" };
+/* harmony default export */ var asn_StarFilled = (StarFilled);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/StarFilled.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var StarFilled_StarFilled = function StarFilled(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_StarFilled
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_StarFilled = (/*#__PURE__*/_react_17_0_2_react.forwardRef(StarFilled_StarFilled));
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
+var useMergedState = __webpack_require__(84381);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/pickAttrs.js
+var pickAttrs = __webpack_require__(3286);
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Star.js
+
+
+
+function Star(props, ref) {
+ var disabled = props.disabled,
+ prefixCls = props.prefixCls,
+ character = props.character,
+ characterRender = props.characterRender,
+ index = props.index,
+ count = props.count,
+ value = props.value,
+ allowHalf = props.allowHalf,
+ focused = props.focused,
+ onHover = props.onHover,
+ onClick = props.onClick;
+ // =========================== Events ===========================
+ var onInternalHover = function onInternalHover(e) {
+ onHover(e, index);
+ };
+ var onInternalClick = function onInternalClick(e) {
+ onClick(e, index);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(e) {
+ if (e.keyCode === KeyCode/* default */.Z.ENTER) {
+ onClick(e, index);
+ }
+ };
+ // =========================== Render ===========================
+ // >>>>> ClassName
+ var starValue = index + 1;
+ var classNameList = new Set([prefixCls]);
+ // TODO: Current we just refactor from CC to FC. This logic seems can be optimized.
+ if (value === 0 && index === 0 && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ } else if (allowHalf && value + 0.5 >= starValue && value < starValue) {
+ classNameList.add("".concat(prefixCls, "-half"));
+ classNameList.add("".concat(prefixCls, "-active"));
+ if (focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ } else {
+ if (starValue <= value) {
+ classNameList.add("".concat(prefixCls, "-full"));
+ } else {
+ classNameList.add("".concat(prefixCls, "-zero"));
+ }
+ if (starValue === value && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ }
+ // >>>>> Node
+ var characterNode = typeof character === 'function' ? character(props) : character;
+ var start = /*#__PURE__*/_react_17_0_2_react.createElement("li", {
+ className: _classnames_2_5_1_classnames_default()(Array.from(classNameList)),
+ ref: ref
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ onClick: disabled ? null : onInternalClick,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ onMouseMove: disabled ? null : onInternalHover,
+ role: "radio",
+ "aria-checked": value > index ? 'true' : 'false',
+ "aria-posinset": index + 1,
+ "aria-setsize": count,
+ tabIndex: disabled ? -1 : 0
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-first")
+ }, characterNode), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-second")
+ }, characterNode)));
+ if (characterRender) {
+ start = characterRender(start, props);
+ }
+ return start;
+}
+/* harmony default export */ var es_Star = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Star));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/useRefs.js
+
+function useRefs() {
+ var nodeRef = _react_17_0_2_react.useRef({});
+ function getRef(index) {
+ return nodeRef.current[index];
+ }
+ function setRef(index) {
+ return function (node) {
+ nodeRef.current[index] = node;
+ };
+ }
+ return [getRef, setRef];
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/util.js
+function getScroll(w) {
+ var ret = w.pageXOffset;
+ var method = 'scrollLeft';
+ if (typeof ret !== 'number') {
+ var d = w.document;
+ // ie6,7,8 standard mode
+ ret = d.documentElement[method];
+ if (typeof ret !== 'number') {
+ // quirks mode
+ ret = d.body[method];
+ }
+ }
+ return ret;
+}
+function getClientPosition(elem) {
+ var x;
+ var y;
+ var doc = elem.ownerDocument;
+ var body = doc.body;
+ var docElem = doc && doc.documentElement;
+ var box = elem.getBoundingClientRect();
+ x = box.left;
+ y = box.top;
+ x -= docElem.clientLeft || body.clientLeft || 0;
+ y -= docElem.clientTop || body.clientTop || 0;
+ return {
+ left: x,
+ top: y
+ };
+}
+function getOffsetLeft(el) {
+ var pos = getClientPosition(el);
+ var doc = el.ownerDocument;
+ // Only IE use `parentWindow`
+ var w = doc.defaultView || doc.parentWindow;
+ pos.left += getScroll(w);
+ return pos.left;
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Rate.js
+
+
+
+
+var _excluded = ["prefixCls", "className", "defaultValue", "value", "count", "allowHalf", "allowClear", "character", "characterRender", "disabled", "direction", "tabIndex", "autoFocus", "onHoverChange", "onChange", "onFocus", "onBlur", "onKeyDown", "onMouseLeave"];
+
+
+
+
+
+
+
+
+function Rate(props, ref) {
+ var _classNames;
+ var _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-rate' : _props$prefixCls,
+ className = props.className,
+ defaultValue = props.defaultValue,
+ propValue = props.value,
+ _props$count = props.count,
+ count = _props$count === void 0 ? 5 : _props$count,
+ _props$allowHalf = props.allowHalf,
+ allowHalf = _props$allowHalf === void 0 ? false : _props$allowHalf,
+ _props$allowClear = props.allowClear,
+ allowClear = _props$allowClear === void 0 ? true : _props$allowClear,
+ _props$character = props.character,
+ character = _props$character === void 0 ? '★' : _props$character,
+ characterRender = props.characterRender,
+ disabled = props.disabled,
+ _props$direction = props.direction,
+ direction = _props$direction === void 0 ? 'ltr' : _props$direction,
+ _props$tabIndex = props.tabIndex,
+ tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,
+ autoFocus = props.autoFocus,
+ onHoverChange = props.onHoverChange,
+ onChange = props.onChange,
+ onFocus = props.onFocus,
+ onBlur = props.onBlur,
+ onKeyDown = props.onKeyDown,
+ onMouseLeave = props.onMouseLeave,
+ restProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var _useRefs = useRefs(),
+ _useRefs2 = (0,slicedToArray/* default */.Z)(_useRefs, 2),
+ getStarRef = _useRefs2[0],
+ setStarRef = _useRefs2[1];
+ var rateRef = _react_17_0_2_react.useRef(null);
+ // ============================ Ref =============================
+ var triggerFocus = function triggerFocus() {
+ if (!disabled) {
+ var _rateRef$current;
+ (_rateRef$current = rateRef.current) === null || _rateRef$current === void 0 ? void 0 : _rateRef$current.focus();
+ }
+ };
+ _react_17_0_2_react.useImperativeHandle(ref, function () {
+ return {
+ focus: triggerFocus,
+ blur: function blur() {
+ if (!disabled) {
+ var _rateRef$current2;
+ (_rateRef$current2 = rateRef.current) === null || _rateRef$current2 === void 0 ? void 0 : _rateRef$current2.blur();
+ }
+ }
+ };
+ });
+ // =========================== Value ============================
+ var _useMergedState = (0,useMergedState/* default */.Z)(defaultValue || 0, {
+ value: propValue
+ }),
+ _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
+ value = _useMergedState2[0],
+ setValue = _useMergedState2[1];
+ var _useMergedState3 = (0,useMergedState/* default */.Z)(null),
+ _useMergedState4 = (0,slicedToArray/* default */.Z)(_useMergedState3, 2),
+ cleanedValue = _useMergedState4[0],
+ setCleanedValue = _useMergedState4[1];
+ var getStarValue = function getStarValue(index, x) {
+ var reverse = direction === 'rtl';
+ var starValue = index + 1;
+ if (allowHalf) {
+ var starEle = getStarRef(index);
+ var leftDis = getOffsetLeft(starEle);
+ var width = starEle.clientWidth;
+ if (reverse && x - leftDis > width / 2) {
+ starValue -= 0.5;
+ } else if (!reverse && x - leftDis < width / 2) {
+ starValue -= 0.5;
+ }
+ }
+ return starValue;
+ };
+ // >>>>> Change
+ var changeValue = function changeValue(nextValue) {
+ setValue(nextValue);
+ onChange === null || onChange === void 0 ? void 0 : onChange(nextValue);
+ };
+ // =========================== Focus ============================
+ var _React$useState = _react_17_0_2_react.useState(false),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ focused = _React$useState2[0],
+ setFocused = _React$useState2[1];
+ var onInternalFocus = function onInternalFocus() {
+ setFocused(true);
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus();
+ };
+ var onInternalBlur = function onInternalBlur() {
+ setFocused(false);
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur();
+ };
+ // =========================== Hover ============================
+ var _React$useState3 = _react_17_0_2_react.useState(null),
+ _React$useState4 = (0,slicedToArray/* default */.Z)(_React$useState3, 2),
+ hoverValue = _React$useState4[0],
+ setHoverValue = _React$useState4[1];
+ var onHover = function onHover(event, index) {
+ var nextHoverValue = getStarValue(index, event.pageX);
+ if (nextHoverValue !== cleanedValue) {
+ setHoverValue(nextHoverValue);
+ setCleanedValue(null);
+ }
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(nextHoverValue);
+ };
+ var onMouseLeaveCallback = function onMouseLeaveCallback(event) {
+ if (!disabled) {
+ setHoverValue(null);
+ setCleanedValue(null);
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(undefined);
+ }
+ if (event) {
+ onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave(event);
+ }
+ };
+ // =========================== Click ============================
+ var onClick = function onClick(event, index) {
+ var newValue = getStarValue(index, event.pageX);
+ var isReset = false;
+ if (allowClear) {
+ isReset = newValue === value;
+ }
+ onMouseLeaveCallback();
+ changeValue(isReset ? 0 : newValue);
+ setCleanedValue(isReset ? newValue : null);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(event) {
+ var keyCode = event.keyCode;
+ var reverse = direction === 'rtl';
+ var nextValue = value;
+ if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue < count && !reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue > 0 && !reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue > 0 && reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue < count && reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ }
+ onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);
+ };
+ // =========================== Effect ===========================
+ _react_17_0_2_react.useEffect(function () {
+ if (autoFocus && !disabled) {
+ triggerFocus();
+ }
+ }, []);
+ // =========================== Render ===========================
+ // >>> Star
+ var starNodes = new Array(count).fill(0).map(function (item, index) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_Star, {
+ ref: setStarRef(index),
+ index: index,
+ count: count,
+ disabled: disabled,
+ prefixCls: "".concat(prefixCls, "-star"),
+ allowHalf: allowHalf,
+ value: hoverValue === null ? value : hoverValue,
+ onClick: onClick,
+ onHover: onHover,
+ key: item || index,
+ character: character,
+ characterRender: characterRender,
+ focused: focused
+ });
+ });
+ var classString = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-rtl"), direction === 'rtl'), _classNames));
+ // >>> Node
+ return /*#__PURE__*/_react_17_0_2_react.createElement("ul", (0,esm_extends/* default */.Z)({
+ className: classString,
+ onMouseLeave: onMouseLeaveCallback,
+ tabIndex: disabled ? -1 : tabIndex,
+ onFocus: disabled ? null : onInternalFocus,
+ onBlur: disabled ? null : onInternalBlur,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ ref: rateRef,
+ role: "radiogroup"
+ }, (0,pickAttrs/* default */.Z)(restProps, {
+ aria: true,
+ data: true,
+ attr: true
+ })), starNodes);
+}
+/* harmony default export */ var es_Rate = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Rate));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/index.js
+
+/* harmony default export */ var es = (es_Rate);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
+var tooltip = __webpack_require__(6848);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/style/index.js
+"use client";
+
+
+
+const genRateStarStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [`${componentCls}-star`]: {
+ position: 'relative',
+ display: 'inline-block',
+ color: 'inherit',
+ cursor: 'pointer',
+ '&:not(:last-child)': {
+ marginInlineEnd: token.marginXS
+ },
+ '> div': {
+ transition: `all ${token.motionDurationMid}, outline 0s`,
+ '&:hover': {
+ transform: token.starHoverScale
+ },
+ '&:focus': {
+ outline: 0
+ },
+ '&:focus-visible': {
+ outline: `${token.lineWidth}px dashed ${token.starColor}`,
+ transform: token.starHoverScale
+ }
+ },
+ '&-first, &-second': {
+ color: token.starBg,
+ transition: `all ${token.motionDurationMid}`,
+ userSelect: 'none',
+ [token.iconCls]: {
+ verticalAlign: 'middle'
+ }
+ },
+ '&-first': {
+ position: 'absolute',
+ top: 0,
+ insetInlineStart: 0,
+ width: '50%',
+ height: '100%',
+ overflow: 'hidden',
+ opacity: 0
+ },
+ [`&-half ${componentCls}-star-first, &-half ${componentCls}-star-second`]: {
+ opacity: 1
+ },
+ [`&-half ${componentCls}-star-first, &-full ${componentCls}-star-second`]: {
+ color: 'inherit'
+ }
+ }
+ };
+};
+const genRateRtlStyle = token => ({
+ [`&-rtl${token.componentCls}`]: {
+ direction: 'rtl'
+ }
+});
+const genRateStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ display: 'inline-block',
+ margin: 0,
+ padding: 0,
+ color: token.starColor,
+ fontSize: token.starSize,
+ lineHeight: 'unset',
+ listStyle: 'none',
+ outline: 'none',
+ // disable styles
+ [`&-disabled${componentCls} ${componentCls}-star`]: {
+ cursor: 'default',
+ '> div:hover': {
+ transform: 'scale(1)'
+ }
+ }
+ }), genRateStarStyle(token)), {
+ // text styles
+ [`+ ${componentCls}-text`]: {
+ display: 'inline-block',
+ marginInlineStart: token.marginXS,
+ fontSize: token.fontSize
+ }
+ }), genRateRtlStyle(token))
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var rate_style = ((0,genComponentStyleHook/* default */.Z)('Rate', token => {
+ const rateToken = (0,statistic/* merge */.TS)(token, {});
+ return [genRateStyle(rateToken)];
+}, token => ({
+ starColor: token.yellow6,
+ starSize: token.controlHeightLG * 0.5,
+ starHoverScale: 'scale(1.1)',
+ starBg: token.colorFillContent
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+const rate_Rate = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ const {
+ prefixCls,
+ className,
+ rootClassName,
+ style,
+ tooltips,
+ character = /*#__PURE__*/_react_17_0_2_react.createElement(icons_StarFilled, null)
+ } = props,
+ rest = __rest(props, ["prefixCls", "className", "rootClassName", "style", "tooltips", "character"]);
+ const characterRender = (node, _ref) => {
+ let {
+ index
+ } = _ref;
+ if (!tooltips) {
+ return node;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(tooltip/* default */.Z, {
+ title: tooltips[index]
+ }, node);
+ };
+ const {
+ getPrefixCls,
+ direction,
+ rate
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const ratePrefixCls = getPrefixCls('rate', prefixCls);
+ // Style
+ const [wrapSSR, hashId] = rate_style(ratePrefixCls);
+ const mergedStyle = Object.assign(Object.assign({}, rate === null || rate === void 0 ? void 0 : rate.style), style);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({
+ ref: ref,
+ character: character,
+ characterRender: characterRender
+ }, rest, {
+ className: _classnames_2_5_1_classnames_default()(className, rootClassName, hashId, rate === null || rate === void 0 ? void 0 : rate.className),
+ style: mergedStyle,
+ prefixCls: ratePrefixCls,
+ direction: direction
+ })));
+});
+if (false) {}
+/* harmony default export */ var rate = (rate_Rate);
+
+/***/ }),
+
+/***/ 31797:
+/*!*************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/statistic/index.js + 5 modules ***!
+ \*************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ es_statistic; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/hooks/useForceUpdate.js
+var useForceUpdate = __webpack_require__(56762);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/skeleton/index.js + 12 modules
+var skeleton = __webpack_require__(60371);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Number.js
+"use client";
+
+
+const StatisticNumber = props => {
+ const {
+ value,
+ formatter,
+ precision,
+ decimalSeparator,
+ groupSeparator = '',
+ prefixCls
+ } = props;
+ let valueNode;
+ if (typeof formatter === 'function') {
+ // Customize formatter
+ valueNode = formatter(value);
+ } else {
+ // Internal formatter
+ const val = String(value);
+ const cells = val.match(/^(-?)(\d*)(\.(\d+))?$/);
+ // Process if illegal number
+ if (!cells || val === '-') {
+ valueNode = val;
+ } else {
+ const negative = cells[1];
+ let int = cells[2] || '0';
+ let decimal = cells[4] || '';
+ int = int.replace(/\B(?=(\d{3})+(?!\d))/g, groupSeparator);
+ if (typeof precision === 'number') {
+ decimal = decimal.padEnd(precision, '0').slice(0, precision > 0 ? precision : 0);
+ }
+ if (decimal) {
+ decimal = `${decimalSeparator}${decimal}`;
+ }
+ valueNode = [/*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "int",
+ className: `${prefixCls}-content-value-int`
+ }, negative, int), decimal && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "decimal",
+ className: `${prefixCls}-content-value-decimal`
+ }, decimal)];
+ }
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-value`
+ }, valueNode);
+};
+/* harmony default export */ var statistic_Number = (StatisticNumber);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/style/index.js
+"use client";
+
+
+
+const genStatisticStyle = token => {
+ const {
+ componentCls,
+ marginXXS,
+ padding,
+ colorTextDescription,
+ titleFontSize,
+ colorTextHeading,
+ contentFontSize,
+ fontFamily
+ } = token;
+ return {
+ [`${componentCls}`]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ [`${componentCls}-title`]: {
+ marginBottom: marginXXS,
+ color: colorTextDescription,
+ fontSize: titleFontSize
+ },
+ [`${componentCls}-skeleton`]: {
+ paddingTop: padding
+ },
+ [`${componentCls}-content`]: {
+ color: colorTextHeading,
+ fontSize: contentFontSize,
+ fontFamily,
+ [`${componentCls}-content-value`]: {
+ display: 'inline-block',
+ direction: 'ltr'
+ },
+ [`${componentCls}-content-prefix, ${componentCls}-content-suffix`]: {
+ display: 'inline-block'
+ },
+ [`${componentCls}-content-prefix`]: {
+ marginInlineEnd: marginXXS
+ },
+ [`${componentCls}-content-suffix`]: {
+ marginInlineStart: marginXXS
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var statistic_style = ((0,genComponentStyleHook/* default */.Z)('Statistic', token => {
+ const statisticToken = (0,statistic/* merge */.TS)(token, {});
+ return [genStatisticStyle(statisticToken)];
+}, token => {
+ const {
+ fontSizeHeading3,
+ fontSize
+ } = token;
+ return {
+ titleFontSize: fontSize,
+ contentFontSize: fontSizeHeading3
+ };
+}));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Statistic.js
+"use client";
+
+
+
+
+
+
+
+const Statistic = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ style,
+ valueStyle,
+ value = 0,
+ title,
+ valueRender,
+ prefix,
+ suffix,
+ loading = false,
+ onMouseEnter,
+ onMouseLeave,
+ decimalSeparator = '.',
+ groupSeparator = ','
+ } = props;
+ const {
+ getPrefixCls,
+ direction,
+ statistic
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('statistic', customizePrefixCls);
+ const [wrapSSR, hashId] = statistic_style(prefixCls);
+ const valueNode = /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Number, Object.assign({
+ decimalSeparator: decimalSeparator,
+ groupSeparator: groupSeparator,
+ prefixCls: prefixCls
+ }, props, {
+ value: value
+ }));
+ const cls = _classnames_2_5_1_classnames_default()(prefixCls, {
+ [`${prefixCls}-rtl`]: direction === 'rtl'
+ }, statistic === null || statistic === void 0 ? void 0 : statistic.className, className, rootClassName, hashId);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: cls,
+ style: Object.assign(Object.assign({}, statistic === null || statistic === void 0 ? void 0 : statistic.style), style),
+ onMouseEnter: onMouseEnter,
+ onMouseLeave: onMouseLeave
+ }, title && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-title`
+ }, title), /*#__PURE__*/_react_17_0_2_react.createElement(skeleton/* default */.Z, {
+ paragraph: false,
+ loading: loading,
+ className: `${prefixCls}-skeleton`
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ style: valueStyle,
+ className: `${prefixCls}-content`
+ }, prefix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-prefix`
+ }, prefix), valueRender ? valueRender(valueNode) : valueNode, suffix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-suffix`
+ }, suffix)))));
+};
+if (false) {}
+/* harmony default export */ var statistic_Statistic = (Statistic);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/utils.js
+// Countdown
+const timeUnits = [['Y', 1000 * 60 * 60 * 24 * 365], ['M', 1000 * 60 * 60 * 24 * 30], ['D', 1000 * 60 * 60 * 24], ['H', 1000 * 60 * 60], ['m', 1000 * 60], ['s', 1000], ['S', 1] // million seconds
+];
+
+function formatTimeStr(duration, format) {
+ let leftDuration = duration;
+ const escapeRegex = /\[[^\]]*]/g;
+ const keepList = (format.match(escapeRegex) || []).map(str => str.slice(1, -1));
+ const templateText = format.replace(escapeRegex, '[]');
+ const replacedText = timeUnits.reduce((current, _ref) => {
+ let [name, unit] = _ref;
+ if (current.includes(name)) {
+ const value = Math.floor(leftDuration / unit);
+ leftDuration -= value * unit;
+ return current.replace(new RegExp(`${name}+`, 'g'), match => {
+ const len = match.length;
+ return value.toString().padStart(len, '0');
+ });
+ }
+ return current;
+ }, templateText);
+ let index = 0;
+ return replacedText.replace(escapeRegex, () => {
+ const match = keepList[index];
+ index += 1;
+ return match;
+ });
+}
+function formatCountdown(value, config) {
+ const {
+ format = ''
+ } = config;
+ const target = new Date(value).getTime();
+ const current = Date.now();
+ const diff = Math.max(target - current, 0);
+ return formatTimeStr(diff, format);
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Countdown.js
+"use client";
+
+
+
+
+
+
+const REFRESH_INTERVAL = 1000 / 30;
+function getTime(value) {
+ return new Date(value).getTime();
+}
+const Countdown = props => {
+ const {
+ value,
+ format = 'HH:mm:ss',
+ onChange,
+ onFinish
+ } = props;
+ const forceUpdate = (0,useForceUpdate/* default */.Z)();
+ const countdown = _react_17_0_2_react.useRef(null);
+ const stopTimer = () => {
+ onFinish === null || onFinish === void 0 ? void 0 : onFinish();
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ const syncTimer = () => {
+ const timestamp = getTime(value);
+ if (timestamp >= Date.now()) {
+ countdown.current = setInterval(() => {
+ forceUpdate();
+ onChange === null || onChange === void 0 ? void 0 : onChange(timestamp - Date.now());
+ if (timestamp < Date.now()) {
+ stopTimer();
+ }
+ }, REFRESH_INTERVAL);
+ }
+ };
+ _react_17_0_2_react.useEffect(() => {
+ syncTimer();
+ return () => {
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ }, [value]);
+ const formatter = (formatValue, config) => formatCountdown(formatValue, Object.assign(Object.assign({}, config), {
+ format
+ }));
+ const valueRender = node => (0,reactNode/* cloneElement */.Tm)(node, {
+ title: undefined
+ });
+ return /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Statistic, Object.assign({}, props, {
+ valueRender: valueRender,
+ formatter: formatter
+ }));
+};
+/* harmony default export */ var statistic_Countdown = (/*#__PURE__*/_react_17_0_2_react.memo(Countdown));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/index.js
+"use client";
+
+
+
+statistic_Statistic.Countdown = statistic_Countdown;
+/* harmony default export */ var es_statistic = (statistic_Statistic);
+
+/***/ }),
+
+/***/ 93314:
+/*!********************************************!*\
+ !*** ./src/assets/images/icons/nodata.png ***!
+ \********************************************/
+/***/ (function(module) {
+
+module.exports = "data:image/png;base64,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";
+
+/***/ })
+
+}]);
\ No newline at end of file
diff --git a/29638.async.js b/42914.async.js
similarity index 99%
rename from 29638.async.js
rename to 42914.async.js
index af12c61897..b86650e8be 100644
--- a/29638.async.js
+++ b/42914.async.js
@@ -1,6 +1,6 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[29638,49166],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[42914,49166],{
-/***/ 60936:
+/***/ 15228:
/*!*******************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/InboxOutlined.js + 1 modules ***!
\*******************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_InboxOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/InboxOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/InboxOutlined.js
// This icon file is generated automatically.
var InboxOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "0 0 1024 1024", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M885.2 446.3l-.2-.8-112.2-285.1c-5-16.1-19.9-27.2-36.8-27.2H281.2c-17 0-32.1 11.3-36.9 27.6L139.4 443l-.3.7-.2.8c-1.3 4.9-1.7 9.9-1 14.8-.1 1.6-.2 3.2-.2 4.8V830a60.9 60.9 0 0060.8 60.8h627.2c33.5 0 60.8-27.3 60.9-60.8V464.1c0-1.3 0-2.6-.1-3.7.4-4.9 0-9.6-1.3-14.1zm-295.8-43l-.3 15.7c-.8 44.9-31.8 75.1-77.1 75.1-22.1 0-41.1-7.1-54.8-20.6S436 441.2 435.6 419l-.3-15.7H229.5L309 210h399.2l81.7 193.3H589.4zm-375 76.8h157.3c24.3 57.1 76 90.8 140.4 90.8 33.7 0 65-9.4 90.3-27.2 22.2-15.6 39.5-37.4 50.7-63.6h156.5V814H214.4V480.1z" } }] }, "name": "inbox", "theme": "outlined" };
/* harmony default export */ var asn_InboxOutlined = (InboxOutlined);
@@ -79,7 +79,7 @@ __webpack_require__.d(__webpack_exports__, {
});
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleFilled.js + 1 modules
-var ExclamationCircleFilled = __webpack_require__(86850);
+var ExclamationCircleFilled = __webpack_require__(84479);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
@@ -753,7 +753,7 @@ __webpack_require__.d(__webpack_exports__, {
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseOutlined.js + 1 modules
-var CloseOutlined = __webpack_require__(99174);
+var CloseOutlined = __webpack_require__(30449);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
diff --git a/45470.async.js b/43383.async.js
similarity index 71%
rename from 45470.async.js
rename to 43383.async.js
index afeb556dda..a9ab88aab9 100644
--- a/45470.async.js
+++ b/43383.async.js
@@ -1,5 +1,1477 @@
-"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[45470,66128,49177,67957],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[43383,4977,49177,78890],{
+
+/***/ 28871:
+/*!*********************************************************!*\
+ !*** ./src/components/MathematicalGraphics/js/index.js ***!
+ \*********************************************************/
+/***/ (function(module, exports, __webpack_require__) {
+
+var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;var _typeof = (__webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/typeof.js */ 31468)["default"]);
+(function () {
+ if (typeof window.GGBApplet == "function") {
+ console.warn("deployggb.js was loaded twice");
+ return;
+ }
+ var isRenderGGBElementEnabled = false;
+ var scriptLoadStarted = false;
+ var html5AppletsToProcess = null;
+ var ggbHTML5LoadedCodebaseIsWebSimple = false;
+ var ggbHTML5LoadedCodebaseVersion = null;
+ var ggbHTML5LoadedScript = null;
+ var GGBApplet = function GGBApplet() {
+ "use strict";
+
+ var applet = {};
+ var ggbVersion = "5.0";
+ var parameters = {};
+ var views = null;
+ var html5NoWebSimple = false;
+ var html5NoWebSimpleParamExists = false;
+ var appletID = null;
+ var initComplete = false;
+ var html5OverwrittenCodebaseVersion = null;
+ var html5OverwrittenCodebase = null;
+ for (var i = 0; i < arguments.length; i++) {
+ var p = arguments[i];
+ if (p !== null) {
+ switch (_typeof(p)) {
+ case "number":
+ ggbVersion = p.toFixed(1);
+ break;
+ case "string":
+ if (p.match(new RegExp("^[0-9]\\.[0-9]+$"))) {
+ ggbVersion = p;
+ } else {
+ appletID = p;
+ }
+ break;
+ case "object":
+ if (typeof p.is3D !== "undefined") {
+ views = p;
+ } else {
+ parameters = p;
+ }
+ break;
+ case "boolean":
+ html5NoWebSimple = p;
+ html5NoWebSimpleParamExists = true;
+ break;
+ }
+ }
+ }
+ if (views === null) {
+ views = {
+ is3D: false,
+ AV: false,
+ SV: false,
+ CV: false,
+ EV2: false,
+ CP: false,
+ PC: false,
+ DA: false,
+ FI: false,
+ PV: false,
+ macro: false
+ };
+ if (parameters.material_id !== undefined && !html5NoWebSimpleParamExists) {
+ html5NoWebSimple = true;
+ }
+ }
+ if (appletID !== null && parameters.id === undefined) {
+ parameters.id = appletID;
+ }
+ var jnlpFilePath = "";
+ var html5Codebase = "";
+ var isHTML5Offline = false;
+ var loadedAppletType = null;
+ var html5CodebaseVersion = null;
+ var html5CodebaseScript = null;
+ var html5CodebaseIsWebSimple = false;
+ var previewImagePath = null;
+ var previewLoadingPath = null;
+ var previewPlayPath = null;
+ var fonts_css_url = null;
+ var jnlpBaseDir = null;
+ if (parameters.height !== undefined) {
+ parameters.height = Math.round(parameters.height);
+ }
+ if (parameters.width !== undefined) {
+ parameters.width = Math.round(parameters.width);
+ }
+ var parseVersion = function parseVersion(d) {
+ return parseFloat(d) > 4 ? parseFloat(d) : 5;
+ };
+ applet.setHTML5Codebase = function (codebase, offline) {
+ html5OverwrittenCodebase = codebase;
+ setHTML5CodebaseInternal(codebase, offline);
+ };
+ applet.setJavaCodebase = applet.setJavaCodebaseVersion = applet.isCompiledInstalled = applet.setPreCompiledScriptPath = applet.setPreCompiledResourcePath = function () {};
+ applet.setHTML5CodebaseVersion = function (version, offline) {
+ var numVersion = parseFloat(version);
+ if (numVersion !== NaN && numVersion < 5) {
+ console.log("The GeoGebra HTML5 codebase version " + numVersion + " is deprecated. Using version latest instead.");
+ return;
+ }
+ html5OverwrittenCodebaseVersion = version;
+ setDefaultHTML5CodebaseForVersion(version, offline);
+ };
+ applet.getHTML5CodebaseVersion = function () {
+ return html5CodebaseVersion;
+ };
+ applet.getParameters = function () {
+ return parameters;
+ };
+ applet.setFontsCSSURL = function (url) {
+ fonts_css_url = url;
+ };
+ applet.setGiacJSURL = function (url) {};
+ applet.setJNLPFile = function (newJnlpFilePath) {
+ jnlpFilePath = newJnlpFilePath;
+ };
+ applet.setJNLPBaseDir = function (baseDir) {};
+ applet.inject = function () {
+ function isOwnIFrame() {
+ return window.frameElement && window.frameElement.getAttribute("data-singleton");
+ }
+ var type = "auto";
+ var container_ID = parameters.id;
+ var container;
+ var noPreview = false;
+ for (var i = 0; i < arguments.length; i++) {
+ var p = arguments[i];
+ if (typeof p === "string") {
+ p = p.toLowerCase();
+ if (p.match(/^(prefer)?(java|html5|compiled|auto|screenshot)$/)) {
+ type = p;
+ } else {
+ container_ID = arguments[i];
+ }
+ } else if (typeof p === "boolean") {
+ noPreview = p;
+ } else if (p instanceof HTMLElement) {
+ container = p;
+ }
+ }
+ continueInject();
+ function continueInject() {
+ if (!initComplete) {
+ setTimeout(continueInject, 200);
+ return;
+ }
+ type = detectAppletType(type);
+ var appletElem = container || document.getElementById(container_ID);
+ if (!appletElem) {
+ console.log("possibly bug on ajax loading? ");
+ return;
+ }
+ applet.removeExistingApplet(appletElem, false);
+ if (parameters.width === undefined && appletElem.clientWidth) {
+ parameters.width = appletElem.clientWidth;
+ }
+ if (parameters.height === undefined && appletElem.clientHeight) {
+ parameters.height = appletElem.clientHeight;
+ }
+ if (!(parameters.width && parameters.height) && type === "html5") {
+ delete parameters.width;
+ delete parameters.height;
+ }
+ loadedAppletType = type;
+ if (type === "screenshot") {
+ injectScreenshot(appletElem, parameters);
+ } else {
+ var playButton = false;
+ if (parameters.hasOwnProperty("playButton") && parameters.playButton || parameters.hasOwnProperty("clickToLoad") && parameters.clickToLoad) {
+ playButton = true;
+ } else if (parameters.hasOwnProperty("playButtonAutoDecide") && parameters.playButtonAutoDecide) {
+ playButton = (!isInIframe() || isOwnIFrame()) && isMobileDevice();
+ }
+ if (playButton) {
+ loadedAppletType = "screenshot";
+ injectPlayButton(appletElem, parameters, noPreview, type);
+ } else {
+ injectHTML5Applet(appletElem, parameters, noPreview);
+ }
+ }
+ }
+ return;
+ };
+ function isInIframe() {
+ try {
+ return window.self !== window.top;
+ } catch (e) {
+ return true;
+ }
+ }
+ function isMobileDevice() {
+ if (parameters.hasOwnProperty("screenshotGenerator") && parameters.screenshotGenerator) {
+ return false;
+ }
+ return Math.max(screen.width, screen.height) < 800;
+ }
+ applet.getViews = function () {
+ return views;
+ };
+ applet.isJavaInstalled = function () {
+ return false;
+ };
+ var fetchParametersFromApi = function fetchParametersFromApi(successCallback) {
+ var onSuccess = function onSuccess(text) {
+ var jsonData = JSON.parse(text);
+ var isGeoGebra = function isGeoGebra(element) {
+ return element.type == "G" || element.type == "E";
+ };
+ var item = jsonData.elements ? jsonData.elements.filter(isGeoGebra)[0] : jsonData;
+ if (!item || !item.url) {
+ onError();
+ return;
+ }
+ parameters.fileName = item.url;
+ updateAppletSettings(item.settings || {});
+ views.is3D = true;
+ var imageDir = "https://www.geogebra.org/images/";
+ applet.setPreviewImage(previewImagePath || item.previewUrl, imageDir + "GeoGebra_loading.png", imageDir + "applet_play.png");
+ successCallback();
+ };
+ var onError = function onError() {
+ parameters.onError && parameters.onError();
+ log("Error: Fetching material (id " + parameters.material_id + ") failed.", parameters);
+ };
+ var host = location.host.match(/(www|stage|beta|groot|alpha).geogebra.(org|net)/) ? location.host : "www.geogebra.org";
+ var path = "/materials/" + parameters.material_id + "?scope=basic";
+ sendCorsRequest("https://" + host + "/api/proxy.php?path=" + encodeURIComponent(path), onSuccess, onError);
+ };
+ function updateAppletSettings(settings) {
+ var parameterNames = ["width", "height", "showToolBar", "showMenuBar", "showAlgebraInput", "allowStyleBar", "showResetIcon", "enableLabelDrags", "enableShiftDragZoom", "enableRightClick", "appName"];
+ ["enableLabelDrags", "enableShiftDragZoom", "enableRightClick"].forEach(function (name) {
+ settings[name] = !!settings[name];
+ });
+ parameterNames.forEach(function (name) {
+ if (parameters[name] === undefined && settings[name] !== undefined) {
+ parameters[name] = settings[name];
+ }
+ });
+ if (parameters.showToolBarHelp === undefined) {
+ parameters.showToolBarHelp = parameters.showToolBar;
+ }
+ }
+ function sendCorsRequest(url, onSuccess, onError) {
+ var xhr = new XMLHttpRequest();
+ xhr.open("GET", url);
+ xhr.onload = function () {
+ onSuccess(xhr.responseText);
+ };
+ xhr.onerror = onError;
+ xhr.send();
+ }
+ applet.isHTML5Installed = function () {
+ return true;
+ };
+ applet.getLoadedAppletType = function () {
+ return loadedAppletType;
+ };
+ applet.setPreviewImage = function (previewFilePath, loadingFilePath, playFilePath) {
+ previewImagePath = previewFilePath;
+ previewLoadingPath = loadingFilePath;
+ previewPlayPath = playFilePath;
+ };
+ applet.removeExistingApplet = function (appletParent, showScreenshot) {
+ var i;
+ if (typeof appletParent === "string") {
+ appletParent = document.getElementById(appletParent);
+ }
+ loadedAppletType = null;
+ var removedID = null;
+ for (i = 0; i < appletParent.childNodes.length; i++) {
+ var currentChild = appletParent.childNodes[i];
+ var className = currentChild.className;
+ if (className === "applet_screenshot") {
+ if (showScreenshot) {
+ currentChild.style.display = "block";
+ loadedAppletType = "screenshot";
+ } else {
+ currentChild.style.display = "none";
+ }
+ } else if (className !== "applet_scaler prerender") {
+ appletParent.removeChild(currentChild);
+ removedID = className && className.indexOf("appletParameters") != -1 ? currentChild.id : null;
+ i--;
+ }
+ }
+ var appName = parameters.id !== undefined ? parameters.id : removedID;
+ var app = window[appName];
+ if (app && typeof app.getBase64 === "function") {
+ app.remove();
+ window[appName] = null;
+ }
+ };
+ applet.refreshHitPoints = function () {
+ if (parseVersion(ggbHTML5LoadedCodebaseVersion) >= 5) {
+ return true;
+ }
+ var app = applet.getAppletObject();
+ if (app) {
+ if (typeof app.recalculateEnvironments === "function") {
+ app.recalculateEnvironments();
+ return true;
+ }
+ }
+ return false;
+ };
+ applet.startAnimation = function () {
+ var app = applet.getAppletObject();
+ if (app) {
+ if (typeof app.startAnimation === "function") {
+ app.startAnimation();
+ return true;
+ }
+ }
+ return false;
+ };
+ applet.stopAnimation = function () {
+ var app = applet.getAppletObject();
+ if (app) {
+ if (typeof app.stopAnimation === "function") {
+ app.stopAnimation();
+ return true;
+ }
+ }
+ return false;
+ };
+ applet.getAppletObject = function () {
+ var appName = parameters.id !== undefined ? parameters.id : "ggbApplet";
+ return window[appName];
+ };
+ applet.resize = function () {};
+ var appendParam = function appendParam(applet, name, value) {
+ var param = document.createElement("param");
+ param.setAttribute("name", name);
+ param.setAttribute("value", value);
+ applet.appendChild(param);
+ };
+ var valBoolean = function valBoolean(value) {
+ return value && value !== "false";
+ };
+ var injectHTML5Applet = function injectHTML5Applet(appletElem, parameters, noPreview) {
+ if (parseVersion(html5CodebaseVersion) <= 4.2) {
+ noPreview = true;
+ }
+ var loadScript = !isRenderGGBElementEnabled && !scriptLoadStarted;
+ if (!isRenderGGBElementEnabled && !scriptLoadStarted || ggbHTML5LoadedCodebaseVersion !== html5CodebaseVersion || ggbHTML5LoadedCodebaseIsWebSimple && !html5CodebaseIsWebSimple) {
+ loadScript = true;
+ isRenderGGBElementEnabled = false;
+ scriptLoadStarted = false;
+ }
+ var article = document.createElement("div");
+ article.classList.add("appletParameters", "notranslate");
+ var oriWidth = parameters.width;
+ var oriHeight = parameters.height;
+ parameters.disableAutoScale = parameters.disableAutoScale === undefined ? GGBAppletUtils.isFlexibleWorksheetEditor() : parameters.disableAutoScale;
+ if (parameters.width !== undefined) {
+ if (parseVersion(html5CodebaseVersion) <= 4.4) {
+ if (valBoolean(parameters.showToolBar)) {
+ parameters.height -= 7;
+ }
+ if (valBoolean(parameters.showAlgebraInput)) {
+ parameters.height -= 37;
+ }
+ if (parameters.width < 605 && valBoolean(parameters.showToolBar)) {
+ parameters.width = 605;
+ oriWidth = 605;
+ }
+ } else {
+ var minWidth = 100;
+ if (valBoolean(parameters.showToolBar) || valBoolean(parameters.showMenuBar)) {
+ if (parameters.hasOwnProperty("customToolBar")) {
+ parameters.customToolbar = parameters.customToolBar;
+ }
+ minWidth = valBoolean(parameters.showMenuBar) ? 245 : 155;
+ }
+ if (oriWidth < minWidth) {
+ parameters.width = minWidth;
+ oriWidth = minWidth;
+ }
+ }
+ }
+ article.style.border = "none";
+ article.style.display = "inline-block";
+ for (var key in parameters) {
+ if (parameters.hasOwnProperty(key) && key !== "appletOnLoad") {
+ article.setAttribute("data-param-" + key, parameters[key]);
+ }
+ }
+ if (fonts_css_url) {
+ article.setAttribute("data-param-fontscssurl", fonts_css_url);
+ }
+ applet.resize = function () {
+ GGBAppletUtils.responsiveResize(appletElem, parameters);
+ };
+ window.addEventListener("resize", function (evt) {
+ applet.resize();
+ });
+ var oriAppletOnload = typeof parameters.appletOnLoad === "function" ? parameters.appletOnLoad : function () {};
+ if (!noPreview && parameters.width !== undefined) {
+ if (!parameters.hasOwnProperty("showSplash")) {
+ article.setAttribute("data-param-showSplash", "false");
+ }
+ var previewPositioner = appletElem.querySelector(".applet_scaler.prerender");
+ var preRendered = previewPositioner !== null;
+ if (!preRendered) {
+ var previewContainer = createScreenShotDiv(oriWidth, oriHeight, parameters.borderColor, false);
+ previewPositioner = document.createElement("div");
+ previewPositioner.className = "applet_scaler";
+ previewPositioner.style.position = "relative";
+ previewPositioner.style.display = "block";
+ previewPositioner.style.width = oriWidth + "px";
+ previewPositioner.style.height = oriHeight + "px";
+ } else {
+ var previewContainer = previewPositioner.querySelector(".ggb_preview");
+ }
+ if (window.GGBT_spinner) {
+ window.GGBT_spinner.attachSpinner(previewPositioner, "66%");
+ }
+ if (parseVersion(html5CodebaseVersion) >= 5) {
+ parameters.appletOnLoad = function (api) {
+ var preview = appletElem.querySelector(".ggb_preview");
+ if (preview) {
+ preview.parentNode.removeChild(preview);
+ }
+ if (window.GGBT_spinner) {
+ window.GGBT_spinner.removeSpinner(previewPositioner);
+ }
+ if (window.GGBT_wsf_view) {
+ $(window).trigger("resize");
+ }
+ oriAppletOnload(api);
+ };
+ if (!preRendered) {
+ previewPositioner.appendChild(previewContainer);
+ }
+ } else {
+ article.appendChild(previewContainer);
+ }
+ previewPositioner.appendChild(article);
+ if (!preRendered) {
+ appletElem.appendChild(previewPositioner);
+ }
+ setTimeout(function () {
+ applet.resize();
+ }, 1);
+ } else {
+ var appletScaler = document.createElement("div");
+ appletScaler.className = "applet_scaler";
+ appletScaler.style.position = "relative";
+ appletScaler.style.display = "block";
+ appletScaler.appendChild(article);
+ appletElem.appendChild(appletScaler);
+ parameters.appletOnLoad = function (api) {
+ applet.resize();
+ oriAppletOnload(api);
+ };
+ }
+ function renderGGBElementWithParams(article, parameters) {
+ if (parameters && typeof parameters.appletOnLoad === "function" && typeof renderGGBElement === "function") {
+ renderGGBElement(article, parameters.appletOnLoad);
+ } else {
+ renderGGBElement(article);
+ }
+ log("GeoGebra HTML5 applet injected and rendered with previously loaded codebase.", parameters);
+ }
+ function renderGGBElementOnTube(a, parameters) {
+ if (typeof renderGGBElement === "undefined") {
+ if (html5AppletsToProcess === null) {
+ html5AppletsToProcess = [];
+ }
+ html5AppletsToProcess.push({
+ article: a,
+ params: parameters
+ });
+ window.renderGGBElementReady = function () {
+ isRenderGGBElementEnabled = true;
+ if (html5AppletsToProcess !== null && html5AppletsToProcess.length) {
+ html5AppletsToProcess.forEach(function (obj) {
+ renderGGBElementWithParams(obj.article, obj.params);
+ });
+ html5AppletsToProcess = null;
+ }
+ };
+ if (parseVersion(html5CodebaseVersion) < 5) {
+ a.className += " geogebraweb";
+ }
+ } else {
+ renderGGBElementWithParams(a, parameters);
+ }
+ }
+ if (loadScript) {
+ scriptLoadStarted = true;
+ for (var i = 0; i < article.childNodes.length; i++) {
+ var tag = article.childNodes[i].tagName;
+ if (tag === "TABLE") {
+ article.removeChild(article.childNodes[i]);
+ i--;
+ }
+ }
+ if (ggbHTML5LoadedScript !== null) {
+ var el = document.querySelector('script[src="' + ggbHTML5LoadedScript + '"]');
+ if (el !== undefined && el !== null) {
+ el.parentNode.removeChild(el);
+ }
+ }
+ var script = document.createElement("script");
+ var scriptLoaded = function scriptLoaded() {
+ renderGGBElementOnTube(article, parameters);
+ };
+ script.src = html5Codebase + html5CodebaseScript;
+ ggbHTML5LoadedCodebaseIsWebSimple = html5CodebaseIsWebSimple;
+ ggbHTML5LoadedCodebaseVersion = html5CodebaseVersion;
+ ggbHTML5LoadedScript = script.src;
+ log("GeoGebra HTML5 codebase loaded: '" + html5Codebase + "'.", parameters);
+ if (!html5OverwrittenCodebase && (!html5OverwrittenCodebaseVersion || html5OverwrittenCodebaseVersion == "5.0")) {
+ if (html5CodebaseIsWebSimple) {
+ webSimple.succeeded = webSimple.succeeded || webSimple();
+ } else {
+ web3d.succeeded = web3d.succeeded || web3d();
+ }
+ scriptLoaded();
+ } else if (html5Codebase.requirejs) {
+ __webpack_require__.e(/*! AMD require */ 53893).then(function() { var __WEBPACK_AMD_REQUIRE_ARRAY__ = [__webpack_require__(/*! ./web3d */ 53893)]; (scriptLoaded).apply(null, __WEBPACK_AMD_REQUIRE_ARRAY__);}.bind(this))['catch'](__webpack_require__.oe);
+ } else {
+ script.onload = scriptLoaded;
+ appletElem.appendChild(script);
+ }
+ } else {
+ renderGGBElementOnTube(article, parameters);
+ }
+ parameters.height = oriHeight;
+ parameters.width = oriWidth;
+ };
+ var injectScreenshot = function injectScreenshot(appletElem, parameters, showPlayButton) {
+ var previewContainer = createScreenShotDiv(parameters.width, parameters.height, parameters.borderColor, showPlayButton);
+ var previewPositioner = document.createElement("div");
+ previewPositioner.style.position = "relative";
+ previewPositioner.style.display = "block";
+ previewPositioner.style.width = parameters.width + "px";
+ previewPositioner.style.height = parameters.height + "px";
+ previewPositioner.className = "applet_screenshot applet_scaler" + (showPlayButton ? " applet_screenshot_play" : "");
+ previewPositioner.appendChild(previewContainer);
+ var scale = GGBAppletUtils.getScale(parameters, appletElem, showPlayButton);
+ if (showPlayButton) {
+ appletElem.appendChild(getPlayButton());
+ if (!window.GGBT_wsf_view) {
+ appletElem.style.position = "relative";
+ }
+ } else if (window.GGBT_spinner) {
+ window.GGBT_spinner.attachSpinner(previewPositioner, "66%");
+ }
+ appletElem.appendChild(previewPositioner);
+ if (scale !== 1 && !isNaN(scale)) {
+ GGBAppletUtils.scaleElement(previewPositioner, scale);
+ previewPositioner.style.width = parameters.width + "px";
+ previewPositioner.style.height = parameters.height + "px";
+ previewPositioner.parentNode.style.width = parameters.width * scale + "px";
+ previewPositioner.parentNode.style.height = parameters.height * scale + "px";
+ }
+ applet.resize = function () {
+ resizeScreenshot(appletElem, previewContainer, previewPositioner, showPlayButton);
+ };
+ window.addEventListener("resize", function (evt) {
+ applet.resize();
+ });
+ applet.resize();
+ };
+ function resizeScreenshot(appletElem, previewContainer, previewPositioner, showPlayButton) {
+ if (!appletElem.contains(previewContainer)) {
+ return;
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ if (appletElem.id !== "fullscreencontent") {
+ return;
+ }
+ window.GGBT_wsf_view.setCloseBtnPosition(appletElem);
+ }
+ var scale = GGBAppletUtils.getScale(parameters, appletElem, showPlayButton);
+ if (previewPositioner.parentNode !== null) {
+ if (!isNaN(scale) && scale !== 1) {
+ GGBAppletUtils.scaleElement(previewPositioner, scale);
+ previewPositioner.parentNode.style.width = parameters.width * scale + "px";
+ previewPositioner.parentNode.style.height = parameters.height * scale + "px";
+ } else {
+ GGBAppletUtils.scaleElement(previewPositioner, 1);
+ previewPositioner.parentNode.style.width = parameters.width + "px";
+ previewPositioner.parentNode.style.height = parameters.height + "px";
+ }
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ GGBAppletUtils.positionCenter(appletElem);
+ }
+ if (_typeof(window.GGBT_ws_header_footer) === "object") {
+ window.GGBT_ws_header_footer.setWsScrollerHeight();
+ }
+ }
+ applet.onExitFullscreen = function (fullscreenContainer, appletElem) {
+ appletElem.appendChild(fullscreenContainer);
+ };
+ var injectPlayButton = function injectPlayButton(appletElem, parameters, noPreview, type) {
+ injectScreenshot(appletElem, parameters, true);
+ var play = function play() {
+ var elems = [];
+ for (i = 0; i < appletElem.childNodes.length; i++) {
+ elems.push(appletElem.childNodes[i]);
+ }
+ if (window.GGBT_wsf_view) {
+ var content = window.GGBT_wsf_view.renderFullScreen(appletElem, parameters.id);
+ var container = document.getElementById("fullscreencontainer");
+ var oldcontent = jQuery(appletElem).find(".fullscreencontent");
+ if (oldcontent.length > 0) {
+ content.remove();
+ oldcontent.attr("id", "fullscreencontent").show();
+ jQuery(container).append(oldcontent);
+ window.dispatchEvent(new Event("resize"));
+ } else {
+ injectHTML5Applet(content, parameters, false);
+ }
+ window.GGBT_wsf_view.launchFullScreen(container);
+ } else {
+ loadedAppletType = type;
+ injectHTML5Applet(appletElem, parameters, false);
+ }
+ if (!window.GGBT_wsf_view) {
+ for (i = 0; i < elems.length; i++) {
+ appletElem.removeChild(elems[i]);
+ }
+ }
+ };
+ var imgs = appletElem.getElementsByClassName("ggb_preview_play");
+ for (var i = 0; i < imgs.length; i++) {
+ imgs[i].addEventListener("click", play, false);
+ imgs[i].addEventListener("ontouchstart", play, false);
+ }
+ if (typeof window.ggbAppletPlayerOnload === "function") {
+ window.ggbAppletPlayerOnload(appletElem);
+ }
+ if (isMobileDevice() && window.GGBT_wsf_view) {
+ $(".wsf-element-fullscreen-button").remove();
+ }
+ };
+ var getPlayButton = function getPlayButton() {
+ var playButtonContainer = document.createElement("div");
+ playButtonContainer.className = "ggb_preview_play icon-applet-play";
+ if (!window.GGBT_wsf_view) {
+ var css = "" + ".icon-applet-play {" + " width: 100%;" + " height: 100%;box-sizing: border-box;position: absolute;z-index: 1001;cursor: pointer;border-width: 0px;" + " background-color: transparent;background-repeat: no-repeat;left: 0;top: 0;background-position: center center;" + ' background-image: url("https://www.geogebra.org/images/worksheet/icon-start-applet.png");' + "}" + ".icon-applet-play:hover {" + 'background-image: url("https://www.geogebra.org/images/worksheet/icon-start-applet-hover.png");' + "}";
+ var style = document.createElement("style");
+ if (style.styleSheet) {
+ style.styleSheet.cssText = css;
+ } else {
+ style.appendChild(document.createTextNode(css));
+ }
+ document.getElementsByTagName("head")[0].appendChild(style);
+ }
+ return playButtonContainer;
+ };
+ var createScreenShotDiv = function createScreenShotDiv(oriWidth, oriHeight, borderColor, showPlayButton) {
+ var previewContainer = document.createElement("div");
+ previewContainer.className = "ggb_preview";
+ previewContainer.style.position = "absolute";
+ previewContainer.style.zIndex = "90";
+ previewContainer.style.width = oriWidth - 2 + "px";
+ previewContainer.style.height = oriHeight - 2 + "px";
+ previewContainer.style.top = "0px";
+ previewContainer.style.left = "0px";
+ previewContainer.style.overflow = "hidden";
+ previewContainer.style.backgroundColor = "white";
+ var bc = "lightgrey";
+ if (borderColor !== undefined) {
+ if (borderColor === "none") {
+ bc = "transparent";
+ } else {
+ bc = borderColor;
+ }
+ }
+ previewContainer.style.border = "1px solid " + bc;
+ var preview = document.createElement("img");
+ preview.style.position = "relative";
+ preview.style.zIndex = "1000";
+ preview.style.top = "-1px";
+ preview.style.left = "-1px";
+ if (previewImagePath !== null) {
+ preview.setAttribute("src", previewImagePath);
+ }
+ preview.style.opacity = .7;
+ if (previewLoadingPath !== null) {
+ var previewOverlay;
+ var pWidth, pHeight;
+ if (!showPlayButton) {
+ previewOverlay = document.createElement("img");
+ previewOverlay.style.position = "absolute";
+ previewOverlay.style.zIndex = "1001";
+ previewOverlay.style.opacity = 1;
+ preview.style.opacity = .3;
+ pWidth = 360;
+ if (pWidth > oriWidth / 4 * 3) {
+ pWidth = oriWidth / 4 * 3;
+ }
+ pHeight = pWidth / 5.8;
+ previewOverlay.setAttribute("src", previewLoadingPath);
+ previewOverlay.setAttribute("width", pWidth);
+ previewOverlay.setAttribute("height", pHeight);
+ var pX = (oriWidth - pWidth) / 2;
+ var pY = (oriHeight - pHeight) / 2;
+ previewOverlay.style.left = pX + "px";
+ previewOverlay.style.top = pY + "px";
+ previewContainer.appendChild(previewOverlay);
+ }
+ }
+ previewContainer.appendChild(preview);
+ return previewContainer;
+ };
+ var detectAppletType = function detectAppletType(preferredType) {
+ preferredType = preferredType.toLowerCase();
+ if (preferredType === "html5" || preferredType === "screenshot") {
+ return preferredType;
+ }
+ return "html5";
+ };
+ var modules = ["web", "webSimple", "web3d", "tablet", "tablet3d", "phone"];
+ var setDefaultHTML5CodebaseForVersion = function setDefaultHTML5CodebaseForVersion(version, offline) {
+ html5CodebaseVersion = version;
+ if (offline) {
+ setHTML5CodebaseInternal(html5CodebaseVersion, true);
+ return;
+ }
+ var hasWebSimple = !html5NoWebSimple;
+ if (hasWebSimple) {
+ var v = parseVersion(html5CodebaseVersion);
+ if (!isNaN(v) && v < 4.4) {
+ hasWebSimple = false;
+ }
+ }
+ var protocol, codebase;
+ if (window.location.protocol.substr(0, 4) === "http") {
+ protocol = window.location.protocol;
+ } else {
+ protocol = "http:";
+ }
+ var index = html5CodebaseVersion.indexOf("//");
+ if (index > 0) {
+ codebase = html5CodebaseVersion;
+ } else if (index === 0) {
+ codebase = protocol + html5CodebaseVersion;
+ } else {
+ codebase = "https://www.geogebra.org/apps/5.2.814.0/";
+ }
+ for (var key in modules) {
+ if (html5CodebaseVersion.slice(modules[key].length * -1) === modules[key] || html5CodebaseVersion.slice((modules[key].length + 1) * -1) === modules[key] + "/") {
+ setHTML5CodebaseInternal(codebase, false);
+ return;
+ }
+ }
+ if (!GGBAppletUtils.isFlexibleWorksheetEditor() && hasWebSimple && !views.is3D && !views.AV && !views.SV && !views.CV && !views.EV2 && !views.CP && !views.PC && !views.DA && !views.FI && !views.PV && !valBoolean(parameters.showToolBar) && !valBoolean(parameters.showMenuBar) && !valBoolean(parameters.showAlgebraInput) && !valBoolean(parameters.enableRightClick) && (!parameters.appName || parameters.appName == "classic")) {
+ codebase += "webSimple/";
+ } else {
+ codebase += "web3d/";
+ }
+ setHTML5CodebaseInternal(codebase, false);
+ };
+ var setHTML5CodebaseInternal = function setHTML5CodebaseInternal(codebase, offline) {
+ if (codebase.requirejs) {
+ html5Codebase = codebase;
+ return;
+ }
+ if (codebase.slice(-1) !== "/") {
+ codebase += "/";
+ }
+ html5Codebase = codebase;
+ if (offline === null) {
+ offline = codebase.indexOf("http") === -1;
+ }
+ isHTML5Offline = offline;
+ html5CodebaseScript = "web.nocache.js";
+ html5CodebaseIsWebSimple = false;
+ var folders = html5Codebase.split("/");
+ if (folders.length > 1) {
+ if (!offline && folders[folders.length - 2] === "webSimple") {
+ html5CodebaseScript = "webSimple.nocache.js";
+ html5CodebaseIsWebSimple = true;
+ } else if (modules.indexOf(folders[folders.length - 2]) >= 0) {
+ html5CodebaseScript = folders[folders.length - 2] + ".nocache.js";
+ }
+ }
+ folders = codebase.split("/");
+ html5CodebaseVersion = folders[folders.length - 3];
+ if (html5CodebaseVersion.substr(0, 4) === "test") {
+ html5CodebaseVersion = html5CodebaseVersion.substr(4, 1) + "." + html5CodebaseVersion.substr(5, 1);
+ } else if (html5CodebaseVersion.substr(0, 3) === "war" || html5CodebaseVersion.substr(0, 4) === "beta") {
+ html5CodebaseVersion = "5.0";
+ }
+ var numVersion = parseFloat(html5CodebaseVersion);
+ if (numVersion !== NaN && numVersion < 5 && codebase.indexOf("geogebra.org") >= 0) {
+ console.log("The GeoGebra HTML5 codebase version " + numVersion + " is deprecated. Using version latest instead.");
+ setDefaultHTML5CodebaseForVersion("5.0", offline);
+ }
+ };
+ var log = function log(text, parameters) {
+ if (window.console && window.console.log) {
+ if (!parameters || typeof parameters.showLogging === "undefined" || parameters.showLogging && parameters.showLogging !== "false") {
+ console.log(text);
+ }
+ }
+ };
+ if (parameters.material_id !== undefined) {
+ fetchParametersFromApi(continueInit);
+ } else {
+ continueInit();
+ }
+ function continueInit() {
+ var html5Version = ggbVersion;
+ if (html5OverwrittenCodebaseVersion !== null) {
+ html5Version = html5OverwrittenCodebaseVersion;
+ } else {
+ if (parseFloat(html5Version) < 5) {
+ html5Version = "5.0";
+ }
+ }
+ setDefaultHTML5CodebaseForVersion(html5Version, false);
+ if (html5OverwrittenCodebase !== null) {
+ setHTML5CodebaseInternal(html5OverwrittenCodebase, isHTML5Offline);
+ }
+ initComplete = true;
+ }
+ return applet;
+ };
+ var GGBAppletUtils = function () {
+ "use strict";
+
+ function isFlexibleWorksheetEditor() {
+ return window.GGBT_wsf_edit !== undefined;
+ }
+ function scaleElement(el, scale) {
+ if (scale != 1) {
+ el.style.transformOrigin = "0% 0% 0px";
+ el.style.webkitTransformOrigin = "0% 0% 0px";
+ el.style.transform = "scale(" + scale + "," + scale + ")";
+ el.style.webkitTransform = "scale(" + scale + "," + scale + ")";
+ el.style.maxWidth = "initial";
+ if (el.querySelector(".ggb_preview") !== null) {
+ el.querySelector(".ggb_preview").style.maxWidth = "initial";
+ }
+ if (el.querySelectorAll(".ggb_preview img")[0] !== undefined) {
+ el.querySelectorAll(".ggb_preview img")[0].style.maxWidth = "initial";
+ }
+ if (el.querySelectorAll(".ggb_preview img")[1] !== undefined) {
+ el.querySelectorAll(".ggb_preview img")[1].style.maxWidth = "initial";
+ }
+ } else {
+ el.style.transform = "none";
+ el.style.webkitTransform = "none";
+ }
+ }
+ function getWidthHeight(appletElem, appletWidth, allowUpscale, autoHeight, noBorder, scaleContainerClass) {
+ var container = null;
+ if (scaleContainerClass != undefined && scaleContainerClass != "") {
+ var parent = appletElem.parentNode;
+ while (parent != null) {
+ if ((" " + parent.className + " ").indexOf(" " + scaleContainerClass + " ") > -1) {
+ container = parent;
+ break;
+ } else {
+ parent = parent.parentNode;
+ }
+ }
+ }
+ var myWidth = 0,
+ myHeight = 0,
+ windowWidth = 0,
+ border = 0,
+ borderRight = 0,
+ borderLeft = 0,
+ borderTop = 0;
+ if (container) {
+ myWidth = container.offsetWidth;
+ myHeight = Math.max(autoHeight ? container.offsetWidth : 0, container.offsetHeight);
+ } else {
+ if (window.innerWidth && document.documentElement.clientWidth) {
+ myWidth = Math.min(window.innerWidth, document.documentElement.clientWidth);
+ myHeight = Math.min(window.innerHeight, document.documentElement.clientHeight);
+ windowWidth = myWidth;
+ } else {
+ myWidth = window.innerWidth;
+ myHeight = window.innerHeight;
+ windowWidth = window.innerWidth;
+ }
+ if (appletElem) {
+ var rect = appletElem.getBoundingClientRect();
+ if (rect.left > 0) {
+ if (rect.left <= myWidth && (noBorder === undefined || !noBorder)) {
+ if (document.dir === "rtl") {
+ borderRight = myWidth - rect.width - rect.left;
+ borderLeft = windowWidth <= 480 ? 10 : 30;
+ } else {
+ borderLeft = rect.left;
+ borderRight = windowWidth <= 480 ? 10 : 30;
+ }
+ border = borderLeft + borderRight;
+ }
+ }
+ }
+ if (appletElem && _typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ var appletRect = appletElem.getBoundingClientRect();
+ if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionRight") {
+ border = 40;
+ borderTop = 0;
+ } else if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionTop") {
+ border = 0;
+ borderTop = 40;
+ }
+ }
+ }
+ if (appletElem) {
+ if ((allowUpscale === undefined || !allowUpscale) && appletWidth > 0 && appletWidth + border < myWidth) {
+ myWidth = appletWidth;
+ } else {
+ myWidth -= border;
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen() && (allowUpscale === undefined || !allowUpscale)) {
+ myHeight -= borderTop;
+ }
+ }
+ return {
+ width: myWidth,
+ height: myHeight
+ };
+ }
+ function calcScale(parameters, appletElem, allowUpscale, showPlayButton, scaleContainerClass) {
+ if (parameters.isScreenshoGenerator) {
+ return 1;
+ }
+ var ignoreHeight = showPlayButton !== undefined && showPlayButton;
+ var noScaleMargin = parameters.noScaleMargin != undefined && parameters.noScaleMargin;
+ var valBoolean = function valBoolean(value) {
+ return value && value !== "false";
+ };
+ var autoHeight = valBoolean(parameters.autoHeight);
+ var windowSize = getWidthHeight(appletElem, parameters.width, allowUpscale, autoHeight, ignoreHeight && window.GGBT_wsf_view || noScaleMargin, scaleContainerClass);
+ var windowWidth = parseInt(windowSize.width);
+ var appletWidth = parameters.width;
+ var appletHeight = parameters.height;
+ if (appletWidth === undefined) {
+ var article = appletElem.querySelector(".appletParameters");
+ if (article) {
+ appletWidth = article.offsetWidth;
+ appletHeight = article.offsetHeight;
+ }
+ }
+ var xscale = windowWidth / appletWidth;
+ var yscale = ignoreHeight ? 1 : windowSize.height / appletHeight;
+ if (allowUpscale !== undefined && !allowUpscale) {
+ xscale = Math.min(1, xscale);
+ yscale = Math.min(1, yscale);
+ }
+ return Math.min(xscale, yscale);
+ }
+ function getScale(parameters, appletElem, showPlayButton) {
+ var scale = 1,
+ autoScale,
+ allowUpscale = false;
+ if (parameters.hasOwnProperty("allowUpscale")) {
+ allowUpscale = parameters.allowUpscale;
+ }
+ if (parameters.hasOwnProperty("scale")) {
+ scale = parseFloat(parameters.scale);
+ if (isNaN(scale) || scale === null || scale === 0) {
+ scale = 1;
+ }
+ if (scale > 1) {
+ allowUpscale = true;
+ }
+ }
+ if (appletElem && _typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ allowUpscale = true;
+ }
+ if (!(parameters.hasOwnProperty("disableAutoScale") && parameters.disableAutoScale)) {
+ autoScale = calcScale(parameters, appletElem, allowUpscale, showPlayButton, parameters.scaleContainerClass);
+ } else {
+ return scale;
+ }
+ if (allowUpscale && (!parameters.hasOwnProperty("scale") || scale === 1)) {
+ return autoScale;
+ } else {
+ return Math.min(scale, autoScale);
+ }
+ }
+ function positionCenter(appletElem) {
+ var windowWidth = Math.min(window.innerWidth, document.documentElement.clientWidth);
+ var windowHeight = Math.min(window.innerHeight, document.documentElement.clientHeight);
+ var appletRect = appletElem.getBoundingClientRect();
+ var calcHorizontalBorder = (windowWidth - appletRect.width) / 2;
+ var calcVerticalBorder = (windowHeight - appletRect.height) / 2;
+ if (calcVerticalBorder < 0) {
+ calcVerticalBorder = 0;
+ }
+ appletElem.style.position = "relative";
+ if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionRight") {
+ if (calcHorizontalBorder < 40) {
+ appletElem.style.left = "40px";
+ } else {
+ appletElem.style.left = calcHorizontalBorder + "px";
+ }
+ appletElem.style.top = calcVerticalBorder + "px";
+ } else if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionTop") {
+ if (calcVerticalBorder < 40) {
+ appletElem.style.top = "40px";
+ } else {
+ appletElem.style.top = calcVerticalBorder + "px";
+ }
+ appletElem.style.left = calcHorizontalBorder + "px";
+ }
+ }
+ function responsiveResize(appletElem, parameters) {
+ var article = appletElem.querySelector(".appletParameters");
+ if (article) {
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ if (parameters.id !== article.getAttribute("data-param-id")) {
+ return;
+ }
+ window.GGBT_wsf_view.setCloseBtnPosition(appletElem);
+ }
+ if (article.parentElement && /fullscreen/.test(article.parentElement.className)) {
+ return;
+ }
+ var scale = getScale(parameters, appletElem);
+ if (isFlexibleWorksheetEditor()) {
+ article.setAttribute("data-param-scale", scale);
+ }
+ var scaleElem = null;
+ for (var i = 0; i < appletElem.childNodes.length; i++) {
+ if (appletElem.childNodes[i].className !== undefined && appletElem.childNodes[i].className.match(/^applet_scaler/)) {
+ scaleElem = appletElem.childNodes[i];
+ break;
+ }
+ }
+ if (scaleElem !== null && scaleElem.querySelector(".noscale") !== null) {
+ return;
+ }
+ var appName = parameters.id !== undefined ? parameters.id : "ggbApplet";
+ var app = window[appName];
+ if ((app == null || !app.recalculateEnvironments) && scaleElem !== null && !scaleElem.className.match(/fullscreen/)) {
+ scaleElem.parentNode.style.transform = "";
+ if (!isNaN(scale) && scale !== 1) {
+ scaleElem.parentNode.style.width = parameters.width * scale + "px";
+ scaleElem.parentNode.style.height = parameters.height * scale + "px";
+ scaleElement(scaleElem, scale);
+ } else {
+ scaleElement(scaleElem, 1);
+ scaleElem.parentNode.style.width = parameters.width + "px";
+ scaleElem.parentNode.style.height = parameters.height + "px";
+ }
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ positionCenter(appletElem);
+ }
+ if (window.GGBT_wsf_view && !window.GGBT_wsf_view.isFullscreen()) {
+ window.GGBT_wsf_general.adjustContentToResize($(article).parents(".content-added-content"));
+ }
+ }
+ }
+ return {
+ responsiveResize: responsiveResize,
+ isFlexibleWorksheetEditor: isFlexibleWorksheetEditor,
+ positionCenter: positionCenter,
+ getScale: getScale,
+ scaleElement: scaleElement
+ };
+ }();
+ if (true) {
+ !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {
+ return GGBApplet;
+ }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
+ __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
+ }
+ GGBAppletUtils.makeModule = function (name, permutation) {
+ function webModule() {
+ var H = "bootstrap",
+ I = "begin",
+ J = "gwt.codesvr." + name + "=",
+ K = "gwt.codesvr=",
+ L = name,
+ M = "startup",
+ N = "DUMMY",
+ O = 0,
+ P = 1,
+ Q = "iframe",
+ R = "position:absolute; width:0; height:0; border:none; left: -1000px;",
+ S = " top: -1000px;",
+ T = "Chrome",
+ U = "CSS1Compat",
+ V = "",
+ W = "",
+ X = "",
+ Y = "undefined",
+ Z = "readystatechange",
+ $ = 10,
+ _ = "script",
+ ab = "javascript",
+ bb = "Failed to load ",
+ cb = "moduleStartup",
+ db = "scriptTagAdded",
+ eb = "moduleRequested",
+ fb = "meta",
+ gb = "name",
+ hb = name + "::",
+ ib = "::",
+ jb = "gwt:property",
+ kb = "content",
+ lb = "=",
+ mb = "gwt:onPropertyErrorFn",
+ nb = 'Bad handler "',
+ ob = '" for "gwt:onPropertyErrorFn"',
+ pb = "gwt:onLoadErrorFn",
+ qb = '" for "gwt:onLoadErrorFn"',
+ rb = "#",
+ sb = "?",
+ tb = "/",
+ ub = "img",
+ vb = "clear.cache.gif",
+ wb = "baseUrl",
+ xb = name + ".nocache.js",
+ yb = "base",
+ zb = "//",
+ Ab = "selectingPermutation",
+ Bb = name + ".devmode.js",
+ Cb = permutation,
+ Db = ":",
+ Eb = ".cache.js",
+ Fb = "loadExternalRefs",
+ Gb = "end";
+ var n = window;
+ var o = document;
+ q(H, I);
+ function p() {
+ var a = n.location.search;
+ return a.indexOf(J) != -1 || a.indexOf(K) != -1;
+ }
+ function q(a, b) {}
+ webModule.__sendStats = q;
+ webModule.__moduleName = L;
+ webModule.__errFn = null;
+ webModule.__moduleBase = N;
+ webModule.__softPermutationId = O;
+ webModule.__computePropValue = null;
+ webModule.__getPropMap = null;
+ webModule.__installRunAsyncCode = function () {};
+ webModule.__gwtStartLoadingFragment = function () {
+ return null;
+ };
+ webModule.__gwt_isKnownPropertyValue = function () {
+ return false;
+ };
+ webModule.__gwt_getMetaProperty = function () {
+ return null;
+ };
+ var r = null;
+ var s = n.__gwt_activeModules = n.__gwt_activeModules || {};
+ s[L] = {
+ moduleName: L
+ };
+ webModule.__moduleStartupDone = function (e) {
+ var f = s[L].bindings;
+ s[L].bindings = function () {
+ var a = f ? f() : {};
+ var b = e[webModule.__softPermutationId];
+ for (var c = O; c < b.length; c++) {
+ var d = b[c];
+ a[d[O]] = d[P];
+ }
+ return a;
+ };
+ };
+ var t;
+ function u() {
+ v();
+ return t;
+ }
+ function v() {
+ if (t) {
+ return;
+ }
+ var a = o.createElement(Q);
+ a.id = L;
+ a.style.cssText = R + S;
+ a.tabIndex = -1;
+ o.body.appendChild(a);
+ t = a.contentWindow.document;
+ if (navigator.userAgent.indexOf(T) == -1) {
+ t.open();
+ var b = document.compatMode == U ? V : W;
+ t.write(b + X);
+ t.close();
+ }
+ }
+ function w(f) {
+ function g(a) {
+ function b() {
+ if (_typeof(o.readyState) == Y) {
+ return _typeof(o.body) != Y && o.body != null;
+ }
+ return /loaded|complete/.test(o.readyState);
+ }
+ var c = b();
+ if (c) {
+ a();
+ return;
+ }
+ function d() {
+ if (!c) {
+ if (!b()) {
+ return;
+ }
+ c = true;
+ a();
+ if (o.removeEventListener) {
+ o.removeEventListener(Z, d, false);
+ }
+ if (e) {
+ clearInterval(e);
+ }
+ }
+ }
+ if (o.addEventListener) {
+ o.addEventListener(Z, d, false);
+ }
+ var e = setInterval(function () {
+ d();
+ }, $);
+ }
+ function h(a) {
+ var b = u();
+ var c = b.body;
+ var d = b.createElement(_);
+ d.language = ab;
+ d.crossOrigin = W;
+ d.src = a;
+ if (webModule.__errFn) {
+ d.onerror = function () {
+ webModule.__errFn(L, new Error(bb + a));
+ };
+ }
+ c.appendChild(d);
+ q(cb, db);
+ }
+ q(cb, eb);
+ g(function () {
+ h(f);
+ });
+ }
+ webModule.__startLoadingFragment = function (a) {
+ return C(a);
+ };
+ webModule.__installRunAsyncCode = function (a) {
+ var b = u();
+ var c = b.body;
+ var d = b.createElement(_);
+ d.language = ab;
+ d.text = a;
+ c.appendChild(d);
+ c.removeChild(d);
+ };
+ function A() {
+ var c = {};
+ var d;
+ var e;
+ var f = o.getElementsByTagName(fb);
+ for (var g = O, h = f.length; g < h; ++g) {
+ var i = f[g],
+ j = i.getAttribute(gb),
+ k;
+ if (j) {
+ j = j.replace(hb, W);
+ if (j.indexOf(ib) >= O) {
+ continue;
+ }
+ if (j == jb) {
+ k = i.getAttribute(kb);
+ if (k) {
+ var l,
+ m = k.indexOf(lb);
+ if (m >= O) {
+ j = k.substring(O, m);
+ l = k.substring(m + P);
+ } else {
+ j = k;
+ l = W;
+ }
+ c[j] = l;
+ }
+ } else if (j == mb) {
+ k = i.getAttribute(kb);
+ if (k) {
+ try {
+ d = eval(k);
+ } catch (a) {
+ alert(nb + k + ob);
+ }
+ }
+ } else if (j == pb) {
+ k = i.getAttribute(kb);
+ if (k) {
+ try {
+ e = eval(k);
+ } catch (a) {
+ alert(nb + k + qb);
+ }
+ }
+ }
+ }
+ }
+ __gwt_getMetaProperty = function __gwt_getMetaProperty(a) {
+ var b = c[a];
+ return b == null ? null : b;
+ };
+ r = d;
+ webModule.__errFn = e;
+ }
+ function B() {
+ function e(a) {
+ var b = a.lastIndexOf(rb);
+ if (b == -1) {
+ b = a.length;
+ }
+ var c = a.indexOf(sb);
+ if (c == -1) {
+ c = a.length;
+ }
+ var d = a.lastIndexOf(tb, Math.min(c, b));
+ return d >= O ? a.substring(O, d + P) : W;
+ }
+ function f(a) {
+ if (a.match(/^\w+:\/\//)) {} else {
+ var b = o.createElement(ub);
+ b.src = a + vb;
+ a = e(b.src);
+ }
+ return a;
+ }
+ function g() {
+ var a = __gwt_getMetaProperty(wb);
+ if (a != null) {
+ return a;
+ }
+ return W;
+ }
+ function h() {
+ var a = o.getElementsByTagName(_);
+ for (var b = O; b < a.length; ++b) {
+ if (a[b].src.indexOf(xb) != -1) {
+ return e(a[b].src);
+ }
+ }
+ return W;
+ }
+ function i() {
+ var a = o.getElementsByTagName(yb);
+ if (a.length > O) {
+ return a[a.length - P].href;
+ }
+ return W;
+ }
+ function j() {
+ var a = o.location;
+ return a.href == a.protocol + zb + a.host + a.pathname + a.search + a.hash;
+ }
+ var k = g();
+ if (k == W) {
+ k = h();
+ }
+ if (k == W) {
+ k = i();
+ }
+ if (k == W && j()) {
+ k = e(o.location.href);
+ }
+ k = f(k);
+ return k;
+ }
+ function C(a) {
+ if (a.match(/^\//)) {
+ return a;
+ }
+ if (a.match(/^[a-zA-Z]+:\/\//)) {
+ return a;
+ }
+ return webModule.__moduleBase + a;
+ }
+ function D() {
+ var f = [];
+ var g = O;
+ var h = [];
+ var i = [];
+ function j(a) {
+ var b = i[a](),
+ c = h[a];
+ if (b in c) {
+ return b;
+ }
+ var d = [];
+ for (var e in c) {
+ d[c[e]] = e;
+ }
+ if (r) {
+ r(a, d, b);
+ }
+ throw null;
+ }
+ __gwt_isKnownPropertyValue = function __gwt_isKnownPropertyValue(a, b) {
+ return b in h[a];
+ };
+ webModule.__getPropMap = function () {
+ var a = {};
+ for (var b in h) {
+ if (h.hasOwnProperty(b)) {
+ a[b] = j(b);
+ }
+ }
+ return a;
+ };
+ webModule.__computePropValue = j;
+ n.__gwt_activeModules[L].bindings = webModule.__getPropMap;
+ if (p()) {
+ return C(Bb);
+ }
+ var k;
+ try {
+ k = Cb;
+ var l = k.indexOf(Db);
+ if (l != -1) {
+ g = parseInt(k.substring(l + P), $);
+ k = k.substring(O, l);
+ }
+ } catch (a) {}
+ webModule.__softPermutationId = g;
+ return C(k + Eb);
+ }
+ function F() {
+ if (!n.__gwt_stylesLoaded) {
+ n.__gwt_stylesLoaded = {};
+ }
+ }
+ A();
+ webModule.__moduleBase = "/js/mathematicalGraphics/" + name + "/";
+ s[L].moduleBase = webModule.__moduleBase;
+ var G = D();
+ F();
+ w(G);
+ return true;
+ }
+ return webModule;
+ };
+ if (typeof window.web3d !== "function") {
+ window.web3d = GGBAppletUtils.makeModule("web3d", "A18F540516513B1292CA7CEF2F6AFC7E");
+ }
+ if (typeof window.webSimple !== "function") {
+ window.webSimple = GGBAppletUtils.makeModule("webSimple", "96B09BF1B436BF53F0DF54116700F16A");
+ }
+ window.GGBApplet = GGBApplet;
+})();
+
+/***/ }),
/***/ 71376:
/*!*********************************!*\
@@ -7,6 +1479,7 @@
\*********************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Ax: function() { return /* binding */ processTreeData; },
/* harmony export */ Ds: function() { return /* binding */ debounce; },
@@ -93,6 +1566,7 @@ var apiPref = _utils_env__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z.API_SE
\**************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
@@ -340,690 +1814,88 @@ var ImageDimensions = function ImageDimensions(_ref) {
}), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
className: ImageDimensionsmodules.img,
ref: imgRef
- // crossOrigin='anonymous'
- // src={data?.src}
- })]
- })
- });
-};
-/* harmony default export */ var components_ImageDimensions = (ImageDimensions);
-
-/***/ }),
-
-/***/ 782:
-/*!*****************************************!*\
- !*** ./src/components/NoData/index.tsx ***!
- \*****************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/assets/images/icons/nodata.png */ 93314);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd */ 3113);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
-
-
-
-
-
-
-var noData = function noData(_ref) {
- var img = _ref.img,
- _ref$buttonProps = _ref.buttonProps,
- buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
- _ref$styles = _ref.styles,
- styles = _ref$styles === void 0 ? {} : _ref$styles,
- customText = _ref.customText,
- ButtonText = _ref.ButtonText,
- ButtonClick = _ref.ButtonClick,
- Buttonclass = _ref.Buttonclass,
- ButtonTwo = _ref.ButtonTwo,
- imgStyles = _ref.imgStyles,
- _ref$loading = _ref.loading,
- loading = _ref$loading === void 0 ? false : _ref$loading;
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("section", {
- className: "tc animated fadeIn",
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, {
- color: '#999',
- margin: '100px auto',
- visibility: loading ? 'hidden' : 'visible'
- }), styles),
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
- src: img || _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__,
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, imgStyles), {}, {
- pointerEvents: "none",
- userSelect: "none"
- })
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("p", {
- className: "mt20 font14",
- children: customText || '暂时还没有相关数据哦!'
- }), ButtonText && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(antd__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .ZP, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({
- className: Buttonclass,
- onClick: ButtonClick
- }, buttonProps), {}, {
- children: ButtonText
- })), ButtonTwo && ButtonTwo]
- });
-};
-/* harmony default export */ __webpack_exports__.Z = (noData);
-
-/***/ }),
-
-/***/ 13039:
-/*!*********************************************************!*\
- !*** ./src/components/PreviewAll/index.tsx + 1 modules ***!
- \*********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ PreviewAll; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
-var objectSpread2 = __webpack_require__(82242);
-var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
-var regeneratorRuntime = __webpack_require__(7557);
-var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
-var asyncToGenerator = __webpack_require__(41498);
-var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
-var slicedToArray = __webpack_require__(79800);
-var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./src/components/PreviewAll/index.less?modules
-// extracted by mini-css-extract-plugin
-/* harmony default export */ var PreviewAllmodules = ({"wrp":"wrp___dq7YK","bgBlack":"bgBlack___ARIUV","monaco":"monaco___VnZC3","darkBlue":"darkBlue___UprA9","close":"close___LKoWu","embed":"embed___hvpEJ"});
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
-var es_button = __webpack_require__(3113);
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ArrowDownOutlined.js + 1 modules
-var ArrowDownOutlined = __webpack_require__(98915);
-// EXTERNAL MODULE: ./src/components/monaco-editor/index.jsx + 4 modules
-var monaco_editor = __webpack_require__(40774);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
-var tooltip = __webpack_require__(6848);
-// EXTERNAL MODULE: ./src/utils/util.tsx
-var util = __webpack_require__(72345);
-// EXTERNAL MODULE: ./src/service/exercise.ts
-var exercise = __webpack_require__(91843);
-// EXTERNAL MODULE: ./src/components/NoData/index.tsx
-var NoData = __webpack_require__(782);
-// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
-var env = __webpack_require__(83877);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
-var jsx_runtime = __webpack_require__(37712);
-;// CONCATENATED MODULE: ./src/components/PreviewAll/index.tsx
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-/* harmony default export */ var PreviewAll = (function (_ref) {
- var _data, _data2, _data3, _data4, _data5, _data6;
- var _ref$editOffice = _ref.editOffice,
- editOffice = _ref$editOffice === void 0 ? 'view' : _ref$editOffice,
- data = _ref.data,
- theme = _ref.theme,
- type = _ref.type,
- filename = _ref.filename,
- monacoEditor = _ref.monacoEditor,
- className = _ref.className,
- style = _ref.style,
- close = _ref.close,
- onClose = _ref.onClose,
- hasMask = _ref.hasMask,
- disabledDownload = _ref.disabledDownload,
- onImgDimensions = _ref.onImgDimensions,
- showNodata = _ref.showNodata;
- var _useState = (0,_react_17_0_2_react.useState)('https://view.officeapps.live.com/op/view.aspx?src=http://testgs.educoder.net//rails/active_storage/blobs/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBCZz09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--03541f6234b93d7ac3b2d84e7eb0e6594a952945/1.ppt'),
- _useState2 = slicedToArray_default()(_useState, 2),
- src = _useState2[0],
- setSrc = _useState2[1];
- var _useState3 = (0,_react_17_0_2_react.useState)(""),
- _useState4 = slicedToArray_default()(_useState3, 2),
- token = _useState4[0],
- setToken = _useState4[1];
- var _useState5 = (0,_react_17_0_2_react.useState)(),
- _useState6 = slicedToArray_default()(_useState5, 2),
- officeData = _useState6[0],
- setOfficeData = _useState6[1];
- var officePath = window.ENV === "build" ? "/react/build" : "";
- var apiServer = location.host.startsWith("localhost") ? env/* default */.Z.PROXY_SERVER : env/* default */.Z.API_SERVER;
- // let size;
- var unit = 1024 * 1024;
- var maxSize = 10 * unit;
- var closeRef = (0,_react_17_0_2_react.useRef)();
- if ((_data = data) !== null && _data !== void 0 && _data.startsWith("/api") && type !== "txt") {
- data = env/* default */.Z.API_SERVER + data;
- }
- var getFileExtension = function getFileExtension(url) {
- var filename = url.substring(url.lastIndexOf('/') + 1);
- var extension = filename.split('.').pop();
- return extension;
- };
- if (filename) monacoEditor.filename = filename;
- (0,_react_17_0_2_react.useEffect)(function () {
- var _document$cookie;
- var cookies = (_document$cookie = document.cookie) === null || _document$cookie === void 0 || (_document$cookie = _document$cookie.replace(/\s/g, "")) === null || _document$cookie === void 0 ? void 0 : _document$cookie.split(";");
- cookies === null || cookies === void 0 || cookies.map(function (item) {
- var i = item.split("=");
- if (i[0] === '_educoder_session') {
- setToken(i[1]);
- }
- });
- }, []);
- (0,_react_17_0_2_react.useEffect)(function () {
- if (type === "office") {
- if (data.indexOf("bigfilescdn.") > -1) {
- setOfficeData({
- url: data,
- fileType: getFileExtension(data),
- model: data.indexOf("model=edit") ? "edit" : "view"
- });
- } else {
- getData();
- }
- }
- }, [type, data]);
- var getData = /*#__PURE__*/function () {
- var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
- var _url, _id, res;
- return regeneratorRuntime_default()().wrap(function _callee$(_context) {
- while (1) switch (_context.prev = _context.next) {
- case 0:
- console.log("data:", data);
- _url = data;
- if (!data.startsWith("http")) {
- _url = location.origin + _url;
- }
- _id = new URL(_url).pathname.split("/").pop();
- _context.next = 6;
- return (0,exercise/* setEcsAttachment */.gJ)({
- attachment_id: _id
- });
- case 6:
- res = _context.sent;
- res.url = apiServer + res.url;
- setOfficeData(res);
- case 9:
- case "end":
- return _context.stop();
- }
- }, _callee);
- }));
- return function getData() {
- return _ref2.apply(this, arguments);
- };
- }();
- var handleClick = function handleClick() {
- if (data.startsWith("http") || data.startsWith('blob:')) {
- handleDown();
- return;
- }
- (0,util/* downloadFile */.Sv)(filename || 'educoder', data, filename);
- };
- var handleDown = function handleDown() {
- (0,util/* downLoadLink */.Nd)(filename || 'educoder', decodeURIComponent(data));
- };
- return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
- style: objectSpread2_default()({}, style || {}),
- className: "".concat(hasMask && PreviewAllmodules.bgBlack, " ").concat(!!type ? PreviewAllmodules.wrp : "hide"),
- children: [close && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
- className: PreviewAllmodules.close,
- ref: closeRef,
- children: [!!onImgDimensions && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
- title: "\u70B9\u51FB\u5BF9\u56FE\u7247\u8FDB\u884C\u6279\u6CE8",
- getPopupContainer: function getPopupContainer() {
- return closeRef.current;
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
- onClick: function onClick() {
- onClose();
- onImgDimensions();
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "icon-yulanpizhu"
- })
- })
- }), !disabledDownload && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
- title: "\u70B9\u51FB\u4E0B\u8F7D\u6B64\u6587\u4EF6",
- getPopupContainer: function getPopupContainer() {
- return closeRef.current;
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
- onClick: handleDown,
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "icon-quxiaozhiding"
- })
- })
- }), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
- title: "\u5173\u95ED",
- getPopupContainer: function getPopupContainer() {
- return closeRef.current;
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
- className: "",
- onClick: onClose,
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "icon-guanbi1"
- })
- })
- })]
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
- className: "".concat(PreviewAllmodules[className], " ").concat(className, " ").concat(PreviewAllmodules.monaco, " ").concat(type === "txt" ? "show" : "hide"),
- children: type === "txt" && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
- children: /*#__PURE__*/(0,jsx_runtime.jsx)(monaco_editor/* default */.ZP, objectSpread2_default()({}, monacoEditor))
- })
- }), type === "audio" && /*#__PURE__*/(0,jsx_runtime.jsx)("audio", {
- src: "".concat(((_data2 = data) === null || _data2 === void 0 ? void 0 : _data2.indexOf("http://")) > -1 || ((_data3 = data) === null || _data3 === void 0 ? void 0 : _data3.indexOf("https://")) > -1 ? "" : "data:audio/mp3;base64,").concat(data),
- autoPlay: true
- }), type === "video" && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
- children: ((_data4 = data) === null || _data4 === void 0 ? void 0 : _data4.indexOf("http")) > -1 ? /*#__PURE__*/(0,jsx_runtime.jsx)("video", {
- controls: true,
- src: "".concat(data),
- autoPlay: true
- }) : /*#__PURE__*/(0,jsx_runtime.jsx)("video", {
- controls: true,
- src: "data:video/mp4;base64,".concat(data),
- autoPlay: true
- })
- }), type === 'office' && officeData && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", {
- src: "".concat(officePath, "/office.html?key=").concat(officeData.key, "&url=").concat(btoa(officeData.url), "&callbackUrl=").concat(apiServer + officeData.callbackUrl, "&fileType=").concat(officeData.fileType, "&title=").concat(officeData.title, "&model=").concat(editOffice, "&officeServer=").concat(env/* default */.Z.ONLYOFFICE, "&disabledDownload=").concat(!!disabledDownload)
- }), type === 'html' && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", {
- src: data + '&disposition=inline'
- }), type === 'pdf' && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", {
- src: "".concat(officePath, "/js/pdfview/index.html?url=").concat(data, "&disabledDownload=").concat(!!disabledDownload)
- }) //
- , type === "image" && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
- src: "".concat(((_data5 = data) === null || _data5 === void 0 ? void 0 : _data5.indexOf("http://")) > -1 || ((_data6 = data) === null || _data6 === void 0 ? void 0 : _data6.indexOf("https://")) > -1 ? "" : "data:image/png;base64,").concat(data)
- }), (type === "other" || type === "download") && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
- children: showNodata ? /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {
- customText: "\u5F53\u524D\u6587\u4EF6\u4E0D\u652F\u6301\u9884\u89C8\uFF0C\u53EF\u70B9\u51FB\u4E0B\u8F7D\u67E5\u770B",
- ButtonTwo: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
- icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "iconfont icon-xiazai4 font14"
- }),
- type: "primary",
- size: 'middle',
- onClick: handleClick,
- children: "\u4E0B\u8F7D"
- })
- }) : /*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
- type: "primary",
- size: 'middle',
- onClick: handleClick,
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ArrowDownOutlined/* default */.Z, {}), "\u70B9\u51FB\u4E0B\u8F7D"]
- })
- })]
- });
-});
-
-/***/ }),
-
-/***/ 66128:
-/*!*********************************************!*\
- !*** ./src/components/RenderHtml/index.tsx ***!
- \*********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/toConsumableArray.js */ 37205);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/createForOfIteratorHelper.js */ 91232);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var katex_dist_katex_min_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! katex/dist/katex.min.css */ 48725);
-/* harmony import */ var _utils_marked__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/utils/marked */ 39790);
-/* harmony import */ var code_prettify__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! code-prettify */ 64018);
-/* harmony import */ var code_prettify__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(code_prettify__WEBPACK_IMPORTED_MODULE_7__);
-/* harmony import */ var hls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! hls.js */ 27627);
-/* harmony import */ var _utils_env__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/utils/env */ 83877);
-/* harmony import */ var katex__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! katex */ 15342);
-/* harmony import */ var katex__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(katex__WEBPACK_IMPORTED_MODULE_10__);
-/* harmony import */ var uuid__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! uuid */ 1012);
-/* harmony import */ var _components_PreviewAll__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/components/PreviewAll */ 13039);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-var ADD_MULTI = '@▁▁@';
-var ADD_SINGLE = '@▁@';
-var preRegex = /]*>/g;
-function _unescape(str) {
- var div = document.createElement('div');
- div.innerHTML = str;
- return div.childNodes.length === 0 ? '' : div.childNodes[0].nodeValue;
-}
-/* harmony default export */ __webpack_exports__.Z = (function (_ref) {
- var _ref$value = _ref.value,
- value = _ref$value === void 0 ? '' : _ref$value,
- className = _ref.className,
- showTextOnly = _ref.showTextOnly,
- showLines = _ref.showLines,
- _ref$style = _ref.style,
- style = _ref$style === void 0 ? {} : _ref$style,
- _ref$stylesPrev = _ref.stylesPrev,
- stylesPrev = _ref$stylesPrev === void 0 ? {} : _ref$stylesPrev,
- highlightKeywords = _ref.highlightKeywords,
- showProgramFill = _ref.showProgramFill,
- isProgramFill = _ref.isProgramFill,
- _ref$disabledFill = _ref.disabledFill,
- disabledFill = _ref$disabledFill === void 0 ? false : _ref$disabledFill,
- programFillValue = _ref.programFillValue,
- _ref$onFillChange = _ref.onFillChange,
- onFillChange = _ref$onFillChange === void 0 ? function (value) {} : _ref$onFillChange,
- _ref$onFillBlur = _ref.onFillBlur,
- onFillBlur = _ref$onFillBlur === void 0 ? function () {} : _ref$onFillBlur;
- var str = String(value);
- var _useState = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)(""),
- _useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState, 2),
- data = _useState2[0],
- setData = _useState2[1];
- var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)("office"),
- _useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState3, 2),
- type = _useState4[0],
- setType = _useState4[1];
- var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)([]),
- _useState6 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState5, 2),
- projectValue = _useState6[0],
- setProjectValue = _useState6[1];
- var classNamesRef = (0,react__WEBPACK_IMPORTED_MODULE_4__.useRef)("a" + (0,uuid__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z)());
- var formObj = {};
- var createInput = function createInput(a, num) {
- // const wrap = document.createElement("span")
- // wrap.className =
- var input = document.createElement(a === ADD_SINGLE ? "input" : "textarea");
- input.style.width = "100%";
- input.style.height = a === ADD_SINGLE ? "40px" : "151px";
- input.rows = 5;
- input.spellcheck = false;
- input.name = "edu-program-fill";
- input.placeholder = "请输入";
- input.dataset.id = num;
- var key = Object.keys(formObj).length;
- formObj[key] = input;
- return "").concat(input.outerHTML, "");
- };
- var formatMD = function formatMD(rs) {
- return rs.replace(/([\s\S]+?)<\/style>/gim, function (_, css) {
- var _css = css.replace(/(\n|\r)/g, "").split("}");
- var arr = [];
- _css.map(function (item) {
- if (item != '') {
- arr.push(".".concat(classNamesRef.current, " ").concat(item));
- }
- });
- return "");
- });
- };
- var html = (0,react__WEBPACK_IMPORTED_MODULE_4__.useMemo)(function () {
- try {
- var reg = /\(\s+\/api\/attachments\/|\(\/api\/attachments\/|\(\/attachments\/download\//g;
- var reg2 = /\"\/api\/attachments\/|\"\/attachments\/download\//g;
- var reg3 = /\(\s+\/files\/uploads\/|\"\/files\/uploads\//g;
- str = str.replace(reg, "(" + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/api/attachments/").replace(reg2, '"' + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/api/attachments/").replace(reg3, '"' + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/files/uploads/").replaceAll("http://video.educoder", "https://video.educoder").replaceAll("http://www.educoder.net/api", "https://data.educoder.net/api").replaceAll("https://www.educoder.net/api", "https://data.educoder.net/api").replace(/\r\n/g, "\n");
- // str = str.replace(new RegExp("(?", ">").replace(/(@▁▁@|@▁@)/g, function (a, b, c) {
- ++num;
- return createInput(a, num);
- });
- return "".concat(formatMD(str || ""), "
");
- }
- var rs = formatMD(str);
- rs = (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .ZP)(rs);
- var math_expressions = (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .getMathExpressions */ .ez)();
- if (str.match(/\[TOC\]/)) {
- rs = rs.replace('[TOC]
', (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .getTocContent */ .Qv)());
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .cleanToc */ .Iy)();
- }
- rs = rs.replace(/(__special_katext_id_\d+__)/g, function (_match, capture) {
- var _math_expressions$cap = math_expressions[capture],
- type = _math_expressions$cap.type,
- expression = _math_expressions$cap.expression;
- return (0,katex__WEBPACK_IMPORTED_MODULE_10__.renderToString)(_unescape(expression) || '', {
- displayMode: type === 'block',
- throwOnError: false,
- output: 'html'
- });
- });
- rs = rs.replace(/▁/g, '▁▁▁');
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .resetMathExpressions */ .AL)();
- // return dompurify.sanitize(rs)
- var dom = document.createElement('div');
- dom.innerHTML = rs;
- if (highlightKeywords) {
- var escapedKeywords = highlightKeywords.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
- findKeyword(dom, escapedKeywords);
- return dom.innerHTML;
- }
- if (showTextOnly) {
- return dom.innerText;
- }
- setTimeout(function () {
- return onLoad();
- }, 500);
- return dom.innerHTML;
- }, [str, highlightKeywords]);
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (el.current) {
- var inputs = el.current.querySelectorAll(["input", "textarea"]);
- inputs.forEach(function (input) {
- input.oninput = onInput;
- input.onblur = onBlur;
- });
- }
- }, [projectValue]);
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (!!(programFillValue !== null && programFillValue !== void 0 && programFillValue.length)) {
- try {
- var scoreDom = el.current.querySelectorAll(".edu-program-fill-score");
- var dom = el.current.querySelectorAll('[name="edu-program-fill"]');
- var _iterator = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2___default()(dom.entries()),
- _step;
- try {
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
- var _programFillValue$k;
- var _step$value = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_step.value, 2),
- k = _step$value[0],
- i = _step$value[1];
- i.value = (_programFillValue$k = programFillValue[k]) === null || _programFillValue$k === void 0 ? void 0 : _programFillValue$k.value;
- if (programFillValue[k].type === "warning") {
- i.className = "program-fill-warning";
- } else if (programFillValue[k].type === "success") {
- i.className = "program-fill-success";
- } else {
- i.className = "";
- }
- }
- } catch (err) {
- _iterator.e(err);
- } finally {
- _iterator.f();
- }
- var _iterator2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2___default()(scoreDom.entries()),
- _step2;
- try {
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
- var _programFillValue$_k, _programFillValue$_k2;
- var _step2$value = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_step2.value, 2),
- _k = _step2$value[0],
- _i = _step2$value[1];
- _i.innerHTML = (_programFillValue$_k = programFillValue[_k]) !== null && _programFillValue$_k !== void 0 && _programFillValue$_k.score ? "".concat((_programFillValue$_k2 = programFillValue[_k]) === null || _programFillValue$_k2 === void 0 ? void 0 : _programFillValue$_k2.score, "\u5206") : "";
- }
- } catch (err) {
- _iterator2.e(err);
- } finally {
- _iterator2.f();
- }
- setProjectValue(programFillValue);
- } catch (error) {}
- }
- }, [programFillValue]);
- var onInput = function onInput(e) {
- projectValue[e.target.dataset.id] = projectValue[e.target.dataset.id] || {};
- projectValue[e.target.dataset.id]["value"] = e.target.value;
- setProjectValue(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(projectValue));
- onFillChange(projectValue, e.target.dataset.id);
- };
- var onBlur = function onBlur(e) {
- projectValue[e.target.dataset.id] = projectValue[e.target.dataset.id] || {};
- projectValue[e.target.dataset.id]["value"] = e.target.value;
- setProjectValue(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(projectValue));
- onFillBlur(projectValue, e.target.dataset.id);
- };
- function findKeyword(node, keyword) {
- return node.childNodes.forEach(function (childNode) {
- if (childNode.childNodes.length > 0) {
- findKeyword(childNode, keyword);
- } else if (childNode.nodeName !== "IMG") {
- if (childNode.innerHTML) {
- var _childNode$innerHTML;
- childNode.innerHTML = (_childNode$innerHTML = childNode.innerHTML) === null || _childNode$innerHTML === void 0 ? void 0 : _childNode$innerHTML.replace(new RegExp(keyword, "gi"), '$&');
- } else {
- var dom = document.createElement("span");
- dom.innerHTML = childNode.textContent.replace(new RegExp(keyword, "gi"), '$&');
- childNode.replaceWith(dom);
- }
- }
- });
+ // crossOrigin='anonymous'
+ // src={data?.src}
+ })]
+ })
+ });
+};
+/* harmony default export */ var components_ImageDimensions = (ImageDimensions);
- // return dom.childNodes.forEach((node:any) => {
- // console.log("nodeLen:",node.childNodes.length)
- // if(node.childNodes.length > 0){
- // debugger
- // // findKeyword(dom.childNodes,keyword)
- // }else{
- // if(node.nodeName !== "#text"){
- // node.innerHTML = node.innerHTML.replaceAll(keyword,`${keyword}`)
- // console.log("node:",node,dom,node.nodeName,node.innerHTML,node.childNodes.length)
- // debugger
- // }
- // }
+/***/ }),
- // return node
- // });
- }
- var el = (0,react__WEBPACK_IMPORTED_MODULE_4__.useRef)();
- _utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .lines */ .jb['WebkitLineClamp'] = showLines;
- if (showLines) {
- style = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, style), _utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .lines */ .jb);
- }
- function onAncherHandler(e) {
- var target = e.target;
- if (target.tagName.toUpperCase() === 'A') {
- var ancher = target.getAttribute('href');
- if (ancher.indexOf("office") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("office");
- } else if (ancher.indexOf("application/pdf") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("pdf");
- } else if (ancher.indexOf("text/html") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("html");
- } else if (ancher.startsWith('#')) {
- e.preventDefault();
- var viewEl = document.getElementById(ancher.replace('#', ''));
- if (viewEl) {
- viewEl.scrollIntoView(true);
- }
- }
- }
- }
- var onLoad = function onLoad() {
- var _el$current;
- var videoElement = (_el$current = el.current) === null || _el$current === void 0 ? void 0 : _el$current.querySelectorAll('video');
- videoElement === null || videoElement === void 0 || videoElement.forEach(function (item) {
- item.oncontextmenu = function () {
- return false;
- };
- if (item.src.indexOf('.m3u8') > -1) {
- if (item.canPlayType('application/vnd.apple.mpegurl')) {} else if (hls_js__WEBPACK_IMPORTED_MODULE_8__/* ["default"].isSupported */ .ZP.isSupported()) {
- var hls = new hls_js__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .ZP();
- hls.loadSource(item.src);
- hls.attachMedia(item);
- }
- }
- });
- };
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (el.current && html) {
- if (html.match(preRegex)) {
- window.PR.prettyPrint();
- }
- }
- if (el.current) {
- el.current.addEventListener('click', onAncherHandler);
- return function () {
- var _el$current2;
- (_el$current2 = el.current) === null || _el$current2 === void 0 || _el$current2.removeEventListener('click', onAncherHandler);
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .resetMathExpressions */ .AL)();
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .cleanToc */ .Iy)();
- };
- }
- }, [html, el.current, onAncherHandler]);
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.Fragment, {
- children: [showTextOnly && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("div", {
- ref: el,
- children: html
- }), !showTextOnly && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("div", {
- ref: el,
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, style),
- className: "".concat(className ? className : '', " ").concat(disabledFill ? "disabled-fill" : "", " markdown-body ").concat(classNamesRef.current),
- dangerouslySetInnerHTML: {
- __html: html
- }
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)(_components_PreviewAll__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {
- close: true,
- data: data,
- type: !!(data !== null && data !== void 0 && data.length) ? type : "",
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, stylesPrev),
- onClose: function onClose() {
- return setData("");
+/***/ 11776:
+/*!**********************************************************!*\
+ !*** ./src/components/QuestionEditor/MdEditorInForm.tsx ***!
+ \**********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
+/* harmony export */ h: function() { return /* binding */ MdEditorInForm; },
+/* harmony export */ x: function() { return /* binding */ RegularInput; }
+/* harmony export */ });
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectWithoutProperties.js */ 39647);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _components_markdown_editor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/markdown-editor */ 89215);
+/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./index.less?modules */ 47661);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _components_RenderHtml__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/RenderHtml */ 66128);
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
+
+
+var _excluded = ["value", "onChange", "scrollId"];
+
+
+
+
+
+var MdEditorInForm = function MdEditorInForm(_ref) {
+ var value = _ref.value,
+ _onChange = _ref.onChange,
+ scrollId = _ref.scrollId,
+ props = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_1___default()(_ref, _excluded);
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("div", {
+ id: scrollId || '',
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_markdown_editor__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, props), {}, {
+ defaultValue: value,
+ onChange: function onChange(a, b) {
+ console.log("a:", a, b);
+ if (!!(b !== null && b !== void 0 && b.length)) _onChange(a, b);else _onChange(a);
}
- })]
+ }))
});
-});
+};
+var RegularInput = function RegularInput(_ref2) {
+ var value = _ref2.value,
+ onChange = _ref2.onChange,
+ placeholder = _ref2.placeholder,
+ _ref2$height = _ref2.height,
+ height = _ref2$height === void 0 ? 140 : _ref2$height,
+ isEdit = _ref2.isEdit;
+ return isEdit ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_markdown_editor__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
+ watch: true,
+ isFocus: true,
+ height: height,
+ placeholder: placeholder,
+ defaultValue: value,
+ onChange: onChange
+ }) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("div", {
+ style: {
+ cursor: 'pointer'
+ },
+ children: value ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_RenderHtml__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
+ className: _index_less_modules__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z.inputBorder,
+ value: value
+ }) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("div", {
+ className: "".concat(_index_less_modules__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z.inputBorder, " ").concat(_index_less_modules__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z.placeholder),
+ children: placeholder
+ })
+ });
+};
+
/***/ }),
@@ -1033,6 +1905,7 @@ function _unescape(str) {
\*************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ h: function() { return /* binding */ MyCodeMirror; }
/* harmony export */ });
@@ -1127,6 +2000,9 @@ var LanguageDesc = {
content: ''
},
onFinish: onSubmit,
+ style: {
+ width: 500
+ },
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.Item, {
label: "\u4EE3\u7801\u8BED\u8A00",
name: "language",
@@ -1232,12 +2108,13 @@ function MyCodeMirror(_ref2) {
/***/ }),
-/***/ 49177:
+/***/ 89215:
/*!***************************************************************!*\
- !*** ./src/components/markdown-editor/index.tsx + 14 modules ***!
+ !*** ./src/components/markdown-editor/index.tsx + 15 modules ***!
\***************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
@@ -1362,9 +2239,13 @@ var DEFAULTICONS = [{
title: '行内公式',
icon: 'md-iconfont icon-sum',
actionName: 'inline-latex'
+}, {
+ title: '数学图像',
+ icon: 'iconfont icon-shuxuetuxiang2',
+ actionName: 'maths-latex'
}, {
title: '多行公式',
- icon: 'md-iconfont icon-formula',
+ icon: 'iconfont icon-jisuan1',
actionName: 'latex'
}, '|', {
title: '添加图片',
@@ -1503,7 +2384,7 @@ var modal = __webpack_require__(88618);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
var es_form = __webpack_require__(78241);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
-var input = __webpack_require__(1056);
+var input = __webpack_require__(11694);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
;// CONCATENATED MODULE: ./src/components/markdown-editor/link/index.tsx
@@ -1533,6 +2414,9 @@ var formItemLayout = {
},
className: "link-panel",
onFinish: onSubmit,
+ style: {
+ width: 500
+ },
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u94FE\u63A5\u5730\u5740",
name: "link",
@@ -3241,6 +4125,7 @@ function FlowChart(_ref) {
destroyOnClose: true,
maskClosable: false,
getContainer: modalRef.current,
+ rootClassName: "zIndex-9999",
title: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: 1,
@@ -3436,6 +4321,110 @@ var add_table_panel_style = {
})]
});
});
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/index.js + 2 modules
+var es_switch = __webpack_require__(78673);
+// EXTERNAL MODULE: ./src/components/MathematicalGraphics/js/index.js
+var js = __webpack_require__(28871);
+var js_default = /*#__PURE__*/__webpack_require__.n(js);
+;// CONCATENATED MODULE: ./src/components/MathematicalGraphics/index.tsx
+
+
+
+
+
+
+
+var MathematicalGraphics_FlowChart = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(function (_ref, ref) {
+ var use3d = _ref.use3d,
+ width = _ref.width,
+ height = _ref.height,
+ callback = _ref.callback,
+ showSaveButton = _ref.showSaveButton;
+ var ggbAppletRef = (0,_react_17_0_2_react.useRef)();
+ var appletRef = (0,_react_17_0_2_react.useRef)();
+ var _useState = (0,_react_17_0_2_react.useState)(false),
+ _useState2 = slicedToArray_default()(_useState, 2),
+ is3D = _useState2[0],
+ setIs3d = _useState2[1];
+ var parameters = (0,_react_17_0_2_react.useRef)({
+ "id": ggbAppletRef,
+ "appName": "graphing",
+ "width": width || 1000,
+ "height": height || 600,
+ "showToolBar": true,
+ "showMenuBar": true,
+ "allowStyleBar": true,
+ "showAlgebraInput": true,
+ "enableLabelDrags": false,
+ "enableShiftDragZoom": true,
+ "showToolBarHelp": false,
+ "errorDialogsActive": true,
+ "showTutorialLink": true,
+ "showLogging": true,
+ "useBrowserForJS": false
+ });
+ (0,_react_17_0_2_react.useEffect)(function () {
+ appletRef.current = new (js_default())(parameters.current, true);
+ window.onload = function () {
+ appletRef.current.inject('applet_container');
+ };
+ }, []);
+ var getImgData = function getImgData() {
+ var str = window.ggbApplet.getPNGBase64(1, true, 72);
+ callback && callback(str);
+ return str;
+ };
+ (0,_react_17_0_2_react.useEffect)(function () {
+ parameters.current.appName = is3D ? "3D" : "graphing";
+ appletRef.current.inject('applet_container');
+ }, [is3D]);
+ (0,_react_17_0_2_react.useEffect)(function () {
+ setIs3d(use3d);
+ }, [use3d]);
+ (0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
+ return {
+ getImgData: getImgData
+ };
+ });
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ style: {
+ width: "100%",
+ height: "100%"
+ },
+ id: "applet_container",
+ ref: ggbAppletRef
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
+ align: "middle",
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
+ flex: 1,
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_switch/* default */.Z, {
+ size: "default",
+ checkedChildren: "\u5173\u95ED3D\u56FE\u50CF",
+ unCheckedChildren: "\u5F00\u542F3D\u56FE\u50CF",
+ checked: is3D,
+ onChange: function onChange(e) {
+ return setIs3d(e);
+ }
+ })
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
+ size: "large",
+ onClick: getImgData,
+ style: {
+ zIndex: 8,
+ marginTop: 10
+ },
+ type: "primary",
+ children: "\u4FDD\u5B58\u5230\u7F16\u8F91\u5668"
+ })
+ })]
+ })]
+ });
+});
+/* harmony default export */ var MathematicalGraphics = (MathematicalGraphics_FlowChart);
+// EXTERNAL MODULE: ./src/components/MathsLatexKeybords/keybords.tsx
+var keybords = __webpack_require__(70118);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(83877);
;// CONCATENATED MODULE: ./src/components/markdown-editor/constant.ts
@@ -3482,6 +4471,8 @@ var useInterval = __webpack_require__(94158);
+
+
@@ -3499,7 +4490,7 @@ function processSize(size) {
var isMac = navigator.platform.toUpperCase().indexOf('MAC') >= 0;
var key = isMac ? 'Cmd' : 'Ctrl';
var DEFAULTKEYMAP = defineProperty_default()(defineProperty_default()({}, key + '-B', 'bold'), key + '-I', 'italic');
-var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, LINK, '添加链接'), CODE_BLOCK, '添加代码块'), UPLOAD_IMAGE, '添加图片'), DRAW_IMAGE, '添加画图'), ADD_FLOWCHART, '插入流程图'), ADD_TABLE, '添加表格');
+var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, LINK, '添加链接'), CODE_BLOCK, '添加代码块'), UPLOAD_IMAGE, '添加图片'), DRAW_IMAGE, '添加画图'), ADD_FLOWCHART, '插入流程图'), ADD_TABLE, '添加表格'), 'maths-latex', "数学图像"), 'inline-latex', "LATEX公式");
//https://codemirror.net/demo
//The height can be set through CSS (by giving the .CodeMirror class a height property), or by calling the cm's setSize method.
@@ -3916,10 +4907,11 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
}
return cm.focus();
case 'inline-latex':
- cm.replaceSelection('`$$' + selection + '$$`');
- if (selection === '') {
- cm.setCursor(cursor.line, cursor.ch + 3);
- }
+ setAction("inline-latex");
+ // cm.replaceSelection('`$$' + selection + '$$`')
+ // if (selection === '') {
+ // cm.setCursor(cursor.line, cursor.ch + 3)
+ // }
return cm.focus();
case 'latex':
cm.replaceSelection("```latex\n" + selection + "\n```");
@@ -3991,6 +4983,9 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
case DRAW_IMAGE:
setAction(DRAW_IMAGE);
return;
+ case "maths-latex":
+ setAction("maths-latex");
+ return;
case ADD_FLOWCHART:
setAction(ADD_FLOWCHART);
return;
@@ -4015,6 +5010,26 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
content = values.content;
cm.replaceSelection(['```' + language, content, '```'].join('\n'));
return cm.focus();
+ case "maths-latex":
+ var binaryString = atob(values);
+ var uint8Array = new Uint8Array(binaryString.length);
+ for (var i = 0; i < binaryString.length; i++) {
+ uint8Array[i] = binaryString.charCodeAt(i);
+ }
+ var files = new Blob([uint8Array], {
+ type: "image/png"
+ });
+ uploadImage(files, function (data) {
+ if (data.id) {
+ cm.replaceSelection(".concat(data.content_type, ")"));
+ } else {
+ if ((data === null || data === void 0 ? void 0 : data.status) === 401) document.location.href = '/user/login';
+ }
+ });
+ break;
+ case "inline-latex":
+ cm.replaceSelection("`$$" + values + "$$`");
+ break;
case UPLOAD_IMAGE:
case DRAW_IMAGE:
case FLOW_CHART:
@@ -4092,6 +5107,16 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
callback: ExecutePluginAction,
onCancel: onCancel
});
+ case "maths-latex":
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(MathematicalGraphics, {
+ showSaveButton: true,
+ callback: ExecutePluginAction
+ });
+ case "inline-latex":
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(keybords/* default */.Z, {
+ showSaveButton: true,
+ callback: ExecutePluginAction
+ });
default:
return null;
}
@@ -4232,7 +5257,7 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
onCancel: onCancel,
footer: null,
destroyOnClose: true,
- width: action === ADD_FLOWCHART ? "1200px" : 520,
+ width: action === ADD_FLOWCHART ? "1200px" : null,
height: action === ADD_FLOWCHART ? "80vh" : null,
className: "markdown-popup-form",
children: PluginEl
@@ -4249,6 +5274,7 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
\**********************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Z: function() { return /* binding */ Dialog; }
/* harmony export */ });
@@ -4298,12 +5324,13 @@ var Dialog = /*#__PURE__*/function (_React$Component) {
/***/ }),
-/***/ 96321:
+/***/ 49177:
/*!****************************************************************!*\
!*** ./src/components/ui-customization/index.tsx + 34 modules ***!
\****************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
@@ -4563,7 +5590,7 @@ var SuperiorTabs = function SuperiorTabs(_ref) {
// extracted by mini-css-extract-plugin
/* harmony default export */ var CustomInputmodules = ({"flex_box_center":"flex_box_center___yX6Oa","flex_space_between":"flex_space_between___t7oqF","flex_box_vertical_center":"flex_box_vertical_center___dEIHy","flex_box_center_end":"flex_box_center_end___taQDF","flex_box_column":"flex_box_column___xY_Lr","input":"input___PW2zI","dropdown":"dropdown___vSy8B","menu":"menu___NiyBu","text":"text___Grueu","b1":"b1___ZKryM","b2":"b2___aKyGa"});
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
-var input = __webpack_require__(1056);
+var input = __webpack_require__(11694);
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomInput/index.tsx
@@ -4711,7 +5738,7 @@ var spin = __webpack_require__(71418);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
var tooltip = __webpack_require__(6848);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/index.js + 8 modules
-var rate = __webpack_require__(19479);
+var rate = __webpack_require__(91052);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(83877);
// EXTERNAL MODULE: ./src/utils/util.tsx
@@ -5645,6 +6672,7 @@ var CustomCountdown_CustomCountdown = function CustomCountdown(_ref) {
\****************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Z: function() { return /* binding */ useInterval; }
/* harmony export */ });
@@ -5674,269 +6702,283 @@ function useInterval(callback, delay) {
/***/ }),
-/***/ 54926:
-/*!*****************************************************************************!*\
- !*** ./src/pages/Shixuns/Edit/body/Environment/Label/index.tsx + 1 modules ***!
- \*****************************************************************************/
+/***/ 83337:
+/*!**********************************************************************!*\
+ !*** ./src/pages/virtualSpaces/Lists/Discussion/AddOrEdit/index.tsx ***!
+ \**********************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1__);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectWithoutProperties.js */ 39647);
+/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_2__);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! antd */ 8591);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! antd */ 53188);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! antd */ 43418);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! antd */ 78241);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! antd */ 11694);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! antd */ 95237);
+/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! antd */ 43604);
+/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../index.less?modules */ 50);
+/* harmony import */ var _utils_env__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/utils/env */ 83877);
+/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @ant-design/icons */ 81941);
+/* harmony import */ var _components_QuestionEditor_MdEditorInForm__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/components/QuestionEditor/MdEditorInForm */ 11776);
+/* harmony import */ var _components_ui_customization__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/components/ui-customization */ 49177);
+/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ Environment_Label; }
-});
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./src/pages/Shixuns/Edit/body/Environment/Label/index.less?modules
-// extracted by mini-css-extract-plugin
-/* harmony default export */ var Labelmodules = ({"label":"label___CZ1_z","left":"left___ZKFRV","right":"right___zVTRn","error":"error___oNJNo"});
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
-var tooltip = __webpack_require__(6848);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
-var jsx_runtime = __webpack_require__(37712);
-;// CONCATENATED MODULE: ./src/pages/Shixuns/Edit/body/Environment/Label/index.tsx
+var _excluded = ["handleFinish", "form", "dispatch"];
-var Label = function Label(_ref) {
- var name = _ref.name,
- tooltipTitle = _ref.tooltipTitle,
- children = _ref.children,
- required = _ref.required,
- errorKey = _ref.errorKey,
- errorValue = _ref.errorValue,
- errorName = _ref.errorName,
- _ref$errorStyle = _ref.errorStyle,
- errorStyle = _ref$errorStyle === void 0 ? {} : _ref$errorStyle,
- _ref$nameWidth = _ref.nameWidth,
- nameWidth = _ref$nameWidth === void 0 ? 112 : _ref$nameWidth,
- _ref$align = _ref.align,
- align = _ref$align === void 0 ? 'center' : _ref$align,
- _ref$contentStyle = _ref.contentStyle,
- contentStyle = _ref$contentStyle === void 0 ? {} : _ref$contentStyle;
- return /*#__PURE__*/(0,jsx_runtime.jsx)(_react_17_0_2_react.Fragment, {
- children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
- className: Labelmodules.label,
- style: {
- alignItems: align
- },
- children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
- className: Labelmodules.left,
+
+
+
+
+
+var AddOrEdit = function AddOrEdit(_ref) {
+ var _fileList$2;
+ var handleFinish = _ref.handleFinish,
+ form = _ref.form,
+ dispatch = _ref.dispatch,
+ props = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_2___default()(_ref, _excluded);
+ var _useState = (0,react__WEBPACK_IMPORTED_MODULE_3__.useState)([]),
+ _useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1___default()(_useState, 2),
+ fileList = _useState2[0],
+ setFileList = _useState2[1];
+ var uploadProps = {
+ fileList: fileList,
+ maxCount: 1,
+ // accept: ".pdf, .docx, .doc, .xlsx, .xls, .ppt, .pptx, .zip,.jpg,.png",
+ accept: "image/*",
+ withCredentials: true,
+ beforeUpload: function beforeUpload(file) {
+ var fileSize = file.size / 1024 / 1024;
+ if (fileSize > 2 || fileSize == 0) {
+ antd__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP.error("".concat(file.name, " \u56FE\u7247\u65E0\u6CD5\u4E0A\u4F20\u3002").concat(fileSize == 0 ? "文件内容不能为空" : '超过图片大小限制(2MB)'));
+ return antd__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z.LIST_IGNORE;
+ }
+ return true;
+ },
+ onRemove: function onRemove(file) {
+ setFileList([]);
+ },
+ onChange: function onChange(info) {
+ form.setFieldsValue({
+ cover_id: ''
+ });
+ var statusList = ["uploading", "done", "removed"];
+ if (statusList.includes(info.file.status)) {
+ var _info$fileList;
+ setFileList(info.fileList);
+ form.setFieldsValue({
+ cover_id: (_info$fileList = info.fileList) === null || _info$fileList === void 0 || (_info$fileList = _info$fileList[0]) === null || _info$fileList === void 0 || (_info$fileList = _info$fileList.response) === null || _info$fileList === void 0 ? void 0 : _info$fileList.id
+ });
+ }
+ },
+ action: "".concat(_utils_env__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z.API_SERVER, "/api/attachments.json")
+ };
+ var fileUploadProps = {
+ multiple: true,
+ maxCount: 10,
+ // accept: ".pdf, .docx, .doc, .xlsx, .xls, .ppt, .pptx, .zip,.jpg,.png",
+ withCredentials: true,
+ beforeUpload: function beforeUpload(file) {
+ var fileSize = file.size / 1024 / 1024;
+ if (fileSize > 500 || fileSize == 0) {
+ antd__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP.error("".concat(file.name, " \u6587\u4EF6\u65E0\u6CD5\u4E0A\u4F20\u3002").concat(fileSize == 0 ? "文件内容不能为空" : '超过文件大小限制(500MB)'));
+ return antd__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z.LIST_IGNORE;
+ }
+ return true;
+ },
+ action: "".concat(_utils_env__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z.API_SERVER, "/api/attachments.json")
+ };
+ var renderImg = function renderImg() {
+ var _fileList$;
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsxs)("div", {
+ className: _index_less_modules__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z.imgUpLoad,
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("img", {
+ src: _utils_env__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z.API_SERVER + "/api/attachments/" + (fileList === null || fileList === void 0 || (_fileList$ = fileList[0]) === null || _fileList$ === void 0 || (_fileList$ = _fileList$.response) === null || _fileList$ === void 0 ? void 0 : _fileList$.id),
+ alt: "avatar",
style: {
- width: nameWidth
+ width: '100%'
+ }
+ }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("div", {
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_ant_design_icons__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {
+ onClick: function onClick() {
+ setFileList([]);
+ form.setFieldsValue({
+ cover_id: ''
+ });
+ },
+ style: {
+ fontSize: '16px',
+ color: 'red'
+ }
+ })
+ })]
+ });
+ };
+ (0,react__WEBPACK_IMPORTED_MODULE_3__.useEffect)(function () {
+ if (props.open && form.getFieldValue("cover_id") && form.getFieldValue("cover")) {
+ setFileList([{
+ response: form.getFieldValue("cover")
+ }]);
+ }
+ }, [props.open]);
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, props), {}, {
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
+ form: form,
+ initialValues: {},
+ layout: "vertical",
+ onFinish: function onFinish(ValueAll) {
+ handleFinish(ValueAll);
+ setFileList([]);
+ },
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z.Item, {
+ htmlFor: null,
+ name: "name",
+ label: "\u6807\u9898",
+ rules: [{
+ required: true,
+ message: '请输入标题'
+ }],
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z, {
+ placeholder: "\u8BF7\u8F93\u5165\u6807\u9898",
+ maxLength: 60,
+ showCount: true
+ })
+ }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z.Item, {
+ htmlFor: null,
+ name: "desc",
+ label: "\u5185\u5BB9",
+ rules: [{
+ required: true,
+ message: '请在此输入内容'
+ }],
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_components_QuestionEditor_MdEditorInForm__WEBPACK_IMPORTED_MODULE_6__/* .MdEditorInForm */ .h, {
+ placeholder: "\u8BF7\u5728\u6B64\u8F93\u5165\u5185\u5BB9",
+ scrollId: '',
+ watch: true,
+ height: 192
+ })
+ }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z.Item, {
+ htmlFor: null,
+ label: "附件",
+ name: "attachment_ids",
+ valuePropName: "fileList",
+ getValueFromEvent: function getValueFromEvent(e) {
+ if (Array.isArray(e)) {
+ return e;
+ }
+ return e === null || e === void 0 ? void 0 : e.fileList;
},
- children: [required && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
- children: "*"
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
- children: name
- }), !!tooltipTitle && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
- title: tooltipTitle,
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "iconfont icon-xiaowenhao2"
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, fileUploadProps), {}, {
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z, {
+ wrap: false,
+ align: "middle",
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_components_ui_customization__WEBPACK_IMPORTED_MODULE_7__/* .CustomButton */ .op, {
+ style: {
+ borderRadius: "2px"
+ },
+ icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("i", {
+ className: "iconfont icon-shangchuan3"
+ }),
+ children: "\u6587\u4EF6\u4E0A\u4F20"
+ }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z, {
+ style: {
+ marginLeft: "16px",
+ color: "#5F6367"
+ },
+ onClick: function onClick(e) {
+ e.preventDefault();
+ e.stopPropagation();
+ },
+ children: "1\u3001\u4E0D\u652F\u6301\u65AD\u70B9\u7EED\u4F20\uFF0C\u5355\u4E2A\u6587\u4EF6\u5927\u5C0F\u8BF7\u52FF\u8D85\u8FC7500M\uFF1B2\u3001\u4E00\u6B21\u6700\u591A\u4E0A\u4F2010\u4E2A\u6587\u4EF6\u3002"
+ })]
})
- })]
- }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
- className: Labelmodules.right,
- style: contentStyle,
- children: [children, errorName && errorValue === errorKey && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
- className: Labelmodules.error,
- style: errorStyle,
- children: errorName
- })]
+ }))
+ }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z.Item, {
+ name: "cover_id",
+ label: "\u5C01\u9762\u56FE\u7247",
+ rules: [{
+ required: true,
+ message: '请上传封面图片'
+ }],
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("div", {
+ className: _index_less_modules__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z.upload,
+ children: fileList !== null && fileList !== void 0 && (_fileList$2 = fileList[0]) !== null && _fileList$2 !== void 0 && (_fileList$2 = _fileList$2.response) !== null && _fileList$2 !== void 0 && _fileList$2.id ? renderImg() : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, uploadProps), {}, {
+ children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z, {
+ wrap: false,
+ align: "middle",
+ children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_components_ui_customization__WEBPACK_IMPORTED_MODULE_7__/* .CustomButton */ .op, {
+ style: {
+ borderRadius: "2px"
+ },
+ icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("i", {
+ className: "iconfont icon-shangchuan3"
+ }),
+ children: "\u56FE\u7247\u4E0A\u4F20"
+ }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z, {
+ style: {
+ marginLeft: "16px",
+ color: "#5F6367"
+ },
+ onClick: function onClick(e) {
+ e.preventDefault();
+ e.stopPropagation();
+ },
+ children: "\u8BF7\u9009\u62E9jpg\u3001png\u683C\u5F0F\uFF0C\u5EFA\u8BAE\u5C3A\u5BF8282*212\u50CF\u7D20"
+ })]
+ })
+ }))
+ })
})]
})
- });
+ }));
};
-/* harmony default export */ var Environment_Label = (Label);
+/* harmony default export */ __webpack_exports__.Z = (AddOrEdit);
/***/ }),
-/***/ 39790:
-/*!*****************************!*\
- !*** ./src/utils/marked.ts ***!
- \*****************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+/***/ 47661:
+/*!**********************************************************!*\
+ !*** ./src/components/QuestionEditor/index.less?modules ***!
+ \**********************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__) {
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ AL: function() { return /* binding */ resetMathExpressions; },
-/* harmony export */ Iy: function() { return /* binding */ cleanToc; },
-/* harmony export */ Qv: function() { return /* binding */ getTocContent; },
-/* harmony export */ ez: function() { return /* binding */ getMathExpressions; },
-/* harmony export */ jb: function() { return /* binding */ lines; }
-/* harmony export */ });
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var marked__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! marked */ 32834);
-/* harmony import */ var marked__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(marked__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! marked/src/helpers */ 11690);
-/* harmony import */ var marked_src_helpers__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__);
+"use strict";
+// extracted by mini-css-extract-plugin
+/* harmony default export */ __webpack_exports__.Z = ({"wrap":"wrap___ilWvf","deleteIcon":"deleteIcon___JBDG8","keywordTag":"keywordTag___iieCb","questionTitleEditorWrap":"questionTitleEditorWrap___MHB5s","choiceWrap":"choiceWrap___QFkTc","choiceIndex":"choiceIndex___Mr2YO","judgementIndex":"judgementIndex___fUVWK","setAnswerBtn":"setAnswerBtn___Whox5","activeAnswer":"activeAnswer___fGU6Y","activeJudgementAnswer":"activeJudgementAnswer___wJv8P","actionWrapper":"actionWrapper___ERQ7k","addIcon":"addIcon___L9TE0","inputBorder":"inputBorder___Q5tRE","placeholder":"placeholder___p9sFY","blankWrapper":"blankWrapper___nC45e","blankInput":"blankInput___pEHsx","blankInputNumberWrapper":"blankInputNumberWrapper___uEHb0","addBtn":"addBtn___WR5ZI","blankIndex":"blankIndex___x9Pny","baseInputWrapper":"baseInputWrapper___eVsG7","collapseWrapper":"collapseWrapper___ZTysU","panelHeader":"panelHeader___QSN9g","open":"open___B6FU9","close":"close___QX19r","hide":"hide___mn25n"});
+/***/ }),
+/***/ 50:
+/*!*********************************************************************!*\
+ !*** ./src/pages/virtualSpaces/Lists/Discussion/index.less?modules ***!
+ \*********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__) {
-function indentCodeCompensation(raw, text) {
- var matchIndentToCode = raw.match(/^(\s+)(?:```)/);
- if (matchIndentToCode === null) {
- return text;
- }
- var indentToCode = matchIndentToCode[1];
- return text.split('\n').map(function (node) {
- var matchIndentInNode = node.match(/^\s+/);
- if (matchIndentInNode === null) {
- return node;
- }
- var _matchIndentInNode = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default()(matchIndentInNode, 1),
- indentInNode = _matchIndentInNode[0];
- if (indentInNode.length >= indentToCode.length) {
- return node.slice(indentToCode.length);
- }
- return node;
- }).join('\n');
-}
-//兼容之前的 ##标题式写法
-var toc = [];
-var ctx = [""];
-var renderer = new (marked__WEBPACK_IMPORTED_MODULE_1___default().Renderer)();
-var headingRegex = /^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/;
-function cleanToc() {
- toc.length = 0;
- ctx = [""];
-}
-var lines = {
- overflow: "hidden",
- WebkitBoxOrient: "vertical",
- display: "-webkit-box",
- WebkitLineClamp: 2
-};
-function buildToc(coll, k, level, ctx) {
- if (k >= coll.length || coll[k].level <= level) {
- return k;
- }
- var node = coll[k];
- ctx.push("- " + node.text + "");
- k++;
- var childCtx = [];
- k = buildToc(coll, k, node.level, childCtx);
- if (childCtx.length > 0) {
- ctx.push("
");
- childCtx.forEach(function (idm) {
- ctx.push(idm);
- });
- ctx.push("
");
- }
- ctx.push(" ");
- k = buildToc(coll, k, level, ctx);
- return k;
-}
-function getTocContent() {
- buildToc(toc, 0, 0, ctx);
- ctx.push("
");
- return ctx.join("");
-}
-var tokenizer = {
- heading: function heading(src) {
- var cap = headingRegex.exec(src);
- if (cap) {
- return {
- type: 'heading',
- raw: cap[0],
- depth: cap[1].length,
- text: cap[2]
- };
- }
- },
- fences: function fences(src) {
- var cap = this.rules.block.fences.exec(src);
- if (cap) {
- var raw = cap[0];
- var text = indentCodeCompensation(raw, cap[3] || '');
- var lang = cap[2] ? cap[2].trim() : cap[2];
- if (['latex', 'katex', 'math'].indexOf(lang) >= 0) {
- var id = next_id();
- var expression = text;
- text = id;
- math_expressions[id] = {
- type: 'block',
- expression: expression
- };
- }
- return {
- type: 'code',
- raw: raw,
- lang: lang,
- text: text
- };
- }
- }
-};
-var latexRegex = /(?:\${2})([^\n`]+?)(?:\${2})/gi;
-var katex_count = 0;
-var next_id = function next_id() {
- return "__special_katext_id_".concat(katex_count++, "__");
-};
-var math_expressions = {};
-function getMathExpressions() {
- return math_expressions;
-}
-function resetMathExpressions() {
- katex_count = 0;
- math_expressions = {};
-}
-function replace_math_with_ids(text) {
- text = text.replace(latexRegex, function (_match, expression) {
- var id = next_id();
- math_expressions[id] = {
- type: 'inline',
- expression: expression
- };
- return id;
- });
- return text;
-}
-var original_listitem = renderer.listitem;
-renderer.listitem = function (text) {
- return original_listitem(replace_math_with_ids(text));
-};
-var original_paragraph = renderer.paragraph;
-renderer.paragraph = function (text) {
- return original_paragraph(replace_math_with_ids(text));
-};
-var original_tablecell = renderer.tablecell;
-renderer.tablecell = function (content, flags) {
- return original_tablecell(replace_math_with_ids(content), flags);
-};
-renderer.code = function (code, infostring, escaped) {
- var lang = (infostring || '').match(/\S*/)[0];
- if (!lang) {
- return '
' + (escaped ? code : (0,marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__.escape)(code, true)) + '
';
- }
- if (['latex', 'katex', 'math'].indexOf(lang) >= 0) {
- return "".concat(code, "
");
- } else {
- return "").concat(escaped ? code : (0,marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__.escape)(code, true), "
\n");
- }
-};
-renderer.heading = function (text, level, raw) {
- var anchor = this.options.headerPrefix + raw.toLowerCase().replace(/[^\w\\u4e00-\\u9fa5]]+/g, '-');
- toc.push({
- anchor: anchor,
- level: level,
- text: text
- });
- return '' + text + ' ';
-};
-marked__WEBPACK_IMPORTED_MODULE_1___default().setOptions({
- silent: true,
- gfm: true,
- pedantic: false
-});
-marked__WEBPACK_IMPORTED_MODULE_1___default().use({
- tokenizer: tokenizer,
- renderer: renderer
-});
-/* harmony default export */ __webpack_exports__.ZP = ((marked__WEBPACK_IMPORTED_MODULE_1___default()));
+"use strict";
+// extracted by mini-css-extract-plugin
+/* harmony default export */ __webpack_exports__.Z = ({"flex_box_center":"flex_box_center___QbjXY","flex_space_between":"flex_space_between___CGgf9","flex_box_vertical_center":"flex_box_vertical_center___TZqsW","flex_box_center_end":"flex_box_center_end___G6yjl","flex_box_column":"flex_box_column___X3SPm","Onerow":"Onerow___te_Su","MultiLine":"MultiLine___FQNWA","DiscussionList":"DiscussionList___AO3Id","DiscussionListItem":"DiscussionListItem___dGzLI","DiscussionListItemImg":"DiscussionListItemImg___XeC4p","imgUpLoad":"imgUpLoad___gjBfb"});
+
+/***/ }),
+
+/***/ 93314:
+/*!********************************************!*\
+ !*** ./src/assets/images/icons/nodata.png ***!
+ \********************************************/
+/***/ (function(module) {
+
+"use strict";
+module.exports = "data:image/png;base64,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";
/***/ }),
@@ -5946,6 +6988,7 @@ marked__WEBPACK_IMPORTED_MODULE_1___default().use({
\**************************************************************************/
/***/ (function(module) {
+"use strict";
module.exports = "data:image/png;base64,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";
/***/ }),
@@ -5956,6 +6999,7 @@ module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKQAAAA8CAYAAADo
\*****************************************************************************/
/***/ (function(module) {
+"use strict";
module.exports = "data:image/png;base64,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";
/***/ }),
@@ -5966,6 +7010,7 @@ module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANQAAAA8CAYAAAAe
\************************************************************************/
/***/ (function(module) {
+"use strict";
module.exports = "data:image/png;base64,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";
/***/ })
diff --git a/34176.chunk.css b/43383.chunk.css
similarity index 97%
rename from 34176.chunk.css
rename to 43383.chunk.css
index d305ec2455..6eb15d54db 100644
--- a/34176.chunk.css
+++ b/43383.chunk.css
@@ -2759,6 +2759,99 @@ span.CodeMirror-selectedtext {
overflow: hidden;
}
+/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/components/MathsLatexKeybords/index.less?modules ***!
+ \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+.lists___xhHyq {
+ padding-bottom: 10px;
+}
+.lists___xhHyq code {
+ background: none !important;
+}
+.lists___xhHyq > div > div:first-child {
+ background: #f6f6f6;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+ padding: 10px 0;
+ font-size: 12px;
+ cursor: pointer;
+}
+.lists___xhHyq > div > div:first-child [class^="katex"] {
+ font-size: 22px;
+}
+.item___pWJAA {
+ position: relative;
+}
+.item___pWJAA:nth-last-child(-n + 3) .children___sDG61 {
+ left: auto;
+ left: initial;
+ right: 5px;
+}
+.item___pWJAA:hover {
+ z-index: 2147483648;
+}
+.item___pWJAA:hover .children___sDG61 {
+ display: block;
+}
+.children___sDG61 {
+ display: none;
+ position: absolute;
+ left: 6px;
+ top: 70px;
+ width: 440px;
+ max-height: 400px;
+ overflow: auto;
+ background: #fff;
+ border: 1px solid #ccc;
+ border-radius: 4px;
+ box-shadow: 0 0px 6px #ccc;
+ padding: 15px;
+}
+.children___sDG61 h1 {
+ font-size: 14px;
+ padding-top: 6px;
+}
+.children___sDG61 .diamond___FwgzD > div {
+ background: #f6f6f6;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+ cursor: pointer;
+ height: 50px;
+ font-size: 12px;
+ padding: 0 10px;
+ min-width: 80px;
+}
+.children___sDG61 .diamond___FwgzD > div [class^="katex"] {
+ font-size: 14px;
+}
+.button___WPN6r {
+ position: absolute;
+ right: 20px;
+ bottom: 20px;
+}
+.mathWrap___FmnMJ {
+ width: 800px;
+ height: 550px;
+}
+.mathFillWrap___PmY3H {
+ cursor: pointer;
+}
+.mathFillWrap___PmY3H ::part(menu-toggle) {
+ color: blue;
+ opacity: 1;
+ display: none;
+}
+.mathFillWrap___PmY3H math-field {
+ background: none;
+}
+.mathFillWrap___PmY3H * {
+ pointer-events: none;
+}
+
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/components/QuestionEditor/index.less?modules ***!
\********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
diff --git a/43428.async.js b/43428.async.js
index 5aa37df12a..be066c9af9 100644
--- a/43428.async.js
+++ b/43428.async.js
@@ -16,10 +16,10 @@ __webpack_require__.d(__webpack_exports__, {
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectSpread2.js
-var objectSpread2 = __webpack_require__(96257);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectSpread2.js
+var objectSpread2 = __webpack_require__(54131);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
// EXTERNAL MODULE: ./node_modules/_@rc-component_portal@1.1.2@@rc-component/portal/es/index.js + 6 modules
var es = __webpack_require__(43403);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useLayoutEffect.js
@@ -31,10 +31,10 @@ var _react_17_0_2_react = __webpack_require__(59301);
var DrawerContext = /*#__PURE__*/_react_17_0_2_react.createContext(null);
var RefContext = /*#__PURE__*/_react_17_0_2_react.createContext({});
/* harmony default export */ var context = (DrawerContext);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_rc-motion@2.9.0@rc-motion/es/index.js + 12 modules
var _rc_motion_2_9_0_rc_motion_es = __webpack_require__(44516);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
diff --git a/44425.async.js b/44425.async.js
index 4442a9af67..0eb83242c8 100644
--- a/44425.async.js
+++ b/44425.async.js
@@ -13745,8 +13745,8 @@ __webpack_require__.d(__webpack_exports__, {
jsPDF: function() { return /* binding */ E; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/typeof.js
-var esm_typeof = __webpack_require__(2442);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/typeof.js
+var esm_typeof = __webpack_require__(13255);
;// CONCATENATED MODULE: ./node_modules/_fflate@0.4.8@fflate/esm/browser.js
// DEFLATE is a complex format; to read this code, you should probably check the RFC first:
// https://tools.ietf.org/html/rfc1951
diff --git a/2604.async.js b/44748.async.js
similarity index 57%
rename from 2604.async.js
rename to 44748.async.js
index 2fa4a1e567..02c9b254ec 100644
--- a/2604.async.js
+++ b/44748.async.js
@@ -1,6 +1,6 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[2604,52720],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[44748,22804,52720],{
-/***/ 68742:
+/***/ 28593:
/*!***********************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ArrowLeftOutlined.js + 1 modules ***!
\***********************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ArrowLeftOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/ArrowLeftOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ArrowLeftOutlined.js
// This icon file is generated automatically.
var ArrowLeftOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M872 474H286.9l350.2-304c5.6-4.9 2.2-14-5.2-14h-88.5c-3.9 0-7.6 1.4-10.5 3.9L155 487.8a31.96 31.96 0 000 48.3L535.1 866c1.5 1.3 3.3 2 5.2 2h91.5c7.4 0 10.8-9.2 5.2-14L286.9 550H872c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8z" } }] }, "name": "arrow-left", "theme": "outlined" };
/* harmony default export */ var asn_ArrowLeftOutlined = (ArrowLeftOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 70740:
+/***/ 27280:
/*!********************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DeliveredProcedureOutlined.js + 1 modules ***!
\********************************************************************************************************************/
@@ -56,11 +56,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_DeliveredProcedureOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/DeliveredProcedureOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/DeliveredProcedureOutlined.js
// This icon file is generated automatically.
var DeliveredProcedureOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "defs", "attrs": {}, "children": [{ "tag": "style", "attrs": {} }] }, { "tag": "path", "attrs": { "d": "M632 698.3l141.9-112a8 8 0 000-12.6L632 461.7c-5.3-4.2-13-.4-13 6.3v76H295c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h324v76c0 6.7 7.8 10.4 13 6.3zm261.3-405L730.7 130.7c-7.5-7.5-16.7-13-26.7-16V112H144c-17.7 0-32 14.3-32 32v278c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V184h136v136c0 17.7 14.3 32 32 32h320c17.7 0 32-14.3 32-32V205.8l136 136V422c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-83.5c0-17-6.7-33.2-18.7-45.2zM640 288H384V184h256v104zm264 436h-56c-4.4 0-8 3.6-8 8v108H184V732c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v148c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V732c0-4.4-3.6-8-8-8z" } }] }, "name": "delivered-procedure", "theme": "outlined" };
/* harmony default export */ var asn_DeliveredProcedureOutlined = (DeliveredProcedureOutlined);
@@ -86,31 +86,31 @@ if (false) {}
/***/ }),
-/***/ 79625:
-/*!********************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FilterOutlined.js + 1 modules ***!
- \********************************************************************************************************/
+/***/ 15228:
+/*!*******************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/InboxOutlined.js + 1 modules ***!
+ \*******************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ icons_FilterOutlined; }
+ Z: function() { return /* binding */ icons_InboxOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/FilterOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/InboxOutlined.js
// This icon file is generated automatically.
-var FilterOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M880.1 154H143.9c-24.5 0-39.8 26.7-27.5 48L349 597.4V838c0 17.7 14.2 32 31.8 32h262.4c17.6 0 31.8-14.3 31.8-32V597.4L907.7 202c12.2-21.3-3.1-48-27.6-48zM603.4 798H420.6V642h182.9v156zm9.6-236.6l-9.5 16.6h-183l-9.5-16.6L212.7 226h598.6L613 561.4z" } }] }, "name": "filter", "theme": "outlined" };
-/* harmony default export */ var asn_FilterOutlined = (FilterOutlined);
+var InboxOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "0 0 1024 1024", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M885.2 446.3l-.2-.8-112.2-285.1c-5-16.1-19.9-27.2-36.8-27.2H281.2c-17 0-32.1 11.3-36.9 27.6L139.4 443l-.3.7-.2.8c-1.3 4.9-1.7 9.9-1 14.8-.1 1.6-.2 3.2-.2 4.8V830a60.9 60.9 0 0060.8 60.8h627.2c33.5 0 60.8-27.3 60.9-60.8V464.1c0-1.3 0-2.6-.1-3.7.4-4.9 0-9.6-1.3-14.1zm-295.8-43l-.3 15.7c-.8 44.9-31.8 75.1-77.1 75.1-22.1 0-41.1-7.1-54.8-20.6S436 441.2 435.6 419l-.3-15.7H229.5L309 210h399.2l81.7 193.3H589.4zm-375 76.8h157.3c24.3 57.1 76 90.8 140.4 90.8 33.7 0 65-9.4 90.3-27.2 22.2-15.6 39.5-37.4 50.7-63.6h156.5V814H214.4V480.1z" } }] }, "name": "inbox", "theme": "outlined" };
+/* harmony default export */ var asn_InboxOutlined = (InboxOutlined);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
var AntdIcon = __webpack_require__(91851);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FilterOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/InboxOutlined.js
// GENERATE BY ./scripts/generate.ts
// DON NOT EDIT IT MANUALLY
@@ -118,42 +118,42 @@ var AntdIcon = __webpack_require__(91851);
-var FilterOutlined_FilterOutlined = function FilterOutlined(props, ref) {
+var InboxOutlined_InboxOutlined = function InboxOutlined(props, ref) {
return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
ref: ref,
- icon: asn_FilterOutlined
+ icon: asn_InboxOutlined
}));
};
if (false) {}
-/* harmony default export */ var icons_FilterOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(FilterOutlined_FilterOutlined));
+/* harmony default export */ var icons_InboxOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(InboxOutlined_InboxOutlined));
/***/ }),
-/***/ 15470:
-/*!*********************************************************************************************************!*\
- !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SettingOutlined.js + 1 modules ***!
- \*********************************************************************************************************/
+/***/ 92970:
+/*!******************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LikeOutlined.js + 1 modules ***!
+ \******************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ icons_SettingOutlined; }
+ Z: function() { return /* binding */ icons_LikeOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/SettingOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/LikeOutlined.js
// This icon file is generated automatically.
-var SettingOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z" } }] }, "name": "setting", "theme": "outlined" };
-/* harmony default export */ var asn_SettingOutlined = (SettingOutlined);
+var LikeOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M885.9 533.7c16.8-22.2 26.1-49.4 26.1-77.7 0-44.9-25.1-87.4-65.5-111.1a67.67 67.67 0 00-34.3-9.3H572.4l6-122.9c1.4-29.7-9.1-57.9-29.5-79.4A106.62 106.62 0 00471 99.9c-52 0-98 35-111.8 85.1l-85.9 311H144c-17.7 0-32 14.3-32 32v364c0 17.7 14.3 32 32 32h601.3c9.2 0 18.2-1.8 26.5-5.4 47.6-20.3 78.3-66.8 78.3-118.4 0-12.6-1.8-25-5.4-37 16.8-22.2 26.1-49.4 26.1-77.7 0-12.6-1.8-25-5.4-37 16.8-22.2 26.1-49.4 26.1-77.7-.2-12.6-2-25.1-5.6-37.1zM184 852V568h81v284h-81zm636.4-353l-21.9 19 13.9 25.4a56.2 56.2 0 016.9 27.3c0 16.5-7.2 32.2-19.6 43l-21.9 19 13.9 25.4a56.2 56.2 0 016.9 27.3c0 16.5-7.2 32.2-19.6 43l-21.9 19 13.9 25.4a56.2 56.2 0 016.9 27.3c0 22.4-13.2 42.6-33.6 51.8H329V564.8l99.5-360.5a44.1 44.1 0 0142.2-32.3c7.6 0 15.1 2.2 21.1 6.7 9.9 7.4 15.2 18.6 14.6 30.5l-9.6 198.4h314.4C829 418.5 840 436.9 840 456c0 16.5-7.2 32.1-19.6 43z" } }] }, "name": "like", "theme": "outlined" };
+/* harmony default export */ var asn_LikeOutlined = (LikeOutlined);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
var AntdIcon = __webpack_require__(91851);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SettingOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LikeOutlined.js
// GENERATE BY ./scripts/generate.ts
// DON NOT EDIT IT MANUALLY
@@ -161,14 +161,57 @@ var AntdIcon = __webpack_require__(91851);
-var SettingOutlined_SettingOutlined = function SettingOutlined(props, ref) {
+var LikeOutlined_LikeOutlined = function LikeOutlined(props, ref) {
return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
ref: ref,
- icon: asn_SettingOutlined
+ icon: asn_LikeOutlined
}));
};
if (false) {}
-/* harmony default export */ var icons_SettingOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(SettingOutlined_SettingOutlined));
+/* harmony default export */ var icons_LikeOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(LikeOutlined_LikeOutlined));
+
+/***/ }),
+
+/***/ 12635:
+/*!************************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusCircleOutlined.js + 1 modules ***!
+ \************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_PlusCircleOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/PlusCircleOutlined.js
+// This icon file is generated automatically.
+var PlusCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M696 480H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z" } }, { "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }] }, "name": "plus-circle", "theme": "outlined" };
+/* harmony default export */ var asn_PlusCircleOutlined = (PlusCircleOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusCircleOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var PlusCircleOutlined_PlusCircleOutlined = function PlusCircleOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_PlusCircleOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_PlusCircleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(PlusCircleOutlined_PlusCircleOutlined));
/***/ }),
@@ -194,6 +237,116 @@ const getRenderPropValue = propValue => {
/***/ }),
+/***/ 88522:
+/*!*****************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/auto-complete/index.js ***!
+ \*****************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 92310);
+/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var rc_util_es_Children_toArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rc-util/es/Children/toArray */ 45659);
+/* harmony import */ var rc_util_es_omit__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! rc-util/es/omit */ 99468);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
+/* harmony import */ var _util_PurePanel__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../_util/PurePanel */ 53487);
+/* harmony import */ var _util_reactNode__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../_util/reactNode */ 92343);
+/* harmony import */ var _config_provider__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../config-provider */ 36355);
+/* harmony import */ var _select__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../select */ 57809);
+"use client";
+
+
+
+
+
+
+
+
+
+
+const {
+ Option
+} = _select__WEBPACK_IMPORTED_MODULE_3__["default"];
+function isSelectOptionOrSelectOptGroup(child) {
+ return child && child.type && (child.type.isSelectOption || child.type.isSelectOptGroup);
+}
+const AutoComplete = (props, ref) => {
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ popupClassName,
+ dropdownClassName,
+ children,
+ dataSource
+ } = props;
+ const childNodes = (0,rc_util_es_Children_toArray__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z)(children);
+ // ============================= Input =============================
+ let customizeInput;
+ if (childNodes.length === 1 && (0,_util_reactNode__WEBPACK_IMPORTED_MODULE_4__/* .isValidElement */ .l$)(childNodes[0]) && !isSelectOptionOrSelectOptGroup(childNodes[0])) {
+ [customizeInput] = childNodes;
+ }
+ const getInputElement = customizeInput ? () => customizeInput : undefined;
+ // ============================ Options ============================
+ let optionChildren;
+ // [Legacy] convert `children` or `dataSource` into option children
+ if (childNodes.length && isSelectOptionOrSelectOptGroup(childNodes[0])) {
+ optionChildren = children;
+ } else {
+ optionChildren = dataSource ? dataSource.map(item => {
+ if ((0,_util_reactNode__WEBPACK_IMPORTED_MODULE_4__/* .isValidElement */ .l$)(item)) {
+ return item;
+ }
+ switch (typeof item) {
+ case 'string':
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(Option, {
+ key: item,
+ value: item
+ }, item);
+ case 'object':
+ {
+ const {
+ value: optionValue
+ } = item;
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(Option, {
+ key: optionValue,
+ value: optionValue
+ }, item.text);
+ }
+ default:
+ false ? 0 : void 0;
+ return undefined;
+ }
+ }) : [];
+ }
+ if (false) {}
+ const {
+ getPrefixCls
+ } = react__WEBPACK_IMPORTED_MODULE_2__.useContext(_config_provider__WEBPACK_IMPORTED_MODULE_5__/* .ConfigContext */ .E_);
+ const prefixCls = getPrefixCls('select', customizePrefixCls);
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.createElement(_select__WEBPACK_IMPORTED_MODULE_3__["default"], Object.assign({
+ ref: ref,
+ suffixIcon: null
+ }, (0,rc_util_es_omit__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z)(props, ['dataSource', 'dropdownClassName']), {
+ prefixCls: prefixCls,
+ popupClassName: popupClassName || dropdownClassName,
+ className: classnames__WEBPACK_IMPORTED_MODULE_0___default()(`${prefixCls}-auto-complete`, className),
+ mode: _select__WEBPACK_IMPORTED_MODULE_3__["default"].SECRET_COMBOBOX_MODE_DO_NOT_USE
+ }, {
+ // Internal api
+ getInputElement
+ }), optionChildren);
+};
+const RefAutoComplete = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2__.forwardRef(AutoComplete);
+// We don't care debug panel
+/* istanbul ignore next */
+const PurePanel = (0,_util_PurePanel__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z)(RefAutoComplete);
+RefAutoComplete.Option = Option;
+RefAutoComplete._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;
+if (false) {}
+/* harmony default export */ __webpack_exports__.Z = (RefAutoComplete);
+
+/***/ }),
+
/***/ 66104:
/*!**************************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js + 6 modules ***!
@@ -221,7 +374,7 @@ var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
-var DownOutlined = __webpack_require__(42884);
+var DownOutlined = __webpack_require__(8415);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
var dropdown = __webpack_require__(91857);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
@@ -1278,6 +1431,913 @@ const genWireframeStyle = token => {
/***/ }),
+/***/ 91052:
+/*!********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/rate/index.js + 8 modules ***!
+ \********************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ rate; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/StarFilled.js
+// This icon file is generated automatically.
+var StarFilled = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M908.1 353.1l-253.9-36.9L540.7 86.1c-3.1-6.3-8.2-11.4-14.5-14.5-15.8-7.8-35-1.3-42.9 14.5L369.8 316.2l-253.9 36.9c-7 1-13.4 4.3-18.3 9.3a32.05 32.05 0 00.6 45.3l183.7 179.1-43.4 252.9a31.95 31.95 0 0046.4 33.7L512 754l227.1 119.4c6.2 3.3 13.4 4.4 20.3 3.2 17.4-3 29.1-19.5 26.1-36.9l-43.4-252.9 183.7-179.1c5-4.9 8.3-11.3 9.3-18.3 2.7-17.5-9.5-33.7-27-36.3z" } }] }, "name": "star", "theme": "filled" };
+/* harmony default export */ var asn_StarFilled = (StarFilled);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/StarFilled.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var StarFilled_StarFilled = function StarFilled(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_StarFilled
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_StarFilled = (/*#__PURE__*/_react_17_0_2_react.forwardRef(StarFilled_StarFilled));
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
+var useMergedState = __webpack_require__(84381);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
+var KeyCode = __webpack_require__(84821);
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/pickAttrs.js
+var pickAttrs = __webpack_require__(3286);
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Star.js
+
+
+
+function Star(props, ref) {
+ var disabled = props.disabled,
+ prefixCls = props.prefixCls,
+ character = props.character,
+ characterRender = props.characterRender,
+ index = props.index,
+ count = props.count,
+ value = props.value,
+ allowHalf = props.allowHalf,
+ focused = props.focused,
+ onHover = props.onHover,
+ onClick = props.onClick;
+ // =========================== Events ===========================
+ var onInternalHover = function onInternalHover(e) {
+ onHover(e, index);
+ };
+ var onInternalClick = function onInternalClick(e) {
+ onClick(e, index);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(e) {
+ if (e.keyCode === KeyCode/* default */.Z.ENTER) {
+ onClick(e, index);
+ }
+ };
+ // =========================== Render ===========================
+ // >>>>> ClassName
+ var starValue = index + 1;
+ var classNameList = new Set([prefixCls]);
+ // TODO: Current we just refactor from CC to FC. This logic seems can be optimized.
+ if (value === 0 && index === 0 && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ } else if (allowHalf && value + 0.5 >= starValue && value < starValue) {
+ classNameList.add("".concat(prefixCls, "-half"));
+ classNameList.add("".concat(prefixCls, "-active"));
+ if (focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ } else {
+ if (starValue <= value) {
+ classNameList.add("".concat(prefixCls, "-full"));
+ } else {
+ classNameList.add("".concat(prefixCls, "-zero"));
+ }
+ if (starValue === value && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ }
+ // >>>>> Node
+ var characterNode = typeof character === 'function' ? character(props) : character;
+ var start = /*#__PURE__*/_react_17_0_2_react.createElement("li", {
+ className: _classnames_2_5_1_classnames_default()(Array.from(classNameList)),
+ ref: ref
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ onClick: disabled ? null : onInternalClick,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ onMouseMove: disabled ? null : onInternalHover,
+ role: "radio",
+ "aria-checked": value > index ? 'true' : 'false',
+ "aria-posinset": index + 1,
+ "aria-setsize": count,
+ tabIndex: disabled ? -1 : 0
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-first")
+ }, characterNode), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-second")
+ }, characterNode)));
+ if (characterRender) {
+ start = characterRender(start, props);
+ }
+ return start;
+}
+/* harmony default export */ var es_Star = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Star));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/useRefs.js
+
+function useRefs() {
+ var nodeRef = _react_17_0_2_react.useRef({});
+ function getRef(index) {
+ return nodeRef.current[index];
+ }
+ function setRef(index) {
+ return function (node) {
+ nodeRef.current[index] = node;
+ };
+ }
+ return [getRef, setRef];
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/util.js
+function getScroll(w) {
+ var ret = w.pageXOffset;
+ var method = 'scrollLeft';
+ if (typeof ret !== 'number') {
+ var d = w.document;
+ // ie6,7,8 standard mode
+ ret = d.documentElement[method];
+ if (typeof ret !== 'number') {
+ // quirks mode
+ ret = d.body[method];
+ }
+ }
+ return ret;
+}
+function getClientPosition(elem) {
+ var x;
+ var y;
+ var doc = elem.ownerDocument;
+ var body = doc.body;
+ var docElem = doc && doc.documentElement;
+ var box = elem.getBoundingClientRect();
+ x = box.left;
+ y = box.top;
+ x -= docElem.clientLeft || body.clientLeft || 0;
+ y -= docElem.clientTop || body.clientTop || 0;
+ return {
+ left: x,
+ top: y
+ };
+}
+function getOffsetLeft(el) {
+ var pos = getClientPosition(el);
+ var doc = el.ownerDocument;
+ // Only IE use `parentWindow`
+ var w = doc.defaultView || doc.parentWindow;
+ pos.left += getScroll(w);
+ return pos.left;
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Rate.js
+
+
+
+
+var _excluded = ["prefixCls", "className", "defaultValue", "value", "count", "allowHalf", "allowClear", "character", "characterRender", "disabled", "direction", "tabIndex", "autoFocus", "onHoverChange", "onChange", "onFocus", "onBlur", "onKeyDown", "onMouseLeave"];
+
+
+
+
+
+
+
+
+function Rate(props, ref) {
+ var _classNames;
+ var _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-rate' : _props$prefixCls,
+ className = props.className,
+ defaultValue = props.defaultValue,
+ propValue = props.value,
+ _props$count = props.count,
+ count = _props$count === void 0 ? 5 : _props$count,
+ _props$allowHalf = props.allowHalf,
+ allowHalf = _props$allowHalf === void 0 ? false : _props$allowHalf,
+ _props$allowClear = props.allowClear,
+ allowClear = _props$allowClear === void 0 ? true : _props$allowClear,
+ _props$character = props.character,
+ character = _props$character === void 0 ? '★' : _props$character,
+ characterRender = props.characterRender,
+ disabled = props.disabled,
+ _props$direction = props.direction,
+ direction = _props$direction === void 0 ? 'ltr' : _props$direction,
+ _props$tabIndex = props.tabIndex,
+ tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,
+ autoFocus = props.autoFocus,
+ onHoverChange = props.onHoverChange,
+ onChange = props.onChange,
+ onFocus = props.onFocus,
+ onBlur = props.onBlur,
+ onKeyDown = props.onKeyDown,
+ onMouseLeave = props.onMouseLeave,
+ restProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var _useRefs = useRefs(),
+ _useRefs2 = (0,slicedToArray/* default */.Z)(_useRefs, 2),
+ getStarRef = _useRefs2[0],
+ setStarRef = _useRefs2[1];
+ var rateRef = _react_17_0_2_react.useRef(null);
+ // ============================ Ref =============================
+ var triggerFocus = function triggerFocus() {
+ if (!disabled) {
+ var _rateRef$current;
+ (_rateRef$current = rateRef.current) === null || _rateRef$current === void 0 ? void 0 : _rateRef$current.focus();
+ }
+ };
+ _react_17_0_2_react.useImperativeHandle(ref, function () {
+ return {
+ focus: triggerFocus,
+ blur: function blur() {
+ if (!disabled) {
+ var _rateRef$current2;
+ (_rateRef$current2 = rateRef.current) === null || _rateRef$current2 === void 0 ? void 0 : _rateRef$current2.blur();
+ }
+ }
+ };
+ });
+ // =========================== Value ============================
+ var _useMergedState = (0,useMergedState/* default */.Z)(defaultValue || 0, {
+ value: propValue
+ }),
+ _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
+ value = _useMergedState2[0],
+ setValue = _useMergedState2[1];
+ var _useMergedState3 = (0,useMergedState/* default */.Z)(null),
+ _useMergedState4 = (0,slicedToArray/* default */.Z)(_useMergedState3, 2),
+ cleanedValue = _useMergedState4[0],
+ setCleanedValue = _useMergedState4[1];
+ var getStarValue = function getStarValue(index, x) {
+ var reverse = direction === 'rtl';
+ var starValue = index + 1;
+ if (allowHalf) {
+ var starEle = getStarRef(index);
+ var leftDis = getOffsetLeft(starEle);
+ var width = starEle.clientWidth;
+ if (reverse && x - leftDis > width / 2) {
+ starValue -= 0.5;
+ } else if (!reverse && x - leftDis < width / 2) {
+ starValue -= 0.5;
+ }
+ }
+ return starValue;
+ };
+ // >>>>> Change
+ var changeValue = function changeValue(nextValue) {
+ setValue(nextValue);
+ onChange === null || onChange === void 0 ? void 0 : onChange(nextValue);
+ };
+ // =========================== Focus ============================
+ var _React$useState = _react_17_0_2_react.useState(false),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ focused = _React$useState2[0],
+ setFocused = _React$useState2[1];
+ var onInternalFocus = function onInternalFocus() {
+ setFocused(true);
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus();
+ };
+ var onInternalBlur = function onInternalBlur() {
+ setFocused(false);
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur();
+ };
+ // =========================== Hover ============================
+ var _React$useState3 = _react_17_0_2_react.useState(null),
+ _React$useState4 = (0,slicedToArray/* default */.Z)(_React$useState3, 2),
+ hoverValue = _React$useState4[0],
+ setHoverValue = _React$useState4[1];
+ var onHover = function onHover(event, index) {
+ var nextHoverValue = getStarValue(index, event.pageX);
+ if (nextHoverValue !== cleanedValue) {
+ setHoverValue(nextHoverValue);
+ setCleanedValue(null);
+ }
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(nextHoverValue);
+ };
+ var onMouseLeaveCallback = function onMouseLeaveCallback(event) {
+ if (!disabled) {
+ setHoverValue(null);
+ setCleanedValue(null);
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(undefined);
+ }
+ if (event) {
+ onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave(event);
+ }
+ };
+ // =========================== Click ============================
+ var onClick = function onClick(event, index) {
+ var newValue = getStarValue(index, event.pageX);
+ var isReset = false;
+ if (allowClear) {
+ isReset = newValue === value;
+ }
+ onMouseLeaveCallback();
+ changeValue(isReset ? 0 : newValue);
+ setCleanedValue(isReset ? newValue : null);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(event) {
+ var keyCode = event.keyCode;
+ var reverse = direction === 'rtl';
+ var nextValue = value;
+ if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue < count && !reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue > 0 && !reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue > 0 && reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue < count && reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ }
+ onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);
+ };
+ // =========================== Effect ===========================
+ _react_17_0_2_react.useEffect(function () {
+ if (autoFocus && !disabled) {
+ triggerFocus();
+ }
+ }, []);
+ // =========================== Render ===========================
+ // >>> Star
+ var starNodes = new Array(count).fill(0).map(function (item, index) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_Star, {
+ ref: setStarRef(index),
+ index: index,
+ count: count,
+ disabled: disabled,
+ prefixCls: "".concat(prefixCls, "-star"),
+ allowHalf: allowHalf,
+ value: hoverValue === null ? value : hoverValue,
+ onClick: onClick,
+ onHover: onHover,
+ key: item || index,
+ character: character,
+ characterRender: characterRender,
+ focused: focused
+ });
+ });
+ var classString = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-rtl"), direction === 'rtl'), _classNames));
+ // >>> Node
+ return /*#__PURE__*/_react_17_0_2_react.createElement("ul", (0,esm_extends/* default */.Z)({
+ className: classString,
+ onMouseLeave: onMouseLeaveCallback,
+ tabIndex: disabled ? -1 : tabIndex,
+ onFocus: disabled ? null : onInternalFocus,
+ onBlur: disabled ? null : onInternalBlur,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ ref: rateRef,
+ role: "radiogroup"
+ }, (0,pickAttrs/* default */.Z)(restProps, {
+ aria: true,
+ data: true,
+ attr: true
+ })), starNodes);
+}
+/* harmony default export */ var es_Rate = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Rate));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/index.js
+
+/* harmony default export */ var es = (es_Rate);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
+var tooltip = __webpack_require__(6848);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/style/index.js
+"use client";
+
+
+
+const genRateStarStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [`${componentCls}-star`]: {
+ position: 'relative',
+ display: 'inline-block',
+ color: 'inherit',
+ cursor: 'pointer',
+ '&:not(:last-child)': {
+ marginInlineEnd: token.marginXS
+ },
+ '> div': {
+ transition: `all ${token.motionDurationMid}, outline 0s`,
+ '&:hover': {
+ transform: token.starHoverScale
+ },
+ '&:focus': {
+ outline: 0
+ },
+ '&:focus-visible': {
+ outline: `${token.lineWidth}px dashed ${token.starColor}`,
+ transform: token.starHoverScale
+ }
+ },
+ '&-first, &-second': {
+ color: token.starBg,
+ transition: `all ${token.motionDurationMid}`,
+ userSelect: 'none',
+ [token.iconCls]: {
+ verticalAlign: 'middle'
+ }
+ },
+ '&-first': {
+ position: 'absolute',
+ top: 0,
+ insetInlineStart: 0,
+ width: '50%',
+ height: '100%',
+ overflow: 'hidden',
+ opacity: 0
+ },
+ [`&-half ${componentCls}-star-first, &-half ${componentCls}-star-second`]: {
+ opacity: 1
+ },
+ [`&-half ${componentCls}-star-first, &-full ${componentCls}-star-second`]: {
+ color: 'inherit'
+ }
+ }
+ };
+};
+const genRateRtlStyle = token => ({
+ [`&-rtl${token.componentCls}`]: {
+ direction: 'rtl'
+ }
+});
+const genRateStyle = token => {
+ const {
+ componentCls
+ } = token;
+ return {
+ [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ display: 'inline-block',
+ margin: 0,
+ padding: 0,
+ color: token.starColor,
+ fontSize: token.starSize,
+ lineHeight: 'unset',
+ listStyle: 'none',
+ outline: 'none',
+ // disable styles
+ [`&-disabled${componentCls} ${componentCls}-star`]: {
+ cursor: 'default',
+ '> div:hover': {
+ transform: 'scale(1)'
+ }
+ }
+ }), genRateStarStyle(token)), {
+ // text styles
+ [`+ ${componentCls}-text`]: {
+ display: 'inline-block',
+ marginInlineStart: token.marginXS,
+ fontSize: token.fontSize
+ }
+ }), genRateRtlStyle(token))
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var rate_style = ((0,genComponentStyleHook/* default */.Z)('Rate', token => {
+ const rateToken = (0,statistic/* merge */.TS)(token, {});
+ return [genRateStyle(rateToken)];
+}, token => ({
+ starColor: token.yellow6,
+ starSize: token.controlHeightLG * 0.5,
+ starHoverScale: 'scale(1.1)',
+ starBg: token.colorFillContent
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+const rate_Rate = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+ const {
+ prefixCls,
+ className,
+ rootClassName,
+ style,
+ tooltips,
+ character = /*#__PURE__*/_react_17_0_2_react.createElement(icons_StarFilled, null)
+ } = props,
+ rest = __rest(props, ["prefixCls", "className", "rootClassName", "style", "tooltips", "character"]);
+ const characterRender = (node, _ref) => {
+ let {
+ index
+ } = _ref;
+ if (!tooltips) {
+ return node;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(tooltip/* default */.Z, {
+ title: tooltips[index]
+ }, node);
+ };
+ const {
+ getPrefixCls,
+ direction,
+ rate
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const ratePrefixCls = getPrefixCls('rate', prefixCls);
+ // Style
+ const [wrapSSR, hashId] = rate_style(ratePrefixCls);
+ const mergedStyle = Object.assign(Object.assign({}, rate === null || rate === void 0 ? void 0 : rate.style), style);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({
+ ref: ref,
+ character: character,
+ characterRender: characterRender
+ }, rest, {
+ className: _classnames_2_5_1_classnames_default()(className, rootClassName, hashId, rate === null || rate === void 0 ? void 0 : rate.className),
+ style: mergedStyle,
+ prefixCls: ratePrefixCls,
+ direction: direction
+ })));
+});
+if (false) {}
+/* harmony default export */ var rate = (rate_Rate);
+
+/***/ }),
+
+/***/ 31797:
+/*!*************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/statistic/index.js + 5 modules ***!
+ \*************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ es_statistic; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/hooks/useForceUpdate.js
+var useForceUpdate = __webpack_require__(56762);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/skeleton/index.js + 12 modules
+var skeleton = __webpack_require__(60371);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Number.js
+"use client";
+
+
+const StatisticNumber = props => {
+ const {
+ value,
+ formatter,
+ precision,
+ decimalSeparator,
+ groupSeparator = '',
+ prefixCls
+ } = props;
+ let valueNode;
+ if (typeof formatter === 'function') {
+ // Customize formatter
+ valueNode = formatter(value);
+ } else {
+ // Internal formatter
+ const val = String(value);
+ const cells = val.match(/^(-?)(\d*)(\.(\d+))?$/);
+ // Process if illegal number
+ if (!cells || val === '-') {
+ valueNode = val;
+ } else {
+ const negative = cells[1];
+ let int = cells[2] || '0';
+ let decimal = cells[4] || '';
+ int = int.replace(/\B(?=(\d{3})+(?!\d))/g, groupSeparator);
+ if (typeof precision === 'number') {
+ decimal = decimal.padEnd(precision, '0').slice(0, precision > 0 ? precision : 0);
+ }
+ if (decimal) {
+ decimal = `${decimalSeparator}${decimal}`;
+ }
+ valueNode = [/*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "int",
+ className: `${prefixCls}-content-value-int`
+ }, negative, int), decimal && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "decimal",
+ className: `${prefixCls}-content-value-decimal`
+ }, decimal)];
+ }
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-value`
+ }, valueNode);
+};
+/* harmony default export */ var statistic_Number = (StatisticNumber);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/style/index.js
+"use client";
+
+
+
+const genStatisticStyle = token => {
+ const {
+ componentCls,
+ marginXXS,
+ padding,
+ colorTextDescription,
+ titleFontSize,
+ colorTextHeading,
+ contentFontSize,
+ fontFamily
+ } = token;
+ return {
+ [`${componentCls}`]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ [`${componentCls}-title`]: {
+ marginBottom: marginXXS,
+ color: colorTextDescription,
+ fontSize: titleFontSize
+ },
+ [`${componentCls}-skeleton`]: {
+ paddingTop: padding
+ },
+ [`${componentCls}-content`]: {
+ color: colorTextHeading,
+ fontSize: contentFontSize,
+ fontFamily,
+ [`${componentCls}-content-value`]: {
+ display: 'inline-block',
+ direction: 'ltr'
+ },
+ [`${componentCls}-content-prefix, ${componentCls}-content-suffix`]: {
+ display: 'inline-block'
+ },
+ [`${componentCls}-content-prefix`]: {
+ marginInlineEnd: marginXXS
+ },
+ [`${componentCls}-content-suffix`]: {
+ marginInlineStart: marginXXS
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+/* harmony default export */ var statistic_style = ((0,genComponentStyleHook/* default */.Z)('Statistic', token => {
+ const statisticToken = (0,statistic/* merge */.TS)(token, {});
+ return [genStatisticStyle(statisticToken)];
+}, token => {
+ const {
+ fontSizeHeading3,
+ fontSize
+ } = token;
+ return {
+ titleFontSize: fontSize,
+ contentFontSize: fontSizeHeading3
+ };
+}));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Statistic.js
+"use client";
+
+
+
+
+
+
+
+const Statistic = props => {
+ const {
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ style,
+ valueStyle,
+ value = 0,
+ title,
+ valueRender,
+ prefix,
+ suffix,
+ loading = false,
+ onMouseEnter,
+ onMouseLeave,
+ decimalSeparator = '.',
+ groupSeparator = ','
+ } = props;
+ const {
+ getPrefixCls,
+ direction,
+ statistic
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('statistic', customizePrefixCls);
+ const [wrapSSR, hashId] = statistic_style(prefixCls);
+ const valueNode = /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Number, Object.assign({
+ decimalSeparator: decimalSeparator,
+ groupSeparator: groupSeparator,
+ prefixCls: prefixCls
+ }, props, {
+ value: value
+ }));
+ const cls = _classnames_2_5_1_classnames_default()(prefixCls, {
+ [`${prefixCls}-rtl`]: direction === 'rtl'
+ }, statistic === null || statistic === void 0 ? void 0 : statistic.className, className, rootClassName, hashId);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: cls,
+ style: Object.assign(Object.assign({}, statistic === null || statistic === void 0 ? void 0 : statistic.style), style),
+ onMouseEnter: onMouseEnter,
+ onMouseLeave: onMouseLeave
+ }, title && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-title`
+ }, title), /*#__PURE__*/_react_17_0_2_react.createElement(skeleton/* default */.Z, {
+ paragraph: false,
+ loading: loading,
+ className: `${prefixCls}-skeleton`
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ style: valueStyle,
+ className: `${prefixCls}-content`
+ }, prefix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-prefix`
+ }, prefix), valueRender ? valueRender(valueNode) : valueNode, suffix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-suffix`
+ }, suffix)))));
+};
+if (false) {}
+/* harmony default export */ var statistic_Statistic = (Statistic);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/utils.js
+// Countdown
+const timeUnits = [['Y', 1000 * 60 * 60 * 24 * 365], ['M', 1000 * 60 * 60 * 24 * 30], ['D', 1000 * 60 * 60 * 24], ['H', 1000 * 60 * 60], ['m', 1000 * 60], ['s', 1000], ['S', 1] // million seconds
+];
+
+function formatTimeStr(duration, format) {
+ let leftDuration = duration;
+ const escapeRegex = /\[[^\]]*]/g;
+ const keepList = (format.match(escapeRegex) || []).map(str => str.slice(1, -1));
+ const templateText = format.replace(escapeRegex, '[]');
+ const replacedText = timeUnits.reduce((current, _ref) => {
+ let [name, unit] = _ref;
+ if (current.includes(name)) {
+ const value = Math.floor(leftDuration / unit);
+ leftDuration -= value * unit;
+ return current.replace(new RegExp(`${name}+`, 'g'), match => {
+ const len = match.length;
+ return value.toString().padStart(len, '0');
+ });
+ }
+ return current;
+ }, templateText);
+ let index = 0;
+ return replacedText.replace(escapeRegex, () => {
+ const match = keepList[index];
+ index += 1;
+ return match;
+ });
+}
+function formatCountdown(value, config) {
+ const {
+ format = ''
+ } = config;
+ const target = new Date(value).getTime();
+ const current = Date.now();
+ const diff = Math.max(target - current, 0);
+ return formatTimeStr(diff, format);
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Countdown.js
+"use client";
+
+
+
+
+
+
+const REFRESH_INTERVAL = 1000 / 30;
+function getTime(value) {
+ return new Date(value).getTime();
+}
+const Countdown = props => {
+ const {
+ value,
+ format = 'HH:mm:ss',
+ onChange,
+ onFinish
+ } = props;
+ const forceUpdate = (0,useForceUpdate/* default */.Z)();
+ const countdown = _react_17_0_2_react.useRef(null);
+ const stopTimer = () => {
+ onFinish === null || onFinish === void 0 ? void 0 : onFinish();
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ const syncTimer = () => {
+ const timestamp = getTime(value);
+ if (timestamp >= Date.now()) {
+ countdown.current = setInterval(() => {
+ forceUpdate();
+ onChange === null || onChange === void 0 ? void 0 : onChange(timestamp - Date.now());
+ if (timestamp < Date.now()) {
+ stopTimer();
+ }
+ }, REFRESH_INTERVAL);
+ }
+ };
+ _react_17_0_2_react.useEffect(() => {
+ syncTimer();
+ return () => {
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ }, [value]);
+ const formatter = (formatValue, config) => formatCountdown(formatValue, Object.assign(Object.assign({}, config), {
+ format
+ }));
+ const valueRender = node => (0,reactNode/* cloneElement */.Tm)(node, {
+ title: undefined
+ });
+ return /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Statistic, Object.assign({}, props, {
+ valueRender: valueRender,
+ formatter: formatter
+ }));
+};
+/* harmony default export */ var statistic_Countdown = (/*#__PURE__*/_react_17_0_2_react.memo(Countdown));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/index.js
+"use client";
+
+
+
+statistic_Statistic.Countdown = statistic_Countdown;
+/* harmony default export */ var es_statistic = (statistic_Statistic);
+
+/***/ }),
+
/***/ 51581:
/*!****************************************************************************************************!*\
!*** ./node_modules/_react-infinite-scroller@1.2.4@react-infinite-scroller/dist/InfiniteScroll.js ***!
diff --git a/12924.async.js b/45178.async.js
similarity index 74%
rename from 12924.async.js
rename to 45178.async.js
index bc939e7bd8..47b26dbfcc 100644
--- a/12924.async.js
+++ b/45178.async.js
@@ -1,7 +1,7 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[12924,43428,52720],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[45178,22804,43428,52720],{
-/***/ 70740:
+/***/ 27280:
/*!********************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DeliveredProcedureOutlined.js + 1 modules ***!
\********************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_DeliveredProcedureOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/DeliveredProcedureOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/DeliveredProcedureOutlined.js
// This icon file is generated automatically.
var DeliveredProcedureOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "defs", "attrs": {}, "children": [{ "tag": "style", "attrs": {} }] }, { "tag": "path", "attrs": { "d": "M632 698.3l141.9-112a8 8 0 000-12.6L632 461.7c-5.3-4.2-13-.4-13 6.3v76H295c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h324v76c0 6.7 7.8 10.4 13 6.3zm261.3-405L730.7 130.7c-7.5-7.5-16.7-13-26.7-16V112H144c-17.7 0-32 14.3-32 32v278c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V184h136v136c0 17.7 14.3 32 32 32h320c17.7 0 32-14.3 32-32V205.8l136 136V422c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-83.5c0-17-6.7-33.2-18.7-45.2zM640 288H384V184h256v104zm264 436h-56c-4.4 0-8 3.6-8 8v108H184V732c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v148c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V732c0-4.4-3.6-8-8-8z" } }] }, "name": "delivered-procedure", "theme": "outlined" };
/* harmony default export */ var asn_DeliveredProcedureOutlined = (DeliveredProcedureOutlined);
@@ -43,7 +43,7 @@ if (false) {}
/***/ }),
-/***/ 15470:
+/***/ 85891:
/*!*********************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/SettingOutlined.js + 1 modules ***!
\*********************************************************************************************************/
@@ -55,11 +55,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_SettingOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/SettingOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/SettingOutlined.js
// This icon file is generated automatically.
var SettingOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z" } }] }, "name": "setting", "theme": "outlined" };
/* harmony default export */ var asn_SettingOutlined = (SettingOutlined);
@@ -91,7 +91,7 @@ if (false) {}
\****************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ 69202);
+/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ 49397);
/* harmony import */ var rc_util_es_raf__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! rc-util/es/raf */ 90571);
@@ -131,14 +131,14 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ affix; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/classCallCheck.js
-var classCallCheck = __webpack_require__(32154);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/createClass.js
-var createClass = __webpack_require__(9762);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/inherits.js
-var inherits = __webpack_require__(31684);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/createSuper.js + 1 modules
-var createSuper = __webpack_require__(21928);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/classCallCheck.js
+var classCallCheck = __webpack_require__(61577);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/createClass.js
+var createClass = __webpack_require__(22946);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/inherits.js
+var inherits = __webpack_require__(3711);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/createSuper.js + 1 modules
+var createSuper = __webpack_require__(44961);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
@@ -496,7 +496,7 @@ var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
-var DownOutlined = __webpack_require__(42884);
+var DownOutlined = __webpack_require__(8415);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
var dropdown = __webpack_require__(91857);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
@@ -1222,10 +1222,10 @@ __webpack_require__.d(__webpack_exports__, {
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectSpread2.js
-var objectSpread2 = __webpack_require__(96257);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectSpread2.js
+var objectSpread2 = __webpack_require__(54131);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
// EXTERNAL MODULE: ./node_modules/_@rc-component_portal@1.1.2@@rc-component/portal/es/index.js + 6 modules
var es = __webpack_require__(43403);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useLayoutEffect.js
@@ -1237,10 +1237,10 @@ var _react_17_0_2_react = __webpack_require__(59301);
var DrawerContext = /*#__PURE__*/_react_17_0_2_react.createContext(null);
var RefContext = /*#__PURE__*/_react_17_0_2_react.createContext({});
/* harmony default export */ var context = (DrawerContext);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_rc-motion@2.9.0@rc-motion/es/index.js + 12 modules
var _rc_motion_2_9_0_rc_motion_es = __webpack_require__(44516);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
@@ -2228,501 +2228,908 @@ if (false) {}
/***/ }),
-/***/ 78673:
-/*!**********************************************************************!*\
- !*** ./node_modules/_antd@5.9.0@antd/es/switch/index.js + 2 modules ***!
- \**********************************************************************/
+/***/ 91052:
+/*!********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/rate/index.js + 8 modules ***!
+ \********************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ es_switch; }
+ Z: function() { return /* binding */ rate; }
});
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LoadingOutlined.js + 1 modules
-var LoadingOutlined = __webpack_require__(38521);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/StarFilled.js
+// This icon file is generated automatically.
+var StarFilled = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M908.1 353.1l-253.9-36.9L540.7 86.1c-3.1-6.3-8.2-11.4-14.5-14.5-15.8-7.8-35-1.3-42.9 14.5L369.8 316.2l-253.9 36.9c-7 1-13.4 4.3-18.3 9.3a32.05 32.05 0 00.6 45.3l183.7 179.1-43.4 252.9a31.95 31.95 0 0046.4 33.7L512 754l227.1 119.4c6.2 3.3 13.4 4.4 20.3 3.2 17.4-3 29.1-19.5 26.1-36.9l-43.4-252.9 183.7-179.1c5-4.9 8.3-11.3 9.3-18.3 2.7-17.5-9.5-33.7-27-36.3z" } }] }, "name": "star", "theme": "filled" };
+/* harmony default export */ var asn_StarFilled = (StarFilled);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/StarFilled.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var StarFilled_StarFilled = function StarFilled(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_StarFilled
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_StarFilled = (/*#__PURE__*/_react_17_0_2_react.forwardRef(StarFilled_StarFilled));
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
+var slicedToArray = __webpack_require__(35372);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
var useMergedState = __webpack_require__(84381);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
var KeyCode = __webpack_require__(84821);
-;// CONCATENATED MODULE: ./node_modules/_rc-switch@4.1.0@rc-switch/es/index.js
+// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/pickAttrs.js
+var pickAttrs = __webpack_require__(3286);
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Star.js
+
+
+
+function Star(props, ref) {
+ var disabled = props.disabled,
+ prefixCls = props.prefixCls,
+ character = props.character,
+ characterRender = props.characterRender,
+ index = props.index,
+ count = props.count,
+ value = props.value,
+ allowHalf = props.allowHalf,
+ focused = props.focused,
+ onHover = props.onHover,
+ onClick = props.onClick;
+ // =========================== Events ===========================
+ var onInternalHover = function onInternalHover(e) {
+ onHover(e, index);
+ };
+ var onInternalClick = function onInternalClick(e) {
+ onClick(e, index);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(e) {
+ if (e.keyCode === KeyCode/* default */.Z.ENTER) {
+ onClick(e, index);
+ }
+ };
+ // =========================== Render ===========================
+ // >>>>> ClassName
+ var starValue = index + 1;
+ var classNameList = new Set([prefixCls]);
+ // TODO: Current we just refactor from CC to FC. This logic seems can be optimized.
+ if (value === 0 && index === 0 && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ } else if (allowHalf && value + 0.5 >= starValue && value < starValue) {
+ classNameList.add("".concat(prefixCls, "-half"));
+ classNameList.add("".concat(prefixCls, "-active"));
+ if (focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ } else {
+ if (starValue <= value) {
+ classNameList.add("".concat(prefixCls, "-full"));
+ } else {
+ classNameList.add("".concat(prefixCls, "-zero"));
+ }
+ if (starValue === value && focused) {
+ classNameList.add("".concat(prefixCls, "-focused"));
+ }
+ }
+ // >>>>> Node
+ var characterNode = typeof character === 'function' ? character(props) : character;
+ var start = /*#__PURE__*/_react_17_0_2_react.createElement("li", {
+ className: _classnames_2_5_1_classnames_default()(Array.from(classNameList)),
+ ref: ref
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ onClick: disabled ? null : onInternalClick,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ onMouseMove: disabled ? null : onInternalHover,
+ role: "radio",
+ "aria-checked": value > index ? 'true' : 'false',
+ "aria-posinset": index + 1,
+ "aria-setsize": count,
+ tabIndex: disabled ? -1 : 0
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-first")
+ }, characterNode), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: "".concat(prefixCls, "-second")
+ }, characterNode)));
+ if (characterRender) {
+ start = characterRender(start, props);
+ }
+ return start;
+}
+/* harmony default export */ var es_Star = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Star));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/useRefs.js
+
+function useRefs() {
+ var nodeRef = _react_17_0_2_react.useRef({});
+ function getRef(index) {
+ return nodeRef.current[index];
+ }
+ function setRef(index) {
+ return function (node) {
+ nodeRef.current[index] = node;
+ };
+ }
+ return [getRef, setRef];
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/util.js
+function getScroll(w) {
+ var ret = w.pageXOffset;
+ var method = 'scrollLeft';
+ if (typeof ret !== 'number') {
+ var d = w.document;
+ // ie6,7,8 standard mode
+ ret = d.documentElement[method];
+ if (typeof ret !== 'number') {
+ // quirks mode
+ ret = d.body[method];
+ }
+ }
+ return ret;
+}
+function getClientPosition(elem) {
+ var x;
+ var y;
+ var doc = elem.ownerDocument;
+ var body = doc.body;
+ var docElem = doc && doc.documentElement;
+ var box = elem.getBoundingClientRect();
+ x = box.left;
+ y = box.top;
+ x -= docElem.clientLeft || body.clientLeft || 0;
+ y -= docElem.clientTop || body.clientTop || 0;
+ return {
+ left: x,
+ top: y
+ };
+}
+function getOffsetLeft(el) {
+ var pos = getClientPosition(el);
+ var doc = el.ownerDocument;
+ // Only IE use `parentWindow`
+ var w = doc.defaultView || doc.parentWindow;
+ pos.left += getScroll(w);
+ return pos.left;
+}
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/Rate.js
+
+var _excluded = ["prefixCls", "className", "defaultValue", "value", "count", "allowHalf", "allowClear", "character", "characterRender", "disabled", "direction", "tabIndex", "autoFocus", "onHoverChange", "onChange", "onFocus", "onBlur", "onKeyDown", "onMouseLeave"];
-var _excluded = ["prefixCls", "className", "checked", "defaultChecked", "disabled", "loadingIcon", "checkedChildren", "unCheckedChildren", "onClick", "onChange", "onKeyDown"];
-var Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (_ref, ref) {
+
+
+
+function Rate(props, ref) {
var _classNames;
- var _ref$prefixCls = _ref.prefixCls,
- prefixCls = _ref$prefixCls === void 0 ? 'rc-switch' : _ref$prefixCls,
- className = _ref.className,
- checked = _ref.checked,
- defaultChecked = _ref.defaultChecked,
- disabled = _ref.disabled,
- loadingIcon = _ref.loadingIcon,
- checkedChildren = _ref.checkedChildren,
- unCheckedChildren = _ref.unCheckedChildren,
- onClick = _ref.onClick,
- onChange = _ref.onChange,
- onKeyDown = _ref.onKeyDown,
- restProps = (0,objectWithoutProperties/* default */.Z)(_ref, _excluded);
- var _useMergedState = (0,useMergedState/* default */.Z)(false, {
- value: checked,
- defaultValue: defaultChecked
+ var _props$prefixCls = props.prefixCls,
+ prefixCls = _props$prefixCls === void 0 ? 'rc-rate' : _props$prefixCls,
+ className = props.className,
+ defaultValue = props.defaultValue,
+ propValue = props.value,
+ _props$count = props.count,
+ count = _props$count === void 0 ? 5 : _props$count,
+ _props$allowHalf = props.allowHalf,
+ allowHalf = _props$allowHalf === void 0 ? false : _props$allowHalf,
+ _props$allowClear = props.allowClear,
+ allowClear = _props$allowClear === void 0 ? true : _props$allowClear,
+ _props$character = props.character,
+ character = _props$character === void 0 ? '★' : _props$character,
+ characterRender = props.characterRender,
+ disabled = props.disabled,
+ _props$direction = props.direction,
+ direction = _props$direction === void 0 ? 'ltr' : _props$direction,
+ _props$tabIndex = props.tabIndex,
+ tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,
+ autoFocus = props.autoFocus,
+ onHoverChange = props.onHoverChange,
+ onChange = props.onChange,
+ onFocus = props.onFocus,
+ onBlur = props.onBlur,
+ onKeyDown = props.onKeyDown,
+ onMouseLeave = props.onMouseLeave,
+ restProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
+ var _useRefs = useRefs(),
+ _useRefs2 = (0,slicedToArray/* default */.Z)(_useRefs, 2),
+ getStarRef = _useRefs2[0],
+ setStarRef = _useRefs2[1];
+ var rateRef = _react_17_0_2_react.useRef(null);
+ // ============================ Ref =============================
+ var triggerFocus = function triggerFocus() {
+ if (!disabled) {
+ var _rateRef$current;
+ (_rateRef$current = rateRef.current) === null || _rateRef$current === void 0 ? void 0 : _rateRef$current.focus();
+ }
+ };
+ _react_17_0_2_react.useImperativeHandle(ref, function () {
+ return {
+ focus: triggerFocus,
+ blur: function blur() {
+ if (!disabled) {
+ var _rateRef$current2;
+ (_rateRef$current2 = rateRef.current) === null || _rateRef$current2 === void 0 ? void 0 : _rateRef$current2.blur();
+ }
+ }
+ };
+ });
+ // =========================== Value ============================
+ var _useMergedState = (0,useMergedState/* default */.Z)(defaultValue || 0, {
+ value: propValue
}),
_useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
- innerChecked = _useMergedState2[0],
- setInnerChecked = _useMergedState2[1];
- function triggerChange(newChecked, event) {
- var mergedChecked = innerChecked;
+ value = _useMergedState2[0],
+ setValue = _useMergedState2[1];
+ var _useMergedState3 = (0,useMergedState/* default */.Z)(null),
+ _useMergedState4 = (0,slicedToArray/* default */.Z)(_useMergedState3, 2),
+ cleanedValue = _useMergedState4[0],
+ setCleanedValue = _useMergedState4[1];
+ var getStarValue = function getStarValue(index, x) {
+ var reverse = direction === 'rtl';
+ var starValue = index + 1;
+ if (allowHalf) {
+ var starEle = getStarRef(index);
+ var leftDis = getOffsetLeft(starEle);
+ var width = starEle.clientWidth;
+ if (reverse && x - leftDis > width / 2) {
+ starValue -= 0.5;
+ } else if (!reverse && x - leftDis < width / 2) {
+ starValue -= 0.5;
+ }
+ }
+ return starValue;
+ };
+ // >>>>> Change
+ var changeValue = function changeValue(nextValue) {
+ setValue(nextValue);
+ onChange === null || onChange === void 0 ? void 0 : onChange(nextValue);
+ };
+ // =========================== Focus ============================
+ var _React$useState = _react_17_0_2_react.useState(false),
+ _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2),
+ focused = _React$useState2[0],
+ setFocused = _React$useState2[1];
+ var onInternalFocus = function onInternalFocus() {
+ setFocused(true);
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus();
+ };
+ var onInternalBlur = function onInternalBlur() {
+ setFocused(false);
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur();
+ };
+ // =========================== Hover ============================
+ var _React$useState3 = _react_17_0_2_react.useState(null),
+ _React$useState4 = (0,slicedToArray/* default */.Z)(_React$useState3, 2),
+ hoverValue = _React$useState4[0],
+ setHoverValue = _React$useState4[1];
+ var onHover = function onHover(event, index) {
+ var nextHoverValue = getStarValue(index, event.pageX);
+ if (nextHoverValue !== cleanedValue) {
+ setHoverValue(nextHoverValue);
+ setCleanedValue(null);
+ }
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(nextHoverValue);
+ };
+ var onMouseLeaveCallback = function onMouseLeaveCallback(event) {
if (!disabled) {
- mergedChecked = newChecked;
- setInnerChecked(mergedChecked);
- onChange === null || onChange === void 0 ? void 0 : onChange(mergedChecked, event);
+ setHoverValue(null);
+ setCleanedValue(null);
+ onHoverChange === null || onHoverChange === void 0 ? void 0 : onHoverChange(undefined);
}
- return mergedChecked;
- }
- function onInternalKeyDown(e) {
- if (e.which === KeyCode/* default */.Z.LEFT) {
- triggerChange(false, e);
- } else if (e.which === KeyCode/* default */.Z.RIGHT) {
- triggerChange(true, e);
+ if (event) {
+ onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave(event);
}
- onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);
- }
- function onInternalClick(e) {
- var ret = triggerChange(!innerChecked, e);
- // [Legacy] trigger onClick with value
- onClick === null || onClick === void 0 ? void 0 : onClick(ret, e);
- }
- var switchClassName = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-checked"), innerChecked), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), _classNames));
- return /*#__PURE__*/_react_17_0_2_react.createElement("button", (0,esm_extends/* default */.Z)({}, restProps, {
- type: "button",
- role: "switch",
- "aria-checked": innerChecked,
- disabled: disabled,
- className: switchClassName,
- ref: ref,
- onKeyDown: onInternalKeyDown,
- onClick: onInternalClick
- }), loadingIcon, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner")
- }, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner-checked")
- }, checkedChildren), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner-unchecked")
- }, unCheckedChildren)));
-});
-Switch.displayName = 'Switch';
-/* harmony default export */ var es = (Switch);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/wave/index.js + 4 modules
-var wave = __webpack_require__(14088);
+ };
+ // =========================== Click ============================
+ var onClick = function onClick(event, index) {
+ var newValue = getStarValue(index, event.pageX);
+ var isReset = false;
+ if (allowClear) {
+ isReset = newValue === value;
+ }
+ onMouseLeaveCallback();
+ changeValue(isReset ? 0 : newValue);
+ setCleanedValue(isReset ? newValue : null);
+ };
+ var onInternalKeyDown = function onInternalKeyDown(event) {
+ var keyCode = event.keyCode;
+ var reverse = direction === 'rtl';
+ var nextValue = value;
+ if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue < count && !reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue > 0 && !reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.RIGHT && nextValue > 0 && reverse) {
+ if (allowHalf) {
+ nextValue -= 0.5;
+ } else {
+ nextValue -= 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ } else if (keyCode === KeyCode/* default */.Z.LEFT && nextValue < count && reverse) {
+ if (allowHalf) {
+ nextValue += 0.5;
+ } else {
+ nextValue += 1;
+ }
+ changeValue(nextValue);
+ event.preventDefault();
+ }
+ onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);
+ };
+ // =========================== Effect ===========================
+ _react_17_0_2_react.useEffect(function () {
+ if (autoFocus && !disabled) {
+ triggerFocus();
+ }
+ }, []);
+ // =========================== Render ===========================
+ // >>> Star
+ var starNodes = new Array(count).fill(0).map(function (item, index) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(es_Star, {
+ ref: setStarRef(index),
+ index: index,
+ count: count,
+ disabled: disabled,
+ prefixCls: "".concat(prefixCls, "-star"),
+ allowHalf: allowHalf,
+ value: hoverValue === null ? value : hoverValue,
+ onClick: onClick,
+ onHover: onHover,
+ key: item || index,
+ character: character,
+ characterRender: characterRender,
+ focused: focused
+ });
+ });
+ var classString = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-rtl"), direction === 'rtl'), _classNames));
+ // >>> Node
+ return /*#__PURE__*/_react_17_0_2_react.createElement("ul", (0,esm_extends/* default */.Z)({
+ className: classString,
+ onMouseLeave: onMouseLeaveCallback,
+ tabIndex: disabled ? -1 : tabIndex,
+ onFocus: disabled ? null : onInternalFocus,
+ onBlur: disabled ? null : onInternalBlur,
+ onKeyDown: disabled ? null : onInternalKeyDown,
+ ref: rateRef,
+ role: "radiogroup"
+ }, (0,pickAttrs/* default */.Z)(restProps, {
+ aria: true,
+ data: true,
+ attr: true
+ })), starNodes);
+}
+/* harmony default export */ var es_Rate = (/*#__PURE__*/_react_17_0_2_react.forwardRef(Rate));
+;// CONCATENATED MODULE: ./node_modules/_rc-rate@2.12.0@rc-rate/es/index.js
+
+/* harmony default export */ var es = (es_Rate);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/DisabledContext.js
-var DisabledContext = __webpack_require__(1684);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/hooks/useSize.js
-var useSize = __webpack_require__(19716);
-// EXTERNAL MODULE: ./node_modules/_@ctrl_tinycolor@3.6.1@@ctrl/tinycolor/dist/module/index.js
-var dist_module = __webpack_require__(64993);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
+var tooltip = __webpack_require__(6848);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
var style = __webpack_require__(17313);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
var genComponentStyleHook = __webpack_require__(83116);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
var statistic = __webpack_require__(37613);
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/style/index.js
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/style/index.js
+"use client";
-const genSwitchSmallStyle = token => {
+const genRateStarStyle = token => {
const {
- componentCls,
- trackHeightSM,
- trackPadding,
- trackMinWidthSM,
- innerMinMarginSM,
- innerMaxMarginSM,
- handleSizeSM
+ componentCls
} = token;
- const switchInnerCls = `${componentCls}-inner`;
return {
- [componentCls]: {
- [`&${componentCls}-small`]: {
- minWidth: trackMinWidthSM,
- height: trackHeightSM,
- lineHeight: `${trackHeightSM}px`,
- [`${componentCls}-inner`]: {
- paddingInlineStart: innerMaxMarginSM,
- paddingInlineEnd: innerMinMarginSM,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`,
- marginInlineEnd: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`
- },
- [`${switchInnerCls}-unchecked`]: {
- marginTop: -trackHeightSM,
- marginInlineStart: 0,
- marginInlineEnd: 0
- }
- },
- [`${componentCls}-handle`]: {
- width: handleSizeSM,
- height: handleSizeSM
- },
- [`${componentCls}-loading-icon`]: {
- top: (handleSizeSM - token.switchLoadingIconSize) / 2,
- fontSize: token.switchLoadingIconSize
+ [`${componentCls}-star`]: {
+ position: 'relative',
+ display: 'inline-block',
+ color: 'inherit',
+ cursor: 'pointer',
+ '&:not(:last-child)': {
+ marginInlineEnd: token.marginXS
+ },
+ '> div': {
+ transition: `all ${token.motionDurationMid}, outline 0s`,
+ '&:hover': {
+ transform: token.starHoverScale
},
- [`&${componentCls}-checked`]: {
- [`${componentCls}-inner`]: {
- paddingInlineStart: innerMinMarginSM,
- paddingInlineEnd: innerMaxMarginSM,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: 0,
- marginInlineEnd: 0
- },
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`,
- marginInlineEnd: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`
- }
- },
- [`${componentCls}-handle`]: {
- insetInlineStart: `calc(100% - ${handleSizeSM + trackPadding}px)`
- }
+ '&:focus': {
+ outline: 0
},
- [`&:not(${componentCls}-disabled):active`]: {
- [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: token.marginXXS / 2,
- marginInlineEnd: -token.marginXXS / 2
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: -token.marginXXS / 2,
- marginInlineEnd: token.marginXXS / 2
- }
- }
+ '&:focus-visible': {
+ outline: `${token.lineWidth}px dashed ${token.starColor}`,
+ transform: token.starHoverScale
+ }
+ },
+ '&-first, &-second': {
+ color: token.starBg,
+ transition: `all ${token.motionDurationMid}`,
+ userSelect: 'none',
+ [token.iconCls]: {
+ verticalAlign: 'middle'
}
+ },
+ '&-first': {
+ position: 'absolute',
+ top: 0,
+ insetInlineStart: 0,
+ width: '50%',
+ height: '100%',
+ overflow: 'hidden',
+ opacity: 0
+ },
+ [`&-half ${componentCls}-star-first, &-half ${componentCls}-star-second`]: {
+ opacity: 1
+ },
+ [`&-half ${componentCls}-star-first, &-full ${componentCls}-star-second`]: {
+ color: 'inherit'
}
}
};
};
-const genSwitchLoadingStyle = token => {
+const genRateRtlStyle = token => ({
+ [`&-rtl${token.componentCls}`]: {
+ direction: 'rtl'
+ }
+});
+const genRateStyle = token => {
const {
- componentCls,
- handleSize
+ componentCls
} = token;
return {
- [componentCls]: {
- [`${componentCls}-loading-icon${token.iconCls}`]: {
- position: 'relative',
- top: (handleSize - token.fontSize) / 2,
- color: token.switchLoadingIconColor,
- verticalAlign: 'top'
- },
- [`&${componentCls}-checked ${componentCls}-loading-icon`]: {
- color: token.switchColor
+ [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ display: 'inline-block',
+ margin: 0,
+ padding: 0,
+ color: token.starColor,
+ fontSize: token.starSize,
+ lineHeight: 'unset',
+ listStyle: 'none',
+ outline: 'none',
+ // disable styles
+ [`&-disabled${componentCls} ${componentCls}-star`]: {
+ cursor: 'default',
+ '> div:hover': {
+ transform: 'scale(1)'
+ }
}
- }
+ }), genRateStarStyle(token)), {
+ // text styles
+ [`+ ${componentCls}-text`]: {
+ display: 'inline-block',
+ marginInlineStart: token.marginXS,
+ fontSize: token.fontSize
+ }
+ }), genRateRtlStyle(token))
};
};
-const genSwitchHandleStyle = token => {
+// ============================== Export ==============================
+/* harmony default export */ var rate_style = ((0,genComponentStyleHook/* default */.Z)('Rate', token => {
+ const rateToken = (0,statistic/* merge */.TS)(token, {});
+ return [genRateStyle(rateToken)];
+}, token => ({
+ starColor: token.yellow6,
+ starSize: token.controlHeightLG * 0.5,
+ starHoverScale: 'scale(1.1)',
+ starBg: token.colorFillContent
+})));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/index.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+ }
+ return t;
+};
+
+
+
+
+
+
+
+const rate_Rate = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
const {
- componentCls,
- motion,
- trackPadding,
- handleBg,
- handleShadow,
- handleSize
- } = token;
- const switchHandleCls = `${componentCls}-handle`;
- return {
- [componentCls]: {
- [switchHandleCls]: {
- position: 'absolute',
- top: trackPadding,
- insetInlineStart: trackPadding,
- width: handleSize,
- height: handleSize,
- transition: `all ${token.switchDuration} ease-in-out`,
- '&::before': {
- position: 'absolute',
- top: 0,
- insetInlineEnd: 0,
- bottom: 0,
- insetInlineStart: 0,
- backgroundColor: handleBg,
- borderRadius: handleSize / 2,
- boxShadow: handleShadow,
- transition: `all ${token.switchDuration} ease-in-out`,
- content: '""'
- }
- },
- [`&${componentCls}-checked ${switchHandleCls}`]: {
- insetInlineStart: `calc(100% - ${handleSize + trackPadding}px)`
- },
- [`&:not(${componentCls}-disabled):active`]: motion ? {
- [`${switchHandleCls}::before`]: {
- insetInlineEnd: token.switchHandleActiveInset,
- insetInlineStart: 0
- },
- [`&${componentCls}-checked ${switchHandleCls}::before`]: {
- insetInlineEnd: 0,
- insetInlineStart: token.switchHandleActiveInset
- }
- } : /* istanbul ignore next */
- {}
+ prefixCls,
+ className,
+ rootClassName,
+ style,
+ tooltips,
+ character = /*#__PURE__*/_react_17_0_2_react.createElement(icons_StarFilled, null)
+ } = props,
+ rest = __rest(props, ["prefixCls", "className", "rootClassName", "style", "tooltips", "character"]);
+ const characterRender = (node, _ref) => {
+ let {
+ index
+ } = _ref;
+ if (!tooltips) {
+ return node;
}
+ return /*#__PURE__*/_react_17_0_2_react.createElement(tooltip/* default */.Z, {
+ title: tooltips[index]
+ }, node);
};
-};
-const genSwitchInnerStyle = token => {
const {
- componentCls,
- trackHeight,
- trackPadding,
- innerMinMargin,
- innerMaxMargin,
- handleSize
- } = token;
- const switchInnerCls = `${componentCls}-inner`;
- return {
- [componentCls]: {
- [switchInnerCls]: {
- display: 'block',
- overflow: 'hidden',
- borderRadius: 100,
- height: '100%',
- paddingInlineStart: innerMaxMargin,
- paddingInlineEnd: innerMinMargin,
- transition: `padding-inline-start ${token.switchDuration} ease-in-out, padding-inline-end ${token.switchDuration} ease-in-out`,
- [`${switchInnerCls}-checked, ${switchInnerCls}-unchecked`]: {
- display: 'block',
- color: token.colorTextLightSolid,
- fontSize: token.fontSizeSM,
- transition: `margin-inline-start ${token.switchDuration} ease-in-out, margin-inline-end ${token.switchDuration} ease-in-out`,
- pointerEvents: 'none'
- },
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`,
- marginInlineEnd: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`
- },
- [`${switchInnerCls}-unchecked`]: {
- marginTop: -trackHeight,
- marginInlineStart: 0,
- marginInlineEnd: 0
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- paddingInlineStart: innerMinMargin,
- paddingInlineEnd: innerMaxMargin,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: 0,
- marginInlineEnd: 0
- },
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`,
- marginInlineEnd: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`
- }
- },
- [`&:not(${componentCls}-disabled):active`]: {
- [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: trackPadding * 2,
- marginInlineEnd: -trackPadding * 2
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: -trackPadding * 2,
- marginInlineEnd: trackPadding * 2
- }
- }
+ getPrefixCls,
+ direction,
+ rate
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const ratePrefixCls = getPrefixCls('rate', prefixCls);
+ // Style
+ const [wrapSSR, hashId] = rate_style(ratePrefixCls);
+ const mergedStyle = Object.assign(Object.assign({}, rate === null || rate === void 0 ? void 0 : rate.style), style);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({
+ ref: ref,
+ character: character,
+ characterRender: characterRender
+ }, rest, {
+ className: _classnames_2_5_1_classnames_default()(className, rootClassName, hashId, rate === null || rate === void 0 ? void 0 : rate.className),
+ style: mergedStyle,
+ prefixCls: ratePrefixCls,
+ direction: direction
+ })));
+});
+if (false) {}
+/* harmony default export */ var rate = (rate_Rate);
+
+/***/ }),
+
+/***/ 31797:
+/*!*************************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/statistic/index.js + 5 modules ***!
+ \*************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ es_statistic; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/hooks/useForceUpdate.js
+var useForceUpdate = __webpack_require__(56762);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
+var reactNode = __webpack_require__(92343);
+// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
+var _classnames_2_5_1_classnames = __webpack_require__(92310);
+var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
+var context = __webpack_require__(36355);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/skeleton/index.js + 12 modules
+var skeleton = __webpack_require__(60371);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Number.js
+"use client";
+
+
+const StatisticNumber = props => {
+ const {
+ value,
+ formatter,
+ precision,
+ decimalSeparator,
+ groupSeparator = '',
+ prefixCls
+ } = props;
+ let valueNode;
+ if (typeof formatter === 'function') {
+ // Customize formatter
+ valueNode = formatter(value);
+ } else {
+ // Internal formatter
+ const val = String(value);
+ const cells = val.match(/^(-?)(\d*)(\.(\d+))?$/);
+ // Process if illegal number
+ if (!cells || val === '-') {
+ valueNode = val;
+ } else {
+ const negative = cells[1];
+ let int = cells[2] || '0';
+ let decimal = cells[4] || '';
+ int = int.replace(/\B(?=(\d{3})+(?!\d))/g, groupSeparator);
+ if (typeof precision === 'number') {
+ decimal = decimal.padEnd(precision, '0').slice(0, precision > 0 ? precision : 0);
}
+ if (decimal) {
+ decimal = `${decimalSeparator}${decimal}`;
+ }
+ valueNode = [/*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "int",
+ className: `${prefixCls}-content-value-int`
+ }, negative, int), decimal && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ key: "decimal",
+ className: `${prefixCls}-content-value-decimal`
+ }, decimal)];
}
- };
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-value`
+ }, valueNode);
};
-const genSwitchStyle = token => {
+/* harmony default export */ var statistic_Number = (StatisticNumber);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/style/index.js
+"use client";
+
+
+
+const genStatisticStyle = token => {
const {
componentCls,
- trackHeight,
- trackMinWidth
+ marginXXS,
+ padding,
+ colorTextDescription,
+ titleFontSize,
+ colorTextHeading,
+ contentFontSize,
+ fontFamily
} = token;
return {
- [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
- position: 'relative',
- display: 'inline-block',
- boxSizing: 'border-box',
- minWidth: trackMinWidth,
- height: trackHeight,
- lineHeight: `${trackHeight}px`,
- verticalAlign: 'middle',
- background: token.colorTextQuaternary,
- border: '0',
- borderRadius: 100,
- cursor: 'pointer',
- transition: `all ${token.motionDurationMid}`,
- userSelect: 'none',
- [`&:hover:not(${componentCls}-disabled)`]: {
- background: token.colorTextTertiary
- }
- }), (0,style/* genFocusStyle */.Qy)(token)), {
- [`&${componentCls}-checked`]: {
- background: token.switchColor,
- [`&:hover:not(${componentCls}-disabled)`]: {
- background: token.colorPrimaryHover
- }
+ [`${componentCls}`]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ [`${componentCls}-title`]: {
+ marginBottom: marginXXS,
+ color: colorTextDescription,
+ fontSize: titleFontSize
},
- [`&${componentCls}-loading, &${componentCls}-disabled`]: {
- cursor: 'not-allowed',
- opacity: token.switchDisabledOpacity,
- '*': {
- boxShadow: 'none',
- cursor: 'not-allowed'
- }
+ [`${componentCls}-skeleton`]: {
+ paddingTop: padding
},
- // rtl style
- [`&${componentCls}-rtl`]: {
- direction: 'rtl'
+ [`${componentCls}-content`]: {
+ color: colorTextHeading,
+ fontSize: contentFontSize,
+ fontFamily,
+ [`${componentCls}-content-value`]: {
+ display: 'inline-block',
+ direction: 'ltr'
+ },
+ [`${componentCls}-content-prefix, ${componentCls}-content-suffix`]: {
+ display: 'inline-block'
+ },
+ [`${componentCls}-content-prefix`]: {
+ marginInlineEnd: marginXXS
+ },
+ [`${componentCls}-content-suffix`]: {
+ marginInlineStart: marginXXS
+ }
}
})
};
};
// ============================== Export ==============================
-/* harmony default export */ var switch_style = ((0,genComponentStyleHook/* default */.Z)('Switch', token => {
- const switchToken = (0,statistic/* merge */.TS)(token, {
- switchDuration: token.motionDurationMid,
- switchColor: token.colorPrimary,
- switchDisabledOpacity: token.opacityLoading,
- switchLoadingIconSize: token.fontSizeIcon * 0.75,
- switchLoadingIconColor: `rgba(0, 0, 0, ${token.opacityLoading})`,
- switchHandleActiveInset: '-30%'
- });
- return [genSwitchStyle(switchToken),
- // inner style
- genSwitchInnerStyle(switchToken),
- // handle style
- genSwitchHandleStyle(switchToken),
- // loading style
- genSwitchLoadingStyle(switchToken),
- // small style
- genSwitchSmallStyle(switchToken)];
+/* harmony default export */ var statistic_style = ((0,genComponentStyleHook/* default */.Z)('Statistic', token => {
+ const statisticToken = (0,statistic/* merge */.TS)(token, {});
+ return [genStatisticStyle(statisticToken)];
}, token => {
const {
- fontSize,
- lineHeight,
- controlHeight,
- colorWhite
+ fontSizeHeading3,
+ fontSize
} = token;
- const height = fontSize * lineHeight;
- const heightSM = controlHeight / 2;
- const padding = 2; // Fixed value
- const handleSize = height - padding * 2;
- const handleSizeSM = heightSM - padding * 2;
return {
- trackHeight: height,
- trackHeightSM: heightSM,
- trackMinWidth: handleSize * 2 + padding * 4,
- trackMinWidthSM: handleSizeSM * 2 + padding * 2,
- trackPadding: padding,
- handleBg: colorWhite,
- handleSize,
- handleSizeSM,
- handleShadow: `0 2px 4px 0 ${new dist_module/* TinyColor */.C('#00230b').setAlpha(0.2).toRgbString()}`,
- innerMinMargin: handleSize / 2,
- innerMaxMargin: handleSize + padding + padding * 2,
- innerMinMarginSM: handleSizeSM / 2,
- innerMaxMarginSM: handleSizeSM + padding + padding * 2
+ titleFontSize: fontSize,
+ contentFontSize: fontSizeHeading3
};
}));
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/index.js
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Statistic.js
"use client";
-var __rest = undefined && undefined.__rest || function (s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
- }
- return t;
-};
-
-
-
-
-const switch_Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
+const Statistic = props => {
const {
- prefixCls: customizePrefixCls,
- size: customizeSize,
- disabled: customDisabled,
- loading,
- className,
- rootClassName,
- style
- } = props,
- restProps = __rest(props, ["prefixCls", "size", "disabled", "loading", "className", "rootClassName", "style"]);
- false ? 0 : void 0;
+ prefixCls: customizePrefixCls,
+ className,
+ rootClassName,
+ style,
+ valueStyle,
+ value = 0,
+ title,
+ valueRender,
+ prefix,
+ suffix,
+ loading = false,
+ onMouseEnter,
+ onMouseLeave,
+ decimalSeparator = '.',
+ groupSeparator = ','
+ } = props;
const {
getPrefixCls,
direction,
- switch: SWITCH
+ statistic
} = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
- // ===================== Disabled =====================
- const disabled = _react_17_0_2_react.useContext(DisabledContext/* default */.Z);
- const mergedDisabled = (customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled) || loading;
- const prefixCls = getPrefixCls('switch', customizePrefixCls);
- const loadingIcon = /*#__PURE__*/_react_17_0_2_react.createElement("div", {
- className: `${prefixCls}-handle`
- }, loading && /*#__PURE__*/_react_17_0_2_react.createElement(LoadingOutlined/* default */.Z, {
- className: `${prefixCls}-loading-icon`
+ const prefixCls = getPrefixCls('statistic', customizePrefixCls);
+ const [wrapSSR, hashId] = statistic_style(prefixCls);
+ const valueNode = /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Number, Object.assign({
+ decimalSeparator: decimalSeparator,
+ groupSeparator: groupSeparator,
+ prefixCls: prefixCls
+ }, props, {
+ value: value
}));
- // Style
- const [wrapSSR, hashId] = switch_style(prefixCls);
- const mergedSize = (0,useSize/* default */.Z)(customizeSize);
- const classes = _classnames_2_5_1_classnames_default()(SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.className, {
- [`${prefixCls}-small`]: mergedSize === 'small',
- [`${prefixCls}-loading`]: loading,
+ const cls = _classnames_2_5_1_classnames_default()(prefixCls, {
[`${prefixCls}-rtl`]: direction === 'rtl'
- }, className, rootClassName, hashId);
- const mergedStyle = Object.assign(Object.assign({}, SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.style), style);
- return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(wave/* default */.Z, {
- component: "Switch"
- }, /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({}, restProps, {
- prefixCls: prefixCls,
- className: classes,
- style: mergedStyle,
- disabled: mergedDisabled,
- ref: ref,
- loadingIcon: loadingIcon
- }))));
-});
-switch_Switch.__ANT_SWITCH = true;
+ }, statistic === null || statistic === void 0 ? void 0 : statistic.className, className, rootClassName, hashId);
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: cls,
+ style: Object.assign(Object.assign({}, statistic === null || statistic === void 0 ? void 0 : statistic.style), style),
+ onMouseEnter: onMouseEnter,
+ onMouseLeave: onMouseLeave
+ }, title && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-title`
+ }, title), /*#__PURE__*/_react_17_0_2_react.createElement(skeleton/* default */.Z, {
+ paragraph: false,
+ loading: loading,
+ className: `${prefixCls}-skeleton`
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ style: valueStyle,
+ className: `${prefixCls}-content`
+ }, prefix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-prefix`
+ }, prefix), valueRender ? valueRender(valueNode) : valueNode, suffix && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-content-suffix`
+ }, suffix)))));
+};
if (false) {}
-/* harmony default export */ var es_switch = (switch_Switch);
+/* harmony default export */ var statistic_Statistic = (Statistic);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/utils.js
+// Countdown
+const timeUnits = [['Y', 1000 * 60 * 60 * 24 * 365], ['M', 1000 * 60 * 60 * 24 * 30], ['D', 1000 * 60 * 60 * 24], ['H', 1000 * 60 * 60], ['m', 1000 * 60], ['s', 1000], ['S', 1] // million seconds
+];
+
+function formatTimeStr(duration, format) {
+ let leftDuration = duration;
+ const escapeRegex = /\[[^\]]*]/g;
+ const keepList = (format.match(escapeRegex) || []).map(str => str.slice(1, -1));
+ const templateText = format.replace(escapeRegex, '[]');
+ const replacedText = timeUnits.reduce((current, _ref) => {
+ let [name, unit] = _ref;
+ if (current.includes(name)) {
+ const value = Math.floor(leftDuration / unit);
+ leftDuration -= value * unit;
+ return current.replace(new RegExp(`${name}+`, 'g'), match => {
+ const len = match.length;
+ return value.toString().padStart(len, '0');
+ });
+ }
+ return current;
+ }, templateText);
+ let index = 0;
+ return replacedText.replace(escapeRegex, () => {
+ const match = keepList[index];
+ index += 1;
+ return match;
+ });
+}
+function formatCountdown(value, config) {
+ const {
+ format = ''
+ } = config;
+ const target = new Date(value).getTime();
+ const current = Date.now();
+ const diff = Math.max(target - current, 0);
+ return formatTimeStr(diff, format);
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/Countdown.js
+"use client";
+
+
+
+
+
+
+const REFRESH_INTERVAL = 1000 / 30;
+function getTime(value) {
+ return new Date(value).getTime();
+}
+const Countdown = props => {
+ const {
+ value,
+ format = 'HH:mm:ss',
+ onChange,
+ onFinish
+ } = props;
+ const forceUpdate = (0,useForceUpdate/* default */.Z)();
+ const countdown = _react_17_0_2_react.useRef(null);
+ const stopTimer = () => {
+ onFinish === null || onFinish === void 0 ? void 0 : onFinish();
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ const syncTimer = () => {
+ const timestamp = getTime(value);
+ if (timestamp >= Date.now()) {
+ countdown.current = setInterval(() => {
+ forceUpdate();
+ onChange === null || onChange === void 0 ? void 0 : onChange(timestamp - Date.now());
+ if (timestamp < Date.now()) {
+ stopTimer();
+ }
+ }, REFRESH_INTERVAL);
+ }
+ };
+ _react_17_0_2_react.useEffect(() => {
+ syncTimer();
+ return () => {
+ if (countdown.current) {
+ clearInterval(countdown.current);
+ countdown.current = null;
+ }
+ };
+ }, [value]);
+ const formatter = (formatValue, config) => formatCountdown(formatValue, Object.assign(Object.assign({}, config), {
+ format
+ }));
+ const valueRender = node => (0,reactNode/* cloneElement */.Tm)(node, {
+ title: undefined
+ });
+ return /*#__PURE__*/_react_17_0_2_react.createElement(statistic_Statistic, Object.assign({}, props, {
+ valueRender: valueRender,
+ formatter: formatter
+ }));
+};
+/* harmony default export */ var statistic_Countdown = (/*#__PURE__*/_react_17_0_2_react.memo(Countdown));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/index.js
+"use client";
+
+
+
+statistic_Statistic.Countdown = statistic_Countdown;
+/* harmony default export */ var es_statistic = (statistic_Statistic);
/***/ })
diff --git a/45413.async.js b/45413.async.js
index f466812da3..b9b95c99b4 100644
--- a/45413.async.js
+++ b/45413.async.js
@@ -14,20 +14,20 @@ __webpack_require__.d(__webpack_exports__, {
});
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CheckOutlined.js + 1 modules
-var CheckOutlined = __webpack_require__(75769);
+var CheckOutlined = __webpack_require__(150);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/CloseOutlined.js + 1 modules
-var CloseOutlined = __webpack_require__(99174);
+var CloseOutlined = __webpack_require__(30449);
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectSpread2.js
-var objectSpread2 = __webpack_require__(96257);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectSpread2.js
+var objectSpread2 = __webpack_require__(54131);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/defineProperty.js
+var defineProperty = __webpack_require__(16514);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(4606);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
diff --git a/45874.async.js b/45874.async.js
index f1b238cd9a..e4339674c0 100644
--- a/45874.async.js
+++ b/45874.async.js
@@ -27,7 +27,7 @@ var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
-var DownOutlined = __webpack_require__(42884);
+var DownOutlined = __webpack_require__(8415);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
var dropdown = __webpack_require__(91857);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
@@ -745,7 +745,7 @@ if (false) {}
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony import */ var _layout__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./layout */ 84966);
-/* harmony import */ var _Sider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Sider */ 37534);
+/* harmony import */ var _Sider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Sider */ 32234);
"use client";
diff --git a/78974.async.js b/47058.async.js
similarity index 99%
rename from 78974.async.js
rename to 47058.async.js
index e28bbf4664..4d728700f4 100644
--- a/78974.async.js
+++ b/47058.async.js
@@ -1,6 +1,6 @@
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[78974],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[47058],{
-/***/ 80045:
+/***/ 51954:
/*!*******************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules ***!
\*******************************************************************************************************************/
@@ -13,11 +13,11 @@ __webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ExclamationCircleOutlined; }
});
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js
// This icon file is generated automatically.
var ExclamationCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }, { "tag": "path", "attrs": { "d": "M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z" } }] }, "name": "exclamation-circle", "theme": "outlined" };
/* harmony default export */ var asn_ExclamationCircleOutlined = (ExclamationCircleOutlined);
@@ -406,7 +406,7 @@ if (false) {}
"use strict";
/* harmony import */ var _layout__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./layout */ 84966);
-/* harmony import */ var _Sider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Sider */ 37534);
+/* harmony import */ var _Sider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Sider */ 32234);
"use client";
diff --git a/41515.async.js b/47246.async.js
similarity index 65%
rename from 41515.async.js
rename to 47246.async.js
index befbdf9f8e..78fabbfe88 100644
--- a/41515.async.js
+++ b/47246.async.js
@@ -1,5 +1,47 @@
"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[41515,90647,68998,37408,52720,99200,81326,47821,87648,82010,61999],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[47246,49127,76678],{
+
+/***/ 12635:
+/*!************************************************************************************************************!*\
+ !*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusCircleOutlined.js + 1 modules ***!
+ \************************************************************************************************************/
+/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ icons_PlusCircleOutlined; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/extends.js
+var esm_extends = __webpack_require__(79384);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.2@@ant-design/icons-svg/es/asn/PlusCircleOutlined.js
+// This icon file is generated automatically.
+var PlusCircleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M696 480H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z" } }, { "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z" } }] }, "name": "plus-circle", "theme": "outlined" };
+/* harmony default export */ var asn_PlusCircleOutlined = (PlusCircleOutlined);
+
+// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
+var AntdIcon = __webpack_require__(91851);
+;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusCircleOutlined.js
+
+// GENERATE BY ./scripts/generate.ts
+// DON NOT EDIT IT MANUALLY
+
+
+
+
+var PlusCircleOutlined_PlusCircleOutlined = function PlusCircleOutlined(props, ref) {
+ return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
+ ref: ref,
+ icon: asn_PlusCircleOutlined
+ }));
+};
+if (false) {}
+/* harmony default export */ var icons_PlusCircleOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(PlusCircleOutlined_PlusCircleOutlined));
+
+/***/ }),
/***/ 56762:
/*!************************************************************************!*\
@@ -19,308 +61,608 @@ function useForceUpdate() {
/***/ }),
-/***/ 66104:
-/*!**************************************************************************!*\
- !*** ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js + 6 modules ***!
- \**************************************************************************/
+/***/ 49127:
+/*!*********************************************************************!*\
+ !*** ./node_modules/_antd@5.9.0@antd/es/badge/index.js + 5 modules ***!
+ \*********************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ breadcrumb; }
+ Z: function() { return /* binding */ badge; }
});
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/Children/toArray.js
-var toArray = __webpack_require__(45659);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/pickAttrs.js
-var pickAttrs = __webpack_require__(3286);
+// EXTERNAL MODULE: ./node_modules/_rc-motion@2.9.0@rc-motion/es/index.js + 12 modules
+var es = __webpack_require__(44516);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/colors.js
+var colors = __webpack_require__(36785);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
-var DownOutlined = __webpack_require__(42884);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
-var dropdown = __webpack_require__(91857);
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
-"use client";
-
+// EXTERNAL MODULE: ./node_modules/_@ant-design_cssinjs@1.18.4@@ant-design/cssinjs/es/index.js + 35 modules
+var cssinjs_es = __webpack_require__(78600);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
+var style = __webpack_require__(17313);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genPresetColor.js
+var genPresetColor = __webpack_require__(45157);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
+var statistic = __webpack_require__(37613);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
+var genComponentStyleHook = __webpack_require__(83116);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/badge/style/index.js
-const BreadcrumbSeparator = _ref => {
- let {
- children
- } = _ref;
- const {
- getPrefixCls
- } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
- const prefixCls = getPrefixCls('breadcrumb');
- return /*#__PURE__*/_react_17_0_2_react.createElement("li", {
- className: `${prefixCls}-separator`,
- "aria-hidden": "true"
- }, children === '' ? children : children || '/');
-};
-BreadcrumbSeparator.__ANT_BREADCRUMB_SEPARATOR = true;
-/* harmony default export */ var breadcrumb_BreadcrumbSeparator = (BreadcrumbSeparator);
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/useItemRender.js
-"use client";
-var __rest = undefined && undefined.__rest || function (s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+const antStatusProcessing = new cssinjs_es.Keyframes('antStatusProcessing', {
+ '0%': {
+ transform: 'scale(0.8)',
+ opacity: 0.5
+ },
+ '100%': {
+ transform: 'scale(2.4)',
+ opacity: 0
}
- return t;
-};
-
-
-
-function getBreadcrumbName(route, params) {
- if (route.title === undefined || route.title === null) {
- return null;
+});
+const antZoomBadgeIn = new cssinjs_es.Keyframes('antZoomBadgeIn', {
+ '0%': {
+ transform: 'scale(0) translate(50%, -50%)',
+ opacity: 0
+ },
+ '100%': {
+ transform: 'scale(1) translate(50%, -50%)'
}
- const paramsKeys = Object.keys(params).join('|');
- return typeof route.title === 'object' ? route.title : String(route.title).replace(new RegExp(`:(${paramsKeys})`, 'g'), (replacement, key) => params[key] || replacement);
-}
-function renderItem(prefixCls, item, children, href) {
- if (children === null || children === undefined) {
- return null;
+});
+const antZoomBadgeOut = new cssinjs_es.Keyframes('antZoomBadgeOut', {
+ '0%': {
+ transform: 'scale(1) translate(50%, -50%)'
+ },
+ '100%': {
+ transform: 'scale(0) translate(50%, -50%)',
+ opacity: 0
}
- const {
- className,
- onClick
- } = item,
- restItem = __rest(item, ["className", "onClick"]);
- const passedProps = Object.assign(Object.assign({}, (0,pickAttrs/* default */.Z)(restItem, {
- data: true,
- aria: true
- })), {
- onClick
- });
- if (href !== undefined) {
- return /*#__PURE__*/_react_17_0_2_react.createElement("a", Object.assign({}, passedProps, {
- className: _classnames_2_5_1_classnames_default()(`${prefixCls}-link`, className),
- href: href
- }), children);
+});
+const antNoWrapperZoomBadgeIn = new cssinjs_es.Keyframes('antNoWrapperZoomBadgeIn', {
+ '0%': {
+ transform: 'scale(0)',
+ opacity: 0
+ },
+ '100%': {
+ transform: 'scale(1)'
}
- return /*#__PURE__*/_react_17_0_2_react.createElement("span", Object.assign({}, passedProps, {
- className: _classnames_2_5_1_classnames_default()(`${prefixCls}-link`, className)
- }), children);
-}
-function useItemRender(prefixCls, itemRender) {
- const mergedItemRender = (item, params, routes, path, href) => {
- if (itemRender) {
- return itemRender(item, params, routes, path);
- }
- const name = getBreadcrumbName(item, params);
- return renderItem(prefixCls, item, name, href);
- };
- return mergedItemRender;
-}
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbItem.js
-"use client";
-
-var BreadcrumbItem_rest = undefined && undefined.__rest || function (s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
+});
+const antNoWrapperZoomBadgeOut = new cssinjs_es.Keyframes('antNoWrapperZoomBadgeOut', {
+ '0%': {
+ transform: 'scale(1)'
+ },
+ '100%': {
+ transform: 'scale(0)',
+ opacity: 0
}
- return t;
-};
-
-
-
-
-
-
-
-const InternalBreadcrumbItem = props => {
- const {
- prefixCls,
- separator = '/',
- children,
- menu,
- overlay,
- dropdownProps,
- href
- } = props;
- // Warning for deprecated usage
- if (false) {}
- /** If overlay is have Wrap a Dropdown */
- const renderBreadcrumbNode = breadcrumbItem => {
- if (menu || overlay) {
- const mergeDropDownProps = Object.assign({}, dropdownProps);
- if (menu) {
- const _a = menu || {},
- {
- items
- } = _a,
- menuProps = BreadcrumbItem_rest(_a, ["items"]);
- mergeDropDownProps.menu = Object.assign(Object.assign({}, menuProps), {
- items: items === null || items === void 0 ? void 0 : items.map((_a, index) => {
- var {
- key,
- title,
- label,
- path
- } = _a,
- itemProps = BreadcrumbItem_rest(_a, ["key", "title", "label", "path"]);
- let mergedLabel = label !== null && label !== void 0 ? label : title;
- if (path) {
- mergedLabel = /*#__PURE__*/_react_17_0_2_react.createElement("a", {
- href: `${href}${path}`
- }, mergedLabel);
- }
- return Object.assign(Object.assign({}, itemProps), {
- key: key !== null && key !== void 0 ? key : index,
- label: mergedLabel
- });
- })
- });
- } else if (overlay) {
- mergeDropDownProps.overlay = overlay;
- }
- return /*#__PURE__*/_react_17_0_2_react.createElement(dropdown/* default */.Z, Object.assign({
- placement: "bottom"
- }, mergeDropDownProps), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: `${prefixCls}-overlay-link`
- }, breadcrumbItem, /*#__PURE__*/_react_17_0_2_react.createElement(DownOutlined/* default */.Z, null)));
- }
- return breadcrumbItem;
- };
- // wrap to dropDown
- const link = renderBreadcrumbNode(children);
- if (link !== undefined && link !== null) {
- return /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, /*#__PURE__*/_react_17_0_2_react.createElement("li", null, link), separator && /*#__PURE__*/_react_17_0_2_react.createElement(breadcrumb_BreadcrumbSeparator, null, separator));
+});
+const antBadgeLoadingCircle = new cssinjs_es.Keyframes('antBadgeLoadingCircle', {
+ '0%': {
+ transformOrigin: '50%'
+ },
+ '100%': {
+ transform: 'translate(50%, -50%) rotate(360deg)',
+ transformOrigin: '50%'
}
- return null;
-};
-const BreadcrumbItem = props => {
- const {
- prefixCls: customizePrefixCls,
- children,
- href
- } = props,
- restProps = BreadcrumbItem_rest(props, ["prefixCls", "children", "href"]);
- const {
- getPrefixCls
- } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
- const prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
- return /*#__PURE__*/_react_17_0_2_react.createElement(InternalBreadcrumbItem, Object.assign({}, restProps, {
- prefixCls: prefixCls
- }), renderItem(prefixCls, restProps, children, href));
-};
-BreadcrumbItem.__ANT_BREADCRUMB_ITEM = true;
-/* harmony default export */ var breadcrumb_BreadcrumbItem = (BreadcrumbItem);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
-var style = __webpack_require__(17313);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
-var genComponentStyleHook = __webpack_require__(83116);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
-var statistic = __webpack_require__(37613);
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/style/index.js
-
-
-const genBreadcrumbStyle = token => {
+});
+const genSharedBadgeStyle = token => {
const {
componentCls,
- iconCls
+ iconCls,
+ antCls,
+ badgeShadowSize,
+ motionDurationSlow,
+ textFontSize,
+ textFontSizeSM,
+ statusSize,
+ dotSize,
+ textFontWeight,
+ indicatorHeight,
+ indicatorHeightSM,
+ marginXS
} = token;
+ const numberPrefixCls = `${antCls}-scroll-number`;
+ const colorPreset = (0,genPresetColor/* default */.Z)(token, (colorKey, _ref) => {
+ let {
+ darkColor
+ } = _ref;
+ return {
+ [`&${componentCls} ${componentCls}-color-${colorKey}`]: {
+ background: darkColor,
+ [`&:not(${componentCls}-count)`]: {
+ color: darkColor
+ }
+ }
+ };
+ });
return {
- [componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
- color: token.itemColor,
- fontSize: token.fontSize,
- [iconCls]: {
- fontSize: token.iconFontSize
+ [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ position: 'relative',
+ display: 'inline-block',
+ width: 'fit-content',
+ lineHeight: 1,
+ [`${componentCls}-count`]: {
+ zIndex: token.indicatorZIndex,
+ minWidth: indicatorHeight,
+ height: indicatorHeight,
+ color: token.badgeTextColor,
+ fontWeight: textFontWeight,
+ fontSize: textFontSize,
+ lineHeight: `${indicatorHeight}px`,
+ whiteSpace: 'nowrap',
+ textAlign: 'center',
+ background: token.badgeColor,
+ borderRadius: indicatorHeight / 2,
+ boxShadow: `0 0 0 ${badgeShadowSize}px ${token.badgeShadowColor}`,
+ transition: `background ${token.motionDurationMid}`,
+ a: {
+ color: token.badgeTextColor
+ },
+ 'a:hover': {
+ color: token.badgeTextColor
+ },
+ 'a:hover &': {
+ background: token.badgeColorHover
+ }
},
- ol: {
- display: 'flex',
- flexWrap: 'wrap',
- margin: 0,
- padding: 0,
- listStyle: 'none'
+ [`${componentCls}-count-sm`]: {
+ minWidth: indicatorHeightSM,
+ height: indicatorHeightSM,
+ fontSize: textFontSizeSM,
+ lineHeight: `${indicatorHeightSM}px`,
+ borderRadius: indicatorHeightSM / 2
},
- a: Object.assign({
- color: token.linkColor,
- transition: `color ${token.motionDurationMid}`,
- padding: `0 ${token.paddingXXS}px`,
- borderRadius: token.borderRadiusSM,
- height: token.lineHeight * token.fontSize,
- display: 'inline-block',
- marginInline: -token.marginXXS,
- '&:hover': {
- color: token.linkHoverColor,
- backgroundColor: token.colorBgTextHover
+ [`${componentCls}-multiple-words`]: {
+ padding: `0 ${token.paddingXS}px`,
+ bdi: {
+ unicodeBidi: 'plaintext'
}
- }, (0,style/* genFocusStyle */.Qy)(token)),
- [`li:last-child`]: {
- color: token.lastItemColor
},
- [`${componentCls}-separator`]: {
- marginInline: token.separatorMargin,
- color: token.separatorColor
+ [`${componentCls}-dot`]: {
+ zIndex: token.indicatorZIndex,
+ width: dotSize,
+ minWidth: dotSize,
+ height: dotSize,
+ background: token.badgeColor,
+ borderRadius: '100%',
+ boxShadow: `0 0 0 ${badgeShadowSize}px ${token.badgeShadowColor}`
+ },
+ [`${componentCls}-dot${numberPrefixCls}`]: {
+ transition: `background ${motionDurationSlow}`
},
- [`${componentCls}-link`]: {
- [`
- > ${iconCls} + span,
- > ${iconCls} + a
- `]: {
- marginInlineStart: token.marginXXS
+ [`${componentCls}-count, ${componentCls}-dot, ${numberPrefixCls}-custom-component`]: {
+ position: 'absolute',
+ top: 0,
+ insetInlineEnd: 0,
+ transform: 'translate(50%, -50%)',
+ transformOrigin: '100% 0%',
+ [`&${iconCls}-spin`]: {
+ animationName: antBadgeLoadingCircle,
+ animationDuration: '1s',
+ animationIterationCount: 'infinite',
+ animationTimingFunction: 'linear'
}
},
- [`${componentCls}-overlay-link`]: {
- borderRadius: token.borderRadiusSM,
- height: token.lineHeight * token.fontSize,
- display: 'inline-block',
- padding: `0 ${token.paddingXXS}px`,
- marginInline: -token.marginXXS,
- [`> ${iconCls}`]: {
- marginInlineStart: token.marginXXS,
- fontSize: token.fontSizeIcon
+ [`&${componentCls}-status`]: {
+ lineHeight: 'inherit',
+ verticalAlign: 'baseline',
+ [`${componentCls}-status-dot`]: {
+ position: 'relative',
+ top: -1,
+ display: 'inline-block',
+ width: statusSize,
+ height: statusSize,
+ verticalAlign: 'middle',
+ borderRadius: '50%'
+ },
+ [`${componentCls}-status-success`]: {
+ backgroundColor: token.colorSuccess
},
- '&:hover': {
- color: token.linkHoverColor,
- backgroundColor: token.colorBgTextHover,
- a: {
- color: token.linkHoverColor
+ [`${componentCls}-status-processing`]: {
+ overflow: 'visible',
+ color: token.colorPrimary,
+ backgroundColor: token.colorPrimary,
+ '&::after': {
+ position: 'absolute',
+ top: 0,
+ insetInlineStart: 0,
+ width: '100%',
+ height: '100%',
+ borderWidth: badgeShadowSize,
+ borderStyle: 'solid',
+ borderColor: 'inherit',
+ borderRadius: '50%',
+ animationName: antStatusProcessing,
+ animationDuration: token.badgeProcessingDuration,
+ animationIterationCount: 'infinite',
+ animationTimingFunction: 'ease-in-out',
+ content: '""'
}
},
- a: {
- '&:hover': {
- backgroundColor: 'transparent'
+ [`${componentCls}-status-default`]: {
+ backgroundColor: token.colorTextPlaceholder
+ },
+ [`${componentCls}-status-error`]: {
+ backgroundColor: token.colorError
+ },
+ [`${componentCls}-status-warning`]: {
+ backgroundColor: token.colorWarning
+ },
+ [`${componentCls}-status-text`]: {
+ marginInlineStart: marginXS,
+ color: token.colorText,
+ fontSize: token.fontSize
+ }
+ }
+ }), colorPreset), {
+ [`${componentCls}-zoom-appear, ${componentCls}-zoom-enter`]: {
+ animationName: antZoomBadgeIn,
+ animationDuration: token.motionDurationSlow,
+ animationTimingFunction: token.motionEaseOutBack,
+ animationFillMode: 'both'
+ },
+ [`${componentCls}-zoom-leave`]: {
+ animationName: antZoomBadgeOut,
+ animationDuration: token.motionDurationSlow,
+ animationTimingFunction: token.motionEaseOutBack,
+ animationFillMode: 'both'
+ },
+ [`&${componentCls}-not-a-wrapper`]: {
+ [`${componentCls}-zoom-appear, ${componentCls}-zoom-enter`]: {
+ animationName: antNoWrapperZoomBadgeIn,
+ animationDuration: token.motionDurationSlow,
+ animationTimingFunction: token.motionEaseOutBack
+ },
+ [`${componentCls}-zoom-leave`]: {
+ animationName: antNoWrapperZoomBadgeOut,
+ animationDuration: token.motionDurationSlow,
+ animationTimingFunction: token.motionEaseOutBack
+ },
+ [`&:not(${componentCls}-status)`]: {
+ verticalAlign: 'middle'
+ },
+ [`${numberPrefixCls}-custom-component, ${componentCls}-count`]: {
+ transform: 'none'
+ },
+ [`${numberPrefixCls}-custom-component, ${numberPrefixCls}`]: {
+ position: 'relative',
+ top: 'auto',
+ display: 'block',
+ transformOrigin: '50% 50%'
+ }
+ },
+ [`${numberPrefixCls}`]: {
+ overflow: 'hidden',
+ [`${numberPrefixCls}-only`]: {
+ position: 'relative',
+ display: 'inline-block',
+ height: indicatorHeight,
+ transition: `all ${token.motionDurationSlow} ${token.motionEaseOutBack}`,
+ WebkitTransformStyle: 'preserve-3d',
+ WebkitBackfaceVisibility: 'hidden',
+ [`> p${numberPrefixCls}-only-unit`]: {
+ height: indicatorHeight,
+ margin: 0,
+ WebkitTransformStyle: 'preserve-3d',
+ WebkitBackfaceVisibility: 'hidden'
}
+ },
+ [`${numberPrefixCls}-symbol`]: {
+ verticalAlign: 'top'
}
},
- // rtl style
- [`&${token.componentCls}-rtl`]: {
+ // ====================== RTL =======================
+ '&-rtl': {
+ direction: 'rtl',
+ [`${componentCls}-count, ${componentCls}-dot, ${numberPrefixCls}-custom-component`]: {
+ transform: 'translate(-50%, -50%)'
+ }
+ }
+ })
+ };
+};
+// ============================== Export ==============================
+const prepareToken = token => {
+ const {
+ fontSize,
+ lineHeight,
+ lineWidth,
+ marginXS,
+ colorBorderBg
+ } = token;
+ const badgeFontHeight = Math.round(fontSize * lineHeight);
+ const badgeShadowSize = lineWidth;
+ const badgeTextColor = token.colorBgContainer;
+ const badgeColor = token.colorError;
+ const badgeColorHover = token.colorErrorHover;
+ const badgeToken = (0,statistic/* merge */.TS)(token, {
+ badgeFontHeight,
+ badgeShadowSize,
+ badgeTextColor,
+ badgeColor,
+ badgeColorHover,
+ badgeShadowColor: colorBorderBg,
+ badgeProcessingDuration: '1.2s',
+ badgeRibbonOffset: marginXS,
+ // Follow token just by Design. Not related with token
+ badgeRibbonCornerTransform: 'scaleY(0.75)',
+ badgeRibbonCornerFilter: `brightness(75%)`
+ });
+ return badgeToken;
+};
+const prepareComponentToken = token => {
+ const {
+ fontSize,
+ lineHeight,
+ fontSizeSM,
+ lineWidth
+ } = token;
+ return {
+ indicatorZIndex: 'auto',
+ indicatorHeight: Math.round(fontSize * lineHeight) - 2 * lineWidth,
+ indicatorHeightSM: fontSize,
+ dotSize: fontSizeSM / 2,
+ textFontSize: fontSizeSM,
+ textFontSizeSM: fontSizeSM,
+ textFontWeight: 'normal',
+ statusSize: fontSizeSM / 2
+ };
+};
+/* harmony default export */ var badge_style = ((0,genComponentStyleHook/* default */.Z)('Badge', token => {
+ const badgeToken = prepareToken(token);
+ return [genSharedBadgeStyle(badgeToken)];
+}, prepareComponentToken));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/badge/style/ribbon.js
+
+
+
+// ============================== Ribbon ==============================
+const genRibbonStyle = token => {
+ const {
+ antCls,
+ badgeFontHeight,
+ marginXS,
+ badgeRibbonOffset
+ } = token;
+ const ribbonPrefixCls = `${antCls}-ribbon`;
+ const ribbonWrapperPrefixCls = `${antCls}-ribbon-wrapper`;
+ const statusRibbonPreset = (0,genPresetColor/* default */.Z)(token, (colorKey, _ref) => {
+ let {
+ darkColor
+ } = _ref;
+ return {
+ [`&${ribbonPrefixCls}-color-${colorKey}`]: {
+ background: darkColor,
+ color: darkColor
+ }
+ };
+ });
+ return {
+ [`${ribbonWrapperPrefixCls}`]: {
+ position: 'relative'
+ },
+ [`${ribbonPrefixCls}`]: Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
+ position: 'absolute',
+ top: marginXS,
+ padding: `0 ${token.paddingXS}px`,
+ color: token.colorPrimary,
+ lineHeight: `${badgeFontHeight}px`,
+ whiteSpace: 'nowrap',
+ backgroundColor: token.colorPrimary,
+ borderRadius: token.borderRadiusSM,
+ [`${ribbonPrefixCls}-text`]: {
+ color: token.colorTextLightSolid
+ },
+ [`${ribbonPrefixCls}-corner`]: {
+ position: 'absolute',
+ top: '100%',
+ width: badgeRibbonOffset,
+ height: badgeRibbonOffset,
+ color: 'currentcolor',
+ border: `${badgeRibbonOffset / 2}px solid`,
+ transform: token.badgeRibbonCornerTransform,
+ transformOrigin: 'top',
+ filter: token.badgeRibbonCornerFilter
+ }
+ }), statusRibbonPreset), {
+ [`&${ribbonPrefixCls}-placement-end`]: {
+ insetInlineEnd: -badgeRibbonOffset,
+ borderEndEndRadius: 0,
+ [`${ribbonPrefixCls}-corner`]: {
+ insetInlineEnd: 0,
+ borderInlineEndColor: 'transparent',
+ borderBlockEndColor: 'transparent'
+ }
+ },
+ [`&${ribbonPrefixCls}-placement-start`]: {
+ insetInlineStart: -badgeRibbonOffset,
+ borderEndStartRadius: 0,
+ [`${ribbonPrefixCls}-corner`]: {
+ insetInlineStart: 0,
+ borderBlockEndColor: 'transparent',
+ borderInlineStartColor: 'transparent'
+ }
+ },
+ // ====================== RTL =======================
+ '&-rtl': {
direction: 'rtl'
}
})
};
};
// ============================== Export ==============================
-/* harmony default export */ var breadcrumb_style = ((0,genComponentStyleHook/* default */.Z)('Breadcrumb', token => {
- const BreadcrumbToken = (0,statistic/* merge */.TS)(token, {});
- return [genBreadcrumbStyle(BreadcrumbToken)];
-}, token => ({
- itemColor: token.colorTextDescription,
- lastItemColor: token.colorText,
- iconFontSize: token.fontSize,
- linkColor: token.colorTextDescription,
- linkHoverColor: token.colorText,
- separatorColor: token.colorTextDescription,
- separatorMargin: token.marginXS
-})));
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/useItems.js
-var useItems_rest = undefined && undefined.__rest || function (s, e) {
+/* harmony default export */ var ribbon = ((0,genComponentStyleHook/* default */.Z)(['Badge', 'Ribbon'], token => {
+ const badgeToken = prepareToken(token);
+ return [genRibbonStyle(badgeToken)];
+}, prepareComponentToken));
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/badge/Ribbon.js
+"use client";
+
+
+
+
+
+
+const Ribbon = props => {
+ const {
+ className,
+ prefixCls: customizePrefixCls,
+ style,
+ color,
+ children,
+ text,
+ placement = 'end',
+ rootClassName
+ } = props;
+ const {
+ getPrefixCls,
+ direction
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('ribbon', customizePrefixCls);
+ const colorInPreset = (0,colors/* isPresetColor */.o2)(color, false);
+ const ribbonCls = _classnames_2_5_1_classnames_default()(prefixCls, `${prefixCls}-placement-${placement}`, {
+ [`${prefixCls}-rtl`]: direction === 'rtl',
+ [`${prefixCls}-color-${color}`]: colorInPreset
+ }, className);
+ const [wrapSSR, hashId] = ribbon(prefixCls);
+ const colorStyle = {};
+ const cornerColorStyle = {};
+ if (color && !colorInPreset) {
+ colorStyle.background = color;
+ cornerColorStyle.color = color;
+ }
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: _classnames_2_5_1_classnames_default()(`${prefixCls}-wrapper`, rootClassName, hashId)
+ }, children, /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: _classnames_2_5_1_classnames_default()(ribbonCls, hashId),
+ style: Object.assign(Object.assign({}, colorStyle), style)
+ }, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-text`
+ }, text), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
+ className: `${prefixCls}-corner`,
+ style: cornerColorStyle
+ }))));
+};
+if (false) {}
+/* harmony default export */ var badge_Ribbon = (Ribbon);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/badge/SingleNumber.js
+"use client";
+
+
+
+function UnitNumber(_ref) {
+ let {
+ prefixCls,
+ value,
+ current,
+ offset = 0
+ } = _ref;
+ let style;
+ if (offset) {
+ style = {
+ position: 'absolute',
+ top: `${offset}00%`,
+ left: 0
+ };
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ style: style,
+ className: _classnames_2_5_1_classnames_default()(`${prefixCls}-only-unit`, {
+ current
+ })
+ }, value);
+}
+function getOffset(start, end, unit) {
+ let index = start;
+ let offset = 0;
+ while ((index + 10) % 10 !== end) {
+ index += unit;
+ offset += unit;
+ }
+ return offset;
+}
+function SingleNumber(props) {
+ const {
+ prefixCls,
+ count: originCount,
+ value: originValue
+ } = props;
+ const value = Number(originValue);
+ const count = Math.abs(originCount);
+ const [prevValue, setPrevValue] = _react_17_0_2_react.useState(value);
+ const [prevCount, setPrevCount] = _react_17_0_2_react.useState(count);
+ // ============================= Events =============================
+ const onTransitionEnd = () => {
+ setPrevValue(value);
+ setPrevCount(count);
+ };
+ // Fallback if transition event not support
+ _react_17_0_2_react.useEffect(() => {
+ const timeout = setTimeout(() => {
+ onTransitionEnd();
+ }, 1000);
+ return () => {
+ clearTimeout(timeout);
+ };
+ }, [value]);
+ // ============================= Render =============================
+ // Render unit list
+ let unitNodes;
+ let offsetStyle;
+ if (prevValue === value || Number.isNaN(value) || Number.isNaN(prevValue)) {
+ // Nothing to change
+ unitNodes = [/*#__PURE__*/_react_17_0_2_react.createElement(UnitNumber, Object.assign({}, props, {
+ key: value,
+ current: true
+ }))];
+ offsetStyle = {
+ transition: 'none'
+ };
+ } else {
+ unitNodes = [];
+ // Fill basic number units
+ const end = value + 10;
+ const unitNumberList = [];
+ for (let index = value; index <= end; index += 1) {
+ unitNumberList.push(index);
+ }
+ // Fill with number unit nodes
+ const prevIndex = unitNumberList.findIndex(n => n % 10 === prevValue);
+ unitNodes = unitNumberList.map((n, index) => {
+ const singleUnit = n % 10;
+ return /*#__PURE__*/_react_17_0_2_react.createElement(UnitNumber, Object.assign({}, props, {
+ key: n,
+ value: singleUnit,
+ offset: index - prevIndex,
+ current: index === prevIndex
+ }));
+ });
+ // Calculate container offset value
+ const unit = prevCount < count ? 1 : -1;
+ offsetStyle = {
+ transform: `translateY(${-getOffset(prevValue, value, unit)}00%)`
+ };
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-only`,
+ style: offsetStyle,
+ onTransitionEnd: onTransitionEnd
+ }, unitNodes);
+}
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/badge/ScrollNumber.js
+"use client";
+
+var __rest = undefined && undefined.__rest || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
@@ -329,45 +671,68 @@ var useItems_rest = undefined && undefined.__rest || function (s, e) {
return t;
};
-function route2item(route) {
+
+
+
+
+const ScrollNumber = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
const {
- breadcrumbName,
+ prefixCls: customizePrefixCls,
+ count,
+ className,
+ motionClassName,
+ style,
+ title,
+ show,
+ component: Component = 'sup',
children
- } = route,
- rest = useItems_rest(route, ["breadcrumbName", "children"]);
- const clone = Object.assign({
- title: breadcrumbName
- }, rest);
+ } = props,
+ restProps = __rest(props, ["prefixCls", "count", "className", "motionClassName", "style", "title", "show", "component", "children"]);
+ const {
+ getPrefixCls
+ } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
+ const prefixCls = getPrefixCls('scroll-number', customizePrefixCls);
+ // ============================ Render ============================
+ const newProps = Object.assign(Object.assign({}, restProps), {
+ 'data-show': show,
+ style,
+ className: _classnames_2_5_1_classnames_default()(prefixCls, className, motionClassName),
+ title: title
+ });
+ // Only integer need motion
+ let numberNodes = count;
+ if (count && Number(count) % 1 === 0) {
+ const numberList = String(count).split('');
+ numberNodes = /*#__PURE__*/_react_17_0_2_react.createElement("bdi", null, numberList.map((num, i) => /*#__PURE__*/_react_17_0_2_react.createElement(SingleNumber, {
+ prefixCls: prefixCls,
+ count: Number(count),
+ value: num,
+ // eslint-disable-next-line react/no-array-index-key
+ key: numberList.length - i
+ })));
+ }
+ // allow specify the border
+ // mock border-color by box-shadow for compatible with old usage:
+ //
+ if (style && style.borderColor) {
+ newProps.style = Object.assign(Object.assign({}, style), {
+ boxShadow: `0 0 0 1px ${style.borderColor} inset`
+ });
+ }
if (children) {
- clone.menu = {
- items: children.map(_a => {
- var {
- breadcrumbName: itemBreadcrumbName
- } = _a,
- itemProps = useItems_rest(_a, ["breadcrumbName"]);
- return Object.assign(Object.assign({}, itemProps), {
- title: itemBreadcrumbName
- });
- })
- };
+ return (0,reactNode/* cloneElement */.Tm)(children, oriProps => ({
+ className: _classnames_2_5_1_classnames_default()(`${prefixCls}-custom-component`, oriProps === null || oriProps === void 0 ? void 0 : oriProps.className, motionClassName)
+ }));
}
- return clone;
-}
-function useItems(items, routes) {
- return (0,_react_17_0_2_react.useMemo)(() => {
- if (items) {
- return items;
- }
- if (routes) {
- return routes.map(route2item);
- }
- return null;
- }, [items, routes]);
-}
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/Breadcrumb.js
+ return /*#__PURE__*/_react_17_0_2_react.createElement(Component, Object.assign({}, newProps, {
+ ref: ref
+ }), numberNodes);
+});
+/* harmony default export */ var badge_ScrollNumber = (ScrollNumber);
+;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/badge/index.js
"use client";
-var Breadcrumb_rest = undefined && undefined.__rest || function (s, e) {
+var badge_rest = undefined && undefined.__rest || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
@@ -385,130 +750,173 @@ var Breadcrumb_rest = undefined && undefined.__rest || function (s, e) {
-
-
-const getPath = (params, path) => {
- if (path === undefined) {
- return path;
- }
- let mergedPath = (path || '').replace(/^\//, '');
- Object.keys(params).forEach(key => {
- mergedPath = mergedPath.replace(`:${key}`, params[key]);
- });
- return mergedPath;
-};
-const Breadcrumb = props => {
+const InternalBadge = (props, ref) => {
+ var _a, _b, _c, _d, _e;
const {
prefixCls: customizePrefixCls,
- separator = '/',
+ scrollNumberPrefixCls: customizeScrollNumberPrefixCls,
+ children,
+ status,
+ text,
+ color,
+ count = null,
+ overflowCount = 99,
+ dot = false,
+ size = 'default',
+ title,
+ offset,
style,
className,
rootClassName,
- routes: legacyRoutes,
- items,
- children,
- itemRender,
- params = {}
+ classNames,
+ styles,
+ showZero = false
} = props,
- restProps = Breadcrumb_rest(props, ["prefixCls", "separator", "style", "className", "rootClassName", "routes", "items", "children", "itemRender", "params"]);
+ restProps = badge_rest(props, ["prefixCls", "scrollNumberPrefixCls", "children", "status", "text", "color", "count", "overflowCount", "dot", "size", "title", "offset", "style", "className", "rootClassName", "classNames", "styles", "showZero"]);
const {
getPrefixCls,
direction,
- breadcrumb
+ badge
} = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
- let crumbs;
- const prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
- const [wrapSSR, hashId] = breadcrumb_style(prefixCls);
- const mergedItems = useItems(items, legacyRoutes);
- if (false) {}
- const mergedItemRender = useItemRender(prefixCls, itemRender);
- if (mergedItems && mergedItems.length > 0) {
- // generated by route
- const paths = [];
- const itemRenderRoutes = items || legacyRoutes;
- crumbs = mergedItems.map((item, index) => {
- const {
- path,
- key,
- type,
- menu,
- overlay,
- onClick,
- className: itemClassName,
- separator: itemSeparator,
- dropdownProps
- } = item;
- const mergedPath = getPath(params, path);
- if (mergedPath !== undefined) {
- paths.push(mergedPath);
- }
- const mergedKey = key !== null && key !== void 0 ? key : index;
- if (type === 'separator') {
- return /*#__PURE__*/_react_17_0_2_react.createElement(breadcrumb_BreadcrumbSeparator, {
- key: mergedKey
- }, itemSeparator);
- }
- const itemProps = {};
- const isLastItem = index === mergedItems.length - 1;
- if (menu) {
- itemProps.menu = menu;
- } else if (overlay) {
- itemProps.overlay = overlay;
- }
- let {
- href
- } = item;
- if (paths.length && mergedPath !== undefined) {
- href = `#/${paths.join('/')}`;
- }
- return /*#__PURE__*/_react_17_0_2_react.createElement(InternalBreadcrumbItem, Object.assign({
- key: mergedKey
- }, itemProps, (0,pickAttrs/* default */.Z)(item, {
- data: true,
- aria: true
- }), {
- className: itemClassName,
- dropdownProps: dropdownProps,
- href: href,
- separator: isLastItem ? '' : separator,
- onClick: onClick,
- prefixCls: prefixCls
- }), mergedItemRender(item, params, itemRenderRoutes, paths, href));
- });
- } else if (children) {
- const childrenLength = (0,toArray/* default */.Z)(children).length;
- crumbs = (0,toArray/* default */.Z)(children).map((element, index) => {
- if (!element) {
- return element;
- }
- // =================== Warning =====================
- if (false) {}
- false ? 0 : void 0;
- const isLastItem = index === childrenLength - 1;
- return (0,reactNode/* cloneElement */.Tm)(element, {
- separator: isLastItem ? '' : separator,
- key: index
- });
- });
+ const prefixCls = getPrefixCls('badge', customizePrefixCls);
+ // Style
+ const [wrapSSR, hashId] = badge_style(prefixCls);
+ // ================================ Misc ================================
+ const numberedDisplayCount = count > overflowCount ? `${overflowCount}+` : count;
+ const isZero = numberedDisplayCount === '0' || numberedDisplayCount === 0;
+ const ignoreCount = count === null || isZero && !showZero;
+ const hasStatus = (status !== null && status !== undefined || color !== null && color !== undefined) && ignoreCount;
+ const showAsDot = dot && !isZero;
+ const mergedCount = showAsDot ? '' : numberedDisplayCount;
+ const isHidden = (0,_react_17_0_2_react.useMemo)(() => {
+ const isEmpty = mergedCount === null || mergedCount === undefined || mergedCount === '';
+ return (isEmpty || isZero && !showZero) && !showAsDot;
+ }, [mergedCount, isZero, showZero, showAsDot]);
+ // Count should be cache in case hidden change it
+ const countRef = (0,_react_17_0_2_react.useRef)(count);
+ if (!isHidden) {
+ countRef.current = count;
+ }
+ const livingCount = countRef.current;
+ // We need cache count since remove motion should not change count display
+ const displayCountRef = (0,_react_17_0_2_react.useRef)(mergedCount);
+ if (!isHidden) {
+ displayCountRef.current = mergedCount;
}
- const breadcrumbClassName = _classnames_2_5_1_classnames_default()(prefixCls, breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.className, {
+ const displayCount = displayCountRef.current;
+ // We will cache the dot status to avoid shaking on leaved motion
+ const isDotRef = (0,_react_17_0_2_react.useRef)(showAsDot);
+ if (!isHidden) {
+ isDotRef.current = showAsDot;
+ }
+ // =============================== Styles ===============================
+ const mergedStyle = (0,_react_17_0_2_react.useMemo)(() => {
+ if (!offset) {
+ return Object.assign(Object.assign({}, badge === null || badge === void 0 ? void 0 : badge.style), style);
+ }
+ const offsetStyle = {
+ marginTop: offset[1]
+ };
+ if (direction === 'rtl') {
+ offsetStyle.left = parseInt(offset[0], 10);
+ } else {
+ offsetStyle.right = -parseInt(offset[0], 10);
+ }
+ return Object.assign(Object.assign(Object.assign({}, offsetStyle), badge === null || badge === void 0 ? void 0 : badge.style), style);
+ }, [direction, offset, style, badge === null || badge === void 0 ? void 0 : badge.style]);
+ // =============================== Render ===============================
+ // >>> Title
+ const titleNode = title !== null && title !== void 0 ? title : typeof livingCount === 'string' || typeof livingCount === 'number' ? livingCount : undefined;
+ // >>> Status Text
+ const statusTextNode = isHidden || !text ? null : /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: `${prefixCls}-status-text`
+ }, text);
+ // >>> Display Component
+ const displayNode = !livingCount || typeof livingCount !== 'object' ? undefined : (0,reactNode/* cloneElement */.Tm)(livingCount, oriProps => ({
+ style: Object.assign(Object.assign({}, mergedStyle), oriProps.style)
+ }));
+ // InternalColor
+ const isInternalColor = (0,colors/* isPresetColor */.o2)(color, false);
+ // Shared styles
+ const statusCls = _classnames_2_5_1_classnames_default()(classNames === null || classNames === void 0 ? void 0 : classNames.indicator, (_a = badge === null || badge === void 0 ? void 0 : badge.classNames) === null || _a === void 0 ? void 0 : _a.indicator, {
+ [`${prefixCls}-status-dot`]: hasStatus,
+ [`${prefixCls}-status-${status}`]: !!status,
+ [`${prefixCls}-color-${color}`]: isInternalColor
+ });
+ const statusStyle = {};
+ if (color && !isInternalColor) {
+ statusStyle.color = color;
+ statusStyle.background = color;
+ }
+ const badgeClassName = _classnames_2_5_1_classnames_default()(prefixCls, {
+ [`${prefixCls}-status`]: hasStatus,
+ [`${prefixCls}-not-a-wrapper`]: !children,
[`${prefixCls}-rtl`]: direction === 'rtl'
- }, className, rootClassName, hashId);
- const mergedStyle = Object.assign(Object.assign({}, breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.style), style);
- return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("nav", Object.assign({
- className: breadcrumbClassName,
- style: mergedStyle
- }, restProps), /*#__PURE__*/_react_17_0_2_react.createElement("ol", null, crumbs)));
+ }, className, rootClassName, badge === null || badge === void 0 ? void 0 : badge.className, (_b = badge === null || badge === void 0 ? void 0 : badge.classNames) === null || _b === void 0 ? void 0 : _b.root, classNames === null || classNames === void 0 ? void 0 : classNames.root, hashId);
+ //
+ if (!children && hasStatus) {
+ const statusTextColor = mergedStyle.color;
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("span", Object.assign({}, restProps, {
+ className: badgeClassName,
+ style: Object.assign(Object.assign(Object.assign({}, styles === null || styles === void 0 ? void 0 : styles.root), (_c = badge === null || badge === void 0 ? void 0 : badge.styles) === null || _c === void 0 ? void 0 : _c.root), mergedStyle)
+ }), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ className: statusCls,
+ style: Object.assign(Object.assign(Object.assign({}, styles === null || styles === void 0 ? void 0 : styles.indicator), (_d = badge === null || badge === void 0 ? void 0 : badge.styles) === null || _d === void 0 ? void 0 : _d.indicator), statusStyle)
+ }), text && /*#__PURE__*/_react_17_0_2_react.createElement("span", {
+ style: {
+ color: statusTextColor
+ },
+ className: `${prefixCls}-status-text`
+ }, text)));
+ }
+ return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("span", Object.assign({
+ ref: ref
+ }, restProps, {
+ className: badgeClassName,
+ style: Object.assign(Object.assign({}, (_e = badge === null || badge === void 0 ? void 0 : badge.styles) === null || _e === void 0 ? void 0 : _e.root), styles === null || styles === void 0 ? void 0 : styles.root)
+ }), children, /*#__PURE__*/_react_17_0_2_react.createElement(es["default"], {
+ visible: !isHidden,
+ motionName: `${prefixCls}-zoom`,
+ motionAppear: false,
+ motionDeadline: 1000
+ }, _ref => {
+ let {
+ className: motionClassName,
+ ref: scrollNumberRef
+ } = _ref;
+ var _a, _b;
+ const scrollNumberPrefixCls = getPrefixCls('scroll-number', customizeScrollNumberPrefixCls);
+ const isDot = isDotRef.current;
+ const scrollNumberCls = _classnames_2_5_1_classnames_default()(classNames === null || classNames === void 0 ? void 0 : classNames.indicator, (_a = badge === null || badge === void 0 ? void 0 : badge.classNames) === null || _a === void 0 ? void 0 : _a.indicator, {
+ [`${prefixCls}-dot`]: isDot,
+ [`${prefixCls}-count`]: !isDot,
+ [`${prefixCls}-count-sm`]: size === 'small',
+ [`${prefixCls}-multiple-words`]: !isDot && displayCount && displayCount.toString().length > 1,
+ [`${prefixCls}-status-${status}`]: !!status,
+ [`${prefixCls}-color-${color}`]: isInternalColor
+ });
+ let scrollNumberStyle = Object.assign(Object.assign(Object.assign({}, styles === null || styles === void 0 ? void 0 : styles.indicator), (_b = badge === null || badge === void 0 ? void 0 : badge.styles) === null || _b === void 0 ? void 0 : _b.indicator), mergedStyle);
+ if (color && !isInternalColor) {
+ scrollNumberStyle = scrollNumberStyle || {};
+ scrollNumberStyle.background = color;
+ }
+ return /*#__PURE__*/_react_17_0_2_react.createElement(badge_ScrollNumber, {
+ prefixCls: scrollNumberPrefixCls,
+ show: !isHidden,
+ motionClassName: motionClassName,
+ className: scrollNumberCls,
+ count: displayCount,
+ title: titleNode,
+ style: scrollNumberStyle,
+ key: "scrollNumber",
+ ref: scrollNumberRef
+ }, displayNode);
+ }), statusTextNode));
};
-Breadcrumb.Item = breadcrumb_BreadcrumbItem;
-Breadcrumb.Separator = breadcrumb_BreadcrumbSeparator;
+const Badge = /*#__PURE__*/_react_17_0_2_react.forwardRef(InternalBadge);
+Badge.Ribbon = badge_Ribbon;
if (false) {}
-/* harmony default export */ var breadcrumb_Breadcrumb = (Breadcrumb);
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js
-"use client";
-
-
-/* harmony default export */ var breadcrumb = (breadcrumb_Breadcrumb);
+/* harmony default export */ var badge = (Badge);
/***/ }),
@@ -659,8 +1067,8 @@ const InternalCheckbox = (props, ref) => {
const Checkbox = /*#__PURE__*/_react_17_0_2_react.forwardRef(InternalCheckbox);
if (false) {}
/* harmony default export */ var checkbox_Checkbox = (Checkbox);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
-var toConsumableArray = __webpack_require__(69202);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.9@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
+var toConsumableArray = __webpack_require__(49397);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/omit.js
var omit = __webpack_require__(99468);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/Group.js
@@ -1294,7 +1702,7 @@ var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_c
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/EllipsisOutlined.js + 1 modules
-var EllipsisOutlined = __webpack_require__(93319);
+var EllipsisOutlined = __webpack_require__(12440);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
@@ -1829,504 +2237,6 @@ const CompoundedSpace = Space;
CompoundedSpace.Compact = Compact/* default */.ZP;
/* harmony default export */ var space = (CompoundedSpace);
-/***/ }),
-
-/***/ 78673:
-/*!**********************************************************************!*\
- !*** ./node_modules/_antd@5.9.0@antd/es/switch/index.js + 2 modules ***!
- \**********************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ es_switch; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/LoadingOutlined.js + 1 modules
-var LoadingOutlined = __webpack_require__(38521);
-// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
-var _classnames_2_5_1_classnames = __webpack_require__(92310);
-var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/extends.js
-var esm_extends = __webpack_require__(38850);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/defineProperty.js
-var defineProperty = __webpack_require__(85005);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
-var slicedToArray = __webpack_require__(69818);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.8@@babel/runtime/helpers/esm/objectWithoutProperties.js
-var objectWithoutProperties = __webpack_require__(46130);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/hooks/useMergedState.js
-var useMergedState = __webpack_require__(84381);
-// EXTERNAL MODULE: ./node_modules/_rc-util@5.38.1@rc-util/es/KeyCode.js
-var KeyCode = __webpack_require__(84821);
-;// CONCATENATED MODULE: ./node_modules/_rc-switch@4.1.0@rc-switch/es/index.js
-
-
-
-
-var _excluded = ["prefixCls", "className", "checked", "defaultChecked", "disabled", "loadingIcon", "checkedChildren", "unCheckedChildren", "onClick", "onChange", "onKeyDown"];
-
-
-
-
-var Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef(function (_ref, ref) {
- var _classNames;
- var _ref$prefixCls = _ref.prefixCls,
- prefixCls = _ref$prefixCls === void 0 ? 'rc-switch' : _ref$prefixCls,
- className = _ref.className,
- checked = _ref.checked,
- defaultChecked = _ref.defaultChecked,
- disabled = _ref.disabled,
- loadingIcon = _ref.loadingIcon,
- checkedChildren = _ref.checkedChildren,
- unCheckedChildren = _ref.unCheckedChildren,
- onClick = _ref.onClick,
- onChange = _ref.onChange,
- onKeyDown = _ref.onKeyDown,
- restProps = (0,objectWithoutProperties/* default */.Z)(_ref, _excluded);
- var _useMergedState = (0,useMergedState/* default */.Z)(false, {
- value: checked,
- defaultValue: defaultChecked
- }),
- _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
- innerChecked = _useMergedState2[0],
- setInnerChecked = _useMergedState2[1];
- function triggerChange(newChecked, event) {
- var mergedChecked = innerChecked;
- if (!disabled) {
- mergedChecked = newChecked;
- setInnerChecked(mergedChecked);
- onChange === null || onChange === void 0 ? void 0 : onChange(mergedChecked, event);
- }
- return mergedChecked;
- }
- function onInternalKeyDown(e) {
- if (e.which === KeyCode/* default */.Z.LEFT) {
- triggerChange(false, e);
- } else if (e.which === KeyCode/* default */.Z.RIGHT) {
- triggerChange(true, e);
- }
- onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);
- }
- function onInternalClick(e) {
- var ret = triggerChange(!innerChecked, e);
- // [Legacy] trigger onClick with value
- onClick === null || onClick === void 0 ? void 0 : onClick(ret, e);
- }
- var switchClassName = _classnames_2_5_1_classnames_default()(prefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-checked"), innerChecked), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-disabled"), disabled), _classNames));
- return /*#__PURE__*/_react_17_0_2_react.createElement("button", (0,esm_extends/* default */.Z)({}, restProps, {
- type: "button",
- role: "switch",
- "aria-checked": innerChecked,
- disabled: disabled,
- className: switchClassName,
- ref: ref,
- onKeyDown: onInternalKeyDown,
- onClick: onInternalClick
- }), loadingIcon, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner")
- }, /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner-checked")
- }, checkedChildren), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
- className: "".concat(prefixCls, "-inner-unchecked")
- }, unCheckedChildren)));
-});
-Switch.displayName = 'Switch';
-/* harmony default export */ var es = (Switch);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/wave/index.js + 4 modules
-var wave = __webpack_require__(14088);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
-var context = __webpack_require__(36355);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/DisabledContext.js
-var DisabledContext = __webpack_require__(1684);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/hooks/useSize.js
-var useSize = __webpack_require__(19716);
-// EXTERNAL MODULE: ./node_modules/_@ctrl_tinycolor@3.6.1@@ctrl/tinycolor/dist/module/index.js
-var dist_module = __webpack_require__(64993);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
-var style = __webpack_require__(17313);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
-var genComponentStyleHook = __webpack_require__(83116);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
-var statistic = __webpack_require__(37613);
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/style/index.js
-
-
-
-const genSwitchSmallStyle = token => {
- const {
- componentCls,
- trackHeightSM,
- trackPadding,
- trackMinWidthSM,
- innerMinMarginSM,
- innerMaxMarginSM,
- handleSizeSM
- } = token;
- const switchInnerCls = `${componentCls}-inner`;
- return {
- [componentCls]: {
- [`&${componentCls}-small`]: {
- minWidth: trackMinWidthSM,
- height: trackHeightSM,
- lineHeight: `${trackHeightSM}px`,
- [`${componentCls}-inner`]: {
- paddingInlineStart: innerMaxMarginSM,
- paddingInlineEnd: innerMinMarginSM,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`,
- marginInlineEnd: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`
- },
- [`${switchInnerCls}-unchecked`]: {
- marginTop: -trackHeightSM,
- marginInlineStart: 0,
- marginInlineEnd: 0
- }
- },
- [`${componentCls}-handle`]: {
- width: handleSizeSM,
- height: handleSizeSM
- },
- [`${componentCls}-loading-icon`]: {
- top: (handleSizeSM - token.switchLoadingIconSize) / 2,
- fontSize: token.switchLoadingIconSize
- },
- [`&${componentCls}-checked`]: {
- [`${componentCls}-inner`]: {
- paddingInlineStart: innerMinMarginSM,
- paddingInlineEnd: innerMaxMarginSM,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: 0,
- marginInlineEnd: 0
- },
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: `calc(100% - ${handleSizeSM + trackPadding * 2}px + ${innerMaxMarginSM * 2}px)`,
- marginInlineEnd: `calc(-100% + ${handleSizeSM + trackPadding * 2}px - ${innerMaxMarginSM * 2}px)`
- }
- },
- [`${componentCls}-handle`]: {
- insetInlineStart: `calc(100% - ${handleSizeSM + trackPadding}px)`
- }
- },
- [`&:not(${componentCls}-disabled):active`]: {
- [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: token.marginXXS / 2,
- marginInlineEnd: -token.marginXXS / 2
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: -token.marginXXS / 2,
- marginInlineEnd: token.marginXXS / 2
- }
- }
- }
- }
- }
- };
-};
-const genSwitchLoadingStyle = token => {
- const {
- componentCls,
- handleSize
- } = token;
- return {
- [componentCls]: {
- [`${componentCls}-loading-icon${token.iconCls}`]: {
- position: 'relative',
- top: (handleSize - token.fontSize) / 2,
- color: token.switchLoadingIconColor,
- verticalAlign: 'top'
- },
- [`&${componentCls}-checked ${componentCls}-loading-icon`]: {
- color: token.switchColor
- }
- }
- };
-};
-const genSwitchHandleStyle = token => {
- const {
- componentCls,
- motion,
- trackPadding,
- handleBg,
- handleShadow,
- handleSize
- } = token;
- const switchHandleCls = `${componentCls}-handle`;
- return {
- [componentCls]: {
- [switchHandleCls]: {
- position: 'absolute',
- top: trackPadding,
- insetInlineStart: trackPadding,
- width: handleSize,
- height: handleSize,
- transition: `all ${token.switchDuration} ease-in-out`,
- '&::before': {
- position: 'absolute',
- top: 0,
- insetInlineEnd: 0,
- bottom: 0,
- insetInlineStart: 0,
- backgroundColor: handleBg,
- borderRadius: handleSize / 2,
- boxShadow: handleShadow,
- transition: `all ${token.switchDuration} ease-in-out`,
- content: '""'
- }
- },
- [`&${componentCls}-checked ${switchHandleCls}`]: {
- insetInlineStart: `calc(100% - ${handleSize + trackPadding}px)`
- },
- [`&:not(${componentCls}-disabled):active`]: motion ? {
- [`${switchHandleCls}::before`]: {
- insetInlineEnd: token.switchHandleActiveInset,
- insetInlineStart: 0
- },
- [`&${componentCls}-checked ${switchHandleCls}::before`]: {
- insetInlineEnd: 0,
- insetInlineStart: token.switchHandleActiveInset
- }
- } : /* istanbul ignore next */
- {}
- }
- };
-};
-const genSwitchInnerStyle = token => {
- const {
- componentCls,
- trackHeight,
- trackPadding,
- innerMinMargin,
- innerMaxMargin,
- handleSize
- } = token;
- const switchInnerCls = `${componentCls}-inner`;
- return {
- [componentCls]: {
- [switchInnerCls]: {
- display: 'block',
- overflow: 'hidden',
- borderRadius: 100,
- height: '100%',
- paddingInlineStart: innerMaxMargin,
- paddingInlineEnd: innerMinMargin,
- transition: `padding-inline-start ${token.switchDuration} ease-in-out, padding-inline-end ${token.switchDuration} ease-in-out`,
- [`${switchInnerCls}-checked, ${switchInnerCls}-unchecked`]: {
- display: 'block',
- color: token.colorTextLightSolid,
- fontSize: token.fontSizeSM,
- transition: `margin-inline-start ${token.switchDuration} ease-in-out, margin-inline-end ${token.switchDuration} ease-in-out`,
- pointerEvents: 'none'
- },
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`,
- marginInlineEnd: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`
- },
- [`${switchInnerCls}-unchecked`]: {
- marginTop: -trackHeight,
- marginInlineStart: 0,
- marginInlineEnd: 0
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- paddingInlineStart: innerMinMargin,
- paddingInlineEnd: innerMaxMargin,
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: 0,
- marginInlineEnd: 0
- },
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: `calc(100% - ${handleSize + trackPadding * 2}px + ${innerMaxMargin * 2}px)`,
- marginInlineEnd: `calc(-100% + ${handleSize + trackPadding * 2}px - ${innerMaxMargin * 2}px)`
- }
- },
- [`&:not(${componentCls}-disabled):active`]: {
- [`&:not(${componentCls}-checked) ${switchInnerCls}`]: {
- [`${switchInnerCls}-unchecked`]: {
- marginInlineStart: trackPadding * 2,
- marginInlineEnd: -trackPadding * 2
- }
- },
- [`&${componentCls}-checked ${switchInnerCls}`]: {
- [`${switchInnerCls}-checked`]: {
- marginInlineStart: -trackPadding * 2,
- marginInlineEnd: trackPadding * 2
- }
- }
- }
- }
- };
-};
-const genSwitchStyle = token => {
- const {
- componentCls,
- trackHeight,
- trackMinWidth
- } = token;
- return {
- [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
- position: 'relative',
- display: 'inline-block',
- boxSizing: 'border-box',
- minWidth: trackMinWidth,
- height: trackHeight,
- lineHeight: `${trackHeight}px`,
- verticalAlign: 'middle',
- background: token.colorTextQuaternary,
- border: '0',
- borderRadius: 100,
- cursor: 'pointer',
- transition: `all ${token.motionDurationMid}`,
- userSelect: 'none',
- [`&:hover:not(${componentCls}-disabled)`]: {
- background: token.colorTextTertiary
- }
- }), (0,style/* genFocusStyle */.Qy)(token)), {
- [`&${componentCls}-checked`]: {
- background: token.switchColor,
- [`&:hover:not(${componentCls}-disabled)`]: {
- background: token.colorPrimaryHover
- }
- },
- [`&${componentCls}-loading, &${componentCls}-disabled`]: {
- cursor: 'not-allowed',
- opacity: token.switchDisabledOpacity,
- '*': {
- boxShadow: 'none',
- cursor: 'not-allowed'
- }
- },
- // rtl style
- [`&${componentCls}-rtl`]: {
- direction: 'rtl'
- }
- })
- };
-};
-// ============================== Export ==============================
-/* harmony default export */ var switch_style = ((0,genComponentStyleHook/* default */.Z)('Switch', token => {
- const switchToken = (0,statistic/* merge */.TS)(token, {
- switchDuration: token.motionDurationMid,
- switchColor: token.colorPrimary,
- switchDisabledOpacity: token.opacityLoading,
- switchLoadingIconSize: token.fontSizeIcon * 0.75,
- switchLoadingIconColor: `rgba(0, 0, 0, ${token.opacityLoading})`,
- switchHandleActiveInset: '-30%'
- });
- return [genSwitchStyle(switchToken),
- // inner style
- genSwitchInnerStyle(switchToken),
- // handle style
- genSwitchHandleStyle(switchToken),
- // loading style
- genSwitchLoadingStyle(switchToken),
- // small style
- genSwitchSmallStyle(switchToken)];
-}, token => {
- const {
- fontSize,
- lineHeight,
- controlHeight,
- colorWhite
- } = token;
- const height = fontSize * lineHeight;
- const heightSM = controlHeight / 2;
- const padding = 2; // Fixed value
- const handleSize = height - padding * 2;
- const handleSizeSM = heightSM - padding * 2;
- return {
- trackHeight: height,
- trackHeightSM: heightSM,
- trackMinWidth: handleSize * 2 + padding * 4,
- trackMinWidthSM: handleSizeSM * 2 + padding * 2,
- trackPadding: padding,
- handleBg: colorWhite,
- handleSize,
- handleSizeSM,
- handleShadow: `0 2px 4px 0 ${new dist_module/* TinyColor */.C('#00230b').setAlpha(0.2).toRgbString()}`,
- innerMinMargin: handleSize / 2,
- innerMaxMargin: handleSize + padding + padding * 2,
- innerMinMarginSM: handleSizeSM / 2,
- innerMaxMarginSM: handleSizeSM + padding + padding * 2
- };
-}));
-;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/index.js
-"use client";
-
-var __rest = undefined && undefined.__rest || function (s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
- }
- return t;
-};
-
-
-
-
-
-
-
-
-
-
-const switch_Switch = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
- const {
- prefixCls: customizePrefixCls,
- size: customizeSize,
- disabled: customDisabled,
- loading,
- className,
- rootClassName,
- style
- } = props,
- restProps = __rest(props, ["prefixCls", "size", "disabled", "loading", "className", "rootClassName", "style"]);
- false ? 0 : void 0;
- const {
- getPrefixCls,
- direction,
- switch: SWITCH
- } = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
- // ===================== Disabled =====================
- const disabled = _react_17_0_2_react.useContext(DisabledContext/* default */.Z);
- const mergedDisabled = (customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled) || loading;
- const prefixCls = getPrefixCls('switch', customizePrefixCls);
- const loadingIcon = /*#__PURE__*/_react_17_0_2_react.createElement("div", {
- className: `${prefixCls}-handle`
- }, loading && /*#__PURE__*/_react_17_0_2_react.createElement(LoadingOutlined/* default */.Z, {
- className: `${prefixCls}-loading-icon`
- }));
- // Style
- const [wrapSSR, hashId] = switch_style(prefixCls);
- const mergedSize = (0,useSize/* default */.Z)(customizeSize);
- const classes = _classnames_2_5_1_classnames_default()(SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.className, {
- [`${prefixCls}-small`]: mergedSize === 'small',
- [`${prefixCls}-loading`]: loading,
- [`${prefixCls}-rtl`]: direction === 'rtl'
- }, className, rootClassName, hashId);
- const mergedStyle = Object.assign(Object.assign({}, SWITCH === null || SWITCH === void 0 ? void 0 : SWITCH.style), style);
- return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(wave/* default */.Z, {
- component: "Switch"
- }, /*#__PURE__*/_react_17_0_2_react.createElement(es, Object.assign({}, restProps, {
- prefixCls: prefixCls,
- className: classes,
- style: mergedStyle,
- disabled: mergedDisabled,
- ref: ref,
- loadingIcon: loadingIcon
- }))));
-});
-switch_Switch.__ANT_SWITCH = true;
-if (false) {}
-/* harmony default export */ var es_switch = (switch_Switch);
-
/***/ })
}]);
\ No newline at end of file
diff --git a/34176.async.js b/47397.async.js
similarity index 77%
rename from 34176.async.js
rename to 47397.async.js
index cfc82ec81c..71a755dcc7 100644
--- a/34176.async.js
+++ b/47397.async.js
@@ -1,5 +1,1477 @@
-"use strict";
-(self["webpackChunk"] = self["webpackChunk"] || []).push([[34176,66128,49177,67957],{
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[47397,49177,78890],{
+
+/***/ 28871:
+/*!*********************************************************!*\
+ !*** ./src/components/MathematicalGraphics/js/index.js ***!
+ \*********************************************************/
+/***/ (function(module, exports, __webpack_require__) {
+
+var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;var _typeof = (__webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/typeof.js */ 31468)["default"]);
+(function () {
+ if (typeof window.GGBApplet == "function") {
+ console.warn("deployggb.js was loaded twice");
+ return;
+ }
+ var isRenderGGBElementEnabled = false;
+ var scriptLoadStarted = false;
+ var html5AppletsToProcess = null;
+ var ggbHTML5LoadedCodebaseIsWebSimple = false;
+ var ggbHTML5LoadedCodebaseVersion = null;
+ var ggbHTML5LoadedScript = null;
+ var GGBApplet = function GGBApplet() {
+ "use strict";
+
+ var applet = {};
+ var ggbVersion = "5.0";
+ var parameters = {};
+ var views = null;
+ var html5NoWebSimple = false;
+ var html5NoWebSimpleParamExists = false;
+ var appletID = null;
+ var initComplete = false;
+ var html5OverwrittenCodebaseVersion = null;
+ var html5OverwrittenCodebase = null;
+ for (var i = 0; i < arguments.length; i++) {
+ var p = arguments[i];
+ if (p !== null) {
+ switch (_typeof(p)) {
+ case "number":
+ ggbVersion = p.toFixed(1);
+ break;
+ case "string":
+ if (p.match(new RegExp("^[0-9]\\.[0-9]+$"))) {
+ ggbVersion = p;
+ } else {
+ appletID = p;
+ }
+ break;
+ case "object":
+ if (typeof p.is3D !== "undefined") {
+ views = p;
+ } else {
+ parameters = p;
+ }
+ break;
+ case "boolean":
+ html5NoWebSimple = p;
+ html5NoWebSimpleParamExists = true;
+ break;
+ }
+ }
+ }
+ if (views === null) {
+ views = {
+ is3D: false,
+ AV: false,
+ SV: false,
+ CV: false,
+ EV2: false,
+ CP: false,
+ PC: false,
+ DA: false,
+ FI: false,
+ PV: false,
+ macro: false
+ };
+ if (parameters.material_id !== undefined && !html5NoWebSimpleParamExists) {
+ html5NoWebSimple = true;
+ }
+ }
+ if (appletID !== null && parameters.id === undefined) {
+ parameters.id = appletID;
+ }
+ var jnlpFilePath = "";
+ var html5Codebase = "";
+ var isHTML5Offline = false;
+ var loadedAppletType = null;
+ var html5CodebaseVersion = null;
+ var html5CodebaseScript = null;
+ var html5CodebaseIsWebSimple = false;
+ var previewImagePath = null;
+ var previewLoadingPath = null;
+ var previewPlayPath = null;
+ var fonts_css_url = null;
+ var jnlpBaseDir = null;
+ if (parameters.height !== undefined) {
+ parameters.height = Math.round(parameters.height);
+ }
+ if (parameters.width !== undefined) {
+ parameters.width = Math.round(parameters.width);
+ }
+ var parseVersion = function parseVersion(d) {
+ return parseFloat(d) > 4 ? parseFloat(d) : 5;
+ };
+ applet.setHTML5Codebase = function (codebase, offline) {
+ html5OverwrittenCodebase = codebase;
+ setHTML5CodebaseInternal(codebase, offline);
+ };
+ applet.setJavaCodebase = applet.setJavaCodebaseVersion = applet.isCompiledInstalled = applet.setPreCompiledScriptPath = applet.setPreCompiledResourcePath = function () {};
+ applet.setHTML5CodebaseVersion = function (version, offline) {
+ var numVersion = parseFloat(version);
+ if (numVersion !== NaN && numVersion < 5) {
+ console.log("The GeoGebra HTML5 codebase version " + numVersion + " is deprecated. Using version latest instead.");
+ return;
+ }
+ html5OverwrittenCodebaseVersion = version;
+ setDefaultHTML5CodebaseForVersion(version, offline);
+ };
+ applet.getHTML5CodebaseVersion = function () {
+ return html5CodebaseVersion;
+ };
+ applet.getParameters = function () {
+ return parameters;
+ };
+ applet.setFontsCSSURL = function (url) {
+ fonts_css_url = url;
+ };
+ applet.setGiacJSURL = function (url) {};
+ applet.setJNLPFile = function (newJnlpFilePath) {
+ jnlpFilePath = newJnlpFilePath;
+ };
+ applet.setJNLPBaseDir = function (baseDir) {};
+ applet.inject = function () {
+ function isOwnIFrame() {
+ return window.frameElement && window.frameElement.getAttribute("data-singleton");
+ }
+ var type = "auto";
+ var container_ID = parameters.id;
+ var container;
+ var noPreview = false;
+ for (var i = 0; i < arguments.length; i++) {
+ var p = arguments[i];
+ if (typeof p === "string") {
+ p = p.toLowerCase();
+ if (p.match(/^(prefer)?(java|html5|compiled|auto|screenshot)$/)) {
+ type = p;
+ } else {
+ container_ID = arguments[i];
+ }
+ } else if (typeof p === "boolean") {
+ noPreview = p;
+ } else if (p instanceof HTMLElement) {
+ container = p;
+ }
+ }
+ continueInject();
+ function continueInject() {
+ if (!initComplete) {
+ setTimeout(continueInject, 200);
+ return;
+ }
+ type = detectAppletType(type);
+ var appletElem = container || document.getElementById(container_ID);
+ if (!appletElem) {
+ console.log("possibly bug on ajax loading? ");
+ return;
+ }
+ applet.removeExistingApplet(appletElem, false);
+ if (parameters.width === undefined && appletElem.clientWidth) {
+ parameters.width = appletElem.clientWidth;
+ }
+ if (parameters.height === undefined && appletElem.clientHeight) {
+ parameters.height = appletElem.clientHeight;
+ }
+ if (!(parameters.width && parameters.height) && type === "html5") {
+ delete parameters.width;
+ delete parameters.height;
+ }
+ loadedAppletType = type;
+ if (type === "screenshot") {
+ injectScreenshot(appletElem, parameters);
+ } else {
+ var playButton = false;
+ if (parameters.hasOwnProperty("playButton") && parameters.playButton || parameters.hasOwnProperty("clickToLoad") && parameters.clickToLoad) {
+ playButton = true;
+ } else if (parameters.hasOwnProperty("playButtonAutoDecide") && parameters.playButtonAutoDecide) {
+ playButton = (!isInIframe() || isOwnIFrame()) && isMobileDevice();
+ }
+ if (playButton) {
+ loadedAppletType = "screenshot";
+ injectPlayButton(appletElem, parameters, noPreview, type);
+ } else {
+ injectHTML5Applet(appletElem, parameters, noPreview);
+ }
+ }
+ }
+ return;
+ };
+ function isInIframe() {
+ try {
+ return window.self !== window.top;
+ } catch (e) {
+ return true;
+ }
+ }
+ function isMobileDevice() {
+ if (parameters.hasOwnProperty("screenshotGenerator") && parameters.screenshotGenerator) {
+ return false;
+ }
+ return Math.max(screen.width, screen.height) < 800;
+ }
+ applet.getViews = function () {
+ return views;
+ };
+ applet.isJavaInstalled = function () {
+ return false;
+ };
+ var fetchParametersFromApi = function fetchParametersFromApi(successCallback) {
+ var onSuccess = function onSuccess(text) {
+ var jsonData = JSON.parse(text);
+ var isGeoGebra = function isGeoGebra(element) {
+ return element.type == "G" || element.type == "E";
+ };
+ var item = jsonData.elements ? jsonData.elements.filter(isGeoGebra)[0] : jsonData;
+ if (!item || !item.url) {
+ onError();
+ return;
+ }
+ parameters.fileName = item.url;
+ updateAppletSettings(item.settings || {});
+ views.is3D = true;
+ var imageDir = "https://www.geogebra.org/images/";
+ applet.setPreviewImage(previewImagePath || item.previewUrl, imageDir + "GeoGebra_loading.png", imageDir + "applet_play.png");
+ successCallback();
+ };
+ var onError = function onError() {
+ parameters.onError && parameters.onError();
+ log("Error: Fetching material (id " + parameters.material_id + ") failed.", parameters);
+ };
+ var host = location.host.match(/(www|stage|beta|groot|alpha).geogebra.(org|net)/) ? location.host : "www.geogebra.org";
+ var path = "/materials/" + parameters.material_id + "?scope=basic";
+ sendCorsRequest("https://" + host + "/api/proxy.php?path=" + encodeURIComponent(path), onSuccess, onError);
+ };
+ function updateAppletSettings(settings) {
+ var parameterNames = ["width", "height", "showToolBar", "showMenuBar", "showAlgebraInput", "allowStyleBar", "showResetIcon", "enableLabelDrags", "enableShiftDragZoom", "enableRightClick", "appName"];
+ ["enableLabelDrags", "enableShiftDragZoom", "enableRightClick"].forEach(function (name) {
+ settings[name] = !!settings[name];
+ });
+ parameterNames.forEach(function (name) {
+ if (parameters[name] === undefined && settings[name] !== undefined) {
+ parameters[name] = settings[name];
+ }
+ });
+ if (parameters.showToolBarHelp === undefined) {
+ parameters.showToolBarHelp = parameters.showToolBar;
+ }
+ }
+ function sendCorsRequest(url, onSuccess, onError) {
+ var xhr = new XMLHttpRequest();
+ xhr.open("GET", url);
+ xhr.onload = function () {
+ onSuccess(xhr.responseText);
+ };
+ xhr.onerror = onError;
+ xhr.send();
+ }
+ applet.isHTML5Installed = function () {
+ return true;
+ };
+ applet.getLoadedAppletType = function () {
+ return loadedAppletType;
+ };
+ applet.setPreviewImage = function (previewFilePath, loadingFilePath, playFilePath) {
+ previewImagePath = previewFilePath;
+ previewLoadingPath = loadingFilePath;
+ previewPlayPath = playFilePath;
+ };
+ applet.removeExistingApplet = function (appletParent, showScreenshot) {
+ var i;
+ if (typeof appletParent === "string") {
+ appletParent = document.getElementById(appletParent);
+ }
+ loadedAppletType = null;
+ var removedID = null;
+ for (i = 0; i < appletParent.childNodes.length; i++) {
+ var currentChild = appletParent.childNodes[i];
+ var className = currentChild.className;
+ if (className === "applet_screenshot") {
+ if (showScreenshot) {
+ currentChild.style.display = "block";
+ loadedAppletType = "screenshot";
+ } else {
+ currentChild.style.display = "none";
+ }
+ } else if (className !== "applet_scaler prerender") {
+ appletParent.removeChild(currentChild);
+ removedID = className && className.indexOf("appletParameters") != -1 ? currentChild.id : null;
+ i--;
+ }
+ }
+ var appName = parameters.id !== undefined ? parameters.id : removedID;
+ var app = window[appName];
+ if (app && typeof app.getBase64 === "function") {
+ app.remove();
+ window[appName] = null;
+ }
+ };
+ applet.refreshHitPoints = function () {
+ if (parseVersion(ggbHTML5LoadedCodebaseVersion) >= 5) {
+ return true;
+ }
+ var app = applet.getAppletObject();
+ if (app) {
+ if (typeof app.recalculateEnvironments === "function") {
+ app.recalculateEnvironments();
+ return true;
+ }
+ }
+ return false;
+ };
+ applet.startAnimation = function () {
+ var app = applet.getAppletObject();
+ if (app) {
+ if (typeof app.startAnimation === "function") {
+ app.startAnimation();
+ return true;
+ }
+ }
+ return false;
+ };
+ applet.stopAnimation = function () {
+ var app = applet.getAppletObject();
+ if (app) {
+ if (typeof app.stopAnimation === "function") {
+ app.stopAnimation();
+ return true;
+ }
+ }
+ return false;
+ };
+ applet.getAppletObject = function () {
+ var appName = parameters.id !== undefined ? parameters.id : "ggbApplet";
+ return window[appName];
+ };
+ applet.resize = function () {};
+ var appendParam = function appendParam(applet, name, value) {
+ var param = document.createElement("param");
+ param.setAttribute("name", name);
+ param.setAttribute("value", value);
+ applet.appendChild(param);
+ };
+ var valBoolean = function valBoolean(value) {
+ return value && value !== "false";
+ };
+ var injectHTML5Applet = function injectHTML5Applet(appletElem, parameters, noPreview) {
+ if (parseVersion(html5CodebaseVersion) <= 4.2) {
+ noPreview = true;
+ }
+ var loadScript = !isRenderGGBElementEnabled && !scriptLoadStarted;
+ if (!isRenderGGBElementEnabled && !scriptLoadStarted || ggbHTML5LoadedCodebaseVersion !== html5CodebaseVersion || ggbHTML5LoadedCodebaseIsWebSimple && !html5CodebaseIsWebSimple) {
+ loadScript = true;
+ isRenderGGBElementEnabled = false;
+ scriptLoadStarted = false;
+ }
+ var article = document.createElement("div");
+ article.classList.add("appletParameters", "notranslate");
+ var oriWidth = parameters.width;
+ var oriHeight = parameters.height;
+ parameters.disableAutoScale = parameters.disableAutoScale === undefined ? GGBAppletUtils.isFlexibleWorksheetEditor() : parameters.disableAutoScale;
+ if (parameters.width !== undefined) {
+ if (parseVersion(html5CodebaseVersion) <= 4.4) {
+ if (valBoolean(parameters.showToolBar)) {
+ parameters.height -= 7;
+ }
+ if (valBoolean(parameters.showAlgebraInput)) {
+ parameters.height -= 37;
+ }
+ if (parameters.width < 605 && valBoolean(parameters.showToolBar)) {
+ parameters.width = 605;
+ oriWidth = 605;
+ }
+ } else {
+ var minWidth = 100;
+ if (valBoolean(parameters.showToolBar) || valBoolean(parameters.showMenuBar)) {
+ if (parameters.hasOwnProperty("customToolBar")) {
+ parameters.customToolbar = parameters.customToolBar;
+ }
+ minWidth = valBoolean(parameters.showMenuBar) ? 245 : 155;
+ }
+ if (oriWidth < minWidth) {
+ parameters.width = minWidth;
+ oriWidth = minWidth;
+ }
+ }
+ }
+ article.style.border = "none";
+ article.style.display = "inline-block";
+ for (var key in parameters) {
+ if (parameters.hasOwnProperty(key) && key !== "appletOnLoad") {
+ article.setAttribute("data-param-" + key, parameters[key]);
+ }
+ }
+ if (fonts_css_url) {
+ article.setAttribute("data-param-fontscssurl", fonts_css_url);
+ }
+ applet.resize = function () {
+ GGBAppletUtils.responsiveResize(appletElem, parameters);
+ };
+ window.addEventListener("resize", function (evt) {
+ applet.resize();
+ });
+ var oriAppletOnload = typeof parameters.appletOnLoad === "function" ? parameters.appletOnLoad : function () {};
+ if (!noPreview && parameters.width !== undefined) {
+ if (!parameters.hasOwnProperty("showSplash")) {
+ article.setAttribute("data-param-showSplash", "false");
+ }
+ var previewPositioner = appletElem.querySelector(".applet_scaler.prerender");
+ var preRendered = previewPositioner !== null;
+ if (!preRendered) {
+ var previewContainer = createScreenShotDiv(oriWidth, oriHeight, parameters.borderColor, false);
+ previewPositioner = document.createElement("div");
+ previewPositioner.className = "applet_scaler";
+ previewPositioner.style.position = "relative";
+ previewPositioner.style.display = "block";
+ previewPositioner.style.width = oriWidth + "px";
+ previewPositioner.style.height = oriHeight + "px";
+ } else {
+ var previewContainer = previewPositioner.querySelector(".ggb_preview");
+ }
+ if (window.GGBT_spinner) {
+ window.GGBT_spinner.attachSpinner(previewPositioner, "66%");
+ }
+ if (parseVersion(html5CodebaseVersion) >= 5) {
+ parameters.appletOnLoad = function (api) {
+ var preview = appletElem.querySelector(".ggb_preview");
+ if (preview) {
+ preview.parentNode.removeChild(preview);
+ }
+ if (window.GGBT_spinner) {
+ window.GGBT_spinner.removeSpinner(previewPositioner);
+ }
+ if (window.GGBT_wsf_view) {
+ $(window).trigger("resize");
+ }
+ oriAppletOnload(api);
+ };
+ if (!preRendered) {
+ previewPositioner.appendChild(previewContainer);
+ }
+ } else {
+ article.appendChild(previewContainer);
+ }
+ previewPositioner.appendChild(article);
+ if (!preRendered) {
+ appletElem.appendChild(previewPositioner);
+ }
+ setTimeout(function () {
+ applet.resize();
+ }, 1);
+ } else {
+ var appletScaler = document.createElement("div");
+ appletScaler.className = "applet_scaler";
+ appletScaler.style.position = "relative";
+ appletScaler.style.display = "block";
+ appletScaler.appendChild(article);
+ appletElem.appendChild(appletScaler);
+ parameters.appletOnLoad = function (api) {
+ applet.resize();
+ oriAppletOnload(api);
+ };
+ }
+ function renderGGBElementWithParams(article, parameters) {
+ if (parameters && typeof parameters.appletOnLoad === "function" && typeof renderGGBElement === "function") {
+ renderGGBElement(article, parameters.appletOnLoad);
+ } else {
+ renderGGBElement(article);
+ }
+ log("GeoGebra HTML5 applet injected and rendered with previously loaded codebase.", parameters);
+ }
+ function renderGGBElementOnTube(a, parameters) {
+ if (typeof renderGGBElement === "undefined") {
+ if (html5AppletsToProcess === null) {
+ html5AppletsToProcess = [];
+ }
+ html5AppletsToProcess.push({
+ article: a,
+ params: parameters
+ });
+ window.renderGGBElementReady = function () {
+ isRenderGGBElementEnabled = true;
+ if (html5AppletsToProcess !== null && html5AppletsToProcess.length) {
+ html5AppletsToProcess.forEach(function (obj) {
+ renderGGBElementWithParams(obj.article, obj.params);
+ });
+ html5AppletsToProcess = null;
+ }
+ };
+ if (parseVersion(html5CodebaseVersion) < 5) {
+ a.className += " geogebraweb";
+ }
+ } else {
+ renderGGBElementWithParams(a, parameters);
+ }
+ }
+ if (loadScript) {
+ scriptLoadStarted = true;
+ for (var i = 0; i < article.childNodes.length; i++) {
+ var tag = article.childNodes[i].tagName;
+ if (tag === "TABLE") {
+ article.removeChild(article.childNodes[i]);
+ i--;
+ }
+ }
+ if (ggbHTML5LoadedScript !== null) {
+ var el = document.querySelector('script[src="' + ggbHTML5LoadedScript + '"]');
+ if (el !== undefined && el !== null) {
+ el.parentNode.removeChild(el);
+ }
+ }
+ var script = document.createElement("script");
+ var scriptLoaded = function scriptLoaded() {
+ renderGGBElementOnTube(article, parameters);
+ };
+ script.src = html5Codebase + html5CodebaseScript;
+ ggbHTML5LoadedCodebaseIsWebSimple = html5CodebaseIsWebSimple;
+ ggbHTML5LoadedCodebaseVersion = html5CodebaseVersion;
+ ggbHTML5LoadedScript = script.src;
+ log("GeoGebra HTML5 codebase loaded: '" + html5Codebase + "'.", parameters);
+ if (!html5OverwrittenCodebase && (!html5OverwrittenCodebaseVersion || html5OverwrittenCodebaseVersion == "5.0")) {
+ if (html5CodebaseIsWebSimple) {
+ webSimple.succeeded = webSimple.succeeded || webSimple();
+ } else {
+ web3d.succeeded = web3d.succeeded || web3d();
+ }
+ scriptLoaded();
+ } else if (html5Codebase.requirejs) {
+ __webpack_require__.e(/*! AMD require */ 53893).then(function() { var __WEBPACK_AMD_REQUIRE_ARRAY__ = [__webpack_require__(/*! ./web3d */ 53893)]; (scriptLoaded).apply(null, __WEBPACK_AMD_REQUIRE_ARRAY__);}.bind(this))['catch'](__webpack_require__.oe);
+ } else {
+ script.onload = scriptLoaded;
+ appletElem.appendChild(script);
+ }
+ } else {
+ renderGGBElementOnTube(article, parameters);
+ }
+ parameters.height = oriHeight;
+ parameters.width = oriWidth;
+ };
+ var injectScreenshot = function injectScreenshot(appletElem, parameters, showPlayButton) {
+ var previewContainer = createScreenShotDiv(parameters.width, parameters.height, parameters.borderColor, showPlayButton);
+ var previewPositioner = document.createElement("div");
+ previewPositioner.style.position = "relative";
+ previewPositioner.style.display = "block";
+ previewPositioner.style.width = parameters.width + "px";
+ previewPositioner.style.height = parameters.height + "px";
+ previewPositioner.className = "applet_screenshot applet_scaler" + (showPlayButton ? " applet_screenshot_play" : "");
+ previewPositioner.appendChild(previewContainer);
+ var scale = GGBAppletUtils.getScale(parameters, appletElem, showPlayButton);
+ if (showPlayButton) {
+ appletElem.appendChild(getPlayButton());
+ if (!window.GGBT_wsf_view) {
+ appletElem.style.position = "relative";
+ }
+ } else if (window.GGBT_spinner) {
+ window.GGBT_spinner.attachSpinner(previewPositioner, "66%");
+ }
+ appletElem.appendChild(previewPositioner);
+ if (scale !== 1 && !isNaN(scale)) {
+ GGBAppletUtils.scaleElement(previewPositioner, scale);
+ previewPositioner.style.width = parameters.width + "px";
+ previewPositioner.style.height = parameters.height + "px";
+ previewPositioner.parentNode.style.width = parameters.width * scale + "px";
+ previewPositioner.parentNode.style.height = parameters.height * scale + "px";
+ }
+ applet.resize = function () {
+ resizeScreenshot(appletElem, previewContainer, previewPositioner, showPlayButton);
+ };
+ window.addEventListener("resize", function (evt) {
+ applet.resize();
+ });
+ applet.resize();
+ };
+ function resizeScreenshot(appletElem, previewContainer, previewPositioner, showPlayButton) {
+ if (!appletElem.contains(previewContainer)) {
+ return;
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ if (appletElem.id !== "fullscreencontent") {
+ return;
+ }
+ window.GGBT_wsf_view.setCloseBtnPosition(appletElem);
+ }
+ var scale = GGBAppletUtils.getScale(parameters, appletElem, showPlayButton);
+ if (previewPositioner.parentNode !== null) {
+ if (!isNaN(scale) && scale !== 1) {
+ GGBAppletUtils.scaleElement(previewPositioner, scale);
+ previewPositioner.parentNode.style.width = parameters.width * scale + "px";
+ previewPositioner.parentNode.style.height = parameters.height * scale + "px";
+ } else {
+ GGBAppletUtils.scaleElement(previewPositioner, 1);
+ previewPositioner.parentNode.style.width = parameters.width + "px";
+ previewPositioner.parentNode.style.height = parameters.height + "px";
+ }
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ GGBAppletUtils.positionCenter(appletElem);
+ }
+ if (_typeof(window.GGBT_ws_header_footer) === "object") {
+ window.GGBT_ws_header_footer.setWsScrollerHeight();
+ }
+ }
+ applet.onExitFullscreen = function (fullscreenContainer, appletElem) {
+ appletElem.appendChild(fullscreenContainer);
+ };
+ var injectPlayButton = function injectPlayButton(appletElem, parameters, noPreview, type) {
+ injectScreenshot(appletElem, parameters, true);
+ var play = function play() {
+ var elems = [];
+ for (i = 0; i < appletElem.childNodes.length; i++) {
+ elems.push(appletElem.childNodes[i]);
+ }
+ if (window.GGBT_wsf_view) {
+ var content = window.GGBT_wsf_view.renderFullScreen(appletElem, parameters.id);
+ var container = document.getElementById("fullscreencontainer");
+ var oldcontent = jQuery(appletElem).find(".fullscreencontent");
+ if (oldcontent.length > 0) {
+ content.remove();
+ oldcontent.attr("id", "fullscreencontent").show();
+ jQuery(container).append(oldcontent);
+ window.dispatchEvent(new Event("resize"));
+ } else {
+ injectHTML5Applet(content, parameters, false);
+ }
+ window.GGBT_wsf_view.launchFullScreen(container);
+ } else {
+ loadedAppletType = type;
+ injectHTML5Applet(appletElem, parameters, false);
+ }
+ if (!window.GGBT_wsf_view) {
+ for (i = 0; i < elems.length; i++) {
+ appletElem.removeChild(elems[i]);
+ }
+ }
+ };
+ var imgs = appletElem.getElementsByClassName("ggb_preview_play");
+ for (var i = 0; i < imgs.length; i++) {
+ imgs[i].addEventListener("click", play, false);
+ imgs[i].addEventListener("ontouchstart", play, false);
+ }
+ if (typeof window.ggbAppletPlayerOnload === "function") {
+ window.ggbAppletPlayerOnload(appletElem);
+ }
+ if (isMobileDevice() && window.GGBT_wsf_view) {
+ $(".wsf-element-fullscreen-button").remove();
+ }
+ };
+ var getPlayButton = function getPlayButton() {
+ var playButtonContainer = document.createElement("div");
+ playButtonContainer.className = "ggb_preview_play icon-applet-play";
+ if (!window.GGBT_wsf_view) {
+ var css = "" + ".icon-applet-play {" + " width: 100%;" + " height: 100%;box-sizing: border-box;position: absolute;z-index: 1001;cursor: pointer;border-width: 0px;" + " background-color: transparent;background-repeat: no-repeat;left: 0;top: 0;background-position: center center;" + ' background-image: url("https://www.geogebra.org/images/worksheet/icon-start-applet.png");' + "}" + ".icon-applet-play:hover {" + 'background-image: url("https://www.geogebra.org/images/worksheet/icon-start-applet-hover.png");' + "}";
+ var style = document.createElement("style");
+ if (style.styleSheet) {
+ style.styleSheet.cssText = css;
+ } else {
+ style.appendChild(document.createTextNode(css));
+ }
+ document.getElementsByTagName("head")[0].appendChild(style);
+ }
+ return playButtonContainer;
+ };
+ var createScreenShotDiv = function createScreenShotDiv(oriWidth, oriHeight, borderColor, showPlayButton) {
+ var previewContainer = document.createElement("div");
+ previewContainer.className = "ggb_preview";
+ previewContainer.style.position = "absolute";
+ previewContainer.style.zIndex = "90";
+ previewContainer.style.width = oriWidth - 2 + "px";
+ previewContainer.style.height = oriHeight - 2 + "px";
+ previewContainer.style.top = "0px";
+ previewContainer.style.left = "0px";
+ previewContainer.style.overflow = "hidden";
+ previewContainer.style.backgroundColor = "white";
+ var bc = "lightgrey";
+ if (borderColor !== undefined) {
+ if (borderColor === "none") {
+ bc = "transparent";
+ } else {
+ bc = borderColor;
+ }
+ }
+ previewContainer.style.border = "1px solid " + bc;
+ var preview = document.createElement("img");
+ preview.style.position = "relative";
+ preview.style.zIndex = "1000";
+ preview.style.top = "-1px";
+ preview.style.left = "-1px";
+ if (previewImagePath !== null) {
+ preview.setAttribute("src", previewImagePath);
+ }
+ preview.style.opacity = .7;
+ if (previewLoadingPath !== null) {
+ var previewOverlay;
+ var pWidth, pHeight;
+ if (!showPlayButton) {
+ previewOverlay = document.createElement("img");
+ previewOverlay.style.position = "absolute";
+ previewOverlay.style.zIndex = "1001";
+ previewOverlay.style.opacity = 1;
+ preview.style.opacity = .3;
+ pWidth = 360;
+ if (pWidth > oriWidth / 4 * 3) {
+ pWidth = oriWidth / 4 * 3;
+ }
+ pHeight = pWidth / 5.8;
+ previewOverlay.setAttribute("src", previewLoadingPath);
+ previewOverlay.setAttribute("width", pWidth);
+ previewOverlay.setAttribute("height", pHeight);
+ var pX = (oriWidth - pWidth) / 2;
+ var pY = (oriHeight - pHeight) / 2;
+ previewOverlay.style.left = pX + "px";
+ previewOverlay.style.top = pY + "px";
+ previewContainer.appendChild(previewOverlay);
+ }
+ }
+ previewContainer.appendChild(preview);
+ return previewContainer;
+ };
+ var detectAppletType = function detectAppletType(preferredType) {
+ preferredType = preferredType.toLowerCase();
+ if (preferredType === "html5" || preferredType === "screenshot") {
+ return preferredType;
+ }
+ return "html5";
+ };
+ var modules = ["web", "webSimple", "web3d", "tablet", "tablet3d", "phone"];
+ var setDefaultHTML5CodebaseForVersion = function setDefaultHTML5CodebaseForVersion(version, offline) {
+ html5CodebaseVersion = version;
+ if (offline) {
+ setHTML5CodebaseInternal(html5CodebaseVersion, true);
+ return;
+ }
+ var hasWebSimple = !html5NoWebSimple;
+ if (hasWebSimple) {
+ var v = parseVersion(html5CodebaseVersion);
+ if (!isNaN(v) && v < 4.4) {
+ hasWebSimple = false;
+ }
+ }
+ var protocol, codebase;
+ if (window.location.protocol.substr(0, 4) === "http") {
+ protocol = window.location.protocol;
+ } else {
+ protocol = "http:";
+ }
+ var index = html5CodebaseVersion.indexOf("//");
+ if (index > 0) {
+ codebase = html5CodebaseVersion;
+ } else if (index === 0) {
+ codebase = protocol + html5CodebaseVersion;
+ } else {
+ codebase = "https://www.geogebra.org/apps/5.2.814.0/";
+ }
+ for (var key in modules) {
+ if (html5CodebaseVersion.slice(modules[key].length * -1) === modules[key] || html5CodebaseVersion.slice((modules[key].length + 1) * -1) === modules[key] + "/") {
+ setHTML5CodebaseInternal(codebase, false);
+ return;
+ }
+ }
+ if (!GGBAppletUtils.isFlexibleWorksheetEditor() && hasWebSimple && !views.is3D && !views.AV && !views.SV && !views.CV && !views.EV2 && !views.CP && !views.PC && !views.DA && !views.FI && !views.PV && !valBoolean(parameters.showToolBar) && !valBoolean(parameters.showMenuBar) && !valBoolean(parameters.showAlgebraInput) && !valBoolean(parameters.enableRightClick) && (!parameters.appName || parameters.appName == "classic")) {
+ codebase += "webSimple/";
+ } else {
+ codebase += "web3d/";
+ }
+ setHTML5CodebaseInternal(codebase, false);
+ };
+ var setHTML5CodebaseInternal = function setHTML5CodebaseInternal(codebase, offline) {
+ if (codebase.requirejs) {
+ html5Codebase = codebase;
+ return;
+ }
+ if (codebase.slice(-1) !== "/") {
+ codebase += "/";
+ }
+ html5Codebase = codebase;
+ if (offline === null) {
+ offline = codebase.indexOf("http") === -1;
+ }
+ isHTML5Offline = offline;
+ html5CodebaseScript = "web.nocache.js";
+ html5CodebaseIsWebSimple = false;
+ var folders = html5Codebase.split("/");
+ if (folders.length > 1) {
+ if (!offline && folders[folders.length - 2] === "webSimple") {
+ html5CodebaseScript = "webSimple.nocache.js";
+ html5CodebaseIsWebSimple = true;
+ } else if (modules.indexOf(folders[folders.length - 2]) >= 0) {
+ html5CodebaseScript = folders[folders.length - 2] + ".nocache.js";
+ }
+ }
+ folders = codebase.split("/");
+ html5CodebaseVersion = folders[folders.length - 3];
+ if (html5CodebaseVersion.substr(0, 4) === "test") {
+ html5CodebaseVersion = html5CodebaseVersion.substr(4, 1) + "." + html5CodebaseVersion.substr(5, 1);
+ } else if (html5CodebaseVersion.substr(0, 3) === "war" || html5CodebaseVersion.substr(0, 4) === "beta") {
+ html5CodebaseVersion = "5.0";
+ }
+ var numVersion = parseFloat(html5CodebaseVersion);
+ if (numVersion !== NaN && numVersion < 5 && codebase.indexOf("geogebra.org") >= 0) {
+ console.log("The GeoGebra HTML5 codebase version " + numVersion + " is deprecated. Using version latest instead.");
+ setDefaultHTML5CodebaseForVersion("5.0", offline);
+ }
+ };
+ var log = function log(text, parameters) {
+ if (window.console && window.console.log) {
+ if (!parameters || typeof parameters.showLogging === "undefined" || parameters.showLogging && parameters.showLogging !== "false") {
+ console.log(text);
+ }
+ }
+ };
+ if (parameters.material_id !== undefined) {
+ fetchParametersFromApi(continueInit);
+ } else {
+ continueInit();
+ }
+ function continueInit() {
+ var html5Version = ggbVersion;
+ if (html5OverwrittenCodebaseVersion !== null) {
+ html5Version = html5OverwrittenCodebaseVersion;
+ } else {
+ if (parseFloat(html5Version) < 5) {
+ html5Version = "5.0";
+ }
+ }
+ setDefaultHTML5CodebaseForVersion(html5Version, false);
+ if (html5OverwrittenCodebase !== null) {
+ setHTML5CodebaseInternal(html5OverwrittenCodebase, isHTML5Offline);
+ }
+ initComplete = true;
+ }
+ return applet;
+ };
+ var GGBAppletUtils = function () {
+ "use strict";
+
+ function isFlexibleWorksheetEditor() {
+ return window.GGBT_wsf_edit !== undefined;
+ }
+ function scaleElement(el, scale) {
+ if (scale != 1) {
+ el.style.transformOrigin = "0% 0% 0px";
+ el.style.webkitTransformOrigin = "0% 0% 0px";
+ el.style.transform = "scale(" + scale + "," + scale + ")";
+ el.style.webkitTransform = "scale(" + scale + "," + scale + ")";
+ el.style.maxWidth = "initial";
+ if (el.querySelector(".ggb_preview") !== null) {
+ el.querySelector(".ggb_preview").style.maxWidth = "initial";
+ }
+ if (el.querySelectorAll(".ggb_preview img")[0] !== undefined) {
+ el.querySelectorAll(".ggb_preview img")[0].style.maxWidth = "initial";
+ }
+ if (el.querySelectorAll(".ggb_preview img")[1] !== undefined) {
+ el.querySelectorAll(".ggb_preview img")[1].style.maxWidth = "initial";
+ }
+ } else {
+ el.style.transform = "none";
+ el.style.webkitTransform = "none";
+ }
+ }
+ function getWidthHeight(appletElem, appletWidth, allowUpscale, autoHeight, noBorder, scaleContainerClass) {
+ var container = null;
+ if (scaleContainerClass != undefined && scaleContainerClass != "") {
+ var parent = appletElem.parentNode;
+ while (parent != null) {
+ if ((" " + parent.className + " ").indexOf(" " + scaleContainerClass + " ") > -1) {
+ container = parent;
+ break;
+ } else {
+ parent = parent.parentNode;
+ }
+ }
+ }
+ var myWidth = 0,
+ myHeight = 0,
+ windowWidth = 0,
+ border = 0,
+ borderRight = 0,
+ borderLeft = 0,
+ borderTop = 0;
+ if (container) {
+ myWidth = container.offsetWidth;
+ myHeight = Math.max(autoHeight ? container.offsetWidth : 0, container.offsetHeight);
+ } else {
+ if (window.innerWidth && document.documentElement.clientWidth) {
+ myWidth = Math.min(window.innerWidth, document.documentElement.clientWidth);
+ myHeight = Math.min(window.innerHeight, document.documentElement.clientHeight);
+ windowWidth = myWidth;
+ } else {
+ myWidth = window.innerWidth;
+ myHeight = window.innerHeight;
+ windowWidth = window.innerWidth;
+ }
+ if (appletElem) {
+ var rect = appletElem.getBoundingClientRect();
+ if (rect.left > 0) {
+ if (rect.left <= myWidth && (noBorder === undefined || !noBorder)) {
+ if (document.dir === "rtl") {
+ borderRight = myWidth - rect.width - rect.left;
+ borderLeft = windowWidth <= 480 ? 10 : 30;
+ } else {
+ borderLeft = rect.left;
+ borderRight = windowWidth <= 480 ? 10 : 30;
+ }
+ border = borderLeft + borderRight;
+ }
+ }
+ }
+ if (appletElem && _typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ var appletRect = appletElem.getBoundingClientRect();
+ if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionRight") {
+ border = 40;
+ borderTop = 0;
+ } else if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionTop") {
+ border = 0;
+ borderTop = 40;
+ }
+ }
+ }
+ if (appletElem) {
+ if ((allowUpscale === undefined || !allowUpscale) && appletWidth > 0 && appletWidth + border < myWidth) {
+ myWidth = appletWidth;
+ } else {
+ myWidth -= border;
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen() && (allowUpscale === undefined || !allowUpscale)) {
+ myHeight -= borderTop;
+ }
+ }
+ return {
+ width: myWidth,
+ height: myHeight
+ };
+ }
+ function calcScale(parameters, appletElem, allowUpscale, showPlayButton, scaleContainerClass) {
+ if (parameters.isScreenshoGenerator) {
+ return 1;
+ }
+ var ignoreHeight = showPlayButton !== undefined && showPlayButton;
+ var noScaleMargin = parameters.noScaleMargin != undefined && parameters.noScaleMargin;
+ var valBoolean = function valBoolean(value) {
+ return value && value !== "false";
+ };
+ var autoHeight = valBoolean(parameters.autoHeight);
+ var windowSize = getWidthHeight(appletElem, parameters.width, allowUpscale, autoHeight, ignoreHeight && window.GGBT_wsf_view || noScaleMargin, scaleContainerClass);
+ var windowWidth = parseInt(windowSize.width);
+ var appletWidth = parameters.width;
+ var appletHeight = parameters.height;
+ if (appletWidth === undefined) {
+ var article = appletElem.querySelector(".appletParameters");
+ if (article) {
+ appletWidth = article.offsetWidth;
+ appletHeight = article.offsetHeight;
+ }
+ }
+ var xscale = windowWidth / appletWidth;
+ var yscale = ignoreHeight ? 1 : windowSize.height / appletHeight;
+ if (allowUpscale !== undefined && !allowUpscale) {
+ xscale = Math.min(1, xscale);
+ yscale = Math.min(1, yscale);
+ }
+ return Math.min(xscale, yscale);
+ }
+ function getScale(parameters, appletElem, showPlayButton) {
+ var scale = 1,
+ autoScale,
+ allowUpscale = false;
+ if (parameters.hasOwnProperty("allowUpscale")) {
+ allowUpscale = parameters.allowUpscale;
+ }
+ if (parameters.hasOwnProperty("scale")) {
+ scale = parseFloat(parameters.scale);
+ if (isNaN(scale) || scale === null || scale === 0) {
+ scale = 1;
+ }
+ if (scale > 1) {
+ allowUpscale = true;
+ }
+ }
+ if (appletElem && _typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ allowUpscale = true;
+ }
+ if (!(parameters.hasOwnProperty("disableAutoScale") && parameters.disableAutoScale)) {
+ autoScale = calcScale(parameters, appletElem, allowUpscale, showPlayButton, parameters.scaleContainerClass);
+ } else {
+ return scale;
+ }
+ if (allowUpscale && (!parameters.hasOwnProperty("scale") || scale === 1)) {
+ return autoScale;
+ } else {
+ return Math.min(scale, autoScale);
+ }
+ }
+ function positionCenter(appletElem) {
+ var windowWidth = Math.min(window.innerWidth, document.documentElement.clientWidth);
+ var windowHeight = Math.min(window.innerHeight, document.documentElement.clientHeight);
+ var appletRect = appletElem.getBoundingClientRect();
+ var calcHorizontalBorder = (windowWidth - appletRect.width) / 2;
+ var calcVerticalBorder = (windowHeight - appletRect.height) / 2;
+ if (calcVerticalBorder < 0) {
+ calcVerticalBorder = 0;
+ }
+ appletElem.style.position = "relative";
+ if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionRight") {
+ if (calcHorizontalBorder < 40) {
+ appletElem.style.left = "40px";
+ } else {
+ appletElem.style.left = calcHorizontalBorder + "px";
+ }
+ appletElem.style.top = calcVerticalBorder + "px";
+ } else if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionTop") {
+ if (calcVerticalBorder < 40) {
+ appletElem.style.top = "40px";
+ } else {
+ appletElem.style.top = calcVerticalBorder + "px";
+ }
+ appletElem.style.left = calcHorizontalBorder + "px";
+ }
+ }
+ function responsiveResize(appletElem, parameters) {
+ var article = appletElem.querySelector(".appletParameters");
+ if (article) {
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ if (parameters.id !== article.getAttribute("data-param-id")) {
+ return;
+ }
+ window.GGBT_wsf_view.setCloseBtnPosition(appletElem);
+ }
+ if (article.parentElement && /fullscreen/.test(article.parentElement.className)) {
+ return;
+ }
+ var scale = getScale(parameters, appletElem);
+ if (isFlexibleWorksheetEditor()) {
+ article.setAttribute("data-param-scale", scale);
+ }
+ var scaleElem = null;
+ for (var i = 0; i < appletElem.childNodes.length; i++) {
+ if (appletElem.childNodes[i].className !== undefined && appletElem.childNodes[i].className.match(/^applet_scaler/)) {
+ scaleElem = appletElem.childNodes[i];
+ break;
+ }
+ }
+ if (scaleElem !== null && scaleElem.querySelector(".noscale") !== null) {
+ return;
+ }
+ var appName = parameters.id !== undefined ? parameters.id : "ggbApplet";
+ var app = window[appName];
+ if ((app == null || !app.recalculateEnvironments) && scaleElem !== null && !scaleElem.className.match(/fullscreen/)) {
+ scaleElem.parentNode.style.transform = "";
+ if (!isNaN(scale) && scale !== 1) {
+ scaleElem.parentNode.style.width = parameters.width * scale + "px";
+ scaleElem.parentNode.style.height = parameters.height * scale + "px";
+ scaleElement(scaleElem, scale);
+ } else {
+ scaleElement(scaleElem, 1);
+ scaleElem.parentNode.style.width = parameters.width + "px";
+ scaleElem.parentNode.style.height = parameters.height + "px";
+ }
+ }
+ if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
+ positionCenter(appletElem);
+ }
+ if (window.GGBT_wsf_view && !window.GGBT_wsf_view.isFullscreen()) {
+ window.GGBT_wsf_general.adjustContentToResize($(article).parents(".content-added-content"));
+ }
+ }
+ }
+ return {
+ responsiveResize: responsiveResize,
+ isFlexibleWorksheetEditor: isFlexibleWorksheetEditor,
+ positionCenter: positionCenter,
+ getScale: getScale,
+ scaleElement: scaleElement
+ };
+ }();
+ if (true) {
+ !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {
+ return GGBApplet;
+ }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
+ __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
+ }
+ GGBAppletUtils.makeModule = function (name, permutation) {
+ function webModule() {
+ var H = "bootstrap",
+ I = "begin",
+ J = "gwt.codesvr." + name + "=",
+ K = "gwt.codesvr=",
+ L = name,
+ M = "startup",
+ N = "DUMMY",
+ O = 0,
+ P = 1,
+ Q = "iframe",
+ R = "position:absolute; width:0; height:0; border:none; left: -1000px;",
+ S = " top: -1000px;",
+ T = "Chrome",
+ U = "CSS1Compat",
+ V = "",
+ W = "",
+ X = "",
+ Y = "undefined",
+ Z = "readystatechange",
+ $ = 10,
+ _ = "script",
+ ab = "javascript",
+ bb = "Failed to load ",
+ cb = "moduleStartup",
+ db = "scriptTagAdded",
+ eb = "moduleRequested",
+ fb = "meta",
+ gb = "name",
+ hb = name + "::",
+ ib = "::",
+ jb = "gwt:property",
+ kb = "content",
+ lb = "=",
+ mb = "gwt:onPropertyErrorFn",
+ nb = 'Bad handler "',
+ ob = '" for "gwt:onPropertyErrorFn"',
+ pb = "gwt:onLoadErrorFn",
+ qb = '" for "gwt:onLoadErrorFn"',
+ rb = "#",
+ sb = "?",
+ tb = "/",
+ ub = "img",
+ vb = "clear.cache.gif",
+ wb = "baseUrl",
+ xb = name + ".nocache.js",
+ yb = "base",
+ zb = "//",
+ Ab = "selectingPermutation",
+ Bb = name + ".devmode.js",
+ Cb = permutation,
+ Db = ":",
+ Eb = ".cache.js",
+ Fb = "loadExternalRefs",
+ Gb = "end";
+ var n = window;
+ var o = document;
+ q(H, I);
+ function p() {
+ var a = n.location.search;
+ return a.indexOf(J) != -1 || a.indexOf(K) != -1;
+ }
+ function q(a, b) {}
+ webModule.__sendStats = q;
+ webModule.__moduleName = L;
+ webModule.__errFn = null;
+ webModule.__moduleBase = N;
+ webModule.__softPermutationId = O;
+ webModule.__computePropValue = null;
+ webModule.__getPropMap = null;
+ webModule.__installRunAsyncCode = function () {};
+ webModule.__gwtStartLoadingFragment = function () {
+ return null;
+ };
+ webModule.__gwt_isKnownPropertyValue = function () {
+ return false;
+ };
+ webModule.__gwt_getMetaProperty = function () {
+ return null;
+ };
+ var r = null;
+ var s = n.__gwt_activeModules = n.__gwt_activeModules || {};
+ s[L] = {
+ moduleName: L
+ };
+ webModule.__moduleStartupDone = function (e) {
+ var f = s[L].bindings;
+ s[L].bindings = function () {
+ var a = f ? f() : {};
+ var b = e[webModule.__softPermutationId];
+ for (var c = O; c < b.length; c++) {
+ var d = b[c];
+ a[d[O]] = d[P];
+ }
+ return a;
+ };
+ };
+ var t;
+ function u() {
+ v();
+ return t;
+ }
+ function v() {
+ if (t) {
+ return;
+ }
+ var a = o.createElement(Q);
+ a.id = L;
+ a.style.cssText = R + S;
+ a.tabIndex = -1;
+ o.body.appendChild(a);
+ t = a.contentWindow.document;
+ if (navigator.userAgent.indexOf(T) == -1) {
+ t.open();
+ var b = document.compatMode == U ? V : W;
+ t.write(b + X);
+ t.close();
+ }
+ }
+ function w(f) {
+ function g(a) {
+ function b() {
+ if (_typeof(o.readyState) == Y) {
+ return _typeof(o.body) != Y && o.body != null;
+ }
+ return /loaded|complete/.test(o.readyState);
+ }
+ var c = b();
+ if (c) {
+ a();
+ return;
+ }
+ function d() {
+ if (!c) {
+ if (!b()) {
+ return;
+ }
+ c = true;
+ a();
+ if (o.removeEventListener) {
+ o.removeEventListener(Z, d, false);
+ }
+ if (e) {
+ clearInterval(e);
+ }
+ }
+ }
+ if (o.addEventListener) {
+ o.addEventListener(Z, d, false);
+ }
+ var e = setInterval(function () {
+ d();
+ }, $);
+ }
+ function h(a) {
+ var b = u();
+ var c = b.body;
+ var d = b.createElement(_);
+ d.language = ab;
+ d.crossOrigin = W;
+ d.src = a;
+ if (webModule.__errFn) {
+ d.onerror = function () {
+ webModule.__errFn(L, new Error(bb + a));
+ };
+ }
+ c.appendChild(d);
+ q(cb, db);
+ }
+ q(cb, eb);
+ g(function () {
+ h(f);
+ });
+ }
+ webModule.__startLoadingFragment = function (a) {
+ return C(a);
+ };
+ webModule.__installRunAsyncCode = function (a) {
+ var b = u();
+ var c = b.body;
+ var d = b.createElement(_);
+ d.language = ab;
+ d.text = a;
+ c.appendChild(d);
+ c.removeChild(d);
+ };
+ function A() {
+ var c = {};
+ var d;
+ var e;
+ var f = o.getElementsByTagName(fb);
+ for (var g = O, h = f.length; g < h; ++g) {
+ var i = f[g],
+ j = i.getAttribute(gb),
+ k;
+ if (j) {
+ j = j.replace(hb, W);
+ if (j.indexOf(ib) >= O) {
+ continue;
+ }
+ if (j == jb) {
+ k = i.getAttribute(kb);
+ if (k) {
+ var l,
+ m = k.indexOf(lb);
+ if (m >= O) {
+ j = k.substring(O, m);
+ l = k.substring(m + P);
+ } else {
+ j = k;
+ l = W;
+ }
+ c[j] = l;
+ }
+ } else if (j == mb) {
+ k = i.getAttribute(kb);
+ if (k) {
+ try {
+ d = eval(k);
+ } catch (a) {
+ alert(nb + k + ob);
+ }
+ }
+ } else if (j == pb) {
+ k = i.getAttribute(kb);
+ if (k) {
+ try {
+ e = eval(k);
+ } catch (a) {
+ alert(nb + k + qb);
+ }
+ }
+ }
+ }
+ }
+ __gwt_getMetaProperty = function __gwt_getMetaProperty(a) {
+ var b = c[a];
+ return b == null ? null : b;
+ };
+ r = d;
+ webModule.__errFn = e;
+ }
+ function B() {
+ function e(a) {
+ var b = a.lastIndexOf(rb);
+ if (b == -1) {
+ b = a.length;
+ }
+ var c = a.indexOf(sb);
+ if (c == -1) {
+ c = a.length;
+ }
+ var d = a.lastIndexOf(tb, Math.min(c, b));
+ return d >= O ? a.substring(O, d + P) : W;
+ }
+ function f(a) {
+ if (a.match(/^\w+:\/\//)) {} else {
+ var b = o.createElement(ub);
+ b.src = a + vb;
+ a = e(b.src);
+ }
+ return a;
+ }
+ function g() {
+ var a = __gwt_getMetaProperty(wb);
+ if (a != null) {
+ return a;
+ }
+ return W;
+ }
+ function h() {
+ var a = o.getElementsByTagName(_);
+ for (var b = O; b < a.length; ++b) {
+ if (a[b].src.indexOf(xb) != -1) {
+ return e(a[b].src);
+ }
+ }
+ return W;
+ }
+ function i() {
+ var a = o.getElementsByTagName(yb);
+ if (a.length > O) {
+ return a[a.length - P].href;
+ }
+ return W;
+ }
+ function j() {
+ var a = o.location;
+ return a.href == a.protocol + zb + a.host + a.pathname + a.search + a.hash;
+ }
+ var k = g();
+ if (k == W) {
+ k = h();
+ }
+ if (k == W) {
+ k = i();
+ }
+ if (k == W && j()) {
+ k = e(o.location.href);
+ }
+ k = f(k);
+ return k;
+ }
+ function C(a) {
+ if (a.match(/^\//)) {
+ return a;
+ }
+ if (a.match(/^[a-zA-Z]+:\/\//)) {
+ return a;
+ }
+ return webModule.__moduleBase + a;
+ }
+ function D() {
+ var f = [];
+ var g = O;
+ var h = [];
+ var i = [];
+ function j(a) {
+ var b = i[a](),
+ c = h[a];
+ if (b in c) {
+ return b;
+ }
+ var d = [];
+ for (var e in c) {
+ d[c[e]] = e;
+ }
+ if (r) {
+ r(a, d, b);
+ }
+ throw null;
+ }
+ __gwt_isKnownPropertyValue = function __gwt_isKnownPropertyValue(a, b) {
+ return b in h[a];
+ };
+ webModule.__getPropMap = function () {
+ var a = {};
+ for (var b in h) {
+ if (h.hasOwnProperty(b)) {
+ a[b] = j(b);
+ }
+ }
+ return a;
+ };
+ webModule.__computePropValue = j;
+ n.__gwt_activeModules[L].bindings = webModule.__getPropMap;
+ if (p()) {
+ return C(Bb);
+ }
+ var k;
+ try {
+ k = Cb;
+ var l = k.indexOf(Db);
+ if (l != -1) {
+ g = parseInt(k.substring(l + P), $);
+ k = k.substring(O, l);
+ }
+ } catch (a) {}
+ webModule.__softPermutationId = g;
+ return C(k + Eb);
+ }
+ function F() {
+ if (!n.__gwt_stylesLoaded) {
+ n.__gwt_stylesLoaded = {};
+ }
+ }
+ A();
+ webModule.__moduleBase = "/js/mathematicalGraphics/" + name + "/";
+ s[L].moduleBase = webModule.__moduleBase;
+ var G = D();
+ F();
+ w(G);
+ return true;
+ }
+ return webModule;
+ };
+ if (typeof window.web3d !== "function") {
+ window.web3d = GGBAppletUtils.makeModule("web3d", "A18F540516513B1292CA7CEF2F6AFC7E");
+ }
+ if (typeof window.webSimple !== "function") {
+ window.webSimple = GGBAppletUtils.makeModule("webSimple", "96B09BF1B436BF53F0DF54116700F16A");
+ }
+ window.GGBApplet = GGBApplet;
+})();
+
+/***/ }),
/***/ 71376:
/*!*********************************!*\
@@ -7,6 +1479,7 @@
\*********************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Ax: function() { return /* binding */ processTreeData; },
/* harmony export */ Ds: function() { return /* binding */ debounce; },
@@ -93,6 +1566,7 @@ var apiPref = _utils_env__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z.API_SE
\**************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
@@ -234,870 +1708,119 @@ var ImageDimensions = function ImageDimensions(_ref) {
if (result.status === 0) {
onOk();
}
- _context2.next = 13;
- break;
- case 12:
- if (res !== null && res !== void 0 && res.id) {
- onOk(res);
- }
- case 13:
- setLoading(false);
- setLoadingText('');
- case 15:
- case "end":
- return _context2.stop();
- }
- }, _callee2);
- }));
- return function onSave(_x) {
- return _ref3.apply(this, arguments);
- };
- }();
- var dealDom = function dealDom() {
- // 删除标签
- // 找到href为"https://markerjs.com/"的a标签
- var targetLink = document.querySelector('a[href="https://markerjs.com/"]');
- if (targetLink && targetLink.parentNode) {
- targetLink.parentNode.style.display = 'none';
- }
-
- // 设置title
- var item = [{
- name: '[data-action="select"]',
- title: '选择'
- }, {
- name: '[data-action="delete"]',
- title: '删除元素'
- }, {
- name: '[data-action="undo"]',
- title: '撤销'
- }, {
- name: '[data-type-name="FrameMarker"]',
- title: '矩形'
- }, {
- name: '[data-type-name="FreehandMarker"]',
- title: '画线'
- }, {
- name: '[data-type-name="ArrowMarker"]',
- title: '箭头'
- }, {
- name: '[data-type-name="TextMarker"]',
- title: '文本'
- }, {
- name: '[data-type-name="EllipseMarker"]',
- title: '椭圆'
- }, {
- name: '[data-type-name="HighlightMarker"]',
- title: '方块'
- }, {
- name: '[data-type-name="CalloutMarker"]',
- title: '注释'
- }, {
- name: '[data-action="render"]',
- title: '保存'
- }, {
- name: '[data-action="close"]',
- title: '退出'
- }];
- item.forEach(function (e) {
- var targetElement = document.querySelector(e.name);
- if (targetElement) {
- targetElement.setAttribute('title', e.title);
- }
- });
- };
- var initMarkerjs = function initMarkerjs() {
- markerArea.current = new markerjs2_esm/* MarkerArea */.hP(imgRef.current);
- markerArea.current.addEventListener('render', onSave);
- markerArea.current.addEventListener('beforeclose', onClose);
- if (showFullTools) {
- markerArea.current.availableMarkerTypes = markerArea.current.ALL_MARKER_TYPES;
- markerArea.current.uiStyleSettings.redoButtonVisible = true;
- markerArea.current.uiStyleSettings.notesButtonVisible = true;
- markerArea.current.uiStyleSettings.zoomButtonVisible = true;
- markerArea.current.uiStyleSettings.zoomOutButtonVisible = true;
- markerArea.current.uiStyleSettings.clearButtonVisible = true;
- }
- window.markerArea = markerArea.current.uiStyleSettings;
- markerArea.current.show();
- if (data !== null && data !== void 0 && data.snapshotData) {
- markerArea.current.restoreState(data.snapshotData);
- }
- setTimeout(function () {
- dealDom();
- }, 300);
- };
- return /*#__PURE__*/(0,jsx_runtime.jsx)(_react_17_0_2_react.Fragment, {
- children: (data === null || data === void 0 ? void 0 : data.visible) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
- className: _classnames_2_5_1_classnames_default()(ImageDimensionsmodules.imageDimensions, className, fullWidth ? ImageDimensionsmodules.fullWidth : ""),
- style: style,
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
- spinning: loading,
- tip: loadingText,
- style: {
- position: 'absolute'
- }
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
- className: ImageDimensionsmodules.img,
- ref: imgRef
- // crossOrigin='anonymous'
- // src={data?.src}
- })]
- })
- });
-};
-/* harmony default export */ var components_ImageDimensions = (ImageDimensions);
-
-/***/ }),
-
-/***/ 782:
-/*!*****************************************!*\
- !*** ./src/components/NoData/index.tsx ***!
- \*****************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/assets/images/icons/nodata.png */ 93314);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd */ 3113);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
-
-
-
-
-
-
-var noData = function noData(_ref) {
- var img = _ref.img,
- _ref$buttonProps = _ref.buttonProps,
- buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
- _ref$styles = _ref.styles,
- styles = _ref$styles === void 0 ? {} : _ref$styles,
- customText = _ref.customText,
- ButtonText = _ref.ButtonText,
- ButtonClick = _ref.ButtonClick,
- Buttonclass = _ref.Buttonclass,
- ButtonTwo = _ref.ButtonTwo,
- imgStyles = _ref.imgStyles,
- _ref$loading = _ref.loading,
- loading = _ref$loading === void 0 ? false : _ref$loading;
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("section", {
- className: "tc animated fadeIn",
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, {
- color: '#999',
- margin: '100px auto',
- visibility: loading ? 'hidden' : 'visible'
- }), styles),
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", {
- src: img || _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__,
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, imgStyles), {}, {
- pointerEvents: "none",
- userSelect: "none"
- })
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("p", {
- className: "mt20 font14",
- children: customText || '暂时还没有相关数据哦!'
- }), ButtonText && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(antd__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .ZP, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({
- className: Buttonclass,
- onClick: ButtonClick
- }, buttonProps), {}, {
- children: ButtonText
- })), ButtonTwo && ButtonTwo]
- });
-};
-/* harmony default export */ __webpack_exports__.Z = (noData);
-
-/***/ }),
-
-/***/ 13039:
-/*!*********************************************************!*\
- !*** ./src/components/PreviewAll/index.tsx + 1 modules ***!
- \*********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-
-// EXPORTS
-__webpack_require__.d(__webpack_exports__, {
- Z: function() { return /* binding */ PreviewAll; }
-});
-
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
-var objectSpread2 = __webpack_require__(82242);
-var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
-var regeneratorRuntime = __webpack_require__(7557);
-var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
-var asyncToGenerator = __webpack_require__(41498);
-var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
-// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
-var slicedToArray = __webpack_require__(79800);
-var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
-var _react_17_0_2_react = __webpack_require__(59301);
-;// CONCATENATED MODULE: ./src/components/PreviewAll/index.less?modules
-// extracted by mini-css-extract-plugin
-/* harmony default export */ var PreviewAllmodules = ({"wrp":"wrp___dq7YK","bgBlack":"bgBlack___ARIUV","monaco":"monaco___VnZC3","darkBlue":"darkBlue___UprA9","close":"close___LKoWu","embed":"embed___hvpEJ"});
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
-var es_button = __webpack_require__(3113);
-// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ArrowDownOutlined.js + 1 modules
-var ArrowDownOutlined = __webpack_require__(98915);
-// EXTERNAL MODULE: ./src/components/monaco-editor/index.jsx + 4 modules
-var monaco_editor = __webpack_require__(40774);
-// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
-var tooltip = __webpack_require__(6848);
-// EXTERNAL MODULE: ./src/utils/util.tsx
-var util = __webpack_require__(72345);
-// EXTERNAL MODULE: ./src/service/exercise.ts
-var exercise = __webpack_require__(91843);
-// EXTERNAL MODULE: ./src/components/NoData/index.tsx
-var NoData = __webpack_require__(782);
-// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
-var env = __webpack_require__(83877);
-// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
-var jsx_runtime = __webpack_require__(37712);
-;// CONCATENATED MODULE: ./src/components/PreviewAll/index.tsx
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-/* harmony default export */ var PreviewAll = (function (_ref) {
- var _data, _data2, _data3, _data4, _data5, _data6;
- var _ref$editOffice = _ref.editOffice,
- editOffice = _ref$editOffice === void 0 ? 'view' : _ref$editOffice,
- data = _ref.data,
- theme = _ref.theme,
- type = _ref.type,
- filename = _ref.filename,
- monacoEditor = _ref.monacoEditor,
- className = _ref.className,
- style = _ref.style,
- close = _ref.close,
- onClose = _ref.onClose,
- hasMask = _ref.hasMask,
- disabledDownload = _ref.disabledDownload,
- onImgDimensions = _ref.onImgDimensions,
- showNodata = _ref.showNodata;
- var _useState = (0,_react_17_0_2_react.useState)('https://view.officeapps.live.com/op/view.aspx?src=http://testgs.educoder.net//rails/active_storage/blobs/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBCZz09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--03541f6234b93d7ac3b2d84e7eb0e6594a952945/1.ppt'),
- _useState2 = slicedToArray_default()(_useState, 2),
- src = _useState2[0],
- setSrc = _useState2[1];
- var _useState3 = (0,_react_17_0_2_react.useState)(""),
- _useState4 = slicedToArray_default()(_useState3, 2),
- token = _useState4[0],
- setToken = _useState4[1];
- var _useState5 = (0,_react_17_0_2_react.useState)(),
- _useState6 = slicedToArray_default()(_useState5, 2),
- officeData = _useState6[0],
- setOfficeData = _useState6[1];
- var officePath = window.ENV === "build" ? "/react/build" : "";
- var apiServer = location.host.startsWith("localhost") ? env/* default */.Z.PROXY_SERVER : env/* default */.Z.API_SERVER;
- // let size;
- var unit = 1024 * 1024;
- var maxSize = 10 * unit;
- var closeRef = (0,_react_17_0_2_react.useRef)();
- if ((_data = data) !== null && _data !== void 0 && _data.startsWith("/api") && type !== "txt") {
- data = env/* default */.Z.API_SERVER + data;
- }
- var getFileExtension = function getFileExtension(url) {
- var filename = url.substring(url.lastIndexOf('/') + 1);
- var extension = filename.split('.').pop();
- return extension;
- };
- if (filename) monacoEditor.filename = filename;
- (0,_react_17_0_2_react.useEffect)(function () {
- var _document$cookie;
- var cookies = (_document$cookie = document.cookie) === null || _document$cookie === void 0 || (_document$cookie = _document$cookie.replace(/\s/g, "")) === null || _document$cookie === void 0 ? void 0 : _document$cookie.split(";");
- cookies === null || cookies === void 0 || cookies.map(function (item) {
- var i = item.split("=");
- if (i[0] === '_educoder_session') {
- setToken(i[1]);
- }
- });
- }, []);
- (0,_react_17_0_2_react.useEffect)(function () {
- if (type === "office") {
- if (data.indexOf("bigfilescdn.") > -1) {
- setOfficeData({
- url: data,
- fileType: getFileExtension(data),
- model: data.indexOf("model=edit") ? "edit" : "view"
- });
- } else {
- getData();
- }
- }
- }, [type, data]);
- var getData = /*#__PURE__*/function () {
- var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
- var _url, _id, res;
- return regeneratorRuntime_default()().wrap(function _callee$(_context) {
- while (1) switch (_context.prev = _context.next) {
- case 0:
- console.log("data:", data);
- _url = data;
- if (!data.startsWith("http")) {
- _url = location.origin + _url;
- }
- _id = new URL(_url).pathname.split("/").pop();
- _context.next = 6;
- return (0,exercise/* setEcsAttachment */.gJ)({
- attachment_id: _id
- });
- case 6:
- res = _context.sent;
- res.url = apiServer + res.url;
- setOfficeData(res);
- case 9:
+ _context2.next = 13;
+ break;
+ case 12:
+ if (res !== null && res !== void 0 && res.id) {
+ onOk(res);
+ }
+ case 13:
+ setLoading(false);
+ setLoadingText('');
+ case 15:
case "end":
- return _context.stop();
+ return _context2.stop();
}
- }, _callee);
+ }, _callee2);
}));
- return function getData() {
- return _ref2.apply(this, arguments);
+ return function onSave(_x) {
+ return _ref3.apply(this, arguments);
};
}();
- var handleClick = function handleClick() {
- if (data.startsWith("http") || data.startsWith('blob:')) {
- handleDown();
- return;
+ var dealDom = function dealDom() {
+ // 删除标签
+ // 找到href为"https://markerjs.com/"的a标签
+ var targetLink = document.querySelector('a[href="https://markerjs.com/"]');
+ if (targetLink && targetLink.parentNode) {
+ targetLink.parentNode.style.display = 'none';
}
- (0,util/* downloadFile */.Sv)(filename || 'educoder', data, filename);
- };
- var handleDown = function handleDown() {
- (0,util/* downLoadLink */.Nd)(filename || 'educoder', decodeURIComponent(data));
- };
- return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
- style: objectSpread2_default()({}, style || {}),
- className: "".concat(hasMask && PreviewAllmodules.bgBlack, " ").concat(!!type ? PreviewAllmodules.wrp : "hide"),
- children: [close && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
- className: PreviewAllmodules.close,
- ref: closeRef,
- children: [!!onImgDimensions && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
- title: "\u70B9\u51FB\u5BF9\u56FE\u7247\u8FDB\u884C\u6279\u6CE8",
- getPopupContainer: function getPopupContainer() {
- return closeRef.current;
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
- onClick: function onClick() {
- onClose();
- onImgDimensions();
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "icon-yulanpizhu"
- })
- })
- }), !disabledDownload && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
- title: "\u70B9\u51FB\u4E0B\u8F7D\u6B64\u6587\u4EF6",
- getPopupContainer: function getPopupContainer() {
- return closeRef.current;
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
- onClick: handleDown,
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "icon-quxiaozhiding"
- })
- })
- }), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
- title: "\u5173\u95ED",
- getPopupContainer: function getPopupContainer() {
- return closeRef.current;
- },
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
- className: "",
- onClick: onClose,
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "icon-guanbi1"
- })
- })
- })]
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
- className: "".concat(PreviewAllmodules[className], " ").concat(className, " ").concat(PreviewAllmodules.monaco, " ").concat(type === "txt" ? "show" : "hide"),
- children: type === "txt" && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
- children: /*#__PURE__*/(0,jsx_runtime.jsx)(monaco_editor/* default */.ZP, objectSpread2_default()({}, monacoEditor))
- })
- }), type === "audio" && /*#__PURE__*/(0,jsx_runtime.jsx)("audio", {
- src: "".concat(((_data2 = data) === null || _data2 === void 0 ? void 0 : _data2.indexOf("http://")) > -1 || ((_data3 = data) === null || _data3 === void 0 ? void 0 : _data3.indexOf("https://")) > -1 ? "" : "data:audio/mp3;base64,").concat(data),
- autoPlay: true
- }), type === "video" && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
- children: ((_data4 = data) === null || _data4 === void 0 ? void 0 : _data4.indexOf("http")) > -1 ? /*#__PURE__*/(0,jsx_runtime.jsx)("video", {
- controls: true,
- src: "".concat(data),
- autoPlay: true
- }) : /*#__PURE__*/(0,jsx_runtime.jsx)("video", {
- controls: true,
- src: "data:video/mp4;base64,".concat(data),
- autoPlay: true
- })
- }), type === 'office' && officeData && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", {
- src: "".concat(officePath, "/office.html?key=").concat(officeData.key, "&url=").concat(btoa(officeData.url), "&callbackUrl=").concat(apiServer + officeData.callbackUrl, "&fileType=").concat(officeData.fileType, "&title=").concat(officeData.title, "&model=").concat(editOffice, "&officeServer=").concat(env/* default */.Z.ONLYOFFICE, "&disabledDownload=").concat(!!disabledDownload)
- }), type === 'html' && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", {
- src: data + '&disposition=inline'
- }), type === 'pdf' && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", {
- src: "".concat(officePath, "/js/pdfview/index.html?url=").concat(data, "&disabledDownload=").concat(!!disabledDownload)
- }) //
- , type === "image" && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
- src: "".concat(((_data5 = data) === null || _data5 === void 0 ? void 0 : _data5.indexOf("http://")) > -1 || ((_data6 = data) === null || _data6 === void 0 ? void 0 : _data6.indexOf("https://")) > -1 ? "" : "data:image/png;base64,").concat(data)
- }), (type === "other" || type === "download") && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
- children: showNodata ? /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {
- customText: "\u5F53\u524D\u6587\u4EF6\u4E0D\u652F\u6301\u9884\u89C8\uFF0C\u53EF\u70B9\u51FB\u4E0B\u8F7D\u67E5\u770B",
- ButtonTwo: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
- icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
- className: "iconfont icon-xiazai4 font14"
- }),
- type: "primary",
- size: 'middle',
- onClick: handleClick,
- children: "\u4E0B\u8F7D"
- })
- }) : /*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
- type: "primary",
- size: 'middle',
- onClick: handleClick,
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ArrowDownOutlined/* default */.Z, {}), "\u70B9\u51FB\u4E0B\u8F7D"]
- })
- })]
- });
-});
-
-/***/ }),
-
-/***/ 11776:
-/*!**********************************************************!*\
- !*** ./src/components/QuestionEditor/MdEditorInForm.tsx ***!
- \**********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ h: function() { return /* binding */ MdEditorInForm; },
-/* harmony export */ x: function() { return /* binding */ RegularInput; }
-/* harmony export */ });
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectWithoutProperties.js */ 39647);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _components_markdown_editor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/markdown-editor */ 49177);
-/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./index.less?modules */ 47661);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var _components_RenderHtml__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/RenderHtml */ 66128);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
-
-
-var _excluded = ["value", "onChange", "scrollId"];
-
-
-
-
-var MdEditorInForm = function MdEditorInForm(_ref) {
- var value = _ref.value,
- _onChange = _ref.onChange,
- scrollId = _ref.scrollId,
- props = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_1___default()(_ref, _excluded);
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("div", {
- id: scrollId || '',
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_markdown_editor__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, props), {}, {
- defaultValue: value,
- onChange: function onChange(a, b) {
- console.log("a:", a, b);
- if (!!(b !== null && b !== void 0 && b.length)) _onChange(a, b);else _onChange(a);
+ // 设置title
+ var item = [{
+ name: '[data-action="select"]',
+ title: '选择'
+ }, {
+ name: '[data-action="delete"]',
+ title: '删除元素'
+ }, {
+ name: '[data-action="undo"]',
+ title: '撤销'
+ }, {
+ name: '[data-type-name="FrameMarker"]',
+ title: '矩形'
+ }, {
+ name: '[data-type-name="FreehandMarker"]',
+ title: '画线'
+ }, {
+ name: '[data-type-name="ArrowMarker"]',
+ title: '箭头'
+ }, {
+ name: '[data-type-name="TextMarker"]',
+ title: '文本'
+ }, {
+ name: '[data-type-name="EllipseMarker"]',
+ title: '椭圆'
+ }, {
+ name: '[data-type-name="HighlightMarker"]',
+ title: '方块'
+ }, {
+ name: '[data-type-name="CalloutMarker"]',
+ title: '注释'
+ }, {
+ name: '[data-action="render"]',
+ title: '保存'
+ }, {
+ name: '[data-action="close"]',
+ title: '退出'
+ }];
+ item.forEach(function (e) {
+ var targetElement = document.querySelector(e.name);
+ if (targetElement) {
+ targetElement.setAttribute('title', e.title);
}
- }))
- });
-};
-var RegularInput = function RegularInput(_ref2) {
- var value = _ref2.value,
- onChange = _ref2.onChange,
- placeholder = _ref2.placeholder,
- _ref2$height = _ref2.height,
- height = _ref2$height === void 0 ? 140 : _ref2$height,
- isEdit = _ref2.isEdit;
- return isEdit ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_markdown_editor__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
- watch: true,
- isFocus: true,
- height: height,
- placeholder: placeholder,
- defaultValue: value,
- onChange: onChange
- }) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("div", {
- style: {
- cursor: 'pointer'
- },
- children: value ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(_components_RenderHtml__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
- className: _index_less_modules__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z.inputBorder,
- value: value
- }) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("div", {
- className: "".concat(_index_less_modules__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z.inputBorder, " ").concat(_index_less_modules__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z.placeholder),
- children: placeholder
- })
- });
-};
-
-
-/***/ }),
-
-/***/ 66128:
-/*!*********************************************!*\
- !*** ./src/components/RenderHtml/index.tsx ***!
- \*********************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/toConsumableArray.js */ 37205);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/createForOfIteratorHelper.js */ 91232);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var katex_dist_katex_min_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! katex/dist/katex.min.css */ 48725);
-/* harmony import */ var _utils_marked__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/utils/marked */ 39790);
-/* harmony import */ var code_prettify__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! code-prettify */ 64018);
-/* harmony import */ var code_prettify__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(code_prettify__WEBPACK_IMPORTED_MODULE_7__);
-/* harmony import */ var hls_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! hls.js */ 27627);
-/* harmony import */ var _utils_env__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/utils/env */ 83877);
-/* harmony import */ var katex__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! katex */ 15342);
-/* harmony import */ var katex__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(katex__WEBPACK_IMPORTED_MODULE_10__);
-/* harmony import */ var uuid__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! uuid */ 1012);
-/* harmony import */ var _components_PreviewAll__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/components/PreviewAll */ 13039);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-var ADD_MULTI = '@▁▁@';
-var ADD_SINGLE = '@▁@';
-var preRegex = /]*>/g;
-function _unescape(str) {
- var div = document.createElement('div');
- div.innerHTML = str;
- return div.childNodes.length === 0 ? '' : div.childNodes[0].nodeValue;
-}
-/* harmony default export */ __webpack_exports__.Z = (function (_ref) {
- var _ref$value = _ref.value,
- value = _ref$value === void 0 ? '' : _ref$value,
- className = _ref.className,
- showTextOnly = _ref.showTextOnly,
- showLines = _ref.showLines,
- _ref$style = _ref.style,
- style = _ref$style === void 0 ? {} : _ref$style,
- _ref$stylesPrev = _ref.stylesPrev,
- stylesPrev = _ref$stylesPrev === void 0 ? {} : _ref$stylesPrev,
- highlightKeywords = _ref.highlightKeywords,
- showProgramFill = _ref.showProgramFill,
- isProgramFill = _ref.isProgramFill,
- _ref$disabledFill = _ref.disabledFill,
- disabledFill = _ref$disabledFill === void 0 ? false : _ref$disabledFill,
- programFillValue = _ref.programFillValue,
- _ref$onFillChange = _ref.onFillChange,
- onFillChange = _ref$onFillChange === void 0 ? function (value) {} : _ref$onFillChange,
- _ref$onFillBlur = _ref.onFillBlur,
- onFillBlur = _ref$onFillBlur === void 0 ? function () {} : _ref$onFillBlur;
- var str = String(value);
- var _useState = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)(""),
- _useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState, 2),
- data = _useState2[0],
- setData = _useState2[1];
- var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)("office"),
- _useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState3, 2),
- type = _useState4[0],
- setType = _useState4[1];
- var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)([]),
- _useState6 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState5, 2),
- projectValue = _useState6[0],
- setProjectValue = _useState6[1];
- var classNamesRef = (0,react__WEBPACK_IMPORTED_MODULE_4__.useRef)("a" + (0,uuid__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z)());
- var formObj = {};
- var createInput = function createInput(a, num) {
- // const wrap = document.createElement("span")
- // wrap.className =
- var input = document.createElement(a === ADD_SINGLE ? "input" : "textarea");
- input.style.width = "100%";
- input.style.height = a === ADD_SINGLE ? "40px" : "151px";
- input.rows = 5;
- input.spellcheck = false;
- input.name = "edu-program-fill";
- input.placeholder = "请输入";
- input.dataset.id = num;
- var key = Object.keys(formObj).length;
- formObj[key] = input;
- return "").concat(input.outerHTML, "");
- };
- var formatMD = function formatMD(rs) {
- return rs.replace(/([\s\S]+?)<\/style>/gim, function (_, css) {
- var _css = css.replace(/(\n|\r)/g, "").split("}");
- var arr = [];
- _css.map(function (item) {
- if (item != '') {
- arr.push(".".concat(classNamesRef.current, " ").concat(item));
- }
- });
- return "");
});
};
- var html = (0,react__WEBPACK_IMPORTED_MODULE_4__.useMemo)(function () {
- try {
- var reg = /\(\s+\/api\/attachments\/|\(\/api\/attachments\/|\(\/attachments\/download\//g;
- var reg2 = /\"\/api\/attachments\/|\"\/attachments\/download\//g;
- var reg3 = /\(\s+\/files\/uploads\/|\"\/files\/uploads\//g;
- str = str.replace(reg, "(" + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/api/attachments/").replace(reg2, '"' + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/api/attachments/").replace(reg3, '"' + _utils_env__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.API_SERVER + "/files/uploads/").replaceAll("http://video.educoder", "https://video.educoder").replaceAll("http://www.educoder.net/api", "https://data.educoder.net/api").replaceAll("https://www.educoder.net/api", "https://data.educoder.net/api").replace(/\r\n/g, "\n");
- // str = str.replace(new RegExp("(?", ">").replace(/(@▁▁@|@▁@)/g, function (a, b, c) {
- ++num;
- return createInput(a, num);
- });
- return "".concat(formatMD(str || ""), "
");
- }
- var rs = formatMD(str);
- rs = (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .ZP)(rs);
- var math_expressions = (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .getMathExpressions */ .ez)();
- if (str.match(/\[TOC\]/)) {
- rs = rs.replace('[TOC]
', (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .getTocContent */ .Qv)());
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .cleanToc */ .Iy)();
- }
- rs = rs.replace(/(__special_katext_id_\d+__)/g, function (_match, capture) {
- var _math_expressions$cap = math_expressions[capture],
- type = _math_expressions$cap.type,
- expression = _math_expressions$cap.expression;
- return (0,katex__WEBPACK_IMPORTED_MODULE_10__.renderToString)(_unescape(expression) || '', {
- displayMode: type === 'block',
- throwOnError: false,
- output: 'html'
- });
- });
- rs = rs.replace(/▁/g, '▁▁▁');
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .resetMathExpressions */ .AL)();
- // return dompurify.sanitize(rs)
- var dom = document.createElement('div');
- dom.innerHTML = rs;
- if (highlightKeywords) {
- var escapedKeywords = highlightKeywords.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
- findKeyword(dom, escapedKeywords);
- return dom.innerHTML;
+ var initMarkerjs = function initMarkerjs() {
+ markerArea.current = new markerjs2_esm/* MarkerArea */.hP(imgRef.current);
+ markerArea.current.addEventListener('render', onSave);
+ markerArea.current.addEventListener('beforeclose', onClose);
+ if (showFullTools) {
+ markerArea.current.availableMarkerTypes = markerArea.current.ALL_MARKER_TYPES;
+ markerArea.current.uiStyleSettings.redoButtonVisible = true;
+ markerArea.current.uiStyleSettings.notesButtonVisible = true;
+ markerArea.current.uiStyleSettings.zoomButtonVisible = true;
+ markerArea.current.uiStyleSettings.zoomOutButtonVisible = true;
+ markerArea.current.uiStyleSettings.clearButtonVisible = true;
}
- if (showTextOnly) {
- return dom.innerText;
+ window.markerArea = markerArea.current.uiStyleSettings;
+ markerArea.current.show();
+ if (data !== null && data !== void 0 && data.snapshotData) {
+ markerArea.current.restoreState(data.snapshotData);
}
setTimeout(function () {
- return onLoad();
- }, 500);
- return dom.innerHTML;
- }, [str, highlightKeywords]);
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (el.current) {
- var inputs = el.current.querySelectorAll(["input", "textarea"]);
- inputs.forEach(function (input) {
- input.oninput = onInput;
- input.onblur = onBlur;
- });
- }
- }, [projectValue]);
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (!!(programFillValue !== null && programFillValue !== void 0 && programFillValue.length)) {
- try {
- var scoreDom = el.current.querySelectorAll(".edu-program-fill-score");
- var dom = el.current.querySelectorAll('[name="edu-program-fill"]');
- var _iterator = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2___default()(dom.entries()),
- _step;
- try {
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
- var _programFillValue$k;
- var _step$value = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_step.value, 2),
- k = _step$value[0],
- i = _step$value[1];
- i.value = (_programFillValue$k = programFillValue[k]) === null || _programFillValue$k === void 0 ? void 0 : _programFillValue$k.value;
- if (programFillValue[k].type === "warning") {
- i.className = "program-fill-warning";
- } else if (programFillValue[k].type === "success") {
- i.className = "program-fill-success";
- } else {
- i.className = "";
- }
- }
- } catch (err) {
- _iterator.e(err);
- } finally {
- _iterator.f();
- }
- var _iterator2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_2___default()(scoreDom.entries()),
- _step2;
- try {
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
- var _programFillValue$_k, _programFillValue$_k2;
- var _step2$value = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_step2.value, 2),
- _k = _step2$value[0],
- _i = _step2$value[1];
- _i.innerHTML = (_programFillValue$_k = programFillValue[_k]) !== null && _programFillValue$_k !== void 0 && _programFillValue$_k.score ? "".concat((_programFillValue$_k2 = programFillValue[_k]) === null || _programFillValue$_k2 === void 0 ? void 0 : _programFillValue$_k2.score, "\u5206") : "";
- }
- } catch (err) {
- _iterator2.e(err);
- } finally {
- _iterator2.f();
- }
- setProjectValue(programFillValue);
- } catch (error) {}
- }
- }, [programFillValue]);
- var onInput = function onInput(e) {
- projectValue[e.target.dataset.id] = projectValue[e.target.dataset.id] || {};
- projectValue[e.target.dataset.id]["value"] = e.target.value;
- setProjectValue(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(projectValue));
- onFillChange(projectValue, e.target.dataset.id);
- };
- var onBlur = function onBlur(e) {
- projectValue[e.target.dataset.id] = projectValue[e.target.dataset.id] || {};
- projectValue[e.target.dataset.id]["value"] = e.target.value;
- setProjectValue(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(projectValue));
- onFillBlur(projectValue, e.target.dataset.id);
+ dealDom();
+ }, 300);
};
- function findKeyword(node, keyword) {
- return node.childNodes.forEach(function (childNode) {
- if (childNode.childNodes.length > 0) {
- findKeyword(childNode, keyword);
- } else if (childNode.nodeName !== "IMG") {
- if (childNode.innerHTML) {
- var _childNode$innerHTML;
- childNode.innerHTML = (_childNode$innerHTML = childNode.innerHTML) === null || _childNode$innerHTML === void 0 ? void 0 : _childNode$innerHTML.replace(new RegExp(keyword, "gi"), '$&');
- } else {
- var dom = document.createElement("span");
- dom.innerHTML = childNode.textContent.replace(new RegExp(keyword, "gi"), '$&');
- childNode.replaceWith(dom);
- }
- }
- });
-
- // return dom.childNodes.forEach((node:any) => {
- // console.log("nodeLen:",node.childNodes.length)
- // if(node.childNodes.length > 0){
- // debugger
- // // findKeyword(dom.childNodes,keyword)
- // }else{
- // if(node.nodeName !== "#text"){
- // node.innerHTML = node.innerHTML.replaceAll(keyword,`${keyword}`)
- // console.log("node:",node,dom,node.nodeName,node.innerHTML,node.childNodes.length)
- // debugger
- // }
- // }
-
- // return node
- // });
- }
- var el = (0,react__WEBPACK_IMPORTED_MODULE_4__.useRef)();
- _utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .lines */ .jb['WebkitLineClamp'] = showLines;
- if (showLines) {
- style = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, style), _utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .lines */ .jb);
- }
- function onAncherHandler(e) {
- var target = e.target;
- if (target.tagName.toUpperCase() === 'A') {
- var ancher = target.getAttribute('href');
- if (ancher.indexOf("office") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("office");
- } else if (ancher.indexOf("application/pdf") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("pdf");
- } else if (ancher.indexOf("text/html") > -1) {
- e.preventDefault();
- setData(ancher);
- setType("html");
- } else if (ancher.startsWith('#')) {
- e.preventDefault();
- var viewEl = document.getElementById(ancher.replace('#', ''));
- if (viewEl) {
- viewEl.scrollIntoView(true);
- }
- }
- }
- }
- var onLoad = function onLoad() {
- var _el$current;
- var videoElement = (_el$current = el.current) === null || _el$current === void 0 ? void 0 : _el$current.querySelectorAll('video');
- videoElement === null || videoElement === void 0 || videoElement.forEach(function (item) {
- item.oncontextmenu = function () {
- return false;
- };
- if (item.src.indexOf('.m3u8') > -1) {
- if (item.canPlayType('application/vnd.apple.mpegurl')) {} else if (hls_js__WEBPACK_IMPORTED_MODULE_8__/* ["default"].isSupported */ .ZP.isSupported()) {
- var hls = new hls_js__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .ZP();
- hls.loadSource(item.src);
- hls.attachMedia(item);
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(_react_17_0_2_react.Fragment, {
+ children: (data === null || data === void 0 ? void 0 : data.visible) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
+ className: _classnames_2_5_1_classnames_default()(ImageDimensionsmodules.imageDimensions, className, fullWidth ? ImageDimensionsmodules.fullWidth : ""),
+ style: style,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
+ spinning: loading,
+ tip: loadingText,
+ style: {
+ position: 'absolute'
}
- }
- });
- };
- (0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
- if (el.current && html) {
- if (html.match(preRegex)) {
- window.PR.prettyPrint();
- }
- }
- if (el.current) {
- el.current.addEventListener('click', onAncherHandler);
- return function () {
- var _el$current2;
- (_el$current2 = el.current) === null || _el$current2 === void 0 || _el$current2.removeEventListener('click', onAncherHandler);
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .resetMathExpressions */ .AL)();
- (0,_utils_marked__WEBPACK_IMPORTED_MODULE_6__/* .cleanToc */ .Iy)();
- };
- }
- }, [html, el.current, onAncherHandler]);
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.Fragment, {
- children: [showTextOnly && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("div", {
- ref: el,
- children: html
- }), !showTextOnly && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("div", {
- ref: el,
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, style),
- className: "".concat(className ? className : '', " ").concat(disabledFill ? "disabled-fill" : "", " markdown-body ").concat(classNamesRef.current),
- dangerouslySetInnerHTML: {
- __html: html
- }
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)(_components_PreviewAll__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {
- close: true,
- data: data,
- type: !!(data !== null && data !== void 0 && data.length) ? type : "",
- style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, stylesPrev),
- onClose: function onClose() {
- return setData("");
- }
- })]
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
+ className: ImageDimensionsmodules.img,
+ ref: imgRef
+ // crossOrigin='anonymous'
+ // src={data?.src}
+ })]
+ })
});
-});
+};
+/* harmony default export */ var components_ImageDimensions = (ImageDimensions);
/***/ }),
@@ -1107,6 +1830,7 @@ function _unescape(str) {
\*************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ h: function() { return /* binding */ MyCodeMirror; }
/* harmony export */ });
@@ -1201,6 +1925,9 @@ var LanguageDesc = {
content: ''
},
onFinish: onSubmit,
+ style: {
+ width: 500
+ },
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.Item, {
label: "\u4EE3\u7801\u8BED\u8A00",
name: "language",
@@ -1306,12 +2033,13 @@ function MyCodeMirror(_ref2) {
/***/ }),
-/***/ 49177:
+/***/ 89215:
/*!***************************************************************!*\
- !*** ./src/components/markdown-editor/index.tsx + 14 modules ***!
+ !*** ./src/components/markdown-editor/index.tsx + 15 modules ***!
\***************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
@@ -1436,9 +2164,13 @@ var DEFAULTICONS = [{
title: '行内公式',
icon: 'md-iconfont icon-sum',
actionName: 'inline-latex'
+}, {
+ title: '数学图像',
+ icon: 'iconfont icon-shuxuetuxiang2',
+ actionName: 'maths-latex'
}, {
title: '多行公式',
- icon: 'md-iconfont icon-formula',
+ icon: 'iconfont icon-jisuan1',
actionName: 'latex'
}, '|', {
title: '添加图片',
@@ -1577,7 +2309,7 @@ var modal = __webpack_require__(88618);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
var es_form = __webpack_require__(78241);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
-var input = __webpack_require__(1056);
+var input = __webpack_require__(11694);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
;// CONCATENATED MODULE: ./src/components/markdown-editor/link/index.tsx
@@ -1607,6 +2339,9 @@ var formItemLayout = {
},
className: "link-panel",
onFinish: onSubmit,
+ style: {
+ width: 500
+ },
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u94FE\u63A5\u5730\u5740",
name: "link",
@@ -3315,6 +4050,7 @@ function FlowChart(_ref) {
destroyOnClose: true,
maskClosable: false,
getContainer: modalRef.current,
+ rootClassName: "zIndex-9999",
title: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: 1,
@@ -3510,6 +4246,110 @@ var add_table_panel_style = {
})]
});
});
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/index.js + 2 modules
+var es_switch = __webpack_require__(78673);
+// EXTERNAL MODULE: ./src/components/MathematicalGraphics/js/index.js
+var js = __webpack_require__(28871);
+var js_default = /*#__PURE__*/__webpack_require__.n(js);
+;// CONCATENATED MODULE: ./src/components/MathematicalGraphics/index.tsx
+
+
+
+
+
+
+
+var MathematicalGraphics_FlowChart = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(function (_ref, ref) {
+ var use3d = _ref.use3d,
+ width = _ref.width,
+ height = _ref.height,
+ callback = _ref.callback,
+ showSaveButton = _ref.showSaveButton;
+ var ggbAppletRef = (0,_react_17_0_2_react.useRef)();
+ var appletRef = (0,_react_17_0_2_react.useRef)();
+ var _useState = (0,_react_17_0_2_react.useState)(false),
+ _useState2 = slicedToArray_default()(_useState, 2),
+ is3D = _useState2[0],
+ setIs3d = _useState2[1];
+ var parameters = (0,_react_17_0_2_react.useRef)({
+ "id": ggbAppletRef,
+ "appName": "graphing",
+ "width": width || 1000,
+ "height": height || 600,
+ "showToolBar": true,
+ "showMenuBar": true,
+ "allowStyleBar": true,
+ "showAlgebraInput": true,
+ "enableLabelDrags": false,
+ "enableShiftDragZoom": true,
+ "showToolBarHelp": false,
+ "errorDialogsActive": true,
+ "showTutorialLink": true,
+ "showLogging": true,
+ "useBrowserForJS": false
+ });
+ (0,_react_17_0_2_react.useEffect)(function () {
+ appletRef.current = new (js_default())(parameters.current, true);
+ window.onload = function () {
+ appletRef.current.inject('applet_container');
+ };
+ }, []);
+ var getImgData = function getImgData() {
+ var str = window.ggbApplet.getPNGBase64(1, true, 72);
+ callback && callback(str);
+ return str;
+ };
+ (0,_react_17_0_2_react.useEffect)(function () {
+ parameters.current.appName = is3D ? "3D" : "graphing";
+ appletRef.current.inject('applet_container');
+ }, [is3D]);
+ (0,_react_17_0_2_react.useEffect)(function () {
+ setIs3d(use3d);
+ }, [use3d]);
+ (0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
+ return {
+ getImgData: getImgData
+ };
+ });
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ style: {
+ width: "100%",
+ height: "100%"
+ },
+ id: "applet_container",
+ ref: ggbAppletRef
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
+ align: "middle",
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
+ flex: 1,
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_switch/* default */.Z, {
+ size: "default",
+ checkedChildren: "\u5173\u95ED3D\u56FE\u50CF",
+ unCheckedChildren: "\u5F00\u542F3D\u56FE\u50CF",
+ checked: is3D,
+ onChange: function onChange(e) {
+ return setIs3d(e);
+ }
+ })
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
+ size: "large",
+ onClick: getImgData,
+ style: {
+ zIndex: 8,
+ marginTop: 10
+ },
+ type: "primary",
+ children: "\u4FDD\u5B58\u5230\u7F16\u8F91\u5668"
+ })
+ })]
+ })]
+ });
+});
+/* harmony default export */ var MathematicalGraphics = (MathematicalGraphics_FlowChart);
+// EXTERNAL MODULE: ./src/components/MathsLatexKeybords/keybords.tsx
+var keybords = __webpack_require__(70118);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(83877);
;// CONCATENATED MODULE: ./src/components/markdown-editor/constant.ts
@@ -3556,6 +4396,8 @@ var useInterval = __webpack_require__(94158);
+
+
@@ -3573,7 +4415,7 @@ function processSize(size) {
var isMac = navigator.platform.toUpperCase().indexOf('MAC') >= 0;
var key = isMac ? 'Cmd' : 'Ctrl';
var DEFAULTKEYMAP = defineProperty_default()(defineProperty_default()({}, key + '-B', 'bold'), key + '-I', 'italic');
-var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, LINK, '添加链接'), CODE_BLOCK, '添加代码块'), UPLOAD_IMAGE, '添加图片'), DRAW_IMAGE, '添加画图'), ADD_FLOWCHART, '插入流程图'), ADD_TABLE, '添加表格');
+var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, LINK, '添加链接'), CODE_BLOCK, '添加代码块'), UPLOAD_IMAGE, '添加图片'), DRAW_IMAGE, '添加画图'), ADD_FLOWCHART, '插入流程图'), ADD_TABLE, '添加表格'), 'maths-latex', "数学图像"), 'inline-latex', "LATEX公式");
//https://codemirror.net/demo
//The height can be set through CSS (by giving the .CodeMirror class a height property), or by calling the cm's setSize method.
@@ -3990,10 +4832,11 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
}
return cm.focus();
case 'inline-latex':
- cm.replaceSelection('`$$' + selection + '$$`');
- if (selection === '') {
- cm.setCursor(cursor.line, cursor.ch + 3);
- }
+ setAction("inline-latex");
+ // cm.replaceSelection('`$$' + selection + '$$`')
+ // if (selection === '') {
+ // cm.setCursor(cursor.line, cursor.ch + 3)
+ // }
return cm.focus();
case 'latex':
cm.replaceSelection("```latex\n" + selection + "\n```");
@@ -4065,6 +4908,9 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
case DRAW_IMAGE:
setAction(DRAW_IMAGE);
return;
+ case "maths-latex":
+ setAction("maths-latex");
+ return;
case ADD_FLOWCHART:
setAction(ADD_FLOWCHART);
return;
@@ -4089,6 +4935,26 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
content = values.content;
cm.replaceSelection(['```' + language, content, '```'].join('\n'));
return cm.focus();
+ case "maths-latex":
+ var binaryString = atob(values);
+ var uint8Array = new Uint8Array(binaryString.length);
+ for (var i = 0; i < binaryString.length; i++) {
+ uint8Array[i] = binaryString.charCodeAt(i);
+ }
+ var files = new Blob([uint8Array], {
+ type: "image/png"
+ });
+ uploadImage(files, function (data) {
+ if (data.id) {
+ cm.replaceSelection(".concat(data.content_type, ")"));
+ } else {
+ if ((data === null || data === void 0 ? void 0 : data.status) === 401) document.location.href = '/user/login';
+ }
+ });
+ break;
+ case "inline-latex":
+ cm.replaceSelection("`$$" + values + "$$`");
+ break;
case UPLOAD_IMAGE:
case DRAW_IMAGE:
case FLOW_CHART:
@@ -4166,6 +5032,16 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
callback: ExecutePluginAction,
onCancel: onCancel
});
+ case "maths-latex":
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(MathematicalGraphics, {
+ showSaveButton: true,
+ callback: ExecutePluginAction
+ });
+ case "inline-latex":
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(keybords/* default */.Z, {
+ showSaveButton: true,
+ callback: ExecutePluginAction
+ });
default:
return null;
}
@@ -4306,7 +5182,7 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
onCancel: onCancel,
footer: null,
destroyOnClose: true,
- width: action === ADD_FLOWCHART ? "1200px" : 520,
+ width: action === ADD_FLOWCHART ? "1200px" : null,
height: action === ADD_FLOWCHART ? "80vh" : null,
className: "markdown-popup-form",
children: PluginEl
@@ -4323,6 +5199,7 @@ var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty
\**********************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Z: function() { return /* binding */ Dialog; }
/* harmony export */ });
@@ -4372,12 +5249,13 @@ var Dialog = /*#__PURE__*/function (_React$Component) {
/***/ }),
-/***/ 96321:
+/***/ 49177:
/*!****************************************************************!*\
!*** ./src/components/ui-customization/index.tsx + 34 modules ***!
\****************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
@@ -4637,7 +5515,7 @@ var SuperiorTabs = function SuperiorTabs(_ref) {
// extracted by mini-css-extract-plugin
/* harmony default export */ var CustomInputmodules = ({"flex_box_center":"flex_box_center___yX6Oa","flex_space_between":"flex_space_between___t7oqF","flex_box_vertical_center":"flex_box_vertical_center___dEIHy","flex_box_center_end":"flex_box_center_end___taQDF","flex_box_column":"flex_box_column___xY_Lr","input":"input___PW2zI","dropdown":"dropdown___vSy8B","menu":"menu___NiyBu","text":"text___Grueu","b1":"b1___ZKryM","b2":"b2___aKyGa"});
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
-var input = __webpack_require__(1056);
+var input = __webpack_require__(11694);
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomInput/index.tsx
@@ -4785,7 +5663,7 @@ var spin = __webpack_require__(71418);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
var tooltip = __webpack_require__(6848);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/rate/index.js + 8 modules
-var rate = __webpack_require__(19479);
+var rate = __webpack_require__(91052);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(83877);
// EXTERNAL MODULE: ./src/utils/util.tsx
@@ -5719,6 +6597,7 @@ var CustomCountdown_CustomCountdown = function CustomCountdown(_ref) {
\****************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
+"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Z: function() { return /* binding */ useInterval; }
/* harmony export */ });
@@ -5748,37 +6627,62 @@ function useInterval(callback, delay) {
/***/ }),
-/***/ 83337:
-/*!**********************************************************************!*\
- !*** ./src/pages/virtualSpaces/Lists/Discussion/AddOrEdit/index.tsx ***!
- \**********************************************************************/
+/***/ 75498:
+/*!***************************************************************************!*\
+ !*** ./src/pages/Shixuns/New/components/ApplyModal/index.tsx + 1 modules ***!
+ \***************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectWithoutProperties.js */ 39647);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react */ 59301);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! antd */ 8591);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! antd */ 48826);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! antd */ 43418);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! antd */ 78241);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! antd */ 1056);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! antd */ 95237);
-/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! antd */ 43604);
-/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../index.less?modules */ 50);
-/* harmony import */ var _utils_env__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/utils/env */ 83877);
-/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @ant-design/icons */ 48796);
-/* harmony import */ var _components_QuestionEditor_MdEditorInForm__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/components/QuestionEditor/MdEditorInForm */ 11776);
-/* harmony import */ var _components_ui_customization__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/components/ui-customization */ 96321);
-/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
+"use strict";
+
+// EXPORTS
+__webpack_require__.d(__webpack_exports__, {
+ Z: function() { return /* binding */ components_ApplyModal; }
+});
+
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
+var regeneratorRuntime = __webpack_require__(7557);
+var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
+var asyncToGenerator = __webpack_require__(41498);
+var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
+var slicedToArray = __webpack_require__(79800);
+var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
+// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectWithoutProperties.js
+var objectWithoutProperties = __webpack_require__(39647);
+var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
+var _react_17_0_2_react = __webpack_require__(59301);
+// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 15 modules
+var _umi_production_exports = __webpack_require__(16749);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
+var input = __webpack_require__(11694);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
+var es_form = __webpack_require__(78241);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
+var modal = __webpack_require__(43418);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
+var message = __webpack_require__(8591);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/upload/index.js + 24 modules
+var upload = __webpack_require__(53188);
+// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
+var es_button = __webpack_require__(3113);
+// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
+var env = __webpack_require__(83877);
+// EXTERNAL MODULE: ./src/assets/images/qrCode.png
+var qrCode = __webpack_require__(55351);
+;// CONCATENATED MODULE: ./src/pages/Shixuns/New/components/ApplyModal/index.less?modules
+// extracted by mini-css-extract-plugin
+/* harmony default export */ var ApplyModalmodules = ({"flexRow":"flexRow___JBN3B","flexColumn":"flexColumn___zXgFj","formWrap":"formWrap___aNgan","upload":"upload___yGdLQ","color0152d9":"color0152d9___zzEpS","colorCCC":"colorCCC___k4Dxq","footerWrap":"footerWrap___WrUZd","qrCode":"qrCode___GPwSg","a1":"a1___R6etl","code":"code___fCL_L","group":"group___n7tgy","groupNumber":"groupNumber___tw7hA","a2":"a2___GGjDE"});
+// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
+var jsx_runtime = __webpack_require__(37712);
+;// CONCATENATED MODULE: ./src/pages/Shixuns/New/components/ApplyModal/index.tsx
-var _excluded = ["handleFinish", "form", "dispatch"];
+var _excluded = ["newShixuns", "globalSetting", "loading", "dispatch"];
@@ -5787,416 +6691,257 @@ var _excluded = ["handleFinish", "form", "dispatch"];
-var AddOrEdit = function AddOrEdit(_ref) {
- var _fileList$2;
- var handleFinish = _ref.handleFinish,
- form = _ref.form,
+var TextArea = input/* default */.Z.TextArea;
+var ApplyModal = function ApplyModal(_ref) {
+ var newShixuns = _ref.newShixuns,
+ globalSetting = _ref.globalSetting,
+ loading = _ref.loading,
dispatch = _ref.dispatch,
- props = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_2___default()(_ref, _excluded);
- var _useState = (0,react__WEBPACK_IMPORTED_MODULE_3__.useState)([]),
- _useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1___default()(_useState, 2),
+ props = objectWithoutProperties_default()(_ref, _excluded);
+ var _Form$useForm = es_form/* default */.Z.useForm(),
+ _Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
+ form = _Form$useForm2[0];
+ var _useState = (0,_react_17_0_2_react.useState)([]),
+ _useState2 = slicedToArray_default()(_useState, 2),
fileList = _useState2[0],
setFileList = _useState2[1];
- var uploadProps = {
- fileList: fileList,
- maxCount: 1,
- // accept: ".pdf, .docx, .doc, .xlsx, .xls, .ppt, .pptx, .zip,.jpg,.png",
- accept: "image/*",
- withCredentials: true,
- beforeUpload: function beforeUpload(file) {
- var fileSize = file.size / 1024 / 1024;
- if (fileSize > 2 || fileSize == 0) {
- antd__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP.error("".concat(file.name, " \u56FE\u7247\u65E0\u6CD5\u4E0A\u4F20\u3002").concat(fileSize == 0 ? "文件内容不能为空" : '超过图片大小限制(2MB)'));
- return antd__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z.LIST_IGNORE;
- }
- return true;
- },
- onRemove: function onRemove(file) {
- setFileList([]);
- },
- onChange: function onChange(info) {
- form.setFieldsValue({
- cover_id: ''
+ var handleFileChange = function handleFileChange(info) {
+ var statusList = ["uploading", "done", "removed"];
+ if (statusList.includes(info.file.status)) {
+ setFileList(info.fileList);
+ }
+ };
+ var handleFileRemove = function handleFileRemove(file) {
+ if (!file.percent || file.percent == 100) {
+ var _file$response;
+ var id = (_file$response = file.response) === null || _file$response === void 0 ? void 0 : _file$response.id;
+ modal/* default */.Z.confirm({
+ centered: true,
+ title: '确定要删除这个附件吗?',
+ okText: '确定',
+ cancelText: '取消',
+ onOk: function () {
+ var _onOk = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
+ var res;
+ return regeneratorRuntime_default()().wrap(function _callee$(_context) {
+ while (1) switch (_context.prev = _context.next) {
+ case 0:
+ _context.next = 2;
+ return dispatch({
+ type: 'newShixuns/deleteAttachment',
+ payload: {
+ id: id
+ }
+ });
+ case 2:
+ res = _context.sent;
+ res && setFileList(fileList.filter(function (item) {
+ var _item$response;
+ return ((_item$response = item.response) === null || _item$response === void 0 ? void 0 : _item$response.id) !== id;
+ }));
+ case 4:
+ case "end":
+ return _context.stop();
+ }
+ }, _callee);
+ }));
+ function onOk() {
+ return _onOk.apply(this, arguments);
+ }
+ return onOk;
+ }()
});
- var statusList = ["uploading", "done", "removed"];
- if (statusList.includes(info.file.status)) {
- var _info$fileList;
- setFileList(info.fileList);
- form.setFieldsValue({
- cover_id: (_info$fileList = info.fileList) === null || _info$fileList === void 0 || (_info$fileList = _info$fileList[0]) === null || _info$fileList === void 0 || (_info$fileList = _info$fileList.response) === null || _info$fileList === void 0 ? void 0 : _info$fileList.id
- });
- }
- },
- action: "".concat(_utils_env__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z.API_SERVER, "/api/attachments.json")
+ return false;
+ }
};
- var fileUploadProps = {
- multiple: true,
- maxCount: 10,
- // accept: ".pdf, .docx, .doc, .xlsx, .xls, .ppt, .pptx, .zip,.jpg,.png",
- withCredentials: true,
- beforeUpload: function beforeUpload(file) {
- var fileSize = file.size / 1024 / 1024;
- if (fileSize > 500 || fileSize == 0) {
- antd__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP.error("".concat(file.name, " \u6587\u4EF6\u65E0\u6CD5\u4E0A\u4F20\u3002").concat(fileSize == 0 ? "文件内容不能为空" : '超过文件大小限制(500MB)'));
- return antd__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z.LIST_IGNORE;
- }
- return true;
- },
- action: "".concat(_utils_env__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z.API_SERVER, "/api/attachments.json")
+ var handleFileBeforeUpload = function handleFileBeforeUpload(file) {
+ if (fileList.length) {
+ return false;
+ }
+ var is150M = file.size / 1024 / 1024 > 50;
+ if (is150M) {
+ message/* default */.ZP.info('文件大小必须小于50MB');
+ return false;
+ }
+ return true;
};
- var renderImg = function renderImg() {
- var _fileList$;
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsxs)("div", {
- className: _index_less_modules__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z.imgUpLoad,
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("img", {
- src: _utils_env__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z.API_SERVER + "/api/attachments/" + (fileList === null || fileList === void 0 || (_fileList$ = fileList[0]) === null || _fileList$ === void 0 || (_fileList$ = _fileList$.response) === null || _fileList$ === void 0 ? void 0 : _fileList$.id),
- alt: "avatar",
- style: {
- width: '100%'
- }
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("div", {
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_ant_design_icons__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {
- onClick: function onClick() {
- setFileList([]);
- form.setFieldsValue({
- cover_id: ''
+ var handleFinish = /*#__PURE__*/function () {
+ var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2(values) {
+ var _fileList$;
+ var _ref3, language, runtime, run_method, code, res;
+ return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
+ while (1) switch (_context2.prev = _context2.next) {
+ case 0:
+ _ref3 = values || {}, language = _ref3.language, runtime = _ref3.env, run_method = _ref3.mode, code = _ref3.code;
+ _context2.next = 3;
+ return dispatch({
+ type: 'newShixuns/applyShixunMirror',
+ payload: {
+ language: language,
+ runtime: runtime,
+ run_method: run_method,
+ attachment_id: fileList === null || fileList === void 0 || (_fileList$ = fileList[0]) === null || _fileList$ === void 0 || (_fileList$ = _fileList$.response) === null || _fileList$ === void 0 ? void 0 : _fileList$.id
+ }
});
- },
- style: {
- fontSize: '16px',
- color: 'red'
- }
- })
- })]
- });
+ case 3:
+ res = _context2.sent;
+ dispatch({
+ type: 'newShixuns/setActionTabs',
+ payload: {}
+ });
+ if (res) {
+ message/* default */.ZP.success("新建申请已提交,请等待管理员审核。");
+ }
+ case 6:
+ case "end":
+ return _context2.stop();
+ }
+ }, _callee2);
+ }));
+ return function handleFinish(_x) {
+ return _ref2.apply(this, arguments);
+ };
+ }();
+ var handleAfterClose = function handleAfterClose() {
+ form.resetFields();
+ setFileList([]);
};
- (0,react__WEBPACK_IMPORTED_MODULE_3__.useEffect)(function () {
- if (props.open && form.getFieldValue("cover_id") && form.getFieldValue("cover")) {
- setFileList([{
- response: form.getFieldValue("cover")
- }]);
- }
- }, [props.open]);
- return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, props), {}, {
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)(modal/* default */.Z, {
+ centered: true,
+ keyboard: false,
+ closable: false,
+ destroyOnClose: true,
+ open: newShixuns.actionTabs.key === 'NewShixuns-Apply',
+ title: "\u7533\u8BF7\u65B0\u5EFA",
+ width: "1000px",
+ footer: null,
+ afterClose: handleAfterClose,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
+ className: ApplyModalmodules.qrCode,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
+ className: ApplyModalmodules.a1,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ className: ApplyModalmodules.code,
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
+ width: 120,
+ height: 120,
+ src: qrCode,
+ alt: "\u4E8C\u7EF4\u7801"
+ })
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ className: ApplyModalmodules.group,
+ children: "\u5B9E\u9A8C\u73AF\u5883\u7533\u8BF7QQ\u7FA4"
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ className: ApplyModalmodules.groupNumber,
+ children: "\u7FA4\u53F7\uFF1A740157011"
+ })]
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
+ className: ApplyModalmodules.a2,
+ children: ["\u5C0A\u656C\u7684\u8001\u5E08/\u540C\u5B66\u60A8\u597D\uFF0C", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "\u5982\u679C\u60A8\u60F3\u65B0\u5EFA\u5B9E\u9A8C\u73AF\u5883\uFF0C\u53EF\u4EE5\u626B\u63CF\u5DE6\u4FA7\u4E8C\u7EF4\u7801\u8FDB\u7FA4\uFF0C\u76F4\u63A5\u5411\u6211\u4EEC\u7684\u5DE5\u4F5C\u4EBA\u5458\u7533\u8BF7\u54E6~ \u4E5F\u53EF\u4EE5\u63D0\u4EA4\u4E0B\u9762\u7684\u8868\u5355\u7533\u8BF7\uFF0C\u6211\u4EEC\u7684\u5DE5\u4F5C\u4EBA\u5458\u6536\u5230\u7533\u8BF7\u4FE1\u606F\u5C06\u4F1A\u7B2C\u4E00\u65F6\u95F4\u8054\u7CFB\u60A8\uFF01"]
+ })]
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
+ className: ApplyModalmodules.formWrap,
form: form,
- initialValues: {},
- layout: "vertical",
- onFinish: function onFinish(ValueAll) {
- handleFinish(ValueAll);
- setFileList([]);
+ labelCol: {
+ span: 4
+ },
+ wrapperCol: {
+ span: 20
},
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z.Item, {
- htmlFor: null,
- name: "name",
- label: "\u6807\u9898",
+ onFinish: handleFinish,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
+ label: "\u8BED\u8A00\uFF1A",
+ name: "language",
rules: [{
required: true,
- message: '请输入标题'
+ message: '请填写该镜像语言'
}],
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z, {
- placeholder: "\u8BF7\u8F93\u5165\u6807\u9898",
- maxLength: 60,
- showCount: true
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextArea, {
+ placeholder: "\u8BF7\u586B\u5199\u8BE5\u955C\u50CF\u662F\u57FA\u4E8E\u4EC0\u4E48\u8BED\u8A00\uFF1A\u793A\u4F8B\uFF1APython",
+ rows: 4
})
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z.Item, {
- htmlFor: null,
- name: "desc",
- label: "\u5185\u5BB9",
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
+ label: "\u7CFB\u7EDF\u73AF\u5883\uFF1A",
+ name: "env",
rules: [{
required: true,
- message: '请在此输入内容'
+ message: '请填写该镜像语言系统环境'
}],
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_components_QuestionEditor_MdEditorInForm__WEBPACK_IMPORTED_MODULE_6__/* .MdEditorInForm */ .h, {
- placeholder: "\u8BF7\u5728\u6B64\u8F93\u5165\u5185\u5BB9",
- scrollId: '',
- watch: true,
- height: 192
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextArea, {
+ placeholder: "\u8BF7\u586B\u5199\u8BE5\u955C\u50CF\u662F\u57FA\u4E8E\u4EC0\u4E48linux\u7CFB\u7EDF\u73AF\u5883,\u4EE3\u7801\u8FD0\u884C\u73AF\u5883",
+ rows: 4
})
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z.Item, {
- htmlFor: null,
- label: "附件",
- name: "attachment_ids",
- valuePropName: "fileList",
- getValueFromEvent: function getValueFromEvent(e) {
- if (Array.isArray(e)) {
- return e;
- }
- return e === null || e === void 0 ? void 0 : e.fileList;
- },
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, fileUploadProps), {}, {
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z, {
- wrap: false,
- align: "middle",
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_components_ui_customization__WEBPACK_IMPORTED_MODULE_7__/* .CustomButton */ .op, {
- style: {
- borderRadius: "2px"
- },
- icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("i", {
- className: "iconfont icon-shangchuan3"
- }),
- children: "\u6587\u4EF6\u4E0A\u4F20"
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z, {
- style: {
- marginLeft: "16px",
- color: "#5F6367"
- },
- onClick: function onClick(e) {
- e.preventDefault();
- e.stopPropagation();
- },
- children: "1\u3001\u4E0D\u652F\u6301\u65AD\u70B9\u7EED\u4F20\uFF0C\u5355\u4E2A\u6587\u4EF6\u5927\u5C0F\u8BF7\u52FF\u8D85\u8FC7500M\uFF1B2\u3001\u4E00\u6B21\u6700\u591A\u4E0A\u4F2010\u4E2A\u6587\u4EF6\u3002"
- })]
- })
- }))
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z.Item, {
- name: "cover_id",
- label: "\u5C01\u9762\u56FE\u7247",
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
+ label: "\u6D4B\u8BD5\u4EE3\u7801\u8FD0\u884C\u65B9\u5F0F\uFF1A",
+ name: "mode",
rules: [{
required: true,
- message: '请上传封面图片'
+ message: '请填写该镜像测试代码运行方式'
}],
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("div", {
- className: _index_less_modules__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z.upload,
- children: fileList !== null && fileList !== void 0 && (_fileList$2 = fileList[0]) !== null && _fileList$2 !== void 0 && (_fileList$2 = _fileList$2.response) !== null && _fileList$2 !== void 0 && _fileList$2.id ? renderImg() : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, uploadProps), {}, {
- children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z, {
- wrap: false,
- align: "middle",
- children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_components_ui_customization__WEBPACK_IMPORTED_MODULE_7__/* .CustomButton */ .op, {
- style: {
- borderRadius: "2px"
- },
- icon: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)("i", {
- className: "iconfont icon-shangchuan3"
- }),
- children: "\u56FE\u7247\u4E0A\u4F20"
- }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z, {
- style: {
- marginLeft: "16px",
- color: "#5F6367"
- },
- onClick: function onClick(e) {
- e.preventDefault();
- e.stopPropagation();
- },
- children: "\u8BF7\u9009\u62E9jpg\u3001png\u683C\u5F0F\uFF0C\u5EFA\u8BAE\u5C3A\u5BF8282*212\u50CF\u7D20"
- })]
- })
- }))
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextArea, {
+ placeholder: "\u8BF7\u586B\u5199\u8BE5\u955C\u50CF\u4E2D\u6D4B\u8BD5\u4EE3\u7801\u8FD0\u884C\u65B9\u5F0F",
+ rows: 4
+ })
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
+ label: "\u6D4B\u8BD5\u4EE3\u7801\uFF1A",
+ name: "code",
+ rules: [{
+ required: true,
+ message: '请上传附件'
+ }],
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ className: ApplyModalmodules.upload,
+ children: /*#__PURE__*/(0,jsx_runtime.jsxs)(upload/* default */.Z, {
+ fileList: fileList,
+ action: "".concat(env/* default */.Z.API_SERVER, "/api/attachments.json?client_key=6d57f8c3dd186c5ada392546ace9620a"),
+ onChange: handleFileChange,
+ onRemove: handleFileRemove,
+ beforeUpload: handleFileBeforeUpload,
+ withCredentials: true,
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
+ className: "".concat(ApplyModalmodules.color0152d9, " current"),
+ children: "\u4E0A\u4F20\u9644\u4EF6"
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
+ className: "".concat(ApplyModalmodules.colorCCC, " ml10"),
+ children: "(\u5355\u4E2A\u6587\u4EF650M\u4EE5\u5185)"
+ })]
+ })
+ })
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
+ className: ApplyModalmodules.footerWrap,
+ children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z.Item, {
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
+ className: "mr5",
+ size: 'middle',
+ onClick: function onClick() {
+ dispatch({
+ type: 'newShixuns/setActionTabs',
+ payload: {}
+ });
+ },
+ children: "\u53D6\u6D88"
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
+ size: 'middle',
+ type: "primary",
+ htmlType: "submit",
+ loading: loading['newShixuns/applyShixunMirror'],
+ children: "\u4FDD\u5B58"
+ })]
})
})]
- })
- }));
-};
-/* harmony default export */ __webpack_exports__.Z = (AddOrEdit);
-
-/***/ }),
-
-/***/ 39790:
-/*!*****************************!*\
- !*** ./src/utils/marked.ts ***!
- \*****************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
-
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
-/* harmony export */ AL: function() { return /* binding */ resetMathExpressions; },
-/* harmony export */ Iy: function() { return /* binding */ cleanToc; },
-/* harmony export */ Qv: function() { return /* binding */ getTocContent; },
-/* harmony export */ ez: function() { return /* binding */ getMathExpressions; },
-/* harmony export */ jb: function() { return /* binding */ lines; }
-/* harmony export */ });
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
-/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var marked__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! marked */ 32834);
-/* harmony import */ var marked__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(marked__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! marked/src/helpers */ 11690);
-/* harmony import */ var marked_src_helpers__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__);
-
-
-
-function indentCodeCompensation(raw, text) {
- var matchIndentToCode = raw.match(/^(\s+)(?:```)/);
- if (matchIndentToCode === null) {
- return text;
- }
- var indentToCode = matchIndentToCode[1];
- return text.split('\n').map(function (node) {
- var matchIndentInNode = node.match(/^\s+/);
- if (matchIndentInNode === null) {
- return node;
- }
- var _matchIndentInNode = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default()(matchIndentInNode, 1),
- indentInNode = _matchIndentInNode[0];
- if (indentInNode.length >= indentToCode.length) {
- return node.slice(indentToCode.length);
- }
- return node;
- }).join('\n');
-}
-//兼容之前的 ##标题式写法
-var toc = [];
-var ctx = [""];
-var renderer = new (marked__WEBPACK_IMPORTED_MODULE_1___default().Renderer)();
-var headingRegex = /^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/;
-function cleanToc() {
- toc.length = 0;
- ctx = [""];
-}
-var lines = {
- overflow: "hidden",
- WebkitBoxOrient: "vertical",
- display: "-webkit-box",
- WebkitLineClamp: 2
-};
-function buildToc(coll, k, level, ctx) {
- if (k >= coll.length || coll[k].level <= level) {
- return k;
- }
- var node = coll[k];
- ctx.push("- " + node.text + "");
- k++;
- var childCtx = [];
- k = buildToc(coll, k, node.level, childCtx);
- if (childCtx.length > 0) {
- ctx.push("
");
- childCtx.forEach(function (idm) {
- ctx.push(idm);
- });
- ctx.push("
");
- }
- ctx.push(" ");
- k = buildToc(coll, k, level, ctx);
- return k;
-}
-function getTocContent() {
- buildToc(toc, 0, 0, ctx);
- ctx.push("
");
- return ctx.join("");
-}
-var tokenizer = {
- heading: function heading(src) {
- var cap = headingRegex.exec(src);
- if (cap) {
- return {
- type: 'heading',
- raw: cap[0],
- depth: cap[1].length,
- text: cap[2]
- };
- }
- },
- fences: function fences(src) {
- var cap = this.rules.block.fences.exec(src);
- if (cap) {
- var raw = cap[0];
- var text = indentCodeCompensation(raw, cap[3] || '');
- var lang = cap[2] ? cap[2].trim() : cap[2];
- if (['latex', 'katex', 'math'].indexOf(lang) >= 0) {
- var id = next_id();
- var expression = text;
- text = id;
- math_expressions[id] = {
- type: 'block',
- expression: expression
- };
- }
- return {
- type: 'code',
- raw: raw,
- lang: lang,
- text: text
- };
- }
- }
-};
-var latexRegex = /(?:\${2})([^\n`]+?)(?:\${2})/gi;
-var katex_count = 0;
-var next_id = function next_id() {
- return "__special_katext_id_".concat(katex_count++, "__");
-};
-var math_expressions = {};
-function getMathExpressions() {
- return math_expressions;
-}
-function resetMathExpressions() {
- katex_count = 0;
- math_expressions = {};
-}
-function replace_math_with_ids(text) {
- text = text.replace(latexRegex, function (_match, expression) {
- var id = next_id();
- math_expressions[id] = {
- type: 'inline',
- expression: expression
- };
- return id;
- });
- return text;
-}
-var original_listitem = renderer.listitem;
-renderer.listitem = function (text) {
- return original_listitem(replace_math_with_ids(text));
-};
-var original_paragraph = renderer.paragraph;
-renderer.paragraph = function (text) {
- return original_paragraph(replace_math_with_ids(text));
-};
-var original_tablecell = renderer.tablecell;
-renderer.tablecell = function (content, flags) {
- return original_tablecell(replace_math_with_ids(content), flags);
-};
-renderer.code = function (code, infostring, escaped) {
- var lang = (infostring || '').match(/\S*/)[0];
- if (!lang) {
- return '
' + (escaped ? code : (0,marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__.escape)(code, true)) + '
';
- }
- if (['latex', 'katex', 'math'].indexOf(lang) >= 0) {
- return "".concat(code, "
");
- } else {
- return "").concat(escaped ? code : (0,marked_src_helpers__WEBPACK_IMPORTED_MODULE_2__.escape)(code, true), "
\n");
- }
-};
-renderer.heading = function (text, level, raw) {
- var anchor = this.options.headerPrefix + raw.toLowerCase().replace(/[^\w\\u4e00-\\u9fa5]]+/g, '-');
- toc.push({
- anchor: anchor,
- level: level,
- text: text
+ })]
});
- return '' + text + ' ';
};
-marked__WEBPACK_IMPORTED_MODULE_1___default().setOptions({
- silent: true,
- gfm: true,
- pedantic: false
-});
-marked__WEBPACK_IMPORTED_MODULE_1___default().use({
- tokenizer: tokenizer,
- renderer: renderer
-});
-/* harmony default export */ __webpack_exports__.ZP = ((marked__WEBPACK_IMPORTED_MODULE_1___default()));
-
-/***/ }),
-
-/***/ 47661:
-/*!**********************************************************!*\
- !*** ./src/components/QuestionEditor/index.less?modules ***!
- \**********************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__) {
-
-// extracted by mini-css-extract-plugin
-/* harmony default export */ __webpack_exports__.Z = ({"wrap":"wrap___ilWvf","deleteIcon":"deleteIcon___JBDG8","keywordTag":"keywordTag___iieCb","questionTitleEditorWrap":"questionTitleEditorWrap___MHB5s","choiceWrap":"choiceWrap___QFkTc","choiceIndex":"choiceIndex___Mr2YO","judgementIndex":"judgementIndex___fUVWK","setAnswerBtn":"setAnswerBtn___Whox5","activeAnswer":"activeAnswer___fGU6Y","activeJudgementAnswer":"activeJudgementAnswer___wJv8P","actionWrapper":"actionWrapper___ERQ7k","addIcon":"addIcon___L9TE0","inputBorder":"inputBorder___Q5tRE","placeholder":"placeholder___p9sFY","blankWrapper":"blankWrapper___nC45e","blankInput":"blankInput___pEHsx","blankInputNumberWrapper":"blankInputNumberWrapper___uEHb0","addBtn":"addBtn___WR5ZI","blankIndex":"blankIndex___x9Pny","baseInputWrapper":"baseInputWrapper___eVsG7","collapseWrapper":"collapseWrapper___ZTysU","panelHeader":"panelHeader___QSN9g","open":"open___B6FU9","close":"close___QX19r","hide":"hide___mn25n"});
-
-/***/ }),
-
-/***/ 50:
-/*!*********************************************************************!*\
- !*** ./src/pages/virtualSpaces/Lists/Discussion/index.less?modules ***!
- \*********************************************************************/
-/***/ (function(__unused_webpack_module, __webpack_exports__) {
-
-// extracted by mini-css-extract-plugin
-/* harmony default export */ __webpack_exports__.Z = ({"flex_box_center":"flex_box_center___QbjXY","flex_space_between":"flex_space_between___CGgf9","flex_box_vertical_center":"flex_box_vertical_center___TZqsW","flex_box_center_end":"flex_box_center_end___G6yjl","flex_box_column":"flex_box_column___X3SPm","Onerow":"Onerow___te_Su","MultiLine":"MultiLine___FQNWA","DiscussionList":"DiscussionList___AO3Id","DiscussionListItem":"DiscussionListItem___dGzLI","DiscussionListItemImg":"DiscussionListItemImg___XeC4p","imgUpLoad":"imgUpLoad___gjBfb"});
+/* harmony default export */ var components_ApplyModal = ((0,_umi_production_exports.connect)(function (_ref4) {
+ var newShixuns = _ref4.newShixuns,
+ loading = _ref4.loading,
+ globalSetting = _ref4.globalSetting;
+ return {
+ newShixuns: newShixuns,
+ globalSetting: globalSetting,
+ loading: loading.effects
+ };
+})(ApplyModal));
/***/ }),
@@ -6206,6 +6951,7 @@ marked__WEBPACK_IMPORTED_MODULE_1___default().use({
\**************************************************************************/
/***/ (function(module) {
+"use strict";
module.exports = "data:image/png;base64,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";
/***/ }),
@@ -6216,6 +6962,7 @@ module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKQAAAA8CAYAAADo
\*****************************************************************************/
/***/ (function(module) {
+"use strict";
module.exports = "data:image/png;base64,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";
/***/ }),
@@ -6226,6 +6973,7 @@ module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANQAAAA8CAYAAAAe
\************************************************************************/
/***/ (function(module) {
+"use strict";
module.exports = "data:image/png;base64,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";
/***/ })
diff --git a/45470.chunk.css b/47397.chunk.css
similarity index 95%
rename from 45470.chunk.css
rename to 47397.chunk.css
index 0e6ecfc05d..558279d075 100644
--- a/45470.chunk.css
+++ b/47397.chunk.css
@@ -1,3 +1,55 @@
+/*!*******************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./src/components/monaco-editor/index.css ***!
+ \*******************************************************************************************************************************************************************************************************************************************************************************************/
+.my-monaco-editor div,
+.my-diff-editor div {
+ font-size: inherit;
+}
+
+.my-error-line-wrp {
+ width: calc(100% - 20px) !important;
+ background: rgba(245, 0, 0, 0.2) !important;
+ height: auto !important;
+ color: rgba(245, 0, 0, 1);
+}
+
+
+.noCopyPaste .quick-input-widget {
+ display: none !important;
+}
+
+.breakpoints-select {
+
+ background: #FF0000;
+ width: 8px !important;
+ height: 8px !important;
+ left: 7px !important;
+ top: 7px;
+ border-radius: 4px;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ pointer-events: none;
+}
+
+.breakpoints-fake {
+ background: rgba(255, 0, 0, 0.5);
+ width: 8px !important;
+ height: 8px !important;
+ left: 7px !important;
+ top: 7px;
+ border-radius: 4px;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ pointer-events: none;
+}
+
+.highlighted-line {
+ background: #4B4B18;
+}
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/components/PreviewAll/index.less?modules ***!
\****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@@ -72,58 +124,6 @@
height: 100%;
}
-/*!*******************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./src/components/monaco-editor/index.css ***!
- \*******************************************************************************************************************************************************************************************************************************************************************************************/
-.my-monaco-editor div,
-.my-diff-editor div {
- font-size: inherit;
-}
-
-.my-error-line-wrp {
- width: calc(100% - 20px) !important;
- background: rgba(245, 0, 0, 0.2) !important;
- height: auto !important;
- color: rgba(245, 0, 0, 1);
-}
-
-
-.noCopyPaste .quick-input-widget {
- display: none !important;
-}
-
-.breakpoints-select {
-
- background: #FF0000;
- width: 8px !important;
- height: 8px !important;
- left: 7px !important;
- top: 7px;
- border-radius: 4px;
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
- pointer-events: none;
-}
-
-.breakpoints-fake {
- background: rgba(255, 0, 0, 0.5);
- width: 8px !important;
- height: 8px !important;
- left: 7px !important;
- top: 7px;
- border-radius: 4px;
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
- pointer-events: none;
-}
-
-.highlighted-line {
- background: #4B4B18;
-}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/components/ui-customization/Banner/index.less?modules ***!
\*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@@ -2626,6 +2626,105 @@ button[class~='ant-btn-default']:disabled.btn___In02G {
flex: 1 1;
}
+/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/pages/Shixuns/New/components/ApplyModal/index.less?modules ***!
+ \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+.flexRow___JBN3B {
+ display: flex;
+ flex-direction: row;
+}
+.flexColumn___zXgFj {
+ display: flex;
+ flex-direction: column;
+}
+.formWrap___aNgan {
+ font-size: 14px;
+}
+.formWrap___aNgan div[class~='ant-form-item-label'] label {
+ font-size: 14px;
+ color: rgba(0, 0, 0, 0.65);
+}
+.formWrap___aNgan div[class~='ant-form-item-control-input-content'] input {
+ font-size: 14px;
+ height: 40px;
+ line-height: 40px;
+}
+.formWrap___aNgan div[class~='ant-form-item-control-input-content'] textarea {
+ font-size: 14px;
+}
+.formWrap___aNgan div[class~='ant-form-item-control-input-content'] span {
+ font-size: 14px;
+}
+.upload___yGdLQ {
+ max-width: 370px;
+}
+.color0152d9___zzEpS {
+ color: #0152d9;
+}
+.colorCCC___k4Dxq {
+ color: #ccc;
+}
+.footerWrap___WrUZd div[class~='ant-form-item-control'] {
+ max-width: 100%;
+}
+.footerWrap___WrUZd div[class~='ant-form-item'] {
+ margin-bottom: 0px;
+}
+.footerWrap___WrUZd div[class~='ant-form-item-control-input-content'] {
+ display: flex;
+ justify-content: flex-end;
+}
+.qrCode___GPwSg {
+ padding: 20px;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ position: relative;
+ margin-bottom: 20px;
+}
+.qrCode___GPwSg::after {
+ content: '';
+ height: 1px;
+ background-color: #f1f1f1;
+ left: -16px;
+ bottom: 0;
+ position: absolute;
+ z-index: 1;
+ width: 1000px;
+}
+.qrCode___GPwSg .a1___R6etl {
+ display: flex;
+ flex-direction: column;
+ align-items: flex-start;
+ width: 190px;
+}
+.qrCode___GPwSg .a1___R6etl .code___fCL_L {
+ width: 130px;
+ height: 130px;
+ background: #ffffff;
+ box-shadow: 0px 0px 6px 2px #dedede;
+ border-radius: 8px;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+.qrCode___GPwSg .a1___R6etl .group___n7tgy {
+ font-size: 14px;
+ color: #3a3a3a;
+ margin-top: 4px;
+}
+.qrCode___GPwSg .a1___R6etl .groupNumber___tw7hA {
+ font-size: 12px;
+ color: #999999;
+}
+.qrCode___GPwSg .a2___GGjDE {
+ flex: 1 1;
+ font-size: 16px;
+ color: #333333;
+ line-height: 32px;
+ margin-top: 14px;
+}
+
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/components/ui-customization/CustomCrumbs/index.less?modules ***!
\***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@@ -2673,44 +2772,96 @@ button[class~='ant-btn-default']:disabled.btn___In02G {
color: #5F6368;
}
-/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/pages/Shixuns/Edit/body/Environment/Label/index.less?modules ***!
- \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
-.label___CZ1_z {
- display: flex;
- align-items: center;
- padding-bottom: 30px;
+/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** css ./node_modules/_css-loader@6.7.1@css-loader/dist/cjs.js??ruleSet[1].rules[5].oneOf[0].use[1]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/postcss-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[2]!./node_modules/_@umijs_bundler-webpack@4.1.1@@umijs/bundler-webpack/compiled/less-loader/index.js??ruleSet[1].rules[5].oneOf[0].use[3]!./src/components/MathsLatexKeybords/index.less?modules ***!
+ \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+.lists___xhHyq {
+ padding-bottom: 10px;
}
-.label___CZ1_z .left___ZKFRV {
+.lists___xhHyq code {
+ background: none !important;
+}
+.lists___xhHyq > div > div:first-child {
+ background: #f6f6f6;
display: flex;
align-items: center;
- flex-shrink: 0;
+ justify-content: center;
+ flex-direction: column;
+ padding: 10px 0;
+ font-size: 12px;
+ cursor: pointer;
}
-.label___CZ1_z .left___ZKFRV span {
- color: #E53333;
- font-family: SimSun, sans-serif;
- margin-top: -2px;
- margin-right: 2px;
+.lists___xhHyq > div > div:first-child [class^="katex"] {
+ font-size: 22px;
}
-.label___CZ1_z .left___ZKFRV div {
- font-size: 16px;
- color: #333333;
- line-height: 16px;
+.item___pWJAA {
+ position: relative;
}
-.label___CZ1_z .left___ZKFRV i {
- margin-left: 4px;
- color: #CCCCCC;
+.item___pWJAA:nth-last-child(-n + 3) .children___sDG61 {
+ left: auto;
+ left: initial;
+ right: 5px;
}
-.label___CZ1_z .right___zVTRn {
- flex: 1 1;
- position: relative;
+.item___pWJAA:hover {
+ z-index: 2147483648;
+}
+.item___pWJAA:hover .children___sDG61 {
+ display: block;
}
-.label___CZ1_z .right___zVTRn .error___oNJNo {
+.children___sDG61 {
+ display: none;
position: absolute;
- z-index: 10;
- left: 0;
- bottom: -27px;
+ left: 6px;
+ top: 70px;
+ width: 440px;
+ max-height: 400px;
+ overflow: auto;
+ background: #fff;
+ border: 1px solid #ccc;
+ border-radius: 4px;
+ box-shadow: 0 0px 6px #ccc;
+ padding: 15px;
+}
+.children___sDG61 h1 {
+ font-size: 14px;
+ padding-top: 6px;
+}
+.children___sDG61 .diamond___FwgzD > div {
+ background: #f6f6f6;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+ cursor: pointer;
+ height: 50px;
+ font-size: 12px;
+ padding: 0 10px;
+ min-width: 80px;
+}
+.children___sDG61 .diamond___FwgzD > div [class^="katex"] {
font-size: 14px;
- color: #E53333;
+}
+.button___WPN6r {
+ position: absolute;
+ right: 20px;
+ bottom: 20px;
+}
+.mathWrap___FmnMJ {
+ width: 800px;
+ height: 550px;
+}
+.mathFillWrap___PmY3H {
+ cursor: pointer;
+}
+.mathFillWrap___PmY3H ::part(menu-toggle) {
+ color: blue;
+ opacity: 1;
+ display: none;
+}
+.mathFillWrap___PmY3H math-field {
+ background: none;
+}
+.mathFillWrap___PmY3H * {
+ pointer-events: none;
}
diff --git a/47821.async.js b/47821.async.js
index 0e4c5638f9..88ec8fa0c2 100644
--- a/47821.async.js
+++ b/47821.async.js
@@ -45,7 +45,7 @@ var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
-var DownOutlined = __webpack_require__(42884);
+var DownOutlined = __webpack_require__(8415);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
var dropdown = __webpack_require__(91857);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
diff --git a/48136.async.js b/48136.async.js
new file mode 100644
index 0000000000..bdc4fbc7c5
--- /dev/null
+++ b/48136.async.js
@@ -0,0 +1,40565 @@
+"use strict";
+(self["webpackChunk"] = self["webpackChunk"] || []).push([[48136],{
+
+/***/ 48136:
+/*!********************************************************************!*\
+ !*** ./node_modules/_mathlatex@0.99.6@mathlatex/dist/mathlive.mjs ***!
+ \********************************************************************/
+/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
+
+/* unused harmony exports MathfieldElement, _renderMathInElement, convertAsciiMathToLatex, convertLatexToAsciiMath, convertLatexToMarkup, convertLatexToMathMl, convertLatexToSpeakableText, convertMathJsonToLatex, globalMathLive, makeSharedVirtualKeyboard, renderMathInDocument, renderMathInElement, validateLatex, version */
+/** MathLive 0.98.5 */
+var __defProp = Object.defineProperty;
+var __defProps = Object.defineProperties;
+var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
+var __getOwnPropSymbols = Object.getOwnPropertySymbols;
+var __hasOwnProp = Object.prototype.hasOwnProperty;
+var __propIsEnum = Object.prototype.propertyIsEnumerable;
+var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
+var __spreadValues = (a, b) => {
+ for (var prop in b || (b = {}))
+ if (__hasOwnProp.call(b, prop))
+ __defNormalProp(a, prop, b[prop]);
+ if (__getOwnPropSymbols)
+ for (var prop of __getOwnPropSymbols(b)) {
+ if (__propIsEnum.call(b, prop))
+ __defNormalProp(a, prop, b[prop]);
+ }
+ return a;
+};
+var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
+var __restKey = (key) => typeof key === "symbol" ? key : key + "";
+var __objRest = (source, exclude) => {
+ var target = {};
+ for (var prop in source)
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
+ target[prop] = source[prop];
+ if (source != null && __getOwnPropSymbols)
+ for (var prop of __getOwnPropSymbols(source)) {
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
+ target[prop] = source[prop];
+ }
+ return target;
+};
+
+// src/common/types.ts
+function isArray(x) {
+ return Array.isArray(x);
+}
+
+// src/editor/l10n-strings.ts
+var STRINGS = {
+ // Simplified Chinese
+ en: {
+ "keyboard.tooltip.symbols": "\u7B26\u53F7",
+ "keyboard.tooltip.greek": "\u5E0C\u814A\u5B57\u6BCD",
+ "keyboard.tooltip.numeric": "\u6570\u5B57",
+ "keyboard.tooltip.alphabetic": "\u7F57\u9A6C\u5B57\u6BCD",
+ "tooltip.cut to clipboard": "\u526a\u5207\u5230\u526a\u8d34\u677f",
+ "tooltip.copy to clipboard": "\u590D\u5236\u5230\u526A\u8D34\u677F",
+ "tooltip.paste from clipboard":"\u7c98\u8d34",
+ "tooltip.redo": "\u91CD\u505A",
+ "tooltip.toggle virtual keyboard": "\u5207\u6362\u865A\u62DF\u952E\u76D8",
+ "tooltip.undo": "\u64A4\u6D88",
+ "menu.insert matrix": "\u63D2\u5165\u77E9\u9635",
+ "menu.borders": "\u77E9\u9635\u5206\u9694\u7B26",
+ "menu.array.add row above": "\u5728\u540E\u9762\u6DFB\u52A0\u884C",
+ "menu.array.add row below": "\u5728\u524D\u9762\u6DFB\u52A0\u884C",
+ "menu.array.add column after": "\u5728\u540E\u9762\u6DFB\u52A0\u5217r",
+ "menu.array.add column before": "\u5728\u524D\u9762\u6DFB\u52A0\u5217",
+ "menu.array.delete row": "\u5220\u9664\u884C",
+ "menu.array.delete rows": "\u5220\u9664\u9009\u5B9A\u884C",
+ "menu.array.delete column": "\u5220\u9664\u5217",
+ "menu.array.delete columns": "\u5220\u9664\u9009\u5B9A\u7684\u5217",
+ "menu.mode": "\u6A21\u5F0F",
+ "menu.mode-math": "\u6570\u5B66",
+ "menu.mode-text": "\u6587\u672C",
+ "menu.mode-latex": "LaTeX",
+ "tooltip.blackboard": "\u9ED1\u677F",
+ "tooltip.bold": "\u7C97\u4F53",
+ "tooltip.italic": "\u659C\u4F53",
+ "tooltip.fraktur": "Fraktur",
+ "tooltip.script": "\u811A\u672C",
+ "tooltip.caligraphic": "\u8349\u4E66",
+ "tooltip.typewriter": "\u6253\u5B57\u673A",
+ "tooltip.roman-upright": "\u7F57\u9A6C\u76F4\u7ACB",
+ "tooltip.row-by-col": "%@ \xD7 %@",
+ "menu.font-style": "\u5B57\u4F53\u6837\u5F0F",
+ "menu.accent": "\u91CD\u97F3",
+ "menu.decoration": "\u88C5\u9970",
+ "menu.color": "\u989C\u8272",
+ "menu.background-color": "\u80CC\u666F",
+ "menu.evaluate": "\u8BA1\u7B97",
+ "menu.simplify": "\u7B80\u5316",
+ "menu.solve": "\u6C42\u89E3",
+ "menu.solve-for": "\u6C42\u89E3 %@",
+ "menu.cut": "\u526A\u5207",
+ "menu.copy": "\u590D\u5236",
+ "menu.copy-as-latex": "\u590D\u5236\u4E3A LaTeX",
+ "menu.copy-as-ascii-math": "\u590D\u5236\u4E3A ASCII Math",
+ "menu.copy-as-mathml": "\u590D\u5236\u4E3A MathML",
+ "menu.paste": "\u7C98\u8D34",
+ "menu.select-all": "\u5168\u9009",
+ // Colors (accessible labels in color swatches)
+ "color.red": "\u7EA2\u8272",
+ "color.orange": "\u6A59\u8272",
+ "color.yellow": "\u9EC4\u8272",
+ "color.lime": "\u7EFF\u9EC4\u8272",
+ "color.green": "\u7EFF\u8272",
+ "color.teal": "\u9752\u8272",
+ "color.cyan": "\u84DD\u7EFF\u8272",
+ "color.blue": "\u84DD\u8272",
+ "color.indigo": "\u975B\u84DD\u8272",
+ "color.purple": "\u7D2B\u8272",
+ "color.magenta": "\u6D0B\u7EA2\u8272",
+ "color.black": "\u9ED1\u8272",
+ "color.dark-grey": "\u6DF1\u7070\u8272",
+ "color.grey": "\u7070\u8272",
+ "color.light-grey": "\u6D45\u7070\u8272",
+ "color.white": "\u767D\u8272"
+ },
+};
+
+
+// src/ui/utils/capabilities.ts
+function isBrowser() {
+ return "window" in globalThis && "document" in globalThis;
+}
+function isTouchCapable() {
+ if ("matchMedia" in window)
+ return window.matchMedia("(pointer: coarse)").matches;
+ return "ontouchstart" in window || navigator.maxTouchPoints > 0;
+}
+function canVibrate() {
+ return typeof navigator.vibrate === "function";
+}
+function osPlatform() {
+ var _a3, _b3;
+ if (!isBrowser())
+ return "other";
+ const platform2 = (_b3 = (_a3 = navigator["userAgentData"]) == null ? void 0 : _a3.platform) != null ? _b3 : navigator.platform;
+ if (/^mac/i.test(platform2)) {
+ if (navigator.maxTouchPoints === 5)
+ return "ios";
+ return "macos";
+ }
+ if (/^win/i.test(platform2))
+ return "windows";
+ if (/android/i.test(navigator.userAgent))
+ return "android";
+ if (/iphone|ipod|ipad/i.test(navigator.userAgent))
+ return "ios";
+ if (/\bcros\b/i.test(navigator.userAgent))
+ return "chromeos";
+ return "other";
+}
+function supportRegexPropertyEscape() {
+ if (!isBrowser())
+ return true;
+ if (/firefox/i.test(navigator.userAgent)) {
+ const m = navigator.userAgent.match(/firefox\/(\d+)/i);
+ if (!m)
+ return false;
+ const version2 = parseInt(m[1]);
+ return version2 >= 78;
+ }
+ if (/trident/i.test(navigator.userAgent))
+ return false;
+ if (/edge/i.test(navigator.userAgent)) {
+ const m = navigator.userAgent.match(/edg\/(\d+)/i);
+ if (!m)
+ return false;
+ const version2 = parseInt(m[1]);
+ return version2 >= 79;
+ }
+ return true;
+}
+function supportPopover() {
+ return HTMLElement.prototype.hasOwnProperty("popover");
+}
+
+// src/core/l10n.ts
+var l10n = {
+ strings: STRINGS,
+ _locale: "",
+ // Important! Set the locale to empty so it can be determined at runtime
+ _dirty: false,
+ _subscribers: [],
+ _numberFormatter: void 0,
+ get locale() {
+ if (!l10n._locale)
+ l10n._locale = isBrowser() ? navigator.language.slice(0, 5) : "en-US";
+ return l10n._locale;
+ },
+ set locale(value) {
+ l10n._locale = value;
+ l10n._numberFormatter = void 0;
+ l10n.dirty = true;
+ },
+ get numberFormatter() {
+ if (!l10n._numberFormatter)
+ l10n._numberFormatter = new Intl.NumberFormat(l10n.locale);
+ return l10n._numberFormatter;
+ },
+ /*
+ * Two forms for this function:
+ * - merge(locale, strings)
+ * Merge a dictionary of keys -> values for the specified locale
+ * - merge(strings)
+ * Merge a dictionary of locale code -> dictionary of keys -> values
+ *
+ */
+ merge(locale, strings) {
+ if (typeof locale === "string" && strings) {
+ l10n.strings[locale] = __spreadValues(__spreadValues({}, l10n.strings[locale]), strings);
+ l10n.dirty = true;
+ } else {
+ for (const l of Object.keys(
+ locale
+ ))
+ l10n.merge(l, locale[l]);
+ }
+ },
+ get dirty() {
+ return l10n._dirty;
+ },
+ set dirty(val) {
+ if (l10n._dirty || l10n._dirty === val)
+ return;
+ l10n._dirty = true;
+ setTimeout(() => {
+ l10n._dirty = false;
+ this._subscribers.forEach((x) => x == null ? void 0 : x());
+ }, 0);
+ },
+ subscribe(callback) {
+ l10n._subscribers.push(callback);
+ return l10n._subscribers.length - 1;
+ },
+ unsubscribe(id) {
+ if (id < 0 || id >= l10n._subscribers.length)
+ return;
+ l10n._subscribers[id] = void 0;
+ },
+ /**
+ * Update the l10n strings in the DOM
+ */
+ update(root) {
+ let elements = root.querySelectorAll("[data-l10n-tooltip]");
+ for (const element of elements) {
+ const key = element.getAttribute("data-l10n-tooltip");
+ if (key) {
+ const localized = localize(key);
+ if (localized)
+ element.setAttribute("data-tooltip", localized);
+ }
+ }
+ elements = root.querySelectorAll("[data-l10n-arial-label]");
+ for (const element of elements) {
+ const key = element.getAttribute("data-l10n-arial-label");
+ if (key) {
+ const localized = localize(key);
+ if (localized)
+ element.setAttribute("aria-label", localized);
+ }
+ }
+ }
+};
+function localize(key, ...params) {
+ if (key === void 0)
+ return void 0;
+ let result = "";
+ const locale = l10n.locale;
+ if (l10n.strings[locale])
+ result = l10n.strings[locale][key];
+ const language = locale.slice(0, 2);
+ if (!result && l10n.strings[language])
+ result = l10n.strings[language][key];
+ if (!result)
+ result = l10n.strings.en[key];
+ if (!result)
+ return void 0;
+ const regex = /(%@|%([0-9]+)\$@)/g;
+ let match = regex.exec(result);
+ let index = 0;
+ while (match) {
+ const parameter = params[index++];
+ if (parameter) {
+ const parameterIndex = match[2] ? parseInt(match[2], 10) - 1 : index - 1;
+ let repl = params[parameterIndex];
+ if (typeof repl === "number")
+ repl = l10n.numberFormatter.format(repl);
+ result = result.replace(match[1], repl);
+ }
+ match = regex.exec(result);
+ }
+ result = result.replace(/%%/g, "%");
+ return result;
+}
+
+// src/core/color.ts
+var MATHEMATICA_COLORS = {
+ m0: "#3F3D99",
+ // Strong blue
+ m1: "#993D71",
+ // Strong cerise
+ m2: "#998B3D",
+ // Strong gold
+ m3: "#3D9956",
+ // Malachite green
+ m4: "#3D5A99",
+ // Strong cobalt blue
+ m5: "#993D90",
+ // Strong orchid
+ m6: "#996D3D",
+ // Strong orange
+ m7: "#43993D",
+ // Strong sap green
+ m8: "#3D7999",
+ // Cornflower blue
+ m9: "#843D99"
+ // Mulberry
+};
+var MATLAB_COLORS = {
+ blue: "#0072BD",
+ // [0, 0.4470, 0.7410] blue
+ orange: "#D95319",
+ // [0.8500, 0.3250, 0.0980] orange
+ yellow: "#EDB120",
+ // [0.9290, 0.6940, 0.1250] yellow
+ purple: "#7E2F8E",
+ // [0.4940, 0.1840, 0.5560] purple
+ green: "#77AC30",
+ // [0.4660, 0.6740, 0.1880] green
+ cyan: "#4DBEEE",
+ // [0.3010, 0.7450, 0.9330] cyan
+ red: "#A2142F"
+ // [0.6350, 0.0780, 0.1840] dark red
+};
+var BACKGROUND_COLORS = {
+ "red": "#fbbbb6",
+ "orange": "#ffe0c2",
+ "yellow": "#fff1c2",
+ "lime": "#d0e8b9",
+ "green": "#bceac4",
+ "teal": "#b9f1f1",
+ "cyan": "#b8e5c9",
+ "blue": "#b6d9fb",
+ "indigo": "#d1c2f0",
+ "purple": "#e3baf8",
+ "magenta": "#f9c8e0",
+ "black": "#353535",
+ "dark-grey": "#8C8C8C",
+ "grey": "#D0D0D0",
+ "light-grey": "#F0F0F0",
+ "white": "#ffffff"
+};
+var FOREGROUND_COLORS = {
+ "red": "#d7170b",
+ //<- 700, 500 ->'#f21c0d'
+ "orange": "#fe8a2b",
+ "yellow": "#ffc02b",
+ // <- 600, 500 -> '#ffcf33',
+ "lime": "#63b215",
+ "green": "#21ba3a",
+ "teal": "#17cfcf",
+ "cyan": "#13a7ec",
+ "blue": "#0d80f2",
+ "indigo": "#63c",
+ "purple": "#a219e6",
+ "magenta": "#eb4799",
+ "black": "#000",
+ "dark-grey": "#666",
+ "grey": "#A6A6A6",
+ "light-grey": "#d4d5d2",
+ "white": "#ffffff"
+};
+var DVIPS_TO_CHROMATIC = {
+ Red: "red",
+ Orange: "orange",
+ Yellow: "yellow",
+ LimeGreen: "lime",
+ Green: "green",
+ TealBlue: "teal",
+ Blue: "blue",
+ Violet: "indigo",
+ Purple: "purple",
+ Magenta: "magenta",
+ Black: "black",
+ Gray: "grey",
+ White: "white"
+};
+var DVIPS_COLORS = {
+ Apricot: "#FBB982",
+ Aquamarine: "#00B5BE",
+ Bittersweet: "#C04F17",
+ Black: "#221E1F",
+ // Indeed.
+ Blue: "#2D2F92",
+ BlueGreen: "#00B3B8",
+ BlueViolet: "#473992",
+ BrickRed: "#B6321C",
+ Brown: "#792500",
+ BurntOrange: "#F7921D",
+ CadetBlue: "#74729A",
+ CarnationPink: "#F282B4",
+ Cerulean: "#00A2E3",
+ CornflowerBlue: "#41B0E4",
+ Cyan: "#00AEEF",
+ Dandelion: "#FDBC42",
+ DarkOrchid: "#A4538A",
+ Emerald: "#00A99D",
+ ForestGreen: "#009B55",
+ Fuchsia: "#8C368C",
+ Goldenrod: "#FFDF42",
+ Gray: "#949698",
+ Green: "#00A64F",
+ GreenYellow: "#DFE674",
+ JungleGreen: "#00A99A",
+ Lavender: "#F49EC4",
+ Limegreen: "#8DC73E",
+ Magenta: "#EC008C",
+ Mahogany: "#A9341F",
+ Maroon: "#AF3235",
+ Melon: "#F89E7B",
+ MidnightBlue: "#006795",
+ Mulberry: "#A93C93",
+ NavyBlue: "#006EB8",
+ OliveGreen: "#3C8031",
+ Orange: "#F58137",
+ OrangeRed: "#ED135A",
+ Orchid: "#AF72B0",
+ Peach: "#F7965A",
+ Periwinkle: "#7977B8",
+ PineGreen: "#008B72",
+ Plum: "#92268F",
+ ProcessBlue: "#00B0F0",
+ Purple: "#99479B",
+ RawSienna: "#974006",
+ Red: "#ED1B23",
+ RedOrange: "#F26035",
+ RedViolet: "#A1246B",
+ Rhodamine: "#EF559F",
+ RoyalBlue: "#0071BC",
+ RoyalPurple: "#613F99",
+ RubineRed: "#ED017D",
+ Salmon: "#F69289",
+ SeaGreen: "#3FBC9D",
+ Sepia: "#671800",
+ SkyBlue: "#46C5DD",
+ SpringGreen: "#C6DC67",
+ Tan: "#DA9D76",
+ TealBlue: "#00AEB3",
+ Thistle: "#D883B7",
+ Turquoise: "#00B4CE",
+ Violet: "#58429B",
+ VioletRed: "#EF58A0",
+ White: "#FFFFFF",
+ WildStrawberry: "#EE2967",
+ Yellow: "#FFF200",
+ YellowGreen: "#98CC70",
+ YellowOrange: "#FAA21A"
+};
+function defaultColorMap(s) {
+ var _a3, _b3, _c2, _d2, _e, _f;
+ const colorSpec = s.split("!");
+ let baseRed;
+ let baseGreen;
+ let baseBlue;
+ let red = 255;
+ let green = 255;
+ let blue = 255;
+ let mix = -1;
+ const complementary = colorSpec.length > 0 && colorSpec[0].startsWith("-");
+ if (complementary)
+ colorSpec[0] = colorSpec[0].slice(1);
+ for (let i = 0; i < colorSpec.length; i++) {
+ baseRed = red;
+ baseGreen = green;
+ baseBlue = blue;
+ const colorName = (_a3 = colorSpec[i].trim().match(/^([A-Za-z\d-]+)/)) == null ? void 0 : _a3[1];
+ const lcColorName = colorName == null ? void 0 : colorName.toLowerCase();
+ const color = !colorName ? colorSpec[i].trim() : (_f = (_e = (_d2 = (_c2 = (_b3 = FOREGROUND_COLORS[lcColorName]) != null ? _b3 : FOREGROUND_COLORS[DVIPS_TO_CHROMATIC[colorName]]) != null ? _c2 : MATLAB_COLORS[colorName]) != null ? _d2 : DVIPS_COLORS[colorName]) != null ? _e : MATHEMATICA_COLORS[colorName]) != null ? _f : colorSpec[i].trim();
+ let m = color.match(/^#([\da-f]{2})([\da-f]{2})([\da-f]{2})$/i);
+ if ((m == null ? void 0 : m[1]) && m[2] && m[3]) {
+ red = Math.max(0, Math.min(255, Number.parseInt(m[1], 16)));
+ green = Math.max(0, Math.min(255, Number.parseInt(m[2], 16)));
+ blue = Math.max(0, Math.min(255, Number.parseInt(m[3], 16)));
+ } else {
+ m = color.match(/^#([\da-f]{3})$/i);
+ if (m == null ? void 0 : m[1]) {
+ const r1 = Number.parseInt(m[1][0], 16);
+ const g1 = Number.parseInt(m[1][1], 16);
+ const b1 = Number.parseInt(m[1][2], 16);
+ red = Math.max(0, Math.min(255, r1 * 16 + r1));
+ green = Math.max(0, Math.min(255, g1 * 16 + g1));
+ blue = Math.max(0, Math.min(255, b1 * 16 + b1));
+ } else {
+ m = color.match(/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);
+ if ((m == null ? void 0 : m[1]) && m[2] && m[3]) {
+ red = Math.max(0, Math.min(255, Number.parseInt(m[1])));
+ green = Math.max(0, Math.min(255, Number.parseInt(m[2])));
+ blue = Math.max(0, Math.min(255, Number.parseInt(m[3])));
+ } else
+ return void 0;
+ }
+ }
+ if (mix >= 0) {
+ red = (1 - mix) * red + mix * baseRed;
+ green = (1 - mix) * green + mix * baseGreen;
+ blue = (1 - mix) * blue + mix * baseBlue;
+ mix = -1;
+ }
+ if (i + 1 < colorSpec.length)
+ mix = Math.max(0, Math.min(100, Number.parseInt(colorSpec[++i]))) / 100;
+ }
+ if (mix >= 0) {
+ red = mix * red + (1 - mix) * baseRed;
+ green = mix * green + (1 - mix) * baseGreen;
+ blue = mix * blue + (1 - mix) * baseBlue;
+ }
+ if (complementary) {
+ red = 255 - red;
+ green = 255 - green;
+ blue = 255 - blue;
+ }
+ return "#" + ("00" + Math.round(red).toString(16)).slice(-2) + ("00" + Math.round(green).toString(16)).slice(-2) + ("00" + Math.round(blue).toString(16)).slice(-2);
+}
+function defaultBackgroundColorMap(s) {
+ var _a3, _b3;
+ s = s.trim();
+ return (_b3 = (_a3 = BACKGROUND_COLORS[s.toLowerCase()]) != null ? _a3 : BACKGROUND_COLORS[DVIPS_TO_CHROMATIC[s]]) != null ? _b3 : defaultColorMap(s);
+}
+function parseHex(hex) {
+ if (!hex)
+ return void 0;
+ if (hex[0] !== "#")
+ return void 0;
+ hex = hex.slice(1);
+ let result;
+ if (hex.length <= 4) {
+ result = {
+ r: parseInt(hex[0] + hex[0], 16),
+ g: parseInt(hex[1] + hex[1], 16),
+ b: parseInt(hex[2] + hex[2], 16)
+ };
+ if (hex.length === 4)
+ result.a = parseInt(hex[3] + hex[3], 16) / 255;
+ } else {
+ result = {
+ r: parseInt(hex[0] + hex[1], 16),
+ g: parseInt(hex[2] + hex[3], 16),
+ b: parseInt(hex[4] + hex[5], 16)
+ };
+ if (hex.length === 8)
+ result.a = parseInt(hex[6] + hex[7], 16) / 255;
+ }
+ if (result && result.a === void 0)
+ result.a = 1;
+ return result;
+}
+function hueToRgbChannel(t1, t2, hue) {
+ if (hue < 0)
+ hue += 6;
+ if (hue >= 6)
+ hue -= 6;
+ if (hue < 1)
+ return (t2 - t1) * hue + t1;
+ else if (hue < 3)
+ return t2;
+ else if (hue < 4)
+ return (t2 - t1) * (4 - hue) + t1;
+ return t1;
+}
+function hslToRgb(hsl) {
+ let [hue, sat, light] = [hsl.h, hsl.s, hsl.l];
+ hue = (hue + 360) % 360 / 60;
+ light = Math.max(0, Math.min(light, 1));
+ sat = Math.max(0, Math.min(sat, 1));
+ const t2 = light <= 0.5 ? light * (sat + 1) : light + sat - light * sat;
+ const t1 = light * 2 - t2;
+ return {
+ r: Math.round(255 * hueToRgbChannel(t1, t2, hue + 2)),
+ g: Math.round(255 * hueToRgbChannel(t1, t2, hue)),
+ b: Math.round(255 * hueToRgbChannel(t1, t2, hue - 2))
+ };
+}
+function clampByte(v) {
+ if (v < 0)
+ return 0;
+ if (v > 255)
+ return 255;
+ return Math.round(v);
+}
+function rgbToHexstring(rgb) {
+ const { r, g, b } = rgb;
+ let hexString = ((1 << 24) + (clampByte(r) << 16) + (clampByte(g) << 8) + clampByte(b)).toString(16).slice(1);
+ if (hexString[0] === hexString[1] && hexString[2] === hexString[3] && hexString[4] === hexString[5] && hexString[6] === hexString[7])
+ hexString = hexString[0] + hexString[2] + hexString[4];
+ return "#" + hexString;
+}
+function rgbToHsl(rgb) {
+ let { r, g, b } = rgb;
+ r = r / 255;
+ g = g / 255;
+ b = b / 255;
+ const min = Math.min(r, g, b);
+ const max = Math.max(r, g, b);
+ const delta = max - min;
+ let h;
+ let s;
+ if (max === min)
+ h = 0;
+ else if (r === max)
+ h = (g - b) / delta;
+ else if (g === max)
+ h = 2 + (b - r) / delta;
+ else if (b === max)
+ h = 4 + (r - g) / delta;
+ h = Math.min(h * 60, 360);
+ if (h < 0)
+ h += 360;
+ const l = (min + max) / 2;
+ if (max === min)
+ s = 0;
+ else if (l <= 0.5)
+ s = delta / (max + min);
+ else
+ s = delta / (2 - max - min);
+ return { h, s, l };
+}
+function highlight(color) {
+ let rgb = parseHex(color);
+ if (!rgb)
+ return color;
+ let { h, s, l } = rgbToHsl(rgb);
+ s += 0.1;
+ l -= 0.1;
+ return rgbToHexstring(hslToRgb({ h, s, l }));
+}
+
+// src/core/unicode.ts
+var UNICODE_TO_LATEX = {
+ 60: "\\lt",
+ 62: "\\gt",
+ 111: "o",
+ // Also \omicron
+ 38: "\\&",
+ // Also \And
+ 123: "\\lbrace",
+ 125: "\\rbrace",
+ 91: "\\lbrack",
+ 93: "\\rbrack",
+ 58: "\\colon",
+ // Also :
+ 160: "~",
+ // Also \space
+ 172: "\\neg",
+ // Also \lnot
+ 183: "\\cdot",
+ 188: "\\frac{1}{4}",
+ 189: "\\frac{1}{2}",
+ 190: "\\frac{3}{4}",
+ 8304: "^{0}",
+ 8305: "^{i}",
+ 185: "^{1}",
+ 178: "^{2}",
+ // ²
+ 179: "^{3}",
+ 8224: "\\dagger",
+ // Also \dag
+ 8225: "\\ddagger",
+ // Also \ddag
+ 8230: "\\ldots",
+ // Also \mathellipsis
+ 8308: "^{4}",
+ 8309: "^{5}",
+ 8310: "^{6}",
+ 8311: "^{7}",
+ 8312: "^{8}",
+ 8313: "^{9}",
+ 8314: "^{+}",
+ 8315: "^{-}",
+ 8316: "^{=}",
+ 8319: "^{n}",
+ 8320: "_{0}",
+ 8321: "_{1}",
+ 8322: "_{2}",
+ 8323: "_{3}",
+ 8324: "_{4}",
+ 8325: "_{5}",
+ 8326: "_{6}",
+ 8327: "_{7}",
+ 8328: "_{8}",
+ 8329: "_{9}",
+ 8330: "_{+}",
+ 8331: "_{-}",
+ 8332: "_{=}",
+ 8336: "_{a}",
+ 8337: "_{e}",
+ 8338: "_{o}",
+ 8339: "_{x}",
+ 8242: "\\prime",
+ 39: "\\prime",
+ 8592: "\\gets",
+ // Also \leftarrow
+ 8594: "\\to",
+ // Also \rightarrow
+ 9651: "\\triangle",
+ // Also \bigtriangleup, \vartriangle
+ 9661: "\\triangledown",
+ 8715: "\\owns",
+ // Also \ni
+ 8727: "\\ast",
+ // Also *
+ 8739: "\\vert",
+ // Also |, \mvert, \lvert, \rvert
+ 8741: "\\Vert",
+ // Also \parallel \shortparallel
+ 8743: "\\land",
+ // Also \wedge
+ 8744: "\\lor",
+ // Also \vee
+ 8901: "\\cdot",
+ // Also \centerdot, \cdotp
+ 8904: "\\bowtie",
+ // Also \Joint
+ 8800: "\\ne",
+ // Also \neq
+ 8804: "\\le",
+ // Also \leq
+ 8805: "\\ge",
+ // Also \geq
+ 8869: "\\bot",
+ // Also \perp
+ 10231: "\\biconditional",
+ // Also \longleftrightarrow
+ 10232: "\\impliedby",
+ // Also \Longleftarrow
+ 10233: "\\implies",
+ // Also \Longrightarrow
+ 10234: "\\iff",
+ 8450: "\\mathbb{C}",
+ 8469: "\\mathbb{N}",
+ 8473: "\\mathbb{P}",
+ 8474: "\\mathbb{Q}",
+ 8477: "\\mathbb{R}",
+ 8484: "\\mathbb{Z}",
+ 8461: "\\mathbb{H}",
+ 8476: "\\Re",
+ 8465: "\\Im",
+ 42: "\\ast",
+ 11036: "\\square",
+ 9633: "\\square",
+ 8720: "\\coprod",
+ 8716: "\\not\\ni",
+ 9671: "\\diamond",
+ 8846: "\\uplus",
+ 8851: "\\sqcap",
+ 8852: "\\sqcup",
+ 8768: "\\wr",
+ 8750: "\\oint",
+ 8226: "\\textbullet",
+ 8722: "-",
+ 978: "\\Upsilon"
+};
+var MATH_LETTER_EXCEPTIONS = {
+ 119893: 8462,
+ 119965: 8492,
+ 119968: 8496,
+ 119969: 8497,
+ 119971: 8459,
+ 119972: 8464,
+ 119975: 8466,
+ 119976: 8499,
+ 119981: 8475,
+ 119994: 8495,
+ 119996: 8458,
+ 120004: 8500,
+ 120070: 8493,
+ 120075: 8460,
+ 120076: 8465,
+ 120085: 8476,
+ 120093: 8488,
+ 120122: 8450,
+ 120127: 8461,
+ 120133: 8469,
+ 120135: 8473,
+ 120136: 8474,
+ 120137: 8477,
+ 120145: 8484
+};
+var MATH_UNICODE_BLOCKS = [
+ { start: 119808, len: 26, offset: 65, style: "bold" },
+ { start: 119834, len: 26, offset: 97, style: "bold" },
+ { start: 119860, len: 26, offset: 65, style: "italic" },
+ { start: 119886, len: 26, offset: 97, style: "italic" },
+ { start: 119912, len: 26, offset: 65, style: "bolditalic" },
+ { start: 119938, len: 26, offset: 97, style: "bolditalic" },
+ { start: 119964, len: 26, offset: 65, variant: "script" },
+ { start: 119990, len: 26, offset: 97, variant: "script" },
+ { start: 120016, len: 26, offset: 65, variant: "script", style: "bold" },
+ { start: 120042, len: 26, offset: 97, variant: "script", style: "bold" },
+ { start: 120068, len: 26, offset: 65, variant: "fraktur" },
+ { start: 120094, len: 26, offset: 97, variant: "fraktur" },
+ { start: 120172, len: 26, offset: 65, variant: "fraktur", style: "bold" },
+ { start: 120198, len: 26, offset: 97, variant: "fraktur", style: "bold" },
+ { start: 120120, len: 26, offset: 65, variant: "double-struck" },
+ { start: 120146, len: 26, offset: 97, variant: "double-struck" },
+ { start: 120224, len: 26, offset: 65, variant: "sans-serif" },
+ { start: 120250, len: 26, offset: 97, variant: "sans-serif" },
+ {
+ start: 120276,
+ len: 26,
+ offset: 65,
+ variant: "sans-serif",
+ style: "bold"
+ },
+ {
+ start: 120302,
+ len: 26,
+ offset: 97,
+ variant: "sans-serif",
+ style: "bold"
+ },
+ {
+ start: 120328,
+ len: 26,
+ offset: 65,
+ variant: "sans-serif",
+ style: "italic"
+ },
+ {
+ start: 120354,
+ len: 26,
+ offset: 97,
+ variant: "sans-serif",
+ style: "italic"
+ },
+ {
+ start: 120380,
+ len: 26,
+ offset: 65,
+ variant: "sans-serif",
+ style: "bolditalic"
+ },
+ {
+ start: 120406,
+ len: 26,
+ offset: 97,
+ variant: "sans-serif",
+ style: "bolditalic"
+ },
+ { start: 120432, len: 26, offset: 65, variant: "monospace" },
+ { start: 120458, len: 26, offset: 97, variant: "monospace" },
+ { start: 120488, len: 25, offset: 913, style: "bold" },
+ { start: 120514, len: 25, offset: 945, style: "bold" },
+ { start: 120546, len: 25, offset: 913, style: "italic" },
+ { start: 120572, len: 25, offset: 945, style: "italic" },
+ { start: 120604, len: 25, offset: 913, style: "bolditalic" },
+ { start: 120630, len: 25, offset: 945, style: "bolditalic" },
+ {
+ start: 120662,
+ len: 25,
+ offset: 913,
+ variant: "sans-serif",
+ style: "bold"
+ },
+ {
+ start: 120688,
+ len: 25,
+ offset: 945,
+ variant: "sans-serif",
+ style: "bold"
+ },
+ {
+ start: 120720,
+ len: 25,
+ offset: 913,
+ variant: "sans-serif",
+ style: "bolditalic"
+ },
+ {
+ start: 120746,
+ len: 25,
+ offset: 945,
+ variant: "sans-serif",
+ style: "bolditalic"
+ },
+ { start: 120782, len: 10, offset: 48, variant: "main", style: "bold" },
+ { start: 120792, len: 10, offset: 48, variant: "double-struck" },
+ { start: 120803, len: 10, offset: 48, variant: "sans-serif" },
+ {
+ start: 120812,
+ len: 10,
+ offset: 48,
+ variant: "sans-serif",
+ style: "bold"
+ },
+ { start: 120822, len: 10, offset: 48, variant: "monospace" }
+];
+function mathVariantToUnicode(char, variant, style) {
+ if (!/[A-Za-z\d]/.test(char))
+ return char;
+ if (style === "up")
+ style = void 0;
+ if (!variant && !style)
+ return char;
+ const codepoint = char.codePointAt(0);
+ if (codepoint === void 0)
+ return char;
+ for (const MATH_UNICODE_BLOCK of MATH_UNICODE_BLOCKS) {
+ if (!variant || MATH_UNICODE_BLOCK.variant === variant) {
+ if (!style || MATH_UNICODE_BLOCK.style === style) {
+ if (codepoint >= MATH_UNICODE_BLOCK.offset && codepoint < MATH_UNICODE_BLOCK.offset + MATH_UNICODE_BLOCK.len) {
+ const result = MATH_UNICODE_BLOCK.start + codepoint - MATH_UNICODE_BLOCK.offset;
+ return String.fromCodePoint(MATH_LETTER_EXCEPTIONS[result] || result);
+ }
+ }
+ }
+ }
+ return char;
+}
+function unicodeToMathVariant(codepoint) {
+ var _a3;
+ if ((codepoint < 119808 || codepoint > 120831) && (codepoint < 8448 || codepoint > 8527))
+ return { char: String.fromCodePoint(codepoint) };
+ for (const c in MATH_LETTER_EXCEPTIONS) {
+ if (MATH_LETTER_EXCEPTIONS[c] === codepoint) {
+ codepoint = (_a3 = c.codePointAt(0)) != null ? _a3 : 0;
+ break;
+ }
+ }
+ for (const MATH_UNICODE_BLOCK of MATH_UNICODE_BLOCKS) {
+ if (codepoint >= MATH_UNICODE_BLOCK.start && codepoint < MATH_UNICODE_BLOCK.start + MATH_UNICODE_BLOCK.len) {
+ return {
+ char: String.fromCodePoint(
+ codepoint - MATH_UNICODE_BLOCK.start + MATH_UNICODE_BLOCK.offset
+ ),
+ variant: MATH_UNICODE_BLOCK.variant,
+ style: MATH_UNICODE_BLOCK.style
+ };
+ }
+ }
+ return { char: String.fromCodePoint(codepoint) };
+}
+function unicodeToLatex(s) {
+ var _a3;
+ let result = "";
+ for (const c of s) {
+ if ("{}<>[]$^_%:'\u02DC".includes(c)) {
+ result += c;
+ continue;
+ }
+ const codepoint = (_a3 = c.codePointAt(0)) != null ? _a3 : 0;
+ let latex = UNICODE_TO_LATEX[codepoint];
+ if (latex) {
+ if (latex.startsWith("\\"))
+ result += latex + " ";
+ else
+ result += latex;
+ } else {
+ const { char, variant, style } = unicodeToMathVariant(codepoint);
+ latex = char;
+ switch (variant) {
+ case "double-struck":
+ latex = `\\mathbb{${latex}}`;
+ break;
+ case "fraktur":
+ latex = `\\mathfrak{${latex}}`;
+ break;
+ case "script":
+ latex = `\\mathscr{${latex}}`;
+ break;
+ case "sans-serif":
+ latex = `\\mathsf{${latex}}`;
+ break;
+ case "monospace":
+ latex = `\\mathtt{${latex}}`;
+ break;
+ case "calligraphic":
+ latex = `\\mathcal{${latex}}`;
+ break;
+ }
+ switch (style) {
+ case "bold":
+ latex = `\\mathbf{${latex}}`;
+ break;
+ case "italic":
+ latex = `\\mathit{${latex}}`;
+ break;
+ case "bolditalic":
+ latex = `\\mathbfit{${latex}}`;
+ break;
+ }
+ result += latex;
+ }
+ }
+ return result;
+}
+
+// src/latex-commands/definitions-utils.ts
+function argAtoms(arg) {
+ if (!arg)
+ return [];
+ if (Array.isArray(arg))
+ return arg;
+ if (typeof arg === "object" && "group" in arg)
+ return arg.group;
+ return [];
+}
+var MATH_SYMBOLS = {};
+var REVERSE_MATH_SYMBOLS = __spreadValues({}, UNICODE_TO_LATEX);
+var LATEX_COMMANDS = {};
+var ENVIRONMENTS = {};
+var TEXVC_MACROS = {
+ //////////////////////////////////////////////////////////////////////
+ // texvc.sty
+ // The texvc package contains macros available in mediawiki pages.
+ // We omit the functions deprecated at
+ // https://en.wikipedia.org/wiki/Help:Displaying_a_formula#Deprecated_syntax
+ // We also omit texvc's \O, which conflicts with \text{\O}
+ darr: "\\downarrow",
+ dArr: "\\Downarrow",
+ Darr: "\\Downarrow",
+ lang: "\\langle",
+ rang: "\\rangle",
+ uarr: "\\uparrow",
+ uArr: "\\Uparrow",
+ Uarr: "\\Uparrow",
+ N: "\\mathbb{N}",
+ R: "\\mathbb{R}",
+ Z: "\\mathbb{Z}",
+ alef: "\\aleph",
+ alefsym: "\\aleph",
+ Alpha: "\\mathrm{A}",
+ Beta: "\\mathrm{B}",
+ bull: "\\bullet",
+ Chi: "\\mathrm{X}",
+ clubs: "\\clubsuit",
+ cnums: "\\mathbb{C}",
+ Complex: "\\mathbb{C}",
+ Dagger: "\\ddagger",
+ diamonds: "\\diamondsuit",
+ empty: "\\emptyset",
+ Epsilon: "\\mathrm{E}",
+ Eta: "\\mathrm{H}",
+ exist: "\\exists",
+ harr: "\\leftrightarrow",
+ hArr: "\\Leftrightarrow",
+ Harr: "\\Leftrightarrow",
+ hearts: "\\heartsuit",
+ image: "\\Im",
+ infin: "\\infty",
+ Iota: "\\mathrm{I}",
+ isin: "\\in",
+ Kappa: "\\mathrm{K}",
+ larr: "\\leftarrow",
+ lArr: "\\Leftarrow",
+ Larr: "\\Leftarrow",
+ lrarr: "\\leftrightarrow",
+ lrArr: "\\Leftrightarrow",
+ Lrarr: "\\Leftrightarrow",
+ Mu: "\\mathrm{M}",
+ natnums: "\\mathbb{N}",
+ Nu: "\\mathrm{N}",
+ Omicron: "\\mathrm{O}",
+ plusmn: "\\pm",
+ rarr: "\\rightarrow",
+ rArr: "\\Rightarrow",
+ Rarr: "\\Rightarrow",
+ real: "\\Re",
+ reals: "\\mathbb{R}",
+ Reals: "\\mathbb{R}",
+ Rho: "\\mathrm{P}",
+ sdot: "\\cdot",
+ sect: "\\S",
+ spades: "\\spadesuit",
+ sub: "\\subset",
+ sube: "\\subseteq",
+ supe: "\\supseteq",
+ Tau: "\\mathrm{T}",
+ thetasym: "\\vartheta",
+ // TODO: varcoppa: { def: "\\\mbox{\\coppa}", expand: false },
+ weierp: "\\wp",
+ Zeta: "\\mathrm{Z}"
+};
+var AMSMATH_MACROS = {
+ // amsmath.sty
+ // http://mirrors.concertpass.com/tex-archive/macros/latex/required/amsmath/amsmath.pdf
+ // Italic Greek capital letters. AMS defines these with \DeclareMathSymbol,
+ // but they are equivalent to \mathit{\Letter}.
+ varGamma: "\\mathit{\\Gamma}",
+ varDelta: "\\mathit{\\Delta}",
+ varTheta: "\\mathit{\\Theta}",
+ varLambda: "\\mathit{\\Lambda}",
+ varXi: "\\mathit{\\Xi}",
+ varPi: "\\mathit{\\Pi}",
+ varSigma: "\\mathit{\\Sigma}",
+ varUpsilon: "\\mathit{\\Upsilon}",
+ varPhi: "\\mathit{\\Phi}",
+ varPsi: "\\mathit{\\Psi}",
+ varOmega: "\\mathit{\\Omega}",
+ // From http://tug.ctan.org/macros/latex/required/amsmath/amsmath.dtx
+ // > \newcommand{\pod}[1]{
+ // > \allowbreak
+ // > \if@display
+ // > \mkern18mu
+ // > \else
+ // > \mkern8mu
+ // > \fi
+ // > (#1)
+ // > }
+ // 18mu = \quad
+ // > \renewcommand{\pmod}[1]{
+ // > \pod{{\operator@font mod}\mkern6mu#1}
+ // > }
+ pmod: {
+ def: "\\quad(\\operatorname{mod}\\ #1)",
+ args: 1,
+ expand: false,
+ captureSelection: false
+ },
+ // > \newcommand{\mod}[1]{
+ // > \allowbreak
+ // > \if@display
+ // > \mkern18mu
+ // > \else
+ // > \mkern12mu
+ // > \fi
+ //> {\operator@font mod}\,\,#1}
+ mod: {
+ def: "\\quad\\operatorname{mod}\\,\\,#1",
+ args: 1,
+ expand: false
+ },
+ // > \renewcommand{\bmod}{
+ // > \nonscript\mskip-\medmuskip\mkern5mu
+ // > \mathbin{\operator@font mod}
+ // > \penalty900 \mkern5mu
+ // > \nonscript\mskip-\medmuskip
+ // > }
+ // 5mu = \;
+ bmod: {
+ def: "\\;\\mathbin{\\operatorname{mod }}",
+ expand: false
+ }
+};
+var BRAKET_MACROS = {
+ bra: { def: "\\mathinner{\\langle{#1}|}", args: 1, captureSelection: false },
+ ket: { def: "\\mathinner{|{#1}\\rangle}", args: 1, captureSelection: false },
+ braket: {
+ def: "\\mathinner{\\langle{#1}\\rangle}",
+ args: 1,
+ captureSelection: false
+ },
+ set: {
+ def: "\\mathinner{\\lbrace #1 \\rbrace}",
+ args: 1,
+ captureSelection: false
+ },
+ Bra: { def: "\\left\\langle #1\\right|", args: 1, captureSelection: false },
+ Ket: { def: "\\left|#1\\right\\rangle", args: 1, captureSelection: false },
+ Braket: {
+ def: "\\left\\langle{#1}\\right\\rangle",
+ args: 1,
+ captureSelection: false
+ },
+ Set: {
+ def: "\\left\\lbrace #1 \\right\\rbrace",
+ args: 1,
+ captureSelection: false
+ }
+};
+var DEFAULT_MACROS = {
+ "iff": {
+ primitive: true,
+ captureSelection: true,
+ def: "\\;\u27FA\\;"
+ // >2,000 Note: additional spaces around the arrows
+ },
+ "nicefrac": "^{#1}\\!\\!/\\!_{#2}",
+ "phase": {
+ def: "\\enclose{phasorangle}{#1}",
+ args: 1,
+ captureSelection: false
+ },
+ // Proof Wiki
+ "rd": "\\mathrm{d}",
+ "rD": "\\mathrm{D}",
+ // From Wolfram Alpha
+ "doubleStruckCapitalN": "\\mathbb{N}",
+ "doubleStruckCapitalR": "\\mathbb{R}",
+ "doubleStruckCapitalQ": "\\mathbb{Q}",
+ "doubleStruckCapitalZ": "\\mathbb{Z}",
+ "doubleStruckCapitalP": "\\mathbb{P}",
+ "scriptCapitalE": "\\mathscr{E}",
+ "scriptCapitalH": "\\mathscr{H}",
+ "scriptCapitalL": "\\mathscr{L}",
+ "gothicCapitalC": "\\mathfrak{C}",
+ "gothicCapitalH": "\\mathfrak{H}",
+ "gothicCapitalI": "\\mathfrak{I}",
+ "gothicCapitalR": "\\mathfrak{R}",
+ "imaginaryI": "\\mathrm{i}",
+ // NOTE: set in main (upright) as per ISO 80000-2:2009.
+ "imaginaryJ": "\\mathrm{j}",
+ // NOTE: set in main (upright) as per ISO 80000-2:2009.
+ "exponentialE": "\\mathrm{e}",
+ // NOTE: set in main (upright) as per ISO 80000-2:2009.
+ "differentialD": "\\mathrm{d}",
+ // NOTE: set in main (upright) as per ISO 80000-2:2009.
+ "capitalDifferentialD": "\\mathrm{D}",
+ // NOTE: set in main (upright) as per ISO 80000-2:2009.
+ "mathstrut": { def: "\\vphantom{(}", primitive: true },
+ // https://ctan.math.washington.edu/tex-archive/macros/latex/contrib/actuarialangle/actuarialangle.pdf
+ "angl": "\\enclose{actuarial}{#1}",
+ "angln": "\\enclose{actuarial}{n}",
+ "anglr": "\\enclose{actuarial}{r}",
+ "anglk": "\\enclose{actuarial}{k}",
+ //////////////////////////////////////////////////////////////////////
+ // mathtools.sty
+ // In the summer of 2022, mathtools did some renaming of macros.
+ // This is the latest version, with some legacy commands.
+ "mathtools": {
+ primitive: true,
+ package: {
+ //\providecommand\ordinarycolon{:}
+ ordinarycolon: ":",
+ //\def\vcentcolon{\mathrel{\mathop\ordinarycolon}}
+ //TODO(edemaine): Not yet centered. Fix via \raisebox or #726
+ vcentcolon: "\\mathrel{\\mathop\\ordinarycolon}",
+ // \providecommand*\dblcolon{\vcentcolon\mathrel{\mkern-.9mu}\vcentcolon}
+ dblcolon: '{\\mathop{\\char"2237}}',
+ // \providecommand*\coloneqq{\vcentcolon\mathrel{\mkern-1.2mu}=}
+ coloneqq: '{\\mathop{\\char"2254}}',
+ // ≔
+ // \providecommand*\Coloneqq{\dblcolon\mathrel{\mkern-1.2mu}=}
+ Coloneqq: '{\\mathop{\\char"2237\\char"3D}}',
+ // \providecommand*\coloneq{\vcentcolon\mathrel{\mkern-1.2mu}\mathrel{-}}
+ coloneq: '{\\mathop{\\char"3A\\char"2212}}',
+ // \providecommand*\Coloneq{\dblcolon\mathrel{\mkern-1.2mu}\mathrel{-}}
+ Coloneq: '{\\mathop{\\char"2237\\char"2212}}',
+ // \providecommand*\eqqcolon{=\mathrel{\mkern-1.2mu}\vcentcolon}
+ eqqcolon: '{\\mathop{\\char"2255}}',
+ // ≕
+ // \providecommand*\Eqqcolon{=\mathrel{\mkern-1.2mu}\dblcolon}
+ Eqqcolon: '{\\mathop{\\char"3D\\char"2237}}',
+ // \providecommand*\eqcolon{\mathrel{-}\mathrel{\mkern-1.2mu}\vcentcolon}
+ eqcolon: '{\\mathop{\\char"2239}}',
+ // \providecommand*\Eqcolon{\mathrel{-}\mathrel{\mkern-1.2mu}\dblcolon}
+ Eqcolon: '{\\mathop{\\char"2212\\char"2237}}',
+ // \providecommand*\colonapprox{\vcentcolon\mathrel{\mkern-1.2mu}\approx}
+ colonapprox: '{\\mathop{\\char"003A\\char"2248}}',
+ // \providecommand*\Colonapprox{\dblcolon\mathrel{\mkern-1.2mu}\approx}
+ Colonapprox: '{\\mathop{\\char"2237\\char"2248}}',
+ // \providecommand*\colonsim{\vcentcolon\mathrel{\mkern-1.2mu}\sim}
+ colonsim: '{\\mathop{\\char"3A\\char"223C}}',
+ // \providecommand*\Colonsim{\dblcolon\mathrel{\mkern-1.2mu}\sim}
+ Colonsim: '{\\mathop{\\char"2237\\char"223C}}',
+ colondash: "\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}",
+ Colondash: "\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}",
+ dashcolon: "\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}",
+ Dashcolon: "\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}"
+ // Some Unicode characters are implemented with macros to mathtools functions.
+ // defineMacro("\u2237", "\\dblcolon"); // ::
+ // defineMacro("\u2239", "\\eqcolon"); // -:
+ // defineMacro("\u2254", "\\coloneqq"); // :=
+ // defineMacro("\u2255", "\\eqqcolon"); // =:
+ // defineMacro("\u2A74", "\\Coloneqq"); // ::=
+ }
+ },
+ //////////////////////////////////////////////////////////////////////
+ // colonequals.sty
+ // Alternate names for mathtools's macros:
+ "ratio": "\\vcentcolon",
+ "coloncolon": "\\dblcolon",
+ "colonequals": "\\coloneq",
+ "coloncolonequals": "\\Coloneq",
+ "equalscolon": "\\eqcolon",
+ "equalscoloncolon": "\\Eqcolon",
+ "colonminus": "\\colondash",
+ "coloncolonminus": "\\Colondash",
+ "minuscolon": "\\dashcolon",
+ "minuscoloncolon": "\\Dashcolon",
+ // \colonapprox name is same in mathtools and colonequals.
+ "coloncolonapprox": "\\Colonapprox",
+ // \colonsim name is same in mathtools and colonequals.
+ "coloncolonsim": "\\Colonsim",
+ // Additional macros, implemented by analogy with mathtools definitions:
+ "simcolon": "\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}",
+ "Simcolon": "\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}",
+ "simcoloncolon": "\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}",
+ "approxcolon": "\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}",
+ "Approxcolon": "\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}",
+ "approxcoloncolon": "\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}",
+ // Present in newtxmath, pxfonts and txfonts
+ "notni": "\\mathrel{\\char`\u220C}",
+ "limsup": "\\operatorname*{lim\\,sup}",
+ "liminf": "\\operatorname*{lim\\,inf}",
+ //////////////////////////////////////////////////////////////////////
+ // From amsopn.sty
+ "injlim": "\\operatorname*{inj\\,lim}",
+ "projlim": "\\operatorname*{proj\\,lim}",
+ "varlimsup": "\\operatorname*{\\overline{lim}}",
+ "varliminf": "\\operatorname*{\\underline{lim}}",
+ "varinjlim": "\\operatorname*{\\underrightarrow{lim}}",
+ "varprojlim": "\\operatorname*{\\underleftarrow{lim}}",
+ //////////////////////////////////////////////////////////////////////
+ // statmath.sty
+ // https://ctan.math.illinois.edu/macros/latex/contrib/statmath/statmath.pdf
+ "argmin": "\\operatorname*{arg\\,min}",
+ "argmax": "\\operatorname*{arg\\,max}",
+ "plim": "\\mathop{\\operatorname{plim}}\\limits",
+ // mhchem
+ "tripledash": {
+ def: "\\vphantom{-}\\raise{4mu}{\\mkern1.5mu\\rule{2mu}{1.5mu}\\mkern{2.25mu}\\rule{2mu}{1.5mu}\\mkern{2.25mu}\\rule{2mu}{1.5mu}\\mkern{2mu}}",
+ expand: true
+ },
+ "braket.sty": { package: BRAKET_MACROS },
+ "amsmath.sty": {
+ package: AMSMATH_MACROS,
+ primitive: true
+ },
+ "texvc.sty": {
+ package: TEXVC_MACROS,
+ primitive: false
+ }
+};
+var TEXT_SYMBOLS = {
+ " ": 32,
+ // want that in Text mode.
+ "\\!": 33,
+ "\\#": 35,
+ "\\$": 36,
+ "\\%": 37,
+ "\\&": 38,
+ "-": 45,
+ // In Math mode, '-' is substituted to U+2212, but we don't
+ "\\textunderscore": 95,
+ // '_'
+ "\\euro": 8364,
+ "\\maltese": 10016,
+ "\\{": 123,
+ "\\}": 125,
+ "\\textbraceleft": 123,
+ "\\textbraceright": 125,
+ "\\lbrace": 123,
+ "\\rbrace": 125,
+ "\\lbrack": 91,
+ "\\rbrack": 93,
+ "\\nobreakspace": 160,
+ "\\ldots": 8230,
+ "\\textellipsis": 8230,
+ "\\backslash": 92,
+ "`": 8216,
+ "'": 8217,
+ "``": 8220,
+ "''": 8221,
+ "\\degree": 176,
+ "\\textasciicircum": 94,
+ "\\textasciitilde": 126,
+ "\\textasteriskcentered": 42,
+ "\\textbackslash": 92,
+ // '\'
+ "\\textbullet": 8226,
+ "\\textdollar": 36,
+ "\\textsterling": 163,
+ "\\textdagger": 8224,
+ "\\textdaggerdbl": 8225,
+ "\u2013": 8211,
+ // EN DASH
+ "\u2014": 8212,
+ // EM DASH
+ "\u2018": 8216,
+ // LEFT SINGLE QUOTATION MARK
+ "\u2019": 8217,
+ // RIGHT SINGLE QUOTATION MARK
+ "\u201C": 8220,
+ // LEFT DOUBLE QUOTATION MARK
+ "\u201D": 8221,
+ // RIGHT DOUBLE QUOTATION MARK
+ '"': 8221,
+ // DOUBLE PRIME
+ "\\ss": 223,
+ // LATIN SMALL LETTER SHARP S
+ "\\ae": 230,
+ // LATIN SMALL LETTER AE
+ "\\oe": 339,
+ // LATIN SMALL LIGATURE OE
+ "\\AE": 198,
+ // LATIN CAPITAL LETTER AE
+ "\\OE": 338,
+ // LATIN CAPITAL LIGATURE OE
+ "\\O": 216,
+ // LATIN CAPITAL LETTER O WITH STROKE
+ "\\i": 305,
+ // LATIN SMALL LETTER DOTLESS I
+ "\\j": 567,
+ // LATIN SMALL LETTER DOTLESS J
+ "\\aa": 229,
+ // LATIN SMALL LETTER A WITH RING ABOVE
+ "\\AA": 197
+ // LATIN CAPITAL LETTER A WITH RING ABOVE
+};
+var COMMAND_MODE_CHARACTERS = /[\w!@*()-=+{}\[\]\\';:?/.,~<>`|$%#&^" ]/;
+var LETTER;
+var LETTER_AND_DIGITS;
+if (supportRegexPropertyEscape()) {
+ LETTER = new RegExp("\\p{Letter}", "u");
+ LETTER_AND_DIGITS = new RegExp("[0-9\\p{Letter}]", "u");
+} else {
+ LETTER = /[a-zA-ZаАбБвВгГдДеЕёЁжЖзЗиИйЙкКлЛмМнНоОпПрРсСтТуУфФхХцЦчЧшШщЩъЪыЫьЬэЭюЮяĄąĆćĘꣳŃńÓóŚśŹźŻżàâäôéèëêïîçùûüÿæœÀÂÄÔÉÈËÊÏΟÇÙÛÜÆŒößÖẞìíòúÌÍÒÚáñÁÑ]/;
+ LETTER_AND_DIGITS = /[\da-zA-ZаАбБвВгГдДеЕёЁжЖзЗиИйЙкКлЛмМнНоОпПрРсСтТуУфФхХцЦчЧшШщЩъЪыЫьЬэЭюЮяĄąĆćĘꣳŃńÓóŚśŹźŻżàâäôéèëêïîçùûüÿæœÀÂÄÔÉÈËÊÏΟÇÙÛÜÆŒößÖẞìíòúÌÍÒÚáñÁÑ]/;
+}
+function defineSymbol(symbol, codepoint, type = "mord", variant) {
+ if (codepoint === void 0)
+ return;
+ MATH_SYMBOLS[symbol] = {
+ definitionType: "symbol",
+ type,
+ variant,
+ codepoint
+ };
+ if (!REVERSE_MATH_SYMBOLS[codepoint])
+ REVERSE_MATH_SYMBOLS[codepoint] = symbol;
+}
+function defineSymbols(value, inType, inVariant) {
+ if (typeof value === "string") {
+ for (let i = 0; i < value.length; i++) {
+ const ch = value.charAt(i);
+ defineSymbol(ch, ch.codePointAt(0));
+ }
+ return;
+ }
+ for (const [symbol, val, type, variant] of value)
+ defineSymbol(symbol, val, type != null ? type : inType, variant != null ? variant : inVariant);
+}
+function defineSymbolRange(from, to) {
+ for (let i = from; i <= to; i++)
+ defineSymbol(String.fromCodePoint(i), i);
+}
+function getEnvironmentDefinition(name) {
+ var _a3;
+ return (_a3 = ENVIRONMENTS[name]) != null ? _a3 : null;
+}
+function suggest(mf, s) {
+ var _a3, _b3;
+ if (s.length === 0 || s === "\\" || !s.startsWith("\\"))
+ return [];
+ const result = [];
+ for (const p in LATEX_COMMANDS) {
+ if (p.startsWith(s) && !LATEX_COMMANDS[p].infix)
+ result.push({ match: p, frequency: (_a3 = LATEX_COMMANDS[p].frequency) != null ? _a3 : 0 });
+ }
+ for (const p in MATH_SYMBOLS) {
+ if (p.startsWith(s))
+ result.push({ match: p, frequency: (_b3 = MATH_SYMBOLS[p].frequency) != null ? _b3 : 0 });
+ }
+ const command = s.substring(1);
+ for (const p of Object.keys(mf.options.macros))
+ if (p.startsWith(command))
+ result.push({ match: "\\" + p, frequency: 0 });
+ result.sort((a, b) => {
+ var _a4, _b4;
+ if (a.frequency === b.frequency) {
+ if (a.match.length === b.match.length)
+ return a.match < b.match ? -1 : 1;
+ return a.match.length - b.match.length;
+ }
+ return ((_a4 = b.frequency) != null ? _a4 : 0) - ((_b4 = a.frequency) != null ? _b4 : 0);
+ });
+ return result.map((x) => x.match);
+}
+function parseParameterTemplateArgument(argTemplate) {
+ let type = "auto";
+ const r = argTemplate.match(/:([^=]+)/);
+ if (r)
+ type = r[1].trim();
+ return type;
+}
+function parseParameterTemplate(parameterTemplate) {
+ if (!parameterTemplate)
+ return [];
+ const result = [];
+ let parameters = parameterTemplate.split("]");
+ if (parameters[0].startsWith("[")) {
+ result.push({
+ isOptional: true,
+ type: parseParameterTemplateArgument(parameters[0].slice(1))
+ });
+ for (let i = 1; i <= parameters.length; i++)
+ result.push(...parseParameterTemplate(parameters[i]));
+ } else {
+ parameters = parameterTemplate.split("}");
+ if (parameters[0].startsWith("{")) {
+ result.push({
+ isOptional: false,
+ type: parseParameterTemplateArgument(parameters[0].slice(1))
+ });
+ for (let i = 1; i <= parameters.length; i++)
+ result.push(...parseParameterTemplate(parameters[i]));
+ }
+ }
+ return result;
+}
+function parseArgAsString(atoms) {
+ if (!atoms)
+ return "";
+ let result = "";
+ let success = true;
+ for (const atom of atoms) {
+ if (typeof atom.value === "string")
+ result += atom.value;
+ else
+ success = false;
+ }
+ return success ? result : "";
+}
+function defineEnvironment(names, createAtom) {
+ if (typeof names === "string")
+ names = [names];
+ const def = {
+ tabular: false,
+ params: [],
+ createAtom
+ };
+ for (const name of names)
+ ENVIRONMENTS[name] = def;
+}
+function defineTabularEnvironment(names, parameters, createAtom) {
+ if (typeof names === "string")
+ names = [names];
+ const parsedParameters = parseParameterTemplate(parameters);
+ const data = {
+ tabular: true,
+ params: parsedParameters,
+ createAtom
+ };
+ for (const name of names)
+ ENVIRONMENTS[name] = data;
+}
+function defineFunction(names, parameters, options) {
+ var _a3, _b3;
+ if (!options)
+ options = {};
+ const data = {
+ definitionType: "function",
+ // The parameters for this function, an array of
+ // {optional, type}
+ params: parseParameterTemplate(parameters),
+ ifMode: options.ifMode,
+ isFunction: (_a3 = options.isFunction) != null ? _a3 : false,
+ applyMode: options.applyMode,
+ infix: (_b3 = options.infix) != null ? _b3 : false,
+ parse: options.parse,
+ createAtom: options.createAtom,
+ applyStyle: options.applyStyle,
+ serialize: options.serialize,
+ render: options.render
+ };
+ if (typeof names === "string")
+ LATEX_COMMANDS["\\" + names] = data;
+ else
+ for (const name of names)
+ LATEX_COMMANDS["\\" + name] = data;
+}
+var _DEFAULT_MACROS;
+function getMacros(otherMacros) {
+ if (!_DEFAULT_MACROS)
+ _DEFAULT_MACROS = normalizeMacroDictionary(DEFAULT_MACROS);
+ if (!otherMacros)
+ return _DEFAULT_MACROS;
+ return normalizeMacroDictionary(__spreadValues(__spreadValues({}, _DEFAULT_MACROS), otherMacros));
+}
+function normalizeMacroDefinition(def, options) {
+ var _a3, _b3, _c2, _d2;
+ if (typeof def === "string") {
+ let argCount = 0;
+ const defString = def;
+ if (/(^|[^\\])#1/.test(defString))
+ argCount = 1;
+ if (/(^|[^\\])#2/.test(defString))
+ argCount = 2;
+ if (/(^|[^\\])#3/.test(defString))
+ argCount = 3;
+ if (/(^|[^\\])#4/.test(defString))
+ argCount = 4;
+ if (/(^|[^\\])#5/.test(defString))
+ argCount = 5;
+ if (/(^|[^\\])#6/.test(defString))
+ argCount = 6;
+ if (/(^|[^\\])#7/.test(defString))
+ argCount = 7;
+ if (/(^|[^\\])#8/.test(defString))
+ argCount = 8;
+ if (/(^|[^\\])#9/.test(defString))
+ argCount = 9;
+ return {
+ expand: (_a3 = options == null ? void 0 : options.expand) != null ? _a3 : true,
+ captureSelection: (_b3 = options == null ? void 0 : options.captureSelection) != null ? _b3 : true,
+ args: argCount,
+ def: defString
+ };
+ }
+ return __spreadValues({
+ expand: (_c2 = options == null ? void 0 : options.expand) != null ? _c2 : true,
+ captureSelection: (_d2 = options == null ? void 0 : options.captureSelection) != null ? _d2 : true,
+ args: 0
+ }, def);
+}
+function normalizeMacroDictionary(macros) {
+ if (!macros)
+ return {};
+ const result = {};
+ for (const macro of Object.keys(macros)) {
+ const macroDef = macros[macro];
+ if (macroDef === void 0 || macroDef === null)
+ delete result[macro];
+ else if (typeof macroDef === "object" && "package" in macroDef) {
+ for (const packageMacro of Object.keys(macroDef.package)) {
+ result[packageMacro] = normalizeMacroDefinition(
+ macroDef.package[packageMacro],
+ {
+ expand: !macroDef.primitive,
+ captureSelection: macroDef.captureSelection
+ }
+ );
+ }
+ } else
+ result[macro] = normalizeMacroDefinition(macroDef);
+ }
+ return result;
+}
+function getDefinition(token, parseMode = "math") {
+ if (!token || token.length === 0)
+ return null;
+ let info = null;
+ if (token.startsWith("\\")) {
+ info = LATEX_COMMANDS[token];
+ if (info) {
+ if (!info.ifMode || info.ifMode === parseMode)
+ return info;
+ return null;
+ }
+ if (parseMode === "math")
+ info = MATH_SYMBOLS[token];
+ else if (TEXT_SYMBOLS[token]) {
+ info = {
+ definitionType: "symbol",
+ type: "mord",
+ codepoint: TEXT_SYMBOLS[token]
+ };
+ }
+ } else if (parseMode === "math") {
+ info = MATH_SYMBOLS[token];
+ if (!info && token.length === 1) {
+ const command = charToLatex("math", token.codePointAt(0));
+ if (command.startsWith("\\"))
+ return __spreadProps(__spreadValues({}, getDefinition(command, "math")), { command });
+ return null;
+ }
+ } else if (TEXT_SYMBOLS[token]) {
+ info = {
+ definitionType: "symbol",
+ type: "mord",
+ codepoint: TEXT_SYMBOLS[token]
+ };
+ } else if (parseMode === "text") {
+ info = {
+ definitionType: "symbol",
+ type: "mord",
+ codepoint: token.codePointAt(0)
+ };
+ }
+ return info != null ? info : null;
+}
+function getMacroDefinition(token, macros) {
+ if (!token.startsWith("\\"))
+ return null;
+ const command = token.slice(1);
+ return macros[command];
+}
+function charToLatex(parseMode, codepoint) {
+ if (codepoint === void 0)
+ return "";
+ if (parseMode === "math" && REVERSE_MATH_SYMBOLS[codepoint])
+ return REVERSE_MATH_SYMBOLS[codepoint];
+ if (parseMode === "text") {
+ const textSymbol = Object.keys(TEXT_SYMBOLS).find(
+ (x) => TEXT_SYMBOLS[x] === codepoint
+ );
+ if (textSymbol)
+ return textSymbol;
+ return String.fromCodePoint(codepoint);
+ }
+ return String.fromCodePoint(codepoint);
+}
+
+// src/core/font-metrics-data.ts
+var M1 = [0, 0.68889, 0, 0, 0.72222];
+var M2 = [0, 0.68889, 0, 0, 0.66667];
+var M3 = [0, 0.68889, 0, 0, 0.77778];
+var M4 = [0, 0.68889, 0, 0, 0.61111];
+var M5 = [0.16667, 0.68889, 0, 0, 0.77778];
+var M6 = [0, 0.68889, 0, 0, 0.55556];
+var M7 = [0, 0, 0, 0, 0.25];
+var M8 = [0, 0.825, 0, 0, 2.33334];
+var M9 = [0, 0.9, 0, 0, 2.33334];
+var M10 = [0, 0.68889, 0, 0, 0.54028];
+var M11 = [-0.03598, 0.46402, 0, 0, 0.5];
+var M12 = [-0.13313, 0.36687, 0, 0, 1];
+var M13 = [0.01354, 0.52239, 0, 0, 1];
+var M14 = [0.01354, 0.52239, 0, 0, 1.11111];
+var M15 = [0, 0.54986, 0, 0, 1];
+var M16 = [0, 0.69224, 0, 0, 0.5];
+var M17 = [0, 0.43056, 0, 0, 1];
+var M18 = [0.08198, 0.58198, 0, 0, 0.77778];
+var M19 = [0.19444, 0.69224, 0, 0, 0.41667];
+var M20 = [0.1808, 0.675, 0, 0, 1];
+var M21 = [0.19444, 0.69224, 0, 0, 0.83334];
+var M22 = [0.13667, 0.63667, 0, 0, 1];
+var M23 = [-0.064, 0.437, 0, 0, 1.334];
+var M24 = [0.08167, 0.58167, 0, 0, 0.77778];
+var M25 = [0, 0.69224, 0, 0, 0.72222];
+var M26 = [0, 0.69224, 0, 0, 0.66667];
+var M27 = [-0.13313, 0.36687, 0, 0, 0.77778];
+var M28 = [0.06062, 0.54986, 0, 0, 0.77778];
+var M29 = [0, 0.69224, 0, 0, 0.77778];
+var M30 = [0.25583, 0.75583, 0, 0, 0.77778];
+var M31 = [0.25142, 0.75726, 0, 0, 0.77778];
+var M32 = [0.20576, 0.70576, 0, 0, 0.77778];
+var M33 = [0.30274, 0.79383, 0, 0, 0.77778];
+var M34 = [0.22958, 0.72958, 0, 0, 0.77778];
+var M35 = [0.1808, 0.675, 0, 0, 0.77778];
+var M36 = [0.13667, 0.63667, 0, 0, 0.77778];
+var M37 = [0.13597, 0.63597, 0, 0, 0.77778];
+var M38 = [0.03517, 0.54986, 0, 0, 0.77778];
+var M39 = [0, 0.675, 0, 0, 0.77778];
+var M40 = [0.19444, 0.69224, 0, 0, 0.61111];
+var M41 = [0, 0.54986, 0, 0, 0.76042];
+var M42 = [0, 0.54986, 0, 0, 0.66667];
+var M43 = [0.0391, 0.5391, 0, 0, 0.77778];
+var M44 = [0.03517, 0.54986, 0, 0, 1.33334];
+var M45 = [0.38569, 0.88569, 0, 0, 0.77778];
+var M46 = [0.23222, 0.74111, 0, 0, 0.77778];
+var M47 = [0.19444, 0.69224, 0, 0, 0.77778];
+var M48 = [0, 0.37788, 0, 0, 0.5];
+var M49 = [0, 0.54986, 0, 0, 0.72222];
+var M50 = [0, 0.69224, 0, 0, 0.83334];
+var M51 = [0.11111, 0.69224, 0, 0, 0.66667];
+var M52 = [0.26167, 0.75726, 0, 0, 0.77778];
+var M53 = [0.48256, 0.98256, 0, 0, 0.77778];
+var M54 = [0.28481, 0.79383, 0, 0, 0.77778];
+var M55 = [0.08167, 0.58167, 0, 0, 0.22222];
+var M56 = [0.08167, 0.58167, 0, 0, 0.38889];
+var M57 = [0, 0.43056, 0.04028, 0, 0.66667];
+var M58 = [0.41951, 0.91951, 0, 0, 0.77778];
+var M59 = [0.24982, 0.74947, 0, 0, 0.38865];
+var M60 = [0.08319, 0.58283, 0, 0, 0.75623];
+var M61 = [0, 0.10803, 0, 0, 0.27764];
+var M62 = [0, 0.47534, 0, 0, 0.50181];
+var M63 = [0.18906, 0.47534, 0, 0, 0.50181];
+var M64 = [0, 0.69141, 0, 0, 0.50181];
+var M65 = [0.24982, 0.74947, 0, 0, 0.27764];
+var M66 = [0, 0.69141, 0, 0, 0.21471];
+var M67 = [0.25, 0.75, 0, 0, 0.44722];
+var M68 = [0, 0.64444, 0, 0, 0.575];
+var M69 = [0.08556, 0.58556, 0, 0, 0.89444];
+var M70 = [0, 0.69444, 0, 0, 0.89444];
+var M71 = [0, 0.68611, 0, 0, 0.9];
+var M72 = [0, 0.68611, 0, 0, 0.86944];
+var M73 = [0.25, 0.75, 0, 0, 0.575];
+var M74 = [0.25, 0.75, 0, 0, 0.31944];
+var M75 = [0, 0.69444, 0, 0, 0.63889];
+var M76 = [0, 0.69444, 0, 0, 0.31944];
+var M77 = [0, 0.44444, 0, 0, 0.63889];
+var M78 = [0, 0.44444, 0, 0, 0.51111];
+var M79 = [0, 0.69444, 0, 0, 0.575];
+var M80 = [0.13333, 0.63333, 0, 0, 0.89444];
+var M81 = [0, 0.44444, 0, 0, 0.31944];
+var M82 = [0, 0.69444, 0, 0, 0.86944];
+var M83 = [0, 0.68611, 0, 0, 0.69166];
+var M84 = [0, 0.68611, 0, 0, 0.83055];
+var M85 = [0, 0.68611, 0, 0, 0.89444];
+var M86 = [0, 0.69444, 0, 0, 0.60278];
+var M87 = [0.19444, 0.69444, 0, 0, 0.51111];
+var M88 = [0, 0.69444, 0, 0, 0.83055];
+var M89 = [-0.10889, 0.39111, 0, 0, 1.14999];
+var M90 = [0.19444, 0.69444, 0, 0, 0.575];
+var M91 = [0.19444, 0.69444, 0, 0, 1.14999];
+var M92 = [0.19444, 0.69444, 0, 0, 0.70277];
+var M93 = [0.05556, 0.75, 0, 0, 0.575];
+var M94 = [0, 0.68611, 0, 0, 0.95833];
+var M95 = [0.08556, 0.58556, 0, 0, 0.76666];
+var M96 = [-0.02639, 0.47361, 0, 0, 0.575];
+var M97 = [0, 0.44444, 0, 0, 0.89444];
+var M98 = [0, 0.55556, 0, 0, 0.76666];
+var M99 = [-0.10889, 0.39111, 0, 0, 0.89444];
+var M100 = [222e-5, 0.50222, 0, 0, 0.89444];
+var M101 = [0.19667, 0.69667, 0, 0, 0.89444];
+var M102 = [0.08556, 0.58556, 0, 0, 1.14999];
+var M103 = [0, 0.69444, 0, 0, 0.70277];
+var M104 = [-0.02778, 0.47222, 0, 0, 0.575];
+var M105 = [0.25, 0.75, 0, 0, 0.51111];
+var M106 = [-0.13889, 0.36111, 0, 0, 1.14999];
+var M107 = [0.19444, 0.69444, 0, 0, 1.02222];
+var M108 = [0.12963, 0.69444, 0, 0, 0.89444];
+var M109 = [0.19444, 0.69444, 0, 0, 0.44722];
+var M110 = [0, 0.64444, 0.13167, 0, 0.59111];
+var M111 = [0.19444, 0.64444, 0.13167, 0, 0.59111];
+var M112 = [0, 0.68611, 0.17208, 0, 0.8961];
+var M113 = [0.19444, 0.44444, 0.105, 0, 0.53222];
+var M114 = [0, 0.44444, 0.085, 0, 0.82666];
+var M115 = [0, 0.69444, 0.06709, 0, 0.59111];
+var M116 = [0, 0.69444, 0.12945, 0, 0.35555];
+var M117 = [0, 0.69444, 0, 0, 0.94888];
+var M118 = [0, 0.69444, 0.11472, 0, 0.59111];
+var M119 = [0, 0.68611, 0.10778, 0, 0.88555];
+var M120 = [0, 0.69444, 0.07939, 0, 0.62055];
+var M121 = [0, 0.69444, 0.12417, 0, 0.30667];
+var M122 = [0, 0.64444, 0.13556, 0, 0.51111];
+var M123 = [0.19444, 0.64444, 0.13556, 0, 0.51111];
+var M124 = [0, 0.68333, 0.16389, 0, 0.74333];
+var M125 = [0.19444, 0.43056, 0.08847, 0, 0.46];
+var M126 = [0, 0.43056, 0.07514, 0, 0.71555];
+var M127 = [0, 0.69444, 0.06646, 0, 0.51111];
+var M128 = [0, 0.69444, 0, 0, 0.83129];
+var M129 = [0, 0.69444, 0.1225, 0, 0.51111];
+var M130 = [0, 0.68333, 0.09403, 0, 0.76666];
+var M131 = [0, 0.68333, 0.11111, 0, 0.76666];
+var M132 = [0, 0.69444, 0.06961, 0, 0.51444];
+var M133 = [0, 0.69444, 0, 0, 0.27778];
+var M134 = [0.25, 0.75, 0, 0, 0.38889];
+var M135 = [0, 0.64444, 0, 0, 0.5];
+var M136 = [0, 0.69444, 0, 0, 0.77778];
+var M137 = [0, 0.68333, 0, 0, 0.75];
+var M138 = [0, 0.68333, 0, 0, 0.77778];
+var M139 = [0, 0.68333, 0, 0, 0.68056];
+var M140 = [0, 0.68333, 0, 0, 0.72222];
+var M141 = [0.25, 0.75, 0, 0, 0.5];
+var M142 = [0.25, 0.75, 0, 0, 0.27778];
+var M143 = [0, 0.69444, 0, 0, 0.5];
+var M144 = [0, 0.69444, 0, 0, 0.55556];
+var M145 = [0, 0.43056, 0, 0, 0.44445];
+var M146 = [0, 0.43056, 0, 0, 0.5];
+var M147 = [0.19444, 0.43056, 0, 0, 0.55556];
+var M148 = [0, 0.43056, 0, 0, 0.55556];
+var M149 = [0.08333, 0.58333, 0, 0, 0.77778];
+var M150 = [0, 0.43056, 0, 0, 0.27778];
+var M151 = [0, 0.66786, 0, 0, 0.27778];
+var M152 = [0, 0.69444, 0, 0, 0.75];
+var M153 = [0, 0.66786, 0, 0, 0.5];
+var M154 = [0, 0.68333, 0, 0, 0.625];
+var M155 = [0.19444, 0.69444, 0, 0, 0.44445];
+var M156 = [0, 0.69444, 0, 0, 0.72222];
+var M157 = [0.19444, 0.69444, 0, 0, 0.5];
+var M158 = [0.19444, 0.69444, 0, 0, 1];
+var M159 = [0.011, 0.511, 0, 0, 1.126];
+var M160 = [0.19444, 0.69444, 0, 0, 0.61111];
+var M161 = [0.05556, 0.75, 0, 0, 0.5];
+var M162 = [0, 0.68333, 0, 0, 0.83334];
+var M163 = [0.0391, 0.5391, 0, 0, 0.66667];
+var M164 = [-0.05555, 0.44445, 0, 0, 0.5];
+var M165 = [0, 0.43056, 0, 0, 0.77778];
+var M166 = [0, 0.55556, 0, 0, 0.66667];
+var M167 = [-0.03625, 0.46375, 0, 0, 0.77778];
+var M168 = [-0.01688, 0.48312, 0, 0, 0.77778];
+var M169 = [0.0391, 0.5391, 0, 0, 1];
+var M170 = [0, 0.69444, 0, 0, 0.61111];
+var M171 = [-0.03472, 0.46528, 0, 0, 0.5];
+var M172 = [0.25, 0.75, 0, 0, 0.44445];
+var M173 = [-0.14236, 0.35764, 0, 0, 1];
+var M174 = [0.244, 0.744, 0, 0, 0.412];
+var M175 = [0.19444, 0.69444, 0, 0, 0.88889];
+var M176 = [0.12963, 0.69444, 0, 0, 0.77778];
+var M177 = [0.19444, 0.69444, 0, 0, 0.38889];
+var M178 = [0.011, 0.511, 0, 0, 1.638];
+var M179 = [0.19444, 0.69444, 0, 0, 0];
+var M180 = [0, 0.44444, 0, 0, 0.575];
+var M181 = [0.19444, 0.44444, 0, 0, 0.575];
+var M182 = [0, 0.68611, 0, 0, 0.75555];
+var M183 = [0, 0.69444, 0, 0, 0.66759];
+var M184 = [0, 0.68611, 0, 0, 0.80555];
+var M185 = [0, 0.68611, 0.08229, 0, 0.98229];
+var M186 = [0, 0.68611, 0, 0, 0.76666];
+var M187 = [0, 0.44444, 0, 0, 0.58472];
+var M188 = [0.19444, 0.44444, 0, 0, 0.6118];
+var M189 = [0.19444, 0.43056, 0, 0, 0.5];
+var M190 = [0, 0.68333, 0.02778, 0.08334, 0.76278];
+var M191 = [0, 0.68333, 0.08125, 0.05556, 0.83125];
+var M192 = [0, 0.43056, 0, 0.05556, 0.48472];
+var M193 = [0.19444, 0.43056, 0, 0.08334, 0.51702];
+var M194 = [0.25, 0.75, 0, 0, 0.42778];
+var M195 = [0, 0.69444, 0, 0, 0.55];
+var M196 = [0, 0.69444, 0, 0, 0.73334];
+var M197 = [0, 0.69444, 0, 0, 0.79445];
+var M198 = [0, 0.69444, 0, 0, 0.51945];
+var M199 = [0, 0.69444, 0, 0, 0.70278];
+var M200 = [0, 0.69444, 0, 0, 0.76389];
+var M201 = [0.25, 0.75, 0, 0, 0.34306];
+var M202 = [0, 0.69444, 0, 0, 0.56111];
+var M203 = [0, 0.69444, 0, 0, 0.25556];
+var M204 = [0.19444, 0.45833, 0, 0, 0.56111];
+var M205 = [0, 0.45833, 0, 0, 0.56111];
+var M206 = [0, 0.69444, 0, 0, 0.30556];
+var M207 = [0, 0.69444, 0, 0, 0.58056];
+var M208 = [0, 0.69444, 0, 0, 0.67223];
+var M209 = [0, 0.69444, 0, 0, 0.85556];
+var M210 = [0, 0.69444, 0, 0, 0.55834];
+var M211 = [0, 0.65556, 0.11156, 0, 0.5];
+var M212 = [0, 0.69444, 0.08094, 0, 0.70834];
+var M213 = [0.17014, 0, 0, 0, 0.44445];
+var M214 = [0, 0.69444, 0.0799, 0, 0.5];
+var M215 = [0, 0.69444, 0, 0, 0.73752];
+var M216 = [0, 0.69444, 0.09205, 0, 0.5];
+var M217 = [0, 0.69444, 0.09031, 0, 0.77778];
+var M218 = [0, 0.69444, 0.07816, 0, 0.27778];
+var M219 = [0, 0.69444, 316e-5, 0, 0.5];
+var M220 = [0.19444, 0.69444, 0, 0, 0.83334];
+var M221 = [0.05556, 0.75, 0, 0, 0.83334];
+var M222 = [0, 0.75, 0, 0, 0.5];
+var M223 = [0.125, 0.08333, 0, 0, 0.27778];
+var M224 = [0, 0.08333, 0, 0, 0.27778];
+var M225 = [0, 0.65556, 0, 0, 0.5];
+var M226 = [0, 0.69444, 0, 0, 0.47222];
+var M227 = [0, 0.69444, 0, 0, 0.66667];
+var M228 = [0, 0.69444, 0, 0, 0.59722];
+var M229 = [0, 0.69444, 0, 0, 0.54167];
+var M230 = [0, 0.69444, 0, 0, 0.70834];
+var M231 = [0.25, 0.75, 0, 0, 0.28889];
+var M232 = [0, 0.69444, 0, 0, 0.51667];
+var M233 = [0, 0.44444, 0, 0, 0.44445];
+var M234 = [0.19444, 0.44444, 0, 0, 0.51667];
+var M235 = [0, 0.44444, 0, 0, 0.38333];
+var M236 = [0, 0.44444, 0, 0, 0.51667];
+var M237 = [0, 0.69444, 0, 0, 0.83334];
+var M238 = [0.35001, 0.85, 0, 0, 0.45834];
+var M239 = [0.35001, 0.85, 0, 0, 0.57778];
+var M240 = [0.35001, 0.85, 0, 0, 0.41667];
+var M241 = [0.35001, 0.85, 0, 0, 0.58334];
+var M242 = [0, 0.72222, 0, 0, 0.55556];
+var M243 = [1e-5, 0.6, 0, 0, 0.66667];
+var M244 = [1e-5, 0.6, 0, 0, 0.77778];
+var M245 = [0.25001, 0.75, 0, 0, 0.94445];
+var M246 = [0.306, 0.805, 0.19445, 0, 0.47222];
+var M247 = [0.30612, 0.805, 0.19445, 0, 0.47222];
+var M248 = [0.25001, 0.75, 0, 0, 0.83334];
+var M249 = [0.35001, 0.85, 0, 0, 0.47222];
+var M250 = [0.25001, 0.75, 0, 0, 1.11111];
+var M251 = [0.65002, 1.15, 0, 0, 0.59722];
+var M252 = [0.65002, 1.15, 0, 0, 0.81111];
+var M253 = [0.65002, 1.15, 0, 0, 0.47222];
+var M254 = [0.65002, 1.15, 0, 0, 0.66667];
+var M255 = [0, 0.75, 0, 0, 1];
+var M256 = [0.55001, 1.05, 0, 0, 1.27778];
+var M257 = [0.862, 1.36, 0.44445, 0, 0.55556];
+var M258 = [0.86225, 1.36, 0.44445, 0, 0.55556];
+var M259 = [0.55001, 1.05, 0, 0, 1.11111];
+var M260 = [0.65002, 1.15, 0, 0, 0.52778];
+var M261 = [0.65002, 1.15, 0, 0, 0.61111];
+var M262 = [0.55001, 1.05, 0, 0, 1.51112];
+var M263 = [0.95003, 1.45, 0, 0, 0.73611];
+var M264 = [0.95003, 1.45, 0, 0, 1.04445];
+var M265 = [0.95003, 1.45, 0, 0, 0.52778];
+var M266 = [0.95003, 1.45, 0, 0, 0.75];
+var M267 = [0, 0.75, 0, 0, 1.44445];
+var M268 = [0.95003, 1.45, 0, 0, 0.58334];
+var M269 = [1.25003, 1.75, 0, 0, 0.79167];
+var M270 = [1.25003, 1.75, 0, 0, 1.27778];
+var M271 = [1.25003, 1.75, 0, 0, 0.58334];
+var M272 = [1.25003, 1.75, 0, 0, 0.80556];
+var M273 = [0, 0.825, 0, 0, 1.8889];
+var M274 = [1.25003, 1.75, 0, 0, 0.63889];
+var M275 = [0.64502, 1.155, 0, 0, 0.875];
+var M276 = [1e-5, 0.6, 0, 0, 0.875];
+var M277 = [-99e-5, 0.601, 0, 0, 0.66667];
+var M278 = [0.64502, 1.155, 0, 0, 0.66667];
+var M279 = [1e-5, 0.9, 0, 0, 0.88889];
+var M280 = [0.65002, 1.15, 0, 0, 0.88889];
+var M281 = [0.90001, 0, 0, 0, 0.88889];
+var M282 = [-499e-5, 0.605, 0, 0, 1.05556];
+var M283 = [0, 0.12, 0, 0, 0.45];
+var M284 = [0, 0.61111, 0, 0, 0.525];
+var M285 = [0.08333, 0.69444, 0, 0, 0.525];
+var M286 = [-0.08056, 0.53055, 0, 0, 0.525];
+var M287 = [-0.05556, 0.55556, 0, 0, 0.525];
+var M288 = [0, 0.43056, 0, 0, 0.525];
+var M289 = [0.22222, 0.43056, 0, 0, 0.525];
+var M290 = [0, 0, 0, 0, 0.525];
+var font_metrics_data_default = {
+ "AMS-Regular": {
+ 32: M7,
+ // U+0020
+ 65: M1,
+ // U+0041 A
+ 66: M2,
+ // U+0042 B
+ 67: M1,
+ // U+0043 C
+ 68: M1,
+ // U+0044 D
+ 69: M2,
+ // U+0045 E
+ 70: M4,
+ // U+0046 F
+ 71: M3,
+ // U+0047 G
+ 72: M3,
+ // U+0048 H
+ 73: [0, 0.68889, 0, 0, 0.38889],
+ // U+0049 I
+ 74: [0.16667, 0.68889, 0, 0, 0.5],
+ // U+004a J
+ 75: M3,
+ // U+004b K
+ 76: M2,
+ // U+004c L
+ 77: [0, 0.68889, 0, 0, 0.94445],
+ // U+004d M
+ 78: M1,
+ // U+004e N
+ 79: M5,
+ // U+004f O
+ 80: M4,
+ // U+0050 P
+ 81: M5,
+ // U+0051 Q
+ 82: M1,
+ // U+0052 R
+ 83: M6,
+ // U+0053 S
+ 84: M2,
+ // U+0054 T
+ 85: M1,
+ // U+0055 U
+ 86: M1,
+ // U+0056 V
+ 87: [0, 0.68889, 0, 0, 1],
+ // U+0057 W
+ 88: M1,
+ // U+0058 X
+ 89: M1,
+ // U+0059 Y
+ 90: M2,
+ // U+005a Z
+ 107: M6,
+ // U+006b k
+ 160: M7,
+ // U+00a0
+ 165: [0, 0.675, 0.025, 0, 0.75],
+ // U+00a5 ¥
+ 174: [0.15559, 0.69224, 0, 0, 0.94666],
+ // U+00ae ®
+ 240: M6,
+ // U+00f0 ð
+ 295: M10,
+ // U+0127 ħ
+ 710: M8,
+ // U+02c6 ˆ
+ 732: M9,
+ // U+02dc ˜
+ 770: M8,
+ // U+0302 ̂
+ 771: M9,
+ // U+0303 ̃
+ 989: M24,
+ // U+03dd ϝ
+ 1008: M57,
+ // U+03f0 ϰ
+ 8245: [0, 0.54986, 0, 0, 0.275],
+ // U+2035 ‵
+ 8463: M10,
+ // U+210f ℏ
+ 8487: M1,
+ // U+2127 ℧
+ 8498: M6,
+ // U+2132 Ⅎ
+ 8502: M2,
+ // U+2136 ℶ
+ 8503: [0, 0.68889, 0, 0, 0.44445],
+ // U+2137 ℷ
+ 8504: M2,
+ // U+2138 ℸ
+ 8513: [0, 0.68889, 0, 0, 0.63889],
+ // U+2141 ⅁
+ 8592: M11,
+ // U+2190 ←
+ 8594: M11,
+ // U+2192 →
+ 8602: M12,
+ // U+219a ↚
+ 8603: M12,
+ // U+219b ↛
+ 8606: M13,
+ // U+219e ↞
+ 8608: M13,
+ // U+21a0 ↠
+ 8610: M14,
+ // U+21a2 ↢
+ 8611: M14,
+ // U+21a3 ↣
+ 8619: M15,
+ // U+21ab ↫
+ 8620: M15,
+ // U+21ac ↬
+ 8621: [-0.13313, 0.37788, 0, 0, 1.38889],
+ // U+21ad ↭
+ 8622: M12,
+ // U+21ae ↮
+ 8624: M16,
+ // U+21b0 ↰
+ 8625: M16,
+ // U+21b1 ↱
+ 8630: M17,
+ // U+21b6 ↶
+ 8631: M17,
+ // U+21b7 ↷
+ 8634: M18,
+ // U+21ba ↺
+ 8635: M18,
+ // U+21bb ↻
+ 8638: M19,
+ // U+21be ↾
+ 8639: M19,
+ // U+21bf ↿
+ 8642: M19,
+ // U+21c2 ⇂
+ 8643: M19,
+ // U+21c3 ⇃
+ 8644: M20,
+ // U+21c4 ⇄
+ 8646: M20,
+ // U+21c6 ⇆
+ 8647: M20,
+ // U+21c7 ⇇
+ 8648: M21,
+ // U+21c8 ⇈
+ 8649: M20,
+ // U+21c9 ⇉
+ 8650: M21,
+ // U+21ca ⇊
+ 8651: M13,
+ // U+21cb ⇋
+ 8652: M13,
+ // U+21cc ⇌
+ 8653: M12,
+ // U+21cd ⇍
+ 8654: M12,
+ // U+21ce ⇎
+ 8655: M12,
+ // U+21cf ⇏
+ 8666: M22,
+ // U+21da ⇚
+ 8667: M22,
+ // U+21db ⇛
+ 8669: [-0.13313, 0.37788, 0, 0, 1],
+ // U+21dd ⇝
+ 8672: M23,
+ // U+21e0 ⇠
+ 8674: M23,
+ // U+21e2 ⇢
+ 8705: [0, 0.825, 0, 0, 0.5],
+ // U+2201 ∁
+ 8708: M6,
+ // U+2204 ∄
+ 8709: M24,
+ // U+2205 ∅
+ 8717: [0, 0.43056, 0, 0, 0.42917],
+ // U+220d ∍
+ 8722: M11,
+ // U+2212 −
+ 8724: [0.08198, 0.69224, 0, 0, 0.77778],
+ // U+2214 ∔
+ 8726: M24,
+ // U+2216 ∖
+ 8733: M29,
+ // U+221d ∝
+ 8736: M25,
+ // U+2220 ∠
+ 8737: M25,
+ // U+2221 ∡
+ 8738: [0.03517, 0.52239, 0, 0, 0.72222],
+ // U+2222 ∢
+ 8739: M55,
+ // U+2223 ∣
+ 8740: [0.25142, 0.74111, 0, 0, 0.27778],
+ // U+2224 ∤
+ 8741: M56,
+ // U+2225 ∥
+ 8742: [0.25142, 0.74111, 0, 0, 0.5],
+ // U+2226 ∦
+ 8756: M26,
+ // U+2234 ∴
+ 8757: M26,
+ // U+2235 ∵
+ 8764: M27,
+ // U+223c ∼
+ 8765: [-0.13313, 0.37788, 0, 0, 0.77778],
+ // U+223d ∽
+ 8769: M27,
+ // U+2241 ≁
+ 8770: M167,
+ // U+2242 ≂
+ 8774: M33,
+ // U+2246 ≆
+ 8776: M168,
+ // U+2248 ≈
+ 8778: M24,
+ // U+224a ≊
+ 8782: M28,
+ // U+224e ≎
+ 8783: M28,
+ // U+224f ≏
+ 8785: M18,
+ // U+2251 ≑
+ 8786: M18,
+ // U+2252 ≒
+ 8787: M18,
+ // U+2253 ≓
+ 8790: M29,
+ // U+2256 ≖
+ 8791: M34,
+ // U+2257 ≗
+ 8796: [0.08198, 0.91667, 0, 0, 0.77778],
+ // U+225c ≜
+ 8806: M30,
+ // U+2266 ≦
+ 8807: M30,
+ // U+2267 ≧
+ 8808: M31,
+ // U+2268 ≨
+ 8809: M31,
+ // U+2269 ≩
+ 8812: [0.25583, 0.75583, 0, 0, 0.5],
+ // U+226c ≬
+ 8814: M32,
+ // U+226e ≮
+ 8815: M32,
+ // U+226f ≯
+ 8816: M33,
+ // U+2270 ≰
+ 8817: M33,
+ // U+2271 ≱
+ 8818: M34,
+ // U+2272 ≲
+ 8819: M34,
+ // U+2273 ≳
+ 8822: M35,
+ // U+2276 ≶
+ 8823: M35,
+ // U+2277 ≷
+ 8828: M36,
+ // U+227c ≼
+ 8829: M36,
+ // U+227d ≽
+ 8830: M34,
+ // U+227e ≾
+ 8831: M34,
+ // U+227f ≿
+ 8832: M32,
+ // U+2280 ⊀
+ 8833: M32,
+ // U+2281 ⊁
+ 8840: M33,
+ // U+2288 ⊈
+ 8841: M33,
+ // U+2289 ⊉
+ 8842: M37,
+ // U+228a ⊊
+ 8843: M37,
+ // U+228b ⊋
+ 8847: M38,
+ // U+228f ⊏
+ 8848: M38,
+ // U+2290 ⊐
+ 8858: M18,
+ // U+229a ⊚
+ 8859: M18,
+ // U+229b ⊛
+ 8861: M18,
+ // U+229d ⊝
+ 8862: M39,
+ // U+229e ⊞
+ 8863: M39,
+ // U+229f ⊟
+ 8864: M39,
+ // U+22a0 ⊠
+ 8865: M39,
+ // U+22a1 ⊡
+ 8872: [0, 0.69224, 0, 0, 0.61111],
+ // U+22a8 ⊨
+ 8873: M25,
+ // U+22a9 ⊩
+ 8874: [0, 0.69224, 0, 0, 0.88889],
+ // U+22aa ⊪
+ 8876: M4,
+ // U+22ac ⊬
+ 8877: M4,
+ // U+22ad ⊭
+ 8878: M1,
+ // U+22ae ⊮
+ 8879: M1,
+ // U+22af ⊯
+ 8882: M38,
+ // U+22b2 ⊲
+ 8883: M38,
+ // U+22b3 ⊳
+ 8884: M36,
+ // U+22b4 ⊴
+ 8885: M36,
+ // U+22b5 ⊵
+ 8888: [0, 0.54986, 0, 0, 1.11111],
+ // U+22b8 ⊸
+ 8890: M147,
+ // U+22ba ⊺
+ 8891: M40,
+ // U+22bb ⊻
+ 8892: M40,
+ // U+22bc ⊼
+ 8901: [0, 0.54986, 0, 0, 0.27778],
+ // U+22c5 ⋅
+ 8903: M24,
+ // U+22c7 ⋇
+ 8905: M24,
+ // U+22c9 ⋉
+ 8906: M24,
+ // U+22ca ⋊
+ 8907: M29,
+ // U+22cb ⋋
+ 8908: M29,
+ // U+22cc ⋌
+ 8909: [-0.03598, 0.46402, 0, 0, 0.77778],
+ // U+22cd ⋍
+ 8910: M41,
+ // U+22ce ⋎
+ 8911: M41,
+ // U+22cf ⋏
+ 8912: M38,
+ // U+22d0 ⋐
+ 8913: M38,
+ // U+22d1 ⋑
+ 8914: M42,
+ // U+22d2 ⋒
+ 8915: M42,
+ // U+22d3 ⋓
+ 8916: M26,
+ // U+22d4 ⋔
+ 8918: M43,
+ // U+22d6 ⋖
+ 8919: M43,
+ // U+22d7 ⋗
+ 8920: M44,
+ // U+22d8 ⋘
+ 8921: M44,
+ // U+22d9 ⋙
+ 8922: M45,
+ // U+22da ⋚
+ 8923: M45,
+ // U+22db ⋛
+ 8926: M36,
+ // U+22de ⋞
+ 8927: M36,
+ // U+22df ⋟
+ 8928: M33,
+ // U+22e0 ⋠
+ 8929: M33,
+ // U+22e1 ⋡
+ 8934: M46,
+ // U+22e6 ⋦
+ 8935: M46,
+ // U+22e7 ⋧
+ 8936: M46,
+ // U+22e8 ⋨
+ 8937: M46,
+ // U+22e9 ⋩
+ 8938: M32,
+ // U+22ea ⋪
+ 8939: M32,
+ // U+22eb ⋫
+ 8940: M33,
+ // U+22ec ⋬
+ 8941: M33,
+ // U+22ed ⋭
+ 8994: M47,
+ // U+2322 ⌢
+ 8995: M47,
+ // U+2323 ⌣
+ 9416: [0.15559, 0.69224, 0, 0, 0.90222],
+ // U+24c8 Ⓢ
+ 9484: M16,
+ // U+250c ┌
+ 9488: M16,
+ // U+2510 ┐
+ 9492: M48,
+ // U+2514 └
+ 9496: M48,
+ // U+2518 ┘
+ 9585: [0.19444, 0.68889, 0, 0, 0.88889],
+ // U+2571 ╱
+ 9586: [0.19444, 0.74111, 0, 0, 0.88889],
+ // U+2572 ╲
+ 9632: M39,
+ // U+25a0 ■
+ 9633: M39,
+ // U+25a1 □
+ 9650: M49,
+ // U+25b2 ▲
+ 9651: M49,
+ // U+25b3 △
+ 9654: M38,
+ // U+25b6 ▶
+ 9660: M49,
+ // U+25bc ▼
+ 9661: M49,
+ // U+25bd ▽
+ 9664: M38,
+ // U+25c0 ◀
+ 9674: M51,
+ // U+25ca ◊
+ 9733: [0.19444, 0.69224, 0, 0, 0.94445],
+ // U+2605 ★
+ 10003: M50,
+ // U+2713 ✓
+ 10016: M50,
+ // U+2720 ✠
+ 10731: M51,
+ // U+29eb ⧫
+ 10846: [0.19444, 0.75583, 0, 0, 0.61111],
+ // U+2a5e ⩞
+ 10877: M36,
+ // U+2a7d ⩽
+ 10878: M36,
+ // U+2a7e ⩾
+ 10885: M30,
+ // U+2a85 ⪅
+ 10886: M30,
+ // U+2a86 ⪆
+ 10887: M37,
+ // U+2a87 ⪇
+ 10888: M37,
+ // U+2a88 ⪈
+ 10889: M52,
+ // U+2a89 ⪉
+ 10890: M52,
+ // U+2a8a ⪊
+ 10891: M53,
+ // U+2a8b ⪋
+ 10892: M53,
+ // U+2a8c ⪌
+ 10901: M36,
+ // U+2a95 ⪕
+ 10902: M36,
+ // U+2a96 ⪖
+ 10933: M31,
+ // U+2ab5 ⪵
+ 10934: M31,
+ // U+2ab6 ⪶
+ 10935: M52,
+ // U+2ab7 ⪷
+ 10936: M52,
+ // U+2ab8 ⪸
+ 10937: M52,
+ // U+2ab9 ⪹
+ 10938: M52,
+ // U+2aba ⪺
+ 10949: M30,
+ // U+2ac5 ⫅
+ 10950: M30,
+ // U+2ac6 ⫆
+ 10955: M54,
+ // U+2acb ⫋
+ 10956: M54,
+ // U+2acc ⫌
+ 57350: M55,
+ // U+e006
+ 57351: M56,
+ // U+e007
+ 57352: M24,
+ // U+e008
+ 57353: M57,
+ // U+e009
+ 57356: M31,
+ // U+e00c
+ 57357: M31,
+ // U+e00d
+ 57358: M58,
+ // U+e00e
+ 57359: M33,
+ // U+e00f
+ 57360: M33,
+ // U+e010
+ 57361: M58,
+ // U+e011
+ 57366: M31,
+ // U+e016
+ 57367: M31,
+ // U+e017
+ 57368: M31,
+ // U+e018
+ 57369: M31,
+ // U+e019
+ 57370: M37,
+ // U+e01a
+ 57371: M37
+ // U+e01b
+ },
+ "Caligraphic-Regular": {
+ 32: M7,
+ // U+0020
+ 65: [0, 0.68333, 0, 0.19445, 0.79847],
+ // U+0041 A
+ 66: [0, 0.68333, 0.03041, 0.13889, 0.65681],
+ // U+0042 B
+ 67: [0, 0.68333, 0.05834, 0.13889, 0.52653],
+ // U+0043 C
+ 68: [0, 0.68333, 0.02778, 0.08334, 0.77139],
+ // U+0044 D
+ 69: [0, 0.68333, 0.08944, 0.11111, 0.52778],
+ // U+0045 E
+ 70: [0, 0.68333, 0.09931, 0.11111, 0.71875],
+ // U+0046 F
+ 71: [0.09722, 0.68333, 0.0593, 0.11111, 0.59487],
+ // U+0047 G
+ 72: [0, 0.68333, 965e-5, 0.11111, 0.84452],
+ // U+0048 H
+ 73: [0, 0.68333, 0.07382, 0, 0.54452],
+ // U+0049 I
+ 74: [0.09722, 0.68333, 0.18472, 0.16667, 0.67778],
+ // U+004a J
+ 75: [0, 0.68333, 0.01445, 0.05556, 0.76195],
+ // U+004b K
+ 76: [0, 0.68333, 0, 0.13889, 0.68972],
+ // U+004c L
+ 77: [0, 0.68333, 0, 0.13889, 1.2009],
+ // U+004d M
+ 78: [0, 0.68333, 0.14736, 0.08334, 0.82049],
+ // U+004e N
+ 79: [0, 0.68333, 0.02778, 0.11111, 0.79611],
+ // U+004f O
+ 80: [0, 0.68333, 0.08222, 0.08334, 0.69556],
+ // U+0050 P
+ 81: [0.09722, 0.68333, 0, 0.11111, 0.81667],
+ // U+0051 Q
+ 82: [0, 0.68333, 0, 0.08334, 0.8475],
+ // U+0052 R
+ 83: [0, 0.68333, 0.075, 0.13889, 0.60556],
+ // U+0053 S
+ 84: [0, 0.68333, 0.25417, 0, 0.54464],
+ // U+0054 T
+ 85: [0, 0.68333, 0.09931, 0.08334, 0.62583],
+ // U+0055 U
+ 86: [0, 0.68333, 0.08222, 0, 0.61278],
+ // U+0056 V
+ 87: [0, 0.68333, 0.08222, 0.08334, 0.98778],
+ // U+0057 W
+ 88: [0, 0.68333, 0.14643, 0.13889, 0.7133],
+ // U+0058 X
+ 89: [0.09722, 0.68333, 0.08222, 0.08334, 0.66834],
+ // U+0059 Y
+ 90: [0, 0.68333, 0.07944, 0.13889, 0.72473],
+ // U+005a Z
+ 160: M7
+ // U+00a0
+ },
+ "Fraktur-Regular": {
+ 32: M7,
+ // U+0020
+ 33: [0, 0.69141, 0, 0, 0.29574],
+ // U+0021 !
+ 34: M66,
+ // U+0022 "
+ 38: [0, 0.69141, 0, 0, 0.73786],
+ // U+0026 &
+ 39: [0, 0.69141, 0, 0, 0.21201],
+ // U+0027 '
+ 40: M59,
+ // U+0028 (
+ 41: M59,
+ // U+0029 )
+ 42: [0, 0.62119, 0, 0, 0.27764],
+ // U+002a *
+ 43: M60,
+ // U+002b +
+ 44: M61,
+ // U+002c ,
+ 45: M60,
+ // U+002d -
+ 46: M61,
+ // U+002e .
+ 47: [0.24982, 0.74947, 0, 0, 0.50181],
+ // U+002f /
+ 48: M62,
+ // U+0030 0
+ 49: M62,
+ // U+0031 1
+ 50: M62,
+ // U+0032 2
+ 51: M63,
+ // U+0033 3
+ 52: M63,
+ // U+0034 4
+ 53: M63,
+ // U+0035 5
+ 54: M64,
+ // U+0036 6
+ 55: M63,
+ // U+0037 7
+ 56: M64,
+ // U+0038 8
+ 57: M63,
+ // U+0039 9
+ 58: [0, 0.47534, 0, 0, 0.21606],
+ // U+003a :
+ 59: [0.12604, 0.47534, 0, 0, 0.21606],
+ // U+003b ;
+ 61: [-0.13099, 0.36866, 0, 0, 0.75623],
+ // U+003d =
+ 63: [0, 0.69141, 0, 0, 0.36245],
+ // U+003f ?
+ 65: [0, 0.69141, 0, 0, 0.7176],
+ // U+0041 A
+ 66: [0, 0.69141, 0, 0, 0.88397],
+ // U+0042 B
+ 67: [0, 0.69141, 0, 0, 0.61254],
+ // U+0043 C
+ 68: [0, 0.69141, 0, 0, 0.83158],
+ // U+0044 D
+ 69: [0, 0.69141, 0, 0, 0.66278],
+ // U+0045 E
+ 70: [0.12604, 0.69141, 0, 0, 0.61119],
+ // U+0046 F
+ 71: [0, 0.69141, 0, 0, 0.78539],
+ // U+0047 G
+ 72: [0.06302, 0.69141, 0, 0, 0.7203],
+ // U+0048 H
+ 73: [0, 0.69141, 0, 0, 0.55448],
+ // U+0049 I
+ 74: [0.12604, 0.69141, 0, 0, 0.55231],
+ // U+004a J
+ 75: [0, 0.69141, 0, 0, 0.66845],
+ // U+004b K
+ 76: [0, 0.69141, 0, 0, 0.66602],
+ // U+004c L
+ 77: [0, 0.69141, 0, 0, 1.04953],
+ // U+004d M
+ 78: [0, 0.69141, 0, 0, 0.83212],
+ // U+004e N
+ 79: [0, 0.69141, 0, 0, 0.82699],
+ // U+004f O
+ 80: [0.18906, 0.69141, 0, 0, 0.82753],
+ // U+0050 P
+ 81: [0.03781, 0.69141, 0, 0, 0.82699],
+ // U+0051 Q
+ 82: [0, 0.69141, 0, 0, 0.82807],
+ // U+0052 R
+ 83: [0, 0.69141, 0, 0, 0.82861],
+ // U+0053 S
+ 84: [0, 0.69141, 0, 0, 0.66899],
+ // U+0054 T
+ 85: [0, 0.69141, 0, 0, 0.64576],
+ // U+0055 U
+ 86: [0, 0.69141, 0, 0, 0.83131],
+ // U+0056 V
+ 87: [0, 0.69141, 0, 0, 1.04602],
+ // U+0057 W
+ 88: [0, 0.69141, 0, 0, 0.71922],
+ // U+0058 X
+ 89: [0.18906, 0.69141, 0, 0, 0.83293],
+ // U+0059 Y
+ 90: [0.12604, 0.69141, 0, 0, 0.60201],
+ // U+005a Z
+ 91: M65,
+ // U+005b [
+ 93: M65,
+ // U+005d ]
+ 94: [0, 0.69141, 0, 0, 0.49965],
+ // U+005e ^
+ 97: [0, 0.47534, 0, 0, 0.50046],
+ // U+0061 a
+ 98: [0, 0.69141, 0, 0, 0.51315],
+ // U+0062 b
+ 99: [0, 0.47534, 0, 0, 0.38946],
+ // U+0063 c
+ 100: [0, 0.62119, 0, 0, 0.49857],
+ // U+0064 d
+ 101: [0, 0.47534, 0, 0, 0.40053],
+ // U+0065 e
+ 102: [0.18906, 0.69141, 0, 0, 0.32626],
+ // U+0066 f
+ 103: [0.18906, 0.47534, 0, 0, 0.5037],
+ // U+0067 g
+ 104: [0.18906, 0.69141, 0, 0, 0.52126],
+ // U+0068 h
+ 105: [0, 0.69141, 0, 0, 0.27899],
+ // U+0069 i
+ 106: [0, 0.69141, 0, 0, 0.28088],
+ // U+006a j
+ 107: [0, 0.69141, 0, 0, 0.38946],
+ // U+006b k
+ 108: [0, 0.69141, 0, 0, 0.27953],
+ // U+006c l
+ 109: [0, 0.47534, 0, 0, 0.76676],
+ // U+006d m
+ 110: [0, 0.47534, 0, 0, 0.52666],
+ // U+006e n
+ 111: [0, 0.47534, 0, 0, 0.48885],
+ // U+006f o
+ 112: [0.18906, 0.52396, 0, 0, 0.50046],
+ // U+0070 p
+ 113: [0.18906, 0.47534, 0, 0, 0.48912],
+ // U+0071 q
+ 114: [0, 0.47534, 0, 0, 0.38919],
+ // U+0072 r
+ 115: [0, 0.47534, 0, 0, 0.44266],
+ // U+0073 s
+ 116: [0, 0.62119, 0, 0, 0.33301],
+ // U+0074 t
+ 117: [0, 0.47534, 0, 0, 0.5172],
+ // U+0075 u
+ 118: [0, 0.52396, 0, 0, 0.5118],
+ // U+0076 v
+ 119: [0, 0.52396, 0, 0, 0.77351],
+ // U+0077 w
+ 120: [0.18906, 0.47534, 0, 0, 0.38865],
+ // U+0078 x
+ 121: [0.18906, 0.47534, 0, 0, 0.49884],
+ // U+0079 y
+ 122: [0.18906, 0.47534, 0, 0, 0.39054],
+ // U+007a z
+ 160: M7,
+ // U+00a0
+ 8216: M66,
+ // U+2018 ‘
+ 8217: M66,
+ // U+2019 ’
+ 58112: [0, 0.62119, 0, 0, 0.49749],
+ // U+e300
+ 58113: [0, 0.62119, 0, 0, 0.4983],
+ // U+e301
+ 58114: [0.18906, 0.69141, 0, 0, 0.33328],
+ // U+e302
+ 58115: [0.18906, 0.69141, 0, 0, 0.32923],
+ // U+e303
+ 58116: [0.18906, 0.47534, 0, 0, 0.50343],
+ // U+e304
+ 58117: [0, 0.69141, 0, 0, 0.33301],
+ // U+e305
+ 58118: [0, 0.62119, 0, 0, 0.33409],
+ // U+e306
+ 58119: [0, 0.47534, 0, 0, 0.50073]
+ // U+e307
+ },
+ "Main-Bold": {
+ 32: M7,
+ // U+0020
+ 33: [0, 0.69444, 0, 0, 0.35],
+ // U+0021 !
+ 34: M86,
+ // U+0022 "
+ 35: [0.19444, 0.69444, 0, 0, 0.95833],
+ // U+0023 #
+ 36: M93,
+ // U+0024 $
+ 37: [0.05556, 0.75, 0, 0, 0.95833],
+ // U+0025 %
+ 38: M70,
+ // U+0026 &
+ 39: M76,
+ // U+0027 '
+ 40: M67,
+ // U+0028 (
+ 41: M67,
+ // U+0029 )
+ 42: [0, 0.75, 0, 0, 0.575],
+ // U+002a *
+ 43: M80,
+ // U+002b +
+ 44: [0.19444, 0.15556, 0, 0, 0.31944],
+ // U+002c ,
+ 45: M235,
+ // U+002d -
+ 46: [0, 0.15556, 0, 0, 0.31944],
+ // U+002e .
+ 47: M73,
+ // U+002f /
+ 48: M68,
+ // U+0030 0
+ 49: M68,
+ // U+0031 1
+ 50: M68,
+ // U+0032 2
+ 51: M68,
+ // U+0033 3
+ 52: M68,
+ // U+0034 4
+ 53: M68,
+ // U+0035 5
+ 54: M68,
+ // U+0036 6
+ 55: M68,
+ // U+0037 7
+ 56: M68,
+ // U+0038 8
+ 57: M68,
+ // U+0039 9
+ 58: M81,
+ // U+003a :
+ 59: [0.19444, 0.44444, 0, 0, 0.31944],
+ // U+003b ;
+ 60: M69,
+ // U+003c <
+ 61: M99,
+ // U+003d =
+ 62: M69,
+ // U+003e >
+ 63: [0, 0.69444, 0, 0, 0.54305],
+ // U+003f ?
+ 64: M70,
+ // U+0040 @
+ 65: M72,
+ // U+0041 A
+ 66: [0, 0.68611, 0, 0, 0.81805],
+ // U+0042 B
+ 67: M84,
+ // U+0043 C
+ 68: [0, 0.68611, 0, 0, 0.88194],
+ // U+0044 D
+ 69: M182,
+ // U+0045 E
+ 70: [0, 0.68611, 0, 0, 0.72361],
+ // U+0046 F
+ 71: [0, 0.68611, 0, 0, 0.90416],
+ // U+0047 G
+ 72: M71,
+ // U+0048 H
+ 73: [0, 0.68611, 0, 0, 0.43611],
+ // U+0049 I
+ 74: [0, 0.68611, 0, 0, 0.59444],
+ // U+004a J
+ 75: [0, 0.68611, 0, 0, 0.90138],
+ // U+004b K
+ 76: M83,
+ // U+004c L
+ 77: [0, 0.68611, 0, 0, 1.09166],
+ // U+004d M
+ 78: M71,
+ // U+004e N
+ 79: [0, 0.68611, 0, 0, 0.86388],
+ // U+004f O
+ 80: [0, 0.68611, 0, 0, 0.78611],
+ // U+0050 P
+ 81: [0.19444, 0.68611, 0, 0, 0.86388],
+ // U+0051 Q
+ 82: [0, 0.68611, 0, 0, 0.8625],
+ // U+0052 R
+ 83: [0, 0.68611, 0, 0, 0.63889],
+ // U+0053 S
+ 84: [0, 0.68611, 0, 0, 0.8],
+ // U+0054 T
+ 85: [0, 0.68611, 0, 0, 0.88472],
+ // U+0055 U
+ 86: [0, 0.68611, 0.01597, 0, 0.86944],
+ // U+0056 V
+ 87: [0, 0.68611, 0.01597, 0, 1.18888],
+ // U+0057 W
+ 88: M72,
+ // U+0058 X
+ 89: [0, 0.68611, 0.02875, 0, 0.86944],
+ // U+0059 Y
+ 90: [0, 0.68611, 0, 0, 0.70277],
+ // U+005a Z
+ 91: M74,
+ // U+005b [
+ 92: M73,
+ // U+005c \
+ 93: M74,
+ // U+005d ]
+ 94: M79,
+ // U+005e ^
+ 95: [0.31, 0.13444, 0.03194, 0, 0.575],
+ // U+005f _
+ 97: [0, 0.44444, 0, 0, 0.55902],
+ // U+0061 a
+ 98: M75,
+ // U+0062 b
+ 99: M78,
+ // U+0063 c
+ 100: M75,
+ // U+0064 d
+ 101: [0, 0.44444, 0, 0, 0.52708],
+ // U+0065 e
+ 102: [0, 0.69444, 0.10903, 0, 0.35139],
+ // U+0066 f
+ 103: [0.19444, 0.44444, 0.01597, 0, 0.575],
+ // U+0067 g
+ 104: M75,
+ // U+0068 h
+ 105: M76,
+ // U+0069 i
+ 106: [0.19444, 0.69444, 0, 0, 0.35139],
+ // U+006a j
+ 107: [0, 0.69444, 0, 0, 0.60694],
+ // U+006b k
+ 108: M76,
+ // U+006c l
+ 109: [0, 0.44444, 0, 0, 0.95833],
+ // U+006d m
+ 110: M77,
+ // U+006e n
+ 111: M180,
+ // U+006f o
+ 112: [0.19444, 0.44444, 0, 0, 0.63889],
+ // U+0070 p
+ 113: [0.19444, 0.44444, 0, 0, 0.60694],
+ // U+0071 q
+ 114: [0, 0.44444, 0, 0, 0.47361],
+ // U+0072 r
+ 115: [0, 0.44444, 0, 0, 0.45361],
+ // U+0073 s
+ 116: [0, 0.63492, 0, 0, 0.44722],
+ // U+0074 t
+ 117: M77,
+ // U+0075 u
+ 118: [0, 0.44444, 0.01597, 0, 0.60694],
+ // U+0076 v
+ 119: [0, 0.44444, 0.01597, 0, 0.83055],
+ // U+0077 w
+ 120: [0, 0.44444, 0, 0, 0.60694],
+ // U+0078 x
+ 121: [0.19444, 0.44444, 0.01597, 0, 0.60694],
+ // U+0079 y
+ 122: M78,
+ // U+007a z
+ 123: M73,
+ // U+007b {
+ 124: M74,
+ // U+007c |
+ 125: M73,
+ // U+007d }
+ 126: [0.35, 0.34444, 0, 0, 0.575],
+ // U+007e ~
+ 160: M7,
+ // U+00a0
+ 163: [0, 0.69444, 0, 0, 0.86853],
+ // U+00a3 £
+ 168: M79,
+ // U+00a8 ¨
+ 172: [0, 0.44444, 0, 0, 0.76666],
+ // U+00ac ¬
+ 176: M82,
+ // U+00b0 °
+ 177: M80,
+ // U+00b1 ±
+ 184: [0.17014, 0, 0, 0, 0.51111],
+ // U+00b8 ¸
+ 198: [0, 0.68611, 0, 0, 1.04166],
+ // U+00c6 Æ
+ 215: M80,
+ // U+00d7 ×
+ 216: [0.04861, 0.73472, 0, 0, 0.89444],
+ // U+00d8 Ø
+ 223: M228,
+ // U+00df ß
+ 230: [0, 0.44444, 0, 0, 0.83055],
+ // U+00e6 æ
+ 247: M80,
+ // U+00f7 ÷
+ 248: [0.09722, 0.54167, 0, 0, 0.575],
+ // U+00f8 ø
+ 305: M81,
+ // U+0131 ı
+ 338: [0, 0.68611, 0, 0, 1.16944],
+ // U+0152 Œ
+ 339: M97,
+ // U+0153 œ
+ 567: [0.19444, 0.44444, 0, 0, 0.35139],
+ // U+0237 ȷ
+ 710: M79,
+ // U+02c6 ˆ
+ 711: [0, 0.63194, 0, 0, 0.575],
+ // U+02c7 ˇ
+ 713: [0, 0.59611, 0, 0, 0.575],
+ // U+02c9 ˉ
+ 714: M79,
+ // U+02ca ˊ
+ 715: M79,
+ // U+02cb ˋ
+ 728: M79,
+ // U+02d8 ˘
+ 729: M76,
+ // U+02d9 ˙
+ 730: M82,
+ // U+02da ˚
+ 732: M79,
+ // U+02dc ˜
+ 733: M79,
+ // U+02dd ˝
+ 915: M83,
+ // U+0393 Γ
+ 916: M94,
+ // U+0394 Δ
+ 920: M85,
+ // U+0398 Θ
+ 923: M184,
+ // U+039b Λ
+ 926: M186,
+ // U+039e Ξ
+ 928: M71,
+ // U+03a0 Π
+ 931: M84,
+ // U+03a3 Σ
+ 933: M85,
+ // U+03a5 Υ
+ 934: M84,
+ // U+03a6 Φ
+ 936: M85,
+ // U+03a8 Ψ
+ 937: M84,
+ // U+03a9 Ω
+ 8211: [0, 0.44444, 0.03194, 0, 0.575],
+ // U+2013 –
+ 8212: [0, 0.44444, 0.03194, 0, 1.14999],
+ // U+2014 —
+ 8216: M76,
+ // U+2018 ‘
+ 8217: M76,
+ // U+2019 ’
+ 8220: M86,
+ // U+201c “
+ 8221: M86,
+ // U+201d ”
+ 8224: M87,
+ // U+2020 †
+ 8225: M87,
+ // U+2021 ‡
+ 8242: [0, 0.55556, 0, 0, 0.34444],
+ // U+2032 ′
+ 8407: [0, 0.72444, 0.15486, 0, 0.575],
+ // U+20d7 ⃗
+ 8463: M183,
+ // U+210f ℏ
+ 8465: M88,
+ // U+2111 ℑ
+ 8467: [0, 0.69444, 0, 0, 0.47361],
+ // U+2113 ℓ
+ 8472: [0.19444, 0.44444, 0, 0, 0.74027],
+ // U+2118 ℘
+ 8476: M88,
+ // U+211c ℜ
+ 8501: M103,
+ // U+2135 ℵ
+ 8592: M89,
+ // U+2190 ←
+ 8593: M90,
+ // U+2191 ↑
+ 8594: M89,
+ // U+2192 →
+ 8595: M90,
+ // U+2193 ↓
+ 8596: M89,
+ // U+2194 ↔
+ 8597: M73,
+ // U+2195 ↕
+ 8598: M91,
+ // U+2196 ↖
+ 8599: M91,
+ // U+2197 ↗
+ 8600: M91,
+ // U+2198 ↘
+ 8601: M91,
+ // U+2199 ↙
+ 8636: M89,
+ // U+21bc ↼
+ 8637: M89,
+ // U+21bd ↽
+ 8640: M89,
+ // U+21c0 ⇀
+ 8641: M89,
+ // U+21c1 ⇁
+ 8656: M89,
+ // U+21d0 ⇐
+ 8657: M92,
+ // U+21d1 ⇑
+ 8658: M89,
+ // U+21d2 ⇒
+ 8659: M92,
+ // U+21d3 ⇓
+ 8660: M89,
+ // U+21d4 ⇔
+ 8661: [0.25, 0.75, 0, 0, 0.70277],
+ // U+21d5 ⇕
+ 8704: M75,
+ // U+2200 ∀
+ 8706: [0, 0.69444, 0.06389, 0, 0.62847],
+ // U+2202 ∂
+ 8707: M75,
+ // U+2203 ∃
+ 8709: M93,
+ // U+2205 ∅
+ 8711: M94,
+ // U+2207 ∇
+ 8712: M95,
+ // U+2208 ∈
+ 8715: M95,
+ // U+220b ∋
+ 8722: M80,
+ // U+2212 −
+ 8723: M80,
+ // U+2213 ∓
+ 8725: M73,
+ // U+2215 ∕
+ 8726: M73,
+ // U+2216 ∖
+ 8727: M104,
+ // U+2217 ∗
+ 8728: M96,
+ // U+2218 ∘
+ 8729: M96,
+ // U+2219 ∙
+ 8730: [0.18, 0.82, 0, 0, 0.95833],
+ // U+221a √
+ 8733: M97,
+ // U+221d ∝
+ 8734: [0, 0.44444, 0, 0, 1.14999],
+ // U+221e ∞
+ 8736: M25,
+ // U+2220 ∠
+ 8739: M74,
+ // U+2223 ∣
+ 8741: M73,
+ // U+2225 ∥
+ 8743: M98,
+ // U+2227 ∧
+ 8744: M98,
+ // U+2228 ∨
+ 8745: M98,
+ // U+2229 ∩
+ 8746: M98,
+ // U+222a ∪
+ 8747: [0.19444, 0.69444, 0.12778, 0, 0.56875],
+ // U+222b ∫
+ 8764: M99,
+ // U+223c ∼
+ 8768: [0.19444, 0.69444, 0, 0, 0.31944],
+ // U+2240 ≀
+ 8771: M100,
+ // U+2243 ≃
+ 8776: [0.02444, 0.52444, 0, 0, 0.89444],
+ // U+2248 ≈
+ 8781: M100,
+ // U+224d ≍
+ 8801: M100,
+ // U+2261 ≡
+ 8804: M101,
+ // U+2264 ≤
+ 8805: M101,
+ // U+2265 ≥
+ 8810: M102,
+ // U+226a ≪
+ 8811: M102,
+ // U+226b ≫
+ 8826: M69,
+ // U+227a ≺
+ 8827: M69,
+ // U+227b ≻
+ 8834: M69,
+ // U+2282 ⊂
+ 8835: M69,
+ // U+2283 ⊃
+ 8838: M101,
+ // U+2286 ⊆
+ 8839: M101,
+ // U+2287 ⊇
+ 8846: M98,
+ // U+228e ⊎
+ 8849: M101,
+ // U+2291 ⊑
+ 8850: M101,
+ // U+2292 ⊒
+ 8851: M98,
+ // U+2293 ⊓
+ 8852: M98,
+ // U+2294 ⊔
+ 8853: M80,
+ // U+2295 ⊕
+ 8854: M80,
+ // U+2296 ⊖
+ 8855: M80,
+ // U+2297 ⊗
+ 8856: M80,
+ // U+2298 ⊘
+ 8857: M80,
+ // U+2299 ⊙
+ 8866: M103,
+ // U+22a2 ⊢
+ 8867: M103,
+ // U+22a3 ⊣
+ 8868: M70,
+ // U+22a4 ⊤
+ 8869: M70,
+ // U+22a5 ⊥
+ 8900: M96,
+ // U+22c4 ⋄
+ 8901: [-0.02639, 0.47361, 0, 0, 0.31944],
+ // U+22c5 ⋅
+ 8902: M104,
+ // U+22c6 ⋆
+ 8968: M105,
+ // U+2308 ⌈
+ 8969: M105,
+ // U+2309 ⌉
+ 8970: M105,
+ // U+230a ⌊
+ 8971: M105,
+ // U+230b ⌋
+ 8994: M106,
+ // U+2322 ⌢
+ 8995: M106,
+ // U+2323 ⌣
+ 9651: M107,
+ // U+25b3 △
+ 9657: M104,
+ // U+25b9 ▹
+ 9661: M107,
+ // U+25bd ▽
+ 9667: M104,
+ // U+25c3 ◃
+ 9711: M91,
+ // U+25ef ◯
+ 9824: M108,
+ // U+2660 ♠
+ 9825: M108,
+ // U+2661 ♡
+ 9826: M108,
+ // U+2662 ♢
+ 9827: M108,
+ // U+2663 ♣
+ 9837: [0, 0.75, 0, 0, 0.44722],
+ // U+266d ♭
+ 9838: M109,
+ // U+266e ♮
+ 9839: M109,
+ // U+266f ♯
+ 10216: M67,
+ // U+27e8 ⟨
+ 10217: M67,
+ // U+27e9 ⟩
+ 10815: M71,
+ // U+2a3f ⨿
+ 10927: M101,
+ // U+2aaf ⪯
+ 10928: M101,
+ // U+2ab0 ⪰
+ 57376: M179
+ // U+e020
+ },
+ "Main-BoldItalic": {
+ 32: M7,
+ // U+0020
+ 33: [0, 0.69444, 0.11417, 0, 0.38611],
+ // U+0021 !
+ 34: M120,
+ // U+0022 "
+ 35: [0.19444, 0.69444, 0.06833, 0, 0.94444],
+ // U+0023 #
+ 37: [0.05556, 0.75, 0.12861, 0, 0.94444],
+ // U+0025 %
+ 38: [0, 0.69444, 0.08528, 0, 0.88555],
+ // U+0026 &
+ 39: M116,
+ // U+0027 '
+ 40: [0.25, 0.75, 0.15806, 0, 0.47333],
+ // U+0028 (
+ 41: [0.25, 0.75, 0.03306, 0, 0.47333],
+ // U+0029 )
+ 42: [0, 0.75, 0.14333, 0, 0.59111],
+ // U+002a *
+ 43: [0.10333, 0.60333, 0.03306, 0, 0.88555],
+ // U+002b +
+ 44: [0.19444, 0.14722, 0, 0, 0.35555],
+ // U+002c ,
+ 45: [0, 0.44444, 0.02611, 0, 0.41444],
+ // U+002d -
+ 46: [0, 0.14722, 0, 0, 0.35555],
+ // U+002e .
+ 47: [0.25, 0.75, 0.15806, 0, 0.59111],
+ // U+002f /
+ 48: M110,
+ // U+0030 0
+ 49: M110,
+ // U+0031 1
+ 50: M110,
+ // U+0032 2
+ 51: M110,
+ // U+0033 3
+ 52: M111,
+ // U+0034 4
+ 53: M110,
+ // U+0035 5
+ 54: M110,
+ // U+0036 6
+ 55: M111,
+ // U+0037 7
+ 56: M110,
+ // U+0038 8
+ 57: M110,
+ // U+0039 9
+ 58: [0, 0.44444, 0.06695, 0, 0.35555],
+ // U+003a :
+ 59: [0.19444, 0.44444, 0.06695, 0, 0.35555],
+ // U+003b ;
+ 61: [-0.10889, 0.39111, 0.06833, 0, 0.88555],
+ // U+003d =
+ 63: M118,
+ // U+003f ?
+ 64: [0, 0.69444, 0.09208, 0, 0.88555],
+ // U+0040 @
+ 65: [0, 0.68611, 0, 0, 0.86555],
+ // U+0041 A
+ 66: [0, 0.68611, 0.0992, 0, 0.81666],
+ // U+0042 B
+ 67: [0, 0.68611, 0.14208, 0, 0.82666],
+ // U+0043 C
+ 68: [0, 0.68611, 0.09062, 0, 0.87555],
+ // U+0044 D
+ 69: [0, 0.68611, 0.11431, 0, 0.75666],
+ // U+0045 E
+ 70: [0, 0.68611, 0.12903, 0, 0.72722],
+ // U+0046 F
+ 71: [0, 0.68611, 0.07347, 0, 0.89527],
+ // U+0047 G
+ 72: M112,
+ // U+0048 H
+ 73: [0, 0.68611, 0.15681, 0, 0.47166],
+ // U+0049 I
+ 74: [0, 0.68611, 0.145, 0, 0.61055],
+ // U+004a J
+ 75: [0, 0.68611, 0.14208, 0, 0.89499],
+ // U+004b K
+ 76: [0, 0.68611, 0, 0, 0.69777],
+ // U+004c L
+ 77: [0, 0.68611, 0.17208, 0, 1.07277],
+ // U+004d M
+ 78: M112,
+ // U+004e N
+ 79: [0, 0.68611, 0.09062, 0, 0.85499],
+ // U+004f O
+ 80: [0, 0.68611, 0.0992, 0, 0.78721],
+ // U+0050 P
+ 81: [0.19444, 0.68611, 0.09062, 0, 0.85499],
+ // U+0051 Q
+ 82: [0, 0.68611, 0.02559, 0, 0.85944],
+ // U+0052 R
+ 83: [0, 0.68611, 0.11264, 0, 0.64999],
+ // U+0053 S
+ 84: [0, 0.68611, 0.12903, 0, 0.7961],
+ // U+0054 T
+ 85: [0, 0.68611, 0.17208, 0, 0.88083],
+ // U+0055 U
+ 86: [0, 0.68611, 0.18625, 0, 0.86555],
+ // U+0056 V
+ 87: [0, 0.68611, 0.18625, 0, 1.15999],
+ // U+0057 W
+ 88: [0, 0.68611, 0.15681, 0, 0.86555],
+ // U+0058 X
+ 89: [0, 0.68611, 0.19803, 0, 0.86555],
+ // U+0059 Y
+ 90: [0, 0.68611, 0.14208, 0, 0.70888],
+ // U+005a Z
+ 91: [0.25, 0.75, 0.1875, 0, 0.35611],
+ // U+005b [
+ 93: [0.25, 0.75, 0.09972, 0, 0.35611],
+ // U+005d ]
+ 94: M115,
+ // U+005e ^
+ 95: [0.31, 0.13444, 0.09811, 0, 0.59111],
+ // U+005f _
+ 97: [0, 0.44444, 0.09426, 0, 0.59111],
+ // U+0061 a
+ 98: [0, 0.69444, 0.07861, 0, 0.53222],
+ // U+0062 b
+ 99: [0, 0.44444, 0.05222, 0, 0.53222],
+ // U+0063 c
+ 100: [0, 0.69444, 0.10861, 0, 0.59111],
+ // U+0064 d
+ 101: [0, 0.44444, 0.085, 0, 0.53222],
+ // U+0065 e
+ 102: [0.19444, 0.69444, 0.21778, 0, 0.4],
+ // U+0066 f
+ 103: M113,
+ // U+0067 g
+ 104: [0, 0.69444, 0.09426, 0, 0.59111],
+ // U+0068 h
+ 105: [0, 0.69326, 0.11387, 0, 0.35555],
+ // U+0069 i
+ 106: [0.19444, 0.69326, 0.1672, 0, 0.35555],
+ // U+006a j
+ 107: [0, 0.69444, 0.11111, 0, 0.53222],
+ // U+006b k
+ 108: [0, 0.69444, 0.10861, 0, 0.29666],
+ // U+006c l
+ 109: [0, 0.44444, 0.09426, 0, 0.94444],
+ // U+006d m
+ 110: [0, 0.44444, 0.09426, 0, 0.64999],
+ // U+006e n
+ 111: [0, 0.44444, 0.07861, 0, 0.59111],
+ // U+006f o
+ 112: [0.19444, 0.44444, 0.07861, 0, 0.59111],
+ // U+0070 p
+ 113: M113,
+ // U+0071 q
+ 114: [0, 0.44444, 0.11111, 0, 0.50167],
+ // U+0072 r
+ 115: [0, 0.44444, 0.08167, 0, 0.48694],
+ // U+0073 s
+ 116: [0, 0.63492, 0.09639, 0, 0.385],
+ // U+0074 t
+ 117: [0, 0.44444, 0.09426, 0, 0.62055],
+ // U+0075 u
+ 118: [0, 0.44444, 0.11111, 0, 0.53222],
+ // U+0076 v
+ 119: [0, 0.44444, 0.11111, 0, 0.76777],
+ // U+0077 w
+ 120: [0, 0.44444, 0.12583, 0, 0.56055],
+ // U+0078 x
+ 121: [0.19444, 0.44444, 0.105, 0, 0.56166],
+ // U+0079 y
+ 122: [0, 0.44444, 0.13889, 0, 0.49055],
+ // U+007a z
+ 126: [0.35, 0.34444, 0.11472, 0, 0.59111],
+ // U+007e ~
+ 160: M7,
+ // U+00a0
+ 168: [0, 0.69444, 0.11473, 0, 0.59111],
+ // U+00a8 ¨
+ 176: M117,
+ // U+00b0 °
+ 184: [0.17014, 0, 0, 0, 0.53222],
+ // U+00b8 ¸
+ 198: [0, 0.68611, 0.11431, 0, 1.02277],
+ // U+00c6 Æ
+ 216: [0.04861, 0.73472, 0.09062, 0, 0.88555],
+ // U+00d8 Ø
+ 223: [0.19444, 0.69444, 0.09736, 0, 0.665],
+ // U+00df ß
+ 230: M114,
+ // U+00e6 æ
+ 248: [0.09722, 0.54167, 0.09458, 0, 0.59111],
+ // U+00f8 ø
+ 305: [0, 0.44444, 0.09426, 0, 0.35555],
+ // U+0131 ı
+ 338: [0, 0.68611, 0.11431, 0, 1.14054],
+ // U+0152 Œ
+ 339: M114,
+ // U+0153 œ
+ 567: [0.19444, 0.44444, 0.04611, 0, 0.385],
+ // U+0237 ȷ
+ 710: M115,
+ // U+02c6 ˆ
+ 711: [0, 0.63194, 0.08271, 0, 0.59111],
+ // U+02c7 ˇ
+ 713: [0, 0.59444, 0.10444, 0, 0.59111],
+ // U+02c9 ˉ
+ 714: [0, 0.69444, 0.08528, 0, 0.59111],
+ // U+02ca ˊ
+ 715: [0, 0.69444, 0, 0, 0.59111],
+ // U+02cb ˋ
+ 728: [0, 0.69444, 0.10333, 0, 0.59111],
+ // U+02d8 ˘
+ 729: M116,
+ // U+02d9 ˙
+ 730: M117,
+ // U+02da ˚
+ 732: M118,
+ // U+02dc ˜
+ 733: M118,
+ // U+02dd ˝
+ 915: [0, 0.68611, 0.12903, 0, 0.69777],
+ // U+0393 Γ
+ 916: [0, 0.68611, 0, 0, 0.94444],
+ // U+0394 Δ
+ 920: [0, 0.68611, 0.09062, 0, 0.88555],
+ // U+0398 Θ
+ 923: [0, 0.68611, 0, 0, 0.80666],
+ // U+039b Λ
+ 926: [0, 0.68611, 0.15092, 0, 0.76777],
+ // U+039e Ξ
+ 928: M112,
+ // U+03a0 Π
+ 931: [0, 0.68611, 0.11431, 0, 0.82666],
+ // U+03a3 Σ
+ 933: M119,
+ // U+03a5 Υ
+ 934: [0, 0.68611, 0.05632, 0, 0.82666],
+ // U+03a6 Φ
+ 936: M119,
+ // U+03a8 Ψ
+ 937: [0, 0.68611, 0.0992, 0, 0.82666],
+ // U+03a9 Ω
+ 8211: [0, 0.44444, 0.09811, 0, 0.59111],
+ // U+2013 –
+ 8212: [0, 0.44444, 0.09811, 0, 1.18221],
+ // U+2014 —
+ 8216: M116,
+ // U+2018 ‘
+ 8217: M116,
+ // U+2019 ’
+ 8220: [0, 0.69444, 0.16772, 0, 0.62055],
+ // U+201c “
+ 8221: M120
+ // U+201d ”
+ },
+ "Main-Italic": {
+ 32: M7,
+ // U+0020
+ 33: M121,
+ // U+0021 !
+ 34: M132,
+ // U+0022 "
+ 35: [0.19444, 0.69444, 0.06616, 0, 0.81777],
+ // U+0023 #
+ 37: [0.05556, 0.75, 0.13639, 0, 0.81777],
+ // U+0025 %
+ 38: [0, 0.69444, 0.09694, 0, 0.76666],
+ // U+0026 &
+ 39: M121,
+ // U+0027 '
+ 40: [0.25, 0.75, 0.16194, 0, 0.40889],
+ // U+0028 (
+ 41: [0.25, 0.75, 0.03694, 0, 0.40889],
+ // U+0029 )
+ 42: [0, 0.75, 0.14917, 0, 0.51111],
+ // U+002a *
+ 43: [0.05667, 0.56167, 0.03694, 0, 0.76666],
+ // U+002b +
+ 44: [0.19444, 0.10556, 0, 0, 0.30667],
+ // U+002c ,
+ 45: [0, 0.43056, 0.02826, 0, 0.35778],
+ // U+002d -
+ 46: [0, 0.10556, 0, 0, 0.30667],
+ // U+002e .
+ 47: [0.25, 0.75, 0.16194, 0, 0.51111],
+ // U+002f /
+ 48: M122,
+ // U+0030 0
+ 49: M122,
+ // U+0031 1
+ 50: M122,
+ // U+0032 2
+ 51: M122,
+ // U+0033 3
+ 52: M123,
+ // U+0034 4
+ 53: M122,
+ // U+0035 5
+ 54: M122,
+ // U+0036 6
+ 55: M123,
+ // U+0037 7
+ 56: M122,
+ // U+0038 8
+ 57: M122,
+ // U+0039 9
+ 58: [0, 0.43056, 0.0582, 0, 0.30667],
+ // U+003a :
+ 59: [0.19444, 0.43056, 0.0582, 0, 0.30667],
+ // U+003b ;
+ 61: [-0.13313, 0.36687, 0.06616, 0, 0.76666],
+ // U+003d =
+ 63: M129,
+ // U+003f ?
+ 64: [0, 0.69444, 0.09597, 0, 0.76666],
+ // U+0040 @
+ 65: [0, 0.68333, 0, 0, 0.74333],
+ // U+0041 A
+ 66: [0, 0.68333, 0.10257, 0, 0.70389],
+ // U+0042 B
+ 67: [0, 0.68333, 0.14528, 0, 0.71555],
+ // U+0043 C
+ 68: [0, 0.68333, 0.09403, 0, 0.755],
+ // U+0044 D
+ 69: [0, 0.68333, 0.12028, 0, 0.67833],
+ // U+0045 E
+ 70: [0, 0.68333, 0.13305, 0, 0.65277],
+ // U+0046 F
+ 71: [0, 0.68333, 0.08722, 0, 0.77361],
+ // U+0047 G
+ 72: M124,
+ // U+0048 H
+ 73: [0, 0.68333, 0.15806, 0, 0.38555],
+ // U+0049 I
+ 74: [0, 0.68333, 0.14028, 0, 0.525],
+ // U+004a J
+ 75: [0, 0.68333, 0.14528, 0, 0.76888],
+ // U+004b K
+ 76: [0, 0.68333, 0, 0, 0.62722],
+ // U+004c L
+ 77: [0, 0.68333, 0.16389, 0, 0.89666],
+ // U+004d M
+ 78: M124,
+ // U+004e N
+ 79: M130,
+ // U+004f O
+ 80: [0, 0.68333, 0.10257, 0, 0.67833],
+ // U+0050 P
+ 81: [0.19444, 0.68333, 0.09403, 0, 0.76666],
+ // U+0051 Q
+ 82: [0, 0.68333, 0.03868, 0, 0.72944],
+ // U+0052 R
+ 83: [0, 0.68333, 0.11972, 0, 0.56222],
+ // U+0053 S
+ 84: [0, 0.68333, 0.13305, 0, 0.71555],
+ // U+0054 T
+ 85: M124,
+ // U+0055 U
+ 86: [0, 0.68333, 0.18361, 0, 0.74333],
+ // U+0056 V
+ 87: [0, 0.68333, 0.18361, 0, 0.99888],
+ // U+0057 W
+ 88: [0, 0.68333, 0.15806, 0, 0.74333],
+ // U+0058 X
+ 89: [0, 0.68333, 0.19383, 0, 0.74333],
+ // U+0059 Y
+ 90: [0, 0.68333, 0.14528, 0, 0.61333],
+ // U+005a Z
+ 91: [0.25, 0.75, 0.1875, 0, 0.30667],
+ // U+005b [
+ 93: [0.25, 0.75, 0.10528, 0, 0.30667],
+ // U+005d ]
+ 94: M127,
+ // U+005e ^
+ 95: [0.31, 0.12056, 0.09208, 0, 0.51111],
+ // U+005f _
+ 97: [0, 0.43056, 0.07671, 0, 0.51111],
+ // U+0061 a
+ 98: [0, 0.69444, 0.06312, 0, 0.46],
+ // U+0062 b
+ 99: [0, 0.43056, 0.05653, 0, 0.46],
+ // U+0063 c
+ 100: [0, 0.69444, 0.10333, 0, 0.51111],
+ // U+0064 d
+ 101: [0, 0.43056, 0.07514, 0, 0.46],
+ // U+0065 e
+ 102: [0.19444, 0.69444, 0.21194, 0, 0.30667],
+ // U+0066 f
+ 103: M125,
+ // U+0067 g
+ 104: [0, 0.69444, 0.07671, 0, 0.51111],
+ // U+0068 h
+ 105: [0, 0.65536, 0.1019, 0, 0.30667],
+ // U+0069 i
+ 106: [0.19444, 0.65536, 0.14467, 0, 0.30667],
+ // U+006a j
+ 107: [0, 0.69444, 0.10764, 0, 0.46],
+ // U+006b k
+ 108: [0, 0.69444, 0.10333, 0, 0.25555],
+ // U+006c l
+ 109: [0, 0.43056, 0.07671, 0, 0.81777],
+ // U+006d m
+ 110: [0, 0.43056, 0.07671, 0, 0.56222],
+ // U+006e n
+ 111: [0, 0.43056, 0.06312, 0, 0.51111],
+ // U+006f o
+ 112: [0.19444, 0.43056, 0.06312, 0, 0.51111],
+ // U+0070 p
+ 113: M125,
+ // U+0071 q
+ 114: [0, 0.43056, 0.10764, 0, 0.42166],
+ // U+0072 r
+ 115: [0, 0.43056, 0.08208, 0, 0.40889],
+ // U+0073 s
+ 116: [0, 0.61508, 0.09486, 0, 0.33222],
+ // U+0074 t
+ 117: [0, 0.43056, 0.07671, 0, 0.53666],
+ // U+0075 u
+ 118: [0, 0.43056, 0.10764, 0, 0.46],
+ // U+0076 v
+ 119: [0, 0.43056, 0.10764, 0, 0.66444],
+ // U+0077 w
+ 120: [0, 0.43056, 0.12042, 0, 0.46389],
+ // U+0078 x
+ 121: [0.19444, 0.43056, 0.08847, 0, 0.48555],
+ // U+0079 y
+ 122: [0, 0.43056, 0.12292, 0, 0.40889],
+ // U+007a z
+ 126: [0.35, 0.31786, 0.11585, 0, 0.51111],
+ // U+007e ~
+ 160: M7,
+ // U+00a0
+ 168: [0, 0.66786, 0.10474, 0, 0.51111],
+ // U+00a8 ¨
+ 176: M128,
+ // U+00b0 °
+ 184: [0.17014, 0, 0, 0, 0.46],
+ // U+00b8 ¸
+ 198: [0, 0.68333, 0.12028, 0, 0.88277],
+ // U+00c6 Æ
+ 216: [0.04861, 0.73194, 0.09403, 0, 0.76666],
+ // U+00d8 Ø
+ 223: [0.19444, 0.69444, 0.10514, 0, 0.53666],
+ // U+00df ß
+ 230: M126,
+ // U+00e6 æ
+ 248: [0.09722, 0.52778, 0.09194, 0, 0.51111],
+ // U+00f8 ø
+ 338: [0, 0.68333, 0.12028, 0, 0.98499],
+ // U+0152 Œ
+ 339: M126,
+ // U+0153 œ
+ 710: M127,
+ // U+02c6 ˆ
+ 711: [0, 0.62847, 0.08295, 0, 0.51111],
+ // U+02c7 ˇ
+ 713: [0, 0.56167, 0.10333, 0, 0.51111],
+ // U+02c9 ˉ
+ 714: [0, 0.69444, 0.09694, 0, 0.51111],
+ // U+02ca ˊ
+ 715: [0, 0.69444, 0, 0, 0.51111],
+ // U+02cb ˋ
+ 728: [0, 0.69444, 0.10806, 0, 0.51111],
+ // U+02d8 ˘
+ 729: [0, 0.66786, 0.11752, 0, 0.30667],
+ // U+02d9 ˙
+ 730: M128,
+ // U+02da ˚
+ 732: [0, 0.66786, 0.11585, 0, 0.51111],
+ // U+02dc ˜
+ 733: M129,
+ // U+02dd ˝
+ 915: [0, 0.68333, 0.13305, 0, 0.62722],
+ // U+0393 Γ
+ 916: [0, 0.68333, 0, 0, 0.81777],
+ // U+0394 Δ
+ 920: M130,
+ // U+0398 Θ
+ 923: [0, 0.68333, 0, 0, 0.69222],
+ // U+039b Λ
+ 926: [0, 0.68333, 0.15294, 0, 0.66444],
+ // U+039e Ξ
+ 928: M124,
+ // U+03a0 Π
+ 931: [0, 0.68333, 0.12028, 0, 0.71555],
+ // U+03a3 Σ
+ 933: M131,
+ // U+03a5 Υ
+ 934: [0, 0.68333, 0.05986, 0, 0.71555],
+ // U+03a6 Φ
+ 936: M131,
+ // U+03a8 Ψ
+ 937: [0, 0.68333, 0.10257, 0, 0.71555],
+ // U+03a9 Ω
+ 8211: [0, 0.43056, 0.09208, 0, 0.51111],
+ // U+2013 –
+ 8212: [0, 0.43056, 0.09208, 0, 1.02222],
+ // U+2014 —
+ 8216: M121,
+ // U+2018 ‘
+ 8217: M121,
+ // U+2019 ’
+ 8220: [0, 0.69444, 0.1685, 0, 0.51444],
+ // U+201c “
+ 8221: M132,
+ // U+201d ”
+ 8463: M10
+ // U+210f ℏ
+ },
+ "Main-Regular": {
+ 32: M7,
+ // U+0020
+ 33: M133,
+ // U+0021 !
+ 34: M143,
+ // U+0022 "
+ 35: M220,
+ // U+0023 #
+ 36: M161,
+ // U+0024 $
+ 37: M221,
+ // U+0025 %
+ 38: M136,
+ // U+0026 &
+ 39: M133,
+ // U+0027 '
+ 40: M134,
+ // U+0028 (
+ 41: M134,
+ // U+0029 )
+ 42: M222,
+ // U+002a *
+ 43: M149,
+ // U+002b +
+ 44: [0.19444, 0.10556, 0, 0, 0.27778],
+ // U+002c ,
+ 45: [0, 0.43056, 0, 0, 0.33333],
+ // U+002d -
+ 46: [0, 0.10556, 0, 0, 0.27778],
+ // U+002e .
+ 47: M141,
+ // U+002f /
+ 48: M135,
+ // U+0030 0
+ 49: M135,
+ // U+0031 1
+ 50: M135,
+ // U+0032 2
+ 51: M135,
+ // U+0033 3
+ 52: M135,
+ // U+0034 4
+ 53: M135,
+ // U+0035 5
+ 54: M135,
+ // U+0036 6
+ 55: M135,
+ // U+0037 7
+ 56: M135,
+ // U+0038 8
+ 57: M135,
+ // U+0039 9
+ 58: M150,
+ // U+003a :
+ 59: [0.19444, 0.43056, 0, 0, 0.27778],
+ // U+003b ;
+ 60: M43,
+ // U+003c <
+ 61: M27,
+ // U+003d =
+ 62: M43,
+ // U+003e >
+ 63: M226,
+ // U+003f ?
+ 64: M136,
+ // U+0040 @
+ 65: M137,
+ // U+0041 A
+ 66: [0, 0.68333, 0, 0, 0.70834],
+ // U+0042 B
+ 67: M140,
+ // U+0043 C
+ 68: [0, 0.68333, 0, 0, 0.76389],
+ // U+0044 D
+ 69: M139,
+ // U+0045 E
+ 70: [0, 0.68333, 0, 0, 0.65278],
+ // U+0046 F
+ 71: [0, 0.68333, 0, 0, 0.78472],
+ // U+0047 G
+ 72: M137,
+ // U+0048 H
+ 73: [0, 0.68333, 0, 0, 0.36111],
+ // U+0049 I
+ 74: [0, 0.68333, 0, 0, 0.51389],
+ // U+004a J
+ 75: M138,
+ // U+004b K
+ 76: M154,
+ // U+004c L
+ 77: [0, 0.68333, 0, 0, 0.91667],
+ // U+004d M
+ 78: M137,
+ // U+004e N
+ 79: M138,
+ // U+004f O
+ 80: M139,
+ // U+0050 P
+ 81: [0.19444, 0.68333, 0, 0, 0.77778],
+ // U+0051 Q
+ 82: [0, 0.68333, 0, 0, 0.73611],
+ // U+0052 R
+ 83: [0, 0.68333, 0, 0, 0.55556],
+ // U+0053 S
+ 84: M140,
+ // U+0054 T
+ 85: M137,
+ // U+0055 U
+ 86: [0, 0.68333, 0.01389, 0, 0.75],
+ // U+0056 V
+ 87: [0, 0.68333, 0.01389, 0, 1.02778],
+ // U+0057 W
+ 88: M137,
+ // U+0058 X
+ 89: [0, 0.68333, 0.025, 0, 0.75],
+ // U+0059 Y
+ 90: [0, 0.68333, 0, 0, 0.61111],
+ // U+005a Z
+ 91: M142,
+ // U+005b [
+ 92: M141,
+ // U+005c \
+ 93: M142,
+ // U+005d ]
+ 94: M143,
+ // U+005e ^
+ 95: [0.31, 0.12056, 0.02778, 0, 0.5],
+ // U+005f _
+ 97: M146,
+ // U+0061 a
+ 98: M144,
+ // U+0062 b
+ 99: M145,
+ // U+0063 c
+ 100: M144,
+ // U+0064 d
+ 101: M145,
+ // U+0065 e
+ 102: [0, 0.69444, 0.07778, 0, 0.30556],
+ // U+0066 f
+ 103: [0.19444, 0.43056, 0.01389, 0, 0.5],
+ // U+0067 g
+ 104: M144,
+ // U+0068 h
+ 105: M151,
+ // U+0069 i
+ 106: [0.19444, 0.66786, 0, 0, 0.30556],
+ // U+006a j
+ 107: [0, 0.69444, 0, 0, 0.52778],
+ // U+006b k
+ 108: M133,
+ // U+006c l
+ 109: [0, 0.43056, 0, 0, 0.83334],
+ // U+006d m
+ 110: M148,
+ // U+006e n
+ 111: M146,
+ // U+006f o
+ 112: M147,
+ // U+0070 p
+ 113: [0.19444, 0.43056, 0, 0, 0.52778],
+ // U+0071 q
+ 114: [0, 0.43056, 0, 0, 0.39167],
+ // U+0072 r
+ 115: [0, 0.43056, 0, 0, 0.39445],
+ // U+0073 s
+ 116: [0, 0.61508, 0, 0, 0.38889],
+ // U+0074 t
+ 117: M148,
+ // U+0075 u
+ 118: [0, 0.43056, 0.01389, 0, 0.52778],
+ // U+0076 v
+ 119: [0, 0.43056, 0.01389, 0, 0.72222],
+ // U+0077 w
+ 120: [0, 0.43056, 0, 0, 0.52778],
+ // U+0078 x
+ 121: [0.19444, 0.43056, 0.01389, 0, 0.52778],
+ // U+0079 y
+ 122: M145,
+ // U+007a z
+ 123: M141,
+ // U+007b {
+ 124: M142,
+ // U+007c |
+ 125: M141,
+ // U+007d }
+ 126: [0.35, 0.31786, 0, 0, 0.5],
+ // U+007e ~
+ 160: M7,
+ // U+00a0
+ 163: [0, 0.69444, 0, 0, 0.76909],
+ // U+00a3 £
+ 167: M155,
+ // U+00a7 §
+ 168: M153,
+ // U+00a8 ¨
+ 172: [0, 0.43056, 0, 0, 0.66667],
+ // U+00ac ¬
+ 176: M152,
+ // U+00b0 °
+ 177: M149,
+ // U+00b1 ±
+ 182: M160,
+ // U+00b6 ¶
+ 184: M213,
+ // U+00b8 ¸
+ 198: [0, 0.68333, 0, 0, 0.90278],
+ // U+00c6 Æ
+ 215: M149,
+ // U+00d7 ×
+ 216: [0.04861, 0.73194, 0, 0, 0.77778],
+ // U+00d8 Ø
+ 223: M143,
+ // U+00df ß
+ 230: [0, 0.43056, 0, 0, 0.72222],
+ // U+00e6 æ
+ 247: M149,
+ // U+00f7 ÷
+ 248: [0.09722, 0.52778, 0, 0, 0.5],
+ // U+00f8 ø
+ 305: M150,
+ // U+0131 ı
+ 338: [0, 0.68333, 0, 0, 1.01389],
+ // U+0152 Œ
+ 339: M165,
+ // U+0153 œ
+ 567: [0.19444, 0.43056, 0, 0, 0.30556],
+ // U+0237 ȷ
+ 710: M143,
+ // U+02c6 ˆ
+ 711: [0, 0.62847, 0, 0, 0.5],
+ // U+02c7 ˇ
+ 713: [0, 0.56778, 0, 0, 0.5],
+ // U+02c9 ˉ
+ 714: M143,
+ // U+02ca ˊ
+ 715: M143,
+ // U+02cb ˋ
+ 728: M143,
+ // U+02d8 ˘
+ 729: M151,
+ // U+02d9 ˙
+ 730: M152,
+ // U+02da ˚
+ 732: M153,
+ // U+02dc ˜
+ 733: M143,
+ // U+02dd ˝
+ 915: M154,
+ // U+0393 Γ
+ 916: M162,
+ // U+0394 Δ
+ 920: M138,
+ // U+0398 Θ
+ 923: [0, 0.68333, 0, 0, 0.69445],
+ // U+039b Λ
+ 926: [0, 0.68333, 0, 0, 0.66667],
+ // U+039e Ξ
+ 928: M137,
+ // U+03a0 Π
+ 931: M140,
+ // U+03a3 Σ
+ 933: M138,
+ // U+03a5 Υ
+ 934: M140,
+ // U+03a6 Φ
+ 936: M138,
+ // U+03a8 Ψ
+ 937: M140,
+ // U+03a9 Ω
+ 8211: [0, 0.43056, 0.02778, 0, 0.5],
+ // U+2013 –
+ 8212: [0, 0.43056, 0.02778, 0, 1],
+ // U+2014 —
+ 8216: M133,
+ // U+2018 ‘
+ 8217: M133,
+ // U+2019 ’
+ 8220: M143,
+ // U+201c “
+ 8221: M143,
+ // U+201d ”
+ 8224: M155,
+ // U+2020 †
+ 8225: M155,
+ // U+2021 ‡
+ 8230: [0, 0.12, 0, 0, 1.172],
+ // U+2026 …
+ 8242: [0, 0.55556, 0, 0, 0.275],
+ // U+2032 ′
+ 8407: [0, 0.71444, 0.15382, 0, 0.5],
+ // U+20d7 ⃗
+ 8463: M10,
+ // U+210f ℏ
+ 8465: M156,
+ // U+2111 ℑ
+ 8467: [0, 0.69444, 0, 0.11111, 0.41667],
+ // U+2113 ℓ
+ 8472: [0.19444, 0.43056, 0, 0.11111, 0.63646],
+ // U+2118 ℘
+ 8476: M156,
+ // U+211c ℜ
+ 8501: M170,
+ // U+2135 ℵ
+ 8592: M12,
+ // U+2190 ←
+ 8593: M157,
+ // U+2191 ↑
+ 8594: M12,
+ // U+2192 →
+ 8595: M157,
+ // U+2193 ↓
+ 8596: M12,
+ // U+2194 ↔
+ 8597: M141,
+ // U+2195 ↕
+ 8598: M158,
+ // U+2196 ↖
+ 8599: M158,
+ // U+2197 ↗
+ 8600: M158,
+ // U+2198 ↘
+ 8601: M158,
+ // U+2199 ↙
+ 8614: [0.011, 0.511, 0, 0, 1],
+ // U+21a6 ↦
+ 8617: M159,
+ // U+21a9 ↩
+ 8618: M159,
+ // U+21aa ↪
+ 8636: M12,
+ // U+21bc ↼
+ 8637: M12,
+ // U+21bd ↽
+ 8640: M12,
+ // U+21c0 ⇀
+ 8641: M12,
+ // U+21c1 ⇁
+ 8652: [0.011, 0.671, 0, 0, 1],
+ // U+21cc ⇌
+ 8656: M12,
+ // U+21d0 ⇐
+ 8657: M160,
+ // U+21d1 ⇑
+ 8658: M12,
+ // U+21d2 ⇒
+ 8659: M160,
+ // U+21d3 ⇓
+ 8660: M12,
+ // U+21d4 ⇔
+ 8661: [0.25, 0.75, 0, 0, 0.61111],
+ // U+21d5 ⇕
+ 8704: M144,
+ // U+2200 ∀
+ 8706: [0, 0.69444, 0.05556, 0.08334, 0.5309],
+ // U+2202 ∂
+ 8707: M144,
+ // U+2203 ∃
+ 8709: M161,
+ // U+2205 ∅
+ 8711: M162,
+ // U+2207 ∇
+ 8712: M163,
+ // U+2208 ∈
+ 8715: M163,
+ // U+220b ∋
+ 8722: M149,
+ // U+2212 −
+ 8723: M149,
+ // U+2213 ∓
+ 8725: M141,
+ // U+2215 ∕
+ 8726: M141,
+ // U+2216 ∖
+ 8727: M171,
+ // U+2217 ∗
+ 8728: M164,
+ // U+2218 ∘
+ 8729: M164,
+ // U+2219 ∙
+ 8730: [0.2, 0.8, 0, 0, 0.83334],
+ // U+221a √
+ 8733: M165,
+ // U+221d ∝
+ 8734: M17,
+ // U+221e ∞
+ 8736: M25,
+ // U+2220 ∠
+ 8739: M142,
+ // U+2223 ∣
+ 8741: M141,
+ // U+2225 ∥
+ 8743: M166,
+ // U+2227 ∧
+ 8744: M166,
+ // U+2228 ∨
+ 8745: M166,
+ // U+2229 ∩
+ 8746: M166,
+ // U+222a ∪
+ 8747: [0.19444, 0.69444, 0.11111, 0, 0.41667],
+ // U+222b ∫
+ 8764: M27,
+ // U+223c ∼
+ 8768: [0.19444, 0.69444, 0, 0, 0.27778],
+ // U+2240 ≀
+ 8771: M167,
+ // U+2243 ≃
+ 8773: [-0.022, 0.589, 0, 0, 1],
+ // U+2245 ≅
+ 8776: M168,
+ // U+2248 ≈
+ 8781: M167,
+ // U+224d ≍
+ 8784: [-0.133, 0.67, 0, 0, 0.778],
+ // U+2250 ≐
+ 8801: M167,
+ // U+2261 ≡
+ 8804: M37,
+ // U+2264 ≤
+ 8805: M37,
+ // U+2265 ≥
+ 8810: M169,
+ // U+226a ≪
+ 8811: M169,
+ // U+226b ≫
+ 8826: M43,
+ // U+227a ≺
+ 8827: M43,
+ // U+227b ≻
+ 8834: M43,
+ // U+2282 ⊂
+ 8835: M43,
+ // U+2283 ⊃
+ 8838: M37,
+ // U+2286 ⊆
+ 8839: M37,
+ // U+2287 ⊇
+ 8846: M166,
+ // U+228e ⊎
+ 8849: M37,
+ // U+2291 ⊑
+ 8850: M37,
+ // U+2292 ⊒
+ 8851: M166,
+ // U+2293 ⊓
+ 8852: M166,
+ // U+2294 ⊔
+ 8853: M149,
+ // U+2295 ⊕
+ 8854: M149,
+ // U+2296 ⊖
+ 8855: M149,
+ // U+2297 ⊗
+ 8856: M149,
+ // U+2298 ⊘
+ 8857: M149,
+ // U+2299 ⊙
+ 8866: M170,
+ // U+22a2 ⊢
+ 8867: M170,
+ // U+22a3 ⊣
+ 8868: M136,
+ // U+22a4 ⊤
+ 8869: M136,
+ // U+22a5 ⊥
+ 8872: [0.249, 0.75, 0, 0, 0.867],
+ // U+22a8 ⊨
+ 8900: M164,
+ // U+22c4 ⋄
+ 8901: [-0.05555, 0.44445, 0, 0, 0.27778],
+ // U+22c5 ⋅
+ 8902: M171,
+ // U+22c6 ⋆
+ 8904: [5e-3, 0.505, 0, 0, 0.9],
+ // U+22c8 ⋈
+ 8942: [0.03, 0.9, 0, 0, 0.278],
+ // U+22ee ⋮
+ 8943: [-0.19, 0.31, 0, 0, 1.172],
+ // U+22ef ⋯
+ 8945: [-0.1, 0.82, 0, 0, 1.282],
+ // U+22f1 ⋱
+ 8968: M172,
+ // U+2308 ⌈
+ 8969: M172,
+ // U+2309 ⌉
+ 8970: M172,
+ // U+230a ⌊
+ 8971: M172,
+ // U+230b ⌋
+ 8994: M173,
+ // U+2322 ⌢
+ 8995: M173,
+ // U+2323 ⌣
+ 9136: M174,
+ // U+23b0 ⎰
+ 9137: M174,
+ // U+23b1 ⎱
+ 9651: M175,
+ // U+25b3 △
+ 9657: M171,
+ // U+25b9 ▹
+ 9661: M175,
+ // U+25bd ▽
+ 9667: M171,
+ // U+25c3 ◃
+ 9711: M158,
+ // U+25ef ◯
+ 9824: M176,
+ // U+2660 ♠
+ 9825: M176,
+ // U+2661 ♡
+ 9826: M176,
+ // U+2662 ♢
+ 9827: M176,
+ // U+2663 ♣
+ 9837: [0, 0.75, 0, 0, 0.38889],
+ // U+266d ♭
+ 9838: M177,
+ // U+266e ♮
+ 9839: M177,
+ // U+266f ♯
+ 10216: M134,
+ // U+27e8 ⟨
+ 10217: M134,
+ // U+27e9 ⟩
+ 10222: M174,
+ // U+27ee ⟮
+ 10223: M174,
+ // U+27ef ⟯
+ 10229: [0.011, 0.511, 0, 0, 1.609],
+ // U+27f5 ⟵
+ 10230: M178,
+ // U+27f6 ⟶
+ 10231: [0.011, 0.511, 0, 0, 1.859],
+ // U+27f7 ⟷
+ 10232: [0.024, 0.525, 0, 0, 1.609],
+ // U+27f8 ⟸
+ 10233: [0.024, 0.525, 0, 0, 1.638],
+ // U+27f9 ⟹
+ 10234: [0.024, 0.525, 0, 0, 1.858],
+ // U+27fa ⟺
+ 10236: M178,
+ // U+27fc ⟼
+ 10815: M137,
+ // U+2a3f ⨿
+ 10927: M37,
+ // U+2aaf ⪯
+ 10928: M37,
+ // U+2ab0 ⪰
+ 57376: M179
+ // U+e020
+ },
+ "Math-BoldItalic": {
+ 32: M7,
+ // U+0020
+ 48: M180,
+ // U+0030 0
+ 49: M180,
+ // U+0031 1
+ 50: M180,
+ // U+0032 2
+ 51: M181,
+ // U+0033 3
+ 52: M181,
+ // U+0034 4
+ 53: M181,
+ // U+0035 5
+ 54: M68,
+ // U+0036 6
+ 55: M181,
+ // U+0037 7
+ 56: M68,
+ // U+0038 8
+ 57: M181,
+ // U+0039 9
+ 65: M72,
+ // U+0041 A
+ 66: [0, 0.68611, 0.04835, 0, 0.8664],
+ // U+0042 B
+ 67: [0, 0.68611, 0.06979, 0, 0.81694],
+ // U+0043 C
+ 68: [0, 0.68611, 0.03194, 0, 0.93812],
+ // U+0044 D
+ 69: [0, 0.68611, 0.05451, 0, 0.81007],
+ // U+0045 E
+ 70: [0, 0.68611, 0.15972, 0, 0.68889],
+ // U+0046 F
+ 71: [0, 0.68611, 0, 0, 0.88673],
+ // U+0047 G
+ 72: M185,
+ // U+0048 H
+ 73: [0, 0.68611, 0.07778, 0, 0.51111],
+ // U+0049 I
+ 74: [0, 0.68611, 0.10069, 0, 0.63125],
+ // U+004a J
+ 75: [0, 0.68611, 0.06979, 0, 0.97118],
+ // U+004b K
+ 76: M182,
+ // U+004c L
+ 77: [0, 0.68611, 0.11424, 0, 1.14201],
+ // U+004d M
+ 78: [0, 0.68611, 0.11424, 0, 0.95034],
+ // U+004e N
+ 79: [0, 0.68611, 0.03194, 0, 0.83666],
+ // U+004f O
+ 80: [0, 0.68611, 0.15972, 0, 0.72309],
+ // U+0050 P
+ 81: [0.19444, 0.68611, 0, 0, 0.86861],
+ // U+0051 Q
+ 82: [0, 0.68611, 421e-5, 0, 0.87235],
+ // U+0052 R
+ 83: [0, 0.68611, 0.05382, 0, 0.69271],
+ // U+0053 S
+ 84: [0, 0.68611, 0.15972, 0, 0.63663],
+ // U+0054 T
+ 85: [0, 0.68611, 0.11424, 0, 0.80027],
+ // U+0055 U
+ 86: [0, 0.68611, 0.25555, 0, 0.67778],
+ // U+0056 V
+ 87: [0, 0.68611, 0.15972, 0, 1.09305],
+ // U+0057 W
+ 88: [0, 0.68611, 0.07778, 0, 0.94722],
+ // U+0058 X
+ 89: [0, 0.68611, 0.25555, 0, 0.67458],
+ // U+0059 Y
+ 90: [0, 0.68611, 0.06979, 0, 0.77257],
+ // U+005a Z
+ 97: [0, 0.44444, 0, 0, 0.63287],
+ // U+0061 a
+ 98: [0, 0.69444, 0, 0, 0.52083],
+ // U+0062 b
+ 99: [0, 0.44444, 0, 0, 0.51342],
+ // U+0063 c
+ 100: [0, 0.69444, 0, 0, 0.60972],
+ // U+0064 d
+ 101: [0, 0.44444, 0, 0, 0.55361],
+ // U+0065 e
+ 102: [0.19444, 0.69444, 0.11042, 0, 0.56806],
+ // U+0066 f
+ 103: [0.19444, 0.44444, 0.03704, 0, 0.5449],
+ // U+0067 g
+ 104: M183,
+ // U+0068 h
+ 105: [0, 0.69326, 0, 0, 0.4048],
+ // U+0069 i
+ 106: [0.19444, 0.69326, 0.0622, 0, 0.47083],
+ // U+006a j
+ 107: [0, 0.69444, 0.01852, 0, 0.6037],
+ // U+006b k
+ 108: [0, 0.69444, 88e-4, 0, 0.34815],
+ // U+006c l
+ 109: [0, 0.44444, 0, 0, 1.0324],
+ // U+006d m
+ 110: [0, 0.44444, 0, 0, 0.71296],
+ // U+006e n
+ 111: M187,
+ // U+006f o
+ 112: [0.19444, 0.44444, 0, 0, 0.60092],
+ // U+0070 p
+ 113: [0.19444, 0.44444, 0.03704, 0, 0.54213],
+ // U+0071 q
+ 114: [0, 0.44444, 0.03194, 0, 0.5287],
+ // U+0072 r
+ 115: [0, 0.44444, 0, 0, 0.53125],
+ // U+0073 s
+ 116: [0, 0.63492, 0, 0, 0.41528],
+ // U+0074 t
+ 117: [0, 0.44444, 0, 0, 0.68102],
+ // U+0075 u
+ 118: [0, 0.44444, 0.03704, 0, 0.56666],
+ // U+0076 v
+ 119: [0, 0.44444, 0.02778, 0, 0.83148],
+ // U+0077 w
+ 120: [0, 0.44444, 0, 0, 0.65903],
+ // U+0078 x
+ 121: [0.19444, 0.44444, 0.03704, 0, 0.59028],
+ // U+0079 y
+ 122: [0, 0.44444, 0.04213, 0, 0.55509],
+ // U+007a z
+ 160: M7,
+ // U+00a0
+ 915: [0, 0.68611, 0.15972, 0, 0.65694],
+ // U+0393 Γ
+ 916: M94,
+ // U+0394 Δ
+ 920: [0, 0.68611, 0.03194, 0, 0.86722],
+ // U+0398 Θ
+ 923: M184,
+ // U+039b Λ
+ 926: [0, 0.68611, 0.07458, 0, 0.84125],
+ // U+039e Ξ
+ 928: M185,
+ // U+03a0 Π
+ 931: [0, 0.68611, 0.05451, 0, 0.88507],
+ // U+03a3 Σ
+ 933: [0, 0.68611, 0.15972, 0, 0.67083],
+ // U+03a5 Υ
+ 934: M186,
+ // U+03a6 Φ
+ 936: [0, 0.68611, 0.11653, 0, 0.71402],
+ // U+03a8 Ψ
+ 937: [0, 0.68611, 0.04835, 0, 0.8789],
+ // U+03a9 Ω
+ 945: [0, 0.44444, 0, 0, 0.76064],
+ // U+03b1 α
+ 946: [0.19444, 0.69444, 0.03403, 0, 0.65972],
+ // U+03b2 β
+ 947: [0.19444, 0.44444, 0.06389, 0, 0.59003],
+ // U+03b3 γ
+ 948: [0, 0.69444, 0.03819, 0, 0.52222],
+ // U+03b4 δ
+ 949: [0, 0.44444, 0, 0, 0.52882],
+ // U+03b5 ε
+ 950: [0.19444, 0.69444, 0.06215, 0, 0.50833],
+ // U+03b6 ζ
+ 951: [0.19444, 0.44444, 0.03704, 0, 0.6],
+ // U+03b7 η
+ 952: [0, 0.69444, 0.03194, 0, 0.5618],
+ // U+03b8 θ
+ 953: [0, 0.44444, 0, 0, 0.41204],
+ // U+03b9 ι
+ 954: [0, 0.44444, 0, 0, 0.66759],
+ // U+03ba κ
+ 955: [0, 0.69444, 0, 0, 0.67083],
+ // U+03bb λ
+ 956: [0.19444, 0.44444, 0, 0, 0.70787],
+ // U+03bc μ
+ 957: [0, 0.44444, 0.06898, 0, 0.57685],
+ // U+03bd ν
+ 958: [0.19444, 0.69444, 0.03021, 0, 0.50833],
+ // U+03be ξ
+ 959: M187,
+ // U+03bf ο
+ 960: [0, 0.44444, 0.03704, 0, 0.68241],
+ // U+03c0 π
+ 961: M188,
+ // U+03c1 ρ
+ 962: [0.09722, 0.44444, 0.07917, 0, 0.42361],
+ // U+03c2 ς
+ 963: [0, 0.44444, 0.03704, 0, 0.68588],
+ // U+03c3 σ
+ 964: [0, 0.44444, 0.13472, 0, 0.52083],
+ // U+03c4 τ
+ 965: [0, 0.44444, 0.03704, 0, 0.63055],
+ // U+03c5 υ
+ 966: [0.19444, 0.44444, 0, 0, 0.74722],
+ // U+03c6 φ
+ 967: [0.19444, 0.44444, 0, 0, 0.71805],
+ // U+03c7 χ
+ 968: [0.19444, 0.69444, 0.03704, 0, 0.75833],
+ // U+03c8 ψ
+ 969: [0, 0.44444, 0.03704, 0, 0.71782],
+ // U+03c9 ω
+ 977: [0, 0.69444, 0, 0, 0.69155],
+ // U+03d1 ϑ
+ 981: [0.19444, 0.69444, 0, 0, 0.7125],
+ // U+03d5 ϕ
+ 982: [0, 0.44444, 0.03194, 0, 0.975],
+ // U+03d6 ϖ
+ 1009: M188,
+ // U+03f1 ϱ
+ 1013: [0, 0.44444, 0, 0, 0.48333],
+ // U+03f5 ϵ
+ 57649: [0, 0.44444, 0, 0, 0.39352],
+ // U+e131
+ 57911: [0.19444, 0.44444, 0, 0, 0.43889]
+ // U+e237
+ },
+ "Math-Italic": {
+ 32: M7,
+ // U+0020
+ 48: M146,
+ // U+0030 0
+ 49: M146,
+ // U+0031 1
+ 50: M146,
+ // U+0032 2
+ 51: M189,
+ // U+0033 3
+ 52: M189,
+ // U+0034 4
+ 53: M189,
+ // U+0035 5
+ 54: M135,
+ // U+0036 6
+ 55: M189,
+ // U+0037 7
+ 56: M135,
+ // U+0038 8
+ 57: M189,
+ // U+0039 9
+ 65: [0, 0.68333, 0, 0.13889, 0.75],
+ // U+0041 A
+ 66: [0, 0.68333, 0.05017, 0.08334, 0.75851],
+ // U+0042 B
+ 67: [0, 0.68333, 0.07153, 0.08334, 0.71472],
+ // U+0043 C
+ 68: [0, 0.68333, 0.02778, 0.05556, 0.82792],
+ // U+0044 D
+ 69: [0, 0.68333, 0.05764, 0.08334, 0.7382],
+ // U+0045 E
+ 70: [0, 0.68333, 0.13889, 0.08334, 0.64306],
+ // U+0046 F
+ 71: [0, 0.68333, 0, 0.08334, 0.78625],
+ // U+0047 G
+ 72: M191,
+ // U+0048 H
+ 73: [0, 0.68333, 0.07847, 0.11111, 0.43958],
+ // U+0049 I
+ 74: [0, 0.68333, 0.09618, 0.16667, 0.55451],
+ // U+004a J
+ 75: [0, 0.68333, 0.07153, 0.05556, 0.84931],
+ // U+004b K
+ 76: [0, 0.68333, 0, 0.02778, 0.68056],
+ // U+004c L
+ 77: [0, 0.68333, 0.10903, 0.08334, 0.97014],
+ // U+004d M
+ 78: [0, 0.68333, 0.10903, 0.08334, 0.80347],
+ // U+004e N
+ 79: M190,
+ // U+004f O
+ 80: [0, 0.68333, 0.13889, 0.08334, 0.64201],
+ // U+0050 P
+ 81: [0.19444, 0.68333, 0, 0.08334, 0.79056],
+ // U+0051 Q
+ 82: [0, 0.68333, 773e-5, 0.08334, 0.75929],
+ // U+0052 R
+ 83: [0, 0.68333, 0.05764, 0.08334, 0.6132],
+ // U+0053 S
+ 84: [0, 0.68333, 0.13889, 0.08334, 0.58438],
+ // U+0054 T
+ 85: [0, 0.68333, 0.10903, 0.02778, 0.68278],
+ // U+0055 U
+ 86: [0, 0.68333, 0.22222, 0, 0.58333],
+ // U+0056 V
+ 87: [0, 0.68333, 0.13889, 0, 0.94445],
+ // U+0057 W
+ 88: [0, 0.68333, 0.07847, 0.08334, 0.82847],
+ // U+0058 X
+ 89: [0, 0.68333, 0.22222, 0, 0.58056],
+ // U+0059 Y
+ 90: [0, 0.68333, 0.07153, 0.08334, 0.68264],
+ // U+005a Z
+ 97: [0, 0.43056, 0, 0, 0.52859],
+ // U+0061 a
+ 98: [0, 0.69444, 0, 0, 0.42917],
+ // U+0062 b
+ 99: [0, 0.43056, 0, 0.05556, 0.43276],
+ // U+0063 c
+ 100: [0, 0.69444, 0, 0.16667, 0.52049],
+ // U+0064 d
+ 101: [0, 0.43056, 0, 0.05556, 0.46563],
+ // U+0065 e
+ 102: [0.19444, 0.69444, 0.10764, 0.16667, 0.48959],
+ // U+0066 f
+ 103: [0.19444, 0.43056, 0.03588, 0.02778, 0.47697],
+ // U+0067 g
+ 104: [0, 0.69444, 0, 0, 0.57616],
+ // U+0068 h
+ 105: [0, 0.65952, 0, 0, 0.34451],
+ // U+0069 i
+ 106: [0.19444, 0.65952, 0.05724, 0, 0.41181],
+ // U+006a j
+ 107: [0, 0.69444, 0.03148, 0, 0.5206],
+ // U+006b k
+ 108: [0, 0.69444, 0.01968, 0.08334, 0.29838],
+ // U+006c l
+ 109: [0, 0.43056, 0, 0, 0.87801],
+ // U+006d m
+ 110: [0, 0.43056, 0, 0, 0.60023],
+ // U+006e n
+ 111: M192,
+ // U+006f o
+ 112: [0.19444, 0.43056, 0, 0.08334, 0.50313],
+ // U+0070 p
+ 113: [0.19444, 0.43056, 0.03588, 0.08334, 0.44641],
+ // U+0071 q
+ 114: [0, 0.43056, 0.02778, 0.05556, 0.45116],
+ // U+0072 r
+ 115: [0, 0.43056, 0, 0.05556, 0.46875],
+ // U+0073 s
+ 116: [0, 0.61508, 0, 0.08334, 0.36111],
+ // U+0074 t
+ 117: [0, 0.43056, 0, 0.02778, 0.57246],
+ // U+0075 u
+ 118: [0, 0.43056, 0.03588, 0.02778, 0.48472],
+ // U+0076 v
+ 119: [0, 0.43056, 0.02691, 0.08334, 0.71592],
+ // U+0077 w
+ 120: [0, 0.43056, 0, 0.02778, 0.57153],
+ // U+0078 x
+ 121: [0.19444, 0.43056, 0.03588, 0.05556, 0.49028],
+ // U+0079 y
+ 122: [0, 0.43056, 0.04398, 0.05556, 0.46505],
+ // U+007a z
+ 160: M7,
+ // U+00a0
+ 915: [0, 0.68333, 0.13889, 0.08334, 0.61528],
+ // U+0393 Γ
+ 916: [0, 0.68333, 0, 0.16667, 0.83334],
+ // U+0394 Δ
+ 920: M190,
+ // U+0398 Θ
+ 923: [0, 0.68333, 0, 0.16667, 0.69445],
+ // U+039b Λ
+ 926: [0, 0.68333, 0.07569, 0.08334, 0.74236],
+ // U+039e Ξ
+ 928: M191,
+ // U+03a0 Π
+ 931: [0, 0.68333, 0.05764, 0.08334, 0.77986],
+ // U+03a3 Σ
+ 933: [0, 0.68333, 0.13889, 0.05556, 0.58333],
+ // U+03a5 Υ
+ 934: [0, 0.68333, 0, 0.08334, 0.66667],
+ // U+03a6 Φ
+ 936: [0, 0.68333, 0.11, 0.05556, 0.61222],
+ // U+03a8 Ψ
+ 937: [0, 0.68333, 0.05017, 0.08334, 0.7724],
+ // U+03a9 Ω
+ 945: [0, 0.43056, 37e-4, 0.02778, 0.6397],
+ // U+03b1 α
+ 946: [0.19444, 0.69444, 0.05278, 0.08334, 0.56563],
+ // U+03b2 β
+ 947: [0.19444, 0.43056, 0.05556, 0, 0.51773],
+ // U+03b3 γ
+ 948: [0, 0.69444, 0.03785, 0.05556, 0.44444],
+ // U+03b4 δ
+ 949: [0, 0.43056, 0, 0.08334, 0.46632],
+ // U+03b5 ε
+ 950: [0.19444, 0.69444, 0.07378, 0.08334, 0.4375],
+ // U+03b6 ζ
+ 951: [0.19444, 0.43056, 0.03588, 0.05556, 0.49653],
+ // U+03b7 η
+ 952: [0, 0.69444, 0.02778, 0.08334, 0.46944],
+ // U+03b8 θ
+ 953: [0, 0.43056, 0, 0.05556, 0.35394],
+ // U+03b9 ι
+ 954: [0, 0.43056, 0, 0, 0.57616],
+ // U+03ba κ
+ 955: [0, 0.69444, 0, 0, 0.58334],
+ // U+03bb λ
+ 956: [0.19444, 0.43056, 0, 0.02778, 0.60255],
+ // U+03bc μ
+ 957: [0, 0.43056, 0.06366, 0.02778, 0.49398],
+ // U+03bd ν
+ 958: [0.19444, 0.69444, 0.04601, 0.11111, 0.4375],
+ // U+03be ξ
+ 959: M192,
+ // U+03bf ο
+ 960: [0, 0.43056, 0.03588, 0, 0.57003],
+ // U+03c0 π
+ 961: M193,
+ // U+03c1 ρ
+ 962: [0.09722, 0.43056, 0.07986, 0.08334, 0.36285],
+ // U+03c2 ς
+ 963: [0, 0.43056, 0.03588, 0, 0.57141],
+ // U+03c3 σ
+ 964: [0, 0.43056, 0.1132, 0.02778, 0.43715],
+ // U+03c4 τ
+ 965: [0, 0.43056, 0.03588, 0.02778, 0.54028],
+ // U+03c5 υ
+ 966: [0.19444, 0.43056, 0, 0.08334, 0.65417],
+ // U+03c6 φ
+ 967: [0.19444, 0.43056, 0, 0.05556, 0.62569],
+ // U+03c7 χ
+ 968: [0.19444, 0.69444, 0.03588, 0.11111, 0.65139],
+ // U+03c8 ψ
+ 969: [0, 0.43056, 0.03588, 0, 0.62245],
+ // U+03c9 ω
+ 977: [0, 0.69444, 0, 0.08334, 0.59144],
+ // U+03d1 ϑ
+ 981: [0.19444, 0.69444, 0, 0.08334, 0.59583],
+ // U+03d5 ϕ
+ 982: [0, 0.43056, 0.02778, 0, 0.82813],
+ // U+03d6 ϖ
+ 1009: M193,
+ // U+03f1 ϱ
+ 1013: [0, 0.43056, 0, 0.05556, 0.4059],
+ // U+03f5 ϵ
+ 57649: [0, 0.43056, 0, 0.02778, 0.32246],
+ // U+e131
+ 57911: [0.19444, 0.43056, 0, 0.08334, 0.38403]
+ // U+e237
+ },
+ "SansSerif-Bold": {
+ 32: M7,
+ // U+0020
+ 33: [0, 0.69444, 0, 0, 0.36667],
+ // U+0021 !
+ 34: M210,
+ // U+0022 "
+ 35: [0.19444, 0.69444, 0, 0, 0.91667],
+ // U+0023 #
+ 36: [0.05556, 0.75, 0, 0, 0.55],
+ // U+0024 $
+ 37: [0.05556, 0.75, 0, 0, 1.02912],
+ // U+0025 %
+ 38: [0, 0.69444, 0, 0, 0.83056],
+ // U+0026 &
+ 39: M206,
+ // U+0027 '
+ 40: M194,
+ // U+0028 (
+ 41: M194,
+ // U+0029 )
+ 42: [0, 0.75, 0, 0, 0.55],
+ // U+002a *
+ 43: [0.11667, 0.61667, 0, 0, 0.85556],
+ // U+002b +
+ 44: [0.10556, 0.13056, 0, 0, 0.30556],
+ // U+002c ,
+ 45: [0, 0.45833, 0, 0, 0.36667],
+ // U+002d -
+ 46: [0, 0.13056, 0, 0, 0.30556],
+ // U+002e .
+ 47: [0.25, 0.75, 0, 0, 0.55],
+ // U+002f /
+ 48: M195,
+ // U+0030 0
+ 49: M195,
+ // U+0031 1
+ 50: M195,
+ // U+0032 2
+ 51: M195,
+ // U+0033 3
+ 52: M195,
+ // U+0034 4
+ 53: M195,
+ // U+0035 5
+ 54: M195,
+ // U+0036 6
+ 55: M195,
+ // U+0037 7
+ 56: M195,
+ // U+0038 8
+ 57: M195,
+ // U+0039 9
+ 58: [0, 0.45833, 0, 0, 0.30556],
+ // U+003a :
+ 59: [0.10556, 0.45833, 0, 0, 0.30556],
+ // U+003b ;
+ 61: [-0.09375, 0.40625, 0, 0, 0.85556],
+ // U+003d =
+ 63: M198,
+ // U+003f ?
+ 64: M196,
+ // U+0040 @
+ 65: M196,
+ // U+0041 A
+ 66: M196,
+ // U+0042 B
+ 67: M199,
+ // U+0043 C
+ 68: M197,
+ // U+0044 D
+ 69: [0, 0.69444, 0, 0, 0.64167],
+ // U+0045 E
+ 70: M170,
+ // U+0046 F
+ 71: M196,
+ // U+0047 G
+ 72: M197,
+ // U+0048 H
+ 73: [0, 0.69444, 0, 0, 0.33056],
+ // U+0049 I
+ 74: M198,
+ // U+004a J
+ 75: M200,
+ // U+004b K
+ 76: M207,
+ // U+004c L
+ 77: [0, 0.69444, 0, 0, 0.97778],
+ // U+004d M
+ 78: M197,
+ // U+004e N
+ 79: M197,
+ // U+004f O
+ 80: M199,
+ // U+0050 P
+ 81: [0.10556, 0.69444, 0, 0, 0.79445],
+ // U+0051 Q
+ 82: M199,
+ // U+0052 R
+ 83: M170,
+ // U+0053 S
+ 84: M196,
+ // U+0054 T
+ 85: M200,
+ // U+0055 U
+ 86: [0, 0.69444, 0.01528, 0, 0.73334],
+ // U+0056 V
+ 87: [0, 0.69444, 0.01528, 0, 1.03889],
+ // U+0057 W
+ 88: M196,
+ // U+0058 X
+ 89: [0, 0.69444, 0.0275, 0, 0.73334],
+ // U+0059 Y
+ 90: M208,
+ // U+005a Z
+ 91: M201,
+ // U+005b [
+ 93: M201,
+ // U+005d ]
+ 94: M195,
+ // U+005e ^
+ 95: [0.35, 0.10833, 0.03056, 0, 0.55],
+ // U+005f _
+ 97: [0, 0.45833, 0, 0, 0.525],
+ // U+0061 a
+ 98: M202,
+ // U+0062 b
+ 99: [0, 0.45833, 0, 0, 0.48889],
+ // U+0063 c
+ 100: M202,
+ // U+0064 d
+ 101: [0, 0.45833, 0, 0, 0.51111],
+ // U+0065 e
+ 102: [0, 0.69444, 0.07639, 0, 0.33611],
+ // U+0066 f
+ 103: [0.19444, 0.45833, 0.01528, 0, 0.55],
+ // U+0067 g
+ 104: M202,
+ // U+0068 h
+ 105: M203,
+ // U+0069 i
+ 106: [0.19444, 0.69444, 0, 0, 0.28611],
+ // U+006a j
+ 107: [0, 0.69444, 0, 0, 0.53056],
+ // U+006b k
+ 108: M203,
+ // U+006c l
+ 109: [0, 0.45833, 0, 0, 0.86667],
+ // U+006d m
+ 110: M205,
+ // U+006e n
+ 111: [0, 0.45833, 0, 0, 0.55],
+ // U+006f o
+ 112: M204,
+ // U+0070 p
+ 113: M204,
+ // U+0071 q
+ 114: [0, 0.45833, 0.01528, 0, 0.37222],
+ // U+0072 r
+ 115: [0, 0.45833, 0, 0, 0.42167],
+ // U+0073 s
+ 116: [0, 0.58929, 0, 0, 0.40417],
+ // U+0074 t
+ 117: M205,
+ // U+0075 u
+ 118: [0, 0.45833, 0.01528, 0, 0.5],
+ // U+0076 v
+ 119: [0, 0.45833, 0.01528, 0, 0.74445],
+ // U+0077 w
+ 120: [0, 0.45833, 0, 0, 0.5],
+ // U+0078 x
+ 121: [0.19444, 0.45833, 0.01528, 0, 0.5],
+ // U+0079 y
+ 122: [0, 0.45833, 0, 0, 0.47639],
+ // U+007a z
+ 126: [0.35, 0.34444, 0, 0, 0.55],
+ // U+007e ~
+ 160: M7,
+ // U+00a0
+ 168: M195,
+ // U+00a8 ¨
+ 176: M196,
+ // U+00b0 °
+ 180: M195,
+ // U+00b4 ´
+ 184: [0.17014, 0, 0, 0, 0.48889],
+ // U+00b8 ¸
+ 305: [0, 0.45833, 0, 0, 0.25556],
+ // U+0131 ı
+ 567: [0.19444, 0.45833, 0, 0, 0.28611],
+ // U+0237 ȷ
+ 710: M195,
+ // U+02c6 ˆ
+ 711: [0, 0.63542, 0, 0, 0.55],
+ // U+02c7 ˇ
+ 713: [0, 0.63778, 0, 0, 0.55],
+ // U+02c9 ˉ
+ 728: M195,
+ // U+02d8 ˘
+ 729: M206,
+ // U+02d9 ˙
+ 730: M196,
+ // U+02da ˚
+ 732: M195,
+ // U+02dc ˜
+ 733: M195,
+ // U+02dd ˝
+ 915: M207,
+ // U+0393 Γ
+ 916: [0, 0.69444, 0, 0, 0.91667],
+ // U+0394 Δ
+ 920: M209,
+ // U+0398 Θ
+ 923: M208,
+ // U+039b Λ
+ 926: M196,
+ // U+039e Ξ
+ 928: M197,
+ // U+03a0 Π
+ 931: M197,
+ // U+03a3 Σ
+ 933: M209,
+ // U+03a5 Υ
+ 934: M197,
+ // U+03a6 Φ
+ 936: M209,
+ // U+03a8 Ψ
+ 937: M197,
+ // U+03a9 Ω
+ 8211: [0, 0.45833, 0.03056, 0, 0.55],
+ // U+2013 –
+ 8212: [0, 0.45833, 0.03056, 0, 1.10001],
+ // U+2014 —
+ 8216: M206,
+ // U+2018 ‘
+ 8217: M206,
+ // U+2019 ’
+ 8220: M210,
+ // U+201c “
+ 8221: M210
+ // U+201d ”
+ },
+ "SansSerif-Italic": {
+ 32: M7,
+ // U+0020
+ 33: [0, 0.69444, 0.05733, 0, 0.31945],
+ // U+0021 !
+ 34: M219,
+ // U+0022 "
+ 35: [0.19444, 0.69444, 0.05087, 0, 0.83334],
+ // U+0023 #
+ 36: [0.05556, 0.75, 0.11156, 0, 0.5],
+ // U+0024 $
+ 37: [0.05556, 0.75, 0.03126, 0, 0.83334],
+ // U+0025 %
+ 38: [0, 0.69444, 0.03058, 0, 0.75834],
+ // U+0026 &
+ 39: M218,
+ // U+0027 '
+ 40: [0.25, 0.75, 0.13164, 0, 0.38889],
+ // U+0028 (
+ 41: [0.25, 0.75, 0.02536, 0, 0.38889],
+ // U+0029 )
+ 42: [0, 0.75, 0.11775, 0, 0.5],
+ // U+002a *
+ 43: [0.08333, 0.58333, 0.02536, 0, 0.77778],
+ // U+002b +
+ 44: M223,
+ // U+002c ,
+ 45: [0, 0.44444, 0.01946, 0, 0.33333],
+ // U+002d -
+ 46: M224,
+ // U+002e .
+ 47: [0.25, 0.75, 0.13164, 0, 0.5],
+ // U+002f /
+ 48: M211,
+ // U+0030 0
+ 49: M211,
+ // U+0031 1
+ 50: M211,
+ // U+0032 2
+ 51: M211,
+ // U+0033 3
+ 52: M211,
+ // U+0034 4
+ 53: M211,
+ // U+0035 5
+ 54: M211,
+ // U+0036 6
+ 55: M211,
+ // U+0037 7
+ 56: M211,
+ // U+0038 8
+ 57: M211,
+ // U+0039 9
+ 58: [0, 0.44444, 0.02502, 0, 0.27778],
+ // U+003a :
+ 59: [0.125, 0.44444, 0.02502, 0, 0.27778],
+ // U+003b ;
+ 61: [-0.13, 0.37, 0.05087, 0, 0.77778],
+ // U+003d =
+ 63: [0, 0.69444, 0.11809, 0, 0.47222],
+ // U+003f ?
+ 64: [0, 0.69444, 0.07555, 0, 0.66667],
+ // U+0040 @
+ 65: M227,
+ // U+0041 A
+ 66: [0, 0.69444, 0.08293, 0, 0.66667],
+ // U+0042 B
+ 67: [0, 0.69444, 0.11983, 0, 0.63889],
+ // U+0043 C
+ 68: [0, 0.69444, 0.07555, 0, 0.72223],
+ // U+0044 D
+ 69: [0, 0.69444, 0.11983, 0, 0.59722],
+ // U+0045 E
+ 70: [0, 0.69444, 0.13372, 0, 0.56945],
+ // U+0046 F
+ 71: [0, 0.69444, 0.11983, 0, 0.66667],
+ // U+0047 G
+ 72: M212,
+ // U+0048 H
+ 73: [0, 0.69444, 0.13372, 0, 0.27778],
+ // U+0049 I
+ 74: [0, 0.69444, 0.08094, 0, 0.47222],
+ // U+004a J
+ 75: [0, 0.69444, 0.11983, 0, 0.69445],
+ // U+004b K
+ 76: M229,
+ // U+004c L
+ 77: [0, 0.69444, 0.08094, 0, 0.875],
+ // U+004d M
+ 78: M212,
+ // U+004e N
+ 79: [0, 0.69444, 0.07555, 0, 0.73611],
+ // U+004f O
+ 80: [0, 0.69444, 0.08293, 0, 0.63889],
+ // U+0050 P
+ 81: [0.125, 0.69444, 0.07555, 0, 0.73611],
+ // U+0051 Q
+ 82: [0, 0.69444, 0.08293, 0, 0.64584],
+ // U+0052 R
+ 83: [0, 0.69444, 0.09205, 0, 0.55556],
+ // U+0053 S
+ 84: [0, 0.69444, 0.13372, 0, 0.68056],
+ // U+0054 T
+ 85: [0, 0.69444, 0.08094, 0, 0.6875],
+ // U+0055 U
+ 86: [0, 0.69444, 0.1615, 0, 0.66667],
+ // U+0056 V
+ 87: [0, 0.69444, 0.1615, 0, 0.94445],
+ // U+0057 W
+ 88: [0, 0.69444, 0.13372, 0, 0.66667],
+ // U+0058 X
+ 89: [0, 0.69444, 0.17261, 0, 0.66667],
+ // U+0059 Y
+ 90: [0, 0.69444, 0.11983, 0, 0.61111],
+ // U+005a Z
+ 91: [0.25, 0.75, 0.15942, 0, 0.28889],
+ // U+005b [
+ 93: [0.25, 0.75, 0.08719, 0, 0.28889],
+ // U+005d ]
+ 94: M214,
+ // U+005e ^
+ 95: [0.35, 0.09444, 0.08616, 0, 0.5],
+ // U+005f _
+ 97: [0, 0.44444, 981e-5, 0, 0.48056],
+ // U+0061 a
+ 98: [0, 0.69444, 0.03057, 0, 0.51667],
+ // U+0062 b
+ 99: [0, 0.44444, 0.08336, 0, 0.44445],
+ // U+0063 c
+ 100: [0, 0.69444, 0.09483, 0, 0.51667],
+ // U+0064 d
+ 101: [0, 0.44444, 0.06778, 0, 0.44445],
+ // U+0065 e
+ 102: [0, 0.69444, 0.21705, 0, 0.30556],
+ // U+0066 f
+ 103: [0.19444, 0.44444, 0.10836, 0, 0.5],
+ // U+0067 g
+ 104: [0, 0.69444, 0.01778, 0, 0.51667],
+ // U+0068 h
+ 105: [0, 0.67937, 0.09718, 0, 0.23889],
+ // U+0069 i
+ 106: [0.19444, 0.67937, 0.09162, 0, 0.26667],
+ // U+006a j
+ 107: [0, 0.69444, 0.08336, 0, 0.48889],
+ // U+006b k
+ 108: [0, 0.69444, 0.09483, 0, 0.23889],
+ // U+006c l
+ 109: [0, 0.44444, 0.01778, 0, 0.79445],
+ // U+006d m
+ 110: [0, 0.44444, 0.01778, 0, 0.51667],
+ // U+006e n
+ 111: [0, 0.44444, 0.06613, 0, 0.5],
+ // U+006f o
+ 112: [0.19444, 0.44444, 0.0389, 0, 0.51667],
+ // U+0070 p
+ 113: [0.19444, 0.44444, 0.04169, 0, 0.51667],
+ // U+0071 q
+ 114: [0, 0.44444, 0.10836, 0, 0.34167],
+ // U+0072 r
+ 115: [0, 0.44444, 0.0778, 0, 0.38333],
+ // U+0073 s
+ 116: [0, 0.57143, 0.07225, 0, 0.36111],
+ // U+0074 t
+ 117: [0, 0.44444, 0.04169, 0, 0.51667],
+ // U+0075 u
+ 118: [0, 0.44444, 0.10836, 0, 0.46111],
+ // U+0076 v
+ 119: [0, 0.44444, 0.10836, 0, 0.68334],
+ // U+0077 w
+ 120: [0, 0.44444, 0.09169, 0, 0.46111],
+ // U+0078 x
+ 121: [0.19444, 0.44444, 0.10836, 0, 0.46111],
+ // U+0079 y
+ 122: [0, 0.44444, 0.08752, 0, 0.43472],
+ // U+007a z
+ 126: [0.35, 0.32659, 0.08826, 0, 0.5],
+ // U+007e ~
+ 160: M7,
+ // U+00a0
+ 168: [0, 0.67937, 0.06385, 0, 0.5],
+ // U+00a8 ¨
+ 176: M215,
+ // U+00b0 °
+ 184: M213,
+ // U+00b8 ¸
+ 305: [0, 0.44444, 0.04169, 0, 0.23889],
+ // U+0131 ı
+ 567: [0.19444, 0.44444, 0.04169, 0, 0.26667],
+ // U+0237 ȷ
+ 710: M214,
+ // U+02c6 ˆ
+ 711: [0, 0.63194, 0.08432, 0, 0.5],
+ // U+02c7 ˇ
+ 713: [0, 0.60889, 0.08776, 0, 0.5],
+ // U+02c9 ˉ
+ 714: M216,
+ // U+02ca ˊ
+ 715: M143,
+ // U+02cb ˋ
+ 728: [0, 0.69444, 0.09483, 0, 0.5],
+ // U+02d8 ˘
+ 729: [0, 0.67937, 0.07774, 0, 0.27778],
+ // U+02d9 ˙
+ 730: M215,
+ // U+02da ˚
+ 732: [0, 0.67659, 0.08826, 0, 0.5],
+ // U+02dc ˜
+ 733: M216,
+ // U+02dd ˝
+ 915: [0, 0.69444, 0.13372, 0, 0.54167],
+ // U+0393 Γ
+ 916: M237,
+ // U+0394 Δ
+ 920: [0, 0.69444, 0.07555, 0, 0.77778],
+ // U+0398 Θ
+ 923: M170,
+ // U+039b Λ
+ 926: [0, 0.69444, 0.12816, 0, 0.66667],
+ // U+039e Ξ
+ 928: M212,
+ // U+03a0 Π
+ 931: [0, 0.69444, 0.11983, 0, 0.72222],
+ // U+03a3 Σ
+ 933: M217,
+ // U+03a5 Υ
+ 934: [0, 0.69444, 0.04603, 0, 0.72222],
+ // U+03a6 Φ
+ 936: M217,
+ // U+03a8 Ψ
+ 937: [0, 0.69444, 0.08293, 0, 0.72222],
+ // U+03a9 Ω
+ 8211: [0, 0.44444, 0.08616, 0, 0.5],
+ // U+2013 –
+ 8212: [0, 0.44444, 0.08616, 0, 1],
+ // U+2014 —
+ 8216: M218,
+ // U+2018 ‘
+ 8217: M218,
+ // U+2019 ’
+ 8220: [0, 0.69444, 0.14205, 0, 0.5],
+ // U+201c “
+ 8221: M219
+ // U+201d ”
+ },
+ "SansSerif-Regular": {
+ 32: M7,
+ // U+0020
+ 33: [0, 0.69444, 0, 0, 0.31945],
+ // U+0021 !
+ 34: M143,
+ // U+0022 "
+ 35: M220,
+ // U+0023 #
+ 36: M161,
+ // U+0024 $
+ 37: M221,
+ // U+0025 %
+ 38: [0, 0.69444, 0, 0, 0.75834],
+ // U+0026 &
+ 39: M133,
+ // U+0027 '
+ 40: M134,
+ // U+0028 (
+ 41: M134,
+ // U+0029 )
+ 42: M222,
+ // U+002a *
+ 43: M149,
+ // U+002b +
+ 44: M223,
+ // U+002c ,
+ 45: [0, 0.44444, 0, 0, 0.33333],
+ // U+002d -
+ 46: M224,
+ // U+002e .
+ 47: M141,
+ // U+002f /
+ 48: M225,
+ // U+0030 0
+ 49: M225,
+ // U+0031 1
+ 50: M225,
+ // U+0032 2
+ 51: M225,
+ // U+0033 3
+ 52: M225,
+ // U+0034 4
+ 53: M225,
+ // U+0035 5
+ 54: M225,
+ // U+0036 6
+ 55: M225,
+ // U+0037 7
+ 56: M225,
+ // U+0038 8
+ 57: M225,
+ // U+0039 9
+ 58: [0, 0.44444, 0, 0, 0.27778],
+ // U+003a :
+ 59: [0.125, 0.44444, 0, 0, 0.27778],
+ // U+003b ;
+ 61: [-0.13, 0.37, 0, 0, 0.77778],
+ // U+003d =
+ 63: M226,
+ // U+003f ?
+ 64: M227,
+ // U+0040 @
+ 65: M227,
+ // U+0041 A
+ 66: M227,
+ // U+0042 B
+ 67: M75,
+ // U+0043 C
+ 68: [0, 0.69444, 0, 0, 0.72223],
+ // U+0044 D
+ 69: M228,
+ // U+0045 E
+ 70: [0, 0.69444, 0, 0, 0.56945],
+ // U+0046 F
+ 71: M227,
+ // U+0047 G
+ 72: M230,
+ // U+0048 H
+ 73: M133,
+ // U+0049 I
+ 74: M226,
+ // U+004a J
+ 75: [0, 0.69444, 0, 0, 0.69445],
+ // U+004b K
+ 76: M229,
+ // U+004c L
+ 77: [0, 0.69444, 0, 0, 0.875],
+ // U+004d M
+ 78: M230,
+ // U+004e N
+ 79: [0, 0.69444, 0, 0, 0.73611],
+ // U+004f O
+ 80: M75,
+ // U+0050 P
+ 81: [0.125, 0.69444, 0, 0, 0.73611],
+ // U+0051 Q
+ 82: [0, 0.69444, 0, 0, 0.64584],
+ // U+0052 R
+ 83: M144,
+ // U+0053 S
+ 84: [0, 0.69444, 0, 0, 0.68056],
+ // U+0054 T
+ 85: [0, 0.69444, 0, 0, 0.6875],
+ // U+0055 U
+ 86: [0, 0.69444, 0.01389, 0, 0.66667],
+ // U+0056 V
+ 87: [0, 0.69444, 0.01389, 0, 0.94445],
+ // U+0057 W
+ 88: M227,
+ // U+0058 X
+ 89: [0, 0.69444, 0.025, 0, 0.66667],
+ // U+0059 Y
+ 90: M170,
+ // U+005a Z
+ 91: M231,
+ // U+005b [
+ 93: M231,
+ // U+005d ]
+ 94: M143,
+ // U+005e ^
+ 95: [0.35, 0.09444, 0.02778, 0, 0.5],
+ // U+005f _
+ 97: [0, 0.44444, 0, 0, 0.48056],
+ // U+0061 a
+ 98: M232,
+ // U+0062 b
+ 99: M233,
+ // U+0063 c
+ 100: M232,
+ // U+0064 d
+ 101: M233,
+ // U+0065 e
+ 102: [0, 0.69444, 0.06944, 0, 0.30556],
+ // U+0066 f
+ 103: [0.19444, 0.44444, 0.01389, 0, 0.5],
+ // U+0067 g
+ 104: M232,
+ // U+0068 h
+ 105: [0, 0.67937, 0, 0, 0.23889],
+ // U+0069 i
+ 106: [0.19444, 0.67937, 0, 0, 0.26667],
+ // U+006a j
+ 107: [0, 0.69444, 0, 0, 0.48889],
+ // U+006b k
+ 108: [0, 0.69444, 0, 0, 0.23889],
+ // U+006c l
+ 109: [0, 0.44444, 0, 0, 0.79445],
+ // U+006d m
+ 110: M236,
+ // U+006e n
+ 111: [0, 0.44444, 0, 0, 0.5],
+ // U+006f o
+ 112: M234,
+ // U+0070 p
+ 113: M234,
+ // U+0071 q
+ 114: [0, 0.44444, 0.01389, 0, 0.34167],
+ // U+0072 r
+ 115: M235,
+ // U+0073 s
+ 116: [0, 0.57143, 0, 0, 0.36111],
+ // U+0074 t
+ 117: M236,
+ // U+0075 u
+ 118: [0, 0.44444, 0.01389, 0, 0.46111],
+ // U+0076 v
+ 119: [0, 0.44444, 0.01389, 0, 0.68334],
+ // U+0077 w
+ 120: [0, 0.44444, 0, 0, 0.46111],
+ // U+0078 x
+ 121: [0.19444, 0.44444, 0.01389, 0, 0.46111],
+ // U+0079 y
+ 122: [0, 0.44444, 0, 0, 0.43472],
+ // U+007a z
+ 126: [0.35, 0.32659, 0, 0, 0.5],
+ // U+007e ~
+ 160: M7,
+ // U+00a0
+ 168: [0, 0.67937, 0, 0, 0.5],
+ // U+00a8 ¨
+ 176: M227,
+ // U+00b0 °
+ 184: M213,
+ // U+00b8 ¸
+ 305: [0, 0.44444, 0, 0, 0.23889],
+ // U+0131 ı
+ 567: [0.19444, 0.44444, 0, 0, 0.26667],
+ // U+0237 ȷ
+ 710: M143,
+ // U+02c6 ˆ
+ 711: [0, 0.63194, 0, 0, 0.5],
+ // U+02c7 ˇ
+ 713: [0, 0.60889, 0, 0, 0.5],
+ // U+02c9 ˉ
+ 714: M143,
+ // U+02ca ˊ
+ 715: M143,
+ // U+02cb ˋ
+ 728: M143,
+ // U+02d8 ˘
+ 729: [0, 0.67937, 0, 0, 0.27778],
+ // U+02d9 ˙
+ 730: M227,
+ // U+02da ˚
+ 732: [0, 0.67659, 0, 0, 0.5],
+ // U+02dc ˜
+ 733: M143,
+ // U+02dd ˝
+ 915: M229,
+ // U+0393 Γ
+ 916: M237,
+ // U+0394 Δ
+ 920: M136,
+ // U+0398 Θ
+ 923: M170,
+ // U+039b Λ
+ 926: M227,
+ // U+039e Ξ
+ 928: M230,
+ // U+03a0 Π
+ 931: M156,
+ // U+03a3 Σ
+ 933: M136,
+ // U+03a5 Υ
+ 934: M156,
+ // U+03a6 Φ
+ 936: M136,
+ // U+03a8 Ψ
+ 937: M156,
+ // U+03a9 Ω
+ 8211: [0, 0.44444, 0.02778, 0, 0.5],
+ // U+2013 –
+ 8212: [0, 0.44444, 0.02778, 0, 1],
+ // U+2014 —
+ 8216: M133,
+ // U+2018 ‘
+ 8217: M133,
+ // U+2019 ’
+ 8220: M143,
+ // U+201c “
+ 8221: M143
+ // U+201d ”
+ },
+ "Script-Regular": {
+ 32: M7,
+ // U+0020
+ 65: [0, 0.7, 0.22925, 0, 0.80253],
+ // U+0041 A
+ 66: [0, 0.7, 0.04087, 0, 0.90757],
+ // U+0042 B
+ 67: [0, 0.7, 0.1689, 0, 0.66619],
+ // U+0043 C
+ 68: [0, 0.7, 0.09371, 0, 0.77443],
+ // U+0044 D
+ 69: [0, 0.7, 0.18583, 0, 0.56162],
+ // U+0045 E
+ 70: [0, 0.7, 0.13634, 0, 0.89544],
+ // U+0046 F
+ 71: [0, 0.7, 0.17322, 0, 0.60961],
+ // U+0047 G
+ 72: [0, 0.7, 0.29694, 0, 0.96919],
+ // U+0048 H
+ 73: [0, 0.7, 0.19189, 0, 0.80907],
+ // U+0049 I
+ 74: [0.27778, 0.7, 0.19189, 0, 1.05159],
+ // U+004a J
+ 75: [0, 0.7, 0.31259, 0, 0.91364],
+ // U+004b K
+ 76: [0, 0.7, 0.19189, 0, 0.87373],
+ // U+004c L
+ 77: [0, 0.7, 0.15981, 0, 1.08031],
+ // U+004d M
+ 78: [0, 0.7, 0.3525, 0, 0.9015],
+ // U+004e N
+ 79: [0, 0.7, 0.08078, 0, 0.73787],
+ // U+004f O
+ 80: [0, 0.7, 0.08078, 0, 1.01262],
+ // U+0050 P
+ 81: [0, 0.7, 0.03305, 0, 0.88282],
+ // U+0051 Q
+ 82: [0, 0.7, 0.06259, 0, 0.85],
+ // U+0052 R
+ 83: [0, 0.7, 0.19189, 0, 0.86767],
+ // U+0053 S
+ 84: [0, 0.7, 0.29087, 0, 0.74697],
+ // U+0054 T
+ 85: [0, 0.7, 0.25815, 0, 0.79996],
+ // U+0055 U
+ 86: [0, 0.7, 0.27523, 0, 0.62204],
+ // U+0056 V
+ 87: [0, 0.7, 0.27523, 0, 0.80532],
+ // U+0057 W
+ 88: [0, 0.7, 0.26006, 0, 0.94445],
+ // U+0058 X
+ 89: [0, 0.7, 0.2939, 0, 0.70961],
+ // U+0059 Y
+ 90: [0, 0.7, 0.24037, 0, 0.8212],
+ // U+005a Z
+ 160: M7
+ // U+00a0
+ },
+ "Size1-Regular": {
+ 32: M7,
+ // U+0020
+ 40: M238,
+ // U+0028 (
+ 41: M238,
+ // U+0029 )
+ 47: M239,
+ // U+002f /
+ 91: M240,
+ // U+005b [
+ 92: M239,
+ // U+005c \
+ 93: M240,
+ // U+005d ]
+ 123: M241,
+ // U+007b {
+ 125: M241,
+ // U+007d }
+ 160: M7,
+ // U+00a0
+ 710: M242,
+ // U+02c6 ˆ
+ 732: M242,
+ // U+02dc ˜
+ 770: M242,
+ // U+0302 ̂
+ 771: M242,
+ // U+0303 ̃
+ 8214: [-99e-5, 0.601, 0, 0, 0.77778],
+ // U+2016 ‖
+ 8593: M243,
+ // U+2191 ↑
+ 8595: M243,
+ // U+2193 ↓
+ 8657: M244,
+ // U+21d1 ⇑
+ 8659: M244,
+ // U+21d3 ⇓
+ 8719: M245,
+ // U+220f ∏
+ 8720: M245,
+ // U+2210 ∐
+ 8721: [0.25001, 0.75, 0, 0, 1.05556],
+ // U+2211 ∑
+ 8730: [0.35001, 0.85, 0, 0, 1],
+ // U+221a √
+ 8739: [-599e-5, 0.606, 0, 0, 0.33333],
+ // U+2223 ∣
+ 8741: [-599e-5, 0.606, 0, 0, 0.55556],
+ // U+2225 ∥
+ 8747: M247,
+ // U+222b ∫
+ 8748: M246,
+ // U+222c ∬
+ 8749: M246,
+ // U+222d ∭
+ 8750: M247,
+ // U+222e ∮
+ 8896: M248,
+ // U+22c0 ⋀
+ 8897: M248,
+ // U+22c1 ⋁
+ 8898: M248,
+ // U+22c2 ⋂
+ 8899: M248,
+ // U+22c3 ⋃
+ 8968: M249,
+ // U+2308 ⌈
+ 8969: M249,
+ // U+2309 ⌉
+ 8970: M249,
+ // U+230a ⌊
+ 8971: M249,
+ // U+230b ⌋
+ 9168: M277,
+ // U+23d0 ⏐
+ 10216: M249,
+ // U+27e8 ⟨
+ 10217: M249,
+ // U+27e9 ⟩
+ 10752: M250,
+ // U+2a00 ⨀
+ 10753: M250,
+ // U+2a01 ⨁
+ 10754: M250,
+ // U+2a02 ⨂
+ 10756: M248,
+ // U+2a04 ⨄
+ 10758: M248
+ // U+2a06 ⨆
+ },
+ "Size2-Regular": {
+ 32: M7,
+ // U+0020
+ 40: M251,
+ // U+0028 (
+ 41: M251,
+ // U+0029 )
+ 47: M252,
+ // U+002f /
+ 91: M253,
+ // U+005b [
+ 92: M252,
+ // U+005c \
+ 93: M253,
+ // U+005d ]
+ 123: M254,
+ // U+007b {
+ 125: M254,
+ // U+007d }
+ 160: M7,
+ // U+00a0
+ 710: M255,
+ // U+02c6 ˆ
+ 732: M255,
+ // U+02dc ˜
+ 770: M255,
+ // U+0302 ̂
+ 771: M255,
+ // U+0303 ̃
+ 8719: M256,
+ // U+220f ∏
+ 8720: M256,
+ // U+2210 ∐
+ 8721: [0.55001, 1.05, 0, 0, 1.44445],
+ // U+2211 ∑
+ 8730: [0.65002, 1.15, 0, 0, 1],
+ // U+221a √
+ 8747: M258,
+ // U+222b ∫
+ 8748: M257,
+ // U+222c ∬
+ 8749: M257,
+ // U+222d ∭
+ 8750: M258,
+ // U+222e ∮
+ 8896: M259,
+ // U+22c0 ⋀
+ 8897: M259,
+ // U+22c1 ⋁
+ 8898: M259,
+ // U+22c2 ⋂
+ 8899: M259,
+ // U+22c3 ⋃
+ 8968: M260,
+ // U+2308 ⌈
+ 8969: M260,
+ // U+2309 ⌉
+ 8970: M260,
+ // U+230a ⌊
+ 8971: M260,
+ // U+230b ⌋
+ 10216: M261,
+ // U+27e8 ⟨
+ 10217: M261,
+ // U+27e9 ⟩
+ 10752: M262,
+ // U+2a00 ⨀
+ 10753: M262,
+ // U+2a01 ⨁
+ 10754: M262,
+ // U+2a02 ⨂
+ 10756: M259,
+ // U+2a04 ⨄
+ 10758: M259
+ // U+2a06 ⨆
+ },
+ "Size3-Regular": {
+ 32: M7,
+ // U+0020
+ 40: M263,
+ // U+0028 (
+ 41: M263,
+ // U+0029 )
+ 47: M264,
+ // U+002f /
+ 91: M265,
+ // U+005b [
+ 92: M264,
+ // U+005c \
+ 93: M265,
+ // U+005d ]
+ 123: M266,
+ // U+007b {
+ 125: M266,
+ // U+007d }
+ 160: M7,
+ // U+00a0
+ 710: M267,
+ // U+02c6 ˆ
+ 732: M267,
+ // U+02dc ˜
+ 770: M267,
+ // U+0302 ̂
+ 771: M267,
+ // U+0303 ̃
+ 8730: [0.95003, 1.45, 0, 0, 1],
+ // U+221a √
+ 8968: M268,
+ // U+2308 ⌈
+ 8969: M268,
+ // U+2309 ⌉
+ 8970: M268,
+ // U+230a ⌊
+ 8971: M268,
+ // U+230b ⌋
+ 10216: M266,
+ // U+27e8 ⟨
+ 10217: M266
+ // U+27e9 ⟩
+ },
+ "Size4-Regular": {
+ 32: M7,
+ // U+0020
+ 40: M269,
+ // U+0028 (
+ 41: M269,
+ // U+0029 )
+ 47: M270,
+ // U+002f /
+ 91: M271,
+ // U+005b [
+ 92: M270,
+ // U+005c \
+ 93: M271,
+ // U+005d ]
+ 123: M272,
+ // U+007b {
+ 125: M272,
+ // U+007d }
+ 160: M7,
+ // U+00a0
+ 710: M273,
+ // U+02c6 ˆ
+ 732: M273,
+ // U+02dc ˜
+ 770: M273,
+ // U+0302 ̂
+ 771: M273,
+ // U+0303 ̃
+ 8730: [1.25003, 1.75, 0, 0, 1],
+ // U+221a √
+ 8968: M274,
+ // U+2308 ⌈
+ 8969: M274,
+ // U+2309 ⌉
+ 8970: M274,
+ // U+230a ⌊
+ 8971: M274,
+ // U+230b ⌋
+ 9115: M275,
+ // U+239b ⎛
+ 9116: M276,
+ // U+239c ⎜
+ 9117: M275,
+ // U+239d ⎝
+ 9118: M275,
+ // U+239e ⎞
+ 9119: M276,
+ // U+239f ⎟
+ 9120: M275,
+ // U+23a0 ⎠
+ 9121: M278,
+ // U+23a1 ⎡
+ 9122: M277,
+ // U+23a2 ⎢
+ 9123: M278,
+ // U+23a3 ⎣
+ 9124: M278,
+ // U+23a4 ⎤
+ 9125: M277,
+ // U+23a5 ⎥
+ 9126: M278,
+ // U+23a6 ⎦
+ 9127: M279,
+ // U+23a7 ⎧
+ 9128: M280,
+ // U+23a8 ⎨
+ 9129: M281,
+ // U+23a9 ⎩
+ 9130: [0, 0.3, 0, 0, 0.88889],
+ // U+23aa ⎪
+ 9131: M279,
+ // U+23ab ⎫
+ 9132: M280,
+ // U+23ac ⎬
+ 9133: M281,
+ // U+23ad ⎭
+ 9143: [0.88502, 0.915, 0, 0, 1.05556],
+ // U+23b7 ⎷
+ 10216: M272,
+ // U+27e8 ⟨
+ 10217: M272,
+ // U+27e9 ⟩
+ 57344: M282,
+ // U+e000
+ 57345: M282,
+ // U+e001
+ 57680: M283,
+ // U+e150
+ 57681: M283,
+ // U+e151
+ 57682: M283,
+ // U+e152
+ 57683: M283
+ // U+e153
+ },
+ "Typewriter-Regular": {
+ 32: M290,
+ // U+0020
+ 33: M284,
+ // U+0021 !
+ 34: M284,
+ // U+0022 "
+ 35: M284,
+ // U+0023 #
+ 36: M285,
+ // U+0024 $
+ 37: M285,
+ // U+0025 %
+ 38: M284,
+ // U+0026 &
+ 39: M284,
+ // U+0027 '
+ 40: M285,
+ // U+0028 (
+ 41: M285,
+ // U+0029 )
+ 42: [0, 0.52083, 0, 0, 0.525],
+ // U+002a *
+ 43: M286,
+ // U+002b +
+ 44: [0.13889, 0.125, 0, 0, 0.525],
+ // U+002c ,
+ 45: M286,
+ // U+002d -
+ 46: [0, 0.125, 0, 0, 0.525],
+ // U+002e .
+ 47: M285,
+ // U+002f /
+ 48: M284,
+ // U+0030 0
+ 49: M284,
+ // U+0031 1
+ 50: M284,
+ // U+0032 2
+ 51: M284,
+ // U+0033 3
+ 52: M284,
+ // U+0034 4
+ 53: M284,
+ // U+0035 5
+ 54: M284,
+ // U+0036 6
+ 55: M284,
+ // U+0037 7
+ 56: M284,
+ // U+0038 8
+ 57: M284,
+ // U+0039 9
+ 58: M288,
+ // U+003a :
+ 59: [0.13889, 0.43056, 0, 0, 0.525],
+ // U+003b ;
+ 60: M287,
+ // U+003c <
+ 61: [-0.19549, 0.41562, 0, 0, 0.525],
+ // U+003d =
+ 62: M287,
+ // U+003e >
+ 63: M284,
+ // U+003f ?
+ 64: M284,
+ // U+0040 @
+ 65: M284,
+ // U+0041 A
+ 66: M284,
+ // U+0042 B
+ 67: M284,
+ // U+0043 C
+ 68: M284,
+ // U+0044 D
+ 69: M284,
+ // U+0045 E
+ 70: M284,
+ // U+0046 F
+ 71: M284,
+ // U+0047 G
+ 72: M284,
+ // U+0048 H
+ 73: M284,
+ // U+0049 I
+ 74: M284,
+ // U+004a J
+ 75: M284,
+ // U+004b K
+ 76: M284,
+ // U+004c L
+ 77: M284,
+ // U+004d M
+ 78: M284,
+ // U+004e N
+ 79: M284,
+ // U+004f O
+ 80: M284,
+ // U+0050 P
+ 81: [0.13889, 0.61111, 0, 0, 0.525],
+ // U+0051 Q
+ 82: M284,
+ // U+0052 R
+ 83: M284,
+ // U+0053 S
+ 84: M284,
+ // U+0054 T
+ 85: M284,
+ // U+0055 U
+ 86: M284,
+ // U+0056 V
+ 87: M284,
+ // U+0057 W
+ 88: M284,
+ // U+0058 X
+ 89: M284,
+ // U+0059 Y
+ 90: M284,
+ // U+005a Z
+ 91: M285,
+ // U+005b [
+ 92: M285,
+ // U+005c \
+ 93: M285,
+ // U+005d ]
+ 94: M284,
+ // U+005e ^
+ 95: [0.09514, 0, 0, 0, 0.525],
+ // U+005f _
+ 96: M284,
+ // U+0060 `
+ 97: M288,
+ // U+0061 a
+ 98: M284,
+ // U+0062 b
+ 99: M288,
+ // U+0063 c
+ 100: M284,
+ // U+0064 d
+ 101: M288,
+ // U+0065 e
+ 102: M284,
+ // U+0066 f
+ 103: M289,
+ // U+0067 g
+ 104: M284,
+ // U+0068 h
+ 105: M284,
+ // U+0069 i
+ 106: [0.22222, 0.61111, 0, 0, 0.525],
+ // U+006a j
+ 107: M284,
+ // U+006b k
+ 108: M284,
+ // U+006c l
+ 109: M288,
+ // U+006d m
+ 110: M288,
+ // U+006e n
+ 111: M288,
+ // U+006f o
+ 112: M289,
+ // U+0070 p
+ 113: M289,
+ // U+0071 q
+ 114: M288,
+ // U+0072 r
+ 115: M288,
+ // U+0073 s
+ 116: [0, 0.55358, 0, 0, 0.525],
+ // U+0074 t
+ 117: M288,
+ // U+0075 u
+ 118: M288,
+ // U+0076 v
+ 119: M288,
+ // U+0077 w
+ 120: M288,
+ // U+0078 x
+ 121: M289,
+ // U+0079 y
+ 122: M288,
+ // U+007a z
+ 123: M285,
+ // U+007b {
+ 124: M285,
+ // U+007c |
+ 125: M285,
+ // U+007d }
+ 126: M284,
+ // U+007e ~
+ 127: M284,
+ // U+007f
+ 160: M290,
+ // U+00a0
+ 176: M284,
+ // U+00b0 °
+ 184: [0.19445, 0, 0, 0, 0.525],
+ // U+00b8 ¸
+ 305: M288,
+ // U+0131 ı
+ 567: M289,
+ // U+0237 ȷ
+ 711: [0, 0.56597, 0, 0, 0.525],
+ // U+02c7 ˇ
+ 713: [0, 0.56555, 0, 0, 0.525],
+ // U+02c9 ˉ
+ 714: M284,
+ // U+02ca ˊ
+ 715: M284,
+ // U+02cb ˋ
+ 728: M284,
+ // U+02d8 ˘
+ 730: M284,
+ // U+02da ˚
+ 770: M284,
+ // U+0302 ̂
+ 771: M284,
+ // U+0303 ̃
+ 776: M284,
+ // U+0308 ̈
+ 915: M284,
+ // U+0393 Γ
+ 916: M284,
+ // U+0394 Δ
+ 920: M284,
+ // U+0398 Θ
+ 923: M284,
+ // U+039b Λ
+ 926: M284,
+ // U+039e Ξ
+ 928: M284,
+ // U+03a0 Π
+ 931: M284,
+ // U+03a3 Σ
+ 933: M284,
+ // U+03a5 Υ
+ 934: M284,
+ // U+03a6 Φ
+ 936: M284,
+ // U+03a8 Ψ
+ 937: M284,
+ // U+03a9 Ω
+ 8216: M284,
+ // U+2018 ‘
+ 8217: M284,
+ // U+2019 ’
+ 8242: M284,
+ // U+2032 ′
+ 9251: [0.11111, 0.21944, 0, 0, 0.525]
+ // U+2423 ␣
+ }
+};
+
+// src/core/font-metrics.ts
+var CJK_REGEX = /[\u3040-\u309F]|[\u30A0-\u30FF]|[\u4E00-\u9FAF]|[\uAC00-\uD7AF]/;
+var PT_PER_EM = 10;
+var AXIS_HEIGHT = 0.25;
+var BASELINE_SKIP = 1.2;
+var X_HEIGHT = 0.431;
+var FONT_METRICS = {
+ slant: [0.25, 0.25, 0.25],
+ space: [0, 0, 0],
+ stretch: [0, 0, 0],
+ shrink: [0, 0, 0],
+ xHeight: [X_HEIGHT, X_HEIGHT, X_HEIGHT],
+ quad: [1, 1.171, 1.472],
+ extraSpace: [0, 0, 0],
+ num1: [0.5, 0.732, 0.925],
+ // Was num1: [0.677, 0.732, 0.925],
+ num2: [0.394, 0.384, 0.5],
+ // Was num2: [0.394, 0.384, 0.387],
+ num3: [0.444, 0.471, 0.504],
+ denom1: [0.686, 0.752, 1.025],
+ denom2: [0.345, 0.344, 0.532],
+ sup1: [0.413, 0.503, 0.504],
+ sup2: [0.363, 0.431, 0.404],
+ sup3: [0.289, 0.286, 0.294],
+ sub1: [0.15, 0.143, 0.2],
+ sub2: [0.247, 0.286, 0.4],
+ supDrop: [0.386, 0.353, 0.494],
+ subDrop: [0.05, 0.071, 0.1],
+ delim1: [2.39, 1.7, 1.98],
+ delim2: [1.01, 1.157, 1.42],
+ axisHeight: [AXIS_HEIGHT, AXIS_HEIGHT, AXIS_HEIGHT],
+ defaultRuleThickness: [0.04, 0.049, 0.049],
+ bigOpSpacing1: [0.111, 0.111, 0.111],
+ bigOpSpacing2: [0.166, 0.166, 0.166],
+ bigOpSpacing3: [0.2, 0.2, 0.2],
+ bigOpSpacing4: [0.6, 0.611, 0.611],
+ bigOpSpacing5: [0.1, 0.143, 0.143],
+ sqrtRuleThickness: [0.04, 0.04, 0.04]
+};
+var FONT_SCALE = [
+ 0,
+ // not used
+ 0.5,
+ // size 1 = scriptscriptstyle
+ 0.7,
+ // size 2 = scriptstyle
+ 0.8,
+ 0.9,
+ 1,
+ // size 5 = default
+ 1.2,
+ 1.44,
+ 1.728,
+ 2.074,
+ 2.488
+ //size 10
+];
+var DEFAULT_FONT_SIZE = 5;
+var EXTRA_CHARACTER_MAP = {
+ "\xA0": " ",
+ // NON-BREAKING SPACE is like space
+ "\u200B": " ",
+ // ZERO WIDTH SPACE is like space
+ // Latin-1
+ "\xC5": "A",
+ "\xC7": "C",
+ "\xD0": "D",
+ "\xDE": "o",
+ "\xE5": "a",
+ "\xE7": "c",
+ "\xF0": "d",
+ "\xFE": "o",
+ // Cyrillic
+ "\u0410": "A",
+ "\u0411": "B",
+ "\u0412": "B",
+ "\u0413": "F",
+ "\u0414": "A",
+ "\u0415": "E",
+ "\u0416": "K",
+ "\u0417": "3",
+ "\u0418": "N",
+ "\u0419": "N",
+ "\u041A": "K",
+ "\u041B": "N",
+ "\u041C": "M",
+ "\u041D": "H",
+ "\u041E": "O",
+ "\u041F": "N",
+ "\u0420": "P",
+ "\u0421": "C",
+ "\u0422": "T",
+ "\u0423": "y",
+ "\u0424": "O",
+ "\u0425": "X",
+ "\u0426": "U",
+ "\u0427": "h",
+ "\u0428": "W",
+ "\u0429": "W",
+ "\u042A": "B",
+ "\u042B": "X",
+ "\u042C": "B",
+ "\u042D": "3",
+ "\u042E": "X",
+ "\u042F": "R",
+ "\u0430": "a",
+ "\u0431": "b",
+ "\u0432": "a",
+ "\u0433": "r",
+ "\u0434": "y",
+ "\u0435": "e",
+ "\u0436": "m",
+ "\u0437": "e",
+ "\u0438": "n",
+ "\u0439": "n",
+ "\u043A": "n",
+ "\u043B": "n",
+ "\u043C": "m",
+ "\u043D": "n",
+ "\u043E": "o",
+ "\u043F": "n",
+ "\u0440": "p",
+ "\u0441": "c",
+ "\u0442": "o",
+ "\u0443": "y",
+ "\u0444": "b",
+ "\u0445": "x",
+ "\u0446": "n",
+ "\u0447": "n",
+ "\u0448": "w",
+ "\u0449": "w",
+ "\u044A": "a",
+ "\u044B": "m",
+ "\u044C": "a",
+ "\u044D": "e",
+ "\u044E": "m",
+ "\u044F": "r"
+};
+function getCharacterMetrics(codepoint, fontName) {
+ if (codepoint === void 0)
+ codepoint = 77;
+ const metrics = font_metrics_data_default[fontName][codepoint];
+ if (metrics) {
+ return {
+ defaultMetrics: false,
+ depth: metrics[0],
+ height: metrics[1],
+ italic: metrics[2],
+ skew: metrics[3],
+ width: metrics[4]
+ };
+ }
+ if (codepoint === 11034) {
+ return {
+ defaultMetrics: true,
+ depth: 0.2,
+ height: 0.8,
+ italic: 0,
+ skew: 0,
+ width: 0.8
+ };
+ }
+ const char = String.fromCodePoint(codepoint);
+ if (char in EXTRA_CHARACTER_MAP)
+ codepoint = EXTRA_CHARACTER_MAP[char].codePointAt(0);
+ else if (CJK_REGEX.test(char)) {
+ codepoint = 77;
+ return {
+ defaultMetrics: true,
+ depth: 0.2,
+ height: 0.9,
+ italic: 0,
+ skew: 0,
+ width: 1
+ };
+ }
+ return {
+ defaultMetrics: true,
+ depth: 0.2,
+ height: 0.7,
+ italic: 0,
+ skew: 0,
+ width: 0.8
+ };
+}
+
+// src/core/svg-box.ts
+var SVG_BODY = {
+ // Adapted from https://github.com/KaTeX/KaTeX/blob/master/src/stretchy.js
+ overrightarrow: [["rightarrow"], 0.888, 522, "xMaxYMin"],
+ overleftarrow: [["leftarrow"], 0.888, 522, "xMinYMin"],
+ underrightarrow: [["rightarrow"], 0.888, 522, "xMaxYMin"],
+ underleftarrow: [["leftarrow"], 0.888, 522, "xMinYMin"],
+ xrightarrow: [["rightarrow"], 1.469, 522, "xMaxYMin"],
+ longrightarrow: [["rightarrow"], 1.469, 522, "xMaxYMin"],
+ xleftarrow: [["leftarrow"], 1.469, 522, "xMinYMin"],
+ longleftarrow: [["leftarrow"], 1.469, 522, "xMinYMin"],
+ Overrightarrow: [["doublerightarrow"], 0.888, 560, "xMaxYMin"],
+ xRightarrow: [["doublerightarrow"], 1.526, 560, "xMaxYMin"],
+ xLeftarrow: [["doubleleftarrow"], 1.526, 560, "xMinYMin"],
+ overleftharpoon: [["leftharpoon"], 0.888, 522, "xMinYMin"],
+ xleftharpoonup: [["leftharpoon"], 0.888, 522, "xMinYMin"],
+ xleftharpoondown: [["leftharpoondown"], 0.888, 522, "xMinYMin"],
+ overrightharpoon: [["rightharpoon"], 0.888, 522, "xMaxYMin"],
+ xrightharpoonup: [["rightharpoon"], 0.888, 522, "xMaxYMin"],
+ xrightharpoondown: [["rightharpoondown"], 0.888, 522, "xMaxYMin"],
+ xlongequal: [["longequal"], 0.888, 334, "xMinYMin"],
+ xtwoheadleftarrow: [["twoheadleftarrow"], 0.888, 334, "xMinYMin"],
+ xtwoheadrightarrow: [["twoheadrightarrow"], 0.888, 334, "xMaxYMin"],
+ overleftrightarrow: [["leftarrow", "rightarrow"], 0.888, 522],
+ overbrace: [["leftbrace", "midbrace", "rightbrace"], 1.6, 548],
+ underbrace: [
+ ["leftbraceunder", "midbraceunder", "rightbraceunder"],
+ 1.6,
+ 548
+ ],
+ underleftrightarrow: [["leftarrow", "rightarrow"], 0.888, 522],
+ xleftrightarrow: [["leftarrow", "rightarrow"], 1.75, 522],
+ longleftrightarrow: [["leftarrow", "rightarrow"], 1.75, 522],
+ xLeftrightarrow: [["doubleleftarrow", "doublerightarrow"], 1.75, 560],
+ xrightleftharpoons: [["leftharpoondownplus", "rightharpoonplus"], 1.75, 716],
+ longrightleftharpoons: [
+ ["leftharpoondownplus", "rightharpoonplus"],
+ 1.75,
+ 716
+ ],
+ xleftrightharpoons: [["leftharpoonplus", "rightharpoondownplus"], 1.75, 716],
+ longleftrightharpoons: [
+ ["leftharpoonplus", "rightharpoondownplus"],
+ 1.75,
+ 716
+ ],
+ xhookleftarrow: [["leftarrow", "righthook"], 1.08, 522],
+ xhookrightarrow: [["lefthook", "rightarrow"], 1.08, 522],
+ overlinesegment: [["leftlinesegment", "rightlinesegment"], 0.888, 522],
+ underlinesegment: [["leftlinesegment", "rightlinesegment"], 0.888, 522],
+ overgroup: [["leftgroup", "rightgroup"], 0.888, 342],
+ undergroup: [["leftgroupunder", "rightgroupunder"], 0.888, 342],
+ xmapsto: [["leftmapsto", "rightarrow"], 1.5, 522],
+ xtofrom: [["leftToFrom", "rightToFrom"], 1.75, 528],
+ // The next three arrows are from the mhchem package.
+ // In mhchem.sty, min-length is 2.0em. But these arrows might appear in the
+ // document as \xrightarrow or \xrightleftharpoons. Those have
+ // min-length = 1.75em, so we set min-length on these next three to match.
+ xleftrightarrows: [["baraboveleftarrow", "rightarrowabovebar"], 1.75, 901],
+ longleftrightarrows: [["baraboveleftarrow", "rightarrowabovebar"], 1.75, 901],
+ xRightleftharpoons: [
+ ["baraboveshortleftharpoon", "rightharpoonaboveshortbar"],
+ 1.75,
+ 716
+ ],
+ longRightleftharpoons: [
+ ["baraboveshortleftharpoon", "rightharpoonaboveshortbar"],
+ 1.75,
+ 716
+ ],
+ xLeftrightharpoons: [
+ ["shortbaraboveleftharpoon", "shortrightharpoonabovebar"],
+ 1.75,
+ 716
+ ],
+ longLeftrightharpoons: [
+ ["shortbaraboveleftharpoon", "shortrightharpoonabovebar"],
+ 1.75,
+ 716
+ ]
+};
+var SVG_ACCENTS = {
+ // ViewBoxWidth, viewBoxHeight, height
+ widehat1: [1062, 239, 0.24],
+ widehat2: [2364, 300, 0.3],
+ widehat3: [2364, 360, 0.36],
+ widehat4: [2364, 420, 0.42],
+ widecheck1: [1062, 239, 0.24],
+ widecheck2: [2364, 300, 0.3],
+ widecheck3: [2364, 360, 0.36],
+ widecheck4: [2364, 420, 0.42],
+ widetilde1: [600, 260, 0.26],
+ widetilde2: [1033, 286, 0.286],
+ widetilde3: [2339, 306, 0.306],
+ widetilde4: [2340, 312, 0.34],
+ overarc: [1061, 159, 0.3],
+ underarc: [1061, 159, 0.3]
+};
+var PATHS = {
+ // The doubleleftarrow geometry is from glyph U+21D0 in the font KaTeX Main
+ doubleleftarrow: `M262 157
+l10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3
+ 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28
+ 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5
+c2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5
+ 157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87
+-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7
+-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z
+m8 0v40h399730v-40zm0 194v40h399730v-40z`,
+ // Doublerightarrow is from glyph U+21D2 in font KaTeX Main
+ doublerightarrow: `M399738 392l
+-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5
+ 14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88
+-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68
+-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18
+-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782
+c-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3
+-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z`,
+ // Leftarrow is from glyph U+2190 in font KaTeX Main
+ leftarrow: `M400000 241H110l3-3c68.7-52.7 113.7-120
+ 135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8
+-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247
+c-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208
+ 490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3
+ 1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202
+ l-3-3h399890zM100 241v40h399900v-40z`,
+ // Overbrace is from glyphs U+23A9/23A8/23A7 in font KaTeX_Size4-Regular
+ leftbrace: `M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117
+-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7
+ 5-6 9-10 13-.7 1-7.3 1-20 1H6z`,
+ leftbraceunder: `M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13
+ 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688
+ 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7
+-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z`,
+ overarc: `M529 0c179 0 524 115 524 115 5 1 9 5 9 10 0 1-1 2-1 3l-4 22c-1 5-5 9-11 9h-2s-338-93-512-92c-174 0-513 92-513 92h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13 0 0 342-115 520-115z`,
+ underarc: `m 529 160
+ c -179 0 -524 -115 -524 -115
+ c -5 -1 -9 -5 -9 -10
+ c 0 -1 1 -2 1 -3
+ l 4 -22
+ c 1 -5 5 -9 11 -9
+ h 2
+ s 338 93 512 92
+ c 174 0 513 -92 513 -92
+ h 2
+ c 5 0 9 4 11 9
+ l 5 22
+ c 1 6 -2 12 -8 13
+ c 0 0 -342 115 -520 115
+ z
+ `,
+ // Overgroup is from the MnSymbol package (public domain)
+ leftgroup: `M400000 80
+H435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0
+ 435 0h399565z`,
+ leftgroupunder: `M400000 262
+H435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219
+ 435 219h399565z`,
+ // Harpoons are from glyph U+21BD in font KaTeX Main
+ leftharpoon: `M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3
+-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5
+-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7
+-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z`,
+ leftharpoonplus: `M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5
+ 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3
+-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7
+-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z
+m0 0v40h400000v-40z`,
+ leftharpoondown: `M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333
+ 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5
+ 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667
+-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z`,
+ leftharpoondownplus: `M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12
+ 10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7
+-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0
+v40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z`,
+ // Hook is from glyph U+21A9 in font KaTeX Main
+ lefthook: `M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5
+-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3
+-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21
+ 71.5 23h399859zM103 281v-40h399897v40z`,
+ leftlinesegment: `M40 281 V428 H0 V94 H40 V241 H400000 v40z
+M40 281 V428 H0 V94 H40 V241 H400000 v40z`,
+ leftmapsto: `M40 281 V448H0V74H40V241H400000v40z
+M40 281 V448H0V74H40V241H400000v40z`,
+ // Tofrom is from glyph U+21C4 in font KaTeX AMS Regular
+ leftToFrom: `M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23
+-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8
+c28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3
+ 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z`,
+ longequal: `M0 50 h400000 v40H0z m0 194h40000v40H0z
+M0 50 h400000 v40H0z m0 194h40000v40H0z`,
+ midbrace: `M200428 334
+c-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14
+-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7
+ 311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11
+ 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z`,
+ midbraceunder: `M199572 214
+c100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14
+ 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3
+ 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0
+-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z`,
+ oiintSize1: `M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6
+-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z
+m368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8
+60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z`,
+ oiintSize2: `M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8
+-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z
+m502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2
+c0 110 84 276 504 276s502.4-166 502.4-276z`,
+ oiiintSize1: `M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6
+-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z
+m525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0
+85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z`,
+ oiiintSize2: `M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8
+-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z
+m770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1
+c0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z`,
+ rightarrow: `M0 241v40h399891c-47.3 35.3-84 78-110 128
+-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20
+ 11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7
+ 39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85
+-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5
+-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67
+ 151.7 139 205zm0 0v40h399900v-40z`,
+ rightbrace: `M400000 542l
+-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5
+s-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1
+c124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z`,
+ rightbraceunder: `M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3
+ 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237
+-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z`,
+ rightgroup: `M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0
+ 3-1 3-3v-38c-76-158-257-219-435-219H0z`,
+ rightgroupunder: `M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18
+ 0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z`,
+ rightharpoon: `M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3
+-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2
+-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58
+ 69.2 92 94.5zm0 0v40h399900v-40z`,
+ rightharpoonplus: `M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11
+-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7
+ 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z
+m0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z`,
+ rightharpoondown: `M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8
+ 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5
+-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95
+-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z`,
+ rightharpoondownplus: `M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8
+ 15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3
+ 8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3
+-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z
+m0-194v40h400000v-40zm0 0v40h400000v-40z`,
+ righthook: `M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3
+ 15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0
+-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21
+ 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z`,
+ rightlinesegment: `M399960 241 V94 h40 V428 h-40 V281 H0 v-40z
+M399960 241 V94 h40 V428 h-40 V281 H0 v-40z`,
+ rightToFrom: `M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23
+ 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32
+-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142
+-167z M100 147v40h399900v-40zM0 341v40h399900v-40z`,
+ // Twoheadleftarrow is from glyph U+219E in font KaTeX AMS Regular
+ twoheadleftarrow: `M0 167c68 40
+ 115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69
+-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3
+-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19
+-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101
+ 10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z`,
+ twoheadrightarrow: `M400000 167
+c-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3
+ 41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42
+ 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333
+-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70
+ 101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z`,
+ // Tilde1 is a modified version of a glyph from the MnSymbol package
+ widetilde1: `M200 55.538c-77 0-168 73.953-177 73.953-3 0-7
+-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0
+ 114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0
+ 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128
+-68.267.847-113-73.952-191-73.952z`,
+ // Ditto tilde2, tilde3, & tilde4
+ widetilde2: `M344 55.266c-142 0-300.638 81.316-311.5 86.418
+-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9
+ 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114
+c1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751
+ 181.476 676 181.476c-149 0-189-126.21-332-126.21z`,
+ widetilde3: `M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457
+-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0
+ 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697
+ 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696
+ -338 0-409-156.573-744-156.573z`,
+ widetilde4: `M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345
+-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409
+ 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9
+ 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409
+ -175.236-744-175.236z`,
+ // Vec is from glyph U+20D7 in font KaTeX Main
+ vec: `M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5
+3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11
+10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63
+-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1
+-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59
+H213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359
+c-16-25.333-24-45-24-59z`,
+ // Widehat1 is a modified version of a glyph from the MnSymbol package
+ widehat1: `M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22
+c-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z`,
+ // Ditto widehat2, widehat3, & widehat4
+ widehat2: `M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10
+-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,
+ widehat3: `M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10
+-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,
+ widehat4: `M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10
+-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,
+ // Widecheck paths are all inverted versions of widehat
+ widecheck1: `M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,
+-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z`,
+ widecheck2: `M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
+-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,
+ widecheck3: `M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
+-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,
+ widecheck4: `M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
+-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,
+ // The next ten paths support reaction arrows from the mhchem package.
+ // Arrows for \ce{<-->} are offset from xAxis by 0.22ex, per mhchem in LaTeX
+ // baraboveleftarrow is mostly from from glyph U+2190 in font KaTeX Main
+ baraboveleftarrow: `M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202
+c4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5
+c-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130
+s-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47
+121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6
+s2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11
+c0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z
+M100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z`,
+ // Rightarrowabovebar is mostly from glyph U+2192, KaTeX Main
+ rightarrowabovebar: `M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32
+-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0
+13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39
+-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5
+-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5
+-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67
+151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z`,
+ // The short left harpoon has 0.5em (i.e. 500 units) kern on the left end.
+ // Ref from mhchem.sty: \rlap{\raisebox{-.22ex}{$\kern0.5em
+ baraboveshortleftharpoon: `M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11
+c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17
+c2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21
+c-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40
+c-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z
+M0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z`,
+ rightharpoonaboveshortbar: `M0,241 l0,40c399126,0,399993,0,399993,0
+c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,
+-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6
+c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z
+M0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z`,
+ shortbaraboveleftharpoon: `M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11
+c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,
+1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,
+-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z
+M93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z`,
+ shortrightharpoonabovebar: `M53,241l0,40c398570,0,399437,0,399437,0
+c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,
+-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6
+c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z
+M500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z`
+};
+function svgBodyToMarkup(svgBodyName) {
+ if (SVG_ACCENTS[svgBodyName]) {
+ const [vbWidth, vbHeight, height2] = SVG_ACCENTS[svgBodyName];
+ const result = ``;
+ return `${result}`;
+ }
+ const [paths, minWidth, viewBoxHeight, align2] = SVG_BODY[svgBodyName];
+ let widthClasses;
+ let aligns;
+ const height = viewBoxHeight / 1e3;
+ if (paths.length === 3) {
+ widthClasses = ["slice-1-of-3", "slice-2-of-3", "slice-3-of-3"];
+ aligns = ["xMinYMin", "xMidYMin", "xMaxYMin"];
+ } else if (paths.length === 2) {
+ widthClasses = ["slice-1-of-2", "slice-2-of-2"];
+ aligns = ["xMinYMin", "xMaxYMin"];
+ } else {
+ widthClasses = ["slice-1-of-1"];
+ aligns = [align2];
+ }
+ const body = paths.map(
+ (path, i) => ``
+ ).join("");
+ return `${body}`;
+}
+function svgBodyHeight(svgBodyName) {
+ if (SVG_BODY[svgBodyName])
+ return SVG_BODY[svgBodyName][2] / 1e3;
+ return SVG_ACCENTS[svgBodyName][2];
+}
+
+// src/core/grapheme-splitter.ts
+function stringToCodepoints(string) {
+ const result = [];
+ for (let i = 0; i < string.length; i++) {
+ let code = string.charCodeAt(i);
+ if (code === 13 && string.charCodeAt(i + 1) === 10) {
+ code = 10;
+ i++;
+ }
+ if (code === 13 || code === 12)
+ code = 10;
+ if (code === 0)
+ code = 65533;
+ if (code >= 55296 && code <= 56319) {
+ const nextCode = string.charCodeAt(i + 1);
+ if (nextCode >= 56320 && nextCode <= 57343) {
+ const lead = code - 55296;
+ const trail = nextCode - 56320;
+ code = 2 ** 16 + lead * 2 ** 10 + trail;
+ i++;
+ }
+ }
+ result.push(code);
+ }
+ return result;
+}
+var ZWJ = 8205;
+var EMOJI_COMBINATOR = [
+ [ZWJ, 1],
+ [65038, 2],
+ // VS-15: text presentation, VS-16: Emoji presentation
+ [127995, 5],
+ // EMOJI_MODIFIER_FITZPATRICK_TYPE 1-6
+ [129456, 4],
+ // Red hair..white hair
+ [917536, 96]
+ // EMOJI_TAG
+];
+var emojiCombinator;
+var REGIONAL_INDICATOR = [127462, 127487];
+function isEmojiCombinator(code) {
+ var _a3;
+ if (emojiCombinator === void 0) {
+ emojiCombinator = {};
+ for (const x of EMOJI_COMBINATOR)
+ for (let i = x[0]; i <= x[0] + x[1] - 1; i++)
+ emojiCombinator[i] = true;
+ }
+ return (_a3 = emojiCombinator[code]) != null ? _a3 : false;
+}
+function isRegionalIndicator(code) {
+ return code >= REGIONAL_INDICATOR[0] && code <= REGIONAL_INDICATOR[1];
+}
+function splitGraphemes(string) {
+ if (/^[\u0020-\u00FF]*$/.test(string))
+ return string;
+ const result = [];
+ const codePoints = stringToCodepoints(string);
+ let index = 0;
+ while (index < codePoints.length) {
+ const code = codePoints[index++];
+ const next = codePoints[index];
+ if (next === ZWJ) {
+ const baseIndex = index - 1;
+ index += 2;
+ while (codePoints[index] === ZWJ)
+ index += 2;
+ result.push(
+ String.fromCodePoint(
+ ...codePoints.slice(baseIndex, index - baseIndex + 1)
+ )
+ );
+ } else if (isEmojiCombinator(next)) {
+ const baseIndex = index - 1;
+ while (isEmojiCombinator(codePoints[index]))
+ index += codePoints[index] === ZWJ ? 2 : 1;
+ result.push(
+ String.fromCodePoint(
+ ...codePoints.slice(baseIndex, 2 * index - baseIndex - 1)
+ )
+ );
+ } else if (isRegionalIndicator(code)) {
+ index += 1;
+ result.push(String.fromCodePoint(...codePoints.slice(index - 2, 2)));
+ } else
+ result.push(String.fromCodePoint(code));
+ }
+ return result;
+}
+
+// src/core/tokenizer.ts
+var Tokenizer = class {
+ constructor(s) {
+ this.obeyspaces = false;
+ this.pos = 0;
+ this.s = splitGraphemes(s);
+ }
+ /**
+ * @return True if we reached the end of the stream
+ */
+ end() {
+ return this.pos >= this.s.length;
+ }
+ /**
+ * Return the next char and advance
+ */
+ get() {
+ return this.pos < this.s.length ? this.s[this.pos++] : "";
+ }
+ /**
+ * Return the next char, but do not advance
+ */
+ peek() {
+ return this.s[this.pos];
+ }
+ /**
+ * Return the next substring matching regEx and advance.
+ */
+ match(regEx) {
+ const execResult = typeof this.s === "string" ? regEx.exec(this.s.slice(this.pos)) : regEx.exec(this.s.slice(this.pos).join(""));
+ if (execResult == null ? void 0 : execResult[0]) {
+ this.pos += execResult[0].length;
+ return execResult[0];
+ }
+ return "";
+ }
+ /**
+ * Return the next token, or null.
+ */
+ next() {
+ if (this.end())
+ return null;
+ if (!this.obeyspaces && this.match(/^[ \f\n\r\t\v\u00A0\u2028\u2029]+/)) {
+ return "";
+ }
+ if (this.obeyspaces && this.match(/^[ \f\n\r\t\v\u00A0\u2028\u2029]/)) {
+ return "";
+ }
+ const next = this.get();
+ if (next === "\\") {
+ if (!this.end()) {
+ let command = this.match(/^[a-zA-Z\*]+/);
+ if (command) {
+ this.match(/^[ \f\n\r\t\v\u00A0\u2028\u2029]*/);
+ } else {
+ command = this.get();
+ }
+ return "\\" + command;
+ }
+ } else if (next === "{") {
+ return "<{>";
+ } else if (next === "}") {
+ return "<}>";
+ } else if (next === "^") {
+ if (this.peek() === "^") {
+ this.get();
+ const hex = this.match(
+ /^(\^(\^(\^(\^[\da-f])?[\da-f])?[\da-f])?[\da-f])?[\da-f]{2}/
+ );
+ if (hex) {
+ return String.fromCodePoint(
+ Number.parseInt(hex.slice(hex.lastIndexOf("^") + 1), 16)
+ );
+ }
+ }
+ return next;
+ } else if (next === "#") {
+ if (!this.end()) {
+ let isParameter = false;
+ if (/[\d?@]/.test(this.peek())) {
+ isParameter = true;
+ if (this.pos + 1 < this.s.length) {
+ const after = this.s[this.pos + 1];
+ isParameter = /[^\dA-Za-z]/.test(after);
+ }
+ }
+ if (isParameter)
+ return "#" + this.get();
+ return "#";
+ }
+ } else if (next === "$") {
+ if (this.peek() === "$") {
+ this.get();
+ return "<$$>";
+ }
+ return "<$>";
+ }
+ return next;
+ }
+};
+function expand(lex, args) {
+ var _a3, _b3, _c2, _d2;
+ const result = [];
+ let token = lex.next();
+ if (token) {
+ if (token === "\\relax") {
+ } else if (token === "\\noexpand") {
+ token = lex.next();
+ if (token)
+ result.push(token);
+ } else if (token === "\\obeyspaces")
+ lex.obeyspaces = true;
+ else if (token === "\\bgroup") {
+ result.push("<{>");
+ } else if (token === "\\egroup") {
+ result.push("<}>");
+ } else if (token === "\\string") {
+ token = lex.next();
+ if (token) {
+ if (token.startsWith("\\"))
+ for (const x of token)
+ result.push(x === "\\" ? "\\backslash" : x);
+ else if (token === "<{>")
+ result.push("\\{");
+ else if (token === "")
+ result.push("~");
+ else if (token === "<}>")
+ result.push("\\}");
+ }
+ } else if (token === "\\csname") {
+ while (lex.peek() === "")
+ lex.next();
+ let command = "";
+ let done = false;
+ let tokens = [];
+ do {
+ if (tokens.length === 0) {
+ if (/^#[\d?@]$/.test(lex.peek())) {
+ const parameter = lex.get().slice(1);
+ tokens = tokenize(
+ (_b3 = (_a3 = args == null ? void 0 : args(parameter)) != null ? _a3 : args == null ? void 0 : args("?")) != null ? _b3 : "\\placeholder{}",
+ args
+ );
+ token = tokens[0];
+ } else {
+ token = lex.next();
+ tokens = token ? [token] : [];
+ }
+ }
+ done = tokens.length === 0;
+ if (!done && token === "\\endcsname") {
+ done = true;
+ tokens.shift();
+ }
+ if (!done) {
+ done = token === "<$>" || token === "<$$>" || token === "<{>" || token === "<}>" || typeof token === "string" && token.length > 1 && token.startsWith("\\");
+ }
+ if (!done)
+ command += tokens.shift();
+ } while (!done);
+ if (command)
+ result.push("\\" + command);
+ result.push(...tokens);
+ } else if (token === "\\endcsname") {
+ } else if (token.length > 1 && token.startsWith("#")) {
+ const parameter = token.slice(1);
+ result.push(
+ ...tokenize((_d2 = (_c2 = args == null ? void 0 : args(parameter)) != null ? _c2 : args == null ? void 0 : args("?")) != null ? _d2 : "\\placeholder{}", args)
+ );
+ } else
+ result.push(token);
+ }
+ return result;
+}
+function tokenize(s, args = null) {
+ const lines = [];
+ let sep = "";
+ for (const line of s.toString().split(/\r?\n/)) {
+ if (sep)
+ lines.push(sep);
+ sep = " ";
+ const m = line.match(/((?:\\%)|[^%])*/);
+ if (m !== null)
+ lines.push(m[0]);
+ }
+ const tokenizer = new Tokenizer(unicodeToLatex(lines.join("")));
+ const result = [];
+ do
+ result.push(...expand(tokenizer, args));
+ while (!tokenizer.end());
+ return result;
+}
+function joinLatex(segments) {
+ let sep = "";
+ const result = [];
+ for (const segment of segments) {
+ if (segment) {
+ if (sep && /^[a-zA-Z\*]/.test(segment))
+ result.push(sep);
+ result.push(segment);
+ if (/^\\[a-zA-Z]+\*?[\"\'][^\ ]+$/.test(segment))
+ result.push(" ");
+ sep = /\\[a-zA-Z]+\*?$/.test(segment) ? " " : "";
+ }
+ }
+ return result.join("");
+}
+function latexCommand(command, ...args) {
+ console.assert(command.startsWith("\\"));
+ if (args.length === 0)
+ return command;
+ return joinLatex([command, ...args.map((x) => `{${x}}`)]);
+}
+function tokensToString(tokens) {
+ return joinLatex(
+ tokens.map(
+ (token) => {
+ var _a3;
+ return (_a3 = {
+ "": " ",
+ "<$$>": "$$",
+ "<$>": "$",
+ "<{>": "{",
+ "<}>": "}"
+ }[token]) != null ? _a3 : token;
+ }
+ )
+ );
+}
+
+// src/core/modes-utils.ts
+var _Mode = class _Mode {
+ constructor(name) {
+ _Mode._registry[name] = this;
+ }
+ static createAtom(mode, command, style) {
+ return _Mode._registry[mode].createAtom(
+ command,
+ getDefinition(command, mode),
+ style
+ );
+ }
+ static serialize(atoms, options) {
+ var _a3;
+ if (!atoms || atoms.length === 0)
+ return "";
+ if ((_a3 = options.skipStyles) != null ? _a3 : false) {
+ const body = [];
+ for (const run of getModeRuns(atoms)) {
+ const mode = _Mode._registry[run[0].mode];
+ body.push(...mode.serialize(run, options));
+ }
+ return joinLatex(body);
+ }
+ return joinLatex(emitFontSizeRun(atoms, options));
+ }
+ static getFont(mode, box, style) {
+ return _Mode._registry[mode].getFont(box, style);
+ }
+};
+_Mode._registry = {};
+var Mode = _Mode;
+function getModeRuns(atoms) {
+ const result = [];
+ let run = [];
+ let currentMode = "NONE";
+ for (const atom of atoms) {
+ if (atom.type !== "first") {
+ if (atom.mode !== currentMode) {
+ if (run.length > 0)
+ result.push(run);
+ run = [atom];
+ currentMode = atom.mode;
+ } else
+ run.push(atom);
+ }
+ }
+ if (run.length > 0)
+ result.push(run);
+ return result;
+}
+function getPropertyRuns(atoms, property) {
+ const result = [];
+ let run = [];
+ let currentValue = void 0;
+ for (const atom of atoms) {
+ if (atom.type !== "first" && atom.style) {
+ let value;
+ if (property === "variant") {
+ value = atom.style.variant;
+ if (atom.style.variantStyle && atom.style.variantStyle !== "up")
+ value += "-" + atom.style.variantStyle;
+ } else
+ value = atom.style[property];
+ if (value === currentValue) {
+ run.push(atom);
+ } else {
+ if (run.length > 0)
+ result.push(run);
+ run = [atom];
+ currentValue = value;
+ }
+ }
+ }
+ if (run.length > 0)
+ result.push(run);
+ return result;
+}
+function emitColorRun(run, options) {
+ var _a3;
+ const { parent } = run[0];
+ const parentColor = parent == null ? void 0 : parent.computedStyle.color;
+ const result = [];
+ for (const modeRun of getModeRuns(run)) {
+ const mode = options.defaultMode;
+ for (const colorRun of getPropertyRuns(modeRun, "color")) {
+ const style = colorRun[0].computedStyle;
+ const body = Mode._registry[colorRun[0].mode].serialize(colorRun, __spreadProps(__spreadValues({}, options), {
+ defaultMode: mode === "text" ? "text" : "math"
+ }));
+ if (!options.skipStyles && style.color && style.color !== "none" && (!parent || parentColor !== style.color)) {
+ result.push(
+ latexCommand(
+ "\\textcolor",
+ (_a3 = style.verbatimColor) != null ? _a3 : style.color,
+ joinLatex(body)
+ )
+ );
+ } else
+ result.push(joinLatex(body));
+ }
+ }
+ return result;
+}
+function emitBackgroundColorRun(run, options) {
+ const { parent } = run[0];
+ const parentColor = parent == null ? void 0 : parent.computedStyle.backgroundColor;
+ return getPropertyRuns(run, "backgroundColor").map((x) => {
+ var _a3;
+ if (x.length > 0 || x[0].type !== "box") {
+ const style = x[0].computedStyle;
+ if (style.backgroundColor && style.backgroundColor !== "none" && (!parent || parentColor !== style.backgroundColor)) {
+ return latexCommand(
+ "\\colorbox",
+ (_a3 = style.verbatimBackgroundColor) != null ? _a3 : style.backgroundColor,
+ joinLatex(emitColorRun(x, __spreadProps(__spreadValues({}, options), { defaultMode: "text" })))
+ );
+ }
+ }
+ return joinLatex(emitColorRun(x, options));
+ });
+}
+function emitFontSizeRun(run, options) {
+ if (run.length === 0)
+ return [];
+ const { parent } = run[0];
+ const contextFontsize = parent == null ? void 0 : parent.computedStyle.fontSize;
+ const result = [];
+ for (const sizeRun of getPropertyRuns(run, "fontSize")) {
+ const fontsize = sizeRun[0].computedStyle.fontSize;
+ const body = emitBackgroundColorRun(sizeRun, options);
+ if (body) {
+ if (fontsize && fontsize !== "auto" && (!parent || contextFontsize !== fontsize)) {
+ result.push(
+ [
+ "",
+ "\\tiny",
+ "\\scriptsize",
+ "\\footnotesize",
+ "\\small",
+ "\\normalsize",
+ "\\large",
+ "\\Large",
+ "\\LARGE",
+ "\\huge",
+ "\\Huge"
+ ][fontsize],
+ ...body
+ );
+ } else
+ result.push(...body);
+ }
+ }
+ return result;
+}
+
+// src/core/box.ts
+function boxType(type) {
+ if (!type)
+ return void 0;
+ const result = {
+ mord: "ord",
+ mbin: "bin",
+ mop: "op",
+ mrel: "rel",
+ mopen: "open",
+ mclose: "close",
+ mpunct: "punct",
+ minner: "inner",
+ spacing: "ignore",
+ latex: "latex",
+ composition: "inner",
+ error: "inner",
+ placeholder: "ord",
+ supsub: "ignore"
+ }[type];
+ return result;
+}
+function atomsBoxType(atoms) {
+ if (atoms.length === 0)
+ return "ord";
+ const first = boxType(atoms[0].type);
+ const last = boxType(atoms[atoms.length - 1].type);
+ if (first && first === last)
+ return first;
+ return "ord";
+}
+function toString(arg1, arg2) {
+ if (typeof arg1 === "string")
+ return arg1;
+ if (typeof arg1 === "number") {
+ console.assert(Number.isFinite(arg1));
+ const numValue = Math.ceil(100 * arg1) / 100;
+ if (numValue === 0)
+ return "0";
+ return numValue.toString() + (arg2 != null ? arg2 : "");
+ }
+ return "";
+}
+var Box = class _Box {
+ constructor(content, options) {
+ var _a3, _b3, _c2, _d2, _e;
+ if (typeof content === "number")
+ this.value = String.fromCodePoint(content);
+ else if (typeof content === "string")
+ this.value = content;
+ else if (isArray(content))
+ this.children = content.filter((x) => x !== null);
+ else if (content && content instanceof _Box)
+ this.children = [content];
+ if (this.children)
+ for (const child of this.children)
+ child.parent = this;
+ this.type = (_a3 = options == null ? void 0 : options.type) != null ? _a3 : "ignore";
+ this.isSelected = (options == null ? void 0 : options.isSelected) === true;
+ if (options == null ? void 0 : options.caret)
+ this.caret = options.caret;
+ this.classes = (_b3 = options == null ? void 0 : options.classes) != null ? _b3 : "";
+ this.isTight = (_c2 = options == null ? void 0 : options.isTight) != null ? _c2 : false;
+ if (options == null ? void 0 : options.attributes)
+ this.attributes = options.attributes;
+ let fontName = options == null ? void 0 : options.fontFamily;
+ if ((options == null ? void 0 : options.style) && this.value) {
+ fontName = (_e = Mode.getFont((_d2 = options.mode) != null ? _d2 : "math", this, __spreadProps(__spreadValues({
+ variant: "normal"
+ }, options.style), {
+ letterShapeStyle: options.letterShapeStyle
+ }))) != null ? _e : void 0;
+ }
+ fontName || (fontName = "Main-Regular");
+ this._height = 0;
+ this._depth = 0;
+ this._width = 0;
+ this.hasExplicitWidth = false;
+ this.skew = 0;
+ this.italic = 0;
+ this.maxFontSize = 0;
+ this.scale = 1;
+ if ((options == null ? void 0 : options.maxFontSize) !== void 0)
+ this.maxFontSize = options.maxFontSize;
+ horizontalLayout(this, fontName);
+ }
+ set atomID(id) {
+ if (id === void 0 || id.length === 0)
+ return;
+ this.id = id;
+ }
+ selected(isSelected) {
+ if (this.isSelected === isSelected)
+ return;
+ this.isSelected = isSelected;
+ if (this.children)
+ for (const child of this.children)
+ child.selected(isSelected);
+ }
+ setStyle(prop, value, unit) {
+ if (value === void 0)
+ return;
+ const v = toString(value, unit);
+ if (v.length > 0) {
+ if (!this.cssProperties)
+ this.cssProperties = {};
+ this.cssProperties[prop] = v;
+ }
+ }
+ setTop(top) {
+ if (Number.isFinite(top) && Math.abs(top) > 0.01) {
+ if (!this.cssProperties)
+ this.cssProperties = {};
+ this.cssProperties.top = toString(top, "em");
+ this.height -= top;
+ this.depth += top;
+ }
+ }
+ get left() {
+ var _a3;
+ if ((_a3 = this.cssProperties) == null ? void 0 : _a3["margin-left"])
+ return Number.parseFloat(this.cssProperties["margin-left"]);
+ return 0;
+ }
+ set left(value) {
+ if (!Number.isFinite(value))
+ return;
+ if (value === 0) {
+ if (this.cssProperties)
+ delete this.cssProperties["margin-left"];
+ } else {
+ if (!this.cssProperties)
+ this.cssProperties = {};
+ this.cssProperties["margin-left"] = toString(value, "em");
+ }
+ }
+ set right(value) {
+ if (!Number.isFinite(value))
+ return;
+ if (value === 0) {
+ if (this.cssProperties)
+ delete this.cssProperties["margin-right"];
+ } else {
+ if (!this.cssProperties)
+ this.cssProperties = {};
+ this.cssProperties["margin-right"] = toString(value, "em");
+ }
+ }
+ set bottom(value) {
+ if (!Number.isFinite(value))
+ return;
+ if (value === 0) {
+ if (this.cssProperties)
+ delete this.cssProperties["margin-bottom"];
+ } else {
+ if (!this.cssProperties)
+ this.cssProperties = {};
+ this.cssProperties["margin-bottom"] = toString(value, "em");
+ }
+ }
+ get width() {
+ return this._width * this.scale;
+ }
+ set width(value) {
+ this._width = value;
+ this.hasExplicitWidth = true;
+ }
+ set softWidth(_value) {
+ }
+ get height() {
+ return this._height * this.scale;
+ }
+ set height(value) {
+ this._height = value;
+ }
+ get depth() {
+ return this._depth * this.scale;
+ }
+ set depth(value) {
+ this._depth = value;
+ }
+ /**
+ * Apply the context (color, backgroundColor, size) to the box.
+ */
+ wrap(context) {
+ const parent = context.parent;
+ if (!parent)
+ return this;
+ if (context.isPhantom)
+ this.setStyle("opacity", 0);
+ const color = context.color;
+ if (color && color !== parent.color)
+ this.setStyle("color", color);
+ let backgroundColor = context.backgroundColor;
+ if (this.isSelected)
+ backgroundColor = highlight(backgroundColor);
+ if (backgroundColor && backgroundColor !== parent.backgroundColor) {
+ this.setStyle("background-color", backgroundColor);
+ this.setStyle("display", "inline-block");
+ }
+ const scale = context.scalingFactor;
+ this.scale = scale;
+ this.skew *= scale;
+ this.italic *= scale;
+ return this;
+ }
+ /**
+ * Generate the HTML markup to represent this box.
+ */
+ toMarkup() {
+ var _a3, _b3, _c2, _d2;
+ let body = (_a3 = this.value) != null ? _a3 : "";
+ if (this.children)
+ for (const box of this.children)
+ body += box.toMarkup();
+ let svgMarkup = "";
+ if (this.svgBody)
+ svgMarkup = svgBodyToMarkup(this.svgBody);
+ else if (this.svgOverlay) {
+ svgMarkup = '';
+ svgMarkup += body;
+ svgMarkup += "";
+ svgMarkup += '`;
+ }
+ let props = "";
+ const classes = this.classes.split(" ");
+ classes.push(
+ (_c2 = {
+ latex: "ML__raw-latex",
+ placeholder: "ML__placeholder",
+ error: "ML__error"
+ }[this.type]) != null ? _c2 : ""
+ );
+ if (this.caret === "latex")
+ classes.push("ML__latex-caret");
+ if (this.isSelected)
+ classes.push("ML__selected");
+ const classList = classes.length === 1 ? classes[0] : classes.filter((x, e, a) => x.length > 0 && a.indexOf(x) === e).join(" ");
+ if (classList.length > 0)
+ props += ` class="${classList}"`;
+ if (this.id)
+ props += ` data-atom-id=${this.id}`;
+ if (this.cssId)
+ props += ` id="${this.cssId.replace(/ /g, "-")}" `;
+ if (this.attributes) {
+ props += " " + Object.keys(this.attributes).map((x) => `${x}="${this.attributes[x]}"`).join(" ");
+ }
+ if (this.htmlData) {
+ const entries = this.htmlData.split(",");
+ for (const entry of entries) {
+ const matched = entry.match(/([^=]+)=(.+$)/);
+ if (matched) {
+ const key = matched[1].trim().replace(/ /g, "-");
+ if (key)
+ props += ` data-${key}="${matched[2]}" `;
+ } else {
+ const key = entry.trim().replace(/ /g, "-");
+ if (key)
+ props += ` data-${key} `;
+ }
+ }
+ }
+ const cssProps = (_d2 = this.cssProperties) != null ? _d2 : {};
+ if (this.hasExplicitWidth) {
+ if (cssProps.width === void 0)
+ cssProps.width = `${Math.ceil(this._width * 100) / 100}em`;
+ }
+ const styles = Object.keys(cssProps).map((x) => `${x}:${cssProps[x]}`);
+ if (this.scale !== void 0 && this.scale !== 1 && (body.length > 0 || svgMarkup.length > 0))
+ styles.push(`font-size: ${Math.ceil(this.scale * 1e4) / 100}%`);
+ if (this.htmlStyle) {
+ const entries = this.htmlStyle.split(";");
+ let styleString = "";
+ for (const entry of entries) {
+ const matched = entry.match(/([^=]+):(.+$)/);
+ if (matched) {
+ const key = matched[1].trim().replace(/ /g, "-");
+ if (key)
+ styleString += `${key}:${matched[2]};`;
+ }
+ }
+ if (styleString)
+ props += ` style="${styleString}"`;
+ }
+ if (styles.length > 0)
+ props += ` style="${styles.join(";")}"`;
+ let result = "";
+ if (props.length > 0 || svgMarkup.length > 0)
+ result = `${body}${svgMarkup}`;
+ else
+ result = body;
+ if (this.caret === "text")
+ result += '';
+ else if (this.caret === "math")
+ result += '';
+ return result;
+ }
+ /**
+ * Can this box be coalesced with 'box'?
+ * This is used to 'coalesce' (i.e. group together) a series of boxes that are
+ * identical except for their value, and to avoid generating redundant boxes.
+ * That is: '12' ->
+ * "12"
+ * rather than:
+ * "12"
+ */
+ tryCoalesceWith(box) {
+ if (this.svgBody || !this.value)
+ return false;
+ if (box.svgBody || !box.value)
+ return false;
+ const hasChildren = this.children && this.children.length > 0;
+ const boxHasChildren = box.children && box.children.length > 0;
+ if (hasChildren || boxHasChildren)
+ return false;
+ if (box.cssProperties || this.cssProperties) {
+ for (const prop of [
+ "border",
+ "border-left",
+ "border-right",
+ "border-right-width",
+ "left",
+ "margin",
+ "margin-left",
+ "margin-right",
+ "padding",
+ "position",
+ "width"
+ ]) {
+ if (box.cssProperties && prop in box.cssProperties)
+ return false;
+ if (this.cssProperties && prop in this.cssProperties)
+ return false;
+ }
+ }
+ const thisStyleCount = this.cssProperties ? Object.keys(this.cssProperties).length : 0;
+ const boxStyleCount = box.cssProperties ? Object.keys(box.cssProperties).length : 0;
+ if (thisStyleCount !== boxStyleCount)
+ return false;
+ if (thisStyleCount > 0) {
+ for (const prop of Object.keys(this.cssProperties)) {
+ if (this.cssProperties[prop] !== box.cssProperties[prop])
+ return false;
+ }
+ }
+ const classes = this.classes.trim().replace(/\s+/g, " ").split(" ");
+ const boxClasses = box.classes.trim().replace(/\s+/g, " ").split(" ");
+ if (classes.length !== boxClasses.length)
+ return false;
+ classes.sort();
+ boxClasses.sort();
+ for (const [i, class_] of classes.entries()) {
+ if (class_ === "vertical-separator")
+ return false;
+ if (class_ !== boxClasses[i])
+ return false;
+ }
+ this.value += box.value;
+ this.height = Math.max(this.height, box.height);
+ this.depth = Math.max(this.depth, box.depth);
+ this._width = this._width + box._width;
+ this.maxFontSize = Math.max(this.maxFontSize, box.maxFontSize);
+ this.italic = box.italic;
+ return true;
+ }
+};
+function coalesceRecursive(boxes) {
+ if (!boxes || boxes.length === 0)
+ return [];
+ boxes[0].children = coalesceRecursive(boxes[0].children);
+ const result = [boxes[0]];
+ for (let i = 1; i < boxes.length; i++) {
+ if (!result[result.length - 1].tryCoalesceWith(boxes[i])) {
+ boxes[i].children = coalesceRecursive(boxes[i].children);
+ result.push(boxes[i]);
+ }
+ }
+ return result;
+}
+function coalesce(box) {
+ if (box.children)
+ box.children = coalesceRecursive(box.children);
+ return box;
+}
+function makeStruts(content, options) {
+ if (!content)
+ return new Box(null, options);
+ const topStrut = new Box(null, { classes: "ML__strut", type: "ignore" });
+ topStrut.setStyle("height", Math.max(0, content.height), "em");
+ const struts = [topStrut];
+ if (content.depth !== 0) {
+ const bottomStrut = new Box(null, {
+ classes: "ML__strut--bottom",
+ type: "ignore"
+ });
+ bottomStrut.setStyle("height", content.height + content.depth, "em");
+ bottomStrut.setStyle("vertical-align", -content.depth, "em");
+ struts.push(bottomStrut);
+ }
+ struts.push(content);
+ return new Box(struts, __spreadProps(__spreadValues({}, options), { type: "lift" }));
+}
+function makeSVGBox(svgBodyName) {
+ const height = svgBodyHeight(svgBodyName) / 2;
+ const box = new Box(null, { maxFontSize: 0 });
+ box.height = height + 0.166;
+ box.depth = height - 0.166;
+ box.svgBody = svgBodyName;
+ return box;
+}
+function horizontalLayout(box, fontName) {
+ var _a3;
+ if (box.type === "latex") {
+ box.height = 0.9;
+ box.depth = 0.2;
+ box._width = 1;
+ return;
+ }
+ if (box.value) {
+ box.height = -Infinity;
+ box.depth = -Infinity;
+ box._width = 0;
+ box.skew = -Infinity;
+ box.italic = -Infinity;
+ for (let i = 0; i < box.value.length; i++) {
+ const metrics = getCharacterMetrics(box.value.codePointAt(i), fontName);
+ box.height = Math.max(box.height, metrics.height);
+ box.depth = Math.max(box.depth, metrics.depth);
+ box._width += metrics.width;
+ box.skew = metrics.skew;
+ box.italic = metrics.italic;
+ }
+ return;
+ }
+ if (box.children && box.children.length > 0) {
+ let height = -Infinity;
+ let depth = -Infinity;
+ let maxFontSize = 0;
+ for (const child of box.children) {
+ if (child.height > height)
+ height = child.height;
+ if (child.depth > depth)
+ depth = child.depth;
+ maxFontSize = Math.max(maxFontSize, (_a3 = child.maxFontSize) != null ? _a3 : 0);
+ }
+ box.height = height;
+ box.depth = depth;
+ box._width = box.children.reduce((acc, x) => acc + x.width, 0);
+ box.maxFontSize = maxFontSize;
+ }
+}
+
+// src/core/v-box.ts
+function getVListChildrenAndDepth(params) {
+ if ("individualShift" in params) {
+ const oldChildren = params.individualShift;
+ let prevChild = oldChildren[0];
+ const children = [prevChild];
+ const depth = -prevChild.shift - prevChild.box.depth;
+ let currPos = depth;
+ for (let i = 1; i < oldChildren.length; i++) {
+ const child = oldChildren[i];
+ const diff = -child.shift - currPos - child.box.depth;
+ const size = diff - (prevChild.box.height + prevChild.box.depth);
+ currPos = currPos + diff;
+ children.push(size);
+ children.push(child);
+ prevChild = child;
+ }
+ return [children, depth];
+ }
+ if ("top" in params) {
+ let bottom = params.top;
+ for (const child of params.children) {
+ bottom -= typeof child === "number" ? child : child.box.height + child.box.depth;
+ }
+ return [params.children, bottom];
+ } else if ("bottom" in params)
+ return [params.children, -params.bottom];
+ else if ("firstBaseline" in params) {
+ const firstChild = params.firstBaseline[0];
+ if (typeof firstChild === "number")
+ throw new Error("First child must be an element.");
+ return [params.firstBaseline, -firstChild.box.depth];
+ } else if ("shift" in params) {
+ const firstChild = params.children[0];
+ if (typeof firstChild === "number")
+ throw new Error("First child must be an element.");
+ return [params.children, -firstChild.box.depth - params.shift];
+ }
+ return [null, 0];
+}
+function makeRows(params) {
+ var _a3;
+ const [children, depth] = getVListChildrenAndDepth(params);
+ if (!children)
+ return [[], 0, 0];
+ const pstrut = new Box(null, { classes: "pstrut" });
+ let pstrutSize = 0;
+ for (const child of children) {
+ if (typeof child !== "number") {
+ const box = child.box;
+ pstrutSize = Math.max(pstrutSize, box.maxFontSize, box.height);
+ }
+ }
+ pstrutSize += 2;
+ pstrut.height = pstrutSize;
+ pstrut.setStyle("height", pstrutSize, "em");
+ const realChildren = [];
+ let minPos = depth;
+ let maxPos = depth;
+ let currPos = depth;
+ let width = 0;
+ for (const child of children) {
+ if (typeof child === "number")
+ currPos += child;
+ else {
+ const box = child.box;
+ const classes = (_a3 = child.classes) != null ? _a3 : [];
+ const childWrap = new Box([pstrut, box], {
+ classes: classes.join(" "),
+ style: child.style
+ });
+ box.setStyle("height", box.height + box.depth, "em");
+ box.setStyle("display", "inline-block");
+ childWrap.setStyle("top", -pstrutSize - currPos - box.depth, "em");
+ if (child.marginLeft)
+ childWrap.setStyle("margin-left", child.marginLeft, "em");
+ if (child.marginRight)
+ childWrap.setStyle("margin-right", child.marginRight, "em");
+ realChildren.push(childWrap);
+ currPos += box.height + box.depth;
+ width = Math.max(width, childWrap.width);
+ }
+ minPos = Math.min(minPos, currPos);
+ maxPos = Math.max(maxPos, currPos);
+ }
+ realChildren.forEach((child) => {
+ child.softWidth = width;
+ });
+ const vlist = new Box(realChildren, { classes: "vlist" });
+ vlist.softWidth = width;
+ vlist.height = maxPos;
+ vlist.setStyle("height", maxPos, "em");
+ if (minPos >= 0)
+ return [[new Box(vlist, { classes: "vlist-r" })], maxPos, -minPos];
+ const depthStrut = new Box(new Box(null), { classes: "vlist" });
+ depthStrut.height = -minPos;
+ depthStrut.setStyle("height", -minPos, "em");
+ const topStrut = new Box(8203, {
+ classes: "vlist-s",
+ maxFontSize: 0
+ });
+ topStrut.softWidth = 0;
+ topStrut.height = 0;
+ topStrut.depth = 0;
+ return [
+ [
+ new Box([vlist, topStrut], { classes: "vlist-r" }),
+ new Box(depthStrut, { classes: "vlist-r" })
+ ],
+ maxPos,
+ -minPos
+ ];
+}
+var VBox = class extends Box {
+ constructor(content, options) {
+ var _a3;
+ const [rows, height, depth] = makeRows(content);
+ super(rows.length === 1 ? rows[0] : rows, {
+ type: options == null ? void 0 : options.type,
+ classes: ((_a3 = options == null ? void 0 : options.classes) != null ? _a3 : "") + " vlist-t" + (rows.length === 2 ? " vlist-t2" : "")
+ });
+ this.height = height;
+ this.depth = depth;
+ this.softWidth = rows.reduce((acc, row) => Math.max(acc, row.width), 0);
+ }
+};
+function makeLimitsStack(context, options) {
+ var _a3, _b3, _c2, _d2, _e;
+ const metrics = context.metrics;
+ const base = new Box(options.base);
+ const baseShift = (_a3 = options.baseShift) != null ? _a3 : 0;
+ const slant = (_b3 = options.slant) != null ? _b3 : 0;
+ let aboveShift = 0;
+ let belowShift = 0;
+ if (options.above) {
+ aboveShift = (_c2 = options.aboveShift) != null ? _c2 : Math.max(
+ metrics.bigOpSpacing1,
+ metrics.bigOpSpacing3 - options.above.depth
+ );
+ }
+ if (options.below) {
+ belowShift = (_d2 = options.belowShift) != null ? _d2 : Math.max(
+ metrics.bigOpSpacing2,
+ metrics.bigOpSpacing4 - options.below.height
+ );
+ }
+ let result = null;
+ if (options.below && options.above) {
+ const bottom = metrics.bigOpSpacing5 + options.below.height + options.below.depth + belowShift + base.depth + baseShift;
+ result = new VBox({
+ bottom,
+ children: [
+ metrics.bigOpSpacing5,
+ {
+ box: options.below,
+ marginLeft: -slant,
+ classes: ["ML__center"]
+ },
+ belowShift,
+ // We need to center the base to account for the case where the
+ // above/below is wider
+ { box: base, classes: ["ML__center"] },
+ aboveShift,
+ {
+ box: options.above,
+ marginLeft: slant,
+ classes: ["ML__center"]
+ },
+ metrics.bigOpSpacing5
+ ]
+ }).wrap(context);
+ } else if (options.below && !options.above) {
+ result = new VBox({
+ top: base.height - baseShift,
+ children: [
+ metrics.bigOpSpacing5,
+ {
+ box: options.below,
+ marginLeft: -slant,
+ classes: ["ML__center"]
+ },
+ belowShift,
+ { box: base, classes: ["ML__center"] }
+ ]
+ }).wrap(context);
+ } else if (!options.below && options.above) {
+ const bottom = base.depth + baseShift;
+ result = new VBox({
+ bottom,
+ children: [
+ { box: base, classes: ["ML__center"] },
+ aboveShift,
+ {
+ box: options.above,
+ marginLeft: slant,
+ classes: ["ML__center"]
+ },
+ metrics.bigOpSpacing5
+ ]
+ }).wrap(context);
+ } else {
+ const bottom = base.depth + baseShift;
+ result = new VBox({
+ bottom,
+ children: [{ box: base }, metrics.bigOpSpacing5]
+ }).wrap(context);
+ }
+ return new Box(result, { type: (_e = options.type) != null ? _e : "op" });
+}
+
+// src/core/mathstyle.ts
+var D = 7;
+var Dc = 6;
+var T = 5;
+var Tc = 4;
+var S = 3;
+var Sc = 2;
+var SS = 1;
+var SSc = 0;
+var Mathstyle = class {
+ constructor(id, sizeDelta, cramped) {
+ this.id = id;
+ this.sizeDelta = sizeDelta;
+ this.cramped = cramped;
+ const metricsIndex = { "-4": 2, "-3": 1, 0: 0 }[sizeDelta];
+ this.metrics = Object.keys(FONT_METRICS).reduce((acc, x) => {
+ return __spreadProps(__spreadValues({}, acc), { [x]: FONT_METRICS[x][metricsIndex] });
+ }, {});
+ }
+ getFontSize(size) {
+ return Math.max(1, size + this.sizeDelta);
+ }
+ /**
+ * Get the style of a superscript given a base in the current style.
+ */
+ get sup() {
+ return MATHSTYLES[[SSc, SS, SSc, SS, Sc, S, Sc, S][this.id]];
+ }
+ /**
+ * Get the style of a subscript given a base in the current style.
+ */
+ get sub() {
+ return MATHSTYLES[[SSc, SSc, SSc, SSc, Sc, Sc, Sc, Sc][this.id]];
+ }
+ /**
+ * Get the style of a fraction numerator given the fraction in the current
+ * style.
+ * See TeXBook p 141.
+ */
+ get fracNum() {
+ return MATHSTYLES[[SSc, SS, SSc, SS, Sc, S, Tc, T][this.id]];
+ }
+ /**
+ * Get the style of a fraction denominator given the fraction in the current
+ * style.
+ * See TeXBook p 141.
+ */
+ get fracDen() {
+ return MATHSTYLES[[SSc, SSc, SSc, SSc, Sc, Sc, Tc, Tc][this.id]];
+ }
+ /**
+ * Get the cramped version of a style (in particular, cramping a cramped style
+ * doesn't change the style).
+ */
+ get cramp() {
+ return MATHSTYLES[[SSc, SSc, Sc, Sc, Tc, Tc, Dc, Dc][this.id]];
+ }
+ /**
+ * Return if this style is tightly spaced (scriptstyle/scriptscriptstyle)
+ */
+ get isTight() {
+ return this.sizeDelta < 0;
+ }
+};
+var NUMERIC_MATHSTYLES = {
+ 7: new Mathstyle(D, 0, false),
+ 6: new Mathstyle(Dc, 0, true),
+ 5: new Mathstyle(T, 0, false),
+ 4: new Mathstyle(Tc, 0, true),
+ 3: new Mathstyle(S, -3, false),
+ 2: new Mathstyle(Sc, -3, true),
+ 1: new Mathstyle(SS, -4, false),
+ 0: new Mathstyle(SSc, -4, true)
+};
+var MATHSTYLES = __spreadProps(__spreadValues({}, NUMERIC_MATHSTYLES), {
+ displaystyle: NUMERIC_MATHSTYLES[D],
+ textstyle: NUMERIC_MATHSTYLES[T],
+ scriptstyle: NUMERIC_MATHSTYLES[S],
+ scriptscriptstyle: NUMERIC_MATHSTYLES[SS]
+});
+
+// src/core/registers-utils.ts
+function convertDimensionToPt(value, precision) {
+ var _a3;
+ if (!value)
+ return 0;
+ const f = {
+ pt: 1,
+ mm: 7227 / 2540,
+ cm: 7227 / 254,
+ ex: 35271 / 8192,
+ px: 3 / 4,
+ em: PT_PER_EM,
+ bp: 803 / 800,
+ dd: 1238 / 1157,
+ pc: 12,
+ in: 72.27,
+ mu: 10 / 18
+ }[(_a3 = value.unit) != null ? _a3 : "pt"];
+ if (Number.isFinite(precision)) {
+ const factor = 10 ** precision;
+ return Math.round(value.dimension / PT_PER_EM * f * factor) / factor;
+ }
+ return value.dimension * f;
+}
+function convertDimensionToEm(value, precision) {
+ if (value === null)
+ return 0;
+ const result = convertDimensionToPt(value) / PT_PER_EM;
+ if (Number.isFinite(precision)) {
+ const factor = 10 ** precision;
+ return Math.round(result * factor) / factor;
+ }
+ return result;
+}
+function serializeDimension(value) {
+ var _a3;
+ return `${value.dimension}${(_a3 = value.unit) != null ? _a3 : "pt"}`;
+}
+function serializeGlue(value) {
+ let result = serializeDimension(value.glue);
+ if (value.grow && value.grow.dimension !== 0)
+ result += ` plus ${serializeDimension(value.grow)}`;
+ if (value.shrink && value.shrink.dimension !== 0)
+ result += ` minus ${serializeDimension(value.shrink)}`;
+ return result;
+}
+function serializeLatexValue(value) {
+ var _a3, _b3;
+ if (value === null || value === void 0)
+ return null;
+ let result = "";
+ if ("dimension" in value)
+ result = `${value.dimension}${(_a3 = value.unit) != null ? _a3 : "pt"}`;
+ if ("glue" in value)
+ result = serializeGlue(value);
+ if ("number" in value) {
+ if (!("base" in value) || value.base === "decimal")
+ result = Number(value.number).toString();
+ else if (value.base === "alpha")
+ result = `\`${String.fromCodePoint(value.number)}`;
+ else {
+ const i = Math.round(value.number) >>> 0;
+ if (value.base === "hexadecimal") {
+ result = Number(i).toString(16).toUpperCase();
+ if (i <= 255)
+ result = result.padStart(2, "0");
+ else if (i <= 65535)
+ result = result.padStart(4, "0");
+ else if (i <= 16777215)
+ result = result.padStart(6, "0");
+ else
+ result = result.padStart(8, "0");
+ result = `"${result}`;
+ } else if (value.base === "octal") {
+ result = Number(i).toString(8);
+ if (i <= 63)
+ result = result.padStart(2, "0");
+ else if (i <= 30583)
+ result = result.padStart(4, "0");
+ else
+ result = result.padStart(8, "0");
+ result = `'${result}`;
+ }
+ }
+ }
+ if ("register" in value) {
+ if ("factor" in value) {
+ if (value.factor === -1)
+ result = "-";
+ else if (value.factor !== 1)
+ result = Number(value.factor).toString();
+ }
+ if ("global" in value && value.global)
+ result += "\\global";
+ result += `\\${value.register}`;
+ }
+ if ("string" in value)
+ result = value.string;
+ if ((_b3 = value.relax) != null ? _b3 : false)
+ result += "\\relax";
+ return result;
+}
+function multiplyLatexValue(value, factor) {
+ if (value === null || value === void 0)
+ return null;
+ if ("number" in value)
+ return __spreadProps(__spreadValues({}, value), { number: value.number * factor });
+ if ("register" in value) {
+ if ("factor" in value && value.factor)
+ return __spreadProps(__spreadValues({}, value), { factor: value.factor * factor });
+ return __spreadProps(__spreadValues({}, value), { factor });
+ }
+ if ("dimension" in value)
+ return __spreadProps(__spreadValues({}, value), { dimension: value.dimension * factor });
+ if ("glue" in value) {
+ if (value.shrink && value.grow) {
+ return {
+ glue: multiplyLatexValue(value.glue, factor),
+ shrink: multiplyLatexValue(value.shrink, factor),
+ grow: multiplyLatexValue(value.grow, factor)
+ };
+ }
+ if (value.shrink) {
+ return {
+ glue: multiplyLatexValue(value.glue, factor),
+ shrink: multiplyLatexValue(value.shrink, factor)
+ };
+ }
+ if (value.grow) {
+ return {
+ glue: multiplyLatexValue(value.glue, factor),
+ grow: multiplyLatexValue(value.grow, factor)
+ };
+ }
+ return {
+ glue: multiplyLatexValue(value.glue, factor)
+ };
+ }
+ return null;
+}
+
+// src/core/registers.ts
+var DEFAULT_REGISTERS = {
+ "p@": { dimension: 1 },
+ "z@": { dimension: 0 },
+ "maxdimen": { dimension: 16383.99999 },
+ "hfuzz": { dimension: 0.1 },
+ "vfuzz": { dimension: 0.1 },
+ "overfullrule": { dimension: 5 },
+ "hsize": { dimension: 6.5, unit: "in" },
+ "vsize": { dimension: 8.9, unit: "in" },
+ "parindent": { dimension: 20 },
+ "maxdepth": { dimension: 4 },
+ "splitmaxdepth": { register: "maxdimen" },
+ "boxmaxdepth": { register: "maxdimen" },
+ "delimitershortfall": { dimension: 5 },
+ // @todo used in makeLeftRightDelim()
+ "nulldelimiterspace": { dimension: 1.2, unit: "pt" },
+ "scriptspace": { dimension: 0.5 },
+ // In pt.
+ "topskip": { dimension: 10 },
+ "splittopskip": { dimension: 10 },
+ "normalbaselineskip": { dimension: 12 },
+ "normallineskip": { dimension: 1 },
+ "normallineskiplimit": { dimension: 0 },
+ // The vertical space between the lines for all math expressions which
+ // allow multiple lines (see array, multline)
+ "jot": { dimension: 3 },
+ // The space between adjacent `|` columns in an array definition.
+ // From article.cls.txt:455
+ "doublerulesep": { dimension: 2 },
+ // The width of separator lines in {array} environments.
+ "arrayrulewidth": { dimension: 0.4 },
+ "arraycolsep": { dimension: 5 },
+ // Two values from LaTeX source2e:
+ "fboxsep": { dimension: 3 },
+ // From letter.dtx:1626
+ "fboxrule": { dimension: 0.4 },
+ // From letter.dtx:1627
+ "z@skip": {
+ glue: { dimension: 0 },
+ shrink: { dimension: 0 },
+ grow: { dimension: 0 }
+ },
+ "hideskip": {
+ glue: { dimension: -1e3 },
+ grow: { dimension: 1, unit: "fill" }
+ },
+ // LaTeX
+ "@flushglue": {
+ glue: { dimension: 0 },
+ grow: { dimension: 1, unit: "fill" }
+ },
+ // LaTeX
+ "parskip": {
+ glue: { dimension: 0 },
+ grow: { dimension: 1 }
+ },
+ // @todo the "shortskip" are used if the formula starts to the right of the
+ // line before (i.e. centered and short line before)
+ "abovedisplayskip": {
+ glue: { dimension: 12 },
+ grow: { dimension: 3 },
+ shrink: { dimension: 9 }
+ },
+ "abovedisplayshortskip": {
+ glue: { dimension: 0 },
+ grow: { dimension: 3 }
+ },
+ "belowdisplayskip": {
+ glue: { dimension: 12 },
+ grow: { dimension: 3 },
+ shrink: { dimension: 9 }
+ },
+ "belowdisplayshortskip": {
+ glue: { dimension: 7 },
+ grow: { dimension: 3 },
+ shrink: { dimension: 4 }
+ },
+ "parfillskip": {
+ glue: { dimension: 0 },
+ grow: { dimension: 1, unit: "fil" }
+ },
+ "thinmuskip": { glue: { dimension: 3, unit: "mu" } },
+ "medmuskip": {
+ glue: { dimension: 4, unit: "mu" },
+ grow: { dimension: 2, unit: "mu" },
+ shrink: { dimension: 4, unit: "mu" }
+ },
+ "thickmuskip": {
+ glue: { dimension: 5, unit: "mu" },
+ grow: { dimension: 5, unit: "mu" }
+ },
+ "smallskipamount": {
+ glue: { dimension: 3 },
+ grow: { dimension: 1 },
+ shrink: { dimension: 1 }
+ },
+ "medskipamount": {
+ glue: { dimension: 6 },
+ grow: { dimension: 2 },
+ shrink: { dimension: 3 }
+ },
+ "bigskipamount": {
+ glue: { dimension: 12 },
+ grow: { dimension: 2 },
+ shrink: { dimension: 4 }
+ },
+ // From TeXBook p.348
+ // See also https://ctan.math.washington.edu/tex-archive/info/macros2e/macros2e.pdf
+ // 'voidb@x'
+ "pretolerance": 100,
+ "tolerance": 200,
+ "hbadness": 1e3,
+ "vbadness": 1e3,
+ "linepenalty": 10,
+ "hyphenpenalty": 50,
+ "exhyphenpenalty": 50,
+ "binoppenalty": 700,
+ "relpenalty": 500,
+ "clubpenalty": 150,
+ "widowpenalty": 150,
+ "displaywidowpenalty": 50,
+ "brokenpenalty": 100,
+ "predisplaypenalty": 1e4,
+ "doublehyphendemerits": 1e4,
+ "finalhyphendemerits": 5e3,
+ "adjdemerits": 1e4,
+ "tracinglostchars": 1,
+ "uchyph": 1,
+ "delimiterfactor": 901,
+ "defaulthyphenchar": "\\-",
+ "defaultskewchar": -1,
+ "newlinechar": -1,
+ "showboxbreadth": 5,
+ "showboxdepth": 3,
+ "errorcontextlines": 5,
+ "interdisplaylinepenalty": 100,
+ "interfootnotelinepenalty": 100,
+ "baselineSkip": 1.2,
+ "arraystretch": 1,
+ "month": (/* @__PURE__ */ new Date()).getMonth() + 1,
+ "day": (/* @__PURE__ */ new Date()).getDate(),
+ "year": (/* @__PURE__ */ new Date()).getFullYear()
+};
+function getDefaultRegisters() {
+ return __spreadValues({}, DEFAULT_REGISTERS);
+}
+
+// src/core/context-utils.ts
+function getDefaultContext() {
+ return {
+ registers: getDefaultRegisters(),
+ smartFence: false,
+ renderPlaceholder: void 0,
+ placeholderSymbol: "\u25A2",
+ letterShapeStyle: l10n.locale.startsWith("fr") ? "french" : "tex",
+ minFontScale: 0,
+ colorMap: defaultColorMap,
+ backgroundColorMap: defaultBackgroundColorMap,
+ getMacro: (token) => getMacroDefinition(token, getMacros())
+ };
+}
+
+// src/core/context.ts
+var Context = class _Context {
+ constructor(options, style) {
+ var _a3, _b3, _c2, _d2, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o;
+ let template;
+ if (options == null ? void 0 : options.parent) {
+ this.parent = options.parent;
+ template = options.parent;
+ this.registers = {};
+ } else {
+ template = __spreadValues(__spreadValues({}, getDefaultContext()), (_a3 = options == null ? void 0 : options.from) != null ? _a3 : {});
+ this.registers = template.registers;
+ }
+ if (template.atomIdsSettings)
+ this.atomIdsSettings = __spreadValues({}, template.atomIdsSettings);
+ this.renderPlaceholder = template.renderPlaceholder;
+ this.isPhantom = (_d2 = (_c2 = options == null ? void 0 : options.isPhantom) != null ? _c2 : (_b3 = this.parent) == null ? void 0 : _b3.isPhantom) != null ? _d2 : false;
+ this.letterShapeStyle = template.letterShapeStyle;
+ this.minFontScale = template.minFontScale;
+ if ((style == null ? void 0 : style.color) && style.color !== "none")
+ this.color = style.color;
+ else
+ this.color = (_f = (_e = this.parent) == null ? void 0 : _e.color) != null ? _f : "";
+ if ((style == null ? void 0 : style.backgroundColor) && style.backgroundColor !== "none")
+ this.backgroundColor = style.backgroundColor;
+ else
+ this.backgroundColor = (_h = (_g = this.parent) == null ? void 0 : _g.backgroundColor) != null ? _h : "";
+ if ((style == null ? void 0 : style.fontSize) && style.fontSize !== "auto" && style.fontSize !== ((_i = this.parent) == null ? void 0 : _i.size))
+ this.size = style.fontSize;
+ else
+ this.size = (_k = (_j = this.parent) == null ? void 0 : _j.size) != null ? _k : DEFAULT_FONT_SIZE;
+ let mathstyle = (_m = (_l = this.parent) == null ? void 0 : _l.mathstyle) != null ? _m : MATHSTYLES.displaystyle;
+ if (typeof (options == null ? void 0 : options.mathstyle) === "string") {
+ if (template instanceof _Context) {
+ switch (options.mathstyle) {
+ case "cramp":
+ mathstyle = mathstyle.cramp;
+ break;
+ case "superscript":
+ mathstyle = mathstyle.sup;
+ break;
+ case "subscript":
+ mathstyle = mathstyle.sub;
+ break;
+ case "numerator":
+ mathstyle = mathstyle.fracNum;
+ break;
+ case "denominator":
+ mathstyle = mathstyle.fracDen;
+ break;
+ }
+ }
+ switch (options.mathstyle) {
+ case "textstyle":
+ mathstyle = MATHSTYLES.textstyle;
+ break;
+ case "displaystyle":
+ mathstyle = MATHSTYLES.displaystyle;
+ break;
+ case "scriptstyle":
+ mathstyle = MATHSTYLES.scriptstyle;
+ break;
+ case "scriptscriptstyle":
+ mathstyle = MATHSTYLES.scriptscriptstyle;
+ break;
+ case "":
+ case "auto":
+ break;
+ }
+ }
+ this.mathstyle = mathstyle;
+ this.smartFence = template.smartFence;
+ this.placeholderSymbol = template.placeholderSymbol;
+ this.colorMap = (_n = template.colorMap) != null ? _n : (x) => x;
+ this.backgroundColorMap = (_o = template.backgroundColorMap) != null ? _o : (x) => x;
+ this.getMacro = template.getMacro;
+ console.assert(this.parent !== void 0 || this.registers !== void 0);
+ }
+ makeID() {
+ if (!this.atomIdsSettings)
+ return void 0;
+ if (this.atomIdsSettings.overrideID)
+ return this.atomIdsSettings.overrideID;
+ if (typeof this.atomIdsSettings.seed !== "number") {
+ return `${Date.now().toString(36).slice(-2)}${Math.floor(
+ Math.random() * 1e5
+ ).toString(36)}`;
+ }
+ const result = this.atomIdsSettings.seed.toString(36);
+ this.atomIdsSettings.seed += 1;
+ return result;
+ }
+ // Scale a value, in em, to account for the fontsize and mathstyle
+ // of this context
+ scale(value) {
+ return value * this.effectiveFontSize;
+ }
+ get scalingFactor() {
+ if (!this.parent)
+ return 1;
+ return this.effectiveFontSize / this.parent.effectiveFontSize;
+ }
+ get isDisplayStyle() {
+ return this.mathstyle.id === D || this.mathstyle.id === Dc;
+ }
+ get isCramped() {
+ return this.mathstyle.cramped;
+ }
+ get isTight() {
+ return this.mathstyle.isTight;
+ }
+ get metrics() {
+ return this.mathstyle.metrics;
+ }
+ // Return the font size, in em relative to the mathfield fontsize,
+ // accounting both for the base font size and the mathstyle
+ get effectiveFontSize() {
+ return Math.max(
+ FONT_SCALE[Math.max(1, this.size + this.mathstyle.sizeDelta)],
+ this.minFontScale
+ );
+ }
+ getRegister(name) {
+ var _a3;
+ if ((_a3 = this.registers) == null ? void 0 : _a3[name])
+ return this.registers[name];
+ if (this.parent)
+ return this.parent.getRegister(name);
+ return void 0;
+ }
+ getRegisterAsNumber(name) {
+ const val = this.getRegister(name);
+ if (typeof val === "number")
+ return val;
+ if (typeof val === "string")
+ return Number(val);
+ return void 0;
+ }
+ getRegisterAsGlue(name) {
+ var _a3;
+ if ((_a3 = this.registers) == null ? void 0 : _a3[name]) {
+ const value = this.registers[name];
+ if (typeof value === "object" && "glue" in value)
+ return value;
+ else if (typeof value === "object" && "dimension" in value)
+ return { glue: { dimension: value.dimension } };
+ else if (typeof value === "number")
+ return { glue: { dimension: value } };
+ return void 0;
+ }
+ if (this.parent)
+ return this.parent.getRegisterAsGlue(name);
+ return void 0;
+ }
+ getRegisterAsEm(name, precision) {
+ return convertDimensionToEm(this.getRegisterAsDimension(name), precision);
+ }
+ getRegisterAsDimension(name) {
+ var _a3;
+ if ((_a3 = this.registers) == null ? void 0 : _a3[name]) {
+ const value = this.registers[name];
+ if (typeof value === "object" && "glue" in value)
+ return value.glue;
+ else if (typeof value === "object" && "dimension" in value)
+ return value;
+ else if (typeof value === "number")
+ return { dimension: value };
+ return void 0;
+ }
+ if (this.parent)
+ return this.parent.getRegisterAsDimension(name);
+ return void 0;
+ }
+ setRegister(name, value) {
+ if (value === void 0) {
+ delete this.registers[name];
+ return;
+ }
+ this.registers[name] = value;
+ }
+ evaluate(value) {
+ if (!value || !("register" in value))
+ return value;
+ let context = this;
+ if ("global" in value && value.global)
+ while (context.parent)
+ context = context.parent;
+ let factor = 1;
+ if ("factor" in value && value.factor !== 1 && value.factor !== void 0)
+ factor = value.factor;
+ const val = context.getRegister(value.register);
+ if (val === void 0)
+ return void 0;
+ if (typeof val === "string")
+ return { string: Number(val).toString() + val };
+ if (typeof val === "number")
+ return { number: factor * val };
+ const result = context.evaluate(val);
+ if (result === void 0)
+ return void 0;
+ if ("string" in result)
+ return { string: Number(val).toString() + result.string };
+ if ("number" in result)
+ return { number: factor * result.number };
+ if ("dimension" in result)
+ return __spreadProps(__spreadValues({}, result), { dimension: factor * result.dimension });
+ if ("glue" in result) {
+ return __spreadProps(__spreadValues({}, result), {
+ glue: __spreadProps(__spreadValues({}, result.glue), { dimension: factor * result.glue.dimension }),
+ shrink: result.shrink ? __spreadProps(__spreadValues({}, result.shrink), { dimension: factor * result.shrink.dimension }) : void 0,
+ grow: result.grow ? __spreadProps(__spreadValues({}, result.grow), { dimension: factor * result.grow.dimension }) : void 0
+ });
+ }
+ return value;
+ }
+ toDimension(value) {
+ const val = this.evaluate(value);
+ if (val === void 0)
+ return null;
+ if ("dimension" in val)
+ return val;
+ if ("glue" in val)
+ return val.glue;
+ if ("number" in val)
+ return { dimension: val.number };
+ return null;
+ }
+ toEm(value, precision) {
+ if (value === null)
+ return 0;
+ const dimen = this.toDimension(value);
+ if (dimen === null)
+ return 0;
+ return convertDimensionToPt(dimen, precision) / PT_PER_EM;
+ }
+ toNumber(value) {
+ if (value === null)
+ return null;
+ const val = this.evaluate(value);
+ if (val === void 0)
+ return null;
+ if ("number" in val)
+ return val.number;
+ if ("dimension" in val)
+ return val.dimension;
+ if ("glue" in val)
+ return val.glue.dimension;
+ if ("string" in val)
+ return Number(val.string);
+ return null;
+ }
+ toColor(value) {
+ var _a3, _b3;
+ if (value === null)
+ return null;
+ const val = this.evaluate(value);
+ if (val === void 0)
+ return null;
+ if ("string" in val)
+ return (_b3 = (_a3 = this.colorMap) == null ? void 0 : _a3.call(this, val.string)) != null ? _b3 : val.string;
+ return null;
+ }
+ toBackgroundColor(value) {
+ var _a3, _b3;
+ if (value === null)
+ return null;
+ const val = this.evaluate(value);
+ if (val === void 0)
+ return null;
+ if ("string" in val)
+ return (_b3 = (_a3 = this.backgroundColorMap) == null ? void 0 : _a3.call(this, val.string)) != null ? _b3 : val.string;
+ return null;
+ }
+};
+
+// src/core/atom-class.ts
+var NAMED_BRANCHES = [
+ "body",
+ "above",
+ "below",
+ "superscript",
+ "subscript"
+];
+function isNamedBranch(branch) {
+ return typeof branch === "string" && NAMED_BRANCHES.includes(branch);
+}
+function isCellBranch(branch) {
+ return branch !== void 0 && Array.isArray(branch) && branch.length === 2;
+}
+var Atom = class _Atom {
+ constructor(options) {
+ var _a3, _b3, _c2, _d2, _e, _f;
+ this.type = options.type;
+ if (typeof options.value === "string")
+ this.value = options.value;
+ this.command = (_b3 = (_a3 = options.command) != null ? _a3 : this.value) != null ? _b3 : "";
+ this.mode = (_c2 = options.mode) != null ? _c2 : "math";
+ if (options.isFunction)
+ this.isFunction = true;
+ if (options.limits)
+ this.subsupPlacement = options.limits;
+ this.style = __spreadValues({}, options.style);
+ this.displayContainsHighlight = (_d2 = options.displayContainsHighlight) != null ? _d2 : false;
+ this.captureSelection = (_e = options.captureSelection) != null ? _e : false;
+ this.skipBoundary = (_f = options.skipBoundary) != null ? _f : false;
+ if (options.verbatimLatex !== void 0 && options.verbatimLatex !== null)
+ this.verbatimLatex = options.verbatimLatex;
+ if (options.args)
+ this.args = options.args;
+ if (options.body)
+ this.body = options.body;
+ this._changeCounter = 0;
+ }
+ /**
+ * Return a list of boxes equivalent to atoms.
+ *
+ * While an atom represent an abstract element (for example 'genfrac'),
+ * a box corresponds to something to draw on screen (a character, a line,
+ * etc...).
+ *
+ * @param context Font family, variant, size, color, and other info useful
+ * to render an expression
+ */
+ static createBox(context, atoms, options) {
+ var _a3;
+ if (!atoms)
+ return null;
+ const runs = getStyleRuns(atoms);
+ const boxes = [];
+ for (const run of runs) {
+ const style = run[0].style;
+ const box = renderStyleRun(context, run, {
+ style: {
+ color: style.color,
+ backgroundColor: style.backgroundColor,
+ fontSize: style.fontSize
+ }
+ });
+ if (box)
+ boxes.push(box);
+ }
+ if (boxes.length === 0)
+ return null;
+ const classes = ((_a3 = options == null ? void 0 : options.classes) != null ? _a3 : "").trim();
+ if (boxes.length === 1 && !classes && !(options == null ? void 0 : options.type))
+ return boxes[0].wrap(context);
+ return new Box(boxes, { classes, type: options == null ? void 0 : options.type }).wrap(context);
+ }
+ /**
+ * Given an atom or an array of atoms, return a LaTeX string representation
+ */
+ static serialize(value, options) {
+ return Mode.serialize(value, options);
+ }
+ /**
+ * The common ancestor between two atoms
+ */
+ static commonAncestor(a, b) {
+ if (a === b)
+ return a.parent;
+ if (a.parent === b.parent)
+ return a.parent;
+ const parents = /* @__PURE__ */ new WeakSet();
+ let { parent } = a;
+ while (parent) {
+ parents.add(parent);
+ parent = parent.parent;
+ }
+ parent = b.parent;
+ while (parent) {
+ if (parents.has(parent))
+ return parent;
+ parent = parent.parent;
+ }
+ console.assert(Boolean(parent));
+ return void 0;
+ }
+ static fromJson(json) {
+ if (typeof json === "string")
+ return new _Atom({ type: "mord", value: json, mode: "math" });
+ return new _Atom(json);
+ }
+ get latexMode() {
+ if (this.mode === "math")
+ return "math";
+ return "text";
+ }
+ toJson() {
+ const result = {};
+ if (this.type)
+ result.type = this.type;
+ if (this.mode !== "math")
+ result.mode = this.mode;
+ if (this.command && this.command !== this.value)
+ result.command = this.command;
+ if (this.value !== void 0)
+ result.value = this.value;
+ if (this.style && Object.keys(this.style).length > 0)
+ result.style = __spreadValues({}, this.style);
+ if (this.verbatimLatex !== void 0)
+ result.verbatimLatex = this.verbatimLatex;
+ if (this.subsupPlacement)
+ result.subsupPlacement = this.subsupPlacement;
+ if (this.explicitSubsupPlacement)
+ result.explicitSubsupPlacement = true;
+ if (this.isFunction)
+ result.isFunction = true;
+ if (this.displayContainsHighlight)
+ result.displayContainsHighlight = true;
+ if (this.isExtensibleSymbol)
+ result.isExtensibleSymbol = true;
+ if (this.skipBoundary)
+ result.skipBoundary = true;
+ if (this.captureSelection)
+ result.captureSelection = true;
+ if (this.args)
+ result.args = argumentsToJson(this.args);
+ if (this._branches) {
+ for (const branch of Object.keys(this._branches)) {
+ if (this._branches[branch]) {
+ result[branch] = this._branches[branch].filter(
+ (x) => x.type !== "first"
+ ).map((x) => x.toJson());
+ }
+ }
+ }
+ if (result.type === "mord") {
+ if (Object.keys(result).length === 2 && "value" in result)
+ return result.value;
+ }
+ return result;
+ }
+ // Used to detect changes and send appropriate notifications
+ get changeCounter() {
+ if (this.parent)
+ return this.parent.changeCounter;
+ return this._changeCounter;
+ }
+ set isDirty(dirty) {
+ if (dirty) {
+ if (!this.parent)
+ this._changeCounter++;
+ if ("verbatimLatex" in this)
+ this.verbatimLatex = void 0;
+ this._children = void 0;
+ let { parent: atom } = this;
+ while (atom) {
+ if (!atom.parent)
+ atom._changeCounter++;
+ if ("verbatimLatex" in atom)
+ atom.verbatimLatex = void 0;
+ atom._children = void 0;
+ atom = atom.parent;
+ }
+ }
+ }
+ /**
+ * Serialize the atom to LaTeX.
+ * Used internally by Mode: does not serialize styling. To serialize
+ * one or more atoms, use `Atom.serialize()`
+ */
+ _serialize(options) {
+ if (!(options.expandMacro || options.skipStyles || options.skipPlaceholders) && typeof this.verbatimLatex === "string")
+ return this.verbatimLatex;
+ const def = getDefinition(this.command, this.mode);
+ if (def == null ? void 0 : def.serialize)
+ return def.serialize(this, options);
+ if (this.body && this.command) {
+ return joinLatex([
+ latexCommand(this.command, this.bodyToLatex(options)),
+ this.supsubToLatex(options)
+ ]);
+ }
+ if (this.body) {
+ return joinLatex([
+ this.bodyToLatex(options),
+ this.supsubToLatex(options)
+ ]);
+ }
+ if (!this.value || this.value === "\u200B")
+ return "";
+ return this.command;
+ }
+ bodyToLatex(options) {
+ var _a3;
+ return Mode.serialize(this.body, __spreadProps(__spreadValues({}, options), {
+ defaultMode: (_a3 = options.defaultMode) != null ? _a3 : this.latexMode
+ }));
+ }
+ aboveToLatex(options) {
+ return Mode.serialize(this.above, options);
+ }
+ belowToLatex(options) {
+ return Mode.serialize(this.below, options);
+ }
+ supsubToLatex(options) {
+ let result = "";
+ options = __spreadProps(__spreadValues({}, options), { defaultMode: "math" });
+ if (this.branch("subscript") !== void 0) {
+ const sub = Mode.serialize(this.subscript, options);
+ if (sub.length === 0)
+ result += "_{}";
+ else if (sub.length === 1) {
+ if (/^[0-9]$/.test(sub))
+ result += `_${sub}`;
+ else
+ result += `_{${sub}}`;
+ } else
+ result += `_{${sub}}`;
+ }
+ if (this.branch("superscript") !== void 0) {
+ const sup = Mode.serialize(this.superscript, options);
+ if (sup.length === 0)
+ result += "^{}";
+ else if (sup.length === 1) {
+ if (sup === "\u2032")
+ result += "^\\prime ";
+ else if (sup === "\u2033")
+ result += "^\\doubleprime ";
+ else if (/^[0-9]$/.test(sup))
+ result += `^${sup}`;
+ else
+ result += `^{${sup}}`;
+ } else
+ result += `^{${sup}}`;
+ }
+ return result;
+ }
+ get treeDepth() {
+ let result = 1;
+ let atom = this.parent;
+ while (atom) {
+ atom = atom.parent;
+ result += 1;
+ }
+ return result;
+ }
+ get inCaptureSelection() {
+ let atom = this;
+ while (atom) {
+ if (atom.captureSelection)
+ return true;
+ atom = atom.parent;
+ }
+ return false;
+ }
+ /** Return the parent editable prompt, if it exists */
+ get parentPrompt() {
+ let atom = this.parent;
+ while (atom) {
+ if (atom.type === "prompt" && !atom.captureSelection)
+ return atom;
+ atom = atom.parent;
+ }
+ return null;
+ }
+ /**
+ * Return the atoms in the branch, if it exists, otherwise null
+ */
+ branch(name) {
+ if (!isNamedBranch(name))
+ return void 0;
+ if (!this._branches)
+ return void 0;
+ return this._branches[name];
+ }
+ /**
+ * Return all the branches that exist.
+ * Some of them may be empty.
+ */
+ get branches() {
+ if (!this._branches)
+ return [];
+ const result = [];
+ for (const branch of NAMED_BRANCHES)
+ if (this._branches[branch])
+ result.push(branch);
+ return result;
+ }
+ /**
+ * Return the atoms in the branch, if it exists, otherwise create it
+ */
+ createBranch(name) {
+ console.assert(isNamedBranch(name));
+ if (!isNamedBranch(name))
+ return [];
+ if (!this._branches) {
+ this._branches = {
+ [name]: [this.makeFirstAtom(name)]
+ };
+ } else if (!this._branches[name])
+ this._branches[name] = [this.makeFirstAtom(name)];
+ this.isDirty = true;
+ return this._branches[name];
+ }
+ get row() {
+ if (!isCellBranch(this.parentBranch))
+ return -1;
+ return this.parentBranch[0];
+ }
+ get col() {
+ if (!isCellBranch(this.parentBranch))
+ return -1;
+ return this.parentBranch[1];
+ }
+ get body() {
+ var _a3;
+ return (_a3 = this._branches) == null ? void 0 : _a3.body;
+ }
+ set body(atoms) {
+ this.setChildren(atoms, "body");
+ }
+ get superscript() {
+ var _a3;
+ return (_a3 = this._branches) == null ? void 0 : _a3.superscript;
+ }
+ set superscript(atoms) {
+ this.setChildren(atoms, "superscript");
+ }
+ get subscript() {
+ var _a3;
+ return (_a3 = this._branches) == null ? void 0 : _a3.subscript;
+ }
+ set subscript(atoms) {
+ this.setChildren(atoms, "subscript");
+ }
+ get above() {
+ var _a3;
+ return (_a3 = this._branches) == null ? void 0 : _a3.above;
+ }
+ set above(atoms) {
+ this.setChildren(atoms, "above");
+ }
+ get below() {
+ var _a3;
+ return (_a3 = this._branches) == null ? void 0 : _a3.below;
+ }
+ set below(atoms) {
+ this.setChildren(atoms, "below");
+ }
+ get computedStyle() {
+ var _a3, _b3;
+ const hadVerbatimColor = typeof this.style.verbatimColor === "string";
+ const hadVerbatimBackgroundColor = typeof this.style.verbatimBackgroundColor === "string";
+ const result = __spreadValues(__spreadValues({}, (_b3 = (_a3 = this.parent) == null ? void 0 : _a3.computedStyle) != null ? _b3 : {}), this.style);
+ delete result.variant;
+ delete result.variantStyle;
+ if (!hadVerbatimBackgroundColor)
+ delete result.verbatimBackgroundColor;
+ if (!hadVerbatimColor)
+ delete result.verbatimColor;
+ return result;
+ }
+ applyStyle(style) {
+ this.isDirty = true;
+ this.style = __spreadValues(__spreadValues({}, this.style), style);
+ if (this.style.fontFamily === "none")
+ delete this.style.fontFamily;
+ if (this.style.fontShape === "auto")
+ delete this.style.fontShape;
+ if (this.style.fontSeries === "auto")
+ delete this.style.fontSeries;
+ if (this.style.color === "none") {
+ delete this.style.color;
+ delete this.style.verbatimColor;
+ }
+ if (this.style.backgroundColor === "none") {
+ delete this.style.backgroundColor;
+ delete this.style.verbatimBackgroundColor;
+ }
+ if (this.style.fontSize === "auto")
+ delete this.style.fontSize;
+ for (const child of this.children)
+ child.applyStyle(style);
+ }
+ getInitialBaseElement() {
+ var _a3, _b3, _c2;
+ if (this.hasEmptyBranch("body"))
+ return this;
+ console.assert(((_a3 = this.body) == null ? void 0 : _a3[0].type) === "first");
+ return (_c2 = (_b3 = this.body[1]) == null ? void 0 : _b3.getInitialBaseElement()) != null ? _c2 : this;
+ }
+ getFinalBaseElement() {
+ if (this.hasEmptyBranch("body"))
+ return this;
+ return this.body[this.body.length - 1].getFinalBaseElement();
+ }
+ isCharacterBox() {
+ if (this.type === "leftright" || this.type === "genfrac" || this.type === "subsup" || this.type === "delim" || this.type === "array" || this.type === "surd")
+ return false;
+ return this.getFinalBaseElement().type === "mord";
+ }
+ hasEmptyBranch(branch) {
+ const atoms = this.branch(branch);
+ if (!atoms)
+ return true;
+ console.assert(atoms.length > 0);
+ console.assert(atoms[0].type === "first");
+ return atoms.length === 1;
+ }
+ /*
+ * Setting `null` does nothing
+ * Setting `[]` adds an empty list (the branch is created)
+ * The children should *not* start with a `"first"` atom:
+ * the `first` atom will be added if necessary
+ */
+ setChildren(children, branch) {
+ var _a3;
+ if (!children)
+ return;
+ console.assert(isNamedBranch(branch));
+ if (!isNamedBranch(branch))
+ return;
+ console.assert(((_a3 = children[0]) == null ? void 0 : _a3.type) !== "first");
+ const newBranch = [this.makeFirstAtom(branch), ...children];
+ if (this._branches)
+ this._branches[branch] = newBranch;
+ else
+ this._branches = { [branch]: newBranch };
+ for (const child of children) {
+ child.parent = this;
+ child.parentBranch = branch;
+ }
+ this.isDirty = true;
+ }
+ makeFirstAtom(branch) {
+ const result = new _Atom({ type: "first", mode: this.mode });
+ result.parent = this;
+ result.parentBranch = branch;
+ return result;
+ }
+ addChild(child, branch) {
+ console.assert(child.type !== "first");
+ this.createBranch(branch).push(child);
+ this.isDirty = true;
+ child.parent = this;
+ child.parentBranch = branch;
+ }
+ addChildBefore(child, before) {
+ console.assert(before.parentBranch !== void 0);
+ const branch = this.createBranch(before.parentBranch);
+ branch.splice(branch.indexOf(before), 0, child);
+ this.isDirty = true;
+ child.parent = this;
+ child.parentBranch = before.parentBranch;
+ }
+ addChildAfter(child, after) {
+ console.assert(after.parentBranch !== void 0);
+ const branch = this.createBranch(after.parentBranch);
+ branch.splice(branch.indexOf(after) + 1, 0, child);
+ this.isDirty = true;
+ child.parent = this;
+ child.parentBranch = after.parentBranch;
+ }
+ addChildren(children, branchName) {
+ const branch = this.createBranch(branchName);
+ for (const child of children) {
+ child.parent = this;
+ child.parentBranch = branchName;
+ branch.push(child);
+ }
+ this.isDirty = true;
+ }
+ /**
+ * Return the last atom that was added
+ */
+ addChildrenAfter(children, after) {
+ console.assert(children.length === 0 || children[0].type !== "first");
+ console.assert(after.parentBranch !== void 0);
+ const branch = this.createBranch(after.parentBranch);
+ branch.splice(branch.indexOf(after) + 1, 0, ...children);
+ this.isDirty = true;
+ for (const child of children) {
+ child.parent = this;
+ child.parentBranch = after.parentBranch;
+ }
+ return children[children.length - 1];
+ }
+ removeBranch(name) {
+ const children = this.branch(name);
+ if (isNamedBranch(name))
+ this._branches[name] = void 0;
+ if (!children)
+ return [];
+ for (const child of children) {
+ child.parent = void 0;
+ child.parentBranch = void 0;
+ }
+ console.assert(children[0].type === "first");
+ children.shift();
+ this.isDirty = true;
+ return children;
+ }
+ removeChild(child) {
+ console.assert(child.parent === this);
+ if (child.type === "first")
+ return;
+ const branch = this.branch(child.parentBranch);
+ const index = branch.indexOf(child);
+ console.assert(index >= 0);
+ branch.splice(index, 1);
+ this.isDirty = true;
+ child.parent = void 0;
+ child.parentBranch = void 0;
+ }
+ get siblings() {
+ if (!this.parent)
+ return [];
+ return this.parent.branch(this.parentBranch);
+ }
+ get firstSibling() {
+ return this.siblings[0];
+ }
+ get lastSibling() {
+ const { siblings } = this;
+ return siblings[siblings.length - 1];
+ }
+ get isFirstSibling() {
+ return this === this.firstSibling;
+ }
+ get isLastSibling() {
+ return this === this.lastSibling;
+ }
+ get hasNoSiblings() {
+ return this.siblings.length === 1;
+ }
+ get leftSibling() {
+ console.assert(this.parent !== void 0);
+ const siblings = this.parent.branch(this.parentBranch);
+ return siblings[siblings.indexOf(this) - 1];
+ }
+ get rightSibling() {
+ console.assert(this.parent !== void 0);
+ const siblings = this.parent.branch(this.parentBranch);
+ return siblings[siblings.indexOf(this) + 1];
+ }
+ get hasChildren() {
+ return Boolean(this._branches && this.children.length > 0);
+ }
+ get firstChild() {
+ console.assert(this.hasChildren);
+ return this.children[0];
+ }
+ get lastChild() {
+ console.assert(this.hasChildren);
+ const { children } = this;
+ return children[children.length - 1];
+ }
+ /**
+ * All the children of this atom.
+ *
+ * The order of the atoms is the order in which they
+ * are navigated using the keyboard.
+ */
+ get children() {
+ if (this._children)
+ return this._children;
+ if (!this._branches)
+ return [];
+ const result = [];
+ for (const branchName of NAMED_BRANCHES) {
+ if (this._branches[branchName]) {
+ for (const x of this._branches[branchName]) {
+ result.push(...x.children);
+ result.push(x);
+ }
+ }
+ }
+ this._children = result;
+ return result;
+ }
+ /**
+ * Render this atom as a box.
+ *
+ * The parent context (color, size...) will be applied
+ * to the result.
+ *
+ */
+ render(parentContext) {
+ if (this.type === "first" && !parentContext.atomIdsSettings)
+ return null;
+ const def = getDefinition(this.command, this.mode);
+ if (def == null ? void 0 : def.render)
+ return def.render(this, parentContext);
+ const context = new Context({ parent: parentContext }, this.style);
+ let result = this.createBox(context, {
+ classes: !this.parent ? "ML__base" : ""
+ });
+ if (!result)
+ return null;
+ if (!this.subsupPlacement && (this.superscript || this.subscript)) {
+ result = this.attachSupsub(context, { base: result });
+ }
+ return result.wrap(context);
+ }
+ attachSupsub(parentContext, options) {
+ var _a3;
+ const base = options.base;
+ const superscript = this.superscript;
+ const subscript = this.subscript;
+ if (!superscript && !subscript)
+ return base;
+ let supBox = null;
+ let subBox = null;
+ const isCharacterBox = (_a3 = options.isCharacterBox) != null ? _a3 : this.isCharacterBox();
+ let supShift = 0;
+ if (superscript) {
+ const context = new Context({
+ parent: parentContext,
+ mathstyle: "superscript"
+ });
+ supBox = _Atom.createBox(context, superscript);
+ if (!isCharacterBox) {
+ supShift = base.height - parentContext.metrics.supDrop * context.scalingFactor;
+ }
+ }
+ let subShift = 0;
+ if (subscript) {
+ const context = new Context({
+ parent: parentContext,
+ mathstyle: "subscript"
+ });
+ subBox = _Atom.createBox(context, subscript);
+ if (!isCharacterBox) {
+ subShift = base.depth + parentContext.metrics.subDrop * context.scalingFactor;
+ }
+ }
+ let minSupShift;
+ if (parentContext.isDisplayStyle)
+ minSupShift = parentContext.metrics.sup1;
+ else if (parentContext.isCramped)
+ minSupShift = parentContext.metrics.sup3;
+ else
+ minSupShift = parentContext.metrics.sup2;
+ const scriptspace = 0.5 / PT_PER_EM / parentContext.scalingFactor;
+ let supsub = null;
+ if (subBox && supBox) {
+ supShift = Math.max(
+ supShift,
+ minSupShift,
+ supBox.depth + 0.25 * parentContext.metrics.xHeight
+ );
+ subShift = Math.max(subShift, parentContext.metrics.sub2);
+ const ruleWidth = parentContext.metrics.defaultRuleThickness;
+ if (supShift - supBox.depth - (subBox.height - subShift) < 4 * ruleWidth) {
+ subShift = 4 * ruleWidth - (supShift - supBox.depth) + subBox.height;
+ const psi = 0.8 * parentContext.metrics.xHeight - (supShift - supBox.depth);
+ if (psi > 0) {
+ supShift += psi;
+ subShift -= psi;
+ }
+ }
+ const slant = this.isExtensibleSymbol && base.italic ? -base.italic : 0;
+ supsub = new VBox({
+ individualShift: [
+ { box: subBox, shift: subShift, marginLeft: slant },
+ { box: supBox, shift: -supShift }
+ ]
+ }).wrap(parentContext);
+ } else if (subBox && !supBox) {
+ subShift = Math.max(
+ subShift,
+ parentContext.metrics.sub1,
+ subBox.height - 0.8 * X_HEIGHT
+ );
+ supsub = new VBox({
+ shift: subShift,
+ children: [
+ {
+ box: subBox,
+ marginRight: scriptspace,
+ marginLeft: this.isCharacterBox() ? -base.italic : 0
+ }
+ ]
+ });
+ } else if (!subBox && supBox) {
+ supShift = Math.max(
+ supShift,
+ minSupShift,
+ supBox.depth + 0.25 * X_HEIGHT
+ );
+ supsub = new VBox({
+ shift: -supShift,
+ children: [{ box: supBox, marginRight: scriptspace }]
+ });
+ }
+ return new Box(
+ [
+ base,
+ new Box(supsub, {
+ caret: this.caret,
+ isSelected: this.isSelected,
+ classes: "msubsup"
+ })
+ ],
+ { type: options.type }
+ );
+ }
+ attachLimits(ctx, options) {
+ const above = this.superscript ? _Atom.createBox(
+ new Context({ parent: ctx, mathstyle: "superscript" }, this.style),
+ this.superscript
+ ) : null;
+ const below = this.subscript ? _Atom.createBox(
+ new Context({ parent: ctx, mathstyle: "subscript" }, this.style),
+ this.subscript
+ ) : null;
+ if (!above && !below)
+ return options.base.wrap(ctx);
+ return makeLimitsStack(ctx, __spreadProps(__spreadValues({}, options), { above, below }));
+ }
+ bind(context, box) {
+ if (!box || context.isPhantom || this.value === "\u200B")
+ return box;
+ let parent = this.parent;
+ while (parent && !parent.captureSelection)
+ parent = parent.parent;
+ if (parent == null ? void 0 : parent.captureSelection)
+ return box;
+ if (!this.id)
+ this.id = context.makeID();
+ box.atomID = this.id;
+ return box;
+ }
+ /**
+ * Create a box with the specified body.
+ */
+ createBox(context, options) {
+ var _a3, _b3, _c2, _d2;
+ const value = (_a3 = this.value) != null ? _a3 : this.body;
+ const type = (_b3 = options == null ? void 0 : options.boxType) != null ? _b3 : boxType(this.type);
+ let classes = (_c2 = options == null ? void 0 : options.classes) != null ? _c2 : "";
+ if (this.mode === "text")
+ classes += " ML__text";
+ const result = typeof value === "string" || value === void 0 ? new Box(value != null ? value : null, {
+ type,
+ isSelected: this.isSelected,
+ mode: this.mode,
+ maxFontSize: context.scalingFactor,
+ style: __spreadProps(__spreadValues({
+ variant: "normal"
+ }, this.style), {
+ fontSize: Math.max(
+ 1,
+ context.size + context.mathstyle.sizeDelta
+ )
+ }),
+ letterShapeStyle: context.letterShapeStyle,
+ classes
+ }) : (_d2 = _Atom.createBox(context, value, { type, classes })) != null ? _d2 : new Box(null);
+ if (context.isTight)
+ result.isTight = true;
+ if (this.mode !== "math" || this.style.variant === "main")
+ result.italic = 0;
+ result.right = result.italic;
+ this.bind(context, result);
+ if (this.caret) {
+ if (!this.superscript && !this.subscript)
+ result.caret = this.caret;
+ }
+ return result;
+ }
+ /** Return true if a digit, or a decimal point, or a french decimal `{,}` */
+ isDigit() {
+ var _a3;
+ if (this.type === "mord" && this.value)
+ return /^[\d,\.]$/.test(this.value);
+ if (this.type === "group" && ((_a3 = this.body) == null ? void 0 : _a3.length) === 2)
+ return this.body[0].type === "first" && this.body[1].value === ",";
+ return false;
+ }
+ asDigit() {
+ var _a3;
+ if (this.type === "mord" && this.value && /^[\d,\.]$/.test(this.value))
+ return this.value;
+ if (this.type === "group" && ((_a3 = this.body) == null ? void 0 : _a3.length) === 2) {
+ if (this.body[0].type === "first" && this.body[1].value === ",")
+ return ".";
+ }
+ return "";
+ }
+};
+function getStyleRuns(atoms) {
+ let style = void 0;
+ const runs = [];
+ let run = [];
+ for (const atom of atoms) {
+ if (!style && !atom.style)
+ run.push(atom);
+ else {
+ const atomStyle = atom.computedStyle;
+ if (style && atomStyle.color === style.color && atomStyle.backgroundColor === style.backgroundColor && atomStyle.fontSize === style.fontSize) {
+ run.push(atom);
+ } else {
+ if (run.length > 0)
+ runs.push(run);
+ run = [atom];
+ style = atomStyle;
+ }
+ }
+ }
+ if (run.length > 0)
+ runs.push(run);
+ return runs;
+}
+function renderStyleRun(parentContext, atoms, options) {
+ var _a3, _b3, _c2, _d2, _e;
+ if (!atoms || atoms.length === 0)
+ return null;
+ const context = new Context({ parent: parentContext }, options.style);
+ const displaySelection = !((_a3 = context.atomIdsSettings) == null ? void 0 : _a3.groupNumbers);
+ let boxes = [];
+ if (atoms.length === 1) {
+ const atom = atoms[0];
+ const box = atom.render(context);
+ if (box) {
+ if (displaySelection && atom.isSelected)
+ box.selected(true);
+ boxes = [box];
+ }
+ } else {
+ let digitOrTextStringID = "";
+ let lastWasDigit = true;
+ for (const atom of atoms) {
+ if (((_b3 = context.atomIdsSettings) == null ? void 0 : _b3.groupNumbers) && digitOrTextStringID && (lastWasDigit && atom.isDigit() || !lastWasDigit && isText(atom)))
+ context.atomIdsSettings.overrideID = digitOrTextStringID;
+ const box = atom.render(context);
+ if (context.atomIdsSettings)
+ context.atomIdsSettings.overrideID = void 0;
+ if (box) {
+ if ((_c2 = context.atomIdsSettings) == null ? void 0 : _c2.groupNumbers) {
+ if (atom.isDigit() || isText(atom)) {
+ if (!digitOrTextStringID || lastWasDigit !== atom.isDigit()) {
+ lastWasDigit = atom.isDigit();
+ digitOrTextStringID = (_d2 = atom.id) != null ? _d2 : "";
+ }
+ }
+ if (digitOrTextStringID && (!(atom.isDigit() || isText(atom)) || !atom.hasEmptyBranch("superscript") || !atom.hasEmptyBranch("subscript"))) {
+ digitOrTextStringID = "";
+ }
+ }
+ if (displaySelection && atom.isSelected)
+ box.selected(true);
+ boxes.push(box);
+ }
+ }
+ }
+ if (boxes.length === 0)
+ return null;
+ const result = new Box(boxes, __spreadProps(__spreadValues({
+ isTight: context.isTight
+ }, options), {
+ type: (_e = options.type) != null ? _e : "lift"
+ }));
+ result.isSelected = boxes.every((x) => x.isSelected);
+ return result.wrap(context);
+}
+function isText(atom) {
+ return atom.mode === "text";
+}
+function argumentsToJson(args) {
+ return args.map((arg) => {
+ if (arg === null)
+ return "";
+ if (Array.isArray(arg) && arg[0] instanceof Atom)
+ return { atoms: arg.map((x) => x.toJson()) };
+ if (typeof arg === "object" && "group" in arg)
+ return { group: arg.group.map((x) => x.toJson()) };
+ return arg;
+ });
+}
+
+// src/atoms/text.ts
+var TextAtom = class _TextAtom extends Atom {
+ constructor(command, value, style) {
+ super({
+ type: "text",
+ command,
+ mode: "text",
+ displayContainsHighlight: true
+ });
+ this.value = value;
+ this.verbatimLatex = value;
+ this.applyStyle(style);
+ }
+ static fromJson(json) {
+ return new _TextAtom(json.command, json.value, json.style);
+ }
+ render(context) {
+ const result = this.createBox(context);
+ if (this.caret)
+ result.caret = this.caret;
+ return result;
+ }
+ _serialize(_options) {
+ var _a3;
+ return (_a3 = this.verbatimLatex) != null ? _a3 : charToLatex("text", this.value.codePointAt(0));
+ }
+};
+
+// src/editor-model/selection-utils.ts
+function compareSelection(a, b) {
+ if (a.direction === b.direction) {
+ const l = a.ranges.length;
+ if (b.ranges.length === l) {
+ let i = 0;
+ while (i < l && compareRange(a.ranges[i], b.ranges[i]) === "equal")
+ i++;
+ return i === l ? "equal" : "different";
+ }
+ }
+ return "different";
+}
+function compareRange(a, b) {
+ if (a[0] === b[0] && a[1] === b[1])
+ return "equal";
+ return "different";
+}
+function range(selection) {
+ let first = Infinity;
+ let last = -Infinity;
+ for (const range2 of selection.ranges) {
+ first = Math.min(first, range2[0], range2[1]);
+ last = Math.max(last, range2[0], range2[1]);
+ }
+ return [first, last];
+}
+function isOffset(value) {
+ return typeof value === "number" && !Number.isNaN(value);
+}
+function isRange(value) {
+ return Array.isArray(value) && value.length === 2;
+}
+function isSelection(value) {
+ return value !== void 0 && value !== null && typeof value === "object" && "ranges" in value && Array.isArray(value.ranges);
+}
+function getMode(model, offset) {
+ const atom = model.at(offset);
+ let result;
+ if (atom) {
+ result = atom.mode;
+ let ancestor = atom.parent;
+ while (!result && ancestor) {
+ if (ancestor)
+ result = ancestor.mode;
+ ancestor = ancestor.parent;
+ }
+ }
+ return result;
+}
+
+// src/editor/shortcuts.ts
+function validateShortcut(siblings, shortcut) {
+ if (!shortcut)
+ return "";
+ if (typeof shortcut === "string")
+ return shortcut;
+ if (!siblings || shortcut.after === void 0)
+ return shortcut.value;
+ let nothing = false;
+ let letter = false;
+ let digit = false;
+ let isFunction = false;
+ let frac = false;
+ let surd = false;
+ let binop = false;
+ let relop = false;
+ let operator = false;
+ let punct = false;
+ let array = false;
+ let openfence = false;
+ let closefence = false;
+ let text = false;
+ let space = false;
+ let sibling = siblings[0];
+ let index = 0;
+ while ((sibling == null ? void 0 : sibling.type) && /^(subsup|placeholder)$/.test(sibling.type)) {
+ index += 1;
+ sibling = siblings[index];
+ }
+ nothing = !sibling || sibling.type === "first";
+ if (sibling) {
+ text = sibling.mode === "text";
+ letter = !text && sibling.type === "mord" && LETTER.test(sibling.value);
+ digit = !text && sibling.type === "mord" && /\d+$/.test(sibling.value);
+ isFunction = !text && sibling.isFunction;
+ frac = sibling.type === "genfrac";
+ surd = sibling.type === "surd";
+ binop = sibling.type === "mbin";
+ relop = sibling.type === "mrel";
+ operator = sibling.type === "mop" || sibling.type === "operator" || sibling.type === "extensible-symbol";
+ punct = sibling.type === "mpunct" || sibling.type === "minner";
+ array = sibling.type === "array";
+ openfence = sibling.type === "mopen";
+ closefence = sibling.type === "mclose" || sibling.type === "leftright";
+ space = sibling.type === "space";
+ }
+ if (shortcut.after.includes("nothing") && nothing || shortcut.after.includes("letter") && letter || shortcut.after.includes("digit") && digit || shortcut.after.includes("function") && isFunction || shortcut.after.includes("frac") && frac || shortcut.after.includes("surd") && surd || shortcut.after.includes("binop") && binop || shortcut.after.includes("relop") && relop || shortcut.after.includes("operator") && operator || shortcut.after.includes("punct") && punct || shortcut.after.includes("array") && array || shortcut.after.includes("openfence") && openfence || shortcut.after.includes("closefence") && closefence || shortcut.after.includes("text") && text || shortcut.after.includes("space") && space)
+ return shortcut.value;
+ return "";
+}
+function getInlineShortcut(context, s, shortcuts) {
+ if (!shortcuts)
+ return "";
+ return validateShortcut(context, shortcuts[s]);
+}
+
+// src/editor/shortcuts-definitions.ts
+var INLINE_SHORTCUTS = {
+ "&": "\\&",
+ "%": "\\%",
+ "$": "\\$",
+ // Primes
+ "''": "^{\\doubleprime}",
+ "'''": "^{\\prime\\prime\\prime}",
+ "''''": "^{\\prime\\prime\\prime\\prime}",
+ // Greek letters
+ "alpha": "\\alpha",
+ "delta": "\\delta",
+ "Delta": "\\Delta",
+ "pi": "\\pi",
+ "Pi": "\\Pi",
+ "theta": "\\theta",
+ "Theta": "\\Theta",
+ // Letter-like
+ "ii": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\imaginaryI"
+ },
+ "jj": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\imaginaryJ"
+ },
+ "ee": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\exponentialE"
+ },
+ "nabla": "\\nabla",
+ "grad": "\\nabla",
+ "del": "\\partial",
+ "deg": { after: "digit+space", value: "\\degree" },
+ "infty": "\\infty",
+ "\u221E": "\\infty",
+ // @TODO: doesn't work
+ // '∞': '\\infty',
+ // '∞': '\\infty',
+ "oo": {
+ after: "nothing+digit+frac+surd+binop+relop+punct+array+openfence+closefence+space",
+ value: "\\infty"
+ },
+ // Big operators
+ "\u2211": "\\sum",
+ "sum": "\\sum_{#?}^{#?}",
+ "int": "\\int_{#?}^{#?}",
+ "prod": "\\prod_{#?}^{#?}",
+ "sqrt": "\\sqrt{#?}",
+ // '∫': '\\int', // There's a alt-B command for this
+ "\u2206": "\\differentialD",
+ // @TODO: is \\diffD most common?
+ "\u2202": "\\differentialD",
+ // Functions
+ "arcsin": "\\arcsin",
+ "arccos": "\\arccos",
+ "arctan": "\\arctan",
+ "arcsec": "\\arcsec",
+ "arccsc": "\\arccsc",
+ "arsinh": "\\arsinh",
+ "arcosh": "\\arcosh",
+ "artanh": "\\artanh",
+ "arcsech": "\\arcsech",
+ "arccsch": "\\arccsch",
+ "arg": "\\arg",
+ "ch": "\\ch",
+ "cosec": "\\cosec",
+ "cosh": "\\cosh",
+ "cot": "\\cot",
+ "cotg": "\\cotg",
+ "coth": "\\coth",
+ "csc": "\\csc",
+ "ctg": "\\ctg",
+ "cth": "\\cth",
+ "sec": "\\sec",
+ "sinh": "\\sinh",
+ "sh": "\\sh",
+ "tanh": "\\tanh",
+ "tg": "\\tg",
+ "th": "\\th",
+ "sin": "\\sin",
+ "cos": "\\cos",
+ "tan": "\\tan",
+ "lg": "\\lg",
+ "lb": "\\lb",
+ "log": "\\log",
+ "ln": "\\ln",
+ "exp": "\\exp",
+ "lim": "\\lim_{#?}",
+ // Differentials
+ // According to ISO31/XI (ISO 80000-2), differentials should be upright
+ "dx": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\differentialD x"
+ },
+ "dy": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\differentialD y"
+ },
+ "dt": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\differentialD t"
+ },
+ // Logic
+ "AA": "\\forall",
+ "EE": "\\exists",
+ "!EE": "\\nexists",
+ "&&": "\\land",
+ // The shortcut for the greek letter "xi" is interfering with "x in"
+ "xin": {
+ after: "nothing+text+relop+punct+openfence+space",
+ value: "x \\in"
+ },
+ // The shortcut for `\int` is interfering with `\sin x`
+ "sint": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\sin t"
+ },
+ "in": {
+ after: "nothing+letter+closefence",
+ value: "\\in"
+ },
+ "!in": "\\notin",
+ // Sets
+ "NN": "\\mathbb{N}",
+ // Natural numbers
+ "ZZ": "\\Z",
+ // Integers
+ "QQ": "\\Q",
+ // Rational numbers
+ "RR": "\\R",
+ // Real numbers
+ "CC": "\\C",
+ // Complex numbers
+ // Operators
+ "xx": "\\times",
+ "+-": "\\pm",
+ // Relational operators
+ "\u2260": "\\ne",
+ "!=": "\\ne",
+ "\u2265": "\\ge",
+ ">=": "\\ge",
+ "\u2264": "\\le",
+ "<=": "\\le",
+ "<<": "\\ll",
+ ">>": "\\gg",
+ "~~": "\\approx",
+ // More operators
+ "\u2248": "\\approx",
+ "?=": "\\questeq",
+ "\xF7": "\\div",
+ "\xAC": "\\neg",
+ ":=": "\\coloneq",
+ "::": "\\Colon",
+ // Fences
+ "(:": "\\langle",
+ ":)": "\\rangle",
+ // More Greek letters
+ "beta": "\\beta",
+ "chi": "\\chi",
+ "epsilon": "\\epsilon",
+ "varepsilon": "\\varepsilon",
+ "eta": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\eta"
+ },
+ "gamma": "\\gamma",
+ "Gamma": "\\Gamma",
+ "iota": "\\iota",
+ "kappa": "\\kappa",
+ "lambda": "\\lambda",
+ "Lambda": "\\Lambda",
+ "mu": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\mu"
+ },
+ "nu": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\nu"
+ },
+ "\xB5": "\\mu",
+ // @TODO: or micro?
+ "phi": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\phi"
+ },
+ "Phi": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\Phi"
+ },
+ "varphi": "\\varphi",
+ "psi": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\psi"
+ },
+ "Psi": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\Psi"
+ },
+ "rho": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\rho"
+ },
+ "sigma": "\\sigma",
+ "Sigma": "\\Sigma",
+ "tau": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\tau"
+ },
+ "vartheta": "\\vartheta",
+ "upsilon": "\\upsilon",
+ "xi": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space",
+ value: "\\xi"
+ },
+ "Xi": {
+ after: "nothing+digit+function+frac+surd+binop+relop+punct+array+openfence+closefence+space+text",
+ value: "\\Xi"
+ },
+ "zeta": "\\zeta",
+ "omega": "\\omega",
+ "Omega": "\\Omega",
+ "\u03A9": "\\omega",
+ // @TODO: or ohm?
+ // More Logic
+ "forall": "\\forall",
+ "exists": "\\exists",
+ "!exists": "\\nexists",
+ ":.": "\\therefore",
+ // MORE FUNCTIONS
+ // 'arg': '\\arg',
+ "liminf": "\\liminf_{#?}",
+ "limsup": "\\limsup_{#?}",
+ "argmin": "\\operatorname*{arg~min}_{#?}",
+ "argmax": "\\operatorname*{arg~max}_{#?}",
+ "det": "\\det",
+ "mod": "\\bmod{#?}",
+ "(mod": "\\pmod{#?}",
+ "max": "\\max",
+ "min": "\\min",
+ "erf": "\\operatorname{erf}",
+ "erfc": "\\operatorname{erfc}",
+ "bessel": "\\operatorname{bessel}",
+ "mean": "\\operatorname{mean}",
+ "median": "\\operatorname{median}",
+ "fft": "\\operatorname{fft}",
+ "lcm": "\\operatorname{lcm}",
+ "gcd": "\\operatorname{gcd}",
+ "randomReal": "\\operatorname{randomReal}",
+ "randomInteger": "\\operatorname{randomInteger}",
+ "Re": "\\operatorname{Re}",
+ "Im": "\\operatorname{Im}",
+ // UNITS
+ "mm": {
+ after: "nothing+digit+operator",
+ value: "\\operatorname{mm}"
+ // Millimeter
+ },
+ "cm": {
+ after: "nothing+digit+operator",
+ value: "\\operatorname{cm}"
+ // Centimeter
+ },
+ "km": {
+ after: "nothing+digit+operator",
+ value: "\\operatorname{km}"
+ // Kilometer
+ },
+ "kg": {
+ after: "nothing+digit+operator",
+ value: "\\operatorname{kg}"
+ // Kilogram
+ },
+ // '||': '\\lor',
+ "...": "\\ldots",
+ // In general, use \ldots
+ "+...": "+\\cdots",
+ // ... but use \cdots after + ...
+ "-...": "-\\cdots",
+ // ... - and ...
+ "->...": "\\to\\cdots",
+ // ->
+ "-->...": "\\longrightarrow\\cdots",
+ "->": "\\to",
+ "|->": "\\mapsto",
+ "-->": "\\longrightarrow",
+ // '<-': '\\leftarrow',
+ "<--": "\\longleftarrow",
+ "=>": "\\Rightarrow",
+ "==>": "\\Longrightarrow",
+ // '<=': '\\Leftarrow', // CONFLICTS WITH LESS THAN OR EQUAL
+ "<=>": "\\Leftrightarrow",
+ "<->": "\\leftrightarrow",
+ "(.)": "\\odot",
+ "(+)": "\\oplus",
+ "(/)": "\\oslash",
+ "(*)": "\\otimes",
+ "(-)": "\\ominus",
+ // '(-)': '\\circleddash',
+ "||": "\\Vert",
+ "*": "\\cdot",
+ //
+ // ASCIIIMath
+ //
+ // Binary operation symbols
+ //
+ "**": "\\star",
+ "***": "\\ast",
+ "//": "\\slash",
+ "\\\\": "\\backslash",
+ "setminus": "\\backslash",
+ "|><": "\\ltimes",
+ "><|": "\\rtimes",
+ "|><|": "\\bowtie",
+ "-:": "\\div",
+ "divide": "\\div",
+ "@": "\\circ",
+ // 'o+': '\\oplus',
+ // 'ox': '\\otimes',
+ // 'o.': '\\odot',
+ "^^": "\\wedge",
+ "^^^": "\\bigwedge",
+ "vv": "\\vee",
+ "vvv": "\\bigvee",
+ "nn": "\\cap",
+ "nnn": "\\bigcap",
+ "uu": "\\cup",
+ "uuu": "\\bigcup",
+ // Binary relation symbols
+ "-=": "\\equiv",
+ "~=": "\\cong",
+ "lt": "<",
+ "lt=": "\\leq",
+ "gt": ">",
+ "gt=": "\\geq",
+ "-<": "\\prec",
+ "-lt": "\\prec",
+ "-<=": "\\preceq",
+ // '>-': '\\succ',
+ ">-=": "\\succeq",
+ "prop": "\\propto",
+ "diamond": "\\diamond",
+ "square": "\\square",
+ "iff": "\\iff",
+ "sub": "\\subset",
+ "sup": "\\supset",
+ "sube": "\\subseteq",
+ "supe": "\\supseteq",
+ "uarr": "\\uparrow",
+ "darr": "\\downarrow",
+ "rarr": "\\rightarrow",
+ "rArr": "\\Rightarrow",
+ "larr": "\\leftarrow",
+ "lArr": "\\Leftarrow",
+ "harr": "\\leftrightarrow",
+ "hArr": "\\Leftrightarrow",
+ "aleph": "\\aleph",
+ // Logic
+ "and": "\\land",
+ "or": "\\lor",
+ "not": "\\neg",
+ "_|_": "\\bot",
+ "TT": "\\top",
+ "|--": "\\vdash",
+ "|==": "\\models",
+ // Other functions
+ "|__": "\\lfloor",
+ "__|": "\\rfloor",
+ "|~": "\\lceil",
+ "~|": "\\rceil",
+ // Arrows
+ ">->": "\\rightarrowtail",
+ "->>": "\\twoheadrightarrow",
+ // \char"21A0
+ ">->>": "\\twoheadrightarrowtail",
+ // \char"2916
+ //
+ // Desmos Graphing Calculator
+ //
+ "frac": "\\frac{#?}{#?}",
+ "cbrt": "\\sqrt[3]{#?}",
+ "nthroot": "\\sqrt[#?]{#?}"
+};
+
+// src/formats/parse-math-string.ts
+function parseMathString(s, options) {
+ var _a3;
+ let format = (_a3 = options == null ? void 0 : options.format) != null ? _a3 : "auto";
+ if (format === "auto")
+ [format, s] = inferFormat(s);
+ if (format === "ascii-math") {
+ s = s.replace(/\u2061/gu, "");
+ s = s.replace(/\u3016/gu, "{");
+ s = s.replace(/\u3017/gu, "}");
+ s = s.replace(/([^\\])sinx/g, "$1\\sin x");
+ s = s.replace(/([^\\])cosx/g, "$1\\cos x ");
+ s = s.replace(/\u2013/g, "-");
+ return [
+ "ascii-math",
+ parseMathExpression(s, { inlineShortcuts: options == null ? void 0 : options.inlineShortcuts })
+ ];
+ }
+ return ["latex", s];
+}
+function parseMathExpression(s, options) {
+ var _a3, _b3, _c2;
+ if (!s)
+ return "";
+ let done = false;
+ let m;
+ const inlineShortcuts = (_a3 = options.inlineShortcuts) != null ? _a3 : INLINE_SHORTCUTS;
+ if (!done && (s.startsWith("^") || s.startsWith("_"))) {
+ m = parseMathArgument(s.slice(1), { inlineShortcuts, noWrap: true });
+ s = s[0] + "{" + m.match + "}";
+ s += parseMathExpression(m.rest, options);
+ done = true;
+ }
+ if (!done) {
+ m = s.match(/^(sqrt|\u221A)(.*)/);
+ if (m) {
+ m = parseMathArgument(m[2], { inlineShortcuts, noWrap: true });
+ const sqrtArgument = (_b3 = m.match) != null ? _b3 : "\\placeholder{}";
+ s = "\\sqrt{" + sqrtArgument + "}";
+ s += parseMathExpression(m.rest, options);
+ done = true;
+ }
+ }
+ if (!done) {
+ m = s.match(/^(\\cbrt|\u221B)(.*)/);
+ if (m) {
+ m = parseMathArgument(m[2], { inlineShortcuts, noWrap: true });
+ const sqrtArgument = (_c2 = m.match) != null ? _c2 : "\\placeholder{}";
+ s = "\\sqrt[3]{" + sqrtArgument + "}";
+ s += parseMathExpression(m.rest, options);
+ done = true;
+ }
+ }
+ if (!done) {
+ m = s.match(/^abs(.*)/);
+ if (m) {
+ m = parseMathArgument(m[1], { inlineShortcuts, noWrap: true });
+ s = "\\left|" + m.match + "\\right|";
+ s += parseMathExpression(m.rest, options);
+ done = true;
+ }
+ }
+ if (!done) {
+ m = s.match(/^["”“](.*?)["”“](.*)/);
+ if (m) {
+ s = "\\text{" + m[1] + "}";
+ s += parseMathExpression(m[2], options);
+ done = true;
+ }
+ }
+ if (!done) {
+ m = s.match(/^([^a-zA-Z\(\{\[\_\^\\\s"]+)(.*)/);
+ if (m) {
+ s = paddedShortcut(m[1], inlineShortcuts);
+ s += parseMathExpression(m[2], options);
+ done = true;
+ }
+ }
+ if (!done && /^([fgh])[^a-zA-Z]/.test(s)) {
+ m = parseMathArgument(s.slice(1), { inlineShortcuts, noWrap: true });
+ s = s[1] === "(" ? s[0] + "\\left(" + m.match + "\\right)" : s[0] + m.match;
+ s += parseMathExpression(m.rest, options);
+ done = true;
+ }
+ if (!done) {
+ m = s.match(/^([a-zA-Z]+)(.*)/);
+ if (m) {
+ s = paddedShortcut(m[1], inlineShortcuts);
+ s += parseMathExpression(m[2], options);
+ done = true;
+ }
+ }
+ if (!done) {
+ m = parseMathArgument(s, { inlineShortcuts, noWrap: true });
+ if (m.match && m.rest[0] === "/") {
+ const m2 = parseMathArgument(m.rest.slice(1), {
+ inlineShortcuts,
+ noWrap: true
+ });
+ if (m2.match) {
+ s = "\\frac{" + m.match + "}{" + m2.match + "}" + parseMathExpression(m2.rest, options);
+ }
+ done = true;
+ } else if (m.match) {
+ s = s.startsWith("(") ? "\\left(" + m.match + "\\right)" + parseMathExpression(m.rest, options) : m.match + parseMathExpression(m.rest, options);
+ done = true;
+ }
+ }
+ if (!done) {
+ m = s.match(/^(\s+)(.*)$/);
+ if (m) {
+ s = " " + parseMathExpression(m[2], options);
+ done = true;
+ }
+ }
+ return s;
+}
+function parseMathArgument(s, options) {
+ let match = "";
+ s = s.trim();
+ let rest = s;
+ let lFence = s.charAt(0);
+ let rFence = { "(": ")", "{": "}", "[": "]" }[lFence];
+ if (rFence) {
+ let level = 1;
+ let i = 1;
+ while (i < s.length && level > 0) {
+ if (s[i] === lFence)
+ level++;
+ if (s[i] === rFence)
+ level--;
+ i++;
+ }
+ if (level === 0) {
+ if (options.noWrap && lFence === "(")
+ match = parseMathExpression(s.substring(1, i - 1), options);
+ else {
+ if (lFence === "{" && rFence === "}") {
+ lFence = "\\{";
+ rFence = "\\}";
+ }
+ match = "\\left" + lFence + parseMathExpression(s.substring(1, i - 1), options) + "\\right" + rFence;
+ }
+ rest = s.slice(Math.max(0, i));
+ } else {
+ match = s.substring(1, i);
+ rest = "";
+ }
+ } else {
+ let m = s.match(/^([a-zA-Z]+)/);
+ if (m) {
+ let shortcut = getInlineShortcut(null, s, options.inlineShortcuts);
+ if (shortcut) {
+ shortcut = shortcut.replace("_{#?}", "");
+ shortcut = shortcut.replace("^{#?}", "");
+ return { match: shortcut, rest: s.slice(shortcut.length) };
+ }
+ }
+ m = s.match(/^([a-zA-Z])/);
+ if (m) {
+ return { match: m[1], rest: s.slice(1) };
+ }
+ m = s.match(/^(-)?\d+(\.\d*)?/);
+ if (m) {
+ return { match: m[0], rest: s.slice(m[0].length) };
+ }
+ if (!/^\\(left|right)/.test(s)) {
+ m = s.match(/^(\\[a-zA-Z]+)/);
+ if (m) {
+ rest = s.slice(m[1].length);
+ match = m[1];
+ }
+ }
+ }
+ return { match, rest };
+}
+function paddedShortcut(s, shortcuts) {
+ let result = getInlineShortcut(null, s, shortcuts);
+ if (result) {
+ result = result.replace("_{#?}", "");
+ result = result.replace("^{#?}", "");
+ result += " ";
+ } else
+ result = s;
+ return result;
+}
+var MODE_SHIFT_COMMANDS = [
+ ["\\[", "\\]"],
+ ["\\(", "\\)"],
+ ["$$", "$$"],
+ ["$", "$"],
+ // Must be *after* $$..$$
+ ["\\begin{math}", "\\end{math}"],
+ ["\\begin{displaymath}", "\\end{displaymath}"],
+ ["\\begin{equation}", "\\end{equation}"],
+ ["\\begin{equation*}", "\\end{equation*}"]
+];
+function trimModeShiftCommand(s) {
+ const trimedString = s.trim();
+ for (const mode of MODE_SHIFT_COMMANDS) {
+ if (trimedString.startsWith(mode[0]) && trimedString.endsWith(mode[1])) {
+ return [
+ true,
+ trimedString.substring(
+ mode[0].length,
+ trimedString.length - mode[1].length
+ )
+ ];
+ }
+ }
+ return [false, s];
+}
+function inferFormat(s) {
+ s = s.trim();
+ if (s.length <= 1)
+ return ["latex", s];
+ let hasLatexModeShiftCommand;
+ [hasLatexModeShiftCommand, s] = trimModeShiftCommand(s);
+ if (hasLatexModeShiftCommand)
+ return ["latex", s];
+ if (s.startsWith("`") && s.endsWith("`")) {
+ s = s.substring(1, s.length - 1);
+ return ["ascii-math", s];
+ }
+ if (s.includes("\\")) {
+ return ["latex", s];
+ }
+ if (/\$.+\$/.test(s)) {
+ return ["latex", `\\text{${s}}`];
+ }
+ return [void 0, s];
+}
+
+// src/editor-mathfield/mode-editor.ts
+var CLIPBOARD_LATEX_BEGIN = "$$";
+var CLIPBOARD_LATEX_END = "$$";
+var defaultExportHook = (_from, latex, _range) => {
+ if (!MODE_SHIFT_COMMANDS.some(
+ (x) => latex.startsWith(x[0]) && latex.endsWith(x[1])
+ ))
+ latex = `${CLIPBOARD_LATEX_BEGIN} ${latex} ${CLIPBOARD_LATEX_END}`;
+ return latex;
+};
+var _ModeEditor = class _ModeEditor {
+ constructor(name) {
+ _ModeEditor._modes[name] = this;
+ }
+ static onPaste(mode, mathfield, data) {
+ var _a3;
+ if (!mathfield.contentEditable && mathfield.userSelect === "none") {
+ mathfield.model.announce("plonk");
+ return false;
+ }
+ if (typeof data === "string") {
+ const dataTransfer = new DataTransfer();
+ dataTransfer.setData("text/plain", data);
+ data = dataTransfer;
+ }
+ const redispatchedEvent = new ClipboardEvent("paste", {
+ clipboardData: data,
+ cancelable: true
+ });
+ if (!((_a3 = mathfield.host) == null ? void 0 : _a3.dispatchEvent(redispatchedEvent)))
+ return false;
+ return _ModeEditor._modes[mode].onPaste(mathfield, data);
+ }
+ /** Call this method from a menu */
+ static copyToClipboard(mathfield, format) {
+ if (!mathfield.contentEditable && mathfield.userSelect === "none") {
+ mathfield.model.announce("plonk");
+ return;
+ }
+ const model = mathfield.model;
+ const exportRange = model.selectionIsCollapsed ? [0, model.lastOffset] : range(model.selection);
+ const latex = model.getValue(exportRange, format);
+ navigator.clipboard.writeText(latex).then(
+ () => {
+ },
+ () => mathfield.model.announce("plonk")
+ );
+ }
+ /** Call this method in response to a clipboard event */
+ static onCopy(mathfield, ev) {
+ var _a3;
+ if (!ev.clipboardData)
+ return;
+ if (!mathfield.contentEditable && mathfield.userSelect === "none") {
+ mathfield.model.announce("plonk");
+ return;
+ }
+ const model = mathfield.model;
+ const exportRange = model.selectionIsCollapsed ? [0, model.lastOffset] : range(model.selection);
+ let atoms = model.getAtoms(exportRange);
+ if (atoms.every((x) => x.mode === "text" || !x.mode)) {
+ ev.clipboardData.setData(
+ "text/plain",
+ atoms.filter((x) => x instanceof TextAtom).map((x) => x.value).join("")
+ );
+ } else if (atoms.every((x) => x.mode === "latex")) {
+ ev.clipboardData.setData(
+ "text/plain",
+ model.getAtoms(exportRange, { includeChildren: true }).map((x) => {
+ var _a4;
+ return (_a4 = x.value) != null ? _a4 : "";
+ }).join("")
+ );
+ } else {
+ let latex;
+ if (atoms.length === 1 && atoms[0].verbatimLatex !== void 0)
+ latex = atoms[0].verbatimLatex;
+ else
+ latex = model.getValue(exportRange, "latex-expanded");
+ ev.clipboardData.setData("application/x-latex", latex);
+ try {
+ ev.clipboardData.setData(
+ "text/plain",
+ mathfield.options.onExport(mathfield, latex, exportRange)
+ );
+ } catch (e) {
+ }
+ if (atoms.length === 1) {
+ const atom = atoms[0];
+ if (atom.type === "root" || atom.type === "group")
+ atoms = atom.body.filter((x) => x.type !== "first");
+ }
+ try {
+ ev.clipboardData.setData(
+ "application/json+mathlive",
+ JSON.stringify(atoms.map((x) => x.toJson()))
+ );
+ } catch (e) {
+ }
+ if ((_a3 = window[Symbol.for("io.cortexjs.compute-engine")]) == null ? void 0 : _a3.ComputeEngine) {
+ const ce = window.MathfieldElement.computeEngine;
+ if (ce) {
+ try {
+ const options = ce.jsonSerializationOptions;
+ ce.jsonSerializationOptions = { metadata: ["latex"] };
+ const expr = ce.parse(
+ model.getValue(exportRange, "latex-unstyled")
+ );
+ ce.jsonSerializationOptions = options;
+ const mathJson = JSON.stringify(expr.json);
+ if (mathJson)
+ ev.clipboardData.setData("application/json", mathJson);
+ } catch (e) {
+ }
+ }
+ }
+ }
+ ev.preventDefault();
+ }
+ static insert(model, text, options = {}) {
+ var _a3;
+ const mode = options.mode === "auto" ? model.mode : (_a3 = options.mode) != null ? _a3 : model.mode;
+ return _ModeEditor._modes[mode].insert(model, text, options);
+ }
+ onPaste(_mathfield, _data) {
+ return false;
+ }
+ insert(_model, _text, _options) {
+ return false;
+ }
+};
+_ModeEditor._modes = {};
+var ModeEditor = _ModeEditor;
+
+// src/editor/keybindings-definitions.ts
+var DEFAULT_KEYBINDINGS = [
+ { key: "left", command: "moveToPreviousChar" },
+ { key: "right", command: "moveToNextChar" },
+ { key: "up", command: "moveUp" },
+ { key: "down", command: "moveDown" },
+ { key: "shift+[ArrowLeft]", command: "extendSelectionBackward" },
+ { key: "shift+[ArrowRight]", command: "extendSelectionForward" },
+ { key: "shift+[ArrowUp]", command: "extendSelectionUpward" },
+ { key: "shift+[ArrowDown]", command: "extendSelectionDownward" },
+ { key: "[Backspace]", command: "deleteBackward" },
+ { key: "alt+[Delete]", command: "deleteBackward" },
+ { key: "[Delete]", command: "deleteForward" },
+ { key: "alt+[Backspace]", command: "deleteForward" },
+ { key: "alt+[ArrowLeft]", command: "moveToPreviousWord" },
+ { key: "alt+[ArrowRight]", command: "moveToNextWord" },
+ { key: "shift+alt+[ArrowLeft]", command: "extendToPreviousWord" },
+ { key: "shift+alt+[ArrowRight]", command: "extendToNextWord" },
+ { key: "ctrl+[ArrowLeft]", command: "moveToGroupStart" },
+ { key: "ctrl+[ArrowRight]", command: "moveToGroupEnd" },
+ { key: "shift+ctrl+[ArrowLeft]", command: "extendToGroupStart" },
+ { key: "shift+ctrl+[ArrowRight]", command: "extendToGroupEnd" },
+ { key: "[Home]", command: "moveToMathfieldStart" },
+ { key: "cmd+[ArrowLeft]", command: "moveToMathfieldStart" },
+ { key: "shift+[Home]", command: "extendToMathFieldStart" },
+ { key: "shift+cmd+[ArrowLeft]", command: "extendToMathFieldStart" },
+ { key: "[End]", command: "moveToMathfieldEnd" },
+ { key: "cmd+[ArrowRight]", command: "moveToMathfieldEnd" },
+ { key: "shift+[End]", command: "extendToMathFieldEnd" },
+ { key: "shift+cmd+[ArrowRight]", command: "extendToMathFieldEnd" },
+ { key: "[Pageup]", command: "moveToGroupStart" },
+ { key: "[Pagedown]", command: "moveToGroupEnd" },
+ { key: "[Tab]", command: "moveToNextGroup" },
+ {
+ key: "shift+[Tab]",
+ command: "moveToPreviousGroup"
+ },
+ { key: "[Escape]", ifMode: "math", command: ["switchMode", "latex"] },
+ { key: "[Escape]", ifMode: "text", command: ["switchMode", "latex"] },
+ {
+ key: "[Escape]",
+ ifMode: "latex",
+ command: ["complete", "complete", { selectItem: "true" }]
+ },
+ // Accept the entry (without the suggestion) and select
+ {
+ key: "\\",
+ ifMode: "math",
+ command: ["switchMode", "latex", "\\"]
+ },
+ // { key: '[Backslash]', ifMode: 'math', command: ['switchMode', 'latex'] },
+ {
+ key: "[IntlBackslash]",
+ ifMode: "math",
+ command: ["switchMode", "latex", "\\"]
+ },
+ // On UK QWERTY keyboards
+ {
+ key: "[Tab]",
+ ifMode: "latex",
+ command: ["complete", "accept-suggestion"]
+ },
+ // Complete the suggestion
+ { key: "[Return]", ifMode: "latex", command: "complete" },
+ { key: "[Enter]", ifMode: "latex", command: "complete" },
+ {
+ key: "shift+[Escape]",
+ ifMode: "latex",
+ command: ["complete", "reject"]
+ },
+ // Some keyboards can't generate
+ // this combination, for example in 60% keyboards it is mapped to ~
+ { key: "[ArrowDown]", ifMode: "latex", command: "nextSuggestion" },
+ // { key: 'ios:command:[Tab]', ifMode: 'latex',command: 'nextSuggestion' },
+ { key: "[ArrowUp]", ifMode: "latex", command: "previousSuggestion" },
+ { key: "ctrl+a", ifPlatform: "!macos", command: "selectAll" },
+ { key: "cmd+a", command: "selectAll" },
+ // Rare keys on some extended keyboards
+ { key: "[Cut]", command: "cutToClipboard" },
+ { key: "[Copy]", command: "copyToClipboard" },
+ { key: "[Paste]", command: "pasteFromClipboard" },
+ { key: "[Clear]", command: "deleteBackward" },
+ { key: "[Undo]", command: "undo" },
+ { key: "[Redo]", command: "redo" },
+ { key: "[EraseEof]", command: "deleteToGroupEnd" },
+ // Safari on iOS does not send cut/copy/paste commands when the mathfield
+ // is focused, so intercept the keyboard shortcuts.
+ // This is less desirable because the full clipboard API is not accessible
+ // by this path, and user authorization is required.
+ { key: "ctrl+x", ifPlatform: "ios", command: "cutToClipboard" },
+ { key: "cmd+x", ifPlatform: "ios", command: "cutToClipboard" },
+ { key: "ctrl+c", ifPlatform: "ios", command: "copyToClipboard" },
+ { key: "cmd+c", ifPlatform: "ios", command: "copyToClipboard" },
+ { key: "ctrl+v", ifPlatform: "ios", command: "pasteFromClipboard" },
+ { key: "cmd+v", ifPlatform: "ios", command: "pasteFromClipboard" },
+ { key: "ctrl+z", ifPlatform: "!macos", command: "undo" },
+ { key: "cmd+z", command: "undo" },
+ { key: "ctrl+y", ifPlatform: "!macos", command: "redo" },
+ // ARIA recommendation
+ { key: "shift+cmd+y", command: "redo" },
+ { key: "shift+ctrl+z", ifPlatform: "!macos", command: "redo" },
+ { key: "shift+cmd+z", command: "redo" },
+ // EMACS/MACOS BINDINGS
+ { key: "ctrl+b", ifPlatform: "macos", command: "moveToPreviousChar" },
+ { key: "ctrl+f", ifPlatform: "macos", command: "moveToNextChar" },
+ { key: "ctrl+p", ifPlatform: "macos", command: "moveUp" },
+ { key: "ctrl+n", ifPlatform: "macos", command: "moveDown" },
+ { key: "ctrl+a", ifPlatform: "macos", command: "moveToMathfieldStart" },
+ { key: "ctrl+e", ifPlatform: "macos", command: "moveToMathfieldEnd" },
+ {
+ key: "shift+ctrl+b",
+ ifPlatform: "macos",
+ command: "extendSelectionBackward"
+ },
+ {
+ key: "shift+ctrl+f",
+ ifPlatform: "macos",
+ command: "extendSelectionForward"
+ },
+ {
+ key: "shift+ctrl+p",
+ ifPlatform: "macos",
+ command: "extendSelectionUpward"
+ },
+ {
+ key: "shift+ctrl+n",
+ ifPlatform: "macos",
+ command: "extendSelectionDownward"
+ },
+ {
+ key: "shift+ctrl+a",
+ ifPlatform: "macos",
+ command: "extendToMathFieldStart"
+ },
+ {
+ key: "shift+ctrl+e",
+ ifPlatform: "macos",
+ command: "extendToMathFieldEnd"
+ },
+ { key: "alt+ctrl+b", ifPlatform: "macos", command: "moveToPreviousWord" },
+ { key: "alt+ctrl+f", ifPlatform: "macos", command: "moveToNextWord" },
+ {
+ key: "shift+alt+ctrl+b",
+ ifPlatform: "macos",
+ command: "extendToPreviousWord"
+ },
+ {
+ key: "shift+alt+ctrl+f",
+ ifPlatform: "macos",
+ command: "extendToNextWord"
+ },
+ { key: "ctrl+h", ifPlatform: "macos", command: "deleteBackward" },
+ { key: "ctrl+d", ifPlatform: "macos", command: "deleteForward" },
+ { key: "ctrl+l", ifPlatform: "macos", command: "scrollIntoView" },
+ // { key: 'ctrl+t', ifPlatform: 'macos', command: 'transpose' },
+ // WOLFRAM MATHEMATICA BINDINGS
+ {
+ key: "ctrl+[Digit2]",
+ ifMode: "math",
+ command: ["insert", "\\sqrt{#0}"]
+ },
+ { key: "ctrl+[Digit5]", ifMode: "math", command: "moveToOpposite" },
+ { key: "ctrl+[Digit6]", ifMode: "math", command: "moveToSuperscript" },
+ { key: "ctrl+[Return]", ifMode: "math", command: "addRowAfter" },
+ { key: "ctrl+[Enter]", ifMode: "math", command: "addRowAfter" },
+ { key: "cmd+[Return]", ifMode: "math", command: "addRowAfter" },
+ { key: "cmd+[Enter]", ifMode: "math", command: "addRowAfter" },
+ // Excel keybindings:
+ // shift+space: select entire row, ctrl+space: select an entire column
+ // shift+ctrl++ or ctrl+numpad+
+ // ctrl+- to delete a row or columns
+ // MATHLIVE BINDINGS
+ { key: "alt+p", ifMode: "math", command: ["insert", "\\pi"] },
+ { key: "alt+v", ifMode: "math", command: ["insert", "\\sqrt{#0}"] },
+ { key: "alt+o", ifMode: "math", command: ["insert", "\\emptyset"] },
+ {
+ key: "alt+d",
+ ifMode: "math",
+ command: ["insert", "\\differentialD"]
+ },
+ {
+ key: "shift+alt+o",
+ ifMode: "math",
+ command: ["insert", "\\varnothing"]
+ },
+ {
+ key: "shift+alt+d",
+ ifMode: "math",
+ command: ["insert", "\\partial"]
+ },
+ {
+ key: "alt+[Backslash]",
+ ifMode: "math",
+ command: ["insert", "\\backslash"]
+ },
+ // "|" key} override command mode
+ {
+ key: "[NumpadDivide]",
+ ifMode: "math",
+ command: ["insert", "\\frac{#@}{#?}"]
+ },
+ // ??
+ {
+ key: "alt+[NumpadDivide]",
+ ifMode: "math",
+ command: ["insert", "\\frac{#?}{#@}"]
+ },
+ // ??
+ // Accessibility
+ { key: "shift+alt+k", command: "toggleKeystrokeCaption" },
+ { key: "alt+[Space]", command: "toggleContextMenu" },
+ { key: "alt+shift+[Space]", command: "toggleVirtualKeyboard" },
+ // Note: On Mac OS (as of 10.12), there is a bug/behavior that causes
+ // a beep to be generated with certain command+control key combinations.
+ // The workaround is to create a default binding file to silence them.
+ // In ~/Library/KeyBindings/DefaultKeyBinding.dict add these entries:
+ //
+ // {
+ // "^@\UF701" = "noop:";
+ // "^@\UF702" = "noop:";
+ // "^@\UF703" = "noop:";
+ // }
+ {
+ key: "alt+ctrl+[ArrowUp]",
+ command: ["speak", "all", { withHighlighting: false }]
+ },
+ {
+ key: "alt+ctrl+[ArrowDown]",
+ command: ["speak", "selection", { withHighlighting: false }]
+ },
+ //
+ // Punctuations and some non-alpha key combinations
+ // only work with specific keyboard layouts
+ //
+ {
+ key: "shift+[Quote]",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: ["switchMode", "text", "", ""]
+ },
+ {
+ key: "shift+alt+[KeyT]",
+ ifMode: "math",
+ command: ["switchMode", "text", "", ""]
+ },
+ {
+ key: "shift+[Quote]",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "text",
+ command: ["switchMode", "math", "", ""]
+ },
+ {
+ key: "shift+alt+[KeyT]",
+ ifMode: "text",
+ command: ["switchMode", "math", "", ""]
+ },
+ {
+ key: "/",
+ ifMode: "math",
+ command: ["insert", "\\frac{#@}{#?}"]
+ },
+ {
+ key: "alt+/",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: ["insert", "/"]
+ },
+ {
+ key: "alt+shift+/",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: ["insert", "/"]
+ },
+ {
+ key: "alt+[BracketLeft]",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: ["insert", "\\left\\lbrack #0 \\right\\rbrack"]
+ },
+ // ??
+ {
+ key: "ctrl+[Minus]",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: "moveToSubscript"
+ },
+ // ??
+ {
+ key: "shift+alt+[BracketLeft]",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: ["insert", "\\left\\lbrace #0 \\right\\rbrace"]
+ },
+ // ??
+ {
+ key: "ctrl+;",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: "addRowAfter"
+ },
+ {
+ key: "cmd+;",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: "addRowAfter"
+ },
+ {
+ key: "shift+ctrl+;",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: "addRowBefore"
+ },
+ {
+ key: "shift+cmd+;",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: "addRowBefore"
+ },
+ {
+ key: "ctrl+[Backspace]",
+ ifMode: "math",
+ command: "removeRow"
+ },
+ {
+ key: "cmd+[Backspace]",
+ ifMode: "math",
+ command: "removeRow"
+ },
+ // {
+ // key: 'ctrl+[Comma]',
+ // ifLayout: ['apple.en-intl', 'windows.en-intl', 'linux.en'],
+ // ifMode: 'math',
+ // command: 'addColumnAfter',
+ // },
+ // {
+ // key: 'cmd+[Comma]',
+ // ifLayout: ['apple.en-intl', 'windows.en-intl', 'linux.en'],
+ // ifMode: 'math',
+ // command: 'addColumnAfter',
+ // },
+ // {
+ // key: 'shift+ctrl+[Comma]',
+ // ifLayout: ['apple.en-intl', 'windows.en-intl', 'linux.en'],
+ // ifMode: 'math',
+ // command: 'addColumnBefore',
+ // },
+ // {
+ // key: 'shift+cmd+[Comma]',
+ // ifLayout: ['apple.en-intl', 'windows.en-intl', 'linux.en'],
+ // ifMode: 'math',
+ // command: 'addColumnBefore',
+ // },
+ { key: "alt+[Tab]", ifMode: "math", command: "addColumnAfter" },
+ { key: "shift+alt+[Tab]", ifMode: "math", command: "addColumnBefore" },
+ { key: "alt+[Enter]", ifMode: "math", command: "addRowAfter" },
+ { key: "shift+alt+[Enter]", ifMode: "math", command: "addRowBefore" },
+ { key: "alt+[Return]", ifMode: "math", command: "addRowAfter" },
+ { key: "shift+alt+[Return]", ifMode: "math", command: "addRowBefore" },
+ {
+ key: "shift+[Backspace]",
+ ifMode: "math",
+ command: "removeColumn"
+ },
+ {
+ key: "alt+[Digit5]",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: ["insert", "$\\infty"]
+ },
+ // "%" key
+ {
+ key: "alt+[Digit9]",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: ["insert", "("]
+ },
+ // "(" key} override smartFence
+ {
+ key: "alt+[Digit0]",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: ["insert", ")"]
+ },
+ // ")" key} override smartFence
+ {
+ key: "alt+|",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: ["insert", "|"]
+ },
+ // "|" key} override smartFence
+ {
+ key: "shift+[Backquote]",
+ ifLayout: ["apple.en-intl", "windows.en-intl", "linux.en"],
+ ifMode: "math",
+ command: ["insert", "\\~"]
+ },
+ // ??
+ {
+ key: "[Backquote]",
+ ifLayout: ["windows.french", "linux.french"],
+ ifMode: "math",
+ command: ["insert", "^2"]
+ },
+ {
+ key: "[Backquote]",
+ ifLayout: ["windows.german", "linux.german"],
+ ifMode: "math",
+ command: ["insert", "^"]
+ },
+ {
+ key: "[IntlBackslash]",
+ ifLayout: ["apple.german"],
+ ifMode: "math",
+ command: ["insert", "^"]
+ }
+];
+var REVERSE_KEYBINDINGS = {
+ "\\sqrt": ["alt+v", "ctrl+[Digit2]"],
+ "\\pi": "alt+p",
+ "\\infty": "alt+[Digit5]",
+ "\\differentialD": "alt+d",
+ "\\partial": "shift+alt+d",
+ "\\frac": "Slash",
+ "\\emptyset": "alt+o",
+ "\\varnothing": "shift+alt+o",
+ "\\~": "~"
+};
+
+// src/editor-mathfield/utils.ts
+function isValidMathfield(mf) {
+ var _a3;
+ return ((_a3 = mf.element) == null ? void 0 : _a3.mathfield) === mf;
+}
+function findElementWithCaret(element) {
+ var _a3, _b3;
+ return (_b3 = (_a3 = element.querySelector(".ML__caret")) != null ? _a3 : element.querySelector(".ML__text-caret")) != null ? _b3 : element.querySelector(".ML__latex-caret");
+}
+function getCaretPoint(element) {
+ const caret = findElementWithCaret(element);
+ if (!caret)
+ return null;
+ const bounds = caret.getBoundingClientRect();
+ return {
+ x: bounds.right,
+ y: bounds.bottom,
+ height: bounds.height
+ };
+}
+function branchId(atom) {
+ var _a3;
+ if (!atom.parent)
+ return "root";
+ let result = (_a3 = atom.parent.id) != null ? _a3 : "";
+ result += typeof atom.parentBranch === "string" ? "-" + atom.parentBranch : `-${atom.parentBranch[0]}/${atom.parentBranch[0]}`;
+ return result;
+}
+function adjustForScrolling(mathfield, rect, scaleFactor) {
+ if (!rect)
+ return null;
+ const fieldRect = mathfield.field.getBoundingClientRect();
+ const w = rect.right - rect.left;
+ const h = rect.bottom - rect.top;
+ const left = Math.ceil(
+ rect.left - fieldRect.left + mathfield.field.scrollLeft * scaleFactor
+ );
+ const top = Math.ceil(rect.top - fieldRect.top);
+ return { left, right: left + w, top, bottom: top + h };
+}
+function getNodeBounds(node) {
+ const bounds = node.getBoundingClientRect();
+ const marginRight = parseInt(getComputedStyle(node).marginRight);
+ const result = {
+ top: bounds.top - 1,
+ bottom: bounds.bottom,
+ left: bounds.left,
+ right: bounds.right - 1 + marginRight
+ };
+ if (node.children.length === 0 || node.tagName.toUpperCase() === "SVG")
+ return result;
+ for (const child of node.children) {
+ if (child.nodeType === 1 && "atomId" in child.dataset && !child.classList.contains("pstrut")) {
+ const r = getNodeBounds(child);
+ result.left = Math.min(result.left, r.left);
+ result.right = Math.max(result.right, r.right);
+ result.top = Math.min(result.top, r.top);
+ result.bottom = Math.max(result.bottom, r.bottom);
+ }
+ }
+ return result;
+}
+function getAtomBounds(mathfield, atom) {
+ var _a3, _b3;
+ if (!atom.id)
+ return null;
+ let result = (_b3 = (_a3 = mathfield.atomBoundsCache) == null ? void 0 : _a3.get(atom.id)) != null ? _b3 : null;
+ if (result !== null)
+ return result;
+ const node = mathfield.field.querySelector(`[data-atom-id="${atom.id}"]`);
+ result = node ? getNodeBounds(node) : null;
+ if (mathfield.atomBoundsCache) {
+ if (result)
+ mathfield.atomBoundsCache.set(atom.id, result);
+ else
+ mathfield.atomBoundsCache.delete(atom.id);
+ }
+ return result != null ? result : null;
+}
+function getRangeBounds(mathfield, range2, options) {
+ const rects = /* @__PURE__ */ new Map();
+ for (const atom of mathfield.model.getAtoms(range2, {
+ includeChildren: true
+ })) {
+ if ((options == null ? void 0 : options.excludeAtomsWithBackground) && atom.style.backgroundColor)
+ continue;
+ const field = mathfield.field;
+ const offsetWidth = field.offsetWidth;
+ const actualWidth = Math.floor(field.getBoundingClientRect().width);
+ let scaleFactor = actualWidth / offsetWidth;
+ scaleFactor = isNaN(scaleFactor) ? 1 : scaleFactor;
+ const bounds = adjustForScrolling(
+ mathfield,
+ getAtomBounds(mathfield, atom),
+ scaleFactor
+ );
+ if (bounds) {
+ const id = branchId(atom);
+ if (rects.has(id)) {
+ const r = rects.get(id);
+ rects.set(id, {
+ left: Math.min(r.left, bounds.left),
+ right: Math.max(r.right, bounds.right),
+ top: Math.min(r.top, bounds.top),
+ bottom: Math.max(r.bottom, bounds.bottom)
+ });
+ } else
+ rects.set(id, bounds);
+ }
+ }
+ return [...rects.values()];
+}
+function getSelectionBounds(mathfield, options) {
+ return mathfield.model.selection.ranges.reduce(
+ (acc, x) => acc.concat(...getRangeBounds(mathfield, x, options)),
+ []
+ );
+}
+function validateOrigin(origin, originValidator) {
+ if (origin === "*" || originValidator === "none")
+ return true;
+ if (originValidator === "same-origin")
+ return !window.origin || origin === window.origin;
+ if (typeof originValidator === "function")
+ return originValidator(origin);
+ return false;
+}
+function getLocalDOMRect(el) {
+ let offsetTop = 0;
+ let offsetLeft = 0;
+ const width = el.offsetWidth;
+ const height = el.offsetHeight;
+ while (el instanceof HTMLElement) {
+ offsetTop += el.offsetTop;
+ offsetLeft += el.offsetLeft;
+ el = el.offsetParent;
+ }
+ return new DOMRect(offsetLeft, offsetTop, width, height);
+}
+
+// css/mathfield.less
+var mathfield_default = `@keyframes ML__caret-blink {
+ 0%,
+ 100% {
+ opacity: 1;
+ }
+ 50% {
+ opacity: 0;
+ }
+}
+.ML__container {
+ display: inline-flex;
+ flex-flow: row;
+ justify-content: space-between;
+ align-items: flex-end;
+ min-height: 39px;
+ /* Need some room for the virtual keyboard toggle */
+ width: 100%;
+ /* Encourage browsers to consider allocating a hardware accelerated
+ layer for this element. */
+ isolation: isolate;
+ /* Prevent the browser from trying to interpret touch gestures in the field */
+ /* "Disabling double-tap to zoom removes the need for browsers to
+ delay the generation of click events when the user taps the screen." */
+ touch-action: none;
+ --_caret-color: var(--caret-color, hsl(var(--_hue), 40%, 49%));
+ --_selection-color: var(--selection-color, #000);
+ --_selection-background-color: var(--selection-background-color, hsl(var(--_hue), 70%, 85%));
+ --_text-highlight-background-color: var(--highlight-text, hsla(var(--_hue), 40%, 50%, 0.1));
+ --_contains-highlight-background-color: var(--contains-highlight-background-color, hsl(var(--_hue), 40%, 95%));
+ --_smart-fence-color: var(--smart-fence-color, currentColor);
+ --_smart-fence-opacity: var(--smart-fence-opacity, 0.5);
+ --_latex-color: var(--latex-color, hsl(var(--_hue), 80%, 40%));
+ --_correct-color: var(--correct-color, #10a000);
+ --_incorrect-color: var(--incorrect-color, #a01b00);
+ --_composition-background-color: var(--composition-background-color, #fff1c2);
+ --_composition-text-color: var(--composition-text-color, black);
+ --_composition-underline-color: var(--composition-underline-color, transparent);
+}
+/* This is the actual field content (formula) */
+.ML__content {
+ display: flex;
+ align-items: center;
+ align-self: center;
+ position: relative;
+ overflow: hidden;
+ padding: 2px 3px 2px 1px;
+ width: 100%;
+}
+.ML__virtual-keyboard-toggle,
+.ML__menu-toggle {
+ box-sizing: border-box;
+ display: flex;
+ align-self: center;
+ align-items: center;
+ flex-shrink: 0;
+ flex-direction: column;
+ justify-content: center;
+ width: 34px;
+ height: 34px;
+ padding: 0;
+ margin-right: 4px;
+ cursor: pointer;
+ /* Avoid some weird blinking with :hover */
+ border-radius: 8px;
+ border: 1px solid transparent;
+ transition: background 0.2s cubic-bezier(0.64, 0.09, 0.08, 1);
+ color: hsl(var(--_hue), 40%, 50%);
+ fill: currentColor;
+ background: transparent;
+}
+.ML__virtual-keyboard-toggle:hover,
+.ML__menu-toggle:hover {
+ background: hsla(0, 0%, 70%, 0.3);
+ color: #333;
+ fill: currentColor;
+}
+.ML__virtual-keyboard-toggle > span,
+.ML__menu-toggle > span {
+ display: flex;
+ align-self: center;
+ align-items: center;
+}
+/* The invisible element used to capture keyboard events. We're just trying
+ really hard to make sure it doesn't show. */
+.ML__keyboard-sink {
+ display: inline-block;
+ resize: none;
+ outline: none;
+ border: none;
+ /* Need these for Microsoft Edge */
+ position: fixed;
+ clip: rect(0 0 0 0);
+ /* Need this to prevent iOS Safari from auto-zooming */
+ font-size: 1em;
+ font-family: KaTeX_Main;
+ line-height: 0.5;
+ /* On Chromium, if this is 0, no keyboard events are received */
+}
+[part="placeholder"] {
+ color: var(--neutral-400);
+}
+.ML__composition {
+ background: var(--_composition-background-color);
+ color: var(--_composition-text-color);
+ text-decoration: underline var(--_composition-underline-color);
+}
+.ML__caret::after {
+ content: '';
+ visibility: hidden;
+ width: 0;
+ display: inline-block;
+ height: 0.76em;
+ --_caret-width: clamp(2px, 0.08em, 10px);
+ border: none;
+ border-radius: calc(var(--_caret-width) / 2);
+ border-right: var(--_caret-width) solid var(--_caret-color);
+ margin-right: calc(-1 * var(--_caret-width));
+ position: relative;
+ left: -0.045em;
+ bottom: -0.05em;
+ animation: ML__caret-blink 1.05s step-end forwards infinite;
+}
+.ML__text-caret::after {
+ content: '';
+ visibility: hidden;
+ width: 0;
+ display: inline-block;
+ height: 0.76em;
+ --_caret-width: clamp(2px, 0.08em, 10px);
+ border: none;
+ border-radius: calc(var(--_caret-width) / 2);
+ border-right: var(--_caret-width) solid var(--_caret-color);
+ margin-right: calc(-1 * var(--_caret-width));
+ position: relative;
+ left: -0.045em;
+ bottom: -0.05em;
+ animation: ML__caret-blink 1.05s step-end forwards infinite;
+}
+.ML__latex-caret::after {
+ content: '';
+ visibility: hidden;
+ --_caret-width: clamp(2px, 0.08em, 10px);
+ border: none;
+ border-radius: calc(var(--_caret-width) / 2);
+ border-right: var(--_caret-width) solid var(--_latex-color);
+ margin-right: calc(-1 * var(--_caret-width));
+ position: relative;
+ left: -0.019em;
+ animation: ML__caret-blink 1.05s step-end forwards infinite;
+}
+.ML__focused .ML__latex-caret::after,
+.ML__focused .ML__text-caret::after,
+.ML__focused .ML__caret::after {
+ visibility: visible;
+}
+.ML__focused .ML__text {
+ background: var(--_text-highlight-background-color);
+}
+/* When using smartFence, the anticipated closing fence is displayed
+with this style */
+.ML__smart-fence__close {
+ opacity: var(--_smart-fence-opacity);
+ color: var(--_smart-fence-color);
+}
+.ML__selected,
+.ML__focused .ML__selected .ML__contains-caret,
+.ML__focused .ML__selected .ML__smart-fence__close,
+.ML__focused .ML__selected .ML__placeholder {
+ color: var(--_selection-color);
+ opacity: 1;
+}
+.ML__selection {
+ box-sizing: border-box;
+ background: var(--_selection-background-color) !important;
+}
+.ML__contains-caret.ML__close,
+.ML__contains-caret.ML__open,
+.ML__contains-caret > .ML__close,
+.ML__contains-caret > .ML__open,
+.ML__contains-caret .ML__sqrt-sign,
+.ML__contains-caret .ML__sqrt-line {
+ color: var(--_caret-color);
+}
+.ML__contains-highlight {
+ box-sizing: border-box;
+ background: transparent;
+}
+.ML__focused .ML__contains-highlight {
+ background: var(--_contains-highlight-background-color);
+}
+.ML__raw-latex {
+ font-family: 'Berkeley Mono', 'IBM Plex Mono', 'Source Code Pro', Consolas, 'Roboto Mono', Menlo, 'Bitstream Vera Sans Mono', 'DejaVu Sans Mono', Monaco, Courier, monospace;
+ font-weight: 400;
+ font-size: 0.8em;
+ letter-spacing: -0.05em;
+ color: var(--_latex-color);
+}
+.ML__suggestion {
+ color: var(--neutral-500);
+}
+.ML__virtual-keyboard-toggle.is-visible.is-pressed:hover {
+ background: hsl(var(--_hue), 25%, 35%);
+ color: #fafafa;
+ fill: currentColor;
+}
+.ML__virtual-keyboard-toggle:focus {
+ outline: none;
+ border-radius: 8px;
+ border: 2px solid hsl(var(--_hue), 40%, 50%);
+}
+.ML__virtual-keyboard-toggle.is-pressed,
+.ML__virtual-keyboard-toggle.is-active:hover,
+.ML__virtual-keyboard-toggle.is-active {
+ background: hsl(var(--_hue), 25%, 35%);
+ color: #fafafa;
+ fill: currentColor;
+}
+/* Add an attribute 'data-tooltip' to automatically show a
+ tooltip over a element on hover.
+*/
+[data-tooltip] {
+ position: relative;
+}
+[data-tooltip]::after {
+ content: attr(data-tooltip);
+ position: absolute;
+ display: block;
+ z-index: 2;
+ pointer-events: none;
+ right: auto;
+ top: calc(-100% - 4px);
+ width: max-content;
+ max-width: 200px;
+ padding: 8px 8px;
+ border-radius: 4px;
+ background: #616161;
+ color: #fff;
+ box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
+ text-align: center;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 13px;
+ /* Phone */
+ opacity: 0;
+ transform: scale(0.5);
+}
+@media only screen and (max-width: 767px) {
+ [data-tooltip]::after {
+ padding: 8px 16px;
+ font-size: 16px;
+ }
+}
+menu [data-tooltip]::after {
+ left: 100%;
+ top: 0%;
+}
+menu .ML__base {
+ cursor: default;
+}
+/** Don't display if we're tracking, i.e. have the pointer down */
+.tracking [data-tooltip]:hover::after {
+ /* Use visibility, not display. Display will remove the after from the DOM, and the override below will not work */
+ visibility: hidden;
+}
+/** But do display if tracking and inside a menu */
+.tracking menu li[data-tooltip]:hover::after,
+[data-tooltip]:hover::after {
+ visibility: visible;
+ opacity: 1;
+ transform: scale(1);
+ transition-property: opacity, scale;
+ transition-duration: 0.15s;
+ transition-delay: 1s;
+ transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
+}
+.ML__prompt {
+ border-radius: 2px;
+}
+.ML__editablePromptBox {
+ outline: 1px solid #acacac;
+ border-radius: 2px;
+ z-index: -1;
+}
+.ML__focusedPromptBox {
+ outline: highlight auto 1px;
+}
+.ML__lockedPromptBox {
+ background-color: rgba(142, 142, 141, 0.4);
+ z-index: -1;
+}
+.ML__correctPromptBox {
+ outline: 1px solid var(--_correct-color);
+ box-shadow: 0 0 5px var(--_correct-color);
+}
+.ML__incorrectPromptBox {
+ outline: 1px solid var(--_incorrect-color);
+ box-shadow: 0 0 5px var(--_incorrect-color);
+}
+.variant-submenu {
+ display: flex;
+ flex-direction: column;
+ padding: 8px;
+}
+.variant-submenu [part=menu-item] {
+ font-size: 2rem;
+ text-align: center;
+ margin: 0;
+}
+.insert-matrix-submenu {
+ display: grid;
+ padding: 8px;
+ align-content: center;
+ justify-content: center;
+ grid-template-columns: repeat(5, minmax(0, 1fr));
+}
+.insert-matrix-submenu [part=menu-item] {
+ font-size: 21px;
+ border: none;
+ border-radius: 0;
+ line-height: 21px;
+ text-align: center;
+ padding: 0;
+ margin: 0;
+}
+.border-submenu [part=menu-item] {
+ font-size: 2rem;
+ line-height: 1.2;
+ text-align: center;
+}
+.swatches-submenu {
+ --_swatch-size: 2rem;
+ --_columns: 4;
+ display: flex;
+ flex-flow: wrap;
+ padding: 8px;
+ max-width: calc(var(--_columns) * (var(--_swatch-size) + 18px) + 16px);
+ box-sizing: border-box;
+}
+.menu-swatch {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ box-sizing: border-box;
+ width: fit-content;
+ height: fit-content;
+ margin: 2px;
+ padding: 0;
+ background: var(--neutral-200);
+}
+.menu-swatch > .label {
+ padding: 0;
+ margin: 0;
+ line-height: 0;
+}
+.menu-swatch > .label > span {
+ display: inline-block;
+ margin: 6px;
+ min-width: var(--_swatch-size);
+ min-height: var(--_swatch-size);
+ border-radius: 50%;
+}
+.menu-swatch.active {
+ background: var(--neutral-100);
+ scale: 1.4;
+}
+.menu-swatch.active > .label > span {
+ border-radius: 2px;
+}
+.menu-swatch .ui-checkmark,
+.menu-swatch .ui-mixedmark {
+ position: absolute;
+ margin: 0;
+ padding: 0;
+ color: white;
+}
+.menu-swatch.dark-contrast .ui-checkmark,
+.menu-swatch.dark-contrast .ui-mixedmark {
+ color: #000;
+}
+`;
+
+// css/core.less
+var core_default = ".ML__container {\n min-height: auto !important;\n --_hue: var(--hue, 212);\n --_placeholder-color: var(--placeholder-color, hsl(var(--_hue), 40%, 49%));\n --_placeholder-opacity: var(--placeholder-opacity, 0.4);\n --_text-font-family: var(--text-font-family, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif);\n}\n.ML__sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n}\n.ML__is-inline {\n display: inline-block;\n}\n.ML__base {\n visibility: inherit;\n display: inline-block;\n position: relative;\n cursor: text;\n padding: 0;\n margin: 0;\n box-sizing: content-box;\n border: 0;\n outline: 0;\n vertical-align: baseline;\n font-weight: inherit;\n font-family: inherit;\n font-style: inherit;\n text-decoration: none;\n width: min-content;\n}\n.ML__strut,\n.ML__strut--bottom {\n display: inline-block;\n min-height: 0.5em;\n}\n.ML__small-delim {\n font-family: KaTeX_Main;\n}\n/* Text mode */\n.ML__text {\n font-family: var(--_text-font-family);\n white-space: pre;\n}\n/* Use cmr for 'math upright' */\n.ML__cmr {\n font-family: KaTeX_Main;\n font-style: normal;\n}\n.ML__mathit {\n font-family: KaTeX_Math;\n /* The KaTeX_Math font is italic by default, so the font-style below is only \n useful when a fallback font is used\n */\n font-style: italic;\n}\n.ML__mathbf {\n font-family: KaTeX_Main;\n font-weight: bold;\n}\n/* Lowercase greek symbols should stick to math font when \\mathbf is applied \n to match TeX idiosyncratic behavior */\n.lcGreek.ML__mathbf {\n font-family: KaTeX_Math;\n font-weight: normal;\n}\n.ML__mathbfit {\n font-family: KaTeX_Math;\n font-weight: bold;\n font-style: italic;\n}\n.ML__ams {\n font-family: KaTeX_AMS;\n}\n/* Blackboard */\n.ML__bb {\n font-family: KaTeX_AMS;\n}\n.ML__cal {\n font-family: KaTeX_Caligraphic;\n}\n.ML__frak {\n font-family: KaTeX_Fraktur;\n}\n.ML__tt {\n font-family: KaTeX_Typewriter;\n}\n.ML__script {\n font-family: KaTeX_Script;\n}\n.ML__sans {\n font-family: KaTeX_SansSerif;\n}\n.ML__series_ul {\n font-weight: 100;\n}\n.ML__series_el {\n font-weight: 100;\n}\n.ML__series_l {\n font-weight: 200;\n}\n.ML__series_sl {\n font-weight: 300;\n}\n.ML__series_sb {\n font-weight: 500;\n}\n.ML__bold,\n.ML__boldsymbol {\n font-weight: 700;\n}\n.ML__series_eb {\n font-weight: 800;\n}\n.ML__series_ub {\n font-weight: 900;\n}\n.ML__series_uc {\n font-stretch: ultra-condensed;\n}\n.ML__series_ec {\n font-stretch: extra-condensed;\n}\n.ML__series_c {\n font-stretch: condensed;\n}\n.ML__series_sc {\n font-stretch: semi-condensed;\n}\n.ML__series_sx {\n font-stretch: semi-expanded;\n}\n.ML__series_x {\n font-stretch: expanded;\n}\n.ML__series_ex {\n font-stretch: extra-expanded;\n}\n.ML__series_ux {\n font-stretch: ultra-expanded;\n}\n.ML__it {\n font-style: italic;\n}\n.ML__shape_ol {\n -webkit-text-stroke: 1px black;\n text-stroke: 1px black;\n color: transparent;\n}\n.ML__shape_sc {\n font-variant: small-caps;\n}\n.ML__shape_sl {\n font-style: oblique;\n}\n/* First level emphasis */\n.ML__emph {\n color: #bc2612;\n}\n/* Second level emphasis */\n.ML__emph .ML__emph {\n color: #0c7f99;\n}\n.ML__highlight {\n color: #007cb2;\n background: #edd1b0;\n}\n.ML__center {\n text-align: center;\n}\n.ML__label_padding {\n padding: 0 0.5em;\n}\n.ML__frac-line {\n width: 100%;\n min-height: 1px;\n}\n.ML__frac-line:after {\n content: '';\n display: block;\n margin-top: max(-1px, -0.04em);\n min-height: max(1px, 0.04em);\n /* Ensure the line is visible when printing even if \"turn off background images\" is on*/\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n /* There's a bug since Chrome 62 where \n sub-pixel border lines don't draw at some zoom \n levels (110%, 90%). \n Setting the min-height used to work around it, but that workaround\n broke in Chrome 84 or so.\n Setting the background (and the min-height) seems to work for now.\n */\n background: currentColor;\n box-sizing: content-box;\n /* Vuetify sets the box-sizing to inherit \n causes the fraction line to not draw at all sizes (see #26) */\n /* On some versions of Firefox on Windows, the line fails to \n draw at some zoom levels, but setting the transform triggers\n the hardware accelerated path, which works */\n transform: translate(0, 0);\n}\n.ML__sqrt {\n display: inline-block;\n}\n.ML__sqrt-sign {\n display: inline-block;\n position: relative;\n}\n.ML__sqrt-line {\n display: inline-block;\n height: max(1px, 0.04em);\n width: 100%;\n}\n.ML__sqrt-line:before {\n content: '';\n display: block;\n margin-top: min(-1px, -0.04em);\n min-height: max(1px, 0.04em);\n /* Ensure the line is visible when printing even if \"turn off background images\" is on*/\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n background: currentColor;\n /* On some versions of Firefox on Windows, the line fails to \n draw at some zoom levels, but setting the transform triggers\n the hardware accelerated path, which works */\n transform: translate(0, 0);\n}\n.ML__sqrt-line:after {\n border-bottom-width: 1px;\n content: ' ';\n display: block;\n margin-top: -0.1em;\n}\n.ML__sqrt-index {\n margin-left: 0.27777778em;\n margin-right: -0.55555556em;\n}\n.ML__delim-size1 {\n font-family: KaTeX_Size1;\n}\n.ML__delim-size2 {\n font-family: KaTeX_Size2;\n}\n.ML__delim-size3 {\n font-family: KaTeX_Size3;\n}\n.ML__delim-size4 {\n font-family: KaTeX_Size4;\n}\n.ML__delim-mult .delim-size1 > span {\n font-family: KaTeX_Size1;\n}\n.ML__delim-mult .delim-size4 > span {\n font-family: KaTeX_Size4;\n}\n.ML__accent-body > span {\n font-family: KaTeX_Main;\n width: 0;\n}\n.ML__accent-vec {\n position: relative;\n left: 0.24em;\n}\n/** The markup for a LaTeX formula, either in an editable mathfield or \n in a static display.\n*/\n.ML__latex {\n display: inline-block;\n direction: ltr;\n text-align: left;\n text-indent: 0;\n text-rendering: auto;\n font-family: KaTeX_Main, 'Times New Roman', serif;\n font-style: normal;\n font-size-adjust: none;\n font-stretch: normal;\n font-variant-caps: normal;\n letter-spacing: normal;\n line-height: 1.2;\n word-wrap: normal;\n word-spacing: normal;\n white-space: nowrap;\n text-shadow: none;\n -webkit-user-select: none;\n user-select: none;\n width: min-content;\n}\n.ML__latex .style-wrap {\n position: relative;\n}\n.ML__latex .mfrac {\n display: inline-block;\n}\n.ML__latex .left-right {\n display: inline-block;\n}\n.ML__latex .vlist-t {\n display: inline-table;\n table-layout: fixed;\n border-collapse: collapse;\n}\n.ML__latex .vlist-r {\n display: table-row;\n}\n.ML__latex .vlist {\n display: table-cell;\n vertical-align: bottom;\n position: relative;\n}\n.ML__latex .vlist > span {\n display: block;\n height: 0;\n position: relative;\n}\n.ML__latex .vlist > span > span {\n display: inline-block;\n}\n.ML__latex .vlist > span > .pstrut {\n overflow: hidden;\n width: 0;\n}\n.ML__latex .vlist-t2 {\n margin-right: -2px;\n}\n.ML__latex .vlist-s {\n display: table-cell;\n vertical-align: bottom;\n font-size: 1px;\n width: 2px;\n min-width: 2px;\n}\n.ML__latex .msubsup {\n text-align: left;\n}\n.ML__latex .negativethinspace {\n display: inline-block;\n margin-left: -0.16667em;\n height: 0.71em;\n}\n.ML__latex .thinspace {\n display: inline-block;\n width: 0.16667em;\n height: 0.71em;\n}\n.ML__latex .mediumspace {\n display: inline-block;\n width: 0.22222em;\n height: 0.71em;\n}\n.ML__latex .thickspace {\n display: inline-block;\n width: 0.27778em;\n height: 0.71em;\n}\n.ML__latex .enspace {\n display: inline-block;\n width: 0.5em;\n height: 0.71em;\n}\n.ML__latex .quad {\n display: inline-block;\n width: 1em;\n height: 0.71em;\n}\n.ML__latex .qquad {\n display: inline-block;\n width: 2em;\n height: 0.71em;\n}\n.ML__latex .llap,\n.ML__latex .rlap {\n width: 0;\n position: relative;\n display: inline-block;\n}\n.ML__latex .llap > .inner,\n.ML__latex .rlap > .inner {\n position: absolute;\n}\n.ML__latex .llap > .fix,\n.ML__latex .rlap > .fix {\n display: inline-block;\n}\n.ML__latex .llap > .inner {\n right: 0;\n}\n.ML__latex .rlap > .inner {\n left: 0;\n}\n.ML__latex .rule {\n display: inline-block;\n border: solid 0;\n position: relative;\n box-sizing: border-box;\n}\n.ML__latex .overline .overline-line,\n.ML__latex .underline .underline-line {\n width: 100%;\n}\n.ML__latex .overline .overline-line:before,\n.ML__latex .underline .underline-line:before {\n content: '';\n border-bottom-style: solid;\n border-bottom-width: max(1px, 0.04em);\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n display: block;\n}\n.ML__latex .overline .overline-line:after,\n.ML__latex .underline .underline-line:after {\n border-bottom-style: solid;\n border-bottom-width: max(1px, 0.04em);\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n content: '';\n display: block;\n margin-top: -1px;\n}\n.ML__latex .stretchy {\n display: block;\n position: absolute;\n width: 100%;\n left: 0;\n overflow: hidden;\n}\n.ML__latex .stretchy:before,\n.ML__latex .stretchy:after {\n content: '';\n}\n.ML__latex .stretchy svg {\n display: block;\n position: absolute;\n width: 100%;\n height: inherit;\n fill: currentColor;\n stroke: currentColor;\n fill-rule: nonzero;\n fill-opacity: 1;\n stroke-width: 1;\n stroke-linecap: butt;\n stroke-linejoin: miter;\n stroke-miterlimit: 4;\n stroke-dasharray: none;\n stroke-dashoffset: 0;\n stroke-opacity: 1;\n}\n.ML__latex .slice-1-of-2 {\n display: inline-flex;\n position: absolute;\n left: 0;\n width: 50.2%;\n overflow: hidden;\n}\n.ML__latex .slice-2-of-2 {\n display: inline-flex;\n position: absolute;\n right: 0;\n width: 50.2%;\n overflow: hidden;\n}\n.ML__latex .slice-1-of-3 {\n display: inline-flex;\n position: absolute;\n left: 0;\n width: 25.1%;\n overflow: hidden;\n}\n.ML__latex .slice-2-of-3 {\n display: inline-flex;\n position: absolute;\n left: 25%;\n width: 50%;\n overflow: hidden;\n}\n.ML__latex .slice-3-of-3 {\n display: inline-flex;\n position: absolute;\n right: 0;\n width: 25.1%;\n overflow: hidden;\n}\n.ML__latex .slice-1-of-1 {\n display: inline-flex;\n position: absolute;\n width: 100%;\n left: 0;\n overflow: hidden;\n}\n.ML__latex .nulldelimiter {\n display: inline-block;\n}\n.ML__latex .op-group {\n display: inline-block;\n}\n.ML__latex .op-symbol {\n position: relative;\n}\n.ML__latex .op-symbol.small-op {\n font-family: KaTeX_Size1;\n}\n.ML__latex .op-symbol.large-op {\n font-family: KaTeX_Size2;\n}\n.ML__latex .mtable .vertical-separator {\n display: inline-block;\n min-width: 1px;\n box-sizing: border-box;\n}\n.ML__latex .mtable .arraycolsep {\n display: inline-block;\n}\n.ML__latex .mtable .col-align-m > .vlist-t {\n text-align: center;\n}\n.ML__latex .mtable .col-align-c > .vlist-t {\n text-align: center;\n}\n.ML__latex .mtable .col-align-l > .vlist-t {\n text-align: left;\n}\n.ML__latex .mtable .col-align-r > .vlist-t {\n text-align: right;\n}\n.ML__error {\n display: inline-block;\n background-image: radial-gradient(ellipse at center, hsl(341, 100%, 40%), rgba(0, 0, 0, 0) 70%);\n background-color: hsla(341, 100%, 40%, 0.1);\n background-repeat: repeat-x;\n background-size: 3px 3px;\n padding-bottom: 3px;\n background-position: 0 100%;\n}\n.ML__error > .ML__error {\n background: transparent;\n padding: 0;\n}\n.ML__placeholder {\n color: var(--_placeholder-color);\n opacity: var(--_placeholder-opacity);\n padding-left: 0.4ex;\n padding-right: 0.4ex;\n font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;\n}\n.ML__notation {\n position: absolute;\n box-sizing: border-box;\n line-height: 0;\n}\n/* This class is used to implement the `\\mathtip` and `\\texttip` commands\n For UI elements, see `[data-ML__tooltip]`\n*/\n.ML__tooltip-container {\n position: relative;\n transform: scale(0);\n}\n.ML__tooltip-container .ML__tooltip-content {\n position: fixed;\n display: inline-table;\n visibility: hidden;\n z-index: 2;\n width: max-content;\n max-width: 400px;\n padding: 12px 12px;\n border-radius: 8px;\n background: #616161;\n --_selection-color: #fff;\n color: #fff;\n box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);\n opacity: 0;\n transition: opacity 0.15s cubic-bezier(0.4, 0, 1, 1);\n}\n.ML__tooltip-container .ML__tooltip-content .ML__text {\n white-space: normal;\n}\n.ML__tooltip-container .ML__tooltip-content .ML__base {\n display: contents;\n}\n.ML__tooltip-container:hover .ML__tooltip-content {\n visibility: visible;\n opacity: 1;\n font-size: 0.75em;\n transform: scale(1) translate(0, 3em);\n}\n";
+
+// css/environment-popover.less
+var environment_popover_default = "#mathlive-environment-popover.is-visible {\n visibility: visible;\n}\n#mathlive-environment-popover {\n --_environment-panel-height: var(--environment-panel-height, 70px);\n --_accent-color: var(--accent-color, #aaa);\n --_background: var(--environment-panel-background, #fff);\n --_button-background: var(--environment-panel-button-background, white);\n --_button-background-hover: var(--environment-panel-button-background-hover, #f5f5f7);\n --_button-background-active: var(--environment-panel-button-background-active, #f5f5f7);\n --_button-text: var(--environment-panel-button-text, #e3e4e8);\n position: absolute;\n width: calc(var(--_environment-panel-height) * 2);\n height: var(--_environment-panel-height);\n border-radius: 4px;\n border: 1.5px solid var(--_accent-color);\n background-color: var(--_background);\n box-shadow: 0 0 30px 0 var(--environment-shadow, rgba(0, 0, 0, 0.4));\n pointer-events: all;\n visibility: hidden;\n}\n#mathlive-environment-popover .MLEP__array-buttons {\n height: calc(var(--_environment-panel-height) * 5/4);\n width: calc(var(--_environment-panel-height) * 5/4);\n margin-left: calc(0px - var(--_environment-panel-height) * 0.16);\n margin-top: calc(0px - var(--_environment-panel-height) * 0.19);\n}\n#mathlive-environment-popover .MLEP__array-buttons .font {\n fill: white;\n}\n#mathlive-environment-popover .MLEP__array-buttons circle {\n fill: #7f7f7f;\n transition: fill 300ms;\n}\n#mathlive-environment-popover .MLEP__array-buttons .MLEP__array-insert-background {\n fill-opacity: 1;\n fill: var(--_background);\n stroke: var(--_accent-color);\n stroke-width: 3px;\n}\n#mathlive-environment-popover .MLEP__array-buttons line {\n stroke: var(--_accent-color);\n stroke-opacity: 0;\n stroke-width: 40;\n pointer-events: none;\n transition: stroke-opacity 300ms;\n stroke-linecap: round;\n}\n#mathlive-environment-popover .MLEP__array-buttons g[data-command]:hover circle {\n fill: var(--_accent-color);\n}\n#mathlive-environment-popover .MLEP__array-buttons g[data-command]:hover line {\n stroke-opacity: 1;\n}\n#mathlive-environment-popover .MLEP__environment-delimiter-controls {\n height: 100%;\n width: 50%;\n}\n#mathlive-environment-popover .MLEP__environment-delimiter-controls .MLEP__array-delimiter-options {\n width: var(--_environment-panel-height);\n height: var(--_environment-panel-height);\n display: flex;\n flex-wrap: wrap;\n flex-direction: row;\n justify-content: space-around;\n}\n#mathlive-environment-popover .MLEP__environment-delimiter-controls .MLEP__array-delimiter-options svg {\n pointer-events: all;\n margin-top: 2px;\n width: calc(var(--_environment-panel-height) / 3 * 28 / 24);\n height: calc(var(--_environment-panel-height) / 3 - 2px);\n border-radius: calc(var(--_environment-panel-height) / 25);\n background-color: var(--_button-background);\n}\n#mathlive-environment-popover .MLEP__environment-delimiter-controls .MLEP__array-delimiter-options svg:hover {\n background-color: var(--_button-background-hover);\n}\n#mathlive-environment-popover .MLEP__environment-delimiter-controls .MLEP__array-delimiter-options svg path,\n#mathlive-environment-popover .MLEP__environment-delimiter-controls .MLEP__array-delimiter-options svg line {\n stroke: var(--_button-text);\n stroke-width: 2;\n stroke-linecap: round;\n}\n#mathlive-environment-popover .MLEP__environment-delimiter-controls .MLEP__array-delimiter-options svg rect,\n#mathlive-environment-popover .MLEP__environment-delimiter-controls .MLEP__array-delimiter-options svg path {\n fill-opacity: 0;\n}\n#mathlive-environment-popover .MLEP__environment-delimiter-controls .MLEP__array-delimiter-options svg.active {\n pointer-events: none;\n background-color: var(--_button-background-active);\n}\n#mathlive-environment-popover .MLEP__environment-delimiter-controls .MLEP__array-delimiter-options svg.active path,\n#mathlive-environment-popover .MLEP__environment-delimiter-controls .MLEP__array-delimiter-options svg.active line {\n stroke: var(--_accent-color);\n}\n#mathlive-environment-popover .MLEP__environment-delimiter-controls .MLEP__array-delimiter-options svg.active circle {\n fill: var(--_accent-color);\n}\n";
+
+// css/suggestion-popover.less
+var suggestion_popover_default = `/* The element that display info while in latex mode */
+#mathlive-suggestion-popover {
+ background-color: rgba(97, 97, 97);
+ color: #fff;
+ text-align: center;
+ border-radius: 8px;
+ position: fixed;
+ z-index: 1;
+ display: none;
+ flex-direction: column;
+ justify-content: center;
+ box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
+}
+#mathlive-suggestion-popover.top-tip::after {
+ content: '';
+ position: absolute;
+ top: -15px;
+ left: calc(50% - 15px);
+ width: 0;
+ height: 0;
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 15px solid rgba(97, 97, 97);
+ font-size: 1rem;
+}
+#mathlive-suggestion-popover.bottom-tip::after {
+ content: '';
+ position: absolute;
+ bottom: -15px;
+ left: calc(50% - 15px);
+ width: 0;
+ height: 0;
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-top: 15px solid rgba(97, 97, 97);
+ font-size: 1rem;
+}
+#mathlive-suggestion-popover.is-animated {
+ transition: all 0.2s cubic-bezier(0.64, 0.09, 0.08, 1);
+ animation: ML__fade-in cubic-bezier(0, 0, 0.2, 1) 0.15s;
+}
+#mathlive-suggestion-popover.is-visible {
+ display: flex;
+}
+@keyframes ML__fade-in {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+}
+/* The wrapper class for the entire content of the popover panel */
+#mathlive-suggestion-popover ul {
+ display: flex;
+ flex-flow: column;
+ list-style: none;
+ margin: 0;
+ padding: 0;
+ align-items: flex-start;
+ max-height: 400px;
+ overflow-y: auto;
+}
+#mathlive-suggestion-popover li {
+ display: flex;
+ flex-direction: row;
+ justify-content: space-between;
+ margin: 8px;
+ padding: 8px;
+ width: calc(100% - 16px - 16px);
+ column-gap: 1em;
+ border-radius: 8px;
+ cursor: pointer;
+ /* Since the content can be clicked on, provide feedback on hover */
+}
+#mathlive-suggestion-popover li a {
+ color: #5ea6fd;
+ padding-top: 0.3em;
+ margin-top: 0.4em;
+ display: block;
+}
+#mathlive-suggestion-popover li a:hover {
+ color: #5ea6fd;
+ text-decoration: underline;
+}
+#mathlive-suggestion-popover li:hover,
+#mathlive-suggestion-popover li.is-pressed,
+#mathlive-suggestion-popover li.is-active {
+ background: rgba(255, 255, 255, 0.1);
+}
+/* The command inside a popover (inside a #mathlive-suggestion-popover) */
+.ML__popover__command {
+ font-size: 1.6rem;
+ font-family: KaTeX_Main;
+}
+.ML__popover__current {
+ background: #5ea6fd;
+ color: #fff;
+}
+.ML__popover__latex {
+ font-family: 'IBM Plex Mono', 'Source Code Pro', Consolas, 'Roboto Mono', Menlo, 'Bitstream Vera Sans Mono', 'DejaVu Sans Mono', Monaco, Courier, monospace;
+ align-self: center;
+}
+/* The keyboard shortcuts for a symbol as displayed in the popover */
+.ML__popover__keybinding {
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
+ font-size: 0.8em;
+ opacity: 0.7;
+}
+/* Style for the character that joins the modifiers of a keyboard shortcut
+(usually a "+" sign)*/
+.ML__shortcut-join {
+ opacity: 0.5;
+}
+`;
+
+// css/keystroke-caption.less
+var keystroke_caption_default = "/* The element that displays the keys as the user type them */\n#mathlive-keystroke-caption-panel {\n visibility: hidden;\n /*min-width: 160px;*/\n /*background-color: rgba(97, 97, 200, .95);*/\n background: var(--secondary, hsl(var(--_hue), 19%, 26%));\n border-color: var(--secondary-border, hsl(0, 0%, 91%));\n box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);\n text-align: center;\n border-radius: 6px;\n padding: 16px;\n position: absolute;\n z-index: 1;\n display: flex;\n flex-direction: row-reverse;\n justify-content: center;\n --keystroke: white;\n --on-keystroke: #555;\n --keystroke-border: #f7f7f7;\n}\n@media (prefers-color-scheme: dark) {\n body:not([theme='light']) #mathlive-keystroke-caption-panel {\n --keystroke: hsl(var(--_hue), 50%, 30%);\n --on-keystroke: hsl(0, 0%, 98%);\n --keystroke-border: hsl(var(--_hue), 50%, 25%);\n }\n}\nbody[theme='dark'] #mathlive-keystroke-caption-panel {\n --keystroke: hsl(var(--_hue), 50%, 30%);\n --on-keystroke: hsl(0, 0%, 98%);\n --keystroke-border: hsl(var(--_hue), 50%, 25%);\n}\n#mathlive-keystroke-caption-panel > span {\n min-width: 14px;\n /*height: 8px;*/\n margin: 0 8px 0 0;\n padding: 4px;\n background-color: var(--keystroke);\n color: var(--on-keystroke);\n fill: currentColor;\n font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;\n font-size: 1em;\n border-radius: 6px;\n border: 2px solid var(--keystroke-border);\n /*box-shadow: 0 7px 14px rgba(0,0,0,0.25), 0 5px 5px rgba(0,0,0,0.22);*/\n}\n";
+
+// css/virtual-keyboard.less
+var virtual_keyboard_default = `.ML__keyboard {
+ --_keyboard-height: 0;
+ --_keyboard-zindex: var(--keyboard-zindex, 105);
+ --_accent-color: var(--keyboard-accent-color, #0c75d8);
+ --_background: var(--keyboard-background, #cacfd7);
+ --_border: var(--keyboard-border, #ddd);
+ --_padding-horizontal: var(--keyboard-padding-horizontal, 0px);
+ --_padding-top: var(--keyboard-padding-top, 5px);
+ --_padding-bottom: var(--keyboard-padding-bottom, 0px);
+ --_row-padding-left: var(--keyboard-row-padding-left, 0px);
+ --_row-padding-right: var(--keyboard-row-padding-right, 0px);
+ --_toolbar-text: var(--keyboard-toolbar-text, #2c2e2f);
+ --_toolbar-text-active: var(--keyboard-toolbar-text-active, var(--_accent-color));
+ --_toolbar-background: var(--keyboard-toolbar-background, transparent);
+ --_toolbar-background-hover: var(--keyboard-toolbar-background-hover, #eee);
+ --_toolbar-background-selected: var(--keyboard-toolbar-background-selected, transparent);
+ --_toolbar-font-size: var(--keyboard-toolbar-font-size, '135%');
+ --_horizontal-rule: var(--keyboard-horizontal-rule, 1px solid #fff);
+ --_keycap-background: var(--keycap-background, white);
+ --_keycap-background-hover: var(--keycap-background-hover, #f5f5f7);
+ --_keycap-background-active: var(--keycap-background-active, var(--_accent-color));
+ --_keycap-background-pressed: var(--keycap-background-pressed, var(--_accent-color));
+ --_keycap-border: var(--keycap-border, #e5e6e9);
+ --_keycap-border-bottom: var(--keycap-border-bottom, #8d8f92);
+ --_keycap-text: var(--keycap-text, #000);
+ --_keycap-text-active: var(--keycap-text-active, #fff);
+ --_keycap-text-hover: var(--keycap-text-hover, var(--_keycap-text));
+ --_keycap-text-pressed: var(--keycap-text-pressed, #fff);
+ --_keycap-shift-text: var(--keycap-shift-text, var(--_accent-color));
+ --_keycap-primary-background: var(--keycap-primary-background, var(--_accent-color));
+ --_keycap-primary-text: var(--keycap-primary-text, #ddd);
+ --_keycap-primary-background-hover: var(--keycap-primary-background-hover, #0d80f2);
+ --_keycap-secondary-background: var(--keycap-secondary-background, #a0a9b8);
+ --_keycap-secondary-background-hover: var(--keycap-secondary-background-hover, #7d8795);
+ --_keycap-secondary-text: var(--keycap-secondary-text, #060707);
+ --_keycap-secondary-border: var(--keycap-secondary-border, #c5c9d0);
+ --_keycap-secondary-border-bottom: var(--keycap-secondary-border-bottom, #989da6);
+ --_keycap-height: var(--keycap-height, 60px);
+ /* Keycap width (incl. margin) */
+ --_keycap-max-width: var(--keycap-max-width, 100px);
+ --_keycap-gap: var(--keycap-gap, 8px);
+ --_keycap-font-size: var(--keycap-font-size, clamp(16px, 4cqw, 24px));
+ --_keycap-small-font-size: var(--keycap-small-font-size, calc(var(--keycap-font-size) * 0.8));
+ --_keycap-extra-small-font-size: var(--keycap-extra-small-font-size, calc(var(--keycap-font-size) / 1.42));
+ --_variant-panel-background: var(--variant-panel-background, #fff);
+ --_variant-keycap-text: var(--variant-keycap-text, var(--_keycap-text));
+ --_variant-keycap-text-active: var(--variant-keycap-text-active, var(--_keycap-text-active));
+ --_variant-keycap-background-active: var(--variant-keycap-background-active, var(--_accent-color));
+ --_variant-keycap-length: var(--variant-keycap-length, 70px);
+ --_variant-keycap-font-size: var(--variant-keycap-font-size, 30px);
+ --_variant-keycap-aside-font-size: var(--variant-keycap-aside-font-size, 12px);
+ --_keycap-shift-font-size: var(--keycap-shift-font-size, 16px);
+ --_keycap-shift-color: var(--keycap-shift-color, var(--_accent-color));
+ --_box-placeholder-color: var(--box-placeholder-color, var(--_accent-color));
+ --_box-placeholder-pressed-color: var(--box-placeholder-pressed-color, var(--keycap-text-pressed));
+}
+.is-math-mode .MLK__rows .if-text-mode,
+.is-text-mode .MLK__rows .if-math-mode {
+ display: none;
+}
+.if-can-undo,
+.if-can-redo,
+.if-can-copy,
+.if-can-cut,
+.if-can-paste {
+ opacity: 0.4;
+ pointer-events: none;
+}
+.can-undo .if-can-undo,
+.can-redo .if-can-redo,
+.can-copy .if-can-copy,
+.can-cut .if-can-cut,
+.can-paste .if-can-paste {
+ opacity: 1;
+ pointer-events: all;
+}
+body > .ML__keyboard {
+ position: fixed;
+ --_padding-bottom: calc(var(--keyboard-padding-bottom, 0px) + env(safe-area-inset-bottom, 0));
+}
+body > .ML__keyboard.is-visible > .MLK__backdrop {
+ box-shadow: 0 -5px 6px rgba(0, 0, 0, 0.08);
+ border-top: 1px solid var(--_border);
+}
+body > .ML__keyboard.backdrop-is-transparent.is-visible > .MLK__backdrop {
+ box-shadow: none;
+ border: none;
+}
+body > .ML__keyboard.is-visible.animate > .MLK__backdrop {
+ transition: 0.28s cubic-bezier(0, 0, 0.2, 1);
+ transition-property: transform, opacity;
+ transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
+}
+.ML__keyboard {
+ position: relative;
+ overflow: hidden;
+ top: 0;
+ left: 0;
+ height: 100%;
+ width: 100%;
+ z-index: var(--_keyboard-zindex);
+ box-sizing: border-box;
+ outline: none;
+ border: none;
+ margin: 0;
+ padding: 0;
+ line-height: 1;
+ overflow-wrap: unset;
+ text-align: left;
+ vertical-align: baseline;
+ cursor: auto;
+ white-space: pre;
+ box-shadow: none;
+ opacity: 1;
+ transform: none;
+ pointer-events: none;
+}
+.ML__keyboard :where(div) {
+ box-sizing: border-box;
+ outline: none;
+ border: none;
+ margin: 0;
+ padding: 0;
+ line-height: 1;
+ overflow-wrap: unset;
+ text-align: left;
+ vertical-align: baseline;
+ cursor: auto;
+ white-space: pre;
+ box-shadow: none;
+ transform: none;
+}
+.MLK__backdrop {
+ position: absolute;
+ bottom: calc(-1 * var(--_keyboard-height));
+ width: 100%;
+ height: var(--_keyboard-height);
+ box-sizing: border-box;
+ padding-top: var(--_padding-top);
+ padding-bottom: var(--_padding-bottom);
+ padding-left: var(--_padding-horizontal);
+ padding-right: var(--_padding-horizontal);
+ opacity: 0;
+ visibility: hidden;
+ transform: translate(0, 0);
+ background: var(--_background);
+}
+.backdrop-is-transparent .MLK__backdrop {
+ background: transparent;
+}
+/* If a custom layout has a custom container/backdrop
+ (backdrop-is-transparent), make sure to let pointer event go through. */
+.backdrop-is-transparent .MLK__plate {
+ background: transparent;
+ pointer-events: none;
+}
+/* If a custom layout has a custom container/backdrop, make sure to
+ allow pointer events on it. */
+.backdrop-is-transparent .MLK__layer > div > div {
+ pointer-events: all;
+}
+.ML__keyboard.is-visible > .MLK__backdrop {
+ transform: translate(0, calc(-1 * var(--_keyboard-height)));
+ opacity: 1;
+ visibility: visible;
+}
+.caps-lock-indicator {
+ display: none;
+ width: 8px;
+ height: 8px;
+ background: #0cbc0c;
+ box-shadow: inset 0 0 4px 0 #13ca13, 0 0 4px 0 #a9ef48;
+ border-radius: 8px;
+ right: 8px;
+ top: 8px;
+ position: absolute;
+}
+.ML__keyboard.is-caps-lock .caps-lock-indicator {
+ display: block;
+}
+.ML__keyboard.is-caps-lock .shift {
+ background: var(--_keycap-background-active);
+ color: var(--_keycap-text-active);
+}
+.MLK__plate {
+ position: absolute;
+ top: var(--_padding-top);
+ left: var(--_padding-horizontal);
+ width: calc(100% - 2 * var(--_padding-horizontal));
+ margin: 0;
+ padding: 0;
+ box-sizing: border-box;
+ container-type: inline-size;
+ touch-action: none;
+ -webkit-user-select: none;
+ user-select: none;
+ pointer-events: all;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
+ font-size: 16px;
+ /* Size of toolbar labels */
+ font-weight: 400;
+ text-shadow: none;
+}
+.ML__box-placeholder {
+ color: var(--_box-placeholder-color);
+}
+.MLK__tex {
+ font-family: KaTeX_Main, KaTeX_Math, 'Cambria Math', 'Asana Math', OpenSymbol, Symbola, STIX, Times, serif !important;
+}
+.MLK__tex-math {
+ font-family: KaTeX_Math, KaTeX_Main, 'Cambria Math', 'Asana Math', OpenSymbol, Symbola, STIX, Times, serif !important;
+ font-style: italic;
+}
+.MLK__layer {
+ display: none;
+ outline: none;
+}
+.MLK__layer.is-visible {
+ display: flex;
+ flex-flow: column;
+}
+/* Keyboard layouts are made or rows of keys... */
+.MLK__rows {
+ --_keycap-width: min(var(--_keycap-max-width), 10cqw);
+ display: flex;
+ flex-flow: column;
+ align-items: center;
+ border-collapse: separate;
+ clear: both;
+ border: 0;
+ margin: 0;
+ margin-bottom: var(--_keycap-gap);
+ gap: var(--_keycap-gap);
+ /* If the styling include, e.g., some shadows, they will be
+ cut off by the overflow. In that case, set the padding to
+ compensate. */
+ padding-left: var(--_row-padding-left);
+ padding-right: var(--_row-padding-right);
+ overflow: visible;
+ touch-action: none;
+}
+.MLK__rows > .MLK__row {
+ display: flex;
+ flex-flow: row;
+ justify-content: center;
+ width: 100%;
+ gap: var(--_keycap-gap);
+ margin: 0;
+ padding: 0;
+ /* For the alignment of the text on some modifiers (e.g. shift) */
+ /* Extra spacing between two adjacent keys */
+}
+.MLK__rows > .MLK__row .tex {
+ font-family: KaTeX_Math, KaTeX_Main, 'Cambria Math', 'Asana Math', OpenSymbol, Symbola, STIX, Times, serif !important;
+}
+.MLK__rows > .MLK__row .tex-math {
+ font-family: KaTeX_Math, 'Cambria Math', 'Asana Math', OpenSymbol, Symbola, STIX, Times, serif !important;
+}
+.MLK__rows > .MLK__row .big-op {
+ font-size: calc(1.25 * var(--_keycap-font-size));
+}
+.MLK__rows > .MLK__row .small {
+ font-size: var(--_keycap-small-font-size);
+}
+.MLK__rows > .MLK__row .bottom {
+ justify-content: flex-end;
+}
+.MLK__rows > .MLK__row .left {
+ align-items: flex-start;
+ padding-left: 12px;
+}
+.MLK__rows > .MLK__row .right {
+ align-items: flex-end;
+ padding-right: 12px;
+}
+.MLK__rows > .MLK__row .w0 {
+ width: 0;
+}
+.MLK__rows > .MLK__row .w5 {
+ width: calc(0.5 * var(--_keycap-width) - var(--_keycap-gap));
+}
+.MLK__rows > .MLK__row .w15 {
+ width: calc(1.5 * var(--_keycap-width) - var(--_keycap-gap));
+}
+.MLK__rows > .MLK__row .w20 {
+ width: calc(2 * var(--_keycap-width) - var(--_keycap-gap));
+}
+.MLK__rows > .MLK__row .w40 {
+ width: calc(4 * var(--_keycap-width) - var(--_keycap-gap));
+}
+.MLK__rows > .MLK__row .w50 {
+ width: calc(5 * var(--_keycap-width) - var(--_keycap-gap));
+}
+.MLK__rows > .MLK__row .MLK__keycap.w50 {
+ font-size: 80%;
+ padding-top: 10px;
+ font-weight: 100;
+}
+.MLK__rows > .MLK__row .separator {
+ background: transparent;
+ border: none;
+ pointer-events: none;
+}
+.MLK__rows > .MLK__row .horizontal-rule {
+ height: 6px;
+ margin-top: 3px;
+ margin-bottom: 0;
+ width: 100%;
+ border-radius: 0;
+ border-top: var(--_horizontal-rule);
+}
+.MLK__rows > .MLK__row .ghost {
+ background: var(--_toolbar-background);
+ border: none;
+ color: var(--_toolbar-text);
+}
+.MLK__rows > .MLK__row .ghost:hover {
+ background: var(--_toolbar-background-hover);
+}
+.MLK__rows > .MLK__row .bigfnbutton {
+ font-size: var(--_keycap-extra-small-font-size);
+}
+.MLK__rows > .MLK__row .shift,
+.MLK__rows > .MLK__row .action {
+ color: var(--_keycap-secondary-text);
+ background: var(--_keycap-secondary-background);
+ border-color: var(--_keycap-secondary-border);
+ border-bottom-color: var(--_keycap-secondary-border-bottom);
+ line-height: 0.8;
+ font-size: min(1rem, var(--_keycap-small-font-size));
+ font-weight: 600;
+ padding: 8px 12px 8px 12px;
+}
+.MLK__rows > .MLK__row .shift:hover,
+.MLK__rows > .MLK__row .action:hover {
+ background: var(--_keycap-secondary-background-hover);
+}
+.MLK__rows > .MLK__row .action.primary {
+ background: var(--_keycap-primary-background);
+ color: var(--_keycap-primary-text);
+}
+.MLK__rows > .MLK__row .action.primary:hover {
+ background: var(--_keycap-primary-background-hover);
+ color: var(--_keycap-primary-text);
+}
+.MLK__rows > .MLK__row .shift.selected,
+.MLK__rows > .MLK__row .action.selected {
+ color: var(--_toolbar-text-active);
+}
+.MLK__rows > .MLK__row .shift.selected.is-pressed,
+.MLK__rows > .MLK__row .action.selected.is-pressed,
+.MLK__rows > .MLK__row .shift.selected.is-active,
+.MLK__rows > .MLK__row .action.selected.is-active {
+ color: white;
+}
+.MLK__rows > .MLK__row .warning {
+ background: #cd0030;
+ color: white;
+}
+.MLK__rows > .MLK__row .warning svg.svg-glyph {
+ width: 24px;
+ height: 24px;
+ min-height: 24px;
+}
+/** A regular keycap
+ * Use the :where() pseudo-class to give it a very low specifity,
+ * so that it can be overriden by custom style.
+ */
+:where(.MLK__rows > .MLK__row div) {
+ display: flex;
+ flex-flow: column;
+ align-items: center;
+ justify-content: space-evenly;
+ width: calc(var(--_keycap-width) - var(--_keycap-gap));
+ height: var(--_keycap-height);
+ box-sizing: border-box;
+ padding: 0;
+ vertical-align: top;
+ text-align: center;
+ float: left;
+ color: var(--_keycap-text);
+ fill: currentColor;
+ font-size: var(--_keycap-font-size);
+ background: var(--_keycap-background);
+ border: 1px solid var(--_keycap-border);
+ border-bottom-color: var(--_keycap-border-bottom);
+ border-radius: 6px;
+ cursor: pointer;
+ touch-action: none;
+ /* Keys with a variants panel */
+ position: relative;
+ overflow: hidden;
+ -webkit-user-select: none;
+ user-select: none;
+ -webkit-tap-highlight-color: transparent;
+}
+:where(.MLK__rows > .MLK__row div):hover {
+ overflow: visible;
+ background: var(--_keycap-background-hover);
+}
+:where(.MLK__rows > .MLK__row div) .ML__latex {
+ pointer-events: none;
+ touch-action: none;
+}
+:where(.MLK__rows > .MLK__row div) svg.svg-glyph {
+ margin: 8px 0;
+ width: 20px;
+ height: 20px;
+ min-height: 20px;
+}
+:where(.MLK__rows > .MLK__row div) svg.svg-glyph-lg {
+ margin: 8px 0;
+ width: 24px;
+ height: 24px;
+ min-height: 24px;
+}
+:where(.MLK__rows > .MLK__row div).MLK__tex-math {
+ font-size: 25px;
+}
+:where(.MLK__rows > .MLK__row div).is-pressed {
+ background: var(--_keycap-background-pressed);
+ color: var(--_keycap-text-pressed);
+ --_box-placeholder-color: var(--_box-placeholder-pressed-color);
+}
+:where(.MLK__rows > .MLK__row div).MLK__keycap.is-active,
+:where(.MLK__rows > .MLK__row div).action.is-active,
+:where(.MLK__rows > .MLK__row div).MLK__keycap.is-pressed,
+:where(.MLK__rows > .MLK__row div).action.is-pressed {
+ z-index: calc(var(--_keyboard-zindex) - 5);
+}
+:where(.MLK__rows > .MLK__row div).MLK__keycap.is-active aside,
+:where(.MLK__rows > .MLK__row div).action.is-active aside,
+:where(.MLK__rows > .MLK__row div).MLK__keycap.is-pressed aside,
+:where(.MLK__rows > .MLK__row div).action.is-pressed aside {
+ display: none;
+}
+:where(.MLK__rows > .MLK__row div).MLK__keycap.is-active .MLK__shift,
+:where(.MLK__rows > .MLK__row div).action.is-active .MLK__shift,
+:where(.MLK__rows > .MLK__row div).MLK__keycap.is-pressed .MLK__shift,
+:where(.MLK__rows > .MLK__row div).action.is-pressed .MLK__shift {
+ display: none;
+}
+:where(.MLK__rows > .MLK__row div).shift.is-pressed,
+:where(.MLK__rows > .MLK__row div).MLK__keycap.is-pressed,
+:where(.MLK__rows > .MLK__row div).action.is-pressed {
+ background: var(--_keycap-background-pressed);
+ color: var(--_keycap-text-pressed);
+}
+:where(.MLK__rows > .MLK__row div).shift.is-active,
+:where(.MLK__rows > .MLK__row div).MLK__keycap.is-active,
+:where(.MLK__rows > .MLK__row div).action.is-active {
+ background: var(--_keycap-background-active);
+ color: var(--_keycap-text-active);
+ --_box-placeholder-color: var(--_box-placeholder-pressed-color);
+}
+:where(.MLK__rows > .MLK__row div) small {
+ color: var(--_keycap-secondary-text);
+}
+:where(.MLK__rows > .MLK__row div) aside {
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
+ font-size: 10px;
+ line-height: 10px;
+ color: var(--_keycap-secondary-text);
+}
+/* Add an attribute 'data-tooltip' to display a tooltip on hover.
+Note there are a different set of tooltip rules for the keyboard toggle
+(it's in a different CSS tree) */
+.ML__keyboard [data-tooltip] {
+ position: relative;
+}
+.ML__keyboard [data-tooltip]::after {
+ position: absolute;
+ display: inline-table;
+ content: attr(data-tooltip);
+ top: inherit;
+ bottom: 100%;
+ width: max-content;
+ max-width: 200px;
+ padding: 8px 8px;
+ background: #616161;
+ color: #fff;
+ text-align: center;
+ z-index: 2;
+ box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
+ border-radius: 2px;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
+ font-weight: 400;
+ font-size: 12px;
+ transition: all 0.15s cubic-bezier(0.4, 0, 1, 1) 1s;
+ opacity: 0;
+ transform: scale(0.5);
+}
+.ML__keyboard [data-tooltip]:hover {
+ position: relative;
+}
+.ML__keyboard [data-tooltip]:hover::after {
+ opacity: 1;
+ transform: scale(1);
+}
+.MLK__toolbar {
+ align-self: center;
+ display: flex;
+ flex-flow: row;
+ justify-content: space-between;
+ width: 100%;
+ max-width: 996px;
+ min-height: 32px;
+ /* Icons for undo/redo, etc. */
+}
+.MLK__toolbar svg {
+ height: 20px;
+ width: 20px;
+}
+.MLK__toolbar > .left {
+ position: relative;
+ display: flex;
+ justify-content: flex-start;
+ flex-flow: row;
+}
+.MLK__toolbar > .right {
+ display: flex;
+ justify-content: flex-end;
+ flex-flow: row;
+}
+.MLK__toolbar > div > div {
+ /* "button" in the toolbar */
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ color: var(--_toolbar-text);
+ fill: currentColor;
+ background: var(--_toolbar-background);
+ font-size: var(--_toolbar-font-size);
+ padding: 4px 15px;
+ cursor: pointer;
+ width: max-content;
+ min-width: 42px;
+ min-height: 34px;
+ border: none;
+ padding-left: 10px;
+ padding-right: 10px;
+ padding-bottom: 8px;
+ padding-top: 8px;
+ margin-top: 0;
+ margin-bottom: 4px;
+ margin-left: 4px;
+ margin-right: 4px;
+ border-radius: 8px;
+ box-shadow: none;
+ border-bottom: 2px solid transparent;
+}
+.MLK__toolbar > div > div:not(.disabled):not(.selected):hover {
+ background: var(--_toolbar-background-hover);
+}
+.MLK__toolbar > div > div.disabled svg,
+.MLK__toolbar > div > div.disabled:hover svg,
+.MLK__toolbar > div > div.disabled.is-pressed svg {
+ color: var(--_toolbar-text);
+ opacity: 0.2;
+}
+.MLK__toolbar > div > div:hover,
+.MLK__toolbar > div > div:active,
+.MLK__toolbar > div > div.is-pressed,
+.MLK__toolbar > div > div.is-active {
+ color: var(--_toolbar-text-active);
+}
+.MLK__toolbar > div > div.selected {
+ color: var(--_toolbar-text-active);
+ background: var(--_toolbar-background-selected);
+ border-radius: 0;
+ border-bottom-color: var(--_toolbar-text-active);
+ padding-bottom: 4px;
+ margin-bottom: 8px;
+}
+/* This is the element that displays variants on press+hold */
+.MLK__variant-panel {
+ visibility: hidden;
+ position: fixed;
+ display: flex;
+ flex-flow: row wrap-reverse;
+ justify-content: center;
+ align-content: center;
+ margin: 0;
+ padding: 0;
+ bottom: auto;
+ top: 0;
+ box-sizing: content-box;
+ transform: none;
+ z-index: calc(var(--_keyboard-zindex) + 1);
+ touch-action: none;
+ max-width: 350px;
+ background: var(--_variant-panel-background);
+ text-align: center;
+ border-radius: 6px;
+ padding: 6px;
+ box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
+ transition: none;
+}
+.MLK__variant-panel.is-visible {
+ visibility: visible;
+}
+.MLK__variant-panel.compact {
+ --_variant-keycap-length: var(--variant-keycap-length, 50px);
+ --_variant-keycap-font-size: var(--variant-keycap-font-size, 24px);
+ --_variant-keycap-aside-font-size: var(--variant-keycap-aside-font-size, 10px);
+}
+.MLK__variant-panel .item {
+ display: flex;
+ flex-flow: column;
+ align-items: center;
+ justify-content: center;
+ font-size: var(--_variant-keycap-font-size);
+ height: var(--_variant-keycap-length);
+ width: var(--_variant-keycap-length);
+ margin: 0;
+ box-sizing: border-box;
+ border-radius: 5px;
+ border: 1px solid transparent;
+ background: transparent;
+ pointer-events: all;
+ cursor: pointer;
+ color: var(--_variant-keycap-text);
+ fill: currentColor;
+}
+@media (max-height: 412px) {
+ .MLK__variant-panel .item {
+ --_variant-keycap-font-size: var(--variant-keycap-font-size, 24px);
+ --_variant-keycap-length: var(--variant-keycap-length, 50px);
+ }
+}
+.MLK__variant-panel .item .ML__latex {
+ pointer-events: none;
+}
+.MLK__variant-panel .item.is-active {
+ background: var(--_variant-keycap-background-active);
+ color: var(--_variant-keycap-text-active);
+}
+.MLK__variant-panel .item.is-pressed {
+ background: var(--_variant-keycap-background-pressed);
+ color: var(--_variant-keycap-text-pressed);
+}
+.MLK__variant-panel .item.small {
+ font-size: var(--_keycap-small-font-size);
+}
+.MLK__variant-panel .item.swatch-button {
+ box-sizing: border-box;
+ background: #fbfbfb;
+}
+.MLK__variant-panel .item.swatch-button > span {
+ display: inline-block;
+ margin: 6px;
+ width: calc(100% - 12px);
+ height: calc(100% - 12px);
+ border-radius: 50%;
+}
+.MLK__variant-panel .item.swatch-button:hover {
+ background: #f0f0f0;
+}
+.MLK__variant-panel .item.swatch-button:hover > span {
+ border-radius: 2px;
+}
+.MLK__variant-panel .item.box > div,
+.MLK__variant-panel .item.box > span {
+ border: 1px dashed rgba(0, 0, 0, 0.24);
+}
+.MLK__variant-panel .item .warning {
+ min-height: 60px;
+ min-width: 60px;
+ background: #cd0030;
+ color: white;
+ padding: 5px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ border-radius: 5px;
+}
+.MLK__variant-panel .item .warning.is-pressed,
+.MLK__variant-panel .item .warning.is-active {
+ background: red;
+}
+.MLK__variant-panel .item .warning svg.svg-glyph {
+ width: 50px;
+ height: 50px;
+}
+.MLK__variant-panel .item aside {
+ font-size: var(--_variant-keycap-aside-font-size);
+ line-height: 12px;
+ opacity: 0.78;
+ padding-top: 2px;
+}
+.MLK__keycap {
+ position: relative;
+}
+.MLK__shift {
+ display: block;
+ position: absolute;
+ right: 4px;
+ top: 4px;
+ font-size: var(--_keycap-shift-font-size);
+ color: var(--_keycap-shift-color);
+}
+.hide-shift .MLK__shift {
+ display: none;
+}
+@media (max-width: 414px) {
+ .MLK__variant-panel {
+ max-width: 350px;
+ --_variant-keycap-font-size: var(--variant-keycap-font-size, 24px);
+ --_variant-keycap-length: var(--variant-keycap-length, 50px);
+ }
+}
+/* @xs breakpoint: iPhone 5 */
+@container (max-width: 414px) {
+ .MLK__rows {
+ --_keycap-gap: max(var(--_keycap-gap, 2px), 2px);
+ --_keycap-height: max(var(--_keycap-height), 42px);
+ --_keycap-width: min(min(var(--_keycap-max-width), 10cqw), 62px);
+ }
+ .MLK__toolbar > div > div {
+ font-size: 100%;
+ margin-left: 2px;
+ margin-right: 2px;
+ }
+ .MLK__rows .shift,
+ .MLK__rows .action {
+ font-size: 65%;
+ }
+ .MLK__rows .warning svg.svg-glyph {
+ width: 14px;
+ height: 14px;
+ min-height: 14px;
+ }
+}
+@container (max-width: 744px) {
+ .MLK__rows {
+ --_keycap-gap: max(var(--keycap-gap, 2px), 2px);
+ --_keycap-height: max(var(--keycap-height, 52px), 52px);
+ --_keycap-width: min(min(var(--_keycap-max-width), 10cqw), 62px);
+ }
+ .MLK__toolbar > div > div {
+ padding-left: 0;
+ padding-right: 0;
+ }
+ .MLK__tooltip::after {
+ padding: 8px 16px;
+ font-size: 16px;
+ }
+ .MLK__rows > .MLK__row > div.fnbutton {
+ font-size: 16px;
+ }
+ .MLK__rows > .MLK__row > div.bigfnbutton {
+ font-size: calc(var(--_keycap-extra-small-font-size) / 1.55);
+ }
+ .MLK__rows > .MLK__row > div.small {
+ font-size: 13px;
+ }
+ .MLK__rows > .MLK__row > div > aside {
+ display: none;
+ }
+ .MLK__shift {
+ display: none;
+ }
+}
+/* Medium breakpoint: larger phones */
+@container (max-width: 768px) {
+ .MLK__rows {
+ --_keycap-height: max(var(--keycap-height, 42px), 42px);
+ }
+ .MLK__rows > .MLK__row > div > small {
+ font-size: 14px;
+ }
+}
+@media (max-height: 768px) {
+ .MLK__rows {
+ --_keycap-height: max(var(--keycap-height, 42px), 42px);
+ }
+ .MLK__rows > .MLK__row > div > small {
+ font-size: 14px;
+ }
+}
+@container (max-width: 1444px) {
+ .MLK__rows .if-wide {
+ display: none;
+ }
+}
+@media (prefers-color-scheme: dark) {
+ .ML__keyboard {
+ --_accent-color: var(--keyboard-accent-color, #0b5c9c);
+ --_background: var(--keyboard-background, #151515);
+ --_border: var(--keyboard-border, transparent);
+ --_toolbar-text: var(--keyboard-toolbar-text, #e3e4e8);
+ --_toolbar-background-hover: var(--keyboard-toolbar-background-hover, #303030);
+ --keyboard-toolbar-background-hover: #303030;
+ --_horizontal-rule: var(--keyboard-horizontal-rule, 1px solid #303030);
+ --_keycap-background: var(--keycap-background, #1f2022);
+ --_keycap-background-hover: var(--keycap-background-hover, #2f3032);
+ --_keycap-border: var(--_keycap-border, transparent);
+ --_keycap-border-bottom: var(--_keycap-border-bottom, transparent);
+ --_keycap-text: var(--keycap-text, #e3e4e8);
+ --_keycap-secondary-background: var(--keycap-secondary-background, #3d4144);
+ --_keycap-secondary-background-hover: var(--keycap-secondary-background-hover, #4d5154);
+ --_keycap-secondary-text: var(--keycap-secondary-text, #e7ebee);
+ --keycap-secondary-border: transparent;
+ --keycap-secondary-border-bottom: transparent;
+ --_keycap-secondary-border: var(--keycap-secondary-border, transparent);
+ --_keycap-secondary-border-bottom: var(--keycap-secondary-border-bottom, transparent);
+ --_variant-panel-background: var(--variant-panel-background, #303030);
+ --_variant-keycap-text-active: var(--variant-keycap-text-active, #fff);
+ }
+}
+/* Same as the media query, but with a class */
+[theme='dark'] .ML__keyboard {
+ --_accent-color: var(--keyboard-accent-color, #0b5c9c);
+ --_background: var(--keyboard-background, #151515);
+ --_border: var(--keyboard-border, transparent);
+ --_toolbar-text: var(--keyboard-toolbar-text, #e3e4e8);
+ --_toolbar-background-hover: var(--keyboard-toolbar-background-hover, #303030);
+ --keyboard-toolbar-background-hover: #303030;
+ --_horizontal-rule: var(--keyboard-horizontal-rule, 1px solid #303030);
+ --_keycap-background: var(--keycap-background, #1f2022);
+ --_keycap-background-hover: var(--keycap-background-hover, #2f3032);
+ --_keycap-border: var(--_keycap-border, transparent);
+ --_keycap-border-bottom: var(--_keycap-border-bottom, transparent);
+ --_keycap-text: var(--keycap-text, #e3e4e8);
+ --_keycap-secondary-background: var(--keycap-secondary-background, #3d4144);
+ --_keycap-secondary-background-hover: var(--keycap-secondary-background-hover, #4d5154);
+ --_keycap-secondary-text: var(--keycap-secondary-text, #e7ebee);
+ --keycap-secondary-border: transparent;
+ --keycap-secondary-border-bottom: transparent;
+ --_keycap-secondary-border: var(--keycap-secondary-border, transparent);
+ --_keycap-secondary-border-bottom: var(--keycap-secondary-border-bottom, transparent);
+ --_variant-panel-background: var(--variant-panel-background, #303030);
+ --_variant-keycap-text-active: var(--variant-keycap-text-active, #fff);
+}
+[theme='light'] .ML__keyboard {
+ --_accent-color: var(--keyboard-accent-color, #0c75d8);
+ --_background: var(--keyboard-background, #cacfd7);
+ --_border: var(--keyboard-border, #ddd);
+ --_toolbar-text: var(--keyboard-toolbar-text, #2c2e2f);
+ --_toolbar-background: var(--keyboard-toolbar-background, transparent);
+ --_toolbar-background-hover: var(--keyboard-toolbar-background-hover, #eee);
+ --_toolbar-background-selected: var(--keyboard-toolbar-background-selected, transparent);
+ --_horizontal-rule: var(--keyboard-horizontal-rule, 1px solid #fff);
+ --_keycap-background: var(--keycap-background, white);
+ --_keycap-background-hover: var(--keycap-background-hover, #f5f5f7);
+ --_keycap-background-active: var(--keycap-background-active, var(--_accent-color));
+ --_keycap-background-pressed: var(--keycap-background-pressed, var(--_accent-color));
+ --_keycap-border: var(--_keycap-border, #e5e6e9);
+ --_keycap-border-bottom: var(--_keycap-border-bottom, #8d8f92);
+ --_keycap-text: var(--keycap-text, #000);
+ --_keycap-text-active: var(--keycap-text-active, #fff);
+ --_keycap-text-hover: var(--keycap-text-hover, var(--_keycap-text));
+ --_keycap-text-pressed: var(--keycap-text-pressed, #fff);
+ --_keycap-shift-text: var(--keycap-shift-text, var(--_accent-color));
+ --_keycap-secondary-background: var(--keycap-secondary-background, #a0a9b8);
+ --_keycap-secondary-background-hover: var(--keycap-secondary-background-hover, #7d8795);
+ --_keycap-secondary-text: var(--keycap-secondary-text, #060707);
+ --_keycap-secondary-border: var(--keycap-secondary-border, #c5c9d0);
+ --_keycap-secondary-border-bottom: var(--keycap-secondary-border-bottom, #989da6);
+ --_variant-panel-background: var(--variant-panel-background, #fff);
+ --_variant-keycap-text: var(--variant-keycap-textvar, var(--_keycap-text));
+ --_variant-keycap-text-active: var(--variant-keycap-text-active, var(--_keycap-text-active));
+ --_variant-keycap-background-active: var(--variant-keycap-background-active, var(--_accent-color));
+}
+`;
+
+// src/ui/style.less
+var style_default = ":host {\n --primary-color: #5898ff;\n --primary-color-dimmed: #c0c0f0;\n --primary-color-dark: var(--blue-500);\n --primary-color-light: var(--blue-100);\n --primary-color-reverse: #ffffff;\n --secondary-color: #ff8a65;\n --secondary-color-dimmed: #f0d5c5;\n --secondary-color-dark: var(--orange-500);\n --secondary-color-light: var(--orange-100);\n --secondary-color-reverse: #ffffff;\n --link-color: #5898ff;\n --link-color-dimmed: #c5c5c5;\n --link-color-dark: #121212;\n --link-color-light: #e2e2e2;\n --link-color-reverse: #ffffff;\n --semantic-blue: var(--blue-700);\n --semantic-red: var(--red-400);\n --semantic-orange: var(--orange-400);\n --semantic-green: var(--green-700);\n --neutral-100: #f5f5f5;\n --neutral-200: #eeeeee;\n --neutral-300: #e0e0e0;\n --neutral-400: #bdbdbd;\n --neutral-500: #9e9e9e;\n --neutral-600: #757575;\n --neutral-700: #616161;\n --neutral-800: #424242;\n --neutral-900: #212121;\n --red-25: #fff8f7;\n --red-50: #fff1ef;\n --red-100: #ffeae6;\n --red-200: #ffcac1;\n --red-300: #ffa495;\n --red-400: #ff7865;\n --red-500: #f21c0d;\n --red-600: #e50018;\n --red-700: #d30024;\n --red-800: #bd002c;\n --red-900: #a1002f;\n --orange-25: #fffbf8;\n --orange-50: #fff7f1;\n --orange-100: #fff3ea;\n --orange-200: #ffe1c9;\n --orange-300: #ffcca2;\n --orange-400: #ffb677;\n --orange-500: #fe9310;\n --orange-600: #f58700;\n --orange-700: #ea7c00;\n --orange-800: #dc6d00;\n --orange-900: #ca5b00;\n --brown-25: #fff8ef;\n --brown-50: #fff1df;\n --brown-100: #ffe9ce;\n --brown-200: #ebcca6;\n --brown-300: #cdaf8a;\n --brown-400: #af936f;\n --brown-500: #856a47;\n --brown-600: #7f5e34;\n --brown-700: #78511f;\n --brown-800: #6e4200;\n --brown-900: #593200;\n --yellow-25: #fffdf9;\n --yellow-50: #fffcf2;\n --yellow-100: #fffaec;\n --yellow-200: #fff2ce;\n --yellow-300: #ffe8ab;\n --yellow-400: #ffdf85;\n --yellow-500: #ffcf33;\n --yellow-600: #f1c000;\n --yellow-700: #dfb200;\n --yellow-800: #c9a000;\n --yellow-900: #ad8a00;\n --lime-25: #f4ffee;\n --lime-50: #e9ffdd;\n --lime-100: #ddffca;\n --lime-200: #a8fb6f;\n --lime-300: #94e659;\n --lime-400: #80d142;\n --lime-500: #63b215;\n --lime-600: #45a000;\n --lime-700: #268e00;\n --lime-800: #007417;\n --lime-900: #005321;\n --green-25: #f5fff5;\n --green-50: #ebffea;\n --green-100: #e0ffdf;\n --green-200: #a7ffa7;\n --green-300: #5afa65;\n --green-400: #45e953;\n --green-500: #17cf36;\n --green-600: #00b944;\n --green-700: #00a34a;\n --green-800: #008749;\n --green-900: #00653e;\n --teal-25: #f3ffff;\n --teal-50: #e6fffe;\n --teal-100: #d9fffe;\n --teal-200: #8dfffe;\n --teal-300: #57f4f4;\n --teal-400: #43e5e5;\n --teal-500: #17cfcf;\n --teal-600: #00c2c0;\n --teal-700: #00b5b1;\n --teal-800: #00a49e;\n --teal-900: #009087;\n --cyan-25: #f7fcff;\n --cyan-50: #eff8ff;\n --cyan-100: #e7f5ff;\n --cyan-200: #c2e6ff;\n --cyan-300: #95d5ff;\n --cyan-400: #61c4ff;\n --cyan-500: #13a7ec;\n --cyan-600: #069eda;\n --cyan-700: #0095c9;\n --cyan-800: #0088b2;\n --cyan-900: #0a7897;\n --blue-25: #f7faff;\n --blue-50: #eef5ff;\n --blue-100: #e5f1ff;\n --blue-200: #bfdbff;\n --blue-300: #92c2ff;\n --blue-400: #63a8ff;\n --blue-500: #0d80f2;\n --blue-600: #0077db;\n --blue-700: #006dc4;\n --blue-800: #0060a7;\n --blue-900: #005086;\n --indigo-25: #f8f7ff;\n --indigo-50: #f1efff;\n --indigo-100: #eae7ff;\n --indigo-200: #ccc3ff;\n --indigo-300: #ac99ff;\n --indigo-400: #916aff;\n --indigo-500: #63c;\n --indigo-600: #5a21b2;\n --indigo-700: #4e0b99;\n --indigo-800: #3b0071;\n --indigo-900: #220040;\n --purple-25: #fbf7ff;\n --purple-50: #f8f0ff;\n --purple-100: #f4e8ff;\n --purple-200: #e4c4ff;\n --purple-300: #d49aff;\n --purple-400: #c36aff;\n --purple-500: #a219e6;\n --purple-600: #9000c4;\n --purple-700: #7c009f;\n --purple-800: #600073;\n --purple-900: #3d0043;\n --magenta-25: #fff8fb;\n --magenta-50: #fff2f6;\n --magenta-100: #ffebf2;\n --magenta-200: #ffcddf;\n --magenta-300: #ffa8cb;\n --magenta-400: #ff7fb7;\n --magenta-500: #eb4799;\n --magenta-600: #da3689;\n --magenta-700: #c82179;\n --magenta-800: #b00065;\n --magenta-900: #8a004c;\n}\n@media (prefers-color-scheme: dark) {\n :host {\n --semantic-blue: var(--blue-700);\n --semantic-red: var(--red-400);\n --semantic-orange: var(--orange-400);\n --semantic-green: var(--green-700);\n --semantic-bg-blue: var(--blue-25);\n --semantic-bg-red: var(--red-25);\n --semantic-bg-orange: var(--orange-25);\n --semantic-bg-green: var(--green-25);\n --neutral-100: #121212;\n --neutral-200: #424242;\n --neutral-300: #616161;\n --neutral-400: #757575;\n --neutral-500: #9e9e9e;\n --neutral-600: #bdbdbd;\n --neutral-700: #e0e0e0;\n --neutral-800: #eeeeee;\n --neutral-900: #f5f5f5;\n }\n}\n:host([theme='dark']) {\n --semantic-blue: var(--blue-700);\n --semantic-red: var(--red-400);\n --semantic-orange: var(--orange-400);\n --semantic-green: var(--green-700);\n --semantic-bg-blue: var(--blue-25);\n --semantic-bg-red: var(--red-25);\n --semantic-bg-orange: var(--orange-25);\n --semantic-bg-green: var(--green-25);\n --neutral-100: #121212;\n --neutral-200: #424242;\n --neutral-300: #616161;\n --neutral-400: #757575;\n --neutral-500: #9e9e9e;\n --neutral-600: #bdbdbd;\n --neutral-700: #e0e0e0;\n --neutral-800: #eeeeee;\n --neutral-900: #f5f5f5;\n}\n/* @media (prefers-color-scheme: dark) {\n :host {\n --label-color: #fff;\n --active-label-color: #000;\n --menu-bg: #525252;\n --active-bg: #5898ff;\n --active-bg-dimmed: #5c5c5c;\n }\n} */\n:host {\n --ui-font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont,\n 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji',\n 'Segoe UI Emoji', 'Segoe UI Symbol';\n --ui-font-size: 14px;\n --ui-line-height: 1.5;\n --ui-letter-spacing: 0.007em;\n --mono-font-family: 'Berkeley Mono', 'JetBrains Mono', 'IBM Plex Mono',\n 'Source Code Pro', Menlo, Monaco, 'Courier New', monospace;\n --ui-layer-1: var(--neutral-100);\n --ui-layer-2: var(--neutral-200);\n --ui-layer-3: var(--neutral-300);\n --ui-layer-4: var(--neutral-400);\n --ui-layer-5: var(--neutral-500);\n --ui-layer-6: var(--neutral-600);\n --ui-border-color: var(--primary-color);\n --ui-border-radius: 4px;\n --ui-text: var(--neutral-900);\n --ui-text-secondary: var(--neutral-700);\n --ui-text-placeholder: var(--neutral-500);\n --ui-text-muted: var(--neutral-300);\n /** A field is a UI element in which a user can type data, for\n * example an input or textarea element.\n */\n --ui-field-bg: var(--neutral-100);\n --ui-field-bg-hover: var(--neutral-100);\n --ui-field-bg-disabled: var(--neutral-300);\n --ui-field-bg-invalid: var(--red-100);\n --ui-field-bg-focus: var(--neutral-100);\n --ui-field-border: 0.5px solid var(--border-color);\n --ui-field-border-hover: 0.5px solid var(--border-color);\n --ui-field-border-disabled: 0.5px solid var(--border-color);\n --ui-field-border-invalid: 0.5px solid var(--border-color);\n --ui-field-border-focus: 0.5px solid var(--border-color);\n --ui-menu-bg: var(--neutral-100);\n --ui-menu-text: var(--neutral-900);\n --ui-menu-bg-hover: var(--neutral-200);\n --ui-menu-text-hover: var(--neutral-900);\n /** The `active` state is used for the state of menu items\n * when they are selected.\n */\n --ui-menu-bg-active: var(--primary-color);\n --ui-menu-text-active: var(--primary-color-reverse);\n /** The `active-muted` set is used for the state of\n * submenus when they are open.\n */\n --ui-menu-bg-active-muted: var(--neutral-300);\n --ui-menu-text-active-muted: var(--neutral-900);\n /* --ui-menu-shadow: 0 1px 2px 0 rgba(60, 64, 67, 0.302),\n0 2px 6px 2px rgba(60, 64, 67, 0.149); */\n --ui-menu-shadow: 0 0 2px rgba(0, 0, 0, 0.5), 0 0 20px rgba(0, 0, 0, 0.2);\n --ui-menu-divider: 0.5px solid #c7c7c7;\n /* var(--neutral-300); */\n --ui-menu-z-index: 10000;\n --page-bg: var(--neutral-100);\n --content-bg: var(--neutral-200);\n}\n@media (prefers-color-scheme: dark) {\n :host {\n --ui-menu-bg: var(--neutral-200);\n }\n}\n:host([theme='dark']) {\n --ui-menu-bg: var(--neutral-200);\n}\n/* PingFang SC is a macOS font. Microsoft Yahei is a Windows font. \n Noto is a Linux/Android font.\n*/\n:lang(zh-cn),\n:lang(zh-sg),\n:lang(zh-my),\n:lang(zh) {\n --ui-font-family: -apple-system, system-ui, 'PingFang SC', 'Hiragino Sans GB',\n 'Noto Sans CJK SC', 'Noto Sans SC', 'Noto Sans', 'Microsoft Yahei UI',\n 'Microsoft YaHei New', 'Microsoft Yahei', '\u5FAE\u8F6F\u96C5\u9ED1', SimSun, '\u5B8B\u4F53',\n STXihei, '\u534E\u6587\u7EC6\u9ED1', sans-serif;\n}\n:lang(zh-tw),\n:lang(zh-hk),\n:lang(zh-mo) {\n --ui-font-family: -apple-system, system-ui, 'Noto Sans',\n 'Microsoft JhengHei UI', 'Microsoft JhengHei', '\u5FAE\u8EDF\u6B63\u9ED1\u9AD4', '\u65B0\u7D30\u660E\u9AD4',\n 'PMingLiU', '\u7D30\u660E\u9AD4', 'MingLiU', sans-serif;\n}\n:lang(ja),\n:lang(ja-jp),\n:lang(ja-jp-mac) {\n --ui-font-family: -apple-system, system-ui, 'Hiragino Sans',\n 'Hiragino Kaku Gothic ProN', 'Noto Sans CJK JP', 'Noto Sans JP', 'Noto Sans',\n '\u6E38\u30B4\u30B7\u30C3\u30AF', '\u6E38\u30B4\u30B7\u30C3\u30AF\u4F53', YuGothic, 'Yu Gothic', '\u30E1\u30A4\u30EA\u30AA', Meiryo,\n '\uFF2D\uFF33 \uFF30\u30B4\u30B7\u30C3\u30AF', 'MS PGothic', sans-serif;\n}\n:lang(ko),\n:lang(ko-kr),\n:lang(ko-kr-std) {\n --ui-font-family: -apple-system, system-ui, 'Noto Sans CJK KR', 'Noto Sans KR',\n 'Noto Sans', 'Malgun Gothic', '\uB9D1\uC740 \uACE0\uB515', 'Apple SD Gothic Neo',\n '\uC560\uD50C SD \uC0B0\uB3CC\uACE0\uB515 Neo', 'Apple SD \uC0B0\uB3CC\uACE0\uB515 Neo', '\uB3CB\uC6C0', Dotum, sans-serif;\n}\n:lang(ko-kr-apple) {\n --ui-font-family: -apple-system, system-ui, 'Noto Sans CJK KR', 'Noto Sans KR',\n 'Noto Sans', 'Apple SD Gothic Neo', '\uC560\uD50C SD \uC0B0\uB3CC\uACE0\uB515 Neo',\n 'Apple SD \uC0B0\uB3CC\uACE0\uB515 Neo', '\uB3CB\uC6C0', Dotum, sans-serif;\n}\n:lang(zh-cn),\n:lang(zh-sg),\n:lang(zh-my),\n:lang(zh),\n:lang(zh-tw),\n:lang(zh-hk),\n:lang(zh-mo),\n:lang(ja),\n:lang(ja-jp),\n:lang(ja-jp-mac),\n:lang(ko),\n:lang(ko-kr),\n:lang(ko-kr-std),\n:lang(ko-kr-apple) {\n --ui-font-size: 1rem;\n --ui-line-height: 1.7;\n --ui-letter-spacing: 0;\n}\n:dir(rtl) {\n --ui-line-height: auto;\n --ui-letter-spacing: 0;\n}\n";
+
+// src/ui/menu/style.less
+var style_default2 = ".ui-menu *,\n.ui-menu ::before,\n.ui-menu ::after {\n box-sizing: border-box;\n}\n.ui-menu {\n display: none;\n color-scheme: light dark;\n -webkit-user-select: none;\n /* Important: Safari iOS doesn't respect user-select */\n user-select: none;\n cursor: default;\n -webkit-touch-callout: none;\n -webkit-tap-highlight-color: rgba(0 0 0 0);\n --active-label-color: #fff;\n /* ui-menu-text-active */\n --label-color: #121212;\n /* ui-menu-text */\n --menu-bg: #e2e2e2;\n /* ui-menu-background */\n --active-bg: #5898ff;\n /* ui-menu-background-active */\n --active-bg-dimmed: #c5c5c5;\n /* ui-menu-background-active-muted */\n}\n/** Use the :where pseudo selector to make the specificity of the\n * selector 0, so that it can be overridden by the user.\n */\n:where(.ui-menu-container) {\n position: absolute;\n overflow: visible;\n width: auto;\n height: auto;\n z-index: 10000;\n border-radius: 8px;\n background: var(--ui-menu-bg);\n box-shadow: var(--ui-menu-shadow);\n list-style: none;\n padding: 6px 0 6px 0;\n margin: 0;\n user-select: none;\n cursor: default;\n color: var(--ui-menu-text);\n font-weight: normal;\n font-style: normal;\n text-shadow: none;\n text-transform: none;\n letter-spacing: 0;\n outline: none;\n opacity: 1;\n /* The [popover] elements have a 1px solid black border. Ugh. */\n border: none;\n width: fit-content;\n height: fit-content;\n}\n:where(.ui-menu-container > li) {\n display: flex;\n flex-flow: row;\n align-items: center;\n padding: 1px 7px 1px 7px;\n margin-top: 0;\n margin-left: 6px;\n margin-right: 6px;\n border-radius: 4px;\n white-space: nowrap;\n position: relative;\n outline: none;\n fill: currentColor;\n user-select: none;\n cursor: default;\n text-align: left;\n color: inherit;\n font-family: var(--ui-font-family);\n font-size: var(--ui-font-size);\n line-height: var(--ui-line-height);\n letter-spacing: var(--ui-letter-spacing);\n}\n:where(.ui-menu-container > li > .label) {\n appearance: none;\n background: none;\n outline: none;\n width: 100%;\n margin: 0;\n padding: 1px 2px 1px 1px;\n overflow: visible;\n border: 1px solid transparent;\n white-space: nowrap;\n text-align: start;\n}\n:where(.ui-menu-container > li:has(.heading)) {\n margin-top: 0.5em;\n}\n:where(.ui-menu-container > li > .label.heading) {\n font-weight: bold;\n opacity: 0.4;\n}\n:where(.ui-menu-container > li.indent > .label) {\n margin-inline-start: 12px;\n}\n:where(.ui-menu-container > li > .label.indent) {\n margin-inline-start: 12px;\n}\n:where(.ui-menu-container > li[role='divider']) {\n border-bottom: 1px solid var(--ui-menu-divider);\n border-radius: 0;\n padding: 0;\n margin-left: 15px;\n margin-right: 15px;\n padding-top: 5px;\n margin-bottom: 5px;\n width: calc(100% - 30px);\n /** 100% - (margin-left + margin-right) */\n}\n:where(.ui-menu-container > li[aria-disabled='true']) {\n opacity: 0.5;\n}\n:where(.ui-menu-container > li.active) {\n background: var(--ui-menu-bg-active);\n background: -apple-system-control-accent;\n color: var(--ui-menu-text-active);\n}\n:where(.ui-menu-container > li.active.is-submenu-open) {\n background: var(--ui-menu-bg-active-muted);\n color: inherit;\n}\n:where(.ui-menu-container > li[aria-haspopup='true'] > .label) {\n padding-inline-end: 0;\n}\n:where(.ui-menu-container > li[aria-haspopup='true'].active::after) {\n color: var(--ui-menu-text-active);\n}\n/** Keyboard shortcut */\n:where(.ui-menu-container > li > kbd) {\n font-family: var(--ui-font-family);\n margin-inline-start: 12px;\n opacity: 0.4;\n}\n:where(.ui-menu-container > li.active > kbd) {\n opacity: 0.85;\n}\n.ui-trailing-chevron {\n display: flex;\n margin-inline-start: 24px;\n width: 10px;\n height: 10px;\n margin-bottom: 4px;\n}\n.ui-trailing-chevron:dir(rtl) {\n transform: scaleX(-1);\n}\n.ui-checkmark {\n display: flex;\n margin-inline-end: -11px;\n margin-inline-start: -4px;\n margin-top: 2px;\n width: 16px;\n height: 16px;\n}\n.ui-mixedmark {\n display: flex;\n margin-inline-end: -11px;\n margin-inline-start: -4px;\n margin-top: 2px;\n width: 16px;\n height: 16px;\n}\n";
+
+// src/common/stylesheet.ts
+var gStylesheets;
+function getStylesheetContent(id) {
+ let content = "";
+ switch (id) {
+ case "mathfield-element":
+ content = `
+ :host { display: inline-block; background-color: field; color: fieldtext; border-width: 1px; border-style: solid; border-color: #acacac; border-radius: 2px; padding:4px;}
+ :host([hidden]) { display: none; }
+ :host([disabled]), :host([disabled]:focus), :host([disabled]:focus-within) { outline: none; opacity: .5; }
+ :host(:focus), :host(:focus-within) {
+ outline: Highlight auto 1px; /* For Firefox */
+ outline: -webkit-focus-ring-color auto 1px;
+ }
+ :host([readonly]:focus), :host([readonly]:focus-within),
+ :host([read-only]:focus), :host([read-only]:focus-within) {
+ outline: none;
+ }
+ @media (hover: none) and (pointer: coarse) {
+ :host(:not(:focus)) :first-child { pointer-events: none !important; }
+ }`;
+ break;
+ case "core":
+ content = core_default;
+ break;
+ case "mathfield":
+ content = mathfield_default;
+ break;
+ case "environment-popover":
+ content = environment_popover_default;
+ break;
+ case "suggestion-popover":
+ content = suggestion_popover_default;
+ break;
+ case "keystroke-caption":
+ content = keystroke_caption_default;
+ break;
+ case "virtual-keyboard":
+ content = virtual_keyboard_default;
+ break;
+ case "ui":
+ content = style_default;
+ break;
+ case "menu":
+ content = style_default2;
+ break;
+ default:
+ debugger;
+ }
+ return content;
+}
+function getStylesheet(id) {
+ if (!gStylesheets)
+ gStylesheets = {};
+ if (gStylesheets[id])
+ return gStylesheets[id];
+ gStylesheets[id] = new CSSStyleSheet();
+ gStylesheets[id].replaceSync(getStylesheetContent(id));
+ return gStylesheets[id];
+}
+var gInjectedStylesheets;
+function injectStylesheet(id) {
+ var _a3;
+ if (!("adoptedStyleSheets" in document)) {
+ if (window.document.getElementById(`mathlive-style-${id}`))
+ return;
+ const styleNode = window.document.createElement("style");
+ styleNode.id = `mathlive-style-${id}`;
+ styleNode.append(window.document.createTextNode(getStylesheetContent(id)));
+ window.document.head.appendChild(styleNode);
+ return;
+ }
+ if (!gInjectedStylesheets)
+ gInjectedStylesheets = {};
+ if (((_a3 = gInjectedStylesheets[id]) != null ? _a3 : 0) !== 0)
+ gInjectedStylesheets[id] += 1;
+ else {
+ const stylesheet = getStylesheet(id);
+ document.adoptedStyleSheets = [...document.adoptedStyleSheets, stylesheet];
+ gInjectedStylesheets[id] = 1;
+ }
+}
+function releaseStylesheet(id) {
+ if (!("adoptedStyleSheets" in document))
+ return;
+ if (!(gInjectedStylesheets == null ? void 0 : gInjectedStylesheets[id]))
+ return;
+ gInjectedStylesheets[id] -= 1;
+ if (gInjectedStylesheets[id] <= 0) {
+ const stylesheet = gStylesheets[id];
+ document.adoptedStyleSheets = document.adoptedStyleSheets.filter(
+ (x) => x !== stylesheet
+ );
+ }
+}
+
+// src/atoms/accent.ts
+var AccentAtom = class _AccentAtom extends Atom {
+ constructor(options) {
+ var _a3;
+ super(__spreadProps(__spreadValues({}, options), { type: "accent", body: (_a3 = options.body) != null ? _a3 : void 0 }));
+ if (options.accentChar)
+ this.accent = options.accentChar;
+ else
+ this.svgAccent = options == null ? void 0 : options.svgAccent;
+ this.skipBoundary = true;
+ this.captureSelection = true;
+ }
+ static fromJson(json) {
+ return new _AccentAtom(json);
+ }
+ toJson() {
+ return __spreadProps(__spreadValues({}, super.toJson()), {
+ accentChar: this.accent,
+ svgAccent: this.svgAccent
+ });
+ }
+ render(parentContext) {
+ var _a3;
+ const context = new Context(
+ { parent: parentContext, mathstyle: "cramp" },
+ this.style
+ );
+ const base = (_a3 = Atom.createBox(context, this.body)) != null ? _a3 : new Box("\u25A2", { style: this.style });
+ let skew = 0;
+ if (!this.hasEmptyBranch("body") && this.body.length === 2 && this.body[1].isCharacterBox())
+ skew = base.skew;
+ let clearance = Math.min(base.height, X_HEIGHT);
+ let accentBox;
+ if (this.svgAccent) {
+ accentBox = makeSVGBox(this.svgAccent);
+ clearance = context.metrics.bigOpSpacing1 - clearance;
+ } else if (this.accent) {
+ const accent = new Box(this.accent, { fontFamily: "Main-Regular" });
+ accent.italic = 0;
+ const vecClass = this.accent === 8407 ? " ML__accent-vec" : "";
+ accentBox = new Box(new Box(accent), {
+ classes: "ML__accent-body" + vecClass
+ });
+ }
+ accentBox = new VBox({
+ shift: 0,
+ children: [
+ { box: new Box(base) },
+ -clearance,
+ {
+ box: accentBox,
+ marginLeft: base.left + 2 * skew,
+ classes: ["ML__center"]
+ }
+ ]
+ });
+ const result = new Box(accentBox, { type: "lift" });
+ if (this.caret)
+ result.caret = this.caret;
+ this.bind(context, result.wrap(context));
+ return this.attachSupsub(context, { base: result });
+ }
+};
+
+// src/core/delimiters.ts
+var RIGHT_DELIM = {
+ "(": ")",
+ "{": "}",
+ "[": "]",
+ "|": "|",
+ "\\lbrace": "\\rbrace",
+ "\\lparen": "\\rparen",
+ "\\{": "\\}",
+ "\\langle": "\\rangle",
+ "\\lfloor": "\\rfloor",
+ "\\lceil": "\\rceil",
+ "\\vert": "\\vert",
+ "\\lvert": "\\rvert",
+ "\\Vert": "\\Vert",
+ "\\lVert": "\\rVert",
+ "\\lbrack": "\\rbrack",
+ "\\ulcorner": "\\urcorner",
+ "\\llcorner": "\\lrcorner",
+ "\\lgroup": "\\rgroup",
+ "\\lmoustache": "\\rmoustache"
+};
+var LEFT_DELIM = Object.fromEntries(
+ Object.entries(RIGHT_DELIM).map(([leftDelim, rightDelim]) => [
+ rightDelim,
+ leftDelim
+ ])
+);
+function getSymbolValue(symbol) {
+ var _a3;
+ return (_a3 = {
+ "[": 91,
+ // '[',
+ "]": 93,
+ // ']',
+ "(": 40,
+ // '(',
+ ")": 41,
+ // ')',
+ "\\mid": 8739,
+ "|": 8739,
+ "\u2223": 8739,
+ // DIVIDES
+ "\u2225": 8741,
+ // PARALLEL TO
+ "\\|": 8739,
+ "\\{": 123,
+ // '{',
+ "\\}": 125,
+ // '}',
+ "\\lbrace": 123,
+ // '{',
+ "\\rbrace": 125,
+ // '}',
+ "\\lparen": 40,
+ // '('
+ "\\rparen": 41,
+ // ')'
+ "\\lbrack": 91,
+ // '[',
+ "\\rbrack": 93,
+ // ']',
+ "\\vert": 8739,
+ "\\lvert": 8739,
+ "\\mvert": 8739,
+ "\\rvert": 8739,
+ "\\Vert": 8741,
+ "\\lVert": 8741,
+ "\\mVert": 8741,
+ "\\rVert": 8741,
+ "\\parallel": 8741,
+ "\\shortparallel": 8741,
+ "\\langle": 10216,
+ "\\rangle": 10217,
+ "\\lfloor": 8970,
+ "\\rfloor": 8971,
+ "\\lceil": 8968,
+ "\\rceil": 8969,
+ "\\ulcorner": 9484,
+ "\\urcorner": 9488,
+ "\\llcorner": 9492,
+ "\\lrcorner": 9496,
+ "\\lgroup": 10222,
+ "\\rgroup": 10223,
+ "\\lmoustache": 9136,
+ "\\rmoustache": 9137,
+ "\\surd": 8730
+ }[symbol]) != null ? _a3 : symbol.codePointAt(0);
+}
+function makeSmallDelim(delim, context, center, options) {
+ var _a3;
+ const text = new Box(getSymbolValue(delim), {
+ fontFamily: "Main-Regular",
+ isSelected: options.isSelected,
+ classes: "ML__small-delim " + ((_a3 = options.classes) != null ? _a3 : "")
+ });
+ const box = text.wrap(context);
+ if (center)
+ box.setTop((1 - context.scalingFactor) * AXIS_HEIGHT);
+ return box;
+}
+function makeLargeDelim(delim, size, center, parentContext, options) {
+ var _a3, _b3;
+ const context = new Context(
+ { parent: parentContext, mathstyle: "textstyle" },
+ options == null ? void 0 : options.style
+ );
+ const result = new Box(getSymbolValue(delim), {
+ fontFamily: `Size${size}-Regular`,
+ isSelected: options.isSelected,
+ classes: ((_a3 = options.classes) != null ? _a3 : "") + ` ML__delim-size${size}`,
+ type: (_b3 = options.type) != null ? _b3 : "ignore"
+ }).wrap(context);
+ if (center)
+ result.setTop((1 - context.scalingFactor) * AXIS_HEIGHT);
+ return result;
+}
+function makeStackedDelim(delim, heightTotal, center, context, options) {
+ var _a3;
+ let top;
+ let middle;
+ let repeat;
+ let bottom;
+ top = repeat = bottom = getSymbolValue(delim);
+ middle = null;
+ let fontFamily = "Size1-Regular";
+ if (delim === "\\vert" || delim === "\\lvert" || delim === "\\rvert" || delim === "\\mvert" || delim === "\\mid")
+ repeat = top = bottom = 8739;
+ else if (delim === "\\Vert" || delim === "\\lVert" || delim === "\\rVert" || delim === "\\mVert" || delim === "\\|")
+ repeat = top = bottom = 8741;
+ else if (delim === "\\uparrow")
+ repeat = bottom = 9168;
+ else if (delim === "\\Uparrow")
+ repeat = bottom = 8214;
+ else if (delim === "\\downarrow")
+ top = repeat = 9168;
+ else if (delim === "\\Downarrow")
+ top = repeat = 8214;
+ else if (delim === "\\updownarrow") {
+ top = 8593;
+ repeat = 9168;
+ bottom = 8595;
+ } else if (delim === "\\Updownarrow") {
+ top = 8657;
+ repeat = 8214;
+ bottom = 8659;
+ } else if (delim === "[" || delim === "\\lbrack") {
+ top = 9121;
+ repeat = 9122;
+ bottom = 9123;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "]" || delim === "\\rbrack") {
+ top = 9124;
+ repeat = 9125;
+ bottom = 9126;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\lfloor" || delim === "\u230A") {
+ repeat = top = 9122;
+ bottom = 9123;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\lceil" || delim === "\u2308") {
+ top = 9121;
+ repeat = bottom = 9122;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\rfloor" || delim === "\u230B") {
+ repeat = top = 9125;
+ bottom = 9126;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\rceil" || delim === "\u2309") {
+ top = 9124;
+ repeat = bottom = 9125;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "(" || delim === "\\lparen") {
+ top = 9115;
+ repeat = 9116;
+ bottom = 9117;
+ fontFamily = "Size4-Regular";
+ } else if (delim === ")" || delim === "\\rparen") {
+ top = 9118;
+ repeat = 9119;
+ bottom = 9120;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\{" || delim === "\\lbrace") {
+ top = 9127;
+ middle = 9128;
+ bottom = 9129;
+ repeat = 9130;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\}" || delim === "\\rbrace") {
+ top = 9131;
+ middle = 9132;
+ bottom = 9133;
+ repeat = 9130;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\lgroup" || delim === "\u27EE") {
+ top = 9127;
+ bottom = 9129;
+ repeat = 9130;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\rgroup" || delim === "\u27EF") {
+ top = 9131;
+ bottom = 9133;
+ repeat = 9130;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\lmoustache" || delim === "\u23B0") {
+ top = 9127;
+ bottom = 9133;
+ repeat = 9130;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\rmoustache" || delim === "\u23B1") {
+ top = 9131;
+ bottom = 9129;
+ repeat = 9130;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\surd") {
+ top = 57345;
+ bottom = 9143;
+ repeat = 57344;
+ fontFamily = "Size4-Regular";
+ } else if (delim === "\\ulcorner") {
+ top = 9484;
+ repeat = bottom = 32;
+ } else if (delim === "\\urcorner") {
+ top = 9488;
+ repeat = bottom = 32;
+ } else if (delim === "\\llcorner") {
+ bottom = 9492;
+ repeat = top = 32;
+ } else if (delim === "\\lrcorner") {
+ top = 9496;
+ repeat = top = 32;
+ }
+ const topMetrics = getCharacterMetrics(top, fontFamily);
+ const topHeightTotal = topMetrics.height + topMetrics.depth;
+ const repeatMetrics = getCharacterMetrics(repeat, fontFamily);
+ const repeatHeightTotal = repeatMetrics.height + repeatMetrics.depth;
+ const bottomMetrics = getCharacterMetrics(bottom, fontFamily);
+ const bottomHeightTotal = bottomMetrics.height + bottomMetrics.depth;
+ let middleHeightTotal = 0;
+ let middleFactor = 1;
+ if (middle !== null) {
+ const middleMetrics = getCharacterMetrics(middle, fontFamily);
+ middleHeightTotal = middleMetrics.height + middleMetrics.depth;
+ middleFactor = 2;
+ }
+ const minHeight = topHeightTotal + bottomHeightTotal + middleHeightTotal;
+ const repeatCount = Math.max(
+ 0,
+ Math.ceil((heightTotal - minHeight) / (middleFactor * repeatHeightTotal))
+ );
+ const realHeightTotal = minHeight + repeatCount * middleFactor * repeatHeightTotal;
+ let axisHeight = AXIS_HEIGHT;
+ if (center)
+ axisHeight = axisHeight * context.scalingFactor;
+ const depth = realHeightTotal / 2 - axisHeight;
+ const OVERLAP = 8e-3;
+ const stack = [];
+ stack.push({ box: new Box(bottom, { fontFamily }) });
+ stack.push(-OVERLAP);
+ const repeatBox = new Box(repeat, { fontFamily });
+ if (middle === null) {
+ for (let i = 0; i < repeatCount; i++)
+ stack.push({ box: repeatBox });
+ } else {
+ for (let i = 0; i < repeatCount; i++)
+ stack.push({ box: repeatBox });
+ stack.push(-OVERLAP);
+ stack.push({ box: new Box(middle, { fontFamily }) });
+ stack.push(-OVERLAP);
+ for (let i = 0; i < repeatCount; i++)
+ stack.push({ box: repeatBox });
+ }
+ stack.push(-OVERLAP);
+ stack.push({ box: new Box(top, { fontFamily }) });
+ let sizeClass = "";
+ if (fontFamily === "Size1-Regular")
+ sizeClass = " delim-size1";
+ else if (fontFamily === "Size4-Regular")
+ sizeClass = " delim-size4";
+ const inner = new VBox(
+ {
+ bottom: depth,
+ children: stack
+ },
+ { classes: sizeClass }
+ );
+ const result = new Box(inner, __spreadProps(__spreadValues({}, options != null ? options : {}), {
+ classes: ((_a3 = options == null ? void 0 : options.classes) != null ? _a3 : "") + " ML__delim-mult"
+ }));
+ return result;
+}
+var stackLargeDelimiters = /* @__PURE__ */ new Set([
+ "(",
+ ")",
+ "\\lparen",
+ "\\rparen",
+ "[",
+ "]",
+ "\\lbrack",
+ "\\rbrack",
+ "\\{",
+ "\\}",
+ "\\lbrace",
+ "\\rbrace",
+ "\\lfloor",
+ "\\rfloor",
+ "\\lceil",
+ "\\rceil",
+ "\\surd",
+ "\u230A",
+ "\u230B",
+ "\u2308",
+ "\u2309"
+]);
+var stackAlwaysDelimiters = /* @__PURE__ */ new Set([
+ "\\uparrow",
+ "\\downarrow",
+ "\\updownarrow",
+ "\\Uparrow",
+ "\\Downarrow",
+ "\\Updownarrow",
+ "|",
+ "\\|",
+ "\\vert",
+ "\\Vert",
+ "\\lvert",
+ "\\rvert",
+ "\\lVert",
+ "\\rVert",
+ "\\mvert",
+ "\\mid",
+ "\\lgroup",
+ "\\rgroup",
+ "\\lmoustache",
+ "\\rmoustache",
+ "\u27EE",
+ "\u27EF",
+ "\u23B0",
+ "\u23B1"
+]);
+var stackNeverDelimiters = /* @__PURE__ */ new Set([
+ "<",
+ ">",
+ "\\langle",
+ "\\rangle",
+ "/",
+ "\\backslash",
+ "\\lt",
+ "\\gt"
+]);
+var sizeToMaxHeight = [0, 1.2, 1.8, 2.4, 3];
+function makeSizedDelim(delim, size, context, options) {
+ if (delim === void 0 || delim === ".")
+ return makeNullDelimiter(context, options.classes);
+ if (delim === "<" || delim === "\\lt" || delim === "\u27E8")
+ delim = "\\langle";
+ else if (delim === ">" || delim === "\\gt" || delim === "\u27E9")
+ delim = "\\rangle";
+ if (stackLargeDelimiters.has(delim) || stackNeverDelimiters.has(delim))
+ return makeLargeDelim(delim, size, false, context, options);
+ if (stackAlwaysDelimiters.has(delim)) {
+ return makeStackedDelim(
+ delim,
+ sizeToMaxHeight[size],
+ false,
+ context,
+ options
+ );
+ }
+ console.assert(false, "Unknown delimiter '" + delim + "'");
+ return null;
+}
+var stackNeverDelimiterSequence = [
+ { type: "small", mathstyle: "scriptscriptstyle" },
+ { type: "small", mathstyle: "scriptstyle" },
+ { type: "small", mathstyle: "textstyle" },
+ { type: "large", size: 1 },
+ { type: "large", size: 2 },
+ { type: "large", size: 3 },
+ { type: "large", size: 4 }
+];
+var stackAlwaysDelimiterSequence = [
+ { type: "small", mathstyle: "scriptscriptstyle" },
+ { type: "small", mathstyle: "scriptscriptstyle" },
+ { type: "small", mathstyle: "textstyle" },
+ { type: "stack" }
+];
+var stackLargeDelimiterSequence = [
+ { type: "small", mathstyle: "scriptscriptstyle" },
+ { type: "small", mathstyle: "scriptstyle" },
+ { type: "small", mathstyle: "textstyle" },
+ { type: "large", size: 1 },
+ { type: "large", size: 2 },
+ { type: "large", size: 3 },
+ { type: "large", size: 4 },
+ { type: "stack" }
+];
+function delimTypeToFont(info) {
+ if (info.type === "small")
+ return "Main-Regular";
+ if (info.type === "large")
+ return "Size" + info.size + "-Regular";
+ console.assert(info.type === "stack");
+ return "Size4-Regular";
+}
+function traverseSequence(delim, height, sequence, context) {
+ const start = { "-4": 0, "-3": 1, "0": 2 }[context.mathstyle.sizeDelta];
+ for (let i = start; i < sequence.length; i++) {
+ if (sequence[i].type === "stack") {
+ break;
+ }
+ const metrics = getCharacterMetrics(delim, delimTypeToFont(sequence[i]));
+ if (metrics.defaultMetrics) {
+ return { type: "small", mathstyle: "scriptstyle" };
+ }
+ let heightDepth = metrics.height + metrics.depth;
+ if (sequence[i].type === "small") {
+ if (sequence[i].mathstyle === "scriptscriptstyle") {
+ heightDepth *= Math.max(
+ FONT_SCALE[Math.max(1, context.size - 2)],
+ context.minFontScale
+ );
+ } else if (sequence[i].mathstyle === "scriptstyle") {
+ heightDepth *= Math.max(
+ FONT_SCALE[Math.max(1, context.size - 1)],
+ context.minFontScale
+ );
+ }
+ }
+ if (heightDepth > height)
+ return sequence[i];
+ }
+ return sequence[sequence.length - 1];
+}
+function makeCustomSizedDelim(type, delim, height, center, context, options) {
+ if (!delim || delim.length === 0 || delim === ".")
+ return makeNullDelimiter(context);
+ if (delim === "<" || delim === "\\lt")
+ delim = "\\langle";
+ else if (delim === ">" || delim === "\\gt")
+ delim = "\\rangle";
+ let sequence;
+ if (stackNeverDelimiters.has(delim))
+ sequence = stackNeverDelimiterSequence;
+ else if (stackLargeDelimiters.has(delim))
+ sequence = stackLargeDelimiterSequence;
+ else
+ sequence = stackAlwaysDelimiterSequence;
+ const delimType = traverseSequence(
+ getSymbolValue(delim),
+ height,
+ sequence,
+ context
+ );
+ const ctx = new Context(
+ { parent: context, mathstyle: delimType.mathstyle },
+ options == null ? void 0 : options.style
+ );
+ if (delimType.type === "small")
+ return makeSmallDelim(delim, ctx, center, __spreadProps(__spreadValues({}, options), { type }));
+ if (delimType.type === "large") {
+ return makeLargeDelim(delim, delimType.size, center, ctx, __spreadProps(__spreadValues({}, options), {
+ type
+ }));
+ }
+ console.assert(delimType.type === "stack");
+ return makeStackedDelim(delim, height, center, ctx, __spreadProps(__spreadValues({}, options), { type }));
+}
+function makeLeftRightDelim(type, delim, height, depth, context, options) {
+ if (delim === ".")
+ return makeNullDelimiter(context, options == null ? void 0 : options.classes);
+ const axisHeight = AXIS_HEIGHT * context.scalingFactor;
+ const delimiterFactor = 901;
+ const delimiterExtend = 5 / PT_PER_EM;
+ const maxDistFromAxis = Math.max(height - axisHeight, depth + axisHeight);
+ const totalHeight = Math.max(
+ maxDistFromAxis / 500 * delimiterFactor,
+ 2 * maxDistFromAxis - delimiterExtend
+ );
+ return makeCustomSizedDelim(type, delim, totalHeight, true, context, options);
+}
+function makeNullDelimiter(parent, classes) {
+ const box = new Box(null, {
+ classes: " nulldelimiter " + (classes != null ? classes : ""),
+ type: "ignore"
+ });
+ box.width = parent.getRegisterAsEm("nulldelimiterspace");
+ return box.wrap(new Context({ parent, mathstyle: "textstyle" }));
+}
+
+// src/atoms/placeholder.ts
+var PlaceholderAtom = class _PlaceholderAtom extends Atom {
+ constructor(options) {
+ var _a3;
+ super({
+ type: "placeholder",
+ command: "\\placeholder",
+ mode: (_a3 = options == null ? void 0 : options.mode) != null ? _a3 : "math",
+ style: options == null ? void 0 : options.style
+ });
+ this.captureSelection = true;
+ }
+ static fromJson(json) {
+ return new _PlaceholderAtom(json);
+ }
+ toJson() {
+ return super.toJson();
+ }
+ render(context) {
+ let result;
+ this.value = context.placeholderSymbol;
+ if (typeof context.renderPlaceholder === "function")
+ result = context.renderPlaceholder(context);
+ else
+ result = this.createBox(context);
+ if (this.caret)
+ result.classes += " ML__placeholder-selected";
+ return result;
+ }
+ _serialize(options) {
+ if (options.skipPlaceholders)
+ return "";
+ return "\\placeholder{}";
+ }
+};
+
+// src/latex-commands/environment-types.ts
+var matrices = [
+ "matrix",
+ "matrix*",
+ "pmatrix",
+ "pmatrix*",
+ "bmatrix",
+ "bmatrix*",
+ "Bmatrix",
+ "Bmatrix*",
+ "vmatrix",
+ "vmatrix*",
+ "Vmatrix",
+ "Vmatrix*"
+];
+var cases = ["cases", "dcases", "rcases"];
+var align = ["align", "align*", "aligned", "gather", "gathered", "split"];
+var otherTabular = ["array", "subequations", "eqnarray"];
+function isTabularEnvironment(environment) {
+ return otherTabular.concat(align).concat(cases).concat(matrices).includes(environment);
+}
+function isMatrixEnvironment(environment) {
+ return matrices.includes(environment);
+}
+function isCasesEnvironment(environment) {
+ return cases.includes(environment);
+}
+function isAlignEnvironment(environment) {
+ return align.includes(environment);
+}
+
+// src/atoms/array.ts
+function normalizeArray(atom, array, colFormat) {
+ let maxColCount = 0;
+ for (const colSpec of colFormat)
+ if ("align" in colSpec)
+ maxColCount += 1;
+ let colCount = 0;
+ const rows = [];
+ for (const row of array) {
+ let colIndex2 = 0;
+ colCount = Math.max(colCount, Math.min(row.length, maxColCount));
+ while (colIndex2 < row.length) {
+ const newRow = [];
+ const lastCol = Math.min(row.length, colIndex2 + maxColCount);
+ while (colIndex2 < lastCol) {
+ const cell = row[colIndex2];
+ if (cell.length === 0)
+ newRow.push([new Atom({ type: "first", mode: atom.mode })]);
+ else if (cell[0].type !== "first")
+ newRow.push([new Atom({ type: "first", mode: atom.mode }), ...cell]);
+ else {
+ console.assert(!cell.slice(1).some((x) => x.type === "first"));
+ newRow.push(cell);
+ }
+ colIndex2 += 1;
+ }
+ rows.push(newRow);
+ }
+ }
+ if (rows.length > 0 && rows[rows.length - 1].length === 1 && rows[rows.length - 1][0].length === 1 && rows[rows.length - 1][0][0].type === "first")
+ rows.pop();
+ const result = [];
+ for (const row of rows) {
+ if (row.length !== colCount) {
+ for (let i = row.length; i < colCount; i++) {
+ row.push([
+ new Atom({ type: "first", mode: atom.mode }),
+ new PlaceholderAtom()
+ ]);
+ }
+ }
+ result.push(row);
+ }
+ let rowIndex = 0;
+ let colIndex = 0;
+ for (const row of result) {
+ colIndex = 0;
+ for (const cell of row) {
+ for (const element of cell) {
+ element.parent = atom;
+ element.parentBranch = [rowIndex, colIndex];
+ }
+ colIndex += 1;
+ }
+ rowIndex += 1;
+ }
+ atom.isDirty = true;
+ return result;
+}
+var ArrayAtom = class _ArrayAtom extends Atom {
+ constructor(envName, array, rowGaps, options = {}) {
+ var _a3;
+ super({ type: "array" });
+ this.environmentName = envName;
+ this.rowGaps = rowGaps;
+ if (options.mathstyleName)
+ this.mathstyleName = options.mathstyleName;
+ if (options.columns) {
+ if (options.columns.length === 0)
+ this.colFormat = [{ align: "l" }];
+ else
+ this.colFormat = options.columns;
+ }
+ if (!this.colFormat) {
+ this.colFormat = [
+ { align: "l" },
+ { align: "l" },
+ { align: "l" },
+ { align: "l" },
+ { align: "l" },
+ { align: "l" },
+ { align: "l" },
+ { align: "l" },
+ { align: "l" },
+ { align: "l" }
+ ];
+ }
+ this.array = normalizeArray(this, array, this.colFormat);
+ if (options.leftDelim)
+ this.leftDelim = options.leftDelim;
+ if (options.rightDelim)
+ this.rightDelim = options.rightDelim;
+ if (options.arraycolsep !== void 0)
+ this.arraycolsep = options.arraycolsep;
+ this.colSeparationType = options.colSeparationType;
+ if (options.arraystretch !== void 0)
+ this.arraystretch = options.arraystretch;
+ this.minColumns = (_a3 = options.minColumns) != null ? _a3 : 1;
+ }
+ static fromJson(json) {
+ return new _ArrayAtom(
+ json.environmentName,
+ json.array,
+ json.rowGaps,
+ json
+ );
+ }
+ toJson() {
+ const result = __spreadProps(__spreadValues({}, super.toJson()), {
+ environmentName: this.environmentName,
+ array: this.array.map(
+ (row) => row.map((col) => col.map((x) => x.toJson()))
+ ),
+ rowGaps: this.rowGaps,
+ columns: this.colFormat,
+ colSeparationType: this.colSeparationType
+ });
+ if (this.arraystretch !== void 0)
+ result.arraystretch = this.arraystretch;
+ if (this.arraycolsep !== void 0)
+ result.arraycolsep = this.arraycolsep;
+ if (this.leftDelim)
+ result.leftDelim = this.leftDelim;
+ if (this.rightDelim)
+ result.rightDelim = this.rightDelim;
+ return result;
+ }
+ branch(cell) {
+ var _a3;
+ if (!isCellBranch(cell))
+ return void 0;
+ return (_a3 = this.array[cell[0]][cell[1]]) != null ? _a3 : void 0;
+ }
+ createBranch(cell) {
+ var _a3;
+ if (!isCellBranch(cell))
+ return [];
+ this.isDirty = true;
+ return (_a3 = this.branch(cell)) != null ? _a3 : [];
+ }
+ get rowCount() {
+ return this.array.length;
+ }
+ get colCount() {
+ return this.array[0].length;
+ }
+ get maxColumns() {
+ return this.colFormat.filter((col) => Boolean(col["align"])).length;
+ }
+ removeBranch(name) {
+ if (isNamedBranch(name))
+ return super.removeBranch(name);
+ const children = this.branch(name);
+ this.array[name[0]][name[1]] = void 0;
+ children.forEach((x) => {
+ x.parent = void 0;
+ x.parentBranch = void 0;
+ });
+ console.assert(children[0].type === "first");
+ children.shift();
+ this.isDirty = true;
+ return children;
+ }
+ get hasChildren() {
+ return this.children.length > 0;
+ }
+ get children() {
+ const result = [];
+ for (const row of this.array) {
+ for (const cell of row) {
+ if (cell) {
+ for (const atom of cell) {
+ result.push(...atom.children);
+ result.push(atom);
+ }
+ }
+ }
+ }
+ return [...result, ...super.children];
+ }
+ render(context) {
+ var _a3, _b3, _c2, _d2, _e, _f;
+ const innerContext = new Context(
+ { parent: context, mathstyle: this.mathstyleName },
+ this.style
+ );
+ const arrayRuleWidth = innerContext.getRegisterAsEm("arrayrulewidth");
+ const arrayColSep = innerContext.getRegisterAsEm("arraycolsep");
+ const doubleRuleSep = innerContext.getRegisterAsEm("doublerulesep");
+ const arraystretch = (_b3 = (_a3 = this.arraystretch) != null ? _a3 : innerContext.getRegisterAsNumber("arraystretch")) != null ? _b3 : 1;
+ let arraycolsep = typeof this.arraycolsep === "number" ? this.arraycolsep : arrayColSep;
+ if (this.colSeparationType === "small") {
+ const localMultiplier = new Context({
+ parent: context,
+ mathstyle: "scriptstyle"
+ }).scalingFactor;
+ arraycolsep = 0.2778 * (localMultiplier / context.scalingFactor);
+ }
+ const arrayskip = arraystretch * BASELINE_SKIP;
+ const arstrutHeight = 0.7 * arrayskip;
+ const arstrutDepth = 0.3 * arrayskip;
+ let totalHeight = 0;
+ const body = [];
+ let nc = 0;
+ const nr = this.array.length;
+ for (let r = 0; r < nr; ++r) {
+ const inrow = this.array[r];
+ nc = Math.max(nc, inrow.length);
+ const cellContext = new Context(
+ { parent: innerContext, mathstyle: this.mathstyleName },
+ this.style
+ );
+ let height = arstrutHeight / cellContext.scalingFactor;
+ let depth = arstrutDepth / cellContext.scalingFactor;
+ const outrow = { cells: [], height: 0, depth: 0, pos: 0 };
+ for (const element of inrow) {
+ const elt = (_c2 = Atom.createBox(cellContext, element, { type: "ignore" })) != null ? _c2 : new Box(null, { type: "ignore" });
+ depth = Math.max(depth, elt.depth);
+ height = Math.max(height, elt.height);
+ outrow.cells.push(elt);
+ }
+ let gap = (_d2 = convertDimensionToEm(this.rowGaps[r])) != null ? _d2 : 0;
+ if (gap > 0) {
+ gap += arstrutDepth;
+ depth = Math.max(depth, gap);
+ gap = 0;
+ }
+ if (r < nr - 1 && !isMatrixEnvironment(this.environmentName) && this.environmentName !== "cases" && this.environmentName !== "array")
+ depth += innerContext.getRegisterAsEm("jot");
+ outrow.height = height;
+ outrow.depth = depth;
+ totalHeight += height;
+ outrow.pos = totalHeight;
+ totalHeight += depth + gap;
+ body.push(outrow);
+ }
+ const offset = totalHeight / 2 + AXIS_HEIGHT;
+ const contentCols = [];
+ for (let colIndex = 0; colIndex < nc; colIndex++) {
+ const stack = [];
+ for (const row of body) {
+ const element = row.cells[colIndex];
+ element.depth = row.depth;
+ element.height = row.height;
+ stack.push({ box: element, shift: row.pos - offset });
+ }
+ if (stack.length > 0)
+ contentCols.push(new VBox({ individualShift: stack }));
+ }
+ const cols = [];
+ let previousColContent = false;
+ let previousColRule = false;
+ let currentContentCol = 0;
+ let firstColumn = !this.leftDelim;
+ const { colFormat } = this;
+ for (const colDesc of colFormat) {
+ if ("align" in colDesc && currentContentCol >= contentCols.length) {
+ break;
+ }
+ if ("align" in colDesc) {
+ if (previousColContent) {
+ cols.push(makeColGap(2 * arraycolsep));
+ } else if (previousColRule || firstColumn) {
+ cols.push(makeColGap(arraycolsep));
+ }
+ cols.push(
+ new Box(contentCols[currentContentCol], {
+ classes: "col-align-" + colDesc.align
+ })
+ );
+ currentContentCol++;
+ previousColContent = true;
+ previousColRule = false;
+ firstColumn = false;
+ } else if ("gap" in colDesc) {
+ if (typeof colDesc.gap === "number") {
+ cols.push(makeColGap(colDesc.gap));
+ } else {
+ const col = makeColOfRepeatingElements(
+ context,
+ body,
+ offset,
+ colDesc.gap
+ );
+ if (col)
+ cols.push(col);
+ }
+ previousColContent = false;
+ previousColRule = false;
+ firstColumn = false;
+ } else if ("separator" in colDesc) {
+ const separator = new Box(null, { classes: "vertical-separator" });
+ separator.height = totalHeight;
+ separator.setStyle("height", totalHeight, "em");
+ separator.setStyle(
+ "border-right",
+ `${arrayRuleWidth}em ${colDesc.separator} currentColor`
+ );
+ separator.setStyle("vertical-align", -(totalHeight - offset), "em");
+ let gap = 0;
+ if (previousColRule)
+ gap = doubleRuleSep - arrayRuleWidth;
+ else if (previousColContent)
+ gap = arraycolsep - arrayRuleWidth;
+ separator.left = gap;
+ cols.push(separator);
+ previousColContent = false;
+ previousColRule = true;
+ firstColumn = false;
+ }
+ }
+ if (previousColContent && !this.rightDelim) {
+ cols.push(makeColGap(arraycolsep));
+ }
+ const inner = new Box(cols, { classes: "mtable" });
+ if ((!this.leftDelim || this.leftDelim === ".") && (!this.rightDelim || this.rightDelim === ".")) {
+ if (this.caret)
+ inner.caret = this.caret;
+ return this.bind(context, inner);
+ }
+ const innerHeight = inner.height;
+ const innerDepth = inner.depth;
+ const base = this.bind(
+ context,
+ new Box(
+ [
+ this.bind(
+ context,
+ makeLeftRightDelim(
+ "open",
+ (_e = this.leftDelim) != null ? _e : ".",
+ innerHeight,
+ innerDepth,
+ innerContext,
+ { isSelected: this.isSelected }
+ )
+ ),
+ inner,
+ this.bind(
+ context,
+ makeLeftRightDelim(
+ "close",
+ (_f = this.rightDelim) != null ? _f : ".",
+ innerHeight,
+ innerDepth,
+ innerContext,
+ { isSelected: this.isSelected }
+ )
+ )
+ ],
+ { type: "ord" }
+ )
+ );
+ if (!base)
+ return null;
+ base.setStyle("display", "inline-block");
+ if (this.caret)
+ base.caret = this.caret;
+ return this.bind(context, this.attachSupsub(context, { base }));
+ }
+ _serialize(options) {
+ var _a3;
+ const result = [];
+ if (this.environmentName === "lines")
+ result.push(`{\\displaylines`);
+ else
+ result.push(`\\begin{${this.environmentName}}`);
+ if (this.environmentName === "array") {
+ result.push("{");
+ if (this.colFormat !== void 0) {
+ for (const format of this.colFormat) {
+ if ("align" in format && typeof format.align === "string")
+ result.push(format.align);
+ else if ("separator" in format && format.separator === "solid")
+ result.push("|");
+ else if ("separator" in format && format.separator === "dashed")
+ result.push(":");
+ }
+ }
+ result.push("}");
+ }
+ for (let row = 0; row < this.array.length; row++) {
+ for (let col = 0; col < this.array[row].length; col++) {
+ if (col > 0)
+ result.push(" & ");
+ result.push(Atom.serialize(this.array[row][col], options));
+ }
+ if (row < this.array.length - 1) {
+ const gap = this.rowGaps[row];
+ if (gap == null ? void 0 : gap.dimension)
+ result.push(`\\\\[${gap.dimension} ${(_a3 = gap.unit) != null ? _a3 : "pt"}] `);
+ else
+ result.push("\\\\ ");
+ }
+ }
+ if (this.environmentName === "lines")
+ result.push(`}`);
+ else
+ result.push(`\\end{${this.environmentName}}`);
+ return joinLatex(result);
+ }
+ getCell(row, col) {
+ return this.array[row][col];
+ }
+ setCell(row, column, value) {
+ console.assert(
+ this.type === "array" && Array.isArray(this.array) && this.array[row][column] !== void 0
+ );
+ for (const atom of this.array[row][column]) {
+ atom.parent = void 0;
+ atom.parentBranch = void 0;
+ }
+ let atoms = value;
+ if (value.length === 0 || value[0].type !== "first")
+ atoms = [new Atom({ type: "first", mode: this.mode }), ...value];
+ this.array[row][column] = atoms;
+ for (const atom of atoms) {
+ atom.parent = this;
+ atom.parentBranch = [row, column];
+ }
+ this.isDirty = true;
+ }
+ addRowBefore(row) {
+ console.assert(this.type === "array" && Array.isArray(this.array));
+ const newRow = [];
+ for (let i = 0; i < this.colCount; i++)
+ newRow.push(makePlaceholderCell(this));
+ this.array.splice(row, 0, newRow);
+ for (let i = row; i < this.rowCount; i++) {
+ for (let j = 0; j < this.colCount; j++) {
+ const atoms = this.array[i][j];
+ if (atoms)
+ for (const atom of atoms)
+ atom.parentBranch = [i, j];
+ }
+ }
+ this.isDirty = true;
+ }
+ addRowAfter(row) {
+ console.assert(this.type === "array" && Array.isArray(this.array));
+ const newRow = [];
+ for (let i = 0; i < this.colCount; i++)
+ newRow.push(makePlaceholderCell(this));
+ this.array.splice(row + 1, 0, newRow);
+ for (let i = row + 1; i < this.rowCount; i++) {
+ for (let j = 0; j < this.colCount; j++) {
+ const atoms = this.array[i][j];
+ if (atoms)
+ for (const atom of atoms)
+ atom.parentBranch = [i, j];
+ }
+ }
+ this.isDirty = true;
+ }
+ removeRow(row) {
+ console.assert(
+ this.type === "array" && Array.isArray(this.array) && this.rowCount > row
+ );
+ const deleted = this.array.splice(row, 1);
+ for (const column of deleted) {
+ for (const cell of column) {
+ if (cell) {
+ for (const child of cell) {
+ child.parent = void 0;
+ child.parentBranch = void 0;
+ }
+ }
+ }
+ }
+ for (let i = row; i < this.rowCount; i++) {
+ for (let j = 0; j < this.colCount; j++) {
+ const atoms = this.array[i][j];
+ if (atoms)
+ for (const atom of atoms)
+ atom.parentBranch = [i, j];
+ }
+ }
+ this.isDirty = true;
+ }
+ addColumnBefore(col) {
+ console.assert(this.type === "array" && Array.isArray(this.array));
+ for (const row of this.array)
+ row.splice(col, 0, makePlaceholderCell(this));
+ for (let i = 0; i < this.rowCount; i++) {
+ for (let j = col; j < this.colCount; j++) {
+ const atoms = this.array[i][j];
+ if (atoms)
+ for (const atom of atoms)
+ atom.parentBranch = [i, j];
+ }
+ }
+ this.isDirty = true;
+ }
+ addColumnAfter(col) {
+ console.assert(this.type === "array" && Array.isArray(this.array));
+ for (const row of this.array)
+ row.splice(col + 1, 0, makePlaceholderCell(this));
+ for (let i = 0; i < this.rowCount; i++) {
+ for (let j = col + 1; j < this.colCount; j++) {
+ const atoms = this.array[i][j];
+ if (atoms)
+ for (const atom of atoms)
+ atom.parentBranch = [i, j];
+ }
+ }
+ this.isDirty = true;
+ }
+ addColumn() {
+ this.addColumnAfter(this.colCount - 1);
+ }
+ removeColumn(col) {
+ console.assert(
+ this.type === "array" && Array.isArray(this.array) && this.colCount > col
+ );
+ for (const row of this.array) {
+ const deleted = row.splice(col, 1);
+ for (const cell of deleted) {
+ if (cell) {
+ for (const child of cell) {
+ child.parent = void 0;
+ child.parentBranch = void 0;
+ }
+ }
+ }
+ }
+ for (let i = 0; i < this.rowCount; i++) {
+ for (let j = col; j < this.colCount; j++) {
+ const atoms = this.array[i][j];
+ if (atoms)
+ for (const atom of atoms)
+ atom.parentBranch = [i, j];
+ }
+ }
+ this.isDirty = true;
+ }
+ get cells() {
+ const result = [];
+ for (const row of this.array) {
+ for (const cell of row)
+ if (cell)
+ result.push(cell.filter((x) => x.type !== "first"));
+ }
+ return result;
+ }
+};
+function makePlaceholderCell(parent) {
+ const first = new Atom({ type: "first", mode: parent.mode });
+ first.parent = parent;
+ const placeholder = new PlaceholderAtom();
+ placeholder.parent = parent;
+ return [first, placeholder];
+}
+function makeColGap(width) {
+ const result = new Box(null, { classes: "arraycolsep" });
+ result.width = width;
+ return result;
+}
+function makeColOfRepeatingElements(context, rows, offset, element) {
+ if (!element)
+ return null;
+ const col = [];
+ for (const row of rows) {
+ const cell = Atom.createBox(context, element, { type: "ignore" });
+ if (cell) {
+ cell.depth = row.depth;
+ cell.height = row.height;
+ col.push({ box: cell, shift: row.pos - offset });
+ }
+ }
+ return new VBox({ individualShift: col }).wrap(context);
+}
+
+// src/atoms/box.ts
+var BoxAtom = class _BoxAtom extends Atom {
+ constructor(options) {
+ super({
+ mode: options.mode,
+ command: options.command,
+ style: options.style,
+ body: options.body,
+ type: "box"
+ });
+ this.framecolor = options.framecolor;
+ this.backgroundcolor = options.backgroundcolor;
+ this.padding = options.padding;
+ this.offset = options.offset;
+ this.border = options.border;
+ }
+ static fromJson(json) {
+ return new _BoxAtom(json);
+ }
+ toJson() {
+ return __spreadProps(__spreadValues({}, super.toJson()), {
+ framecolor: this.framecolor,
+ backgroundcolor: this.backgroundcolor,
+ padding: this.padding,
+ offset: this.offset,
+ border: this.border
+ });
+ }
+ render(parentContext) {
+ var _a3, _b3, _c2, _d2;
+ const base = Atom.createBox(parentContext, this.body, { type: "lift" });
+ if (!base)
+ return null;
+ const offset = parentContext.toEm((_a3 = this.offset) != null ? _a3 : { dimension: 0 });
+ base.depth += offset;
+ base.setStyle("display", "inline-block");
+ base.setStyle("position", "relative");
+ base.setStyle(
+ "height",
+ Math.floor(100 * base.height + base.depth) / 100,
+ "em"
+ );
+ base.setStyle("vertical-align", -Math.floor(100 * base.height) / 100, "em");
+ const context = new Context({ parent: parentContext }, this.style);
+ const padding2 = context.toEm((_b3 = this.padding) != null ? _b3 : { register: "fboxsep" });
+ const box = new Box(null, { classes: "ML__box" });
+ box.height = base.height + padding2;
+ box.depth = base.depth + padding2;
+ box.setStyle("box-sizing", "border-box");
+ box.setStyle("position", "absolute");
+ box.setStyle("top", -padding2 + 0.3, "em");
+ box.setStyle("left", 0);
+ box.setStyle("height", box.height + box.depth, "em");
+ box.setStyle("width", "100%");
+ if (this.backgroundcolor) {
+ box.setStyle(
+ "background-color",
+ (_c2 = context.toColor(this.backgroundcolor)) != null ? _c2 : "transparent"
+ );
+ }
+ if (this.framecolor) {
+ box.setStyle(
+ "border",
+ `${context.getRegisterAsEm("fboxrule", 2)}em solid ${(_d2 = context.toColor(this.framecolor)) != null ? _d2 : "black"}`
+ );
+ }
+ if (this.border)
+ box.setStyle("border", this.border);
+ const result = new Box([box, base], { type: "lift" });
+ result.setStyle("display", "inline-block");
+ result.setStyle("position", "relative");
+ result.setStyle("line-height", 0);
+ result.height = base.height + padding2 + (offset > 0 ? offset : 0);
+ result.depth = base.depth + padding2 + (offset < 0 ? -offset : 0);
+ result.setStyle("padding-left", padding2, "em");
+ result.setStyle("padding-right", padding2, "em");
+ result.setStyle(
+ "height",
+ Math.floor(
+ 100 * (base.height + base.depth + 2 * padding2 + Math.abs(offset))
+ ) / 100,
+ "em"
+ );
+ result.setStyle("margin-top", -padding2, "em");
+ result.setStyle(
+ "top",
+ Math.floor(100 * (base.depth - base.height + 2 * padding2 - offset)) / 100,
+ "em"
+ );
+ result.setStyle(
+ "vertical-align",
+ Math.floor(100 * (base.depth + 2 * padding2)) / 100,
+ "em"
+ );
+ if (this.caret)
+ result.caret = this.caret;
+ return this.attachSupsub(parentContext, { base: result });
+ }
+ _serialize(options) {
+ if (!options.skipStyles)
+ return super._serialize(options);
+ return joinLatex([this.bodyToLatex(options), this.supsubToLatex(options)]);
+ }
+};
+
+// src/atoms/composition.ts
+var CompositionAtom = class _CompositionAtom extends Atom {
+ constructor(value, options) {
+ var _a3;
+ super({ type: "composition", mode: (_a3 = options == null ? void 0 : options.mode) != null ? _a3 : "math", value });
+ }
+ static fromJson(json) {
+ return new _CompositionAtom(json.value, json);
+ }
+ toJson() {
+ return super.toJson();
+ }
+ get computedStyle() {
+ return {};
+ }
+ render(context) {
+ const result = new Box(this.value, {
+ classes: "ML__composition",
+ type: "composition"
+ });
+ this.bind(context, result);
+ if (this.caret)
+ result.caret = this.caret;
+ return result;
+ }
+ _serialize(_options) {
+ return "";
+ }
+};
+
+// src/atoms/error.ts
+var ErrorAtom = class _ErrorAtom extends Atom {
+ constructor(value) {
+ super({ type: "error", value, command: value, mode: "math" });
+ this.verbatimLatex = value;
+ }
+ static fromJson(json) {
+ return new _ErrorAtom(json.command);
+ }
+ toJson() {
+ return super.toJson();
+ }
+ render(context) {
+ const result = this.createBox(context, { classes: "ML__error" });
+ if (this.caret)
+ result.caret = this.caret;
+ return result;
+ }
+};
+
+// src/atoms/group.ts
+var GroupAtom = class _GroupAtom extends Atom {
+ constructor(arg, mode, style) {
+ super({ type: "group", mode, style });
+ this.body = arg;
+ this.boxType = arg.length > 1 ? "ord" : "ignore";
+ this.skipBoundary = true;
+ this.displayContainsHighlight = false;
+ if (arg && arg.length === 1 && arg[0].command === ",")
+ this.captureSelection = true;
+ }
+ static fromJson(json) {
+ return new _GroupAtom(json.body, json.mode, json.style);
+ }
+ render(context) {
+ const box = Atom.createBox(context, this.body, { type: this.boxType });
+ if (!box)
+ return null;
+ if (this.caret)
+ box.caret = this.caret;
+ return this.bind(context, box);
+ }
+ _serialize(options) {
+ if (!(options.expandMacro || options.skipStyles || options.skipPlaceholders) && typeof this.verbatimLatex === "string")
+ return this.verbatimLatex;
+ const def = getDefinition(this.command, this.mode);
+ if (def == null ? void 0 : def.serialize)
+ return def.serialize(this, options);
+ return `{${this.bodyToLatex(options)}}`;
+ }
+};
+
+// src/atoms/leftright.ts
+var LeftRightAtom = class _LeftRightAtom extends Atom {
+ constructor(variant, body, options) {
+ super({
+ type: "leftright",
+ style: options.style,
+ displayContainsHighlight: true
+ });
+ this.variant = variant;
+ this.body = body;
+ this.leftDelim = options.leftDelim;
+ this.rightDelim = options.rightDelim;
+ }
+ static fromJson(json) {
+ var _a3;
+ return new _LeftRightAtom((_a3 = json.variant) != null ? _a3 : "", json.body, json);
+ }
+ toJson() {
+ const result = super.toJson();
+ if (this.variant)
+ result.variant = this.variant;
+ if (this.leftDelim)
+ result.leftDelim = this.leftDelim;
+ if (this.rightDelim)
+ result.rightDelim = this.rightDelim;
+ return result;
+ }
+ _serialize(options) {
+ var _a3, _b3;
+ const rightDelim = this.matchingRightDelim();
+ if (this.variant === "left...right") {
+ return joinLatex([
+ "\\left",
+ (_a3 = this.leftDelim) != null ? _a3 : ".",
+ this.bodyToLatex(options),
+ "\\right",
+ rightDelim
+ ]);
+ }
+ if (this.variant === "mleft...mright") {
+ return joinLatex([
+ "\\mleft",
+ (_b3 = this.leftDelim) != null ? _b3 : ".",
+ this.bodyToLatex(options),
+ "\\mright",
+ rightDelim
+ ]);
+ }
+ return joinLatex([
+ !this.leftDelim || this.leftDelim === "." ? "" : this.leftDelim,
+ this.bodyToLatex(options),
+ rightDelim
+ ]);
+ }
+ matchingRightDelim() {
+ var _a3, _b3;
+ if (this.rightDelim && this.rightDelim !== "?")
+ return this.rightDelim;
+ const leftDelim = (_a3 = this.leftDelim) != null ? _a3 : ".";
+ return (_b3 = RIGHT_DELIM[leftDelim]) != null ? _b3 : leftDelim;
+ }
+ render(parentContext) {
+ var _a3, _b3;
+ const context = new Context({ parent: parentContext }, this.style);
+ console.assert(this.body !== void 0);
+ const delimContext = new Context(
+ { parent: parentContext, mathstyle: "textstyle" },
+ this.style
+ );
+ const inner = (_a3 = Atom.createBox(context, this.body, { type: "inner" })) != null ? _a3 : new Box(null, { type: "inner" });
+ const innerHeight = inner.height / delimContext.scalingFactor;
+ const innerDepth = inner.depth / delimContext.scalingFactor;
+ const boxes = [];
+ if (this.leftDelim) {
+ boxes.push(
+ this.bind(
+ delimContext,
+ makeLeftRightDelim(
+ "open",
+ this.leftDelim,
+ innerHeight,
+ innerDepth,
+ delimContext,
+ {
+ isSelected: this.isSelected,
+ classes: "ML__open" + (this.containsCaret ? " ML__contains-caret" : ""),
+ mode: this.mode,
+ style: this.style
+ }
+ )
+ )
+ );
+ }
+ if (inner) {
+ upgradeMiddle(inner.children, this, context, innerHeight, innerDepth);
+ boxes.push(inner);
+ }
+ if (this.rightDelim) {
+ let classes = this.containsCaret ? " ML__contains-caret" : "";
+ let delim = this.rightDelim;
+ if (delim === "?") {
+ if (context.smartFence) {
+ delim = this.matchingRightDelim();
+ classes += " ML__smart-fence__close";
+ } else
+ delim = ".";
+ }
+ boxes.push(
+ this.bind(
+ delimContext,
+ makeLeftRightDelim(
+ "close",
+ delim,
+ innerHeight,
+ innerDepth,
+ delimContext,
+ {
+ isSelected: this.isSelected,
+ classes: classes + " ML__close",
+ mode: this.mode,
+ style: this.style
+ }
+ )
+ )
+ );
+ }
+ let tightSpacing = this.variant === "mleft...mright";
+ const sibling = this.leftSibling;
+ if (sibling) {
+ if (!tightSpacing && sibling.isFunction)
+ tightSpacing = true;
+ if (!tightSpacing && sibling.type === "subsup" && ((_b3 = sibling.leftSibling) == null ? void 0 : _b3.isFunction))
+ tightSpacing = true;
+ }
+ const result = new Box(boxes, {
+ type: tightSpacing ? "close" : "inner",
+ classes: "left-right"
+ });
+ result.setStyle("margin-top", `${-inner.depth}em`);
+ result.setStyle("height", `${inner.height + inner.depth}em`);
+ if (this.caret)
+ result.caret = this.caret;
+ return this.bind(context, result.wrap(context));
+ }
+};
+function upgradeMiddle(boxes, atom, context, height, depth) {
+ if (!boxes)
+ return;
+ for (let i = 0; i < boxes.length; i++) {
+ const child = boxes[i];
+ if (child.type === "middle") {
+ boxes[i] = atom.bind(
+ context,
+ makeLeftRightDelim("inner", child.value, height, depth, context, {
+ isSelected: atom.isSelected
+ })
+ );
+ boxes[i].caret = child.caret;
+ boxes[i].isSelected = child.isSelected;
+ boxes[i].cssId = child.cssId;
+ boxes[i].htmlData = child.htmlData;
+ boxes[i].htmlStyle = child.htmlStyle;
+ boxes[i].attributes = child.attributes;
+ boxes[i].cssProperties = child.cssProperties;
+ } else if (child.children)
+ upgradeMiddle(child.children, atom, context, height, depth);
+ }
+}
+
+// src/atoms/macro.ts
+var MacroAtom = class _MacroAtom extends Atom {
+ constructor(macro, options) {
+ var _a3;
+ super({ type: "macro", command: macro, style: options.style });
+ this.body = options.body;
+ if (options.captureSelection === void 0) {
+ if (options.args)
+ this.captureSelection = false;
+ else
+ this.captureSelection = true;
+ } else
+ this.captureSelection = options.captureSelection;
+ this.macroArgs = options.args;
+ this.expand = (_a3 = options.expand) != null ? _a3 : false;
+ }
+ static fromJson(json) {
+ return new _MacroAtom(json.command, json);
+ }
+ toJson() {
+ const options = super.toJson();
+ if (this.expand)
+ options.expand = true;
+ if (this.captureSelection !== void 0)
+ options.captureSelection = this.captureSelection;
+ if (this.macroArgs)
+ options.args = this.macroArgs;
+ return options;
+ }
+ _serialize(options) {
+ var _a3;
+ return options.expandMacro && this.expand ? this.bodyToLatex(options) : this.command + ((_a3 = this.macroArgs) != null ? _a3 : "");
+ }
+ render(context) {
+ const result = Atom.createBox(context, this.body);
+ if (!result)
+ return null;
+ if (this.caret)
+ result.caret = this.caret;
+ return this.bind(context, result);
+ }
+};
+var MacroArgumentAtom = class _MacroArgumentAtom extends Atom {
+ constructor() {
+ super({ type: "macro-argument" });
+ }
+ static fromJson(_json) {
+ return new _MacroArgumentAtom();
+ }
+ toJson() {
+ const options = super.toJson();
+ return options;
+ }
+ _serialize(_options) {
+ return "";
+ }
+ render(_context) {
+ return null;
+ }
+};
+
+// src/atoms/prompt.ts
+var PromptAtom = class _PromptAtom extends Atom {
+ constructor(placeholderId, correctness, locked = false, body, options) {
+ var _a3;
+ super({
+ type: "prompt",
+ mode: (_a3 = options == null ? void 0 : options.mode) != null ? _a3 : "math",
+ style: options == null ? void 0 : options.style,
+ command: "\\placeholder"
+ });
+ this.body = body;
+ this.correctness = correctness;
+ this.placeholderId = placeholderId;
+ this.locked = locked;
+ this.captureSelection = this.locked;
+ }
+ static fromJson(json) {
+ return new _PromptAtom(
+ json.placeholderId,
+ json.correctness,
+ json.locked,
+ json.body,
+ json
+ );
+ }
+ toJson() {
+ const result = super.toJson();
+ if (this.placeholderId)
+ result.placeholderId = this.placeholderId;
+ if (!this.body)
+ delete result.body;
+ if (this.body) {
+ result.body = this.body.filter((x) => x.type !== "first").map((x) => x.toJson());
+ }
+ if (this.correctness)
+ result.correctness = this.correctness;
+ result.locked = this.locked;
+ return result;
+ }
+ render(parentContext) {
+ const context = new Context({ parent: parentContext });
+ const fboxsep = context.getRegisterAsEm("fboxsep");
+ const hPadding = fboxsep;
+ const vPadding = fboxsep;
+ const content = Atom.createBox(parentContext, this.body);
+ if (!content)
+ return null;
+ if (!content.height)
+ content.height = context.metrics.xHeight;
+ content.setStyle("vertical-align", -content.height, "em");
+ if (this.correctness === "correct") {
+ content.setStyle(
+ "color",
+ "var(--correct-color, var(--ML__correct-color))"
+ );
+ } else if (this.correctness === "incorrect") {
+ content.setStyle(
+ "color",
+ "var(--incorrect-color, var(--ML__incorrect-color))"
+ );
+ }
+ const base = new Box(content, { type: "ord" });
+ base.setStyle("display", "inline-block");
+ base.setStyle("height", content.height + content.depth, "em");
+ base.setStyle("vertical-align", -vPadding, "em");
+ let boxClasses = "ML__prompt ";
+ if (this.locked) {
+ boxClasses += " ML__lockedPromptBox ";
+ } else
+ boxClasses += " ML__editablePromptBox ";
+ if (this.correctness === "correct")
+ boxClasses += " ML__correctPromptBox ";
+ else if (this.correctness === "incorrect")
+ boxClasses += " ML__incorrectPromptBox ";
+ if (this.containsCaret)
+ boxClasses += " ML__focusedPromptBox ";
+ const box = new Box(null, {
+ classes: boxClasses,
+ attributes: { part: "prompt" }
+ });
+ box.height = base.height + vPadding;
+ box.depth = base.depth + vPadding;
+ box.width = base.width + 2 * hPadding;
+ box.setStyle("box-sizing", "border-box");
+ box.setStyle("position", "absolute");
+ box.setStyle("height", base.height + base.depth + 2 * vPadding, "em");
+ if (hPadding === 0)
+ box.setStyle("width", "100%");
+ if (hPadding !== 0) {
+ box.setStyle("width", `calc(100% + ${2 * hPadding}em)`);
+ box.setStyle("top", fboxsep, "em");
+ box.setStyle("left", -hPadding, "em");
+ }
+ if (!this.body || this.body.length === 1) {
+ box.width = 3 * hPadding;
+ box.setStyle("width", `calc(100% + ${3 * hPadding}em)`);
+ box.setStyle("left", -1.5 * hPadding, "em");
+ }
+ let svg = "";
+ if (this.correctness === "incorrect") {
+ svg += ' ';
+ }
+ if (svg)
+ box.svgOverlay = svg;
+ const result = new Box([box, base], { classes: "ML__prompt-atom" });
+ result.setStyle("position", "relative");
+ result.setStyle("display", "inline-block");
+ result.setStyle("line-height", 0);
+ result.height = base.height + vPadding + 0.2;
+ result.depth = base.depth + vPadding;
+ result.left = hPadding;
+ result.right = hPadding;
+ result.setStyle("height", base.height + vPadding, "em");
+ result.setStyle("top", base.depth - base.height, "em");
+ result.setStyle("vertical-align", base.depth + vPadding, "em");
+ result.setStyle("margin-left", 0.5, "em");
+ result.setStyle("margin-right", 0.5, "em");
+ if (this.caret)
+ result.caret = this.caret;
+ return this.bind(
+ context,
+ this.attachSupsub(parentContext, { base: result })
+ );
+ }
+ _serialize(options) {
+ var _a3;
+ const value = (_a3 = this.bodyToLatex(options)) != null ? _a3 : "";
+ if (options.skipPlaceholders)
+ return value;
+ let command = "\\placeholder";
+ if (this.placeholderId)
+ command += `[${this.placeholderId}]`;
+ if (this.correctness === "correct")
+ command += "[correct]";
+ else if (this.correctness === "incorrect")
+ command += "[incorrect]";
+ if (this.locked)
+ command += "[locked]";
+ return latexCommand(command, value);
+ }
+};
+
+// src/atoms/subsup.ts
+var SubsupAtom = class _SubsupAtom extends Atom {
+ constructor(options) {
+ super({ type: "subsup", style: options == null ? void 0 : options.style });
+ this.subsupPlacement = "auto";
+ }
+ static fromJson(json) {
+ const result = new _SubsupAtom(json);
+ for (const branch of NAMED_BRANCHES)
+ if (json[branch])
+ result.setChildren(json[branch], branch);
+ return result;
+ }
+ render(context) {
+ var _a3;
+ const phantomCtx = new Context({ parent: context, isPhantom: true });
+ const leftSibling = this.leftSibling;
+ const base = (_a3 = leftSibling.render(phantomCtx)) != null ? _a3 : new Box(null);
+ const phantom = new Box(null);
+ phantom.height = base.height;
+ phantom.depth = base.depth;
+ return this.attachSupsub(context, {
+ base: phantom,
+ isCharacterBox: leftSibling.isCharacterBox(),
+ // Set to 'ignore' so that it is ignored during inter-box spacing
+ // adjustment.
+ type: "ignore"
+ });
+ }
+ _serialize(options) {
+ return this.supsubToLatex(options);
+ }
+};
+
+// src/core/parser.ts
+function isLiteral(token) {
+ if (!token)
+ return false;
+ return !/^(<$$>|<$>||<{>|<}>|#[0-9\?]|\\.+)$/.test(token);
+}
+var Parser = class {
+ /**
+ * @param tokens - An array of tokens generated by the lexer.
+ *
+ * Note: smartFence and registers are usually defined by the GloablContext.
+ * However, in some cases they need to be overridden.
+ *
+ */
+ constructor(tokens, context, options) {
+ // Accumulated errors encountered while parsing
+ this.errors = [];
+ // The current token to be parsed: index in `this.tokens`
+ this.index = 0;
+ // Counter to prevent deadlock. If `end()` is called too many
+ // times (1,000) in a row for the same token, bail.
+ this.endCount = 0;
+ var _a3, _b3, _c2, _d2;
+ options != null ? options : options = {};
+ this.tokens = tokens;
+ this.context = context instanceof Context && !(options == null ? void 0 : options.parseMode) && !options.mathstyle ? context : new Context(
+ { from: context, mathstyle: options.mathstyle },
+ options.style
+ );
+ this.args = (_a3 = options.args) != null ? _a3 : void 0;
+ this.smartFence = this.context.smartFence;
+ this.parsingContext = {
+ parent: void 0,
+ mathlist: [],
+ style: (_b3 = options.style) != null ? _b3 : {},
+ parseMode: (_c2 = options.parseMode) != null ? _c2 : "math",
+ mathstyle: (_d2 = options.mathstyle) != null ? _d2 : "displaystyle",
+ tabular: false
+ };
+ }
+ beginContext(options) {
+ var _a3, _b3, _c2;
+ const current = this.parsingContext;
+ const newContext = {
+ parent: current,
+ mathlist: [],
+ style: __spreadValues({}, current.style),
+ parseMode: (_a3 = options == null ? void 0 : options.mode) != null ? _a3 : current.parseMode,
+ mathstyle: (_b3 = options == null ? void 0 : options.mathstyle) != null ? _b3 : current.mathstyle,
+ tabular: (_c2 = options == null ? void 0 : options.tabular) != null ? _c2 : false
+ };
+ this.parsingContext = newContext;
+ }
+ endContext() {
+ this.parsingContext = this.parsingContext.parent;
+ }
+ onError(err) {
+ this.errors.push(__spreadValues({
+ before: tokensToString(this.tokens.slice(this.index, this.index + 10)),
+ after: tokensToString(
+ this.tokens.slice(Math.max(0, this.index - 10), this.index)
+ )
+ }, err));
+ }
+ get mathlist() {
+ return this.parsingContext.mathlist;
+ }
+ set mathlist(value) {
+ this.parsingContext.mathlist = value;
+ }
+ get parseMode() {
+ return this.parsingContext.parseMode;
+ }
+ set parseMode(value) {
+ this.parsingContext.parseMode = value;
+ }
+ get tabularMode() {
+ return this.parsingContext.tabular;
+ }
+ get style() {
+ let context = this.parsingContext;
+ while (context) {
+ if (context.style)
+ return __spreadValues({}, context.style);
+ context = context.parent;
+ }
+ return {};
+ }
+ set style(value) {
+ this.parsingContext.style = value;
+ }
+ /**
+ * True if we've reached the end of the token stream
+ */
+ end() {
+ this.endCount++;
+ return this.index >= this.tokens.length || this.endCount > 1e3;
+ }
+ next() {
+ this.index += 1;
+ }
+ get() {
+ this.endCount = 0;
+ return this.index < this.tokens.length ? this.tokens[this.index++] : "";
+ }
+ peek() {
+ return this.tokens[this.index];
+ }
+ /**
+ * @return True if the next token matches the input, and advance
+ */
+ match(input) {
+ if (this.tokens[this.index] === input) {
+ this.index++;
+ return true;
+ }
+ return false;
+ }
+ /**
+ * Return the last atom in the mathlisst that can have a
+ * subscript/superscript attached to it.
+ * If there isn't one, insert a `SubsupAtom` and return it.
+ */
+ lastSubsupAtom() {
+ let atom;
+ if (this.mathlist.length > 0) {
+ atom = this.mathlist[this.mathlist.length - 1];
+ if (atom.type === "subsup")
+ return atom;
+ if (atom.subsupPlacement !== void 0)
+ return atom;
+ }
+ atom = new SubsupAtom({ style: this.style });
+ this.mathlist.push(atom);
+ return atom;
+ }
+ /**
+ * @return True if the next token matches the specified regular expression pattern.
+ */
+ hasPattern(pattern) {
+ return pattern.test(this.tokens[this.index]);
+ }
+ hasInfixCommand() {
+ var _a3;
+ const { index } = this;
+ if (index < this.tokens.length && this.tokens[index].startsWith("\\")) {
+ const info = getDefinition(this.tokens[index], this.parseMode);
+ if (!info || info.definitionType === "symbol")
+ return false;
+ if (info.ifMode && !info.ifMode.includes(this.parseMode))
+ return false;
+ return (_a3 = info.infix) != null ? _a3 : false;
+ }
+ return false;
+ }
+ matchColumnSeparator() {
+ if (!this.tabularMode)
+ return false;
+ const peek = this.peek();
+ if (peek !== "&")
+ return false;
+ this.index++;
+ return true;
+ }
+ matchRowSeparator() {
+ if (!this.tabularMode)
+ return false;
+ const peek = this.peek();
+ if (peek !== "\\\\" && peek !== "\\cr" && peek !== "\\tabularnewline")
+ return false;
+ this.index++;
+ return true;
+ }
+ /**
+ * Return the appropriate value for a placeholder, either a default
+ * one, or if a value was provided for #? via args, that value.
+ */
+ placeholder() {
+ var _a3;
+ const placeHolderArg = (_a3 = this.args) == null ? void 0 : _a3.call(this, "?");
+ if (!placeHolderArg)
+ return [new PlaceholderAtom({ mode: this.parseMode, style: this.style })];
+ return parseLatex(placeHolderArg, {
+ parseMode: this.parseMode,
+ mathstyle: "textstyle"
+ });
+ }
+ skipWhitespace() {
+ while (this.match("")) {
+ }
+ }
+ skipUntilToken(input) {
+ let token = this.tokens[this.index];
+ while (token && token !== input)
+ token = this.tokens[++this.index];
+ if (token === input)
+ this.index++;
+ }
+ skipFiller() {
+ while (this.match("\\relax") || this.match("")) {
+ }
+ }
+ /**
+ * Keywords are used to specify dimensions, and for various other
+ * syntactic constructs.
+ *
+ * Unlike commands, they are not case sensitive.
+ *
+ * There are 25 keywords:
+ *
+ * at by bp cc cm dd depth em ex fil fill filll height in minus
+ * mm mu pc plus pt sp spread to true width
+ *
+ * TeX: 8212
+ * @return true if the expected keyword is present
+ */
+ matchKeyword(keyword) {
+ const savedIndex = this.index;
+ let done = this.end();
+ let value = "";
+ while (!done) {
+ const token = this.get();
+ if (isLiteral(token)) {
+ value += token;
+ done = this.end() || value.length >= keyword.length;
+ } else
+ done = true;
+ }
+ const hasKeyword = keyword.toUpperCase() === value.toUpperCase();
+ if (!hasKeyword)
+ this.index = savedIndex;
+ return hasKeyword;
+ }
+ /**
+ * Return a sequence of characters as a string.
+ * i.e. 'abcd' returns 'abcd'.
+ * Terminates on the first non-literal token encountered
+ * e.g. '<{>', '<}>' etc...
+ * Will also terminate on character literal ']'
+ */
+ scanString() {
+ let result = "";
+ while (!this.end()) {
+ const token = this.peek();
+ if (token === "]")
+ return result;
+ if (token === "")
+ result += " ";
+ else if (token.startsWith("\\")) {
+ this.onError({ code: "unexpected-command-in-string" });
+ result += token.substring(1);
+ } else if (isLiteral(token))
+ result += token;
+ else {
+ return result;
+ }
+ this.next();
+ }
+ return result;
+ }
+ /**
+ * Return a sequence of characters as a string.
+ * Terminates on a balanced closing bracket
+ * This is used by the `\ce` command
+ */
+ scanBalancedString() {
+ let result = "";
+ let done = this.end();
+ let level = 1;
+ while (!done) {
+ const token = this.get();
+ if (token === "")
+ result += " ";
+ else if (token === "<{>") {
+ result += "{";
+ level += 1;
+ } else if (token === "<}>") {
+ level -= 1;
+ if (level > 0)
+ result += "}";
+ else
+ this.index -= 1;
+ } else if (token === "<$>")
+ result += "$";
+ else if (token === "<$$>")
+ result += "$$";
+ else
+ result += token;
+ done = level === 0 || this.end();
+ }
+ return result;
+ }
+ /**
+ * Return the literal tokens, as a string, until a matching closing "}"
+ * Used when handling macros
+ */
+ scanLiteralGroup() {
+ var _a3;
+ if (!this.match("<{>"))
+ return "";
+ let result = "";
+ let level = 1;
+ while (level > 0 && !this.end()) {
+ const token = this.get();
+ if (token === "<}>") {
+ level -= 1;
+ if (level > 0)
+ result += "}";
+ } else if (token === "<{>") {
+ level += 1;
+ result += "{";
+ } else {
+ if (/\\[a-zA-Z]+$/.test(result) && /^[a-zA-Z]/.test(token))
+ result += " ";
+ result += (_a3 = {
+ "": " ",
+ "<$$>": "$$",
+ "<$>": "$"
+ }[token]) != null ? _a3 : token;
+ }
+ }
+ return result;
+ }
+ /**
+ * Return as a number a group of characters representing a
+ * numerical quantity.
+ *
+ * From TeX:8695 (scan_int):
+ * > An integer number can be preceded by any number of spaces and `+' or
+ * > `-' signs. Then comes either a decimal constant (i.e., radix 10), an
+ * > octal constant (i.e., radix 8, preceded by '), a hexadecimal constant
+ * > (radix 16, preceded by "), an alphabetic constant (preceded by `), or
+ * > an internal variable.
+ */
+ scanNumber(isInteger = true) {
+ var _a3, _b3;
+ let negative = false;
+ let token = this.peek();
+ while (token === "" || token === "+" || token === "-") {
+ this.get();
+ if (token === "-")
+ negative = !negative;
+ token = this.peek();
+ }
+ isInteger = Boolean(isInteger);
+ let radix = 10;
+ let digits = /\d/;
+ if (this.match("'")) {
+ radix = 8;
+ digits = /[0-7]/;
+ isInteger = true;
+ } else if (this.match('"')) {
+ radix = 16;
+ digits = /[\dA-F]/;
+ isInteger = true;
+ } else if (this.match("x")) {
+ radix = 16;
+ digits = /[\dA-Fa-f]/;
+ isInteger = true;
+ } else if (this.match("`")) {
+ token = this.get();
+ if (token) {
+ if (token.length === 2 && token.startsWith("\\")) {
+ return {
+ number: (negative ? -1 : 1) * ((_a3 = token.codePointAt(1)) != null ? _a3 : 0),
+ base: "alpha"
+ };
+ }
+ return {
+ number: (negative ? -1 : 1) * ((_b3 = token.codePointAt(0)) != null ? _b3 : 0),
+ base: "alpha"
+ };
+ }
+ return null;
+ }
+ let value = "";
+ while (this.hasPattern(digits))
+ value += this.get();
+ if (!isInteger && (this.match(".") || this.match(","))) {
+ value += ".";
+ while (this.hasPattern(digits))
+ value += this.get();
+ }
+ const result = isInteger ? Number.parseInt(value, radix) : Number.parseFloat(value);
+ if (Number.isNaN(result))
+ return null;
+ return {
+ number: negative ? -result : result,
+ base: radix === 16 ? "hexadecimal" : radix === 8 ? "octal" : "decimal"
+ };
+ }
+ scanRegister() {
+ var _a3;
+ const index = this.index;
+ const number = this.scanNumber(false);
+ this.skipWhitespace();
+ if (this.match("\\relax"))
+ return number;
+ let negative = false;
+ if (number === null) {
+ while (true) {
+ const s = this.peek();
+ if (s === "-")
+ negative = !negative;
+ else if (s !== "+")
+ break;
+ this.next();
+ this.skipWhitespace();
+ }
+ }
+ if (this.match("\\global")) {
+ this.skipWhitespace();
+ const register4 = this.get();
+ if (register4.startsWith("\\")) {
+ if (number) {
+ return {
+ register: register4,
+ global: true,
+ factor: (negative ? -1 : 1) * number.number
+ };
+ }
+ if (negative)
+ return { register: register4, global: true, factor: -1 };
+ return { register: register4, global: true };
+ }
+ this.index = index;
+ return null;
+ }
+ let register3 = this.get();
+ if (!(register3 == null ? void 0 : register3.startsWith("\\"))) {
+ this.index = index;
+ return null;
+ }
+ register3 = register3.substring(1);
+ if (!this.context.registers[register3]) {
+ this.index = index;
+ return null;
+ }
+ if (!negative || number !== null) {
+ return {
+ register: register3,
+ factor: (negative ? -1 : 1) * ((_a3 = number == null ? void 0 : number.number) != null ? _a3 : 1)
+ };
+ }
+ return { register: register3 };
+ }
+ scanValue() {
+ const register3 = this.scanRegister();
+ if (register3)
+ return register3;
+ const index = this.index;
+ const glue = this.scanGlueOrDimen();
+ if (glue && ("unit" in glue || "glue" in glue && "unit" in glue.glue))
+ return glue;
+ this.index = index;
+ const number = this.scanNumber();
+ if (number)
+ return number;
+ if (this.end() || !isLiteral(this.peek()))
+ return null;
+ const s = this.scanString();
+ if (s.length > 0)
+ return { string: s };
+ return null;
+ }
+ /**
+ * Return a dimension
+ *
+ * See TeX:8831
+ */
+ scanDimen() {
+ const value = this.scanNumber(false);
+ if (value === null)
+ return null;
+ const dimension = value.number;
+ this.skipWhitespace();
+ this.matchKeyword("true");
+ this.skipWhitespace();
+ let unit;
+ if (this.matchKeyword("pt"))
+ unit = "pt";
+ else if (this.matchKeyword("mm"))
+ unit = "mm";
+ else if (this.matchKeyword("cm"))
+ unit = "cm";
+ else if (this.matchKeyword("ex"))
+ unit = "ex";
+ else if (this.matchKeyword("px"))
+ unit = "px";
+ else if (this.matchKeyword("em"))
+ unit = "em";
+ else if (this.matchKeyword("bp"))
+ unit = "bp";
+ else if (this.matchKeyword("dd"))
+ unit = "dd";
+ else if (this.matchKeyword("pc"))
+ unit = "pc";
+ else if (this.matchKeyword("in"))
+ unit = "in";
+ else if (this.matchKeyword("mu"))
+ unit = "mu";
+ return unit ? { dimension, unit } : { dimension };
+ }
+ scanGlueOrDimen() {
+ const dimen = this.scanDimen();
+ if (dimen === null)
+ return null;
+ this.skipWhitespace();
+ if (this.match("\\relax"))
+ return dimen;
+ const result = { glue: dimen };
+ if (this.matchKeyword("plus")) {
+ const grow = this.scanDimen();
+ if (grow)
+ result.grow = grow;
+ else
+ return result;
+ }
+ this.skipWhitespace();
+ if (this.match("\\relax"))
+ return result;
+ this.skipWhitespace();
+ if (this.matchKeyword("minus")) {
+ const shrink = this.scanDimen();
+ if (shrink)
+ result.shrink = shrink;
+ else
+ return result;
+ }
+ if (!result.grow && !result.shrink)
+ return dimen;
+ return result;
+ }
+ scanColspec() {
+ this.skipWhitespace();
+ const result = [];
+ while (!this.end() && !(this.peek() === "<}>" || this.peek() === "]")) {
+ const literal = this.get();
+ if (literal === "c" || literal === "r" || literal === "l")
+ result.push({ align: literal });
+ else if (literal === "|")
+ result.push({ separator: "solid" });
+ else if (literal === ":")
+ result.push({ separator: "dashed" });
+ else if (literal === "@") {
+ if (this.match("<{>")) {
+ this.beginContext({ mode: "math" });
+ result.push({
+ gap: this.scan((token) => token === "<}>")
+ });
+ this.endContext();
+ }
+ if (!this.match("<}>"))
+ this.onError({ code: "unbalanced-braces" });
+ }
+ }
+ return result;
+ }
+ /**
+ * Scan a `\(...\)` or `\[...\]` sequence
+ * @return group for the sequence or null
+ */
+ scanModeSet() {
+ let mathstyle = void 0;
+ if (this.match("\\("))
+ mathstyle = "textstyle";
+ if (!mathstyle && this.match("\\["))
+ mathstyle = "displaystyle";
+ if (!mathstyle)
+ return null;
+ this.beginContext({ mode: "math", mathstyle });
+ const result = this.scan(
+ (token) => token === (mathstyle === "displaystyle" ? "\\]" : "\\)")
+ );
+ if (!this.match(mathstyle === "displaystyle" ? "\\]" : "\\)"))
+ this.onError({ code: "unbalanced-mode-shift" });
+ this.endContext();
+ return result;
+ }
+ /**
+ * Scan a `$...$` or `$$...$$` sequence
+ */
+ scanModeShift() {
+ let final = "";
+ if (this.match("<$>"))
+ final = "<$>";
+ if (!final && this.match("<$$>"))
+ final = "<$$>";
+ if (!final)
+ return null;
+ this.beginContext({
+ mode: "math",
+ mathstyle: true ? "textstyle" : 0
+ });
+ const result = this.scan((token) => token === final);
+ if (!this.match(final))
+ this.onError({ code: "unbalanced-mode-shift" });
+ this.endContext();
+ return result;
+ }
+ /**
+ * Scan a \begin{env}...\end{end} sequence
+ */
+ scanEnvironment() {
+ if (!this.match("\\begin"))
+ return null;
+ const envName = this.scanArgument("string");
+ if (!envName)
+ return null;
+ const def = getEnvironmentDefinition(envName);
+ if (!def) {
+ this.onError({
+ code: "unknown-environment",
+ arg: envName
+ });
+ return null;
+ }
+ const args = [];
+ if (def.params) {
+ for (const parameter of def.params) {
+ if (parameter.isOptional) {
+ args.push(this.scanOptionalArgument(parameter.type));
+ } else {
+ const arg = this.scanArgument(parameter.type);
+ if (!arg)
+ this.onError({ code: "missing-argument", arg: envName });
+ args.push(arg);
+ }
+ }
+ }
+ this.beginContext({ tabular: def.tabular });
+ const array = [];
+ const rowGaps = [];
+ let row = [];
+ let done = false;
+ do {
+ if (this.end()) {
+ this.onError({ code: "unbalanced-environment", arg: envName });
+ done = true;
+ }
+ if (!done && this.match("\\end")) {
+ if (this.scanArgument("string") !== envName) {
+ this.onError({
+ code: "unbalanced-environment",
+ arg: envName
+ });
+ }
+ done = true;
+ }
+ if (!done) {
+ if (this.matchColumnSeparator()) {
+ row.push(this.mathlist);
+ this.mathlist = [];
+ } else if (this.matchRowSeparator()) {
+ row.push(this.mathlist);
+ this.mathlist = [];
+ let gap = null;
+ this.skipWhitespace();
+ if (this.match("[")) {
+ gap = this.scanDimen();
+ this.skipWhitespace();
+ this.match("]");
+ }
+ rowGaps.push(gap != null ? gap : { dimension: 0 });
+ array.push(row);
+ row = [];
+ } else {
+ this.mathlist.push(
+ ...this.scan(
+ (token) => [
+ "<}>",
+ "&",
+ "\\end",
+ "\\cr",
+ "\\\\",
+ "\\tabularnewline"
+ ].includes(token)
+ )
+ );
+ }
+ }
+ } while (!done);
+ row.push(this.mathlist);
+ if (row.length > 0)
+ array.push(row);
+ this.endContext();
+ return def.createAtom(envName, array, rowGaps, args);
+ }
+ /**
+ * Parse an expression: a literal, or a command and its arguments
+ */
+ scanExpression() {
+ const savedList = this.mathlist;
+ this.mathlist = [];
+ if (this.parseExpression()) {
+ const result = this.mathlist;
+ this.mathlist = savedList;
+ return result;
+ }
+ this.mathlist = savedList;
+ return null;
+ }
+ /**
+ * Parse a sequence until a group end marker, such as
+ * `}`, `\end`, `&`, etc...
+ *
+ * Returns an array of atoms or an empty array if the sequence
+ * terminates right away.
+ *
+ * @param done - A predicate indicating if a token signals the end of a
+ * group
+ */
+ scan(done) {
+ this.beginContext();
+ if (!done)
+ done = (token) => token === "<}>";
+ let infix = "";
+ let infixInfo = null;
+ let infixArgs = [];
+ let prefix = null;
+ while (!this.end() && !done(this.peek())) {
+ if (this.hasInfixCommand() && !infix) {
+ infix = this.get();
+ infixInfo = getDefinition(infix, "math");
+ if (infixInfo)
+ infixArgs = this.scanArguments(infixInfo)[1];
+ prefix = this.mathlist;
+ this.mathlist = [];
+ } else
+ this.parseExpression();
+ }
+ let result;
+ if (infix) {
+ console.assert(Boolean(infixInfo));
+ infixArgs.unshift(this.mathlist);
+ if (prefix)
+ infixArgs.unshift(prefix);
+ result = [
+ infixInfo.createAtom({
+ command: infix,
+ args: infixArgs,
+ style: this.style,
+ mode: this.parseMode
+ })
+ ];
+ } else
+ result = this.mathlist;
+ this.endContext();
+ return result;
+ }
+ /**
+ * Parse a group enclosed in a pair of braces: `{...}`.
+ *
+ * Return either a group Atom or null if not a group.
+ *
+ * Return a group Atom with an empty body if an empty
+ * group (i.e. `{}`).
+ */
+ scanGroup() {
+ const initialIndex = this.index;
+ if (!this.match("<{>"))
+ return null;
+ const body = this.scan((token) => token === "<}>");
+ if (!this.match("<}>"))
+ this.onError({ code: "unbalanced-braces" });
+ const result = new GroupAtom(body, this.parseMode, this.style);
+ result.verbatimLatex = tokensToString(
+ this.tokens.slice(initialIndex, this.index)
+ );
+ return result;
+ }
+ scanSmartFence() {
+ this.skipWhitespace();
+ if (!this.match("("))
+ return null;
+ this.beginContext();
+ let nestLevel = 1;
+ while (!this.end() && nestLevel !== 0) {
+ if (this.match("("))
+ nestLevel += 1;
+ if (this.match(")"))
+ nestLevel -= 1;
+ if (nestLevel !== 0)
+ this.parseExpression();
+ }
+ const result = new LeftRightAtom("", this.mathlist, {
+ leftDelim: "(",
+ rightDelim: nestLevel === 0 ? ")" : "?"
+ });
+ this.endContext();
+ return result;
+ }
+ /**
+ * Scan a delimiter, e.g. '(', '|', '\vert', '\ulcorner'
+ *
+ * @return The delimiter (as a character or command) or null
+ */
+ scanDelim() {
+ this.skipWhitespace();
+ const token = this.peek();
+ if (!token) {
+ this.onError({ code: "unexpected-end-of-string" });
+ return null;
+ }
+ if (!isLiteral(token) && !token.startsWith("\\"))
+ return null;
+ this.next();
+ const info = getDefinition(token, "math");
+ if (!info) {
+ this.onError({ code: "unknown-command", arg: token });
+ return null;
+ }
+ if (info.definitionType === "function" && info.ifMode && !info.ifMode.includes(this.parseMode)) {
+ this.onError({ code: "unexpected-delimiter", arg: token });
+ return null;
+ }
+ if (info.definitionType === "symbol" && (info.type === "mopen" || info.type === "mclose"))
+ return token;
+ if (/^(\.|\?|\||<|>|\\vert|\\Vert|\\\||\\surd|\\uparrow|\\downarrow|\\Uparrow|\\Downarrow|\\updownarrow|\\Updownarrow|\\mid|\\mvert|\\mVert)$/.test(
+ token
+ ))
+ return token;
+ this.onError({ code: "unexpected-delimiter", arg: token });
+ return null;
+ }
+ /**
+ * Parse a `/left.../right` sequence.
+ *
+ * Note: the `/middle` command can occur multiple times inside a
+ * `/left.../right` sequence, and is handled separately.
+ *
+ * Return either an atom of type `"leftright"` or null
+ */
+ scanLeftRight() {
+ var _a3;
+ if (this.match("\\right")) {
+ this.onError({ code: "unbalanced-braces" });
+ return new ErrorAtom("\\right");
+ }
+ if (this.match("\\mright")) {
+ this.onError({ code: "unbalanced-braces" });
+ return new ErrorAtom("\\mright");
+ }
+ let close = "\\right";
+ if (!this.match("\\left")) {
+ if (!this.match("\\mleft"))
+ return null;
+ close = "\\mright";
+ }
+ const leftDelim = this.scanDelim();
+ if (!leftDelim) {
+ this.onError({ code: "unexpected-delimiter" });
+ return new ErrorAtom(close === "\\right" ? "\\left" : "\\mleft");
+ }
+ this.beginContext();
+ while (!this.end() && !this.match(close))
+ this.parseExpression();
+ const body = this.mathlist;
+ this.endContext();
+ const rightDelim = (_a3 = this.scanDelim()) != null ? _a3 : ".";
+ return new LeftRightAtom(
+ close === "\\right" ? "left...right" : "mleft...mright",
+ body,
+ {
+ leftDelim,
+ rightDelim,
+ style: this.style
+ }
+ );
+ }
+ /**
+ * Parse a subscript/superscript: `^` and `_`.
+ *
+ * Modify the last atom accordingly, or create a new 'subsup' carrier.
+ *
+ */
+ parseSupSub() {
+ if (this.parseMode !== "math")
+ return false;
+ let token = this.peek();
+ if (token !== "^" && token !== "_" && token !== "'")
+ return false;
+ const target = this.lastSubsupAtom();
+ while (token === "^" || token === "_" || token === "'") {
+ if (this.match("'")) {
+ if (this.match("'")) {
+ target.addChild(
+ new Atom({
+ type: "mord",
+ command: "\\doubleprime",
+ mode: "math",
+ value: "\u2032\u2032"
+ // "\u2033" displays too high
+ }),
+ "superscript"
+ );
+ } else {
+ target.addChild(
+ new Atom({
+ type: "mord",
+ command: "\\prime",
+ mode: "math",
+ value: "\u2032"
+ }),
+ "superscript"
+ );
+ }
+ } else if (this.match("^") || this.match("_")) {
+ target.addChildren(
+ argAtoms(this.scanArgument("expression")),
+ token === "_" ? "subscript" : "superscript"
+ );
+ }
+ token = this.peek();
+ }
+ return true;
+ }
+ /**
+ * Parse a `\limits` or `\nolimits` command.
+ *
+ * This will change the placement of limits to be either above or below
+ * (if `\limits`) or in the superscript/subscript position (if `\nolimits`).
+ *
+ * This overrides the calculation made for the placement, which is usually
+ * dependent on the displaystyle (`textstyle` prefers `\nolimits`, while
+ * `displaystyle` prefers `\limits`).
+ */
+ parseLimits() {
+ if (this.parseMode !== "math")
+ return false;
+ const isLimits = this.match("\\limits");
+ const isNoLimits = !isLimits && this.match("\\nolimits");
+ const isDisplayLimits = !isNoLimits && !isLimits && this.match("\\displaylimits");
+ if (!isLimits && !isNoLimits && !isDisplayLimits)
+ return false;
+ const opAtom = this.mathlist.length > 0 ? this.mathlist[this.mathlist.length - 1] : null;
+ if (opAtom === null)
+ return false;
+ opAtom.explicitSubsupPlacement = true;
+ if (isLimits)
+ opAtom.subsupPlacement = "over-under";
+ if (isNoLimits)
+ opAtom.subsupPlacement = "adjacent";
+ if (isDisplayLimits)
+ opAtom.subsupPlacement = "auto";
+ return true;
+ }
+ scanArguments(info) {
+ if (!(info == null ? void 0 : info.params))
+ return [void 0, []];
+ let deferredArg = void 0;
+ const args = [];
+ let i = info.infix ? 2 : 0;
+ while (i < info.params.length) {
+ const parameter = info.params[i];
+ if (parameter.type === "rest") {
+ args.push(
+ this.scan(
+ (token) => [
+ "<}>",
+ "&",
+ "\\end",
+ "\\cr",
+ "\\\\",
+ "\\tabularnewline",
+ "\\right"
+ ].includes(token)
+ )
+ );
+ } else if (parameter.isOptional)
+ args.push(this.scanOptionalArgument(parameter.type));
+ else if (parameter.type.endsWith("*")) {
+ deferredArg = parameter.type.slice(0, -1);
+ } else
+ args.push(this.scanArgument(parameter.type));
+ i += 1;
+ }
+ return [deferredArg, args];
+ }
+ scanSymbolOrLiteral() {
+ const token = this.peek();
+ if (!token)
+ return null;
+ this.next();
+ let result;
+ if (isLiteral(token)) {
+ const result2 = Mode.createAtom(this.parseMode, token, __spreadValues({}, this.style));
+ return result2 ? [result2] : null;
+ }
+ result = this.scanMacro(token);
+ if (result)
+ return [result];
+ if (token.startsWith("\\")) {
+ const info = getDefinition(token, this.parseMode);
+ if (!info) {
+ this.onError({ code: "unknown-command", arg: token });
+ return [new ErrorAtom(token)];
+ }
+ if (info.definitionType === "symbol") {
+ const style = __spreadValues({}, this.style);
+ if (info.variant)
+ style.variant = info.variant;
+ result = new Atom({
+ type: info.type,
+ command: token,
+ style,
+ value: String.fromCodePoint(info.codepoint),
+ mode: this.parseMode,
+ verbatimLatex: token
+ });
+ } else if (info.applyMode || info.applyStyle || info.infix) {
+ this.onError({ code: "invalid-command", arg: token });
+ return [new ErrorAtom(token)];
+ } else if (info.createAtom) {
+ result = info.createAtom({
+ command: token,
+ args: [],
+ style: this.style,
+ mode: this.parseMode
+ });
+ }
+ }
+ return result ? [result] : null;
+ }
+ scanArgument(type) {
+ var _a3;
+ this.skipFiller();
+ const mode = this.parseMode;
+ if (type === "auto")
+ type = mode;
+ if (!this.match("<{>")) {
+ if (type === "string")
+ return this.scanString();
+ if (type === "value")
+ return this.scanValue();
+ if (type === "delim")
+ return (_a3 = this.scanDelim()) != null ? _a3 : ".";
+ if (type === "expression")
+ return this.scanExpression();
+ if (type === "math") {
+ if (type !== mode)
+ this.beginContext({ mode: "math" });
+ const result2 = this.scanSymbolOrLiteral();
+ if (type !== mode)
+ this.endContext();
+ return result2;
+ }
+ if (type === "text") {
+ if (type !== mode)
+ this.beginContext({ mode: "text" });
+ const result2 = this.scanSymbolOrLiteral();
+ if (type !== mode)
+ this.endContext();
+ return result2;
+ }
+ if (type === "balanced-string")
+ return null;
+ console.assert(false);
+ return null;
+ }
+ if (type === "text") {
+ this.beginContext({ mode: "text" });
+ do
+ this.mathlist.push(...this.scan());
+ while (!this.match("<}>") && !this.end());
+ const atoms = this.mathlist;
+ this.endContext();
+ return { group: atoms };
+ }
+ if (type === "math") {
+ this.beginContext({ mode: "math" });
+ do
+ this.mathlist.push(...this.scan());
+ while (!this.match("<}>") && !this.end());
+ const atoms = this.mathlist;
+ this.endContext();
+ return { group: atoms };
+ }
+ let result = null;
+ if (type === "expression") {
+ this.beginContext({ mode: "math" });
+ do
+ this.mathlist.push(...this.scan());
+ while (!this.match("<}>") && !this.end());
+ const atoms = this.mathlist;
+ this.endContext();
+ return { group: atoms };
+ }
+ if (type === "string")
+ result = this.scanString();
+ else if (type === "balanced-string")
+ result = this.scanBalancedString();
+ else if (type === "colspec")
+ result = this.scanColspec();
+ else if (type === "value")
+ result = this.scanValue();
+ this.skipUntilToken("<}>");
+ return result;
+ }
+ scanOptionalArgument(argType) {
+ argType = argType === "auto" ? this.parseMode : argType;
+ this.skipFiller();
+ if (!this.match("["))
+ return null;
+ let result = null;
+ while (!this.end() && !this.match("]")) {
+ if (argType === "string")
+ result = this.scanString();
+ else if (argType === "value")
+ result = this.scanValue();
+ else if (argType === "colspec")
+ result = this.scanColspec();
+ else if (argType === "bbox") {
+ const bboxParameter = {};
+ const list = this.scanString().toLowerCase().trim().split(/,(?![^(]*\)(?:(?:[^(]*\)){2})*[^"]*$)/);
+ for (const element of list) {
+ const m = element.match(/^\s*([\d.]+)\s*([a-z]{2})/);
+ if (m) {
+ bboxParameter.padding = {
+ dimension: parseInt(m[1]),
+ unit: m[2]
+ };
+ } else {
+ const m2 = element.match(/^\s*border\s*:\s*(.*)/);
+ if (m2)
+ bboxParameter.border = m2[1];
+ else
+ bboxParameter.backgroundcolor = { string: element };
+ }
+ }
+ result = bboxParameter;
+ } else if (argType === "math") {
+ this.beginContext({ mode: "math" });
+ result = this.mathlist.concat(this.scan((token) => token === "]"));
+ this.endContext();
+ }
+ }
+ return result;
+ }
+ /** Parse a symbol or a command and its arguments */
+ scanSymbolOrCommand(command) {
+ var _a3, _b3, _c2;
+ if (command === "\\placeholder") {
+ const id = this.scanOptionalArgument("string");
+ const defaultValue = this.scanOptionalArgument("math");
+ const defaultAsString = Atom.serialize(defaultValue, {
+ defaultMode: "math"
+ });
+ let defaultAtoms = [];
+ let correctness;
+ if (!correctness && defaultAsString === "correct")
+ correctness = "correct";
+ else if (!correctness && defaultAsString === "incorrect")
+ correctness = "incorrect";
+ else if (defaultAsString !== "")
+ defaultAtoms = defaultValue;
+ const locked = this.scanOptionalArgument("string") === "locked";
+ const value = this.scanArgument("auto");
+ let body;
+ if (value && Array.isArray(value) && value.length > 0)
+ body = value;
+ else if (value && typeof value === "object" && "group" in value)
+ body = value.group;
+ else
+ body = defaultAtoms;
+ if (id) {
+ return [
+ new PromptAtom(id, correctness, locked, body != null ? body : defaultAtoms, {
+ mode: this.parseMode,
+ style: this.style
+ })
+ ];
+ }
+ return [new PlaceholderAtom({ mode: this.parseMode, style: this.style })];
+ }
+ if (command === "\\renewcommand" || command === "\\newcommand" || command === "\\providecommand" || command === "\\def") {
+ const index = this.index;
+ const cmd = this.scanLiteralGroup() || this.next();
+ if (!cmd)
+ return null;
+ if (this.context.registers[cmd.substring(1)]) {
+ const value = this.scanArgument("string");
+ if (value !== null)
+ this.context.registers[cmd.substring(1)] = value;
+ const verbatimLatex = joinLatex([
+ command,
+ tokensToString(this.tokens.slice(index, this.index))
+ ]);
+ return [new Atom({ type: "text", value: "", verbatimLatex })];
+ }
+ }
+ let result = this.scanMacro(command);
+ if (result)
+ return [result];
+ const info = getDefinition(command, this.parseMode);
+ if (!info) {
+ if (this.parseMode === "text") {
+ if (/[a-zA-Z]/.test((_a3 = this.peek()) != null ? _a3 : "")) {
+ command += " ";
+ }
+ return [...command].map(
+ (c) => new Atom({
+ type: "text",
+ value: c,
+ mode: "text",
+ style: this.style
+ })
+ );
+ }
+ this.onError({ code: "unknown-command", arg: command });
+ return [new ErrorAtom(command)];
+ }
+ const initialIndex = this.index;
+ if (info.definitionType === "symbol") {
+ const style = __spreadValues({}, this.style);
+ if (info.variant)
+ style.variant = info.variant;
+ result = new Atom({
+ type: info.type,
+ command,
+ style,
+ value: String.fromCodePoint(info.codepoint),
+ mode: this.parseMode
+ });
+ } else {
+ if (info.ifMode && !info.ifMode.includes(this.parseMode)) {
+ return [];
+ }
+ const savedMode = this.parseMode;
+ if (info.applyMode)
+ this.parseMode = info.applyMode;
+ let deferredArg = void 0;
+ let args = [];
+ if (info.parse)
+ args = info.parse(this);
+ else
+ [deferredArg, args] = this.scanArguments(info);
+ this.parseMode = savedMode;
+ if (info.applyMode && !info.applyStyle && !info.createAtom)
+ return argAtoms(args[0]);
+ if (info.infix) {
+ this.onError({
+ code: "too-many-infix-commands",
+ arg: command
+ });
+ return null;
+ }
+ if (typeof info.createAtom === "function") {
+ result = info.createAtom({
+ command,
+ args,
+ style: this.style,
+ mode: this.parseMode
+ });
+ if (deferredArg)
+ result.body = argAtoms(this.scanArgument(deferredArg));
+ } else if (typeof info.applyStyle === "function") {
+ const style = __spreadValues(__spreadValues({}, this.style), info.applyStyle(command, args, this.context));
+ const savedMode2 = this.parseMode;
+ if (info.applyMode)
+ this.parseMode = info.applyMode;
+ if (deferredArg) {
+ const saveStyle = this.style;
+ this.style = style;
+ const atoms = this.scanArgument(deferredArg);
+ this.style = saveStyle;
+ this.parseMode = savedMode2;
+ return argAtoms(atoms);
+ }
+ this.style = style;
+ } else {
+ result = new Atom({
+ type: "mord",
+ command: (_b3 = info.command) != null ? _b3 : command,
+ style: __spreadValues({}, this.style),
+ value: command,
+ mode: (_c2 = info.applyMode) != null ? _c2 : this.parseMode
+ });
+ }
+ }
+ if (!result)
+ return null;
+ if (result instanceof Atom && result.verbatimLatex === void 0 && !/^\\(llap|rlap|class|cssId|htmlData)$/.test(command)) {
+ const verbatim = joinLatex([
+ command,
+ tokensToString(this.tokens.slice(initialIndex, this.index))
+ ]);
+ if (verbatim)
+ result.verbatimLatex = verbatim;
+ }
+ if (result.verbatimLatex === null)
+ result.verbatimLatex = void 0;
+ if (result.isFunction && this.smartFence) {
+ const smartFence = this.scanSmartFence();
+ if (smartFence)
+ return [result, smartFence];
+ }
+ return [result];
+ }
+ scanSymbolCommandOrLiteral() {
+ const token = this.get();
+ if (!token)
+ return null;
+ if (isLiteral(token)) {
+ const result = Mode.createAtom(this.parseMode, token, __spreadValues({}, this.style));
+ if (!result)
+ return null;
+ if (result.isFunction && this.smartFence) {
+ const smartFence = this.scanSmartFence();
+ if (smartFence)
+ return [result, smartFence];
+ }
+ return [result];
+ }
+ if (token.startsWith("\\"))
+ return this.scanSymbolOrCommand(token);
+ if (token === "") {
+ if (this.parseMode === "text")
+ return [new TextAtom(" ", " ", this.style)];
+ return null;
+ }
+ if (token === "<}>")
+ this.onError({ latex: "", code: "unbalanced-braces" });
+ else {
+ this.onError({
+ latex: "",
+ code: "unexpected-token",
+ arg: token
+ });
+ }
+ return null;
+ }
+ /**
+ * Scan the macro name and its arguments and return a macro atom
+ */
+ scanMacro(macro) {
+ var _a3;
+ const def = this.context.getMacro(macro);
+ if (!def)
+ return null;
+ const initialIndex = this.index;
+ const argCount = def.args;
+ const args = { "?": (_a3 = this.args) == null ? void 0 : _a3.call(this, "?") };
+ for (let i = 1; i <= argCount; i++) {
+ let arg = this.scanLiteralGroup();
+ if (!arg) {
+ const index = this.index;
+ this.scanExpression();
+ arg = tokensToString(this.tokens.slice(index, this.index));
+ }
+ args[i] = arg;
+ }
+ return new MacroAtom(macro, {
+ expand: def.expand,
+ captureSelection: def.captureSelection,
+ args: initialIndex === this.index ? null : tokensToString(this.tokens.slice(initialIndex, this.index)),
+ style: this.parsingContext.style,
+ body: parseLatex(def.def, {
+ context: this.context,
+ parseMode: this.parseMode,
+ args: (arg) => args[arg],
+ mathstyle: this.parsingContext.mathstyle,
+ style: this.parsingContext.style
+ })
+ });
+ }
+ /**
+ * Make an atom for the current token or token group and
+ * add it to the parser's mathlist.
+ * If the token is a command with arguments, will also parse the
+ * arguments.
+ */
+ parseExpression() {
+ var _a3, _b3, _c2, _d2;
+ let result = (_d2 = (_c2 = (_b3 = (_a3 = this.scanEnvironment()) != null ? _a3 : this.scanModeShift()) != null ? _b3 : this.scanModeSet()) != null ? _c2 : this.scanGroup()) != null ? _d2 : this.scanLeftRight();
+ if (result === null) {
+ if (this.parseSupSub())
+ return true;
+ if (this.parseLimits())
+ return true;
+ result = this.scanSymbolCommandOrLiteral();
+ }
+ if (!result)
+ return false;
+ if (Array.isArray(result))
+ this.mathlist.push(...result);
+ else
+ this.mathlist.push(result);
+ return true;
+ }
+};
+function parseLatex(s, options) {
+ var _a3, _b3, _c2, _d2;
+ const args = (_a3 = options == null ? void 0 : options.args) != null ? _a3 : void 0;
+ const parser = new Parser(tokenize(s, args), options == null ? void 0 : options.context, {
+ args,
+ mathstyle: (_b3 = options == null ? void 0 : options.mathstyle) != null ? _b3 : "displaystyle",
+ parseMode: (_c2 = options == null ? void 0 : options.parseMode) != null ? _c2 : "math",
+ style: (_d2 = options == null ? void 0 : options.style) != null ? _d2 : {}
+ });
+ const atoms = [];
+ while (!parser.end())
+ atoms.push(...parser.scan(() => false));
+ return atoms;
+}
+function validateLatex(s, options) {
+ var _a3;
+ const parser = new Parser(tokenize(s, null), options == null ? void 0 : options.context, {
+ mathstyle: "displaystyle",
+ parseMode: (_a3 = options == null ? void 0 : options.parseMode) != null ? _a3 : "math"
+ });
+ while (!parser.end())
+ parser.scan();
+ return parser.errors;
+}
+
+// src/latex-commands/mhchem.ts
+var ChemAtom = class _ChemAtom extends Atom {
+ constructor(command, arg) {
+ super({ type: "chem" }, { command, mode: "math" });
+ const tex = texify.go(
+ mhchemParser.go(arg, command === "\\pu" ? "pu" : "ce"),
+ false
+ );
+ this.body = parseLatex(tex);
+ this._verbatimLatex = command + "{" + arg + "}";
+ this.arg = arg;
+ this.captureSelection = true;
+ }
+ static fromJson(json) {
+ return new _ChemAtom(json.command, json.arg);
+ }
+ // We do not allow resetting the verbatimLatex for 'chem' atoms:
+ // once it is set in the ctor, it is immutable.
+ set verbatimLatex(_latex) {
+ }
+ get verbatimLatex() {
+ return this._verbatimLatex;
+ }
+ toJson() {
+ return __spreadProps(__spreadValues({}, super.toJson()), { arg: this.arg });
+ }
+ render(context) {
+ const box = Atom.createBox(context, this.body, { type: "inner" });
+ if (this.caret)
+ box.caret = this.caret;
+ return this.bind(context, box);
+ }
+ _serialize(_options) {
+ console.assert(this.verbatimLatex !== void 0);
+ return this.verbatimLatex;
+ }
+};
+defineFunction(["ce", "pu"], "{chemformula:balanced-string}", {
+ createAtom: (options) => {
+ var _a3;
+ return new ChemAtom(options.command, (_a3 = options.args[0]) != null ? _a3 : "");
+ }
+});
+var mhchemParser = {
+ //
+ // Parses mchem \ce syntax
+ //
+ // Call like
+ // go("H2O");
+ //
+ go: function(input, stateMachine) {
+ if (!input) {
+ return [];
+ }
+ if (stateMachine === void 0) {
+ stateMachine = "ce";
+ }
+ var state = "0";
+ var buffer = {};
+ buffer["parenthesisLevel"] = 0;
+ input = input.replace(/\n/g, " ");
+ input = input.replace(/[\u2212\u2013\u2014\u2010]/g, "-");
+ input = input.replace(/[\u2026]/g, "...");
+ var lastInput;
+ var watchdog = 10;
+ var output = [];
+ while (true) {
+ if (lastInput !== input) {
+ watchdog = 10;
+ lastInput = input;
+ } else {
+ watchdog--;
+ }
+ var machine = mhchemParser.stateMachines[stateMachine];
+ var t = machine.transitions[state] || machine.transitions["*"];
+ iterateTransitions:
+ for (var i = 0; i < t.length; i++) {
+ var matches = mhchemParser.patterns.match_(t[i].pattern, input);
+ if (matches) {
+ var task = t[i].task;
+ for (var iA = 0; iA < task.action_.length; iA++) {
+ var o;
+ if (machine.actions[task.action_[iA].type_]) {
+ o = machine.actions[task.action_[iA].type_](
+ buffer,
+ matches.match_,
+ task.action_[iA].option
+ );
+ } else if (mhchemParser.actions[task.action_[iA].type_]) {
+ o = mhchemParser.actions[task.action_[iA].type_](
+ buffer,
+ matches.match_,
+ task.action_[iA].option
+ );
+ } else {
+ throw [
+ "MhchemBugA",
+ "mhchem bug A. Please report. (" + task.action_[iA].type_ + ")"
+ ];
+ }
+ mhchemParser.concatArray(output, o);
+ }
+ state = task.nextState || state;
+ if (input.length > 0) {
+ if (!task.revisit) {
+ input = matches.remainder;
+ }
+ if (!task.toContinue) {
+ break iterateTransitions;
+ }
+ } else {
+ return output;
+ }
+ }
+ }
+ if (watchdog <= 0) {
+ throw ["MhchemBugU", "mhchem bug U. Please report."];
+ }
+ }
+ },
+ concatArray: function(a, b) {
+ if (b) {
+ if (Object.prototype.toString.call(b) === "[object Array]") {
+ for (var iB = 0; iB < b.length; iB++) {
+ a.push(b[iB]);
+ }
+ } else {
+ a.push(b);
+ }
+ }
+ },
+ patterns: {
+ //
+ // Matching patterns
+ // either regexps or function that return null or {match_:"a", remainder:"bc"}
+ //
+ patterns: {
+ // property names must not look like integers ("2") for correct property traversal order, later on
+ "empty": /^$/,
+ "else": /^./,
+ "else2": /^./,
+ "space": /^\s/,
+ "space A": /^\s(?=[A-Z\\$])/,
+ "space$": /^\s$/,
+ "a-z": /^[a-z]/,
+ "x": /^x/,
+ "x$": /^x$/,
+ "i$": /^i$/,
+ "letters": /^(?:[a-zA-Z\u03B1-\u03C9\u0391-\u03A9?@]|(?:\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega|Gamma|Delta|Theta|Lambda|Xi|Pi|Sigma|Upsilon|Phi|Psi|Omega)(?:\s+|\{\}|(?![a-zA-Z]))))+/,
+ "\\greek": /^\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega|Gamma|Delta|Theta|Lambda|Xi|Pi|Sigma|Upsilon|Phi|Psi|Omega)(?:\s+|\{\}|(?![a-zA-Z]))/,
+ "one lowercase latin letter $": /^(?:([a-z])(?:$|[^a-zA-Z]))$/,
+ "$one lowercase latin letter$ $": /^\$(?:([a-z])(?:$|[^a-zA-Z]))\$$/,
+ "one lowercase greek letter $": /^(?:\$?[\u03B1-\u03C9]\$?|\$?\\(?:alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega)\s*\$?)(?:\s+|\{\}|(?![a-zA-Z]))$/,
+ "digits": /^[0-9]+/,
+ "-9.,9": /^[+\-]?(?:[0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))/,
+ "-9.,9 no missing 0": /^[+\-]?[0-9]+(?:[.,][0-9]+)?/,
+ "(-)(9.,9)(e)(99)": function(input) {
+ var m = input.match(
+ /^(\+\-|\+\/\-|\+|\-|\\pm\s?)?([0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))?(\((?:[0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+))\))?(?:(?:([eE])|\s*(\*|x|\\times|\u00D7)\s*10\^)([+\-]?[0-9]+|\{[+\-]?[0-9]+\}))?/
+ );
+ if (m && m[0]) {
+ return { match_: m.slice(1), remainder: input.substr(m[0].length) };
+ }
+ return null;
+ },
+ "(-)(9)^(-9)": function(input) {
+ var m = input.match(
+ /^(\+\-|\+\/\-|\+|\-|\\pm\s?)?([0-9]+(?:[,.][0-9]+)?|[0-9]*(?:\.[0-9]+)?)\^([+\-]?[0-9]+|\{[+\-]?[0-9]+\})/
+ );
+ if (m && m[0]) {
+ return { match_: m.slice(1), remainder: input.substr(m[0].length) };
+ }
+ return null;
+ },
+ "state of aggregation $": function(input) {
+ var a = mhchemParser.patterns.findObserveGroups(
+ input,
+ "",
+ /^\([a-z]{1,3}(?=[\),])/,
+ ")",
+ ""
+ );
+ if (a && a.remainder.match(/^($|[\s,;\)\]\}])/)) {
+ return a;
+ }
+ var m = input.match(/^(?:\((?:\\ca\s?)?\$[amothc]\$\))/);
+ if (m) {
+ return { match_: m[0], remainder: input.substr(m[0].length) };
+ }
+ return null;
+ },
+ "_{(state of aggregation)}$": /^_\{(\([a-z]{1,3}\))\}/,
+ "{[(": /^(?:\\\{|\[|\()/,
+ ")]}": /^(?:\)|\]|\\\})/,
+ ", ": /^[,;]\s*/,
+ ",": /^[,;]/,
+ ".": /^[.]/,
+ ". ": /^([.\u22C5\u00B7\u2022])\s*/,
+ "...": /^\.\.\.(?=$|[^.])/,
+ "* ": /^([*])\s*/,
+ "^{(...)}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "^{",
+ "",
+ "",
+ "}"
+ );
+ },
+ "^($...$)": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "^",
+ "$",
+ "$",
+ ""
+ );
+ },
+ "^a": /^\^([0-9]+|[^\\_])/,
+ "^\\x{}{}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "^",
+ /^\\[a-zA-Z]+\{/,
+ "}",
+ "",
+ "",
+ "{",
+ "}",
+ "",
+ true
+ );
+ },
+ "^\\x{}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "^",
+ /^\\[a-zA-Z]+\{/,
+ "}",
+ ""
+ );
+ },
+ "^\\x": /^\^(\\[a-zA-Z]+)\s*/,
+ "^(-1)": /^\^(-?\d+)/,
+ "'": /^'/,
+ "_{(...)}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "_{",
+ "",
+ "",
+ "}"
+ );
+ },
+ "_($...$)": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "_",
+ "$",
+ "$",
+ ""
+ );
+ },
+ "_9": /^_([+\-]?[0-9]+|[^\\])/,
+ "_\\x{}{}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "_",
+ /^\\[a-zA-Z]+\{/,
+ "}",
+ "",
+ "",
+ "{",
+ "}",
+ "",
+ true
+ );
+ },
+ "_\\x{}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "_",
+ /^\\[a-zA-Z]+\{/,
+ "}",
+ ""
+ );
+ },
+ "_\\x": /^_(\\[a-zA-Z]+)\s*/,
+ "^_": /^(?:\^(?=_)|\_(?=\^)|[\^_]$)/,
+ "{}": /^\{\}/,
+ "{...}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(input, "", "{", "}", "");
+ },
+ "{(...)}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(input, "{", "", "", "}");
+ },
+ "$...$": function(input) {
+ return mhchemParser.patterns.findObserveGroups(input, "", "$", "$", "");
+ },
+ "${(...)}$": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "${",
+ "",
+ "",
+ "}$"
+ );
+ },
+ "$(...)$": function(input) {
+ return mhchemParser.patterns.findObserveGroups(input, "$", "", "", "$");
+ },
+ "=<>": /^[=<>]/,
+ "#": /^[#\u2261]/,
+ "+": /^\+/,
+ "-$": /^-(?=[\s_},;\]/]|$|\([a-z]+\))/,
+ // -space -, -; -] -/ -$ -state-of-aggregation
+ "-9": /^-(?=[0-9])/,
+ "- orbital overlap": /^-(?=(?:[spd]|sp)(?:$|[\s,;\)\]\}]))/,
+ "-": /^-/,
+ "pm-operator": /^(?:\\pm|\$\\pm\$|\+-|\+\/-)/,
+ "operator": /^(?:\+|(?:[\-=<>]|<<|>>|\\approx|\$\\approx\$)(?=\s|$|-?[0-9]))/,
+ "arrowUpDown": /^(?:v|\(v\)|\^|\(\^\))(?=$|[\s,;\)\]\}])/,
+ "\\bond{(...)}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "\\bond{",
+ "",
+ "",
+ "}"
+ );
+ },
+ "->": /^(?:<->|<-->|->|<-|<=>>|<<=>|<=>|[\u2192\u27F6\u21CC])/,
+ "CMT": /^[CMT](?=\[)/,
+ "[(...)]": function(input) {
+ return mhchemParser.patterns.findObserveGroups(input, "[", "", "", "]");
+ },
+ "1st-level escape": /^(&|\\\\|\\hline)\s*/,
+ "\\,": /^(?:\\[,\ ;:])/,
+ // \\x - but output no space before
+ "\\x{}{}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "",
+ /^\\[a-zA-Z]+\{/,
+ "}",
+ "",
+ "",
+ "{",
+ "}",
+ "",
+ true
+ );
+ },
+ "\\x{}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "",
+ /^\\[a-zA-Z]+\{/,
+ "}",
+ ""
+ );
+ },
+ "\\ca": /^\\ca(?:\s+|(?![a-zA-Z]))/,
+ "\\x": /^(?:\\[a-zA-Z]+\s*|\\[_&{}%])/,
+ "orbital": /^(?:[0-9]{1,2}[spdfgh]|[0-9]{0,2}sp)(?=$|[^a-zA-Z])/,
+ // only those with numbers in front, because the others will be formatted correctly anyway
+ "others": /^[\/~|]/,
+ "\\frac{(...)}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "\\frac{",
+ "",
+ "",
+ "}",
+ "{",
+ "",
+ "",
+ "}"
+ );
+ },
+ "\\overset{(...)}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "\\overset{",
+ "",
+ "",
+ "}",
+ "{",
+ "",
+ "",
+ "}"
+ );
+ },
+ "\\underset{(...)}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "\\underset{",
+ "",
+ "",
+ "}",
+ "{",
+ "",
+ "",
+ "}"
+ );
+ },
+ "\\underbrace{(...)}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "\\underbrace{",
+ "",
+ "",
+ "}_",
+ "{",
+ "",
+ "",
+ "}"
+ );
+ },
+ "\\color{(...)}0": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "\\color{",
+ "",
+ "",
+ "}"
+ );
+ },
+ "\\color{(...)}{(...)}1": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "\\color{",
+ "",
+ "",
+ "}",
+ "{",
+ "",
+ "",
+ "}"
+ );
+ },
+ "\\color(...){(...)}2": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "\\color",
+ "\\",
+ "",
+ /^(?=\{)/,
+ "{",
+ "",
+ "",
+ "}"
+ );
+ },
+ "\\ce{(...)}": function(input) {
+ return mhchemParser.patterns.findObserveGroups(
+ input,
+ "\\ce{",
+ "",
+ "",
+ "}"
+ );
+ },
+ "oxidation$": /^(?:[+-][IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,
+ "d-oxidation$": /^(?:[+-]?\s?[IVX]+|\\pm\s*0|\$\\pm\$\s*0)$/,
+ // 0 could be oxidation or charge
+ "roman numeral": /^[IVX]+/,
+ "1/2$": /^[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+(?:\$[a-z]\$|[a-z])?$/,
+ "amount": function(input) {
+ var match;
+ match = input.match(
+ /^(?:(?:(?:\([+\-]?[0-9]+\/[0-9]+\)|[+\-]?(?:[0-9]+|\$[a-z]\$|[a-z])\/[0-9]+|[+\-]?[0-9]+[.,][0-9]+|[+\-]?\.[0-9]+|[+\-]?[0-9]+)(?:[a-z](?=\s*[A-Z]))?)|[+\-]?[a-z](?=\s*[A-Z])|\+(?!\s))/
+ );
+ if (match) {
+ return { match_: match[0], remainder: input.substr(match[0].length) };
+ }
+ var a = mhchemParser.patterns.findObserveGroups(
+ input,
+ "",
+ "$",
+ "$",
+ ""
+ );
+ if (a) {
+ match = a.match_.match(
+ /^\$(?:\(?[+\-]?(?:[0-9]*[a-z]?[+\-])?[0-9]*[a-z](?:[+\-][0-9]*[a-z]?)?\)?|\+|-)\$$/
+ );
+ if (match) {
+ return {
+ match_: match[0],
+ remainder: input.substr(match[0].length)
+ };
+ }
+ }
+ return null;
+ },
+ "amount2": function(input) {
+ return this["amount"](input);
+ },
+ "(KV letters),": /^(?:[A-Z][a-z]{0,2}|i)(?=,)/,
+ "formula$": function(input) {
+ if (input.match(/^\([a-z]+\)$/)) {
+ return null;
+ }
+ var match = input.match(
+ /^(?:[a-z]|(?:[0-9\ \+\-\,\.\(\)]+[a-z])+[0-9\ \+\-\,\.\(\)]*|(?:[a-z][0-9\ \+\-\,\.\(\)]+)+[a-z]?)$/
+ );
+ if (match) {
+ return { match_: match[0], remainder: input.substr(match[0].length) };
+ }
+ return null;
+ },
+ "uprightEntities": /^(?:pH|pOH|pC|pK|iPr|iBu)(?=$|[^a-zA-Z])/,
+ "/": /^\s*(\/)\s*/,
+ "//": /^\s*(\/\/)\s*/,
+ "*": /^\s*[*.]\s*/
+ },
+ findObserveGroups: function(input, begExcl, begIncl, endIncl, endExcl, beg2Excl, beg2Incl, end2Incl, end2Excl, combine) {
+ var _match = function(input2, pattern) {
+ if (typeof pattern === "string") {
+ if (input2.indexOf(pattern) !== 0) {
+ return null;
+ }
+ return pattern;
+ } else {
+ var match2 = input2.match(pattern);
+ if (!match2) {
+ return null;
+ }
+ return match2[0];
+ }
+ };
+ var _findObserveGroups = function(input2, i, endChars) {
+ var braces = 0;
+ while (i < input2.length) {
+ var a = input2.charAt(i);
+ var match2 = _match(input2.substr(i), endChars);
+ if (match2 !== null && braces === 0) {
+ return { endMatchBegin: i, endMatchEnd: i + match2.length };
+ } else if (a === "{") {
+ braces++;
+ } else if (a === "}") {
+ if (braces === 0) {
+ throw [
+ "ExtraCloseMissingOpen",
+ "Extra close brace or missing open brace"
+ ];
+ } else {
+ braces--;
+ }
+ }
+ i++;
+ }
+ if (braces > 0) {
+ return null;
+ }
+ return null;
+ };
+ var match = _match(input, begExcl);
+ if (match === null) {
+ return null;
+ }
+ input = input.substr(match.length);
+ match = _match(input, begIncl);
+ if (match === null) {
+ return null;
+ }
+ var e = _findObserveGroups(input, match.length, endIncl || endExcl);
+ if (e === null) {
+ return null;
+ }
+ var match1 = input.substring(
+ 0,
+ endIncl ? e.endMatchEnd : e.endMatchBegin
+ );
+ if (!(beg2Excl || beg2Incl)) {
+ return {
+ match_: match1,
+ remainder: input.substr(e.endMatchEnd)
+ };
+ } else {
+ var group2 = this.findObserveGroups(
+ input.substr(e.endMatchEnd),
+ beg2Excl,
+ beg2Incl,
+ end2Incl,
+ end2Excl
+ );
+ if (group2 === null) {
+ return null;
+ }
+ var matchRet = [match1, group2.match_];
+ return {
+ match_: combine ? matchRet.join("") : matchRet,
+ remainder: group2.remainder
+ };
+ }
+ },
+ //
+ // Matching function
+ // e.g. match("a", input) will look for the regexp called "a" and see if it matches
+ // returns null or {match_:"a", remainder:"bc"}
+ //
+ match_: function(m, input) {
+ var pattern = mhchemParser.patterns.patterns[m];
+ if (pattern === void 0) {
+ throw ["MhchemBugP", "mhchem bug P. Please report. (" + m + ")"];
+ } else if (typeof pattern === "function") {
+ return mhchemParser.patterns.patterns[m](input);
+ } else {
+ var match = input.match(pattern);
+ if (match) {
+ var mm;
+ if (match[2]) {
+ mm = [match[1], match[2]];
+ } else if (match[1]) {
+ mm = match[1];
+ } else {
+ mm = match[0];
+ }
+ return { match_: mm, remainder: input.substr(match[0].length) };
+ }
+ return null;
+ }
+ }
+ },
+ //
+ // Generic state machine actions
+ //
+ actions: {
+ "a=": function(buffer, m) {
+ buffer.a = (buffer.a || "") + m;
+ },
+ "b=": function(buffer, m) {
+ buffer.b = (buffer.b || "") + m;
+ },
+ "p=": function(buffer, m) {
+ buffer.p = (buffer.p || "") + m;
+ },
+ "o=": function(buffer, m) {
+ buffer.o = (buffer.o || "") + m;
+ },
+ "q=": function(buffer, m) {
+ buffer.q = (buffer.q || "") + m;
+ },
+ "d=": function(buffer, m) {
+ buffer.d = (buffer.d || "") + m;
+ },
+ "rm=": function(buffer, m) {
+ buffer.rm = (buffer.rm || "") + m;
+ },
+ "text=": function(buffer, m) {
+ buffer.text_ = (buffer.text_ || "") + m;
+ },
+ "insert": function(buffer, m, a) {
+ return { type_: a };
+ },
+ "insert+p1": function(buffer, m, a) {
+ return { type_: a, p1: m };
+ },
+ "insert+p1+p2": function(buffer, m, a) {
+ return { type_: a, p1: m[0], p2: m[1] };
+ },
+ "copy": function(buffer, m) {
+ return m;
+ },
+ "rm": function(buffer, m) {
+ return { type_: "rm", p1: m || "" };
+ },
+ "text": function(buffer, m) {
+ return mhchemParser.go(m, "text");
+ },
+ "{text}": function(buffer, m) {
+ var ret = ["{"];
+ mhchemParser.concatArray(ret, mhchemParser.go(m, "text"));
+ ret.push("}");
+ return ret;
+ },
+ "tex-math": function(buffer, m) {
+ return mhchemParser.go(m, "tex-math");
+ },
+ "tex-math tight": function(buffer, m) {
+ return mhchemParser.go(m, "tex-math tight");
+ },
+ "bond": function(buffer, m, k) {
+ return { type_: "bond", kind_: k || m };
+ },
+ "color0-output": function(buffer, m) {
+ return { type_: "color0", color: m[0] };
+ },
+ "ce": function(buffer, m) {
+ return mhchemParser.go(m);
+ },
+ "1/2": function(buffer, m) {
+ var ret = [];
+ if (m.match(/^[+\-]/)) {
+ ret.push(m.substr(0, 1));
+ m = m.substr(1);
+ }
+ var n = m.match(/^([0-9]+|\$[a-z]\$|[a-z])\/([0-9]+)(\$[a-z]\$|[a-z])?$/);
+ n[1] = n[1].replace(/\$/g, "");
+ ret.push({ type_: "frac", p1: n[1], p2: n[2] });
+ if (n[3]) {
+ n[3] = n[3].replace(/\$/g, "");
+ ret.push({ type_: "tex-math", p1: n[3] });
+ }
+ return ret;
+ },
+ "9,9": function(buffer, m) {
+ return mhchemParser.go(m, "9,9");
+ }
+ },
+ //
+ // createTransitions
+ // convert { 'letter': { 'state': { action_: 'output' } } } to { 'state' => [ { pattern: 'letter', task: { action_: [{type_: 'output'}] } } ] }
+ // with expansion of 'a|b' to 'a' and 'b' (at 2 places)
+ //
+ createTransitions: function(o) {
+ var pattern, state;
+ var stateArray;
+ var i;
+ var transitions = {};
+ for (pattern in o) {
+ for (state in o[pattern]) {
+ stateArray = state.split("|");
+ o[pattern][state].stateArray = stateArray;
+ for (i = 0; i < stateArray.length; i++) {
+ transitions[stateArray[i]] = [];
+ }
+ }
+ }
+ for (pattern in o) {
+ for (state in o[pattern]) {
+ stateArray = o[pattern][state].stateArray || [];
+ for (i = 0; i < stateArray.length; i++) {
+ var p = o[pattern][state];
+ if (p.action_) {
+ p.action_ = [].concat(p.action_);
+ for (var k = 0; k < p.action_.length; k++) {
+ if (typeof p.action_[k] === "string") {
+ p.action_[k] = { type_: p.action_[k] };
+ }
+ }
+ } else {
+ p.action_ = [];
+ }
+ var patternArray = pattern.split("|");
+ for (var j = 0; j < patternArray.length; j++) {
+ if (stateArray[i] === "*") {
+ for (var t in transitions) {
+ transitions[t].push({ pattern: patternArray[j], task: p });
+ }
+ } else {
+ transitions[stateArray[i]].push({
+ pattern: patternArray[j],
+ task: p
+ });
+ }
+ }
+ }
+ }
+ }
+ return transitions;
+ },
+ stateMachines: {}
+};
+mhchemParser.stateMachines = {
+ //
+ // \ce state machines
+ //
+ //#region ce
+ "ce": {
+ // main parser
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": { action_: "output" }
+ },
+ "else": {
+ "0|1|2": {
+ action_: "beginsWithBond=false",
+ revisit: true,
+ toContinue: true
+ }
+ },
+ "oxidation$": {
+ "0": { action_: "oxidation-output" }
+ },
+ "CMT": {
+ r: { action_: "rdt=", nextState: "rt" },
+ rd: { action_: "rqt=", nextState: "rdt" }
+ },
+ "arrowUpDown": {
+ "0|1|2|as": {
+ action_: ["sb=false", "output", "operator"],
+ nextState: "1"
+ }
+ },
+ "uprightEntities": {
+ "0|1|2": { action_: ["o=", "output"], nextState: "1" }
+ },
+ "orbital": {
+ "0|1|2|3": { action_: "o=", nextState: "o" }
+ },
+ "->": {
+ "0|1|2|3": { action_: "r=", nextState: "r" },
+ "a|as": { action_: ["output", "r="], nextState: "r" },
+ "*": { action_: ["output", "r="], nextState: "r" }
+ },
+ "+": {
+ "o": { action_: "d= kv", nextState: "d" },
+ "d|D": { action_: "d=", nextState: "d" },
+ "q": { action_: "d=", nextState: "qd" },
+ "qd|qD": { action_: "d=", nextState: "qd" },
+ "dq": { action_: ["output", "d="], nextState: "d" },
+ "3": { action_: ["sb=false", "output", "operator"], nextState: "0" }
+ },
+ "amount": {
+ "0|2": { action_: "a=", nextState: "a" }
+ },
+ "pm-operator": {
+ "0|1|2|a|as": {
+ action_: [
+ "sb=false",
+ "output",
+ { type_: "operator", option: "\\pm" }
+ ],
+ nextState: "0"
+ }
+ },
+ "operator": {
+ "0|1|2|a|as": {
+ action_: ["sb=false", "output", "operator"],
+ nextState: "0"
+ }
+ },
+ "-$": {
+ "o|q": { action_: ["charge or bond", "output"], nextState: "qd" },
+ "d": { action_: "d=", nextState: "d" },
+ "D": {
+ action_: ["output", { type_: "bond", option: "-" }],
+ nextState: "3"
+ },
+ "q": { action_: "d=", nextState: "qd" },
+ "qd": { action_: "d=", nextState: "qd" },
+ "qD|dq": {
+ action_: ["output", { type_: "bond", option: "-" }],
+ nextState: "3"
+ }
+ },
+ "-9": {
+ "3|o": {
+ action_: ["output", { type_: "insert", option: "hyphen" }],
+ nextState: "3"
+ }
+ },
+ "- orbital overlap": {
+ o: {
+ action_: ["output", { type_: "insert", option: "hyphen" }],
+ nextState: "2"
+ },
+ d: {
+ action_: ["output", { type_: "insert", option: "hyphen" }],
+ nextState: "2"
+ }
+ },
+ "-": {
+ "0|1|2": {
+ action_: [
+ { type_: "output", option: 1 },
+ "beginsWithBond=true",
+ { type_: "bond", option: "-" }
+ ],
+ nextState: "3"
+ },
+ "3": { action_: { type_: "bond", option: "-" } },
+ "a": {
+ action_: ["output", { type_: "insert", option: "hyphen" }],
+ nextState: "2"
+ },
+ "as": {
+ action_: [
+ { type_: "output", option: 2 },
+ { type_: "bond", option: "-" }
+ ],
+ nextState: "3"
+ },
+ "b": { action_: "b=" },
+ "o": {
+ action_: { type_: "- after o/d", option: false },
+ nextState: "2"
+ },
+ "q": {
+ action_: { type_: "- after o/d", option: false },
+ nextState: "2"
+ },
+ "d|qd|dq": {
+ action_: { type_: "- after o/d", option: true },
+ nextState: "2"
+ },
+ "D|qD|p": {
+ action_: ["output", { type_: "bond", option: "-" }],
+ nextState: "3"
+ }
+ },
+ "amount2": {
+ "1|3": { action_: "a=", nextState: "a" }
+ },
+ "letters": {
+ "0|1|2|3|a|as|b|p|bp|o": { action_: "o=", nextState: "o" },
+ "q|dq": { action_: ["output", "o="], nextState: "o" },
+ "d|D|qd|qD": { action_: "o after d", nextState: "o" }
+ },
+ "digits": {
+ "o": { action_: "q=", nextState: "q" },
+ "d|D": { action_: "q=", nextState: "dq" },
+ "q": { action_: ["output", "o="], nextState: "o" },
+ "a": { action_: "o=", nextState: "o" }
+ },
+ "space A": {
+ "b|p|bp": {}
+ },
+ "space": {
+ "a": { nextState: "as" },
+ "0": { action_: "sb=false" },
+ "1|2": { action_: "sb=true" },
+ "r|rt|rd|rdt|rdq": { action_: "output", nextState: "0" },
+ "*": { action_: ["output", "sb=true"], nextState: "1" }
+ },
+ "1st-level escape": {
+ "1|2": {
+ action_: [
+ "output",
+ { type_: "insert+p1", option: "1st-level escape" }
+ ]
+ },
+ "*": {
+ action_: [
+ "output",
+ { type_: "insert+p1", option: "1st-level escape" }
+ ],
+ nextState: "0"
+ }
+ },
+ "[(...)]": {
+ "r|rt": { action_: "rd=", nextState: "rd" },
+ "rd|rdt": { action_: "rq=", nextState: "rdq" }
+ },
+ "...": {
+ "o|d|D|dq|qd|qD": {
+ action_: ["output", { type_: "bond", option: "..." }],
+ nextState: "3"
+ },
+ "*": {
+ action_: [
+ { type_: "output", option: 1 },
+ { type_: "insert", option: "ellipsis" }
+ ],
+ nextState: "1"
+ }
+ },
+ ". |* ": {
+ "*": {
+ action_: ["output", { type_: "insert", option: "addition compound" }],
+ nextState: "1"
+ }
+ },
+ "state of aggregation $": {
+ "*": { action_: ["output", "state of aggregation"], nextState: "1" }
+ },
+ "{[(": {
+ "a|as|o": {
+ action_: ["o=", "output", "parenthesisLevel++"],
+ nextState: "2"
+ },
+ "0|1|2|3": {
+ action_: ["o=", "output", "parenthesisLevel++"],
+ nextState: "2"
+ },
+ "*": {
+ action_: ["output", "o=", "output", "parenthesisLevel++"],
+ nextState: "2"
+ }
+ },
+ ")]}": {
+ "0|1|2|3|b|p|bp|o": {
+ action_: ["o=", "parenthesisLevel--"],
+ nextState: "o"
+ },
+ "a|as|d|D|q|qd|qD|dq": {
+ action_: ["output", "o=", "parenthesisLevel--"],
+ nextState: "o"
+ }
+ },
+ ", ": {
+ "*": { action_: ["output", "comma"], nextState: "0" }
+ },
+ "^_": {
+ // ^ and _ without a sensible argument
+ "*": {}
+ },
+ "^{(...)}|^($...$)": {
+ "0|1|2|as": { action_: "b=", nextState: "b" },
+ "p": { action_: "b=", nextState: "bp" },
+ "3|o": { action_: "d= kv", nextState: "D" },
+ "q": { action_: "d=", nextState: "qD" },
+ "d|D|qd|qD|dq": { action_: ["output", "d="], nextState: "D" }
+ },
+ "^a|^\\x{}{}|^\\x{}|^\\x|'": {
+ "0|1|2|as": { action_: "b=", nextState: "b" },
+ "p": { action_: "b=", nextState: "bp" },
+ "3|o": { action_: "d= kv", nextState: "d" },
+ "q": { action_: "d=", nextState: "qd" },
+ "d|qd|D|qD": { action_: "d=" },
+ "dq": { action_: ["output", "d="], nextState: "d" }
+ },
+ "_{(state of aggregation)}$": {
+ "d|D|q|qd|qD|dq": { action_: ["output", "q="], nextState: "q" }
+ },
+ "_{(...)}|_($...$)|_9|_\\x{}{}|_\\x{}|_\\x": {
+ "0|1|2|as": { action_: "p=", nextState: "p" },
+ "b": { action_: "p=", nextState: "bp" },
+ "3|o": { action_: "q=", nextState: "q" },
+ "d|D": { action_: "q=", nextState: "dq" },
+ "q|qd|qD|dq": { action_: ["output", "q="], nextState: "q" }
+ },
+ "=<>": {
+ "0|1|2|3|a|as|o|q|d|D|qd|qD|dq": {
+ action_: [{ type_: "output", option: 2 }, "bond"],
+ nextState: "3"
+ }
+ },
+ "#": {
+ "0|1|2|3|a|as|o": {
+ action_: [
+ { type_: "output", option: 2 },
+ { type_: "bond", option: "#" }
+ ],
+ nextState: "3"
+ }
+ },
+ "{}": {
+ "*": { action_: { type_: "output", option: 1 }, nextState: "1" }
+ },
+ "{...}": {
+ "0|1|2|3|a|as|b|p|bp": { action_: "o=", nextState: "o" },
+ "o|d|D|q|qd|qD|dq": { action_: ["output", "o="], nextState: "o" }
+ },
+ "$...$": {
+ "a": { action_: "a=" },
+ // 2$n$
+ "0|1|2|3|as|b|p|bp|o": { action_: "o=", nextState: "o" },
+ // not 'amount'
+ "as|o": { action_: "o=" },
+ "q|d|D|qd|qD|dq": { action_: ["output", "o="], nextState: "o" }
+ },
+ "\\bond{(...)}": {
+ "*": {
+ action_: [{ type_: "output", option: 2 }, "bond"],
+ nextState: "3"
+ }
+ },
+ "\\frac{(...)}": {
+ "*": {
+ action_: [{ type_: "output", option: 1 }, "frac-output"],
+ nextState: "3"
+ }
+ },
+ "\\overset{(...)}": {
+ "*": {
+ action_: [{ type_: "output", option: 2 }, "overset-output"],
+ nextState: "3"
+ }
+ },
+ "\\underset{(...)}": {
+ "*": {
+ action_: [{ type_: "output", option: 2 }, "underset-output"],
+ nextState: "3"
+ }
+ },
+ "\\underbrace{(...)}": {
+ "*": {
+ action_: [{ type_: "output", option: 2 }, "underbrace-output"],
+ nextState: "3"
+ }
+ },
+ "\\color{(...)}{(...)}1|\\color(...){(...)}2": {
+ "*": {
+ action_: [{ type_: "output", option: 2 }, "color-output"],
+ nextState: "3"
+ }
+ },
+ "\\color{(...)}0": {
+ "*": { action_: [{ type_: "output", option: 2 }, "color0-output"] }
+ },
+ "\\ce{(...)}": {
+ "*": {
+ action_: [{ type_: "output", option: 2 }, "ce"],
+ nextState: "3"
+ }
+ },
+ "\\,": {
+ "*": {
+ action_: [{ type_: "output", option: 1 }, "copy"],
+ nextState: "1"
+ }
+ },
+ "\\x{}{}|\\x{}|\\x": {
+ "0|1|2|3|a|as|b|p|bp|o|c0": {
+ action_: ["o=", "output"],
+ nextState: "3"
+ },
+ "*": { action_: ["output", "o=", "output"], nextState: "3" }
+ },
+ "others": {
+ "*": {
+ action_: [{ type_: "output", option: 1 }, "copy"],
+ nextState: "3"
+ }
+ },
+ "else2": {
+ "a": { action_: "a to o", nextState: "o", revisit: true },
+ "as": { action_: ["output", "sb=true"], nextState: "1", revisit: true },
+ "r|rt|rd|rdt|rdq": {
+ action_: ["output"],
+ nextState: "0",
+ revisit: true
+ },
+ "*": { action_: ["output", "copy"], nextState: "3" }
+ }
+ }),
+ actions: {
+ "o after d": function(buffer, m) {
+ var ret;
+ if ((buffer.d || "").match(/^[0-9]+$/)) {
+ var tmp = buffer.d;
+ buffer.d = void 0;
+ ret = this["output"](buffer);
+ buffer.b = tmp;
+ } else {
+ ret = this["output"](buffer);
+ }
+ mhchemParser.actions["o="](buffer, m);
+ return ret;
+ },
+ "d= kv": function(buffer, m) {
+ buffer.d = m;
+ buffer.dType = "kv";
+ },
+ "charge or bond": function(buffer, m) {
+ if (buffer["beginsWithBond"]) {
+ var ret = [];
+ mhchemParser.concatArray(ret, this["output"](buffer));
+ mhchemParser.concatArray(
+ ret,
+ mhchemParser.actions["bond"](buffer, m, "-")
+ );
+ return ret;
+ } else {
+ buffer.d = m;
+ }
+ },
+ "- after o/d": function(buffer, m, isAfterD) {
+ var c1 = mhchemParser.patterns.match_("orbital", buffer.o || "");
+ var c2 = mhchemParser.patterns.match_(
+ "one lowercase greek letter $",
+ buffer.o || ""
+ );
+ var c3 = mhchemParser.patterns.match_(
+ "one lowercase latin letter $",
+ buffer.o || ""
+ );
+ var c4 = mhchemParser.patterns.match_(
+ "$one lowercase latin letter$ $",
+ buffer.o || ""
+ );
+ var hyphenFollows = m === "-" && (c1 && c1.remainder === "" || c2 || c3 || c4);
+ if (hyphenFollows && !buffer.a && !buffer.b && !buffer.p && !buffer.d && !buffer.q && !c1 && c3) {
+ buffer.o = "$" + buffer.o + "$";
+ }
+ var ret = [];
+ if (hyphenFollows) {
+ mhchemParser.concatArray(ret, this["output"](buffer));
+ ret.push({ type_: "hyphen" });
+ } else {
+ c1 = mhchemParser.patterns.match_("digits", buffer.d || "");
+ if (isAfterD && c1 && c1.remainder === "") {
+ mhchemParser.concatArray(
+ ret,
+ mhchemParser.actions["d="](buffer, m)
+ );
+ mhchemParser.concatArray(ret, this["output"](buffer));
+ } else {
+ mhchemParser.concatArray(ret, this["output"](buffer));
+ mhchemParser.concatArray(
+ ret,
+ mhchemParser.actions["bond"](buffer, m, "-")
+ );
+ }
+ }
+ return ret;
+ },
+ "a to o": function(buffer) {
+ buffer.o = buffer.a;
+ buffer.a = void 0;
+ },
+ "sb=true": function(buffer) {
+ buffer.sb = true;
+ },
+ "sb=false": function(buffer) {
+ buffer.sb = false;
+ },
+ "beginsWithBond=true": function(buffer) {
+ buffer["beginsWithBond"] = true;
+ },
+ "beginsWithBond=false": function(buffer) {
+ buffer["beginsWithBond"] = false;
+ },
+ "parenthesisLevel++": function(buffer) {
+ buffer["parenthesisLevel"]++;
+ },
+ "parenthesisLevel--": function(buffer) {
+ buffer["parenthesisLevel"]--;
+ },
+ "state of aggregation": function(buffer, m) {
+ return { type_: "state of aggregation", p1: mhchemParser.go(m, "o") };
+ },
+ "comma": function(buffer, m) {
+ var a = m.replace(/\s*$/, "");
+ var withSpace = a !== m;
+ if (withSpace && buffer["parenthesisLevel"] === 0) {
+ return { type_: "comma enumeration L", p1: a };
+ } else {
+ return { type_: "comma enumeration M", p1: a };
+ }
+ },
+ "output": function(buffer, m, entityFollows) {
+ var ret;
+ if (!buffer.r) {
+ ret = [];
+ if (!buffer.a && !buffer.b && !buffer.p && !buffer.o && !buffer.q && !buffer.d && !entityFollows) {
+ } else {
+ if (buffer.sb) {
+ ret.push({ type_: "entitySkip" });
+ }
+ if (!buffer.o && !buffer.q && !buffer.d && !buffer.b && !buffer.p && entityFollows !== 2) {
+ buffer.o = buffer.a;
+ buffer.a = void 0;
+ } else if (!buffer.o && !buffer.q && !buffer.d && (buffer.b || buffer.p)) {
+ buffer.o = buffer.a;
+ buffer.d = buffer.b;
+ buffer.q = buffer.p;
+ buffer.a = buffer.b = buffer.p = void 0;
+ } else {
+ if (buffer.o && buffer.dType === "kv" && mhchemParser.patterns.match_("d-oxidation$", buffer.d || "")) {
+ buffer.dType = "oxidation";
+ } else if (buffer.o && buffer.dType === "kv" && !buffer.q) {
+ buffer.dType = void 0;
+ }
+ }
+ ret.push({
+ type_: "chemfive",
+ a: mhchemParser.go(buffer.a, "a"),
+ b: mhchemParser.go(buffer.b, "bd"),
+ p: mhchemParser.go(buffer.p, "pq"),
+ o: mhchemParser.go(buffer.o, "o"),
+ q: mhchemParser.go(buffer.q, "pq"),
+ d: mhchemParser.go(
+ buffer.d,
+ buffer.dType === "oxidation" ? "oxidation" : "bd"
+ ),
+ dType: buffer.dType
+ });
+ }
+ } else {
+ var rd;
+ if (buffer.rdt === "M") {
+ rd = mhchemParser.go(buffer.rd, "tex-math");
+ } else if (buffer.rdt === "T") {
+ rd = [{ type_: "text", p1: buffer.rd || "" }];
+ } else {
+ rd = mhchemParser.go(buffer.rd);
+ }
+ var rq;
+ if (buffer.rqt === "M") {
+ rq = mhchemParser.go(buffer.rq, "tex-math");
+ } else if (buffer.rqt === "T") {
+ rq = [{ type_: "text", p1: buffer.rq || "" }];
+ } else {
+ rq = mhchemParser.go(buffer.rq);
+ }
+ ret = {
+ type_: "arrow",
+ r: buffer.r,
+ rd,
+ rq
+ };
+ }
+ for (var p in buffer) {
+ if (p !== "parenthesisLevel" && p !== "beginsWithBond") {
+ delete buffer[p];
+ }
+ }
+ return ret;
+ },
+ "oxidation-output": function(buffer, m) {
+ var ret = ["{"];
+ mhchemParser.concatArray(ret, mhchemParser.go(m, "oxidation"));
+ ret.push("}");
+ return ret;
+ },
+ "frac-output": function(buffer, m) {
+ return {
+ type_: "frac-ce",
+ p1: mhchemParser.go(m[0]),
+ p2: mhchemParser.go(m[1])
+ };
+ },
+ "overset-output": function(buffer, m) {
+ return {
+ type_: "overset",
+ p1: mhchemParser.go(m[0]),
+ p2: mhchemParser.go(m[1])
+ };
+ },
+ "underset-output": function(buffer, m) {
+ return {
+ type_: "underset",
+ p1: mhchemParser.go(m[0]),
+ p2: mhchemParser.go(m[1])
+ };
+ },
+ "underbrace-output": function(buffer, m) {
+ return {
+ type_: "underbrace",
+ p1: mhchemParser.go(m[0]),
+ p2: mhchemParser.go(m[1])
+ };
+ },
+ "color-output": function(buffer, m) {
+ return { type_: "color", color1: m[0], color2: mhchemParser.go(m[1]) };
+ },
+ "r=": function(buffer, m) {
+ buffer.r = m;
+ },
+ "rdt=": function(buffer, m) {
+ buffer.rdt = m;
+ },
+ "rd=": function(buffer, m) {
+ buffer.rd = m;
+ },
+ "rqt=": function(buffer, m) {
+ buffer.rqt = m;
+ },
+ "rq=": function(buffer, m) {
+ buffer.rq = m;
+ },
+ "operator": function(buffer, m, p1) {
+ return { type_: "operator", kind_: p1 || m };
+ }
+ }
+ },
+ "a": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": {}
+ },
+ "1/2$": {
+ "0": { action_: "1/2" }
+ },
+ "else": {
+ "0": { nextState: "1", revisit: true }
+ },
+ "$(...)$": {
+ "*": { action_: "tex-math tight", nextState: "1" }
+ },
+ ",": {
+ "*": { action_: { type_: "insert", option: "commaDecimal" } }
+ },
+ "else2": {
+ "*": { action_: "copy" }
+ }
+ }),
+ actions: {}
+ },
+ "o": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": {}
+ },
+ "1/2$": {
+ "0": { action_: "1/2" }
+ },
+ "else": {
+ "0": { nextState: "1", revisit: true }
+ },
+ "letters": {
+ "*": { action_: "rm" }
+ },
+ "\\ca": {
+ "*": { action_: { type_: "insert", option: "circa" } }
+ },
+ "\\x{}{}|\\x{}|\\x": {
+ "*": { action_: "copy" }
+ },
+ "${(...)}$|$(...)$": {
+ "*": { action_: "tex-math" }
+ },
+ "{(...)}": {
+ "*": { action_: "{text}" }
+ },
+ "else2": {
+ "*": { action_: "copy" }
+ }
+ }),
+ actions: {}
+ },
+ "text": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": { action_: "output" }
+ },
+ "{...}": {
+ "*": { action_: "text=" }
+ },
+ "${(...)}$|$(...)$": {
+ "*": { action_: "tex-math" }
+ },
+ "\\greek": {
+ "*": { action_: ["output", "rm"] }
+ },
+ "\\,|\\x{}{}|\\x{}|\\x": {
+ "*": { action_: ["output", "copy"] }
+ },
+ "else": {
+ "*": { action_: "text=" }
+ }
+ }),
+ actions: {
+ output: function(buffer) {
+ if (buffer.text_) {
+ var ret = { type_: "text", p1: buffer.text_ };
+ for (var p in buffer) {
+ delete buffer[p];
+ }
+ return ret;
+ }
+ }
+ }
+ },
+ "pq": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": {}
+ },
+ "state of aggregation $": {
+ "*": { action_: "state of aggregation" }
+ },
+ "i$": {
+ "0": { nextState: "!f", revisit: true }
+ },
+ "(KV letters),": {
+ "0": { action_: "rm", nextState: "0" }
+ },
+ "formula$": {
+ "0": { nextState: "f", revisit: true }
+ },
+ "1/2$": {
+ "0": { action_: "1/2" }
+ },
+ "else": {
+ "0": { nextState: "!f", revisit: true }
+ },
+ "${(...)}$|$(...)$": {
+ "*": { action_: "tex-math" }
+ },
+ "{(...)}": {
+ "*": { action_: "text" }
+ },
+ "a-z": {
+ f: { action_: "tex-math" }
+ },
+ "letters": {
+ "*": { action_: "rm" }
+ },
+ "-9.,9": {
+ "*": { action_: "9,9" }
+ },
+ ",": {
+ "*": { action_: { type_: "insert+p1", option: "comma enumeration S" } }
+ },
+ "\\color{(...)}{(...)}1|\\color(...){(...)}2": {
+ "*": { action_: "color-output" }
+ },
+ "\\color{(...)}0": {
+ "*": { action_: "color0-output" }
+ },
+ "\\ce{(...)}": {
+ "*": { action_: "ce" }
+ },
+ "\\,|\\x{}{}|\\x{}|\\x": {
+ "*": { action_: "copy" }
+ },
+ "else2": {
+ "*": { action_: "copy" }
+ }
+ }),
+ actions: {
+ "state of aggregation": function(buffer, m) {
+ return {
+ type_: "state of aggregation subscript",
+ p1: mhchemParser.go(m, "o")
+ };
+ },
+ "color-output": function(buffer, m) {
+ return {
+ type_: "color",
+ color1: m[0],
+ color2: mhchemParser.go(m[1], "pq")
+ };
+ }
+ }
+ },
+ "bd": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": {}
+ },
+ "x$": {
+ "0": { nextState: "!f", revisit: true }
+ },
+ "formula$": {
+ "0": { nextState: "f", revisit: true }
+ },
+ "else": {
+ "0": { nextState: "!f", revisit: true }
+ },
+ "-9.,9 no missing 0": {
+ "*": { action_: "9,9" }
+ },
+ ".": {
+ "*": { action_: { type_: "insert", option: "electron dot" } }
+ },
+ "a-z": {
+ f: { action_: "tex-math" }
+ },
+ "x": {
+ "*": { action_: { type_: "insert", option: "KV x" } }
+ },
+ "letters": {
+ "*": { action_: "rm" }
+ },
+ "'": {
+ "*": { action_: { type_: "insert", option: "prime" } }
+ },
+ "${(...)}$|$(...)$": {
+ "*": { action_: "tex-math" }
+ },
+ "{(...)}": {
+ "*": { action_: "text" }
+ },
+ "\\color{(...)}{(...)}1|\\color(...){(...)}2": {
+ "*": { action_: "color-output" }
+ },
+ "\\color{(...)}0": {
+ "*": { action_: "color0-output" }
+ },
+ "\\ce{(...)}": {
+ "*": { action_: "ce" }
+ },
+ "\\,|\\x{}{}|\\x{}|\\x": {
+ "*": { action_: "copy" }
+ },
+ "else2": {
+ "*": { action_: "copy" }
+ }
+ }),
+ actions: {
+ "color-output": function(buffer, m) {
+ return {
+ type_: "color",
+ color1: m[0],
+ color2: mhchemParser.go(m[1], "bd")
+ };
+ }
+ }
+ },
+ "oxidation": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": {}
+ },
+ "roman numeral": {
+ "*": { action_: "roman-numeral" }
+ },
+ "${(...)}$|$(...)$": {
+ "*": { action_: "tex-math" }
+ },
+ "else": {
+ "*": { action_: "copy" }
+ }
+ }),
+ actions: {
+ "roman-numeral": function(buffer, m) {
+ return { type_: "roman numeral", p1: m || "" };
+ }
+ }
+ },
+ "tex-math": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": { action_: "output" }
+ },
+ "\\ce{(...)}": {
+ "*": { action_: ["output", "ce"] }
+ },
+ "{...}|\\,|\\x{}{}|\\x{}|\\x": {
+ "*": { action_: "o=" }
+ },
+ "else": {
+ "*": { action_: "o=" }
+ }
+ }),
+ actions: {
+ output: function(buffer) {
+ if (buffer.o) {
+ var ret = { type_: "tex-math", p1: buffer.o };
+ for (var p in buffer) {
+ delete buffer[p];
+ }
+ return ret;
+ }
+ }
+ }
+ },
+ "tex-math tight": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": { action_: "output" }
+ },
+ "\\ce{(...)}": {
+ "*": { action_: ["output", "ce"] }
+ },
+ "{...}|\\,|\\x{}{}|\\x{}|\\x": {
+ "*": { action_: "o=" }
+ },
+ "-|+": {
+ "*": { action_: "tight operator" }
+ },
+ "else": {
+ "*": { action_: "o=" }
+ }
+ }),
+ actions: {
+ "tight operator": function(buffer, m) {
+ buffer.o = (buffer.o || "") + "{" + m + "}";
+ },
+ "output": function(buffer) {
+ if (buffer.o) {
+ var ret = { type_: "tex-math", p1: buffer.o };
+ for (var p in buffer) {
+ delete buffer[p];
+ }
+ return ret;
+ }
+ }
+ }
+ },
+ "9,9": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": {}
+ },
+ ",": {
+ "*": { action_: "comma" }
+ },
+ "else": {
+ "*": { action_: "copy" }
+ }
+ }),
+ actions: {
+ comma: function() {
+ return { type_: "commaDecimal" };
+ }
+ }
+ },
+ //#endregion
+ //
+ // \pu state machines
+ //
+ //#region pu
+ "pu": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": { action_: "output" }
+ },
+ "space$": {
+ "*": { action_: ["output", "space"] }
+ },
+ "{[(|)]}": {
+ "0|a": { action_: "copy" }
+ },
+ "(-)(9)^(-9)": {
+ "0": { action_: "number^", nextState: "a" }
+ },
+ "(-)(9.,9)(e)(99)": {
+ "0": { action_: "enumber", nextState: "a" }
+ },
+ "space": {
+ "0|a": {}
+ },
+ "pm-operator": {
+ "0|a": {
+ action_: { type_: "operator", option: "\\pm" },
+ nextState: "0"
+ }
+ },
+ "operator": {
+ "0|a": { action_: "copy", nextState: "0" }
+ },
+ "//": {
+ d: { action_: "o=", nextState: "/" }
+ },
+ "/": {
+ d: { action_: "o=", nextState: "/" }
+ },
+ "{...}|else": {
+ "0|d": { action_: "d=", nextState: "d" },
+ "a": { action_: ["space", "d="], nextState: "d" },
+ "/|q": { action_: "q=", nextState: "q" }
+ }
+ }),
+ actions: {
+ "enumber": function(buffer, m) {
+ var ret = [];
+ if (m[0] === "+-" || m[0] === "+/-") {
+ ret.push("\\pm ");
+ } else if (m[0]) {
+ ret.push(m[0]);
+ }
+ if (m[1]) {
+ mhchemParser.concatArray(ret, mhchemParser.go(m[1], "pu-9,9"));
+ if (m[2]) {
+ if (m[2].match(/[,.]/)) {
+ mhchemParser.concatArray(ret, mhchemParser.go(m[2], "pu-9,9"));
+ } else {
+ ret.push(m[2]);
+ }
+ }
+ if (m[3] || m[4]) {
+ if (m[3] === "e" || m[4] === "*") {
+ ret.push({ type_: "cdot" });
+ } else {
+ ret.push({ type_: "times" });
+ }
+ }
+ }
+ if (m[5]) {
+ ret.push("10^{" + m[5] + "}");
+ }
+ return ret;
+ },
+ "number^": function(buffer, m) {
+ var ret = [];
+ if (m[0] === "+-" || m[0] === "+/-") {
+ ret.push("\\pm ");
+ } else if (m[0]) {
+ ret.push(m[0]);
+ }
+ mhchemParser.concatArray(ret, mhchemParser.go(m[1], "pu-9,9"));
+ ret.push("^{" + m[2] + "}");
+ return ret;
+ },
+ "operator": function(buffer, m, p1) {
+ return { type_: "operator", kind_: p1 || m };
+ },
+ "space": function() {
+ return { type_: "pu-space-1" };
+ },
+ "output": function(buffer) {
+ var ret;
+ var md = mhchemParser.patterns.match_("{(...)}", buffer.d || "");
+ if (md && md.remainder === "") {
+ buffer.d = md.match_;
+ }
+ var mq = mhchemParser.patterns.match_("{(...)}", buffer.q || "");
+ if (mq && mq.remainder === "") {
+ buffer.q = mq.match_;
+ }
+ if (buffer.d) {
+ buffer.d = buffer.d.replace(/\u00B0C|\^oC|\^{o}C/g, "{}^{\\circ}C");
+ buffer.d = buffer.d.replace(/\u00B0F|\^oF|\^{o}F/g, "{}^{\\circ}F");
+ }
+ if (buffer.q) {
+ buffer.q = buffer.q.replace(/\u00B0C|\^oC|\^{o}C/g, "{}^{\\circ}C");
+ buffer.q = buffer.q.replace(/\u00B0F|\^oF|\^{o}F/g, "{}^{\\circ}F");
+ var b5 = {
+ d: mhchemParser.go(buffer.d, "pu"),
+ q: mhchemParser.go(buffer.q, "pu")
+ };
+ if (buffer.o === "//") {
+ ret = { type_: "pu-frac", p1: b5.d, p2: b5.q };
+ } else {
+ ret = b5.d;
+ if (b5.d.length > 1 || b5.q.length > 1) {
+ ret.push({ type_: " / " });
+ } else {
+ ret.push({ type_: "/" });
+ }
+ mhchemParser.concatArray(ret, b5.q);
+ }
+ } else {
+ ret = mhchemParser.go(buffer.d, "pu-2");
+ }
+ for (var p in buffer) {
+ delete buffer[p];
+ }
+ return ret;
+ }
+ }
+ },
+ "pu-2": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "*": { action_: "output" }
+ },
+ "*": {
+ "*": { action_: ["output", "cdot"], nextState: "0" }
+ },
+ "\\x": {
+ "*": { action_: "rm=" }
+ },
+ "space": {
+ "*": { action_: ["output", "space"], nextState: "0" }
+ },
+ "^{(...)}|^(-1)": {
+ "1": { action_: "^(-1)" }
+ },
+ "-9.,9": {
+ "0": { action_: "rm=", nextState: "0" },
+ "1": { action_: "^(-1)", nextState: "0" }
+ },
+ "{...}|else": {
+ "*": { action_: "rm=", nextState: "1" }
+ }
+ }),
+ actions: {
+ "cdot": function() {
+ return { type_: "tight cdot" };
+ },
+ "^(-1)": function(buffer, m) {
+ buffer.rm += "^{" + m + "}";
+ },
+ "space": function() {
+ return { type_: "pu-space-2" };
+ },
+ "output": function(buffer) {
+ var ret = [];
+ if (buffer.rm) {
+ var mrm = mhchemParser.patterns.match_("{(...)}", buffer.rm || "");
+ if (mrm && mrm.remainder === "") {
+ ret = mhchemParser.go(mrm.match_, "pu");
+ } else {
+ ret = { type_: "rm", p1: buffer.rm };
+ }
+ }
+ for (var p in buffer) {
+ delete buffer[p];
+ }
+ return ret;
+ }
+ }
+ },
+ "pu-9,9": {
+ transitions: mhchemParser.createTransitions({
+ "empty": {
+ "0": { action_: "output-0" },
+ "o": { action_: "output-o" }
+ },
+ ",": {
+ "0": { action_: ["output-0", "comma"], nextState: "o" }
+ },
+ ".": {
+ "0": { action_: ["output-0", "copy"], nextState: "o" }
+ },
+ "else": {
+ "*": { action_: "text=" }
+ }
+ }),
+ actions: {
+ "comma": function() {
+ return { type_: "commaDecimal" };
+ },
+ "output-0": function(buffer) {
+ var ret = [];
+ buffer.text_ = buffer.text_ || "";
+ if (buffer.text_.length > 4) {
+ var a = buffer.text_.length % 3;
+ if (a === 0) {
+ a = 3;
+ }
+ for (var i = buffer.text_.length - 3; i > 0; i -= 3) {
+ ret.push(buffer.text_.substr(i, 3));
+ ret.push({ type_: "1000 separator" });
+ }
+ ret.push(buffer.text_.substr(0, a));
+ ret.reverse();
+ } else {
+ ret.push(buffer.text_);
+ }
+ for (var p in buffer) {
+ delete buffer[p];
+ }
+ return ret;
+ },
+ "output-o": function(buffer) {
+ var ret = [];
+ buffer.text_ = buffer.text_ || "";
+ if (buffer.text_.length > 4) {
+ var a = buffer.text_.length - 3;
+ for (var i = 0; i < a; i += 3) {
+ ret.push(buffer.text_.substr(i, 3));
+ ret.push({ type_: "1000 separator" });
+ }
+ ret.push(buffer.text_.substr(i));
+ } else {
+ ret.push(buffer.text_);
+ }
+ for (var p in buffer) {
+ delete buffer[p];
+ }
+ return ret;
+ }
+ }
+ }
+ //#endregion
+};
+var texify = {
+ go: function(input, isInner) {
+ if (!input) {
+ return "";
+ }
+ var res = "";
+ var cee = false;
+ for (var i = 0; i < input.length; i++) {
+ var inputi = input[i];
+ if (typeof inputi === "string") {
+ res += inputi;
+ } else {
+ res += texify._go2(inputi);
+ if (inputi.type_ === "1st-level escape") {
+ cee = true;
+ }
+ }
+ }
+ if (!isInner && !cee && res) {
+ res = "{" + res + "}";
+ }
+ return res;
+ },
+ _goInner: function(input) {
+ if (!input) {
+ return input;
+ }
+ return texify.go(input, true);
+ },
+ _go2: function(buf) {
+ var res;
+ switch (buf.type_) {
+ case "chemfive":
+ res = "";
+ var b5 = {
+ a: texify._goInner(buf.a),
+ b: texify._goInner(buf.b),
+ p: texify._goInner(buf.p),
+ o: texify._goInner(buf.o),
+ q: texify._goInner(buf.q),
+ d: texify._goInner(buf.d)
+ };
+ if (b5.a) {
+ if (b5.a.match(/^[+\-]/)) {
+ b5.a = "{" + b5.a + "}";
+ }
+ res += b5.a + "\\,";
+ }
+ if (b5.b || b5.p) {
+ res += "{\\vphantom{X}}";
+ res += "^{\\hphantom{" + (b5.b || "") + "}}_{\\hphantom{" + (b5.p || "") + "}}";
+ res += "{\\vphantom{X}}";
+ res += "^{\\smash[t]{\\vphantom{2}}\\llap{" + (b5.b || "") + "}}";
+ res += "_{\\vphantom{2}\\llap{\\smash[t]{" + (b5.p || "") + "}}}";
+ }
+ if (b5.o) {
+ if (b5.o.match(/^[+\-]/)) {
+ b5.o = "{" + b5.o + "}";
+ }
+ res += b5.o;
+ }
+ if (buf.dType === "kv") {
+ if (b5.d || b5.q) {
+ res += "{\\vphantom{X}}";
+ }
+ if (b5.d) {
+ res += "^{" + b5.d + "}";
+ }
+ if (b5.q) {
+ res += "_{\\smash[t]{" + b5.q + "}}";
+ }
+ } else if (buf.dType === "oxidation") {
+ if (b5.d) {
+ res += "{\\vphantom{X}}";
+ res += "^{" + b5.d + "}";
+ }
+ if (b5.q) {
+ res += "{\\vphantom{X}}";
+ res += "_{\\smash[t]{" + b5.q + "}}";
+ }
+ } else {
+ if (b5.q) {
+ res += "{\\vphantom{X}}";
+ res += "_{\\smash[t]{" + b5.q + "}}";
+ }
+ if (b5.d) {
+ res += "{\\vphantom{X}}";
+ res += "^{" + b5.d + "}";
+ }
+ }
+ break;
+ case "rm":
+ res = "\\mathrm{" + buf.p1 + "}";
+ break;
+ case "text":
+ if (buf.p1.match(/[\^_]/)) {
+ buf.p1 = buf.p1.replace(" ", "~").replace("-", "\\text{-}");
+ res = "\\mathrm{" + buf.p1 + "}";
+ } else {
+ res = "\\text{" + buf.p1 + "}";
+ }
+ break;
+ case "roman numeral":
+ res = "\\mathrm{" + buf.p1 + "}";
+ break;
+ case "state of aggregation":
+ res = "\\mskip2mu " + texify._goInner(buf.p1);
+ break;
+ case "state of aggregation subscript":
+ res = "\\mskip1mu " + texify._goInner(buf.p1);
+ break;
+ case "bond":
+ res = texify._getBond(buf.kind_);
+ if (!res) {
+ throw [
+ "MhchemErrorBond",
+ "mhchem Error. Unknown bond type (" + buf.kind_ + ")"
+ ];
+ }
+ break;
+ case "frac":
+ var c = "\\frac{" + buf.p1 + "}{" + buf.p2 + "}";
+ res = "\\mathchoice{\\textstyle" + c + "}{" + c + "}{" + c + "}{" + c + "}";
+ break;
+ case "pu-frac":
+ var d = "\\frac{" + texify._goInner(buf.p1) + "}{" + texify._goInner(buf.p2) + "}";
+ res = "\\mathchoice{\\textstyle" + d + "}{" + d + "}{" + d + "}{" + d + "}";
+ break;
+ case "tex-math":
+ res = buf.p1 + " ";
+ break;
+ case "frac-ce":
+ res = "\\frac{" + texify._goInner(buf.p1) + "}{" + texify._goInner(buf.p2) + "}";
+ break;
+ case "overset":
+ res = "\\overset{" + texify._goInner(buf.p1) + "}{" + texify._goInner(buf.p2) + "}";
+ break;
+ case "underset":
+ res = "\\underset{" + texify._goInner(buf.p1) + "}{" + texify._goInner(buf.p2) + "}";
+ break;
+ case "underbrace":
+ res = "\\underbrace{" + texify._goInner(buf.p1) + "}_{" + texify._goInner(buf.p2) + "}";
+ break;
+ case "color":
+ res = "{\\color{" + buf.color1 + "}{" + texify._goInner(buf.color2) + "}}";
+ break;
+ case "color0":
+ res = "\\color{" + buf.color + "}";
+ break;
+ case "arrow":
+ var b6 = {
+ rd: texify._goInner(buf.rd),
+ rq: texify._goInner(buf.rq)
+ };
+ var arrow = texify._getArrow(buf.r);
+ if (b6.rd || b6.rq) {
+ if (buf.r === "<=>" || buf.r === "<=>>" || buf.r === "<<=>" || buf.r === "<-->") {
+ arrow = "\\long" + arrow;
+ if (b6.rd) {
+ arrow = "\\overset{" + b6.rd + "}{" + arrow + "}";
+ }
+ if (b6.rq) {
+ if (buf.r === "<-->") {
+ arrow = "\\underset{\\lower2mu{" + b6.rq + "}}{" + arrow + "}";
+ } else {
+ arrow = "\\underset{\\lower6mu{" + b6.rq + "}}{" + arrow + "}";
+ }
+ }
+ arrow = " {}\\mathrel{" + arrow + "}{} ";
+ } else {
+ if (b6.rq) {
+ arrow += "[{" + b6.rq + "}]";
+ }
+ arrow += "{" + b6.rd + "}";
+ arrow = " {}\\mathrel{\\x" + arrow + "}{} ";
+ }
+ } else {
+ arrow = " {}\\mathrel{\\long" + arrow + "}{} ";
+ }
+ res = arrow;
+ break;
+ case "operator":
+ res = texify._getOperator(buf.kind_);
+ break;
+ case "1st-level escape":
+ res = buf.p1 + " ";
+ break;
+ case "space":
+ res = " ";
+ break;
+ case "entitySkip":
+ res = "~";
+ break;
+ case "pu-space-1":
+ res = "~";
+ break;
+ case "pu-space-2":
+ res = "\\mkern3mu ";
+ break;
+ case "1000 separator":
+ res = "\\mkern2mu ";
+ break;
+ case "commaDecimal":
+ res = "{,}";
+ break;
+ case "comma enumeration L":
+ res = "{" + buf.p1 + "}\\mkern6mu ";
+ break;
+ case "comma enumeration M":
+ res = "{" + buf.p1 + "}\\mkern3mu ";
+ break;
+ case "comma enumeration S":
+ res = "{" + buf.p1 + "}\\mkern1mu ";
+ break;
+ case "hyphen":
+ res = "\\text{-}";
+ break;
+ case "addition compound":
+ res = "\\,{\\cdot}\\,";
+ break;
+ case "electron dot":
+ res = "\\mkern1mu \\bullet\\mkern1mu ";
+ break;
+ case "KV x":
+ res = "{\\times}";
+ break;
+ case "prime":
+ res = "\\prime ";
+ break;
+ case "cdot":
+ res = "\\cdot ";
+ break;
+ case "tight cdot":
+ res = "\\mkern1mu{\\cdot}\\mkern1mu ";
+ break;
+ case "times":
+ res = "\\times ";
+ break;
+ case "circa":
+ res = "{\\sim}";
+ break;
+ case "^":
+ res = "uparrow";
+ break;
+ case "v":
+ res = "downarrow";
+ break;
+ case "ellipsis":
+ res = "\\ldots ";
+ break;
+ case "/":
+ res = "/";
+ break;
+ case " / ":
+ res = "\\,/\\,";
+ break;
+ default:
+ assertNever(buf);
+ throw ["MhchemBugT", "mhchem bug T. Please report."];
+ }
+ assertString(res);
+ return res;
+ },
+ _getArrow: function(a) {
+ switch (a) {
+ case "->":
+ return "rightarrow";
+ case "\u2192":
+ return "rightarrow";
+ case "\u27F6":
+ return "rightarrow";
+ case "<-":
+ return "leftarrow";
+ case "<->":
+ return "leftrightarrow";
+ case "<-->":
+ return "leftrightarrows";
+ case "<=>":
+ return "rightleftharpoons";
+ case "\u21CC":
+ return "rightleftharpoons";
+ case "<=>>":
+ return "Rightleftharpoons";
+ case "<<=>":
+ return "Leftrightharpoons";
+ default:
+ assertNever(a);
+ throw ["MhchemBugT", "mhchem bug T. Please report."];
+ }
+ },
+ _getBond: function(a) {
+ switch (a) {
+ case "-":
+ return "{-}";
+ case "1":
+ return "{-}";
+ case "=":
+ return "{=}";
+ case "2":
+ return "{=}";
+ case "#":
+ return "{\\equiv}";
+ case "3":
+ return "{\\equiv}";
+ case "~":
+ return "{\\tripledash}";
+ case "~-":
+ return "{\\rlap{\\lower.1em{-}}\\raise.1em{\\tripledash}}";
+ case "~=":
+ return "{\\rlap{\\lower.2em{-}}\\rlap{\\raise.2em{\\tripledash}}-}";
+ case "~--":
+ return "{\\rlap{\\lower.2em{-}}\\rlap{\\raise.2em{\\tripledash}}-}";
+ case "-~-":
+ return "{\\rlap{\\lower.2em{-}}\\rlap{\\raise.2em{-}}\\tripledash}";
+ case "...":
+ return "{{\\cdot}{\\cdot}{\\cdot}}";
+ case "....":
+ return "{{\\cdot}{\\cdot}{\\cdot}{\\cdot}}";
+ case "->":
+ return "{\\rightarrow}";
+ case "<-":
+ return "{\\leftarrow}";
+ case "<":
+ return "{<}";
+ case ">":
+ return "{>}";
+ default:
+ assertNever(a);
+ throw ["MhchemBugT", "mhchem bug T. Please report."];
+ }
+ },
+ _getOperator: function(a) {
+ switch (a) {
+ case "+":
+ return " {}+{} ";
+ case "-":
+ return " {}-{} ";
+ case "=":
+ return " {}={} ";
+ case "<":
+ return " {}<{} ";
+ case ">":
+ return " {}>{} ";
+ case "<<":
+ return " {}\\ll{} ";
+ case ">>":
+ return " {}\\gg{} ";
+ case "\\pm":
+ return " {}\\pm{} ";
+ case "\\approx":
+ return " {}\\approx{} ";
+ case "$\\approx$":
+ return " {}\\approx{} ";
+ case "v":
+ return " \\downarrow{} ";
+ case "(v)":
+ return " \\downarrow{} ";
+ case "^":
+ return " \\uparrow{} ";
+ case "(^)":
+ return " \\uparrow{} ";
+ default:
+ assertNever(a);
+ throw ["MhchemBugT", "mhchem bug T. Please report."];
+ }
+ }
+};
+function assertNever(a) {
+}
+function assertString(a) {
+}
+
+// src/atoms/delim.ts
+var MiddleDelimAtom = class _MiddleDelimAtom extends Atom {
+ constructor(options) {
+ super(__spreadProps(__spreadValues({}, options), { type: "delim" }));
+ this.value = options.delim;
+ this.size = options.size;
+ }
+ static fromJson(json) {
+ return new _MiddleDelimAtom(json);
+ }
+ toJson() {
+ return __spreadProps(__spreadValues({}, super.toJson()), { delim: this.value, size: this.size });
+ }
+ render(_context) {
+ return new Box(this.value, { type: "middle" });
+ }
+ _serialize(options) {
+ if (!(options.expandMacro || options.skipStyles || options.skipPlaceholders) && typeof this.verbatimLatex === "string")
+ return this.verbatimLatex;
+ const def = getDefinition(this.command, this.mode);
+ if (def == null ? void 0 : def.serialize)
+ return def.serialize(this, options);
+ return latexCommand(this.command, this.value);
+ }
+};
+var SizedDelimAtom = class _SizedDelimAtom extends Atom {
+ constructor(options) {
+ super(__spreadProps(__spreadValues({}, options), { type: "sizeddelim", value: options.delim }));
+ this.delimType = options.delimType;
+ this.size = options.size;
+ }
+ static fromJson(json) {
+ return new _SizedDelimAtom(json);
+ }
+ toJson() {
+ return __spreadProps(__spreadValues({}, super.toJson()), {
+ delim: this.value,
+ size: this.size,
+ delimType: this.delimType
+ });
+ }
+ render(context) {
+ let result = makeSizedDelim(this.value, this.size, context, {
+ classes: { open: "mopen", close: "mclose" }[this.delimType],
+ type: this.delimType,
+ isSelected: this.isSelected
+ });
+ if (!result)
+ return null;
+ result = this.bind(context, result);
+ if (this.caret)
+ result.caret = this.caret;
+ return result;
+ }
+ _serialize(options) {
+ if (!(options.expandMacro || options.skipStyles || options.skipPlaceholders) && typeof this.verbatimLatex === "string")
+ return this.verbatimLatex;
+ const def = getDefinition(this.command, this.mode);
+ if (def == null ? void 0 : def.serialize)
+ return def.serialize(this, options);
+ return latexCommand(this.command, this.value);
+ }
+};
+
+// src/atoms/enclose.ts
+var EncloseAtom = class _EncloseAtom extends Atom {
+ constructor(command, body, notation, options) {
+ var _a3, _b3;
+ super({ type: "enclose", command, style: options.style });
+ this.body = body;
+ this.backgroundcolor = options.backgroundcolor;
+ if (notation.updiagonalarrow)
+ notation.updiagonalstrike = false;
+ if (notation.box) {
+ notation.left = false;
+ notation.right = false;
+ notation.bottom = false;
+ notation.top = false;
+ }
+ this.notation = notation;
+ this.shadow = (_a3 = options.shadow) != null ? _a3 : "none";
+ this.strokeWidth = (_b3 = options.strokeWidth) != null ? _b3 : "0.06em";
+ if (!this.strokeWidth)
+ this.strokeWidth = "0.06em";
+ this.strokeStyle = options.strokeStyle;
+ this.svgStrokeStyle = options.svgStrokeStyle;
+ this.strokeColor = options.strokeColor;
+ this.borderStyle = options.borderStyle;
+ this.padding = options.padding;
+ this.captureSelection = false;
+ }
+ static fromJson(json) {
+ return new _EncloseAtom(
+ json.command,
+ json.body,
+ json.notation,
+ json
+ );
+ }
+ toJson() {
+ return __spreadProps(__spreadValues({}, super.toJson()), {
+ notation: this.notation,
+ shadow: this.shadow,
+ strokeWidth: this.strokeWidth,
+ strokeStyle: this.strokeStyle,
+ svgStrokeStyle: this.svgStrokeStyle,
+ strokeColor: this.strokeColor,
+ borderStyle: this.borderStyle,
+ padding: this.padding
+ });
+ }
+ _serialize(options) {
+ var _a3;
+ if (!(options.expandMacro || options.skipStyles || options.skipPlaceholders) && typeof this.verbatimLatex === "string")
+ return this.verbatimLatex;
+ const def = getDefinition(this.command, this.mode);
+ if (def == null ? void 0 : def.serialize)
+ return def.serialize(this, options);
+ let command = (_a3 = this.command) != null ? _a3 : "";
+ if (this.command === "\\enclose") {
+ command += "{" + Object.keys(this.notation).join(" ") + "}";
+ let style = "";
+ let sep = "";
+ if (this.backgroundcolor && this.backgroundcolor !== "transparent") {
+ style += sep + 'mathbackground="' + this.backgroundcolor + '"';
+ sep = ",";
+ }
+ if (this.shadow && this.shadow !== "auto") {
+ style += sep + 'shadow="' + this.shadow + '"';
+ sep = ",";
+ }
+ if (this.strokeWidth || this.strokeStyle !== "solid") {
+ style += sep + this.borderStyle;
+ sep = ",";
+ } else if (this.strokeColor && this.strokeColor !== "currentColor") {
+ style += sep + 'mathcolor="' + this.strokeColor + '"';
+ sep = ",";
+ }
+ if (style)
+ command += `[${style}]`;
+ }
+ return latexCommand(command, this.bodyToLatex(options));
+ }
+ render(parentContext) {
+ const context = new Context({ parent: parentContext }, this.style);
+ const base = Atom.createBox(context, this.body);
+ if (!base)
+ return null;
+ const borderWidth = borderDim(this.borderStyle);
+ const padding2 = context.toEm(
+ !this.padding || this.padding === "auto" ? { register: "fboxsep" } : { string: this.padding }
+ );
+ base.setStyle("position", "relative");
+ base.setStyle("display", "inline-block");
+ base.setStyle("top", padding2, "em");
+ base.setStyle("height", base.height + base.depth, "em");
+ base.setStyle("width", base.width, "em");
+ const notation = new Box(null, { classes: "ML__notation" });
+ let h = base.height + base.depth + 2 * padding2;
+ const w = base.width + 2 * padding2;
+ let svg = "";
+ if (this.notation.horizontalstrike)
+ svg += this.line(3, 50, 97, 50);
+ if (this.notation.verticalstrike)
+ svg += this.line(50, 3, 50, 97);
+ if (this.notation.updiagonalstrike)
+ svg += this.line(3, 97, 97, 3);
+ if (this.notation.downdiagonalstrike)
+ svg += this.line(3, 3, 97, 97);
+ if (this.notation.updiagonalarrow) {
+ svg += this.line(
+ padding2.toString(),
+ (padding2 + base.depth + base.height).toString(),
+ (padding2 + base.width).toString(),
+ padding2.toString()
+ );
+ const t = 1;
+ const length = Math.sqrt(w * w + h * h);
+ const f = 0.03 * length * t;
+ const wf = base.width * f;
+ const hf = (base.depth + base.height) * f;
+ const x = padding2 + base.width;
+ let y = padding2;
+ if (y + hf - 0.4 * wf < 0)
+ y = 0.4 * wf - hf;
+ svg += ' ";
+ }
+ let wDelta = 0;
+ if (this.notation.phasorangle) {
+ const clearance = getClearance(context);
+ const bot = (base.height + base.depth + 2 * clearance + padding2).toString();
+ const angleWidth = (base.height + base.depth) / 2;
+ svg += this.line(
+ padding2.toString(),
+ bot,
+ (padding2 + angleWidth + base.width).toString(),
+ bot
+ );
+ svg += this.line(
+ padding2.toString(),
+ bot,
+ (padding2 + angleWidth).toString(),
+ (padding2 - clearance).toString()
+ );
+ h += clearance;
+ wDelta = angleWidth;
+ base.left += h / 2 - padding2;
+ }
+ if (this.notation.longdiv) {
+ const clearance = getClearance(context);
+ h += clearance;
+ svg += this.line(
+ padding2.toString(),
+ padding2.toString(),
+ (padding2 + base.width).toString(),
+ padding2.toString()
+ );
+ const surdWidth = 0.3;
+ wDelta = surdWidth + clearance;
+ base.left += surdWidth + clearance;
+ base.setTop(padding2 + clearance);
+ svg += ' ";
+ }
+ notation.width = base.width + 2 * padding2 + wDelta;
+ notation.height = base.height + padding2;
+ notation.depth = base.depth + padding2;
+ notation.setStyle("box-sizing", "border-box");
+ notation.setStyle("left", `calc(-${borderWidth} / 2 )`);
+ notation.setStyle("height", `${Math.floor(100 * h) / 100}em`);
+ notation.setStyle("top", `calc(${borderWidth} / 2 )`);
+ if (this.backgroundcolor)
+ notation.setStyle("background-color", this.backgroundcolor);
+ if (this.notation.box)
+ notation.setStyle("border", "1px solid red");
+ if (this.notation.actuarial) {
+ notation.setStyle("border-top", this.borderStyle);
+ notation.setStyle("border-right", this.borderStyle);
+ }
+ if (this.notation.madruwb) {
+ notation.setStyle("border-bottom", this.borderStyle);
+ notation.setStyle("border-right", this.borderStyle);
+ }
+ if (this.notation.roundedbox) {
+ notation.setStyle("border-radius", "8px");
+ notation.setStyle("border", this.borderStyle);
+ }
+ if (this.notation.circle) {
+ notation.setStyle("border-radius", "50%");
+ notation.setStyle("border", this.borderStyle);
+ }
+ if (this.notation.top)
+ notation.setStyle("border-top", this.borderStyle);
+ if (this.notation.left)
+ notation.setStyle("border-left", this.borderStyle);
+ if (this.notation.right)
+ notation.setStyle("border-right", this.borderStyle);
+ if (this.notation.bottom)
+ notation.setStyle("border-bottom", this.borderStyle);
+ if (svg) {
+ let svgStyle = "";
+ if (this.shadow === "auto") {
+ svgStyle += "filter: drop-shadow(0 0 .5px rgba(255, 255, 255, .7)) drop-shadow(1px 1px 2px #333)";
+ }
+ if (this.shadow !== "none")
+ svgStyle += `filter: drop-shadow(${this.shadow})`;
+ svgStyle += ` stroke-width="${this.strokeWidth}" stroke="${this.strokeColor}"`;
+ svgStyle += ' stroke-linecap="round"';
+ if (this.svgStrokeStyle)
+ svgStyle += ` stroke-dasharray="${this.svgStrokeStyle}"`;
+ notation.svgStyle = svgStyle;
+ notation.svgOverlay = svg;
+ }
+ const result = new Box([notation, base]);
+ result.setStyle("position", "relative");
+ result.setStyle("vertical-align", padding2, "em");
+ result.setStyle(
+ "height",
+ `${Math.floor(100 * (base.height + base.depth + 2 * padding2)) / 100}em`
+ );
+ result.setStyle("display", "inline-block");
+ result.height = notation.height;
+ result.depth = notation.depth;
+ result.width = notation.width - 2 * padding2;
+ result.left = padding2;
+ result.right = padding2;
+ if (this.caret)
+ result.caret = this.caret;
+ return result.wrap(context);
+ }
+ line(x1, y1, x2, y2) {
+ return ` `;
+ }
+};
+function coord(c) {
+ if (typeof c === "number")
+ return `${Math.floor(100 * c) / 100}%`;
+ return c;
+}
+function borderDim(s) {
+ if (!s)
+ return "1px";
+ const m = s.match(/([0-9][a-zA-Z\%]+)/);
+ if (m === null)
+ return "1px";
+ return m[1];
+}
+function getRuleThickness(ctx) {
+ return (Math.floor(100 * ctx.metrics.sqrtRuleThickness / ctx.scalingFactor) / 100 / 10).toString() + "em";
+}
+function getClearance(ctx) {
+ const phi = ctx.isDisplayStyle ? X_HEIGHT : ctx.metrics.defaultRuleThickness;
+ return ctx.metrics.defaultRuleThickness + ctx.scalingFactor * phi / 4;
+}
+
+// src/atoms/genfrac.ts
+var GenfracAtom = class _GenfracAtom extends Atom {
+ constructor(above, below, options) {
+ var _a3, _b3;
+ super(__spreadProps(__spreadValues({}, options), {
+ type: "genfrac",
+ displayContainsHighlight: true
+ }));
+ this.above = above;
+ this.below = below;
+ this.hasBarLine = (_a3 = options == null ? void 0 : options.hasBarLine) != null ? _a3 : true;
+ this.continuousFraction = (_b3 = options == null ? void 0 : options.continuousFraction) != null ? _b3 : false;
+ this.numerPrefix = options == null ? void 0 : options.numerPrefix;
+ this.denomPrefix = options == null ? void 0 : options.denomPrefix;
+ this.mathstyleName = options == null ? void 0 : options.mathstyleName;
+ this.leftDelim = options == null ? void 0 : options.leftDelim;
+ this.rightDelim = options == null ? void 0 : options.rightDelim;
+ this.fractionNavigationOrder = options == null ? void 0 : options.fractionNavigationOrder;
+ }
+ static fromJson(json) {
+ return new _GenfracAtom(
+ json.above,
+ json.below,
+ json
+ );
+ }
+ toJson() {
+ const options = {};
+ if (this.continuousFraction)
+ options.continuousFraction = true;
+ if (this.numerPrefix)
+ options.numerPrefix = this.numerPrefix;
+ if (this.denomPrefix)
+ options.denomPrefix = this.denomPrefix;
+ if (this.leftDelim)
+ options.leftDelim = this.leftDelim;
+ if (this.rightDelim)
+ options.rightDelim = this.rightDelim;
+ if (!this.hasBarLine)
+ options.hasBarLine = false;
+ if (this.mathstyleName)
+ options.mathstyleName = this.mathstyleName;
+ if (this.fractionNavigationOrder)
+ options.fractionNavigationOrder = this.fractionNavigationOrder;
+ return __spreadValues(__spreadValues({}, super.toJson()), options);
+ }
+ // The order of the children, which is used for keyboard navigation order,
+ // may be customized for fractions...
+ get children() {
+ if (this._children)
+ return this._children;
+ const result = [];
+ if (this.fractionNavigationOrder === "denominator-numerator") {
+ for (const x of this.below) {
+ result.push(...x.children);
+ result.push(x);
+ }
+ for (const x of this.above) {
+ result.push(...x.children);
+ result.push(x);
+ }
+ } else {
+ for (const x of this.above) {
+ result.push(...x.children);
+ result.push(x);
+ }
+ for (const x of this.below) {
+ result.push(...x.children);
+ result.push(x);
+ }
+ }
+ this._children = result;
+ return result;
+ }
+ render(context) {
+ var _a3, _b3;
+ const fracContext = new Context(
+ { parent: context, mathstyle: this.mathstyleName },
+ this.style
+ );
+ const metrics = fracContext.metrics;
+ const numContext = new Context(
+ {
+ parent: fracContext,
+ mathstyle: this.continuousFraction ? "" : "numerator"
+ },
+ this.style
+ );
+ const numerBox = this.numerPrefix ? new Box(
+ [new Box(this.numerPrefix), Atom.createBox(numContext, this.above)],
+ { isTight: numContext.isTight, type: "ignore" }
+ ) : (_a3 = Atom.createBox(numContext, this.above, { type: "ignore" })) != null ? _a3 : new Box(null, { type: "ignore" });
+ const denomContext = new Context(
+ {
+ parent: fracContext,
+ mathstyle: this.continuousFraction ? "" : "denominator"
+ },
+ this.style
+ );
+ const denomBox = this.denomPrefix ? new Box([
+ new Box(this.denomPrefix),
+ Atom.createBox(denomContext, this.below, { type: "ignore" })
+ ]) : (_b3 = Atom.createBox(denomContext, this.below, { type: "ignore" })) != null ? _b3 : new Box(null, { type: "ignore" });
+ const ruleThickness = this.hasBarLine ? metrics.defaultRuleThickness : 0;
+ let numerShift;
+ let clearance = 0;
+ let denomShift;
+ if (fracContext.isDisplayStyle) {
+ numerShift = numContext.metrics.num1;
+ clearance = ruleThickness > 0 ? 3 * ruleThickness : 7 * ruleThickness;
+ denomShift = denomContext.metrics.denom1;
+ } else {
+ if (ruleThickness > 0) {
+ numerShift = numContext.metrics.num2;
+ clearance = ruleThickness;
+ } else {
+ numerShift = numContext.metrics.num3;
+ clearance = 3 * metrics.defaultRuleThickness;
+ }
+ denomShift = denomContext.metrics.denom2;
+ }
+ const classes = [];
+ if (this.isSelected)
+ classes.push("ML__selected");
+ const numerDepth = numerBox.depth;
+ const denomHeight = denomBox.height;
+ let frac;
+ if (ruleThickness <= 0) {
+ const candidateClearance = numerShift - numerDepth - (denomHeight - denomShift);
+ if (candidateClearance < clearance) {
+ numerShift += (clearance - candidateClearance) / 2;
+ denomShift += (clearance - candidateClearance) / 2;
+ }
+ frac = new VBox({
+ individualShift: [
+ {
+ box: numerBox,
+ shift: -numerShift,
+ classes: [...classes, "ML__center"]
+ },
+ {
+ box: denomBox,
+ shift: denomShift,
+ classes: [...classes, "ML__center"]
+ }
+ ]
+ }).wrap(fracContext);
+ } else {
+ const fracLine = new Box(null, {
+ classes: "ML__frac-line",
+ mode: this.mode,
+ style: this.style
+ });
+ fracLine.softWidth = Math.max(numerBox.width, denomBox.width);
+ fracLine.height = ruleThickness / 2;
+ fracLine.depth = ruleThickness / 2;
+ const numerLine = AXIS_HEIGHT + ruleThickness / 2;
+ if (numerShift < clearance + numerDepth + numerLine)
+ numerShift = clearance + numerDepth + numerLine;
+ const denomLine = AXIS_HEIGHT - ruleThickness / 2;
+ if (denomShift < clearance + denomHeight - denomLine)
+ denomShift = clearance + denomHeight - denomLine;
+ frac = new VBox({
+ individualShift: [
+ {
+ box: denomBox,
+ shift: denomShift,
+ classes: [...classes, "ML__center"]
+ },
+ { box: fracLine, shift: -denomLine, classes },
+ {
+ box: numerBox,
+ shift: -numerShift,
+ classes: [...classes, "ML__center"]
+ }
+ ]
+ }).wrap(fracContext);
+ }
+ const delimSize = fracContext.isDisplayStyle ? metrics.delim1 : metrics.delim2;
+ const leftDelim = this.leftDelim ? this.bind(
+ context,
+ makeCustomSizedDelim(
+ "open",
+ this.leftDelim,
+ delimSize,
+ true,
+ context,
+ { style: this.style, mode: this.mode, isSelected: this.isSelected }
+ )
+ ) : makeNullDelimiter(fracContext, "open");
+ let rightDelim = null;
+ if (this.continuousFraction) {
+ rightDelim = new Box(null, { type: "close" });
+ } else if (!this.rightDelim)
+ rightDelim = makeNullDelimiter(fracContext, "close");
+ else {
+ rightDelim = this.bind(
+ context,
+ makeCustomSizedDelim(
+ "close",
+ this.rightDelim,
+ delimSize,
+ true,
+ context,
+ { style: this.style, mode: this.mode, isSelected: this.isSelected }
+ )
+ );
+ }
+ const mfrac = new Box([leftDelim, frac, rightDelim], {
+ isTight: fracContext.isTight,
+ type: "inner",
+ classes: "mfrac"
+ });
+ const result = this.bind(context, mfrac);
+ if (this.caret)
+ result.caret = this.caret;
+ return this.attachSupsub(context, { base: result });
+ }
+};
+
+// src/atoms/latex.ts
+var LatexAtom = class _LatexAtom extends Atom {
+ // Display errors with wavy red line
+ constructor(value, options) {
+ var _a3;
+ super({ type: "latex", value, mode: "latex" });
+ this.isSuggestion = (_a3 = options == null ? void 0 : options.isSuggestion) != null ? _a3 : false;
+ this.isError = false;
+ }
+ static fromJson(json) {
+ const result = new _LatexAtom(json.value);
+ if (json.isSuggestion)
+ result.isSuggestion = true;
+ if (json.isError)
+ result.isError = true;
+ return result;
+ }
+ toJson() {
+ const options = {};
+ if (this.isSuggestion)
+ options.isSuggestion = true;
+ if (this.isError)
+ options.isError = true;
+ return __spreadValues({ type: "latex", value: this.value }, options);
+ }
+ get computedStyle() {
+ return {};
+ }
+ render(context) {
+ const result = new Box(this.value, {
+ classes: this.isSuggestion ? "ML__suggestion" : this.isError ? "ML__error" : "",
+ type: "latex",
+ maxFontSize: 1
+ });
+ if (!result)
+ return null;
+ if (this.caret)
+ result.caret = this.caret;
+ return this.bind(context, result);
+ }
+};
+var LatexGroupAtom = class _LatexGroupAtom extends Atom {
+ constructor(latex) {
+ super({ type: "latexgroup", mode: "latex" });
+ this.body = [...latex].map((x) => new LatexAtom(x));
+ this.skipBoundary = false;
+ }
+ static fromJson(_json) {
+ return new _LatexGroupAtom("");
+ }
+ toJson() {
+ return super.toJson();
+ }
+ render(context) {
+ const box = Atom.createBox(context, this.body);
+ if (!box)
+ return null;
+ if (this.caret)
+ box.caret = this.caret;
+ return this.bind(context, box);
+ }
+ _serialize(_options) {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this.body) == null ? void 0 : _a3.map((x) => x.value).join("")) != null ? _b3 : "";
+ }
+};
+
+// src/atoms/extensible-symbol.ts
+var ExtensibleSymbolAtom = class _ExtensibleSymbolAtom extends Atom {
+ constructor(symbol, options) {
+ super(__spreadProps(__spreadValues({}, options), {
+ type: "extensible-symbol",
+ isFunction: options == null ? void 0 : options.isFunction
+ }));
+ this.value = symbol;
+ this.variant = options == null ? void 0 : options.variant;
+ this.subsupPlacement = options == null ? void 0 : options.limits;
+ }
+ static fromJson(json) {
+ return new _ExtensibleSymbolAtom(json.symbol, json);
+ }
+ toJson() {
+ const result = super.toJson();
+ if (this.variant)
+ result.variant = this.variant;
+ if (this.subsupPlacement)
+ result.limits = this.subsupPlacement;
+ if (this.isExtensibleSymbol)
+ result.isExtensibleSymbol = true;
+ if (this.value)
+ result.symbol = this.value;
+ return result;
+ }
+ render(context) {
+ var _a3;
+ const large = context.isDisplayStyle && this.value !== "\\smallint";
+ const base = new Box(this.value, {
+ fontFamily: large ? "Size2-Regular" : "Size1-Regular",
+ classes: "op-symbol " + (large ? "large-op" : "small-op"),
+ type: "op",
+ maxFontSize: context.scalingFactor,
+ isSelected: this.isSelected
+ });
+ if (!base)
+ return null;
+ base.right = base.italic;
+ const baseShift = (base.height - base.depth) / 2 - AXIS_HEIGHT * context.scalingFactor;
+ const slant = base.italic;
+ base.setTop(baseShift);
+ let result = base;
+ if (this.superscript || this.subscript) {
+ const limits = (_a3 = this.subsupPlacement) != null ? _a3 : "auto";
+ result = limits === "over-under" || limits === "auto" && context.isDisplayStyle ? this.attachLimits(context, { base, baseShift, slant }) : this.attachSupsub(context, { base });
+ }
+ return new Box(this.bind(context, result), {
+ type: "op",
+ caret: this.caret,
+ isSelected: this.isSelected,
+ classes: "op-group"
+ }).wrap(context);
+ }
+ _serialize(options) {
+ if (!(options.expandMacro || options.skipStyles || options.skipPlaceholders) && typeof this.verbatimLatex === "string")
+ return this.verbatimLatex;
+ const def = getDefinition(this.command, this.mode);
+ if (def == null ? void 0 : def.serialize)
+ return def.serialize(this, options);
+ const result = [];
+ result.push(this.command);
+ if (this.explicitSubsupPlacement) {
+ if (this.subsupPlacement === "over-under")
+ result.push("\\limits");
+ if (this.subsupPlacement === "adjacent")
+ result.push("\\nolimits");
+ if (this.subsupPlacement === "auto")
+ result.push("\\displaylimits");
+ }
+ result.push(this.supsubToLatex(options));
+ return joinLatex(result);
+ }
+};
+
+// src/atoms/overlap.ts
+var OverlapAtom = class _OverlapAtom extends Atom {
+ constructor(options) {
+ const body = options.body;
+ super(__spreadProps(__spreadValues({}, options), {
+ type: "overlap",
+ body: typeof body === "string" ? [new Atom({ value: body })] : body,
+ style: options == null ? void 0 : options.style
+ }));
+ this.skipBoundary = true;
+ this.align = options == null ? void 0 : options.align;
+ this.boxType = options == null ? void 0 : options.boxType;
+ }
+ static fromJson(json) {
+ return new _OverlapAtom(json);
+ }
+ toJson() {
+ const options = {};
+ if (this.align)
+ options.align = this.align;
+ if (this.boxType)
+ options.boxType = this.boxType;
+ return __spreadValues(__spreadValues({}, super.toJson()), options);
+ }
+ render(context) {
+ const inner = Atom.createBox(context, this.body, { classes: "inner" });
+ if (!inner)
+ return null;
+ if (this.caret)
+ inner.caret = this.caret;
+ return this.bind(
+ context,
+ new Box([inner, new Box(null, { classes: "fix" })], {
+ classes: this.align === "right" ? "rlap" : "llap",
+ type: this.boxType
+ })
+ );
+ }
+};
+
+// src/atoms/overunder.ts
+var OverunderAtom = class _OverunderAtom extends Atom {
+ constructor(options) {
+ var _a3, _b3, _c2, _d2;
+ super({
+ type: "overunder",
+ command: options.command,
+ style: options.style,
+ mode: options.mode,
+ body: options.body,
+ skipBoundary: (_a3 = options.skipBoundary) != null ? _a3 : true
+ });
+ this.subsupPlacement = options.supsubPlacement;
+ this.svgAbove = options.svgAbove;
+ this.svgBelow = options.svgBelow;
+ this.svgBody = options.svgBody;
+ this.above = options.above;
+ this.below = options.below;
+ this.boxType = (_b3 = options.boxType) != null ? _b3 : "ord";
+ this.paddedBody = (_c2 = options.paddedBody) != null ? _c2 : false;
+ this.paddedLabels = (_d2 = options.paddedLabels) != null ? _d2 : false;
+ }
+ static fromJson(json) {
+ return new _OverunderAtom(json);
+ }
+ toJson() {
+ const json = super.toJson();
+ if (!this.skipBoundary)
+ json.skipBoundary = false;
+ if (this.subsupPlacement)
+ json.subsupPlacement = this.subsupPlacement;
+ if (this.svgAbove)
+ json.svgAbove = this.svgAbove;
+ if (this.svgBelow)
+ json.svgBelow = this.svgBelow;
+ if (this.svgBody)
+ json.svgBody = this.svgBody;
+ if (this.boxType !== "ord")
+ json.boxType = this.boxType;
+ if (this.paddedBody)
+ json.paddedBody = true;
+ if (this.paddedLabels)
+ json.paddedLabels = true;
+ return json;
+ }
+ /**
+ * Combine a base with an atom above and an atom below.
+ *
+ * See http://tug.ctan.org/macros/latex/required/amsmath/amsmath.dtx
+ *
+ * > \newcommand{\overset}[2]{\binrel@{#2}%
+ * > \binrel@@{\mathop{\kern\z@#2}\limits^{#1}}}
+ *
+ */
+ render(parentContext) {
+ let body = this.svgBody ? makeSVGBox(this.svgBody) : Atom.createBox(parentContext, this.body, { type: "ignore" });
+ const annotationContext = new Context(
+ { parent: parentContext, mathstyle: "scriptstyle" },
+ this.style
+ );
+ let above = null;
+ if (this.svgAbove)
+ above = makeSVGBox(this.svgAbove);
+ else if (this.above)
+ above = Atom.createBox(annotationContext, this.above, { type: "ignore" });
+ let below = null;
+ if (this.svgBelow)
+ below = makeSVGBox(this.svgBelow);
+ else if (this.below)
+ below = Atom.createBox(annotationContext, this.below, { type: "ignore" });
+ if (this.paddedBody) {
+ body = new Box(
+ [
+ makeNullDelimiter(parentContext, "open"),
+ body,
+ makeNullDelimiter(parentContext, "close")
+ ],
+ { type: "ignore" }
+ );
+ }
+ let base = makeOverunderStack(parentContext, {
+ base: body,
+ above,
+ below,
+ type: this.boxType === "bin" || this.boxType === "rel" ? this.boxType : "ord",
+ paddedAboveBelow: this.paddedLabels
+ });
+ if (!base)
+ return null;
+ if (this.subsupPlacement === "over-under")
+ base = this.attachLimits(parentContext, { base, type: base.type });
+ else
+ base = this.attachSupsub(parentContext, { base });
+ if (this.caret)
+ base.caret = this.caret;
+ return this.bind(parentContext, base);
+ }
+};
+function makeOverunderStack(context, options) {
+ if (!options.base)
+ return null;
+ if (!options.above && !options.below) {
+ const box = new Box(options.base, { type: options.type });
+ box.setStyle("position", "relative");
+ return box;
+ }
+ let aboveShift = 0;
+ if (options.above)
+ aboveShift = context.metrics.bigOpSpacing5;
+ let result = null;
+ const base = options.base;
+ const baseShift = 0;
+ const classes = ["ML__center"];
+ if (options.paddedAboveBelow)
+ classes.push("ML__label_padding");
+ if (options.below && options.above) {
+ const bottom = context.metrics.bigOpSpacing5 + options.below.height + options.below.depth + base.depth + baseShift;
+ result = new VBox({
+ bottom,
+ children: [
+ context.metrics.bigOpSpacing5,
+ { box: options.below, classes },
+ { box: base, classes: ["ML__center"] },
+ aboveShift,
+ { box: options.above, classes },
+ context.metrics.bigOpSpacing5
+ ]
+ });
+ } else if (options.below) {
+ result = new VBox({
+ top: base.height - baseShift,
+ children: [
+ context.metrics.bigOpSpacing5,
+ { box: options.below, classes },
+ { box: base, classes: ["ML__center"] }
+ ]
+ });
+ } else if (options.above) {
+ result = new VBox({
+ bottom: base.depth + baseShift,
+ children: [
+ // base.depth,
+ { box: base, classes: ["ML__center"] },
+ aboveShift,
+ { box: options.above, classes },
+ context.metrics.bigOpSpacing5
+ ]
+ });
+ }
+ return new Box(result, { type: options.type });
+}
+
+// src/atoms/phantom.ts
+var PhantomAtom = class _PhantomAtom extends Atom {
+ constructor(options) {
+ var _a3, _b3, _c2, _d2;
+ super(__spreadProps(__spreadValues({}, options), { type: "phantom" }));
+ this.captureSelection = true;
+ this.isInvisible = (_a3 = options.isInvisible) != null ? _a3 : false;
+ this.smashDepth = (_b3 = options.smashDepth) != null ? _b3 : false;
+ this.smashHeight = (_c2 = options.smashHeight) != null ? _c2 : false;
+ this.smashWidth = (_d2 = options.smashWidth) != null ? _d2 : false;
+ }
+ static fromJson(json) {
+ return new _PhantomAtom(json);
+ }
+ toJson() {
+ const options = {};
+ if (this.isInvisible)
+ options.isInvisible = true;
+ if (this.smashDepth)
+ options.smashDepth = true;
+ if (this.smashHeight)
+ options.smashHeight = true;
+ if (this.smashWidth)
+ options.smashWidth = true;
+ return __spreadValues(__spreadValues({}, super.toJson()), options);
+ }
+ render(context) {
+ const phantom = new Context({ parent: context, isPhantom: true });
+ if (!this.smashDepth && !this.smashHeight && !this.smashWidth) {
+ console.assert(this.isInvisible);
+ return Atom.createBox(phantom, this.body, { classes: "inner" });
+ }
+ const content = Atom.createBox(
+ this.isInvisible ? phantom : context,
+ this.body
+ );
+ if (!content)
+ return null;
+ if (this.smashWidth) {
+ const fix = new Box(null, { classes: "fix" });
+ return new Box([content, fix], { classes: "rlap" }).wrap(context);
+ }
+ if (!this.smashHeight && !this.smashDepth)
+ return content;
+ if (this.smashHeight)
+ content.height = 0;
+ if (this.smashDepth)
+ content.depth = 0;
+ if (content.children) {
+ for (const box of content.children) {
+ if (this.smashHeight)
+ box.height = 0;
+ if (this.smashDepth)
+ box.depth = 0;
+ }
+ }
+ return new VBox(
+ { firstBaseline: [{ box: content }] },
+ { type: content.type }
+ ).wrap(context);
+ }
+};
+
+// src/atoms/spacing.ts
+var SpacingAtom = class _SpacingAtom extends Atom {
+ constructor(options) {
+ var _a3;
+ super(__spreadValues({ type: "spacing" }, options));
+ this.width = options == null ? void 0 : options.width;
+ this._braced = (_a3 = options == null ? void 0 : options.braced) != null ? _a3 : false;
+ }
+ static fromJson(json) {
+ return new _SpacingAtom(json);
+ }
+ toJson() {
+ const json = super.toJson();
+ if (this.width !== void 0)
+ json.width = this.width;
+ if (this._braced)
+ json.braced = true;
+ return json;
+ }
+ render(context) {
+ var _a3;
+ if (this.command === "space")
+ return new Box(this.mode === "math" ? null : " ");
+ let result;
+ if (this.width !== void 0) {
+ result = new Box(null, { classes: "mspace" });
+ result.left = context.toEm(this.width);
+ } else {
+ const spacingCls = (_a3 = {
+ "\\qquad": "qquad",
+ "\\quad": "quad",
+ "\\enspace": "enspace",
+ "\\;": "thickspace",
+ "\\:": "mediumspace",
+ "\\>": "mediumspace",
+ "\\,": "thinspace",
+ "\\!": "negativethinspace"
+ }[this.command]) != null ? _a3 : "mediumspace";
+ result = new Box(null, { classes: spacingCls });
+ }
+ result = this.bind(context, result);
+ if (this.caret)
+ result.caret = this.caret;
+ return result;
+ }
+ _serialize(options) {
+ var _a3;
+ if (!options.expandMacro && typeof this.verbatimLatex === "string")
+ return this.verbatimLatex;
+ const def = getDefinition(this.command, this.mode);
+ if (def == null ? void 0 : def.serialize)
+ return def.serialize(this, options);
+ const command = (_a3 = this.command) != null ? _a3 : "";
+ if (this.width === void 0)
+ return command;
+ if (this._braced && !("register" in this.width))
+ return `${command}{${serializeLatexValue(this.width)}}`;
+ return `${command}${serializeLatexValue(this.width)}`;
+ }
+};
+
+// src/atoms/surd.ts
+var SurdAtom = class _SurdAtom extends Atom {
+ constructor(options) {
+ var _a3;
+ super(__spreadProps(__spreadValues({}, options), {
+ type: "surd",
+ mode: (_a3 = options.mode) != null ? _a3 : "math",
+ style: options.style,
+ displayContainsHighlight: true,
+ body: options.body
+ }));
+ this.above = options.index;
+ }
+ static fromJson(json) {
+ return new _SurdAtom(__spreadProps(__spreadValues({}, json), {
+ index: json.above
+ }));
+ }
+ _serialize(options) {
+ if (!(options.expandMacro || options.skipStyles || options.skipPlaceholders) && typeof this.verbatimLatex === "string")
+ return this.verbatimLatex;
+ const def = getDefinition(this.command, this.mode);
+ if (def == null ? void 0 : def.serialize)
+ return def.serialize(this, options);
+ const command = this.command;
+ const body = this.bodyToLatex(options);
+ if (this.above && !this.hasEmptyBranch("above"))
+ return latexCommand(`${command}[${this.aboveToLatex(options)}]`, body);
+ if (/^[0-9]$/.test(body))
+ return `${command}${body}`;
+ return latexCommand(command, body);
+ }
+ // Custom implementation so that the navigation of the index feels natural
+ get children() {
+ if (this._children)
+ return this._children;
+ const result = [];
+ if (this.above) {
+ for (const x of this.above) {
+ result.push(...x.children);
+ result.push(x);
+ }
+ }
+ if (this.body) {
+ for (const x of this.body) {
+ result.push(...x.children);
+ result.push(x);
+ }
+ }
+ this._children = result;
+ return result;
+ }
+ render(context) {
+ var _a3;
+ const innerContext = new Context(
+ { parent: context, mathstyle: "cramp" },
+ this.style
+ );
+ const innerBox = (_a3 = Atom.createBox(innerContext, this.body, { type: "inner" })) != null ? _a3 : new Box(null);
+ const factor = innerContext.scalingFactor;
+ const ruleWidth = innerContext.metrics.defaultRuleThickness / factor;
+ const phi = context.isDisplayStyle ? X_HEIGHT : ruleWidth;
+ const line = new Box(null, { classes: "ML__sqrt-line", style: this.style });
+ line.height = ruleWidth;
+ line.softWidth = innerBox.width;
+ let lineClearance = factor * (ruleWidth + phi / 4);
+ const innerTotalHeight = Math.max(
+ factor * 2 * phi,
+ innerBox.height + innerBox.depth
+ );
+ const minDelimiterHeight = innerTotalHeight + lineClearance + ruleWidth;
+ const delimContext = new Context({ parent: context }, this.style);
+ const delimBox = this.bind(
+ delimContext,
+ new Box(
+ makeCustomSizedDelim(
+ "inner",
+ // @todo not sure if that's the right type
+ "\\surd",
+ minDelimiterHeight,
+ false,
+ delimContext,
+ { isSelected: this.isSelected }
+ ),
+ {
+ isSelected: this.isSelected,
+ classes: "ML__sqrt-sign",
+ style: this.style
+ }
+ )
+ );
+ if (!delimBox)
+ return null;
+ const delimDepth = delimBox.height + delimBox.depth - ruleWidth;
+ if (delimDepth > innerBox.height + innerBox.depth + lineClearance) {
+ lineClearance = (lineClearance + delimDepth - (innerBox.height + innerBox.depth)) / 2;
+ }
+ delimBox.setTop(delimBox.height - innerBox.height - lineClearance);
+ const bodyBox = this.bind(
+ context,
+ new VBox({
+ firstBaseline: [
+ { box: new Box(innerBox) },
+ // Need to wrap the inner for proper selection bound calculation
+ lineClearance - 2 * ruleWidth,
+ { box: line },
+ ruleWidth
+ ]
+ })
+ );
+ const indexBox = Atom.createBox(
+ new Context({ parent: context, mathstyle: "scriptscriptstyle" }),
+ this.above,
+ { type: "ignore" }
+ );
+ if (!indexBox) {
+ const result2 = new Box([delimBox, bodyBox], {
+ classes: this.containsCaret ? "ML__contains-caret" : "",
+ type: "inner"
+ });
+ result2.setStyle("display", "inline-block");
+ result2.setStyle("height", result2.height + result2.depth, "em");
+ if (this.caret)
+ result2.caret = this.caret;
+ return this.bind(context, result2);
+ }
+ const indexStack = new VBox({
+ shift: -0.6 * (Math.max(delimBox.height, bodyBox.height) - Math.max(delimBox.depth, bodyBox.depth)),
+ children: [{ box: indexBox }]
+ });
+ const result = new Box(
+ [
+ new Box(indexStack, { classes: "ML__sqrt-index", type: "ignore" }),
+ delimBox,
+ bodyBox
+ ],
+ {
+ type: "inner",
+ classes: this.containsCaret ? "ML__contains-caret" : ""
+ }
+ );
+ result.height = delimBox.height;
+ result.depth = delimBox.depth;
+ if (this.caret)
+ result.caret = this.caret;
+ return this.bind(context, result);
+ }
+};
+
+// src/core/skip-box.ts
+var SkipBox = class extends Box {
+ constructor(width) {
+ super(null, { type: "skip" });
+ this._width = width;
+ }
+ toMarkup() {
+ return ``;
+ }
+};
+function addSkipBefore(box, width) {
+ if (!box.parent)
+ return;
+ const siblings = box.parent.children;
+ const i = siblings.indexOf(box);
+ let j = i - 1;
+ while (j >= 0) {
+ if (siblings[j].type === "ignore")
+ j -= 1;
+ else
+ break;
+ }
+ if (j < 0 && box.parent.parent && box.parent.type === "lift") {
+ addSkipBefore(box.parent, width);
+ return;
+ }
+ if (i > 0 && siblings[i - 1].type === "skip")
+ siblings[i - 1].width += width;
+ else
+ siblings.splice(i, 0, new SkipBox(width));
+}
+
+// src/core/inter-box-spacing.ts
+var INTER_BOX_SPACING = {
+ ord: { op: 3, bin: 4, rel: 5, inner: 3 },
+ op: { ord: 3, op: 3, rel: 5, inner: 3 },
+ bin: { ord: 4, op: 4, open: 4, inner: 4 },
+ rel: { ord: 5, op: 5, open: 5, inner: 5 },
+ close: { op: 3, bin: 4, rel: 5, inner: 3 },
+ punct: { ord: 3, op: 3, rel: 3, open: 3, punct: 3, inner: 3 },
+ inner: { ord: 3, op: 3, bin: 4, rel: 5, open: 3, punct: 3, inner: 3 }
+};
+var INTER_BOX_TIGHT_SPACING = {
+ ord: { op: 3 },
+ op: { ord: 3, op: 3 },
+ close: { op: 3 },
+ inner: { op: 3 }
+};
+function adjustType(boxes) {
+ traverseBoxes(boxes, (prev, cur) => {
+ if (cur.type === "bin" && (!prev || /^(middle|bin|op|rel|open|punct)$/.test(prev.type)))
+ cur.type = "ord";
+ if ((prev == null ? void 0 : prev.type) === "bin" && /^(rel|close|punct)$/.test(cur.type))
+ prev.type = "ord";
+ if (cur.type !== "ignore")
+ prev = cur;
+ });
+}
+function applyInterBoxSpacing(root, context) {
+ if (!root.children)
+ return root;
+ const boxes = root.children;
+ adjustType(boxes);
+ const thin = context.getRegisterAsEm("thinmuskip");
+ const med = context.getRegisterAsEm("medmuskip");
+ const thick = context.getRegisterAsEm("thickmuskip");
+ traverseBoxes(boxes, (prev, cur) => {
+ var _a3, _b3, _c2;
+ if (!prev)
+ return;
+ const prevType = prev.type;
+ const table = cur.isTight ? (_a3 = INTER_BOX_TIGHT_SPACING[prevType]) != null ? _a3 : null : (_b3 = INTER_BOX_SPACING[prevType]) != null ? _b3 : null;
+ const hskip = (_c2 = table == null ? void 0 : table[cur.type]) != null ? _c2 : null;
+ if (hskip === 3)
+ addSkipBefore(cur, thin);
+ if (hskip === 4)
+ addSkipBefore(cur, med);
+ if (hskip === 5)
+ addSkipBefore(cur, thick);
+ });
+ return root;
+}
+function traverseBoxes(boxes, f, prev = void 0) {
+ if (!boxes)
+ return prev;
+ boxes = [...boxes];
+ for (const cur of boxes) {
+ if (cur.type === "lift")
+ prev = traverseBoxes(cur.children, f, prev);
+ else if (cur.type === "ignore")
+ traverseBoxes(cur.children, f);
+ else {
+ f(prev, cur);
+ traverseBoxes(cur.children, f);
+ prev = cur;
+ }
+ }
+ return prev;
+}
+
+// src/atoms/tooltip.ts
+var TooltipAtom = class _TooltipAtom extends Atom {
+ constructor(options) {
+ super({
+ type: "tooltip",
+ command: options.command,
+ mode: options.mode,
+ style: options.style,
+ body: options.body,
+ displayContainsHighlight: true
+ });
+ this.tooltip = new Atom({
+ type: "root",
+ mode: options.content,
+ body: options.tooltip,
+ style: {}
+ });
+ this.skipBoundary = true;
+ this.captureSelection = false;
+ }
+ static fromJson(json) {
+ return new _TooltipAtom(__spreadProps(__spreadValues({}, json), {
+ tooltip: fromJson(json.tooltip)
+ }));
+ }
+ toJson() {
+ var _a3;
+ const tooltip = (_a3 = this.tooltip.body) == null ? void 0 : _a3.filter((x) => x.type !== "first").map((x) => x.toJson());
+ return __spreadProps(__spreadValues({}, super.toJson()), { tooltip });
+ }
+ render(context) {
+ const body = Atom.createBox(new Context(), this.body);
+ if (!body)
+ return null;
+ const tooltipContext = new Context(
+ { parent: context, mathstyle: "displaystyle" },
+ { fontSize: DEFAULT_FONT_SIZE }
+ );
+ const tooltip = coalesce(
+ applyInterBoxSpacing(
+ new Box(this.tooltip.render(tooltipContext), {
+ classes: "ML__tooltip-content"
+ }),
+ tooltipContext
+ )
+ );
+ const box = new Box([tooltip, body], { classes: "ML__tooltip-container" });
+ if (this.caret)
+ box.caret = this.caret;
+ return this.bind(context, box);
+ }
+};
+
+// src/atoms/operator.ts
+var OperatorAtom = class _OperatorAtom extends Atom {
+ constructor(symbol, options) {
+ super(__spreadProps(__spreadValues({}, options), {
+ type: "operator",
+ isFunction: options == null ? void 0 : options.isFunction
+ }));
+ this.value = symbol;
+ this.variant = options == null ? void 0 : options.variant;
+ this.variantStyle = options == null ? void 0 : options.variantStyle;
+ this.subsupPlacement = options == null ? void 0 : options.limits;
+ }
+ static fromJson(json) {
+ return new _OperatorAtom(json.symbol, json);
+ }
+ toJson() {
+ const result = super.toJson();
+ if (this.variant)
+ result.variant = this.variant;
+ if (this.variantStyle)
+ result.variantStyle = this.variantStyle;
+ if (this.subsupPlacement)
+ result.limits = this.subsupPlacement;
+ if (this.value)
+ result.symbol = this.value;
+ return result;
+ }
+ render(context) {
+ var _a3;
+ const base = new Box(this.value, {
+ type: "op",
+ mode: "math",
+ maxFontSize: context.scalingFactor,
+ style: {
+ variant: this.variant,
+ variantStyle: this.variantStyle
+ },
+ isSelected: this.isSelected,
+ letterShapeStyle: context.letterShapeStyle
+ });
+ let result = base;
+ if (this.superscript || this.subscript) {
+ const limits = (_a3 = this.subsupPlacement) != null ? _a3 : "auto";
+ result = limits === "over-under" || limits === "auto" && context.isDisplayStyle ? this.attachLimits(context, { base }) : this.attachSupsub(context, { base });
+ }
+ return new Box(this.bind(context, result), {
+ type: "op",
+ caret: this.caret,
+ isSelected: this.isSelected,
+ classes: "op-group"
+ }).wrap(context);
+ }
+ _serialize(options) {
+ if (!(options.expandMacro || options.skipStyles || options.skipPlaceholders) && typeof this.verbatimLatex === "string")
+ return this.verbatimLatex;
+ const def = getDefinition(this.command, this.mode);
+ if (def == null ? void 0 : def.serialize)
+ return def.serialize(this, options);
+ const result = [this.command];
+ if (this.explicitSubsupPlacement) {
+ if (this.subsupPlacement === "over-under")
+ result.push("\\limits");
+ if (this.subsupPlacement === "adjacent")
+ result.push("\\nolimits");
+ if (this.subsupPlacement === "auto")
+ result.push("\\displaylimits");
+ }
+ result.push(this.supsubToLatex(options));
+ return joinLatex(result);
+ }
+};
+
+// src/core/atom.ts
+function fromJson(json) {
+ if (isArray(json))
+ return json.map((x) => fromJson(x));
+ if (typeof json === "string")
+ return Atom.fromJson(json);
+ json = __spreadValues({}, json);
+ for (const branch of NAMED_BRANCHES)
+ if (json[branch])
+ json[branch] = fromJson(json[branch]);
+ if (json.args)
+ json.args = argumentsFromJson(json.args);
+ if (json.array)
+ json.array = fromJson(json.array);
+ const type = json.type;
+ let result = void 0;
+ if (type === "accent")
+ result = AccentAtom.fromJson(json);
+ if (type === "array")
+ result = ArrayAtom.fromJson(json);
+ if (type === "box")
+ result = BoxAtom.fromJson(json);
+ if (type === "chem")
+ result = ChemAtom.fromJson(json);
+ if (type === "composition")
+ result = CompositionAtom.fromJson(json);
+ if (type === "delim")
+ result = MiddleDelimAtom.fromJson(json);
+ if (type === "enclose")
+ result = EncloseAtom.fromJson(json);
+ if (type === "error")
+ result = ErrorAtom.fromJson(json);
+ if (type === "extensible-symbol")
+ result = ExtensibleSymbolAtom.fromJson(json);
+ if (type === "genfrac")
+ result = GenfracAtom.fromJson(json);
+ if (type === "group")
+ result = GroupAtom.fromJson(json);
+ if (type === "latex")
+ result = LatexAtom.fromJson(json);
+ if (type === "latexgroup")
+ result = LatexGroupAtom.fromJson(json);
+ if (type === "leftright")
+ result = LeftRightAtom.fromJson(json);
+ if (type === "macro")
+ result = MacroAtom.fromJson(json);
+ if (type === "macro-argument")
+ result = MacroArgumentAtom.fromJson(json);
+ if (type === "operator")
+ result = OperatorAtom.fromJson(json);
+ if (type === "overlap")
+ result = OverlapAtom.fromJson(json);
+ if (type === "overunder")
+ result = OverunderAtom.fromJson(json);
+ if (type === "placeholder")
+ result = PlaceholderAtom.fromJson(json);
+ if (type === "prompt")
+ result = PromptAtom.fromJson(json);
+ if (type === "phantom")
+ result = PhantomAtom.fromJson(json);
+ if (type === "sizeddelim")
+ result = SizedDelimAtom.fromJson(json);
+ if (type === "spacing")
+ result = SpacingAtom.fromJson(json);
+ if (type === "subsup")
+ result = SubsupAtom.fromJson(json);
+ if (type === "surd")
+ result = SurdAtom.fromJson(json);
+ if (type === "text")
+ result = TextAtom.fromJson(json);
+ if (type === "tooltip")
+ result = TooltipAtom.fromJson(json);
+ if (!result) {
+ console.assert(
+ !type || [
+ "first",
+ "mbin",
+ "mrel",
+ "mclose",
+ "minner",
+ "mop",
+ "mopen",
+ "mord",
+ "mpunct",
+ "root",
+ "space"
+ ].includes(type),
+ `MathLive 0.98.5: an unexpected atom type "${type}" was encountered. Add new atom constructors to \`fromJson()\` in "atom.ts"`
+ );
+ result = Atom.fromJson(json);
+ }
+ for (const branch of NAMED_BRANCHES)
+ if (json[branch])
+ result.setChildren(json[branch], branch);
+ if (json.verbatimLatex !== void 0)
+ result.verbatimLatex = json.verbatimLatex;
+ if (json.subsupPlacement)
+ result.subsupPlacement = json.subsupPlacement;
+ if (json.explicitSubsupPlacement)
+ result.explicitSubsupPlacement = true;
+ if (json.isFunction)
+ result.isFunction = true;
+ if (json.isExtensibleSymbol)
+ result.isExtensibleSymbol = true;
+ if (json.skipBoundary)
+ result.skipBoundary = true;
+ if (json.captureSelection)
+ result.captureSelection = true;
+ return result;
+}
+function argumentsFromJson(json) {
+ if (!json)
+ return void 0;
+ if (!Array.isArray(json))
+ return void 0;
+ return json.map((arg) => {
+ if (arg === "")
+ return null;
+ if (typeof arg === "object" && "group" in arg)
+ return { group: arg.group.map((x) => fromJson(x)) };
+ if (typeof arg === "object" && "atoms" in arg)
+ return arg.atoms.map((x) => fromJson(x));
+ return arg;
+ });
+}
+
+// src/core/modes-math.ts
+var VARIANTS = {
+ // Handle some special characters which are only available in "main" font (not "math")
+ "main": ["Main-Regular", "ML__cmr"],
+ "main-italic": ["Main-Italic", "ML__cmr ML__it"],
+ "main-bold": ["Main-Bold", "ML__cmr ML__bold"],
+ "main-bolditalic": ["Main-BoldItalic", "ML__cmr ML__bold ML__it"],
+ "normal": ["Main-Regular", "ML__cmr"],
+ // 'main' font. There is no 'math' regular (upright)
+ "normal-bold": ["Main-Bold", "ML__mathbf"],
+ // 'main' font. There is no 'math' bold
+ "normal-italic": ["Math-Italic", "ML__mathit"],
+ // Special metrics for 'math'
+ "normal-bolditalic": ["Math-BoldItalic", "ML__mathbfit"],
+ // Special metrics for 'math'
+ // Extended math symbols, arrows, etc.. at their standard Unicode codepoints
+ "ams": ["AMS-Regular", "ML__ams"],
+ "ams-bold": ["AMS-Regular", "ML__ams"],
+ "ams-italic": ["AMS-Regular", "ML__ams"],
+ "ams-bolditalic": ["AMS-Regular", "ML__ams"],
+ "sans-serif": ["SansSerif-Regular", "ML__sans"],
+ "sans-serif-bold": ["SansSerif-Regular", "ML__sans ML__bold"],
+ "sans-serif-italic": ["SansSerif-Regular", "ML__sans"],
+ "sans-serif-bolditalic": ["SansSerif-Regular", "ML__sans"],
+ "calligraphic": ["Caligraphic-Regular", "ML__cal"],
+ "calligraphic-bold": ["Caligraphic-Regular", "ML__cal ML__bold"],
+ "calligraphic-italic": ["Caligraphic-Regular", "ML__cal ML__it"],
+ "calligraphic-bolditalic": ["Caligraphic-Regular", "ML__cal ML__bold ML__it"],
+ "script": ["Script-Regular", "ML__script"],
+ "script-bold": ["Script-Regular", "ML__script ML__bold"],
+ "script-italic": ["Script-Regular", "ML__script ML__it"],
+ "script-bolditalic": ["Script-Regular", "ML__script ML__bold ML__it"],
+ "fraktur": ["Fraktur-Regular", "ML__frak"],
+ "fraktur-bold": ["Fraktur-Regular", "ML__frak"],
+ "fraktur-italic": ["Fraktur-Regular", "ML__frak"],
+ "fraktur-bolditalic": ["Fraktur-Regular", "ML__frak"],
+ "monospace": ["Typewriter-Regular", "ML__tt"],
+ "monospace-bold": ["Typewriter-Regular", "ML__tt ML__bold"],
+ "monospace-italic": ["Typewriter-Regular", "ML__tt ML__it"],
+ "monospace-bolditalic": ["Typewriter-Regular", "ML__tt ML__bold ML__it"],
+ // Blackboard characters are 'A-Z' in the AMS font
+ "double-struck": ["AMS-Regular", "ML__bb"],
+ "double-struck-bold": ["AMS-Regular", "ML__bb"],
+ "double-struck-italic": ["AMS-Regular", "ML__bb"],
+ "double-struck-bolditalic": ["AMS-Regular", "ML__bb"]
+};
+var VARIANT_REPERTOIRE = {
+ "double-struck": /^[A-Z ]$/,
+ "script": /^[A-Z ]$/,
+ "calligraphic": /^[\dA-Z ]$/,
+ "fraktur": /^[\dA-Za-z ]$|^[!"#$%&'()*+,\-./:;=?[]^’‘]$/,
+ "monospace": /^[\dA-Za-z ]$|^[!"&'()*+,\-./:;=?@[\]^_~\u0131\u0237\u0393\u0394\u0398\u039B\u039E\u03A0\u03A3\u03A5\u03A8\u03A9]$/,
+ "sans-serif": /^[\dA-Za-z ]$|^[!"&'()*+,\-./:;=?@[\]^_~\u0131\u0237\u0393\u0394\u0398\u039B\u039E\u03A0\u03A3\u03A5\u03A8\u03A9]$/
+};
+var GREEK_LOWERCASE = /^[\u03B1-\u03C9]|\u03D1|\u03D5|\u03D6|\u03F1|\u03F5]$/;
+var GREEK_UPPERCASE = /^[\u0393|\u0394\u0398\u039B\u039E\u03A0\u03A3\u03A5\u03A6\u03A8\u03A9]$/;
+var LETTER_SHAPE_RANGES = [
+ /^[a-z]$/,
+ // Lowercase latin
+ /^[A-Z]$/,
+ // Uppercase latin
+ GREEK_LOWERCASE,
+ GREEK_UPPERCASE
+];
+var LETTER_SHAPE_MODIFIER = {
+ iso: ["it", "it", "it", "it"],
+ tex: ["it", "it", "it", "up"],
+ french: ["it", "up", "up", "up"],
+ upright: ["up", "up", "up", "up"]
+};
+var MathMode = class extends Mode {
+ constructor() {
+ super("math");
+ }
+ createAtom(command, info, style) {
+ var _a3, _b3, _c2, _d2;
+ if (info === null) {
+ return new Atom({
+ type: "mord",
+ mode: "math",
+ command,
+ value: command,
+ style
+ });
+ }
+ const isFunction = window.MathfieldElement.isFunction(
+ (_a3 = info.command) != null ? _a3 : command
+ );
+ if (info.definitionType === "symbol") {
+ const result2 = new Atom({
+ type: (_b3 = info.type) != null ? _b3 : "mord",
+ mode: "math",
+ command: (_c2 = info.command) != null ? _c2 : command,
+ value: String.fromCodePoint(info.codepoint),
+ style
+ });
+ if (isFunction)
+ result2.isFunction = true;
+ if (command.startsWith("\\"))
+ result2.verbatimLatex = command;
+ return result2;
+ }
+ const result = new Atom({
+ type: "mord",
+ mode: "math",
+ command: (_d2 = info.command) != null ? _d2 : command,
+ value: command,
+ style
+ });
+ if (isFunction)
+ result.isFunction = true;
+ if (command.startsWith("\\"))
+ result.verbatimLatex = command;
+ return result;
+ }
+ serialize(run, options) {
+ const result = emitVariantRun(run, __spreadProps(__spreadValues({}, options), { defaultMode: "math" }));
+ if (result.length === 0 || options.defaultMode !== "text")
+ return result;
+ return ["$ ", ...result, " $"];
+ }
+ getFont(box, style) {
+ console.assert(style.variant !== void 0);
+ let { variant } = style;
+ let { variantStyle } = style;
+ if (variant === "normal" && !variantStyle && /[\u00A3\u0131\u0237]/.test(box.value)) {
+ variant = "main";
+ variantStyle = "italic";
+ }
+ if (variant === "normal" && !variantStyle && box.value.length === 1) {
+ LETTER_SHAPE_RANGES.forEach((x, i) => {
+ var _a3;
+ if (x.test(box.value) && LETTER_SHAPE_MODIFIER[(_a3 = style.letterShapeStyle) != null ? _a3 : "tex"][i] === "it")
+ variantStyle = "italic";
+ });
+ }
+ if (variantStyle === "up")
+ variantStyle = void 0;
+ const styledVariant = variantStyle ? variant + "-" + variantStyle : variant;
+ console.assert(VARIANTS[styledVariant] !== void 0);
+ const [fontName, classes] = VARIANTS[styledVariant];
+ if (VARIANT_REPERTOIRE[variant] && !VARIANT_REPERTOIRE[variant].test(box.value)) {
+ box.value = mathVariantToUnicode(box.value, variant, variantStyle);
+ return null;
+ }
+ if (GREEK_LOWERCASE.test(box.value))
+ box.classes += " lcGreek";
+ if (classes)
+ box.classes += " " + classes;
+ return fontName;
+ }
+};
+function emitVariantRun(run, options) {
+ const { parent } = run[0];
+ const contextVariant = variantString(parent);
+ return getPropertyRuns(run, "variant").map((x) => {
+ const variant = variantString(x[0]);
+ let command = "";
+ if (variant && variant !== contextVariant) {
+ command = {
+ "calligraphic": "\\mathcal",
+ "fraktur": "\\mathfrak",
+ "double-struck": "\\mathbb",
+ "script": "\\mathscr",
+ "monospace": "\\mathtt",
+ "sans-serif": "\\mathsf",
+ "normal": "\\mathrm",
+ "normal-italic": "\\mathnormal",
+ "normal-bold": "\\mathbf",
+ "normal-bolditalic": "\\mathbfit",
+ "ams": "",
+ "ams-italic": "\\mathit",
+ "ams-bold": "\\mathbf",
+ "ams-bolditalic": "\\mathbfit",
+ "main": "",
+ "main-italic": "\\mathit",
+ "main-bold": "\\mathbf",
+ "main-bolditalic": "\\mathbfit"
+ // There are a few rare font families possible, which
+ // are not supported:
+ // mathbbm, mathbbmss, mathbbmtt, mathds, swab, goth
+ // In addition, the 'main' and 'math' font technically
+ // map to \mathnormal{}
+ }[variant];
+ console.assert(command !== void 0);
+ }
+ const arg = joinLatex(x.map((x2) => x2._serialize(options)));
+ return !command ? arg : latexCommand(command, arg);
+ });
+}
+function variantString(atom) {
+ if (!atom)
+ return "";
+ const { style } = atom;
+ if (style.variant === void 0)
+ return "";
+ let result = style.variant;
+ if (![
+ "calligraphic",
+ "fraktur",
+ "double-struck",
+ "script",
+ "monospace",
+ "sans-serif"
+ ].includes(style.variant) && style.variantStyle && style.variantStyle !== "up")
+ result += "-" + style.variantStyle;
+ return result;
+}
+new MathMode();
+
+// src/core/modes-text.ts
+function emitStringTextRun(run, options) {
+ return run.map((x) => x._serialize(options));
+}
+function emitFontShapeTextRun(run, options) {
+ return getPropertyRuns(run, "fontShape").map((x) => {
+ const s = emitStringTextRun(x, options);
+ const { fontShape } = x[0].style;
+ let command = "";
+ if (fontShape === "it")
+ command = "\\textit";
+ if (fontShape === "sl")
+ command = "\\textsl";
+ if (fontShape === "sc")
+ command = "\\textsc";
+ if (fontShape === "n")
+ command = "\\textup";
+ if (!command && fontShape)
+ return `{${latexCommand("\\fontshape", fontShape)}${joinLatex(s)}}`;
+ return command ? latexCommand(command, joinLatex(s)) : joinLatex(s);
+ });
+}
+function emitFontSeriesTextRun(run, options) {
+ return getPropertyRuns(run, "fontSeries").map((x) => {
+ const s = emitFontShapeTextRun(x, options);
+ const { fontSeries } = x[0].style;
+ let command = "";
+ if (fontSeries === "b")
+ command = "\\textbf";
+ if (fontSeries === "l")
+ command = "\\textlf";
+ if (fontSeries === "m")
+ command = "\\textmd";
+ if (fontSeries && !command)
+ return `{${latexCommand("\\fontseries", fontSeries)}${joinLatex(s)}}`;
+ return command ? latexCommand(command, joinLatex(s)) : joinLatex(s);
+ });
+}
+function emitSizeTextRun(run, options) {
+ return getPropertyRuns(run, "fontSize").map((x) => {
+ var _a3, _b3;
+ const s = emitFontSeriesTextRun(x, options);
+ const command = (_b3 = [
+ "",
+ "\\tiny",
+ "\\scriptsize",
+ "\\footnotesize",
+ "\\small",
+ "\\normalsize",
+ "\\large",
+ "\\Large",
+ "\\LARGE",
+ "\\huge",
+ "\\Huge"
+ ][(_a3 = x[0].style.fontSize) != null ? _a3 : ""]) != null ? _b3 : "";
+ return command ? `${command} ${joinLatex(s)}` : joinLatex(s);
+ });
+}
+function emitFontFamilyTextRun(run, options, needsWrap) {
+ return getPropertyRuns(run, "fontFamily").map((x) => {
+ var _a3, _b3;
+ const s = emitSizeTextRun(x, options);
+ const command = (_b3 = {
+ "roman": "textrm",
+ "monospace": "texttt",
+ "sans-serif": "textsf"
+ }[(_a3 = x[0].style.fontFamily) != null ? _a3 : ""]) != null ? _b3 : "";
+ if (command)
+ return `\\${command}{${joinLatex(s)}}`;
+ if (x[0].style.fontFamily)
+ return `{\\fontfamily{${x[0].style.fontFamily}} ${joinLatex(s)}}`;
+ if (needsWrap)
+ return `\\text{${joinLatex(s)}}`;
+ return joinLatex(s);
+ });
+}
+var TEXT_FONT_CLASS = {
+ "roman": "",
+ "sans-serif": "ML__sans",
+ "monospace": "ML__tt"
+};
+var TextMode = class extends Mode {
+ constructor() {
+ super("text");
+ }
+ createAtom(command, info, style) {
+ if (!info)
+ return null;
+ if (info.definitionType === "symbol") {
+ return new TextAtom(
+ command,
+ String.fromCodePoint(info.codepoint),
+ style != null ? style : {}
+ );
+ }
+ return null;
+ }
+ serialize(run, options) {
+ return emitFontFamilyTextRun(
+ run,
+ __spreadProps(__spreadValues({}, options), {
+ defaultMode: "text"
+ }),
+ options.defaultMode !== "text"
+ );
+ }
+ /**
+ * Return the font-family name
+ */
+ getFont(box, style) {
+ var _a3, _b3, _c2, _d2, _e;
+ const { fontFamily } = style;
+ if (TEXT_FONT_CLASS[fontFamily])
+ box.classes += " " + TEXT_FONT_CLASS[fontFamily];
+ else if (fontFamily) {
+ box.setStyle("font-family", fontFamily);
+ }
+ if (style.fontShape) {
+ box.classes += " ";
+ box.classes += (_a3 = {
+ it: "ML__it",
+ sl: "ML__shape_sl",
+ // Slanted
+ sc: "ML__shape_sc",
+ // Small caps
+ ol: "ML__shape_ol"
+ // Outline
+ }[style.fontShape]) != null ? _a3 : "";
+ }
+ if (style.fontSeries) {
+ const m = style.fontSeries.match(/(.?[lbm])?(.?[cx])?/);
+ if (m) {
+ box.classes += " ";
+ box.classes += (_c2 = {
+ ul: "ML__series_ul",
+ el: "ML__series_el",
+ l: "ML__series_l",
+ sl: "ML__series_sl",
+ m: "",
+ // Medium (default)
+ sb: "ML__series_sb",
+ b: "ML__bold",
+ eb: "ML__series_eb",
+ ub: "ML__series_ub"
+ }[(_b3 = m[1]) != null ? _b3 : ""]) != null ? _c2 : "";
+ box.classes += " ";
+ box.classes += (_e = {
+ uc: "ML__series_uc",
+ ec: "ML__series_ec",
+ c: "ML__series_c",
+ sc: "ML__series_sc",
+ n: "",
+ // Normal (default)
+ sx: "ML__series_sx",
+ x: "ML__series_x",
+ ex: "ML__series_ex",
+ ux: "ML__series_ux"
+ }[(_d2 = m[2]) != null ? _d2 : ""]) != null ? _e : "";
+ }
+ }
+ return "Main-Regular";
+ }
+};
+new TextMode();
+
+// src/core/modes-latex.ts
+var LatexMode = class extends Mode {
+ constructor() {
+ super("latex");
+ }
+ createAtom(command) {
+ return new LatexAtom(command);
+ }
+ serialize(run, _options) {
+ return run.filter((x) => x instanceof LatexAtom && !x.isSuggestion).map((x) => x.value);
+ }
+ getFont() {
+ return null;
+ }
+};
+new LatexMode();
+
+// src/editor/keyboard-layouts/dvorak.ts
+var DVORAK = {
+ id: "dvorak",
+ locale: "en",
+ displayName: "Dvorak",
+ virtualLayout: "dvorak",
+ platform: "",
+ score: 0,
+ mapping: {
+ KeyA: ["a", "A", "\xE5", "\xC5"],
+ KeyB: ["x", "X", "\u2248", "\u02DB"],
+ KeyC: ["j", "J", "\u2206", "\xD4"],
+ KeyD: ["e", "E", "\xB4", "\xB4"],
+ KeyE: [".", ">", "\u2265", "\u02D8"],
+ KeyF: ["u", "U", "\xA8", "\xA8"],
+ KeyG: ["i", "I", "\u02C6", "\u02C6"],
+ KeyH: ["d", "D", "\u2202", "\xCE"],
+ KeyI: ["c", "C", "\xE7", "\xC7"],
+ KeyJ: ["h", "H", "\u02D9", "\xD3"],
+ KeyK: ["t", "T", "\u2020", "\u02C7"],
+ KeyL: ["n", "N", "\u02DC", "\u02DC"],
+ KeyM: ["m", "M", "\xB5", "\xC2"],
+ KeyN: ["b", "B", "\u222B", "\u0131"],
+ KeyO: ["r", "R", "\xAE", "\u2030"],
+ KeyP: ["l", "L", "\xAC", "\xD2"],
+ KeyQ: ["'", '"', "\xE6", "\xC6"],
+ KeyR: ["p", "P", "\u03C0", "\u220F"],
+ KeyS: ["o", "O", "\xF8", "\xD8"],
+ KeyT: ["y", "Y", "\xA5", "\xC1"],
+ KeyU: ["g", "G", "\xA9", "\u02DD"],
+ KeyV: ["k", "K", "\u02DA", "\uF8FF"],
+ KeyW: [",", "<", "\u2264", "\xAF"],
+ KeyX: ["q", "Q", "\u0153", "\u0152"],
+ KeyY: ["f", "F", "\u0192", "\xCF"],
+ KeyZ: [";", ":", "\u2026", "\xDA"],
+ Digit1: ["1", "!", "\xA1", "\u2044"],
+ Digit2: ["2", "@", "\u2122", "\u20AC"],
+ Digit3: ["3", "#", "\xA3", "\u2039"],
+ Digit4: ["4", "$", "\xA2", "\u203A"],
+ Digit5: ["5", "%", "\u221E", "\uFB01"],
+ Digit6: ["6", "^", "\xA7", "\uFB02"],
+ Digit7: ["7", "&", "\xB6", "\u2021"],
+ Digit8: ["8", "*", "\u2022", "\xB0"],
+ Digit9: ["9", "(", "\xAA", "\xB7"],
+ Digit0: ["0", ")", "\xBA", "\u201A"],
+ Space: [" ", " ", " ", " "],
+ Minus: ["[", "{", "\u201C", "\u201D"],
+ Equal: ["]", "}", "\u2018", "\u2019"],
+ BracketLeft: ["/", "?", "\xF7", "\xBF"],
+ BracketRight: ["=", "+", "\u2260", "\xB1"],
+ Backslash: ["\\", "|", "\xAB", "\xBB"],
+ Semicolon: ["s", "S", "\xDF", "\xCD"],
+ Quote: ["-", "_", "\u2013", "\u2014"],
+ Backquote: ["`", "~", "`", "`"],
+ Comma: ["w", "W", "\u2211", "\u201E"],
+ Period: ["v", "V", "\u221A", "\u25CA"],
+ Slash: ["z", "Z", "\u03A9", "\xB8"],
+ NumpadDivide: ["/", "/", "/", "/"],
+ NumpadMultiply: ["*", "*", "*", "*"],
+ NumpadSubtract: ["-", "-", "-", "-"],
+ NumpadAdd: ["+", "+", "+", "+"],
+ Numpad1: ["1", "1", "1", "1"],
+ Numpad2: ["2", "2", "2", "2"],
+ Numpad3: ["3", "3", "3", "3"],
+ Numpad4: ["4", "4", "4", "4"],
+ Numpad5: ["5", "5", "5", "5"],
+ Numpad6: ["6", "6", "6", "6"],
+ Numpad7: ["7", "7", "7", "7"],
+ Numpad8: ["8", "8", "8", "8"],
+ Numpad9: ["9", "9", "9", "9"],
+ Numpad0: ["0", "0", "0", "0"],
+ NumpadDecimal: [".", ".", ".", "."],
+ IntlBackslash: ["\xA7", "\xB1", "\xA7", "\xB1"],
+ NumpadEqual: ["=", "=", "=", "="],
+ AudioVolumeUp: ["", "=", "", "="]
+ }
+};
+
+// src/editor/keyboard-layouts/english.ts
+var APPLE_ENGLISH = {
+ id: "apple.en-intl",
+ displayName: "English (international)",
+ virtualLayout: "qwerty",
+ platform: "apple",
+ locale: "en",
+ score: 0,
+ mapping: {
+ KeyA: ["a", "A", "\xE5", "\xC5"],
+ KeyB: ["b", "B", "\u222B", "\u0131"],
+ KeyC: ["c", "C", "\xE7", "\xC7"],
+ KeyD: ["d", "D", "\u2202", "\xCE"],
+ KeyE: ["e", "E", "\xB4", "\xB4"],
+ KeyF: ["f", "F", "\u0192", "\xCF"],
+ KeyG: ["g", "G", "\xA9", "\u02DD"],
+ KeyH: ["h", "H", "\u02D9", "\xD3"],
+ KeyI: ["i", "I", "\u02C6", "\u02C6"],
+ KeyJ: ["j", "J", "\u2206", "\xD4"],
+ KeyK: ["k", "K", "\u02DA", "\uF8FF"],
+ KeyL: ["l", "L", "\xAC", "\xD2"],
+ KeyM: ["m", "M", "\xB5", "\xC2"],
+ KeyN: ["n", "N", "\u02DC", "\u02DC"],
+ KeyO: ["o", "O", "\xF8", "\xD8"],
+ KeyP: ["p", "P", "\u03C0", "\u220F"],
+ KeyQ: ["q", "Q", "\u0153", "\u0152"],
+ KeyR: ["r", "R", "\xAE", "\u2030"],
+ KeyS: ["s", "S", "\xDF", "\xCD"],
+ KeyT: ["t", "T", "\u2020", "\u02C7"],
+ KeyU: ["u", "U", "\xA8", "\xA8"],
+ KeyV: ["v", "V", "\u221A", "\u25CA"],
+ KeyW: ["w", "W", "\u2211", "\u201E"],
+ KeyX: ["x", "X", "\u2248", "\u02DB"],
+ KeyY: ["y", "Y", "\xA5", "\xC1"],
+ KeyZ: ["z", "Z", "\u03A9", "\xB8"],
+ Digit1: ["1", "!", "\xA1", "\u2044"],
+ Digit2: ["2", "@", "\u2122", "\u20AC"],
+ Digit3: ["3", "#", "\xA3", "\u2039"],
+ Digit4: ["4", "$", "\xA2", "\u203A"],
+ Digit5: ["5", "%", "\u221E", "\uFB01"],
+ Digit6: ["6", "^", "\xA7", "\uFB02"],
+ Digit7: ["7", "&", "\xB6", "\u2021"],
+ Digit8: ["8", "*", "\u2022", "\xB0"],
+ Digit9: ["9", "(", "\xAA", "\xB7"],
+ Digit0: ["0", ")", "\xBA", "\u201A"],
+ Space: [" ", " ", " ", " "],
+ Minus: ["-", "_", "\u2013", "\u2014"],
+ Equal: ["=", "+", "\u2260", "\xB1"],
+ BracketLeft: ["[", "{", "\u201C", "\u201D"],
+ BracketRight: ["]", "}", "\u2018", "\u2019"],
+ Backslash: ["\\", "|", "\xAB", "\xBB"],
+ Semicolon: [";", ":", "\u2026", "\xDA"],
+ Quote: ["'", '"', "\xE6", "\xC6"],
+ Backquote: ["`", "\u02DC", "`", "`"],
+ Comma: [",", "<", "\u2264", "\xAF"],
+ Period: [".", ">", "\u2265", "\u02D8"],
+ Slash: ["/", "?", "\xF7", "\xBF"],
+ NumpadDivide: ["/", "/", "/", "/"],
+ NumpadMultiply: ["*", "*", "*", "*"],
+ NumpadSubtract: ["-", "-", "-", "-"],
+ NumpadAdd: ["+", "+", "+", "+"],
+ Numpad1: ["1", "1", "1", "1"],
+ Numpad2: ["2", "2", "2", "2"],
+ Numpad3: ["3", "3", "3", "3"],
+ Numpad4: ["4", "4", "4", "4"],
+ Numpad5: ["5", "5", "5", "5"],
+ Numpad6: ["6", "6", "6", "6"],
+ Numpad7: ["7", "7", "7", "7"],
+ Numpad8: ["8", "8", "8", "8"],
+ Numpad9: ["9", "9", "9", "9"],
+ Numpad0: ["0", "0", "0", "0"],
+ NumpadDecimal: [".", ".", ".", "."],
+ IntlBackslash: ["\xA7", "\xB1", "\xA7", "\xB1"],
+ NumpadEqual: ["=", "=", "=", "="],
+ AudioVolumeUp: ["", "=", "", "="]
+ }
+};
+var WINDOWS_ENGLISH = {
+ id: "windows.en-intl",
+ displayName: "English (international)",
+ platform: "windows",
+ virtualLayout: "qwerty",
+ locale: "en",
+ score: 0,
+ mapping: {
+ KeyA: ["a", "A", "\xE1", "\xC1"],
+ KeyB: ["b", "B", "", ""],
+ KeyC: ["c", "C", "\xA9", "\xA2"],
+ KeyD: ["d", "D", "\xF0", "\xD0"],
+ KeyE: ["e", "E", "\xE9", "\xC9"],
+ KeyF: ["f", "F", "", ""],
+ KeyG: ["g", "G", "", ""],
+ KeyH: ["h", "H", "", ""],
+ KeyI: ["i", "I", "\xED", "\xCD"],
+ KeyJ: ["j", "J", "", ""],
+ KeyK: ["k", "K", "", ""],
+ KeyL: ["l", "L", "\xF8", "\xD8"],
+ KeyM: ["m", "M", "\xB5", ""],
+ KeyN: ["n", "N", "\xF1", "\xD1"],
+ KeyO: ["o", "O", "\xF3", "\xD3"],
+ KeyP: ["p", "P", "\xF6", "\xD6"],
+ KeyQ: ["q", "Q", "\xE4", "\xC4"],
+ KeyR: ["r", "R", "\xAE", ""],
+ KeyS: ["s", "S", "\xDF", "\xA7"],
+ KeyT: ["t", "T", "\xFE", "\xDE"],
+ KeyU: ["u", "U", "\xFA", "\xDA"],
+ KeyV: ["v", "V", "", ""],
+ KeyW: ["w", "W", "\xE5", "\xC5"],
+ KeyX: ["x", "X", "", ""],
+ KeyY: ["y", "Y", "\xFC", "\xDC"],
+ KeyZ: ["z", "Z", "\xE6", "\xC6"],
+ Digit1: ["1", "!", "\xA1", "\xB9"],
+ Digit2: ["2", "@", "\xB2", ""],
+ Digit3: ["3", "#", "\xB3", ""],
+ Digit4: ["4", "$", "\xA4", "\xA3"],
+ Digit5: ["5", "%", "\u20AC", ""],
+ Digit6: ["6", "^", "\xBC", ""],
+ Digit7: ["7", "&", "\xBD", ""],
+ Digit8: ["8", "*", "\xBE", ""],
+ Digit9: ["9", "(", "\u2018", ""],
+ Digit0: ["0", ")", "\u2019", ""],
+ Space: [" ", " ", "", ""],
+ Minus: ["-", "_", "\xA5", ""],
+ Equal: ["=", "+", "\xD7", "\xF7"],
+ BracketLeft: ["[", "{", "\xAB", ""],
+ BracketRight: ["]", "}", "\xBB", ""],
+ Backslash: ["\\", "|", "\xAC", "\xA6"],
+ Semicolon: [";", ":", "\xB6", "\xB0"],
+ Quote: ["'", '"', "\xB4", "\xA8"],
+ Backquote: ["`", "~", "", ""],
+ Comma: [",", "<", "\xE7", "\xC7"],
+ Period: [".", ">", "", ""],
+ Slash: ["/", "?", "\xBF", ""],
+ NumpadDivide: ["/", "/", "", ""],
+ NumpadMultiply: ["*", "*", "", ""],
+ NumpadSubtract: ["-", "-", "", ""],
+ NumpadAdd: ["+", "+", "", ""],
+ IntlBackslash: ["\\", "|", "", ""]
+ }
+};
+var LINUX_ENGLISH = {
+ id: "linux.en",
+ displayName: "English",
+ platform: "linux",
+ virtualLayout: "qwerty",
+ locale: "en",
+ score: 0,
+ mapping: {
+ KeyA: ["a", "A", "a", "A"],
+ KeyB: ["b", "B", "b", "B"],
+ KeyC: ["c", "C", "c", "C"],
+ KeyD: ["d", "D", "d", "D"],
+ KeyE: ["e", "E", "e", "E"],
+ KeyF: ["f", "F", "f", "F"],
+ KeyG: ["g", "G", "g", "G"],
+ KeyH: ["h", "H", "h", "H"],
+ KeyI: ["i", "I", "i", "I"],
+ KeyJ: ["j", "J", "j", "J"],
+ KeyK: ["k", "K", "k", "K"],
+ KeyL: ["l", "L", "l", "L"],
+ KeyM: ["m", "M", "m", "M"],
+ KeyN: ["n", "N", "n", "N"],
+ KeyO: ["o", "O", "o", "O"],
+ KeyP: ["p", "P", "p", "P"],
+ KeyQ: ["q", "Q", "q", "Q"],
+ KeyR: ["r", "R", "r", "R"],
+ KeyS: ["s", "S", "s", "S"],
+ KeyT: ["t", "T", "t", "T"],
+ KeyU: ["u", "U", "u", "U"],
+ KeyV: ["v", "V", "v", "V"],
+ KeyW: ["w", "W", "w", "W"],
+ KeyX: ["x", "X", "x", "X"],
+ KeyY: ["y", "Y", "y", "Y"],
+ KeyZ: ["z", "Z", "z", "Z"],
+ Digit1: ["1", "!", "1", "!"],
+ Digit2: ["2", "@", "2", "@"],
+ Digit3: ["3", "#", "3", "#"],
+ Digit4: ["4", "$", "4", "$"],
+ Digit5: ["5", "%", "5", "%"],
+ Digit6: ["6", "^", "6", "^"],
+ Digit7: ["7", "&", "7", "&"],
+ Digit8: ["8", "*", "8", "*"],
+ Digit9: ["9", "(", "9", "("],
+ Digit0: ["0", ")", "0", ")"],
+ Space: [" ", " ", " ", " "],
+ Minus: ["-", "_", "-", "_"],
+ Equal: ["=", "+", "=", "+"],
+ BracketLeft: ["[", "{", "[", "{"],
+ BracketRight: ["]", "}", "]", "}"],
+ Backslash: ["\\", "|", "\\", "|"],
+ Semicolon: [";", ":", ";", ":"],
+ Quote: ["'", '"', "'", '"'],
+ Backquote: ["`", "~", "`", "~"],
+ Comma: [",", "<", ",", "<"],
+ Period: [".", ">", ".", ">"],
+ Slash: ["/", "?", "/", "?"],
+ NumpadDivide: ["/", "/", "/", "/"],
+ NumpadMultiply: ["*", "*", "*", "*"],
+ NumpadSubtract: ["-", "-", "-", "-"],
+ NumpadAdd: ["+", "+", "+", "+"],
+ Numpad1: ["1", "1", "1", "1"],
+ Numpad2: ["2", "2", "2", "2"],
+ Numpad3: ["3", "3", "3", "3"],
+ Numpad4: ["4", "4", "4", "4"],
+ Numpad5: ["5", "5", "5", "5"],
+ Numpad6: ["6", "6", "6", "6"],
+ Numpad7: ["7", "7", "7", "7"],
+ Numpad8: ["8", "8", "8", "8"],
+ Numpad9: ["9", "9", "9", "9"],
+ Numpad0: ["0", "0", "0", "0"],
+ NumpadDecimal: ["", ".", "", "."],
+ IntlBackslash: ["<", ">", "|", "\xA6"],
+ NumpadEqual: ["=", "=", "=", "="],
+ NumpadComma: [".", ".", ".", "."],
+ NumpadParenLeft: ["(", "(", "(", "("],
+ NumpadParenRight: [")", ")", ")", ")"]
+ }
+};
+
+// src/editor/keyboard-layouts/french.ts
+var APPLE_FRENCH = {
+ id: "apple.french",
+ locale: "fr",
+ displayName: "French",
+ platform: "apple",
+ virtualLayout: "azerty",
+ score: 0,
+ mapping: {
+ KeyA: ["q", "Q", "\u2021", "\u03A9"],
+ KeyB: ["b", "B", "\xDF", "\u222B"],
+ KeyC: ["c", "C", "\xA9", "\xA2"],
+ KeyD: ["d", "D", "\u2202", "\u2206"],
+ KeyE: ["e", "E", "\xEA", "\xCA"],
+ KeyF: ["f", "F", "\u0192", "\xB7"],
+ KeyG: ["g", "G", "\uFB01", "\uFB02"],
+ KeyH: ["h", "H", "\xCC", "\xCE"],
+ KeyI: ["i", "I", "\xEE", "\xEF"],
+ KeyJ: ["j", "J", "\xCF", "\xCD"],
+ KeyK: ["k", "K", "\xC8", "\xCB"],
+ KeyL: ["l", "L", "\xAC", "|"],
+ KeyM: [",", "?", "\u221E", "\xBF"],
+ KeyN: ["n", "N", "~", "\u0131"],
+ KeyO: ["o", "O", "\u0153", "\u0152"],
+ KeyP: ["p", "P", "\u03C0", "\u220F"],
+ KeyQ: ["a", "A", "\xE6", "\xC6"],
+ KeyR: ["r", "R", "\xAE", "\u201A"],
+ KeyS: ["s", "S", "\xD2", "\u2211"],
+ KeyT: ["t", "T", "\u2020", "\u2122"],
+ KeyU: ["u", "U", "\xBA", "\xAA"],
+ KeyV: ["v", "V", "\u25CA", "\u221A"],
+ KeyW: ["z", "Z", "\xC2", "\xC5"],
+ KeyX: ["x", "X", "\u2248", "\u2044"],
+ KeyY: ["y", "Y", "\xDA", "\u0178"],
+ KeyZ: ["w", "W", "\u2039", "\u203A"],
+ Digit1: ["&", "1", "\uF8FF", "\xB4"],
+ Digit2: ["\xE9", "2", "\xEB", "\u201E"],
+ Digit3: ['"', "3", "\u201C", "\u201D"],
+ Digit4: ["'", "4", "\u2018", "\u2019"],
+ Digit5: ["(", "5", "{", "["],
+ Digit6: ["\xA7", "6", "\xB6", "\xE5"],
+ Digit7: ["\xE8", "7", "\xAB", "\xBB"],
+ Digit8: ["!", "8", "\xA1", "\xDB"],
+ Digit9: ["\xE7", "9", "\xC7", "\xC1"],
+ Digit0: ["\xE0", "0", "\xF8", "\xD8"],
+ Space: [" ", " ", " ", " "],
+ Minus: [")", "\xB0", "}", "]"],
+ Equal: ["-", "_", "\u2014", "\u2013"],
+ BracketLeft: ["^", "\xA8", "\xF4", "\xD4"],
+ BracketRight: ["$", "*", "\u20AC", "\xA5"],
+ Backslash: ["`", "\xA3", "@", "#"],
+ Semicolon: ["m", "M", "\xB5", "\xD3"],
+ Quote: ["\xF9", "%", "\xD9", "\u2030"],
+ Backquote: ["<", ">", "\u2264", "\u2265"],
+ Comma: [";", ".", "\u2026", "\u2022"],
+ Period: [":", "/", "\xF7", "\\"],
+ Slash: ["=", "+", "\u2260", "\xB1"],
+ NumpadDivide: ["/", "/", "/", "/"],
+ NumpadMultiply: ["*", "*", "*", "*"],
+ NumpadSubtract: ["-", "-", "-", "-"],
+ NumpadAdd: ["+", "+", "+", "+"],
+ NumpadDecimal: [",", ".", ",", "."],
+ IntlBackslash: ["@", "#", "\u2022", "\u0178"],
+ NumpadEqual: ["=", "=", "=", "="]
+ }
+};
+var WINDOWS_FRENCH = {
+ id: "windows.french",
+ locale: "fr",
+ displayName: "French",
+ virtualLayout: "azerty",
+ platform: "windows",
+ score: 0,
+ mapping: {
+ KeyA: ["q", "Q", "", ""],
+ KeyB: ["b", "B", "", ""],
+ KeyC: ["c", "C", "", ""],
+ KeyD: ["d", "D", "", ""],
+ KeyE: ["e", "E", "\u20AC", ""],
+ KeyF: ["f", "F", "", ""],
+ KeyG: ["g", "G", "", ""],
+ KeyH: ["h", "H", "", ""],
+ KeyI: ["i", "I", "", ""],
+ KeyJ: ["j", "J", "", ""],
+ KeyK: ["k", "K", "", ""],
+ KeyL: ["l", "L", "", ""],
+ KeyM: [",", "?", "", ""],
+ KeyN: ["n", "N", "", ""],
+ KeyO: ["o", "O", "", ""],
+ KeyP: ["p", "P", "", ""],
+ KeyQ: ["a", "A", "", ""],
+ KeyR: ["r", "R", "", ""],
+ KeyS: ["s", "S", "", ""],
+ KeyT: ["t", "T", "", ""],
+ KeyU: ["u", "U", "", ""],
+ KeyV: ["v", "V", "", ""],
+ KeyW: ["z", "Z", "", ""],
+ KeyX: ["x", "X", "", ""],
+ KeyY: ["y", "Y", "", ""],
+ KeyZ: ["w", "W", "", ""],
+ Digit1: ["&", "1", "", ""],
+ Digit2: ["\xE9", "2", "~", ""],
+ Digit3: ['"', "3", "#", ""],
+ Digit4: ["'", "4", "{", ""],
+ Digit5: ["(", "5", "[", ""],
+ Digit6: ["-", "6", "|", ""],
+ Digit7: ["\xE8", "7", "`", ""],
+ Digit8: ["_", "8", "\\", ""],
+ Digit9: ["\xE7", "9", "^", ""],
+ Digit0: ["\xE0", "0", "@", ""],
+ Space: [" ", " ", "", ""],
+ Minus: [")", "\xB0", "]", ""],
+ Equal: ["=", "+", "}", ""],
+ BracketLeft: ["^", "\xA8", "", ""],
+ BracketRight: ["$", "\xA3", "\xA4", ""],
+ Backslash: ["*", "\xB5", "", ""],
+ Semicolon: ["m", "M", "", ""],
+ Quote: ["\xF9", "%", "", ""],
+ Backquote: ["\xB2", "", "", ""],
+ Comma: [";", ".", "", ""],
+ Period: [":", "/", "", ""],
+ Slash: ["!", "\xA7", "", ""],
+ NumpadDivide: ["/", "/", "", ""],
+ NumpadMultiply: ["*", "*", "", ""],
+ NumpadSubtract: ["-", "-", "", ""],
+ NumpadAdd: ["+", "+", "", ""],
+ IntlBackslash: ["<", ">", "", ""]
+ }
+};
+var LINUX_FRENCH = {
+ id: "linux.french",
+ locale: "fr",
+ displayName: "French",
+ virtualLayout: "azerty",
+ platform: "linux",
+ score: 0,
+ mapping: {
+ KeyA: ["q", "Q", "@", "\u03A9"],
+ KeyB: ["b", "B", "\u201D", "\u2019"],
+ KeyC: ["c", "C", "\xA2", "\xA9"],
+ KeyD: ["d", "D", "\xF0", "\xD0"],
+ KeyE: ["e", "E", "\u20AC", "\xA2"],
+ KeyF: ["f", "F", "\u0111", "\xAA"],
+ KeyG: ["g", "G", "\u014B", "\u014A"],
+ KeyH: ["h", "H", "\u0127", "\u0126"],
+ KeyI: ["i", "I", "\u2192", "\u0131"],
+ KeyJ: ["j", "J", "\u0309", "\u031B"],
+ KeyK: ["k", "K", "\u0138", "&"],
+ KeyL: ["l", "L", "\u0142", "\u0141"],
+ KeyM: [",", "?", "\u0301", "\u030B"],
+ KeyN: ["n", "N", "n", "N"],
+ KeyO: ["o", "O", "\xF8", "\xD8"],
+ KeyP: ["p", "P", "\xFE", "\xDE"],
+ KeyQ: ["a", "A", "\xE6", "\xC6"],
+ KeyR: ["r", "R", "\xB6", "\xAE"],
+ KeyS: ["s", "S", "\xDF", "\xA7"],
+ KeyT: ["t", "T", "\u0167", "\u0166"],
+ KeyU: ["u", "U", "\u2193", "\u2191"],
+ KeyV: ["v", "V", "\u201C", "\u2018"],
+ KeyW: ["z", "Z", "\xAB", "<"],
+ KeyX: ["x", "X", "\xBB", ">"],
+ KeyY: ["y", "Y", "\u2190", "\xA5"],
+ KeyZ: ["w", "W", "\u0142", "\u0141"],
+ Digit1: ["&", "1", "\xB9", "\xA1"],
+ Digit2: ["\xE9", "2", "~", "\u215B"],
+ Digit3: ['"', "3", "#", "\xA3"],
+ Digit4: ["'", "4", "{", "$"],
+ Digit5: ["(", "5", "[", "\u215C"],
+ Digit6: ["-", "6", "|", "\u215D"],
+ Digit7: ["\xE8", "7", "`", "\u215E"],
+ Digit8: ["_", "8", "\\", "\u2122"],
+ Digit9: ["\xE7", "9", "^", "\xB1"],
+ Digit0: ["\xE0", "0", "@", "\xB0"],
+ Enter: ["\r", "\r", "\r", "\r"],
+ Escape: ["\x1B", "\x1B", "\x1B", "\x1B"],
+ Backspace: ["\b", "\b", "\b", "\b"],
+ Tab: [" ", "", " ", ""],
+ Space: [" ", " ", " ", " "],
+ Minus: [")", "\xB0", "]", "\xBF"],
+ Equal: ["=", "+", "}", "\u0328"],
+ BracketLeft: ["\u0302", "\u0308", "\u0308", "\u030A"],
+ BracketRight: ["$", "\xA3", "\xA4", "\u0304"],
+ Backslash: ["*", "\xB5", "\u0300", "\u0306"],
+ Semicolon: ["m", "M", "\xB5", "\xBA"],
+ Quote: ["\xF9", "%", "\u0302", "\u030C"],
+ Backquote: ["\xB2", "~", "\xAC", "\xAC"],
+ Comma: [";", ".", "\u2500", "\xD7"],
+ Period: [":", "/", "\xB7", "\xF7"],
+ Slash: ["!", "\xA7", "\u0323", "\u0307"],
+ NumpadMultiply: ["*", "*", "*", "*"],
+ NumpadSubtract: ["-", "-", "-", "-"],
+ NumpadAdd: ["+", "+", "+", "+"],
+ NumpadDecimal: ["", ".", "", "."],
+ IntlBackslash: ["<", ">", "|", "\xA6"]
+ }
+};
+
+// src/editor/keyboard-layouts/german.ts
+var APPLE_GERMAN = {
+ id: "apple.german",
+ locale: "de",
+ displayName: "German",
+ virtualLayout: "qwertz",
+ platform: "apple",
+ score: 0,
+ mapping: {
+ KeyA: ["a", "A", "\xE5", "\xC5"],
+ KeyB: ["b", "B", "\u222B", "\u2039"],
+ KeyC: ["c", "C", "\xE7", "\xC7"],
+ KeyD: ["d", "D", "\u2202", "\u2122"],
+ KeyE: ["e", "E", "\u20AC", "\u2030"],
+ KeyF: ["f", "F", "\u0192", "\xCF"],
+ KeyG: ["g", "G", "\xA9", "\xCC"],
+ KeyH: ["h", "H", "\xAA", "\xD3"],
+ KeyI: ["i", "I", "\u2044", "\xDB"],
+ KeyJ: ["j", "J", "\xBA", "\u0131"],
+ KeyK: ["k", "K", "\u2206", "\u02C6"],
+ KeyL: ["l", "L", "@", "\uFB02"],
+ KeyM: ["m", "M", "\xB5", "\u02D8"],
+ KeyN: ["n", "N", "~", "\u203A"],
+ KeyO: ["o", "O", "\xF8", "\xD8"],
+ KeyP: ["p", "P", "\u03C0", "\u220F"],
+ KeyQ: ["q", "Q", "\xAB", "\xBB"],
+ KeyR: ["r", "R", "\xAE", "\xB8"],
+ KeyS: ["s", "S", "\u201A", "\xCD"],
+ KeyT: ["t", "T", "\u2020", "\u02DD"],
+ KeyU: ["u", "U", "\xA8", "\xC1"],
+ KeyV: ["v", "V", "\u221A", "\u25CA"],
+ KeyW: ["w", "W", "\u2211", "\u201E"],
+ KeyX: ["x", "X", "\u2248", "\xD9"],
+ KeyY: ["z", "Z", "\u03A9", "\u02C7"],
+ KeyZ: ["y", "Y", "\xA5", "\u2021"],
+ Digit1: ["1", "!", "\xA1", "\xAC"],
+ Digit2: ["2", '"', "\u201C", "\u201D"],
+ Digit3: ["3", "\xA7", "\xB6", "#"],
+ Digit4: ["4", "$", "\xA2", "\xA3"],
+ Digit5: ["5", "%", "[", "\uFB01"],
+ Digit6: ["6", "&", "]", "^"],
+ Digit7: ["7", "/", "|", "\\"],
+ Digit8: ["8", "(", "{", "\u02DC"],
+ Digit9: ["9", ")", "}", "\xB7"],
+ Digit0: ["0", "=", "\u2260", "\xAF"],
+ Space: [" ", " ", " ", " "],
+ Minus: ["\xDF", "?", "\xBF", "\u02D9"],
+ Equal: ["\xB4", "`", "'", "\u02DA"],
+ BracketLeft: ["\xFC", "\xDC", "\u2022", "\xB0"],
+ BracketRight: ["+", "*", "\xB1", "\uF8FF"],
+ Backslash: ["#", "'", "\u2018", "\u2019"],
+ Semicolon: ["\xF6", "\xD6", "\u0153", "\u0152"],
+ Quote: ["\xE4", "\xC4", "\xE6", "\xC6"],
+ Backquote: ["<", ">", "\u2264", "\u2265"],
+ Comma: [",", ";", "\u221E", "\u02DB"],
+ Period: [".", ":", "\u2026", "\xF7"],
+ Slash: ["-", "_", "\u2013", "\u2014"],
+ NumpadDivide: ["/", "/", "/", "/"],
+ NumpadMultiply: ["*", "*", "*", "*"],
+ NumpadSubtract: ["-", "-", "-", "-"],
+ NumpadAdd: ["+", "+", "+", "+"],
+ NumpadDecimal: [",", ",", ".", "."],
+ IntlBackslash: ["^", "\xB0", "\u201E", "\u201C"],
+ NumpadEqual: ["=", "=", "=", "="]
+ }
+};
+var WINDOWS_GERMAN = {
+ id: "windows.german",
+ locale: "de",
+ displayName: "German",
+ platform: "windows",
+ virtualLayout: "qwertz",
+ score: 0,
+ mapping: {
+ KeyA: ["a", "A", "", ""],
+ KeyB: ["b", "B", "", ""],
+ KeyC: ["c", "C", "", ""],
+ KeyD: ["d", "D", "", ""],
+ KeyE: ["e", "E", "\u20AC", ""],
+ KeyF: ["f", "F", "", ""],
+ KeyG: ["g", "G", "", ""],
+ KeyH: ["h", "H", "", ""],
+ KeyI: ["i", "I", "", ""],
+ KeyJ: ["j", "J", "", ""],
+ KeyK: ["k", "K", "", ""],
+ KeyL: ["l", "L", "", ""],
+ KeyM: ["m", "M", "\xB5", ""],
+ KeyN: ["n", "N", "", ""],
+ KeyO: ["o", "O", "", ""],
+ KeyP: ["p", "P", "", ""],
+ KeyQ: ["q", "Q", "@", ""],
+ KeyR: ["r", "R", "", ""],
+ KeyS: ["s", "S", "", ""],
+ KeyT: ["t", "T", "", ""],
+ KeyU: ["u", "U", "", ""],
+ KeyV: ["v", "V", "", ""],
+ KeyW: ["w", "W", "", ""],
+ KeyX: ["x", "X", "", ""],
+ KeyY: ["z", "Z", "", ""],
+ KeyZ: ["y", "Y", "", ""],
+ Digit1: ["1", "!", "", ""],
+ Digit2: ["2", '"', "\xB2", ""],
+ Digit3: ["3", "\xA7", "\xB3", ""],
+ Digit4: ["4", "$", "", ""],
+ Digit5: ["5", "%", "", ""],
+ Digit6: ["6", "&", "", ""],
+ Digit7: ["7", "/", "{", ""],
+ Digit8: ["8", "(", "[", ""],
+ Digit9: ["9", ")", "]", ""],
+ Digit0: ["0", "=", "}", ""],
+ Space: [" ", " ", "", ""],
+ Minus: ["\xDF", "?", "\\", "\u1E9E"],
+ Equal: ["\xB4", "`", "", ""],
+ BracketLeft: ["\xFC", "\xDC", "", ""],
+ BracketRight: ["+", "*", "~", ""],
+ Backslash: ["#", "'", "", ""],
+ Semicolon: ["\xF6", "\xD6", "", ""],
+ Quote: ["\xE4", "\xC4", "", ""],
+ Backquote: ["^", "\xB0", "", ""],
+ Comma: [",", ";", "", ""],
+ Period: [".", ":", "", ""],
+ Slash: ["-", "_", "", ""],
+ NumpadDivide: ["/", "/", "", ""],
+ NumpadMultiply: ["*", "*", "", ""],
+ NumpadSubtract: ["-", "-", "", ""],
+ NumpadAdd: ["+", "+", "", ""],
+ IntlBackslash: ["<", ">", "|", ""]
+ }
+};
+var LINUX_GERMAN = {
+ id: "linux.german",
+ locale: "de",
+ displayName: "German",
+ platform: "windows",
+ virtualLayout: "qwertz",
+ score: 0,
+ mapping: {
+ KeyA: ["a", "A", "\xE6", "\xC6"],
+ KeyB: ["b", "B", "\u201C", "\u2018"],
+ KeyC: ["c", "C", "\xA2", "\xA9"],
+ KeyD: ["d", "D", "\xF0", "\xD0"],
+ KeyE: ["e", "E", "\u20AC", "\u20AC"],
+ KeyF: ["f", "F", "\u0111", "\xAA"],
+ KeyG: ["g", "G", "\u014B", "\u014A"],
+ KeyH: ["h", "H", "\u0127", "\u0126"],
+ KeyI: ["i", "I", "\u2192", "\u0131"],
+ KeyJ: ["j", "J", "\u0323", "\u0307"],
+ KeyK: ["k", "K", "\u0138", "&"],
+ KeyL: ["l", "L", "\u0142", "\u0141"],
+ KeyM: ["m", "M", "\xB5", "\xBA"],
+ KeyN: ["n", "N", "\u201D", "\u2019"],
+ KeyO: ["o", "O", "\xF8", "\xD8"],
+ KeyP: ["p", "P", "\xFE", "\xDE"],
+ KeyQ: ["q", "Q", "@", "\u03A9"],
+ KeyR: ["r", "R", "\xB6", "\xAE"],
+ KeyS: ["s", "S", "\u017F", "\u1E9E"],
+ KeyT: ["t", "T", "\u0167", "\u0166"],
+ KeyU: ["u", "U", "\u2193", "\u2191"],
+ KeyV: ["v", "V", "\u201E", "\u201A"],
+ KeyW: ["w", "W", "\u0142", "\u0141"],
+ KeyX: ["x", "X", "\xAB", "\u2039"],
+ KeyY: ["z", "Z", "\u2190", "\xA5"],
+ KeyZ: ["y", "Y", "\xBB", "\u203A"],
+ Digit1: ["1", "!", "\xB9", "\xA1"],
+ Digit2: ["2", '"', "\xB2", "\u215B"],
+ Digit3: ["3", "\xA7", "\xB3", "\xA3"],
+ Digit4: ["4", "$", "\xBC", "\xA4"],
+ Digit5: ["5", "%", "\xBD", "\u215C"],
+ Digit6: ["6", "&", "\xAC", "\u215D"],
+ Digit7: ["7", "/", "{", "\u215E"],
+ Digit8: ["8", "(", "[", "\u2122"],
+ Digit9: ["9", ")", "]", "\xB1"],
+ Digit0: ["0", "=", "}", "\xB0"],
+ Enter: ["\r", "\r", "\r", "\r"],
+ Escape: ["\x1B", "\x1B", "\x1B", "\x1B"],
+ Backspace: ["\b", "\b", "\b", "\b"],
+ Tab: [" ", "", " ", ""],
+ Space: [" ", " ", " ", " "],
+ Minus: ["\xDF", "?", "\\", "\xBF"],
+ Equal: ["\u0301", "\u0300", "\u0327", "\u0328"],
+ BracketLeft: ["\xFC", "\xDC", "\u0308", "\u030A"],
+ BracketRight: ["+", "*", "~", "\xAF"],
+ Backslash: ["#", "'", "\u2019", "\u0306"],
+ Semicolon: ["\xF6", "\xD6", "\u030B", "\u0323"],
+ Quote: ["\xE4", "\xC4", "\u0302", "\u030C"],
+ Backquote: ["\u0302", "\xB0", "\u2032", "\u2033"],
+ Comma: [",", ";", "\xB7", "\xD7"],
+ Period: [".", ":", "\u2026", "\xF7"],
+ Slash: ["-", "_", "\u2013", "\u2014"],
+ PrintScreen: ["", "", "", ""],
+ PageUp: ["/", "/", "/", "/"],
+ NumpadMultiply: ["*", "*", "*", "*"],
+ NumpadSubtract: ["-", "-", "-", "-"],
+ NumpadAdd: ["+", "+", "+", "+"],
+ Numpad1: ["", "1", "", "1"],
+ Numpad2: ["", "2", "", "2"],
+ Numpad3: ["", "3", "", "3"],
+ Numpad4: ["", "4", "", "4"],
+ Numpad5: ["", "5", "", "5"],
+ Numpad6: ["", "6", "", "6"],
+ Numpad7: ["", "7", "", "7"],
+ Numpad8: ["", "8", "", "8"],
+ Numpad9: ["", "9", "", "9"],
+ Numpad0: ["", "0", "", "0"],
+ NumpadDecimal: ["", ",", "", ","],
+ IntlBackslash: ["<", ">", "|", "\u0331"],
+ AltRight: ["\r", "\r", "\r", "\r"],
+ MetaRight: [".", ".", ".", "."]
+ }
+};
+
+// src/editor/keyboard-layouts/spanish.ts
+var APPLE_SPANISH = {
+ id: "apple.spanish",
+ locale: "es",
+ displayName: "Spanish ISO",
+ platform: "apple",
+ virtualLayout: "qwerty",
+ score: 0,
+ mapping: {
+ KeyA: ["a", "A", "\xE5", "\xC5"],
+ KeyB: ["b", "B", "\xDF", ""],
+ KeyC: ["c", "C", "\xA9", " "],
+ KeyD: ["d", "D", "\u2202", "\u2206"],
+ KeyE: ["e", "E", "\u20AC", "\u20AC"],
+ KeyF: ["f", "F", "\u0192", "\uFB01"],
+ KeyG: ["g", "G", "\uF8FF", "\uFB02"],
+ KeyH: ["h", "H", "\u2122", " "],
+ KeyI: ["i", "I", " ", " "],
+ KeyJ: ["j", "J", "\xB6", "\xAF"],
+ KeyK: ["k", "K", "\xA7", "\u02C7"],
+ KeyL: ["l", "L", " ", "\u02D8"],
+ KeyM: ["m", "M", "\xB5", "\u02DA"],
+ KeyN: ["n", "N", " ", "\u02D9"],
+ KeyO: ["o", "O", "\xF8", "\xD8"],
+ KeyP: ["p", "P", "\u03C0", "\u220F"],
+ KeyQ: ["q", "Q", "\u0153", "\u0152"],
+ KeyR: ["r", "R", "\xAE", " "],
+ KeyS: ["s", "S", "\u222B", " "],
+ KeyT: ["t", "T", "\u2020", "\u2021"],
+ KeyU: ["u", "U", " ", " "],
+ KeyV: ["v", "V", "\u221A", "\u25CA"],
+ KeyW: ["w", "W", "\xE6", "\xC6"],
+ KeyX: ["x", "X", "\u2211", "\u203A"],
+ KeyY: ["y", "Y", "\xA5", " "],
+ KeyZ: ["z", "Z", "\u03A9", "\u2039"],
+ Digit1: ["1", "!", "|", "\u0131"],
+ Digit2: ["2", '"', "@", "\u02DD"],
+ Digit3: ["3", "\xB7", "#", "\u2022"],
+ Digit4: ["4", "$", "\xA2", "\xA3"],
+ Digit5: ["5", "%", "\u221E", "\u2030"],
+ Digit6: ["6", "&", "\xAC", " "],
+ Digit7: ["7", "/", "\xF7", "\u2044"],
+ Digit8: ["8", "(", "\u201C", "\u2018"],
+ Digit9: ["9", ")", "\u201D", "\u2019"],
+ Digit0: ["0", "=", "\u2260", "\u2248"],
+ Space: [" ", " ", " ", " "],
+ Minus: ["'", "?", "\xB4", "\xB8"],
+ Equal: ["\xA1", "\xBF", "\u201A", "\u02DB"],
+ BracketLeft: ["`", "^", "[", "\u02C6"],
+ BracketRight: ["+", "*", "]", "\xB1"],
+ Backslash: ["\xE7", "\xC7", "}", "\xBB"],
+ Semicolon: ["\xF1", "\xD1", "~", "\u02DC"],
+ Quote: ["\xB4", "\xA8", "{", "\xAB"],
+ Backquote: ["<", ">", "\u2264", "\u2265"],
+ Comma: [",", ";", "\u201E", ""],
+ Period: [".", ":", "\u2026", "\u2026"],
+ Slash: ["-", "_", "\u2013", "\u2014"],
+ NumpadDivide: ["/", "/", "/", "/"],
+ NumpadMultiply: ["*", "*", "*", "*"],
+ NumpadSubtract: ["-", "-", "-", "-"],
+ NumpadAdd: ["+", "+", "+", "+"],
+ Numpad1: ["1", "1", "1", "1"],
+ Numpad2: ["2", "2", "2", "2"],
+ Numpad3: ["3", "3", "3", "3"],
+ Numpad4: ["4", "4", "4", "4"],
+ Numpad5: ["5", "5", "5", "5"],
+ Numpad6: ["6", "6", "6", "6"],
+ Numpad7: ["7", "7", "7", "7"],
+ Numpad8: ["8", "8", "8", "8"],
+ Numpad9: ["9", "9", "9", "9"],
+ Numpad0: ["0", "0", "0", "0"],
+ NumpadDecimal: [",", ",", ",", ","],
+ IntlBackslash: ["\xBA", "\xAA", "\\", "\xB0"]
+ }
+};
+var WINDOWS_SPANISH = {
+ id: "windows.spanish",
+ locale: "es",
+ displayName: "Spanish",
+ platform: "windows",
+ virtualLayout: "qwerty",
+ score: 0,
+ mapping: {
+ KeyA: ["a", "A", "", ""],
+ KeyB: ["b", "B", "", ""],
+ KeyC: ["c", "C", "", ""],
+ KeyD: ["d", "D", "", ""],
+ KeyE: ["e", "E", "\u20AC", ""],
+ KeyF: ["f", "F", "", ""],
+ KeyG: ["g", "G", "", ""],
+ KeyH: ["h", "H", "", ""],
+ KeyI: ["i", "I", "", ""],
+ KeyJ: ["j", "J", "", ""],
+ KeyK: ["k", "K", "", ""],
+ KeyL: ["l", "L", "", ""],
+ KeyM: ["m", "M", "", ""],
+ KeyN: ["n", "N", "", ""],
+ KeyO: ["o", "O", "", ""],
+ KeyP: ["p", "P", "", ""],
+ KeyQ: ["q", "Q", "", ""],
+ KeyR: ["r", "R", "", ""],
+ KeyS: ["s", "S", "", ""],
+ KeyT: ["t", "T", "", ""],
+ KeyU: ["u", "U", "", ""],
+ KeyV: ["v", "V", "", ""],
+ KeyW: ["w", "W", "", ""],
+ KeyX: ["x", "X", "", ""],
+ KeyY: ["y", "Y", "", ""],
+ KeyZ: ["z", "Z", "", ""],
+ Digit1: ["1", "!", "|", ""],
+ Digit2: ["2", '"', "@", ""],
+ Digit3: ["3", "\xB7", "#", ""],
+ Digit4: ["4", "$", "~", ""],
+ Digit5: ["5", "%", "\u20AC", ""],
+ Digit6: ["6", "&", "\xAC", ""],
+ Digit7: ["7", "/", "", ""],
+ Digit8: ["8", "(", "", ""],
+ Digit9: ["9", ")", "", ""],
+ Digit0: ["0", "=", "", ""],
+ Space: [" ", " ", "", ""],
+ Minus: ["'", "?", "", ""],
+ Equal: ["\xA1", "\xBF", "", ""],
+ BracketLeft: ["`", "^", "[", ""],
+ BracketRight: ["+", "*", "]", ""],
+ Backslash: ["\xE7", "\xC7", "}", ""],
+ Semicolon: ["\xF1", "\xD1", "", ""],
+ Quote: ["\xB4", "\xA8", "{", ""],
+ Backquote: ["\xBA", "\xAA", "\\", ""],
+ Comma: [",", ";", "", ""],
+ Period: [".", ":", "", ""],
+ Slash: ["-", "_", "", ""],
+ NumpadDivide: ["/", "/", "", ""],
+ NumpadMultiply: ["*", "*", "", ""],
+ NumpadSubtract: ["-", "-", "", ""],
+ NumpadAdd: ["+", "+", "", ""],
+ IntlBackslash: ["<", ">", "", ""]
+ }
+};
+var LINUX_SPANISH = {
+ id: "linux.spanish",
+ locale: "es",
+ displayName: "Spanish",
+ platform: "linux",
+ virtualLayout: "qwerty",
+ score: 0,
+ mapping: {
+ KeyA: ["a", "A", "\xE6", "\xC6"],
+ KeyB: ["b", "B", "\u201D", "\u2019"],
+ KeyC: ["c", "C", "\xA2", "\xA9"],
+ KeyD: ["d", "D", "\xF0", "\xD0"],
+ KeyE: ["e", "E", "\u20AC", "\xA2"],
+ KeyF: ["f", "F", "\u0111", "\xAA"],
+ KeyG: ["g", "G", "\u014B", "\u014A"],
+ KeyH: ["h", "H", "\u0127", "\u0126"],
+ KeyI: ["i", "I", "\u2192", "\u0131"],
+ KeyJ: ["j", "J", "\u0309", "\u031B"],
+ KeyK: ["k", "K", "\u0138", "&"],
+ KeyL: ["l", "L", "\u0142", "\u0141"],
+ KeyM: ["m", "M", "\xB5", "\xBA"],
+ KeyN: ["n", "N", "n", "N"],
+ KeyO: ["o", "O", "\xF8", "\xD8"],
+ KeyP: ["p", "P", "\xFE", "\xDE"],
+ KeyQ: ["q", "Q", "@", "\u03A9"],
+ KeyR: ["r", "R", "\xB6", "\xAE"],
+ KeyS: ["s", "S", "\xDF", "\xA7"],
+ KeyT: ["t", "T", "\u0167", "\u0166"],
+ KeyU: ["u", "U", "\u2193", "\u2191"],
+ KeyV: ["v", "V", "\u201C", "\u2018"],
+ KeyW: ["w", "W", "\u0142", "\u0141"],
+ KeyX: ["x", "X", "\xBB", ">"],
+ KeyY: ["y", "Y", "\u2190", "\xA5"],
+ KeyZ: ["z", "Z", "\xAB", "<"],
+ Digit1: ["1", "!", "|", "\xA1"],
+ Digit2: ["2", '"', "@", "\u215B"],
+ Digit3: ["3", "\xB7", "#", "\xA3"],
+ Digit4: ["4", "$", "~", "$"],
+ Digit5: ["5", "%", "\xBD", "\u215C"],
+ Digit6: ["6", "&", "\xAC", "\u215D"],
+ Digit7: ["7", "/", "{", "\u215E"],
+ Digit8: ["8", "(", "[", "\u2122"],
+ Digit9: ["9", ")", "]", "\xB1"],
+ Digit0: ["0", "=", "}", "\xB0"],
+ Enter: ["\r", "\r", "\r", "\r"],
+ Escape: ["\x1B", "\x1B", "\x1B", "\x1B"],
+ Backspace: ["\b", "\b", "\b", "\b"],
+ Tab: [" ", "", " ", ""],
+ Space: [" ", " ", " ", " "],
+ Minus: ["'", "?", "\\", "\xBF"],
+ Equal: ["\xA1", "\xBF", "\u0303", "~"],
+ BracketLeft: ["\u0300", "\u0302", "[", "\u030A"],
+ BracketRight: ["+", "*", "]", "\u0304"],
+ Backslash: ["\xE7", "\xC7", "}", "\u0306"],
+ Semicolon: ["\xF1", "\xD1", "~", "\u030B"],
+ Quote: ["\u0301", "\u0308", "{", "{"],
+ Backquote: ["\xBA", "\xAA", "\\", "\\"],
+ Comma: [",", ";", "\u2500", "\xD7"],
+ Period: [".", ":", "\xB7", "\xF7"],
+ Slash: ["-", "_", "\u0323", "\u0307"],
+ NumpadDivide: ["/", "/", "/", "/"],
+ NumpadMultiply: ["*", "*", "*", "*"],
+ NumpadSubtract: ["-", "-", "-", "-"],
+ NumpadAdd: ["+", "+", "+", "+"],
+ NumpadEnter: ["\r", "\r", "\r", "\r"],
+ Numpad1: ["", "1", "", "1"],
+ Numpad2: ["", "2", "", "2"],
+ Numpad3: ["", "3", "", "3"],
+ Numpad4: ["", "4", "", "4"],
+ Numpad5: ["", "5", "", "5"],
+ Numpad6: ["", "6", "", "6"],
+ Numpad7: ["", "7", "", "7"],
+ Numpad8: ["", "8", "", "8"],
+ Numpad9: ["", "9", "", "9"],
+ Numpad0: ["", "0", "", "0"],
+ NumpadDecimal: ["", ".", "", "."],
+ IntlBackslash: ["<", ">", "|", "\xA6"],
+ NumpadEqual: ["=", "=", "=", "="],
+ NumpadComma: [".", ".", ".", "."],
+ NumpadParenLeft: ["(", "(", "(", "("],
+ NumpadParenRight: [")", ")", ")", ")"]
+ }
+};
+
+// src/editor/keyboard-layout.ts
+function keystrokeModifiersFromString(key) {
+ const segments = key.split("+");
+ const result = {
+ shift: false,
+ alt: false,
+ cmd: false,
+ win: false,
+ meta: false,
+ ctrl: false,
+ key: segments.pop()
+ };
+ if (segments.includes("shift"))
+ result.shift = true;
+ if (segments.includes("alt"))
+ result.alt = true;
+ if (segments.includes("ctrl"))
+ result.ctrl = true;
+ if (segments.includes("cmd"))
+ result.cmd = true;
+ if (segments.includes("win"))
+ result.win = true;
+ if (segments.includes("meta"))
+ result.meta = true;
+ return result;
+}
+function keystrokeModifiersToString(key) {
+ let result = "";
+ if (key.shift)
+ result += "shift+";
+ if (key.alt)
+ result += "alt+";
+ if (key.ctrl)
+ result += "ctrl+";
+ if (key.cmd)
+ result += "cmd+";
+ if (key.win)
+ result += "win+";
+ if (key.meta)
+ result += "meta+";
+ return result + key.key;
+}
+var BASE_LAYOUT_MAPPING = {
+ enter: "[Enter]",
+ escape: "[Escape]",
+ backspace: "[Backspace]",
+ tab: "[Tab]",
+ space: "[Space]",
+ pausebreak: "[Pause]",
+ insert: "[Insert]",
+ home: "[Home]",
+ pageup: "[PageUp]",
+ delete: "[Delete]",
+ end: "[End]",
+ pagedown: "[PageDown]",
+ right: "[ArrowRight]",
+ left: "[ArrowLeft]",
+ down: "[ArrowDown]",
+ up: "[ArrowUp]",
+ numpad0: "[Numpad0]",
+ numpad1: "[Numpad1]",
+ numpad2: "[Numpad2]",
+ numpad3: "[Numpad3]",
+ numpad4: "[Numpad4]",
+ numpad5: "[Numpad5]",
+ numpad6: "[Numpad6]",
+ numpad7: "[Numpad7]",
+ numpad8: "[Numpad8]",
+ numpad9: "[Numpad9]",
+ "numpad_divide": "[NumpadDivide]",
+ "numpad_multiply": "[NumpadMultiply]",
+ "numpad_subtract": "[NumpadSubtract]",
+ "numpad_add": "[NumpadAdd]",
+ "numpad_decimal": "[NumpadDecimal]",
+ "numpad_separator": "[NumpadComma]",
+ capslock: "[Capslock]",
+ f1: "[F1]",
+ f2: "[F2]",
+ f3: "[F3]",
+ f4: "[F4]",
+ f5: "[F5]",
+ f6: "[F6]",
+ f7: "[F7]",
+ f8: "[F8]",
+ f9: "[F9]",
+ f10: "[F10]",
+ f11: "[F11]",
+ f12: "[F12]",
+ f13: "[F13]",
+ f14: "[F14]",
+ f15: "[F15]",
+ f16: "[F16]",
+ f17: "[F17]",
+ f18: "[F18]",
+ f19: "[F19]"
+};
+var gKeyboardLayouts = [];
+var gKeyboardLayout;
+function platform() {
+ switch (osPlatform()) {
+ case "macos":
+ case "ios":
+ return "apple";
+ case "windows":
+ return "windows";
+ }
+ return "linux";
+}
+function register(layout) {
+ if (!layout.platform || layout.platform === platform())
+ gKeyboardLayouts.push(layout);
+}
+function getCodeForKey(k, layout) {
+ var _a3;
+ const result = {
+ shift: false,
+ alt: false,
+ cmd: false,
+ win: false,
+ meta: false,
+ ctrl: false,
+ key: ""
+ };
+ if (!k)
+ return result;
+ for (const [key, value] of Object.entries(layout.mapping)) {
+ if (value[0] === k) {
+ result.key = `[${key}]`;
+ return result;
+ }
+ if (value[1] === k) {
+ result.shift = true;
+ result.key = `[${key}]`;
+ return result;
+ }
+ if (value[2] === k) {
+ result.alt = true;
+ result.key = `[${key}]`;
+ return result;
+ }
+ if (value[3] === k) {
+ result.shift = true;
+ result.alt = true;
+ result.key = `[${key}]`;
+ return result;
+ }
+ }
+ result.key = (_a3 = BASE_LAYOUT_MAPPING[k]) != null ? _a3 : "";
+ return result;
+}
+function normalizeKeyboardEvent(evt) {
+ if (evt.code)
+ return evt;
+ const mapping = Object.entries(getActiveKeyboardLayout().mapping);
+ let altKey = false;
+ let shiftKey = false;
+ let code = "";
+ for (let index = 0; index < 4; index++) {
+ for (const [key, value] of mapping) {
+ if (value[index] === evt.key) {
+ code = key;
+ if (index === 3) {
+ altKey = true;
+ shiftKey = true;
+ } else if (index === 2)
+ altKey = true;
+ else if (index === 1)
+ shiftKey = true;
+ break;
+ }
+ }
+ if (code)
+ break;
+ }
+ return new KeyboardEvent(evt.type, __spreadProps(__spreadValues({}, evt), { altKey, shiftKey, code }));
+}
+function validateKeyboardLayout(evt) {
+ var _a3, _b3;
+ if (!evt)
+ return;
+ if (evt.key === "Unidentified")
+ return;
+ if (evt.key === "Dead")
+ return;
+ const index = evt.shiftKey && evt.altKey ? 3 : evt.altKey ? 2 : evt.shiftKey ? 1 : 0;
+ for (const layout of gKeyboardLayouts) {
+ if (((_a3 = layout.mapping[evt.code]) == null ? void 0 : _a3[index]) === evt.key) {
+ layout.score += 1;
+ } else if ((_b3 = layout.mapping[evt.code]) == null ? void 0 : _b3[index]) {
+ layout.score = 0;
+ }
+ }
+ gKeyboardLayouts.sort((a, b) => b.score - a.score);
+}
+function setKeyboardLayoutLocale(locale) {
+ gKeyboardLayout = gKeyboardLayouts.find((x) => locale.startsWith(x.locale));
+}
+function getActiveKeyboardLayout() {
+ return gKeyboardLayout != null ? gKeyboardLayout : gKeyboardLayouts[0];
+}
+function getDefaultKeyboardLayout() {
+ switch (platform()) {
+ case "apple":
+ return APPLE_ENGLISH;
+ case "windows":
+ return WINDOWS_ENGLISH;
+ case "linux":
+ return LINUX_ENGLISH;
+ }
+ return APPLE_ENGLISH;
+}
+switch (platform()) {
+ case "apple":
+ register(APPLE_ENGLISH);
+ register(APPLE_FRENCH);
+ register(APPLE_SPANISH);
+ register(APPLE_GERMAN);
+ break;
+ case "windows":
+ register(WINDOWS_ENGLISH);
+ register(WINDOWS_FRENCH);
+ register(WINDOWS_SPANISH);
+ register(WINDOWS_GERMAN);
+ break;
+ case "linux":
+ register(LINUX_ENGLISH);
+ register(LINUX_FRENCH);
+ register(LINUX_SPANISH);
+ register(LINUX_GERMAN);
+ break;
+}
+register(DVORAK);
+
+// src/ui/events/keyboard.ts
+function getKeybindingMarkup(keybinding) {
+ var _a3;
+ const useGlyph = /macos|ios/.test(osPlatform());
+ const segments = keybinding.split("+");
+ let result = "";
+ for (const segment of segments) {
+ if (result) {
+ result += useGlyph ? "\u2009" : '+';
+ }
+ if (segment.startsWith("[Key"))
+ result += segment.slice(4, 5);
+ else if (segment.startsWith("Key"))
+ result += segment.slice(3, 4);
+ else if (segment.startsWith("[Digit"))
+ result += segment.slice(6, 7);
+ else if (segment.startsWith("Digit"))
+ result += segment.slice(5, 6);
+ else {
+ result += (_a3 = {
+ "cmd": "\u2318",
+ "meta": useGlyph ? "\u2318" : "Ctrl",
+ "shift": useGlyph ? "\u21E7" : "Shift",
+ "alt": useGlyph ? "\u2325" : "Alt",
+ "ctrl": useGlyph ? "\u2303" : "Ctrl",
+ "\n": useGlyph ? "\u23CE" : "Return",
+ "[return]": useGlyph ? "\u23CE" : "Return",
+ "[enter]": useGlyph ? "\u2324" : "Enter",
+ "[tab]": useGlyph ? "\u21E5" : "Tab",
+ // 'Esc': useSymbol ? '\u238b' : 'esc',
+ "[escape]": "Esc",
+ "[backspace]": useGlyph ? "\u232B" : "Backspace",
+ "[delete]": useGlyph ? "\u2326" : "Del",
+ "[pageup]": useGlyph ? "\u21DE" : "Page Up",
+ "[pagedown]": useGlyph ? "\u21DF" : "Page Down",
+ "[home]": useGlyph ? "\u2912" : "Home",
+ "[end]": useGlyph ? "\u2913" : "End",
+ "[space]": "Space",
+ "[equal]": "=",
+ "[minus]": "-",
+ "[comma]": ",",
+ "[slash]": "/",
+ "[backslash]": "\\",
+ "[bracketleft]": "[",
+ "[bracketright]": "]",
+ "semicolon": ";",
+ "period": ".",
+ "comma": ",",
+ "minus": "-",
+ "equal": "=",
+ "quote": "'",
+ "backslash": "\\",
+ "intlbackslash": "\\",
+ "backquote": "`",
+ "slash": "/",
+ "numpadmultiply": "* 🔢",
+ "numpaddivide": "/ 🔢",
+ // Numeric keypad
+ "numpadsubtract": "- 🔢",
+ "numpadadd": "+ 🔢",
+ "numpaddecimal": ". 🔢",
+ "numpadcomma": ", 🔢",
+ "help": "help",
+ "left": "\u21E0",
+ "up": "\u21E1",
+ "right": "\u21E2",
+ "down": "\u21E3",
+ "[arrowleft]": "\u21E0",
+ "[arrowup]": "\u21E1",
+ "[arrowright]": "\u21E2",
+ "[arrowdown]": "\u21E3"
+ }[segment.toLowerCase()]) != null ? _a3 : segment.toUpperCase();
+ }
+ }
+ return result;
+}
+
+// src/ui/events/utils.ts
+function eventLocation(evt) {
+ if (evt instanceof MouseEvent || evt instanceof PointerEvent)
+ return { x: evt.clientX, y: evt.clientY };
+ if (evt instanceof TouchEvent) {
+ const result = [...evt.touches].reduce(
+ (acc, x) => ({ x: acc.x + x.clientX, y: acc.y + x.clientY }),
+ { x: 0, y: 0 }
+ );
+ const l = evt.touches.length;
+ return { x: result.x / l, y: result.y / l };
+ }
+ return void 0;
+}
+function keyboardModifiersFromEvent(ev) {
+ const result = {
+ alt: false,
+ control: false,
+ shift: false,
+ meta: false
+ };
+ if (ev instanceof MouseEvent || ev instanceof PointerEvent || ev instanceof TouchEvent || ev instanceof KeyboardEvent) {
+ if (ev.altKey)
+ result.alt = true;
+ if (ev.ctrlKey)
+ result.control = true;
+ if (ev.metaKey)
+ result.meta = true;
+ if (ev.shiftKey)
+ result.shift = true;
+ }
+ return result;
+}
+function equalKeyboardModifiers(a, b) {
+ if (!a && b || a && !b)
+ return false;
+ if (!a || !b)
+ return true;
+ return a.alt === b.alt && a.control === b.control && a.shift === b.shift && a.meta === b.meta;
+}
+var PRINTABLE_KEYCODE = /* @__PURE__ */ new Set([
+ "Backquote",
+ // Japanese keyboard: hankaku/zenkaku/kanji key, which is non-printable
+ "Digit0",
+ "Digit1",
+ "Digit2",
+ "Digit3",
+ "Digit4",
+ "Digit5",
+ "Digit6",
+ "Digit7",
+ "Digit8",
+ "Digit9",
+ "Minus",
+ "Equal",
+ "IntlYen",
+ // Japanese Keyboard. Russian keyboard: \/
+ "KeyQ",
+ // AZERTY keyboard: labeled 'a'
+ "KeyW",
+ // AZERTY keyboard: labeled 'z'
+ "KeyE",
+ "KeyR",
+ "KeyT",
+ "KeyY",
+ // QWERTZ keyboard: labeled 'z'
+ "KeyU",
+ "KeyI",
+ "KeyO",
+ "KeyP",
+ "BracketLeft",
+ "BracketRight",
+ "Backslash",
+ // May be labeled #~ on UK 102 keyboard
+ "KeyA",
+ // AZERTY keyboard: labeled 'q'
+ "KeyS",
+ "KeyD",
+ "KeyF",
+ "KeyG",
+ "KeyH",
+ "KeyJ",
+ "KeyK",
+ "KeyL",
+ "Semicolon",
+ "Quote",
+ "IntlBackslash",
+ // QWERTZ keyboard '><'
+ "KeyZ",
+ // AZERTY: 'w', QWERTZ: 'y'
+ "KeyX",
+ "KeyC",
+ "KeyV",
+ "KeyB",
+ "KeyN",
+ "KeyM",
+ "Comma",
+ "Period",
+ "Slash",
+ "IntlRo",
+ // Japanse keyboard '\ろ'
+ "Space",
+ "Numpad0",
+ "Numpad1",
+ "Numpad2",
+ "Numpad3",
+ "Numpad4",
+ "Numpad5",
+ "Numpad6",
+ "Numpad7",
+ "Numpad8",
+ "Numpad9",
+ "NumpadAdd",
+ "NumpadComma",
+ "NumpadDecimal",
+ "NumpadDivide",
+ "NumpadEqual",
+ "NumpadHash",
+ "NumpadMultiply",
+ "NumpadParenLeft",
+ "NumpadParenRight",
+ "NumpadStar",
+ "NumpadSubstract"
+]);
+function mightProducePrintableCharacter(evt) {
+ if (evt.ctrlKey || evt.metaKey)
+ return false;
+ if (["Dead", "Process"].includes(evt.key))
+ return false;
+ if (evt.code === "")
+ return true;
+ return PRINTABLE_KEYCODE.has(evt.code);
+}
+function deepActiveElement() {
+ var _a3;
+ let a = document.activeElement;
+ while ((_a3 = a == null ? void 0 : a.shadowRoot) == null ? void 0 : _a3.activeElement)
+ a = a.shadowRoot.activeElement;
+ return a;
+}
+
+// src/ui/utils/scrim.ts
+var Scrim = class _Scrim {
+ static get scrim() {
+ if (!_Scrim._scrim)
+ _Scrim._scrim = new _Scrim();
+ return _Scrim._scrim;
+ }
+ static open(options) {
+ _Scrim.scrim.open(options);
+ }
+ static close() {
+ _Scrim.scrim.close();
+ }
+ static get state() {
+ return _Scrim.scrim.state;
+ }
+ static get element() {
+ return _Scrim.scrim.element;
+ }
+ /**
+ * - If `lightDismiss` is true, the scrim is closed if the
+ * user clicks on the scrim. That's the behavior for menus, for example.
+ * When you need a fully modal situation until the user has made an
+ * explicit choice (validating cookie usage, for example), set
+ * `lightDismiss` to fallse.
+ */
+ constructor(options) {
+ var _a3, _b3;
+ this.lightDismiss = (_a3 = options == null ? void 0 : options.lightDismiss) != null ? _a3 : true;
+ this.translucent = (_b3 = options == null ? void 0 : options.translucent) != null ? _b3 : false;
+ this.state = "closed";
+ }
+ get element() {
+ if (this._element)
+ return this._element;
+ const element = document.createElement("div");
+ element.setAttribute("role", "presentation");
+ element.style.position = "fixed";
+ element.style.contain = "content";
+ element.style.top = "0";
+ element.style.left = "0";
+ element.style.right = "0";
+ element.style.bottom = "0";
+ element.style.zIndex = "var(--scrim-zindex, 10099)";
+ element.style.outline = "none";
+ if (this.translucent) {
+ element.style.background = "rgba(255, 255, 255, .2)";
+ element.style["backdropFilter"] = "contrast(40%)";
+ } else
+ element.style.background = "transparent";
+ this._element = element;
+ return element;
+ }
+ open(options) {
+ var _a3;
+ if (this.state !== "closed")
+ return;
+ this.state = "opening";
+ this.onDismiss = options == null ? void 0 : options.onDismiss;
+ this.savedActiveElement = deepActiveElement();
+ const { element } = this;
+ ((_a3 = options == null ? void 0 : options.root) != null ? _a3 : document.body).appendChild(element);
+ element.addEventListener("click", this);
+ document.addEventListener("touchmove", this, false);
+ document.addEventListener("scroll", this, false);
+ const scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;
+ this.savedMarginRight = document.body.style.marginRight;
+ this.savedOverflow = document.body.style.overflow;
+ document.body.style.overflow = "hidden";
+ const marginRight = Number.parseFloat(
+ getComputedStyle(document.body).marginRight
+ );
+ document.body.style.marginRight = `${marginRight + scrollbarWidth}px`;
+ if (options == null ? void 0 : options.child)
+ element.append(options.child);
+ this.state = "open";
+ }
+ close() {
+ var _a3, _b3, _c2, _d2;
+ if (this.state !== "open") {
+ console.assert(this.element.parentElement !== null);
+ return;
+ }
+ this.state = "closing";
+ if (typeof this.onDismiss === "function")
+ this.onDismiss();
+ this.onDismiss = void 0;
+ const { element } = this;
+ element.removeEventListener("click", this);
+ document.removeEventListener("touchmove", this, false);
+ document.removeEventListener("scroll", this, false);
+ element.remove();
+ document.body.style.overflow = (_a3 = this.savedOverflow) != null ? _a3 : "";
+ document.body.style.marginRight = (_b3 = this.savedMarginRight) != null ? _b3 : "";
+ if (deepActiveElement() !== this.savedActiveElement)
+ (_d2 = (_c2 = this.savedActiveElement) == null ? void 0 : _c2.focus) == null ? void 0 : _d2.call(_c2);
+ element.innerHTML = "";
+ this.state = "closed";
+ }
+ handleEvent(ev) {
+ if (this.lightDismiss) {
+ if (ev.target === this._element && ev.type === "click") {
+ this.close();
+ ev.preventDefault();
+ ev.stopPropagation();
+ } else if (ev.target === document && (ev.type === "touchmove" || ev.type === "scroll")) {
+ this.close();
+ ev.preventDefault();
+ ev.stopPropagation();
+ }
+ }
+ }
+};
+
+// src/editor/keyboard.ts
+function delegateKeyboardEvents(keyboardSink, element, delegate) {
+ let keydownEvent = null;
+ let keypressEvent = null;
+ let compositionInProgress = false;
+ let focusInProgress = false;
+ let blurInProgress = false;
+ const controller = new AbortController();
+ const signal = controller.signal;
+ keyboardSink.addEventListener(
+ "keydown",
+ (event) => {
+ if (compositionInProgress || event.key === "Process" || event.code === "CapsLock" || /(Control|Meta|Alt|Shift)(Left|Right)/.test(event.code)) {
+ keydownEvent = null;
+ return;
+ }
+ keydownEvent = event;
+ keypressEvent = null;
+ if (!delegate.onKeystroke(event))
+ keydownEvent = null;
+ else
+ keyboardSink.textContent = "";
+ },
+ { capture: true, signal }
+ );
+ keyboardSink.addEventListener(
+ "keypress",
+ (event) => {
+ if (compositionInProgress)
+ return;
+ if (keydownEvent && keypressEvent)
+ delegate.onKeystroke(keydownEvent);
+ keypressEvent = event;
+ },
+ { capture: true, signal }
+ );
+ keyboardSink.addEventListener(
+ "compositionstart",
+ (event) => {
+ keyboardSink.textContent = "";
+ compositionInProgress = true;
+ delegate.onCompositionStart(event.data);
+ },
+ { capture: true, signal }
+ );
+ keyboardSink.addEventListener(
+ "compositionupdate",
+ (ev) => {
+ if (!compositionInProgress)
+ return;
+ delegate.onCompositionUpdate(ev.data);
+ },
+ { capture: true, signal }
+ );
+ keyboardSink.addEventListener(
+ "compositionend",
+ (ev) => {
+ keyboardSink.textContent = "";
+ if (!compositionInProgress)
+ return;
+ compositionInProgress = false;
+ delegate.onCompositionEnd(ev.data);
+ },
+ { capture: true, signal }
+ );
+ keyboardSink.addEventListener(
+ "beforeinput",
+ (ev) => ev.stopImmediatePropagation(),
+ { signal }
+ );
+ keyboardSink.addEventListener(
+ "input",
+ (ev) => {
+ var _a3;
+ if (compositionInProgress)
+ return;
+ keyboardSink.textContent = "";
+ if (ev.inputType === "insertCompositionText")
+ return;
+ if (ev.inputType === "insertFromPaste") {
+ ev.preventDefault();
+ ev.stopPropagation();
+ return;
+ }
+ delegate.onInput((_a3 = ev.data) != null ? _a3 : "");
+ ev.preventDefault();
+ ev.stopPropagation();
+ },
+ { signal }
+ );
+ keyboardSink.addEventListener(
+ "paste",
+ (event) => {
+ keyboardSink.focus({ preventScroll: true });
+ keyboardSink.textContent = "";
+ if (!delegate.onPaste(event))
+ event.preventDefault();
+ event.stopImmediatePropagation();
+ },
+ { signal }
+ );
+ keyboardSink.addEventListener("cut", (ev) => delegate.onCut(ev), {
+ capture: true,
+ signal
+ });
+ keyboardSink.addEventListener("copy", (ev) => delegate.onCopy(ev), {
+ capture: true,
+ signal
+ });
+ keyboardSink.addEventListener(
+ "blur",
+ (event) => {
+ var _a3, _b3;
+ if (((_b3 = (_a3 = event["relatedTarget"]) == null ? void 0 : _a3["_mathfield"]) == null ? void 0 : _b3["element"]) === element) {
+ keyboardSink.focus({ preventScroll: true });
+ event.preventDefault();
+ event.stopPropagation();
+ return;
+ }
+ const scrimState = Scrim.state;
+ if (scrimState === "open" || scrimState === "opening") {
+ event.preventDefault();
+ event.stopPropagation();
+ return;
+ }
+ if (event.relatedTarget === event.target.getRootNode().host) {
+ event.preventDefault();
+ event.stopPropagation();
+ return;
+ }
+ if (blurInProgress || focusInProgress)
+ return;
+ blurInProgress = true;
+ keydownEvent = null;
+ keypressEvent = null;
+ delegate.onBlur();
+ blurInProgress = false;
+ },
+ { capture: true, signal }
+ );
+ keyboardSink.addEventListener(
+ "focus",
+ (_evt) => {
+ if (blurInProgress || focusInProgress)
+ return;
+ focusInProgress = true;
+ delegate.onFocus();
+ focusInProgress = false;
+ },
+ { capture: true, signal }
+ );
+ return {
+ dispose: () => controller.abort(),
+ cancelComposition: () => {
+ if (!compositionInProgress)
+ return;
+ keyboardSink.blur();
+ requestAnimationFrame(() => keyboardSink.focus({ preventScroll: true }));
+ },
+ blur: () => {
+ if (typeof keyboardSink.blur === "function")
+ keyboardSink.blur();
+ },
+ focus: () => {
+ if (!focusInProgress && typeof keyboardSink.focus === "function")
+ keyboardSink.focus({ preventScroll: true });
+ },
+ hasFocus: () => {
+ return deepActiveElement() === keyboardSink;
+ },
+ setAriaLabel: (value) => keyboardSink.setAttribute("aria-label", value),
+ setValue: (value) => {
+ var _a3;
+ keyboardSink.textContent = value;
+ keyboardSink.style.left = `-1000px`;
+ (_a3 = window.getSelection()) == null ? void 0 : _a3.selectAllChildren(keyboardSink);
+ },
+ moveTo: (x, y) => {
+ keyboardSink.style.top = `${y}px`;
+ keyboardSink.style.left = `${x}px`;
+ }
+ };
+}
+function keyboardEventToChar(evt) {
+ var _a3;
+ if (!evt || !mightProducePrintableCharacter(evt))
+ return "";
+ let result;
+ if (evt.key === "Unidentified") {
+ if (evt.target)
+ result = evt.target.value;
+ }
+ result = (_a3 = result != null ? result : evt.key) != null ? _a3 : evt.code;
+ if (/^(Dead|Return|Enter|Tab|Escape|Delete|PageUp|PageDown|Home|End|Help|ArrowLeft|ArrowRight|ArrowUp|ArrowDown)$/.test(
+ result
+ ))
+ result = "";
+ return result;
+}
+function keyboardEventToString(evt) {
+ evt = normalizeKeyboardEvent(evt);
+ const modifiers = [];
+ if (evt.ctrlKey)
+ modifiers.push("ctrl");
+ if (evt.metaKey)
+ modifiers.push("meta");
+ if (evt.altKey)
+ modifiers.push("alt");
+ if (evt.shiftKey)
+ modifiers.push("shift");
+ if (modifiers.length === 0)
+ return `[${evt.code}]`;
+ modifiers.push(`[${evt.code}]`);
+ return modifiers.join("+");
+}
+
+// src/editor/keybindings.ts
+function matchPlatform(p) {
+ if (isBrowser()) {
+ const plat = osPlatform();
+ const isNeg = p.startsWith("!");
+ const isMatch = p.endsWith(plat);
+ if (isNeg && !isMatch)
+ return true;
+ if (!isNeg && isMatch)
+ return true;
+ }
+ if (p === "!other")
+ return false;
+ return p === "other";
+}
+function getCommandForKeybinding(keybindings, mode, evt) {
+ if (keybindings.length === 0)
+ return "";
+ const keystroke = keystrokeModifiersToString(
+ keystrokeModifiersFromString(keyboardEventToString(evt))
+ );
+ const altKeystroke = keystrokeModifiersToString({
+ key: evt.key,
+ shift: evt.shiftKey,
+ alt: evt.altKey,
+ ctrl: evt.ctrlKey,
+ meta: evt.metaKey || evt.ctrlKey && /macos|ios/.test(osPlatform()),
+ cmd: false,
+ win: false
+ });
+ for (let i = keybindings.length - 1; i >= 0; i--) {
+ if (keybindings[i].key === keystroke || keybindings[i].key === altKeystroke) {
+ if (!keybindings[i].ifMode || keybindings[i].ifMode === mode)
+ return keybindings[i].command;
+ }
+ }
+ return "";
+}
+function commandToString(command) {
+ let result = command;
+ if (isArray(result)) {
+ result = result.length > 0 ? result[0] + "(" + result.slice(1).join("") + ")" : "";
+ }
+ return result;
+}
+function getKeybindingsForCommand(keybindings, command) {
+ let result = [];
+ if (typeof command === "string") {
+ const candidate = REVERSE_KEYBINDINGS[command];
+ if (isArray(candidate))
+ result = candidate.slice();
+ else if (candidate)
+ result.push(candidate);
+ }
+ const normalizedCommand = commandToString(command);
+ const regex = new RegExp(
+ "^" + normalizedCommand.replace("\\", "\\\\").replace("|", "\\|").replace("*", "\\*").replace("$", "\\$").replace("^", "\\^") + "([^*a-zA-Z]|$)"
+ );
+ for (const keybinding of keybindings) {
+ if (regex.test(commandToString(keybinding.command)))
+ result.push(keybinding.key);
+ }
+ return result.map(getKeybindingMarkup);
+}
+function normalizeKeybinding(keybinding, layout) {
+ if (keybinding.ifPlatform && !/^!?(macos|windows|android|ios|chromeos|other)$/.test(
+ keybinding.ifPlatform
+ )) {
+ throw new Error(
+ `Unexpected platform "${keybinding.ifPlatform}" for keybinding ${keybinding.key}`
+ );
+ }
+ if (keybinding.ifLayout !== void 0 && (layout.score === 0 || !keybinding.ifLayout.includes(layout.id)))
+ return void 0;
+ const modifiers = keystrokeModifiersFromString(keybinding.key);
+ let platform2 = keybinding.ifPlatform;
+ if (modifiers.cmd) {
+ if (platform2 && platform2 !== "macos" && platform2 !== "ios") {
+ throw new Error(
+ 'Unexpected "cmd" modifier with platform "' + platform2 + '"\n"cmd" modifier can only be used with macOS or iOS platform.'
+ );
+ }
+ if (!platform2)
+ platform2 = osPlatform() === "ios" ? "ios" : "macos";
+ modifiers.win = false;
+ modifiers.cmd = false;
+ modifiers.meta = true;
+ }
+ if (modifiers.win) {
+ if (platform2 && platform2 !== "windows") {
+ throw new Error(
+ 'Unexpected "win" modifier with platform "' + platform2 + '"\n"win" modifier can only be used with Windows platform.'
+ );
+ }
+ platform2 = "windows";
+ modifiers.win = false;
+ modifiers.cmd = false;
+ modifiers.meta = true;
+ }
+ if (platform2 && !matchPlatform(platform2))
+ return void 0;
+ if (/^\[.+\]$/.test(modifiers.key))
+ return __spreadProps(__spreadValues({}, keybinding), { key: keystrokeModifiersToString(modifiers) });
+ const code = getCodeForKey(modifiers.key, layout);
+ if (!code)
+ return __spreadProps(__spreadValues({}, keybinding), { key: keystrokeModifiersToString(modifiers) });
+ if (code.shift && modifiers.shift || code.alt && modifiers.alt) {
+ throw new Error(
+ `The keybinding ${keybinding.key} (${selectorToString(
+ keybinding.command
+ )}) is conflicting with the key combination ${keystrokeModifiersToString(
+ code
+ )} using the ${layout.displayName} keyboard layout`
+ );
+ }
+ code.shift = code.shift || modifiers.shift;
+ code.alt = code.alt || modifiers.alt;
+ code.meta = modifiers.meta;
+ code.ctrl = modifiers.ctrl;
+ return __spreadProps(__spreadValues({}, keybinding), { key: keystrokeModifiersToString(code) });
+}
+function selectorToString(selector) {
+ if (Array.isArray(selector)) {
+ const sel = [...selector];
+ return sel.shift() + "(" + sel.map((x) => typeof x === "string" ? `"${x}"` : x.toString()).join(", ") + ")";
+ }
+ return selector;
+}
+function normalizeKeybindings(keybindings, layout) {
+ const errors = [];
+ const result = [];
+ for (const x of keybindings) {
+ try {
+ const binding = normalizeKeybinding(x, layout);
+ if (!binding)
+ continue;
+ const conflict = result.find(
+ (x2) => x2.key === binding.key && x2.ifMode === binding.ifMode
+ );
+ if (conflict) {
+ throw new Error(
+ `Ambiguous key binding ${x.key} (${selectorToString(
+ x.command
+ )}) matches ${conflict.key} (${selectorToString(
+ conflict.command
+ )}) with the ${layout.displayName} keyboard layout`
+ );
+ }
+ result.push(binding);
+ } catch (error) {
+ if (error instanceof Error)
+ errors.push(error.message);
+ }
+ }
+ return [result, errors];
+}
+
+// src/editor-mathfield/mode-editor-latex.ts
+var LatexModeEditor = class extends ModeEditor {
+ constructor() {
+ super("latex");
+ }
+ createAtom(command) {
+ return new LatexAtom(command);
+ }
+ onPaste(mathfield, data) {
+ if (!data)
+ return false;
+ const text = typeof data === "string" ? data : data.getData("application/x-latex") || data.getData("text/plain");
+ if (text && mathfield.model.contentWillChange({
+ inputType: "insertFromPaste",
+ data: text
+ })) {
+ mathfield.stopCoalescingUndo();
+ mathfield.stopRecording();
+ if (this.insert(mathfield.model, text)) {
+ mathfield.startRecording();
+ mathfield.snapshot("paste");
+ mathfield.model.contentDidChange({ inputType: "insertFromPaste" });
+ requestUpdate(mathfield);
+ }
+ mathfield.startRecording();
+ return true;
+ }
+ return false;
+ }
+ insert(model, text, options) {
+ if (!model.contentWillChange({ data: text, inputType: "insertText" }))
+ return false;
+ if (!options)
+ options = {};
+ if (!options.insertionMode)
+ options.insertionMode = "replaceSelection";
+ if (!options.selectionMode)
+ options.selectionMode = "placeholder";
+ const { silenceNotifications } = model;
+ if (options.silenceNotifications)
+ model.silenceNotifications = true;
+ const saveSilenceNotifications = model.silenceNotifications;
+ model.silenceNotifications = true;
+ if (options.insertionMode === "replaceSelection" && !model.selectionIsCollapsed)
+ model.deleteAtoms(range(model.selection));
+ else if (options.insertionMode === "replaceAll") {
+ model.root.setChildren([], "body");
+ model.position = 0;
+ } else if (options.insertionMode === "insertBefore")
+ model.collapseSelection("backward");
+ else if (options.insertionMode === "insertAfter")
+ model.collapseSelection("forward");
+ const newAtoms = [];
+ for (const c of text)
+ if (COMMAND_MODE_CHARACTERS.test(c))
+ newAtoms.push(new LatexAtom(c));
+ let cursor = model.at(model.position);
+ if (cursor instanceof LatexGroupAtom)
+ cursor = cursor.lastChild;
+ if (!(cursor.parent instanceof LatexGroupAtom)) {
+ const group = new LatexGroupAtom("");
+ cursor.parent.addChildAfter(group, cursor);
+ cursor = group.firstChild;
+ }
+ const lastNewAtom = cursor.parent.addChildrenAfter(newAtoms, cursor);
+ model.silenceNotifications = saveSilenceNotifications;
+ if (options.selectionMode === "before") {
+ } else if (options.selectionMode === "item")
+ model.setSelection(model.anchor, model.offsetOf(lastNewAtom));
+ else if (lastNewAtom)
+ model.position = model.offsetOf(lastNewAtom);
+ model.contentDidChange({ data: text, inputType: "insertText" });
+ model.silenceNotifications = silenceNotifications;
+ return true;
+ }
+};
+function getLatexGroup(model) {
+ return model.atoms.find((x) => x.type === "latexgroup");
+}
+function getLatexGroupBody(model) {
+ var _a3, _b3;
+ const atom = model.atoms.find((x) => x.type === "latexgroup");
+ if (!atom)
+ return [];
+ return (_b3 = (_a3 = atom.body) == null ? void 0 : _a3.filter((x) => x.type === "latex")) != null ? _b3 : [];
+}
+function getCommandSuggestionRange(model, options) {
+ var _a3;
+ let start = 0;
+ let found = false;
+ const last = Number.isFinite(options == null ? void 0 : options.before) ? (_a3 = options == null ? void 0 : options.before) != null ? _a3 : 0 : model.lastOffset;
+ while (start <= last && !found) {
+ const atom = model.at(start);
+ found = atom instanceof LatexAtom && atom.isSuggestion;
+ if (!found)
+ start++;
+ }
+ if (!found)
+ return [void 0, void 0];
+ let end = start;
+ let done = false;
+ while (end <= last && !done) {
+ const atom = model.at(end);
+ done = !(atom instanceof LatexAtom && atom.isSuggestion);
+ if (!done)
+ end++;
+ }
+ return [start - 1, end - 1];
+}
+new LatexModeEditor();
+
+// src/editor-mathfield/autocomplete.ts
+function removeSuggestion(mathfield) {
+ const group = getLatexGroupBody(mathfield.model).filter(
+ (x) => x.isSuggestion
+ );
+ if (group.length === 0)
+ return;
+ mathfield.model.position = mathfield.model.offsetOf(group[0].leftSibling);
+ for (const atom of group)
+ atom.parent.removeChild(atom);
+}
+function updateAutocomplete(mathfield, options) {
+ var _a3;
+ const { model } = mathfield;
+ removeSuggestion(mathfield);
+ for (const atom2 of getLatexGroupBody(model))
+ atom2.isError = false;
+ if (!model.selectionIsCollapsed || mathfield.options.popoverPolicy === "off") {
+ hideSuggestionPopover(mathfield);
+ return;
+ }
+ const commandAtoms = [];
+ let atom = model.at(model.position);
+ while (atom && atom instanceof LatexAtom && /^[a-zA-Z\*]$/.test(atom.value))
+ atom = atom.leftSibling;
+ if (atom && atom instanceof LatexAtom && atom.value === "\\") {
+ commandAtoms.push(atom);
+ atom = atom.rightSibling;
+ while (atom && atom instanceof LatexAtom && /^[a-zA-Z\*]$/.test(atom.value)) {
+ commandAtoms.push(atom);
+ atom = atom.rightSibling;
+ }
+ }
+ const command = commandAtoms.map((x) => x.value).join("");
+ const suggestions = suggest(mathfield, command);
+ if (suggestions.length === 0) {
+ if (/^\\[a-zA-Z\*]+$/.test(command))
+ for (const atom2 of commandAtoms)
+ atom2.isError = true;
+ hideSuggestionPopover(mathfield);
+ return;
+ }
+ const index = (_a3 = options == null ? void 0 : options.atIndex) != null ? _a3 : 0;
+ mathfield.suggestionIndex = index < 0 ? suggestions.length - 1 : index % suggestions.length;
+ const suggestion = suggestions[mathfield.suggestionIndex];
+ if (suggestion !== command) {
+ const lastAtom = commandAtoms[commandAtoms.length - 1];
+ lastAtom.parent.addChildrenAfter(
+ [...suggestion.slice(command.length - suggestion.length)].map(
+ (x) => new LatexAtom(x, { isSuggestion: true })
+ ),
+ lastAtom
+ );
+ render(mathfield, { interactive: true });
+ }
+ showSuggestionPopover(mathfield, suggestions);
+}
+function acceptCommandSuggestion(model) {
+ const [from, to] = getCommandSuggestionRange(model, {
+ before: model.position
+ });
+ if (from === void 0 || to === void 0)
+ return false;
+ let result = false;
+ model.getAtoms([from, to]).forEach((x) => {
+ if (x.isSuggestion) {
+ x.isSuggestion = false;
+ result = true;
+ }
+ });
+ return result;
+}
+function complete(mathfield, completion = "accept", options) {
+ var _a3, _b3;
+ hideSuggestionPopover(mathfield);
+ const latexGroup = getLatexGroup(mathfield.model);
+ if (!latexGroup)
+ return false;
+ if (completion === "accept-suggestion" || completion === "accept-all") {
+ const suggestions = getLatexGroupBody(mathfield.model).filter(
+ (x) => x.isSuggestion
+ );
+ if (suggestions.length !== 0) {
+ for (const suggestion of suggestions)
+ suggestion.isSuggestion = false;
+ mathfield.model.position = mathfield.model.offsetOf(
+ suggestions[suggestions.length - 1]
+ );
+ }
+ if (completion === "accept-suggestion")
+ return suggestions.length !== 0;
+ }
+ const body = getLatexGroupBody(mathfield.model).filter(
+ (x) => !x.isSuggestion
+ );
+ const latex = body.map((x) => x.value).join("");
+ const newPos = latexGroup.leftSibling;
+ latexGroup.parent.removeChild(latexGroup);
+ mathfield.model.position = mathfield.model.offsetOf(newPos);
+ mathfield.switchMode((_a3 = options == null ? void 0 : options.mode) != null ? _a3 : "math");
+ if (completion === "reject")
+ return true;
+ ModeEditor.insert(mathfield.model, latex, {
+ selectionMode: ((_b3 = options == null ? void 0 : options.selectItem) != null ? _b3 : false) ? "item" : "placeholder",
+ format: "latex",
+ mode: "math"
+ });
+ mathfield.snapshot();
+ mathfield.model.announce("replacement");
+ mathfield.switchMode("math");
+ return true;
+}
+
+// src/common/shared-element.ts
+function getSharedElement(id) {
+ var _a3;
+ let result = document.getElementById(id);
+ if (result) {
+ result.dataset.refcount = Number(
+ Number.parseInt((_a3 = result.dataset.refcount) != null ? _a3 : "0") + 1
+ ).toString();
+ } else {
+ result = document.createElement("div");
+ result.setAttribute("aria-hidden", "true");
+ result.dataset.refcount = "1";
+ result.id = id;
+ document.body.append(result);
+ }
+ return result;
+}
+function releaseSharedElement(id) {
+ var _a3;
+ const element = document.getElementById(id);
+ if (!element)
+ return;
+ const refcount = Number.parseInt(
+ (_a3 = element.getAttribute("data-refcount")) != null ? _a3 : "0"
+ );
+ if (refcount <= 1)
+ element.remove();
+ else
+ element.dataset.refcount = Number(refcount - 1).toString();
+}
+
+// src/editor/suggestion-popover.ts
+function latexToMarkup(mf, latex) {
+ const context = new Context({ from: mf.context });
+ const root = new Atom({
+ mode: "math",
+ type: "root",
+ body: parseLatex(latex, { context })
+ });
+ const box = coalesce(
+ applyInterBoxSpacing(
+ new Box(root.render(context), { classes: "ML__base" }),
+ context
+ )
+ );
+ return makeStruts(box, { classes: "ML__latex" }).toMarkup();
+}
+function showSuggestionPopover(mf, suggestions) {
+ var _a3;
+ if (suggestions.length === 0) {
+ hideSuggestionPopover(mf);
+ return;
+ }
+ let template = "";
+ for (const [i, suggestion] of suggestions.entries()) {
+ const command = suggestion;
+ const commandMarkup = latexToMarkup(mf, suggestion);
+ const keybinding = getKeybindingsForCommand(mf.keybindings, command).join(
+ "
"
+ );
+ template += `${command}${commandMarkup}`;
+ if (keybinding)
+ template += `${keybinding}`;
+ template += " ";
+ }
+ const panel = createSuggestionPopover(mf, `${template}
`);
+ if (isSuggestionPopoverVisible()) {
+ (_a3 = panel.querySelector(".ML__popover__current")) == null ? void 0 : _a3.scrollIntoView({ block: "nearest", inline: "nearest" });
+ }
+ setTimeout(() => {
+ var _a4;
+ if (panel && !isSuggestionPopoverVisible()) {
+ panel.classList.add("is-visible");
+ updateSuggestionPopoverPosition(mf);
+ (_a4 = panel.querySelector(".ML__popover__current")) == null ? void 0 : _a4.scrollIntoView({ block: "nearest", inline: "nearest" });
+ }
+ }, 32);
+}
+function isSuggestionPopoverVisible() {
+ const panel = document.getElementById("mathlive-suggestion-popover");
+ if (!panel)
+ return false;
+ return panel.classList.contains("is-visible");
+}
+function updateSuggestionPopoverPosition(mf, options) {
+ var _a3;
+ if (!mf.element || mf.element.mathfield !== mf)
+ return;
+ if (!isSuggestionPopoverVisible())
+ return;
+ if (((_a3 = mf.model.at(mf.model.position)) == null ? void 0 : _a3.type) !== "latex") {
+ hideSuggestionPopover(mf);
+ return;
+ }
+ if (options == null ? void 0 : options.deferred) {
+ setTimeout(() => updateSuggestionPopoverPosition(mf), 32);
+ return;
+ }
+ const position = getCaretPoint(mf.field);
+ if (!position)
+ return;
+ const viewportHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
+ const viewportWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
+ const scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;
+ const scrollbarHeight = window.innerHeight - document.documentElement.clientHeight;
+ const virtualkeyboardHeight = window.mathVirtualKeyboard.boundingRect.height;
+ const panel = document.getElementById("mathlive-suggestion-popover");
+ if (position.x + panel.offsetWidth / 2 > viewportWidth - scrollbarWidth) {
+ panel.style.left = `${viewportWidth - panel.offsetWidth - scrollbarWidth}px`;
+ } else if (position.x - panel.offsetWidth / 2 < 0)
+ panel.style.left = "0";
+ else
+ panel.style.left = `${position.x - panel.offsetWidth / 2}px`;
+ const spaceAbove = position.y - position.height;
+ const spaceBelow = viewportHeight - scrollbarHeight - virtualkeyboardHeight - position.y;
+ if (spaceBelow < spaceAbove) {
+ panel.classList.add("ML__popover--reverse-direction");
+ panel.classList.remove("top-tip");
+ panel.classList.add("bottom-tip");
+ panel.style.top = `${position.y - position.height - panel.offsetHeight - 15}px`;
+ } else {
+ panel.classList.remove("ML__popover--reverse-direction");
+ panel.classList.add("top-tip");
+ panel.classList.remove("bottom-tip");
+ panel.style.top = `${position.y + 15}px`;
+ }
+}
+function hideSuggestionPopover(mf) {
+ mf.suggestionIndex = 0;
+ const panel = document.getElementById("mathlive-suggestion-popover");
+ if (panel) {
+ panel.classList.remove("is-visible");
+ panel.innerHTML = "";
+ }
+}
+function createSuggestionPopover(mf, html) {
+ let panel = document.getElementById("mathlive-suggestion-popover");
+ if (!panel) {
+ panel = getSharedElement("mathlive-suggestion-popover");
+ injectStylesheet("suggestion-popover");
+ injectStylesheet("core");
+ panel.addEventListener("pointerdown", (ev) => ev.preventDefault());
+ panel.addEventListener("click", (ev) => {
+ let el = ev.target;
+ while (el && !el.dataset.command)
+ el = el.parentElement;
+ if (!el)
+ return;
+ complete(mf, "reject");
+ ModeEditor.insert(mf.model, el.dataset.command, {
+ selectionMode: "placeholder",
+ format: "latex",
+ mode: "math"
+ });
+ mf.dirty = true;
+ mf.focus();
+ });
+ }
+ panel.innerHTML = window.MathfieldElement.createHTML(html);
+ return panel;
+}
+function disposeSuggestionPopover() {
+ if (!document.getElementById("mathlive-suggestion-popover"))
+ return;
+ releaseSharedElement("mathlive-suggestion-popover");
+ releaseStylesheet("suggestion-popover");
+ releaseStylesheet("core");
+}
+
+// src/common/script-url.ts
+function getFileUrl() {
+ const stackTraceFrames = String(new Error().stack).replace(/^Error.*\n/, "").split("\n");
+ if (stackTraceFrames.length === 0) {
+ console.error(
+ `Can't use relative paths to specify assets location because the sourcefile location could not be determined (unexpected stack trace format "${new Error().stack}").`
+ );
+ return "";
+ }
+ let callerFrame = stackTraceFrames[1];
+ let m = callerFrame.match(/http.*\.ts[\?:]/);
+ if (m) {
+ callerFrame = stackTraceFrames[2];
+ }
+ m = callerFrame.match(/(https?:.*):[0-9]+:[0-9]+/);
+ if (!m) {
+ m = callerFrame.match(/at (.*(\.ts))[\?:]/);
+ if (!m)
+ m = callerFrame.match(/at (.*(\.mjs|\.js))[\?:]/);
+ }
+ if (!m) {
+ console.error(stackTraceFrames);
+ console.error(
+ `Can't use relative paths to specify assets location because the source file location could not be determined (unexpected location "${callerFrame}").`
+ );
+ return "";
+ }
+ return m[1];
+}
+var gResolvedScriptUrl = null;
+var _a, _b;
+var gScriptUrl = ((_b = (_a = globalThis == null ? void 0 : globalThis.document) == null ? void 0 : _a.currentScript) == null ? void 0 : _b.src) || getFileUrl();
+async function resolveUrl(url) {
+ if (/^(?:[a-z+]+:)?\/\//i.test(url))
+ return new URL(url).href;
+ if (gResolvedScriptUrl === null) {
+ try {
+ const response = await fetch(gScriptUrl, { method: "HEAD" });
+ if (response.status === 200)
+ gResolvedScriptUrl = response.url;
+ } catch (e) {
+ console.error(`Invalid URL "${url}" (relative to "${gScriptUrl}")`);
+ }
+ }
+ return new URL(url, gResolvedScriptUrl != null ? gResolvedScriptUrl : gScriptUrl).href;
+}
+
+// src/core/fonts.ts
+function makeFontFace(name, source, descriptors = {}) {
+ return new FontFace(
+ name,
+ `url(${source}.woff2) format('woff2')`,
+ descriptors
+ );
+}
+var gFontsState = "not-loaded";
+async function reloadFonts() {
+ gFontsState = "not-loaded";
+ return loadFonts();
+}
+async function loadFonts() {
+ var _a3;
+ if (gFontsState !== "not-loaded")
+ return;
+ gFontsState = "loading";
+ const useStaticFonts = (_a3 = getComputedStyle(document.documentElement).getPropertyValue(
+ "--ML__static-fonts"
+ )) != null ? _a3 : false;
+ if (useStaticFonts) {
+ gFontsState = "ready";
+ return;
+ }
+ document.body.classList.remove("ML__fonts-did-not-load");
+ if ("fonts" in document) {
+ const fontFamilies = [
+ "KaTeX_Main",
+ "KaTeX_Math",
+ "KaTeX_AMS",
+ "KaTeX_Caligraphic",
+ "KaTeX_Fraktur",
+ "KaTeX_SansSerif",
+ "KaTeX_Script",
+ "KaTeX_Typewriter",
+ "KaTeX_Size1",
+ "KaTeX_Size2",
+ "KaTeX_Size3",
+ "KaTeX_Size4"
+ ];
+ const fontsInDocument = Array.from(document.fonts).map((f) => f.family);
+ if (fontFamilies.every((x) => fontsInDocument.includes(x))) {
+ gFontsState = "ready";
+ return;
+ }
+ if (!window.MathfieldElement.fontsDirectory) {
+ gFontsState = "not-loaded";
+ return;
+ }
+ const fontsFolder = await resolveUrl(
+ window.MathfieldElement.fontsDirectory
+ );
+ if (!fontsFolder) {
+ document.body.classList.add("ML__fonts-did-not-load");
+ gFontsState = "error";
+ return;
+ }
+ const fonts = [
+ ["KaTeX_Main-Regular"],
+ ["KaTeX_Main-BoldItalic", { style: "italic", weight: "bold" }],
+ ["KaTeX_Main-Bold", { weight: "bold" }],
+ ["KaTeX_Main-Italic", { style: "italic" }],
+ ["KaTeX_Math-Italic", { style: "italic" }],
+ ["KaTeX_Math-BoldItalic", { style: "italic", weight: "bold" }],
+ ["KaTeX_AMS-Regular"],
+ ["KaTeX_Caligraphic-Regular"],
+ ["KaTeX_Caligraphic-Bold", { weight: "bold" }],
+ ["KaTeX_Fraktur-Regular"],
+ ["KaTeX_Fraktur-Bold", { weight: "bold" }],
+ ["KaTeX_SansSerif-Regular"],
+ ["KaTeX_SansSerif-Bold", { weight: "bold" }],
+ ["KaTeX_SansSerif-Italic", { style: "italic" }],
+ ["KaTeX_Script-Regular"],
+ ["KaTeX_Typewriter-Regular"],
+ ["KaTeX_Size1-Regular"],
+ ["KaTeX_Size2-Regular"],
+ ["KaTeX_Size3-Regular"],
+ ["KaTeX_Size4-Regular"]
+ ].map(
+ (x) => makeFontFace(
+ x[0].replace(/-[a-zA-Z]+$/, ""),
+ `${fontsFolder}/${x[0]}`,
+ x[1]
+ )
+ );
+ try {
+ const loadedFonts = await Promise.all(
+ fonts.map((x) => {
+ try {
+ return x.load();
+ } catch (e) {
+ }
+ return void 0;
+ })
+ );
+ loadedFonts.forEach((font) => document.fonts.add(font));
+ gFontsState = "ready";
+ return;
+ } catch (error) {
+ console.error(
+ `MathLive 0.98.5: The math fonts could not be loaded from "${fontsFolder}"`,
+ { cause: error }
+ );
+ document.body.classList.add("ML__fonts-did-not-load");
+ }
+ gFontsState = "error";
+ }
+}
+
+// src/editor-mathfield/render.ts
+function hash(latex) {
+ let result = 0;
+ for (let i = 0; i < latex.length; i++) {
+ result = result * 31 + latex.charCodeAt(i);
+ result = result | 0;
+ }
+ return Math.abs(result);
+}
+function requestUpdate(mathfield, options) {
+ if (!mathfield)
+ return;
+ if (mathfield.dirty)
+ return;
+ mathfield.dirty = true;
+ requestAnimationFrame(() => {
+ if (isValidMathfield(mathfield) && mathfield.dirty) {
+ mathfield.atomBoundsCache = /* @__PURE__ */ new Map();
+ render(mathfield, options);
+ mathfield.atomBoundsCache = void 0;
+ }
+ });
+}
+function makeBox(mathfield, renderOptions) {
+ var _a3;
+ renderOptions = renderOptions != null ? renderOptions : {};
+ const context = new Context({
+ from: __spreadProps(__spreadValues({}, mathfield.context), {
+ atomIdsSettings: {
+ // Using the hash as a seed for the ID
+ // keeps the IDs the same until the content of the field changes.
+ seed: renderOptions.forHighlighting ? hash(
+ Atom.serialize([mathfield.model.root], {
+ expandMacro: false,
+ defaultMode: mathfield.options.defaultMode
+ })
+ ) : "random",
+ // The `groupNumbers` flag indicates that extra boxes should be generated
+ // to represent group of atoms, for example, a box to group
+ // consecutive digits to represent a number.
+ groupNumbers: (_a3 = renderOptions.forHighlighting) != null ? _a3 : false
+ },
+ letterShapeStyle: mathfield.options.letterShapeStyle
+ }),
+ mathstyle: mathfield.options.defaultMode === "inline-math" ? "textstyle" : "displaystyle"
+ });
+ const base = mathfield.model.root.render(context);
+ const wrapper = makeStruts(applyInterBoxSpacing(base, context), {
+ classes: mathfield.hasEditablePrompts ? "ML__latex ML__prompting" : "ML__latex",
+ attributes: {
+ // Sometimes Google Translate kicks in an attempts to 'translate' math
+ // This doesn't work very well, so turn off translate
+ "translate": "no",
+ // Hint to screen readers to not attempt to read this .
+ // They should use instead the 'aria-label' attribute.
+ "aria-hidden": "true"
+ }
+ });
+ return wrapper;
+}
+function contentMarkup(mathfield, renderOptions) {
+ const { model } = mathfield;
+ model.root.caret = void 0;
+ model.root.isSelected = false;
+ model.root.containsCaret = true;
+ for (const atom of model.atoms) {
+ atom.caret = void 0;
+ atom.isSelected = false;
+ atom.containsCaret = false;
+ }
+ if (model.selectionIsCollapsed) {
+ const atom = model.at(model.position);
+ atom.caret = mathfield.model.mode;
+ let ancestor = atom.parent;
+ while (ancestor) {
+ ancestor.containsCaret = true;
+ ancestor = ancestor.parent;
+ }
+ } else {
+ const atoms = model.getAtoms(model.selection, { includeChildren: true });
+ for (const atom of atoms)
+ atom.isSelected = true;
+ }
+ const box = makeBox(mathfield, renderOptions);
+ return box.toMarkup();
+}
+function render(mathfield, renderOptions) {
+ if (!isValidMathfield(mathfield))
+ return;
+ renderOptions != null ? renderOptions : renderOptions = {};
+ const keyboardToggle = mathfield.element.querySelector(
+ "[part=virtual-keyboard-toggle]"
+ );
+ if (keyboardToggle)
+ keyboardToggle.style.display = mathfield.hasEditableContent ? "" : "none";
+ const field = mathfield.field;
+ if (!field)
+ return;
+ const hasFocus = mathfield.isSelectionEditable && mathfield.hasFocus();
+ const isFocused = field.classList.contains("ML__focused");
+ if (isFocused && !hasFocus)
+ field.classList.remove("ML__focused");
+ else if (!isFocused && hasFocus)
+ field.classList.add("ML__focused");
+ let content = contentMarkup(mathfield, renderOptions);
+ const menuToggle = mathfield.element.querySelector("[part=menu-toggle]");
+ if (menuToggle) {
+ if (mathfield.model.atoms.length <= 1 || mathfield.disabled || mathfield.readOnly && !mathfield.hasEditableContent || mathfield.userSelect === "none")
+ menuToggle.style.display = "none";
+ else
+ menuToggle.style.display = "";
+ }
+ if (mathfield.model.atoms.length <= 1) {
+ const placeholder = mathfield.options.contentPlaceholder;
+ if (placeholder) {
+ content += `${convertLatexToMarkup(
+ placeholder
+ )}`;
+ }
+ }
+ field.innerHTML = window.MathfieldElement.createHTML(content);
+ renderSelection(mathfield, renderOptions.interactive);
+ mathfield.dirty = false;
+}
+function renderSelection(mathfield, interactive) {
+ const field = mathfield.field;
+ if (!field)
+ return;
+ for (const element of field.querySelectorAll(
+ ".ML__selection, .ML__contains-highlight"
+ ))
+ element.remove();
+ if (!(interactive != null ? interactive : false) && gFontsState !== "error" && gFontsState !== "ready") {
+ setTimeout(() => {
+ if (gFontsState === "ready")
+ renderSelection(mathfield);
+ else
+ setTimeout(() => renderSelection(mathfield), 128);
+ }, 32);
+ }
+ const model = mathfield.model;
+ const offsetWidth = field.offsetWidth;
+ const actualWidth = field.getBoundingClientRect().width;
+ let scaleFactor = Math.floor(actualWidth) / offsetWidth;
+ scaleFactor = isNaN(scaleFactor) ? 1 : scaleFactor;
+ if (model.selectionIsCollapsed) {
+ updateSuggestionPopoverPosition(mathfield, { deferred: true });
+ let atom = model.at(model.position);
+ while (atom && atom.type !== "prompt" && !(atom.containsCaret && atom.displayContainsHighlight))
+ atom = atom.parent;
+ if ((atom == null ? void 0 : atom.containsCaret) && atom.displayContainsHighlight) {
+ const bounds = adjustForScrolling(
+ mathfield,
+ getAtomBounds(mathfield, atom),
+ scaleFactor
+ );
+ if (bounds) {
+ bounds.left /= scaleFactor;
+ bounds.right /= scaleFactor;
+ bounds.top /= scaleFactor;
+ bounds.bottom /= scaleFactor;
+ const element = document.createElement("div");
+ element.classList.add("ML__contains-highlight");
+ element.style.position = "absolute";
+ element.style.left = `${bounds.left + 1}px`;
+ element.style.top = `${Math.ceil(bounds.top)}px`;
+ element.style.width = `${Math.ceil(bounds.right - bounds.left)}px`;
+ element.style.height = `${Math.ceil(bounds.bottom - bounds.top)}px`;
+ field.insertBefore(element, field.childNodes[0]);
+ }
+ }
+ return;
+ }
+ for (const x of unionRects(
+ getSelectionBounds(mathfield, { excludeAtomsWithBackground: true })
+ )) {
+ x.left /= scaleFactor;
+ x.right /= scaleFactor;
+ x.top /= scaleFactor;
+ x.bottom /= scaleFactor;
+ const selectionElement = document.createElement("div");
+ selectionElement.classList.add("ML__selection");
+ selectionElement.style.position = "absolute";
+ selectionElement.style.left = `${x.left}px`;
+ selectionElement.style.top = `${x.top}px`;
+ selectionElement.style.width = `${Math.ceil(x.right - x.left)}px`;
+ selectionElement.style.height = `${Math.ceil(x.bottom - x.top - 1)}px`;
+ field.insertBefore(selectionElement, field.childNodes[0]);
+ }
+}
+function unionRects(rects) {
+ let result = [];
+ for (const rect of rects) {
+ let found = false;
+ for (const rect2 of result) {
+ if (rect.left === rect2.left && rect.right === rect2.right && rect.top === rect2.top && rect.bottom === rect2.bottom) {
+ found = true;
+ break;
+ }
+ }
+ if (!found)
+ result.push(rect);
+ }
+ rects = result;
+ result = [];
+ for (const rect of rects) {
+ let count = 0;
+ for (const rect2 of rects) {
+ if (rect.left >= rect2.left && rect.right <= rect2.right && rect.top >= rect2.top && rect.bottom <= rect2.bottom) {
+ count += 1;
+ if (count > 1)
+ break;
+ }
+ }
+ if (count === 1)
+ result.push(rect);
+ }
+ return result;
+}
+
+// src/editor/commands.ts
+var HAPTIC_FEEDBACK_DURATION = 3;
+var COMMANDS;
+function register2(commands, options) {
+ options = __spreadValues({
+ target: "mathfield",
+ canUndo: false,
+ audioFeedback: void 0,
+ changeContent: false,
+ changeSelection: false
+ }, options != null ? options : {});
+ if (!COMMANDS)
+ COMMANDS = {};
+ for (const selector of Object.keys(commands)) {
+ console.assert(!COMMANDS[selector], "Selector already defined: ", selector);
+ COMMANDS[selector] = __spreadProps(__spreadValues({}, options), { fn: commands[selector] });
+ }
+}
+function getCommandInfo(command) {
+ let selector;
+ if (Array.isArray(command)) {
+ if (command[0] === "performWithFeedback")
+ return getCommandInfo(command[1]);
+ selector = command[0];
+ } else
+ selector = command;
+ selector = selector.replace(
+ /-\w/g,
+ (m) => m[1].toUpperCase()
+ );
+ return COMMANDS[selector];
+}
+function getCommandTarget(command) {
+ var _a3;
+ return (_a3 = getCommandInfo(command)) == null ? void 0 : _a3.target;
+}
+function perform(mathfield, command) {
+ var _a3;
+ if (!command)
+ return false;
+ let selector;
+ let args = [];
+ let handled = false;
+ let dirty = false;
+ if (isArray(command)) {
+ selector = command[0];
+ args = command.slice(1);
+ } else
+ selector = command;
+ selector = selector.replace(
+ /-\w/g,
+ (m) => m[1].toUpperCase()
+ );
+ const info = COMMANDS[selector];
+ const commandTarget = info == null ? void 0 : info.target;
+ if (commandTarget === "model") {
+ if (!mathfield.isSelectionEditable && (info == null ? void 0 : info.changeContent)) {
+ mathfield.model.announce("plonk");
+ return false;
+ }
+ if (/^(delete|add)/.test(selector)) {
+ if (selector !== "deleteBackward")
+ mathfield.flushInlineShortcutBuffer();
+ mathfield.snapshot(selector);
+ }
+ if (!/^complete/.test(selector))
+ removeSuggestion(mathfield);
+ COMMANDS[selector].fn(mathfield.model, ...args);
+ updateAutocomplete(mathfield);
+ dirty = true;
+ handled = true;
+ } else if (commandTarget === "virtual-keyboard") {
+ dirty = (_a3 = window.mathVirtualKeyboard.executeCommand(command)) != null ? _a3 : false;
+ handled = true;
+ } else if (COMMANDS[selector]) {
+ if (!mathfield.isSelectionEditable && (info == null ? void 0 : info.changeContent)) {
+ mathfield.model.announce("plonk");
+ return false;
+ }
+ if (/^(undo|redo)/.test(selector))
+ mathfield.flushInlineShortcutBuffer();
+ dirty = COMMANDS[selector].fn(mathfield, ...args);
+ handled = true;
+ } else
+ throw new Error(`Unknown command "${selector}"`);
+ if (commandTarget !== "virtual-keyboard") {
+ if (!mathfield.model.selectionIsCollapsed || (info == null ? void 0 : info.changeSelection) && command !== "deleteBackward") {
+ mathfield.flushInlineShortcutBuffer();
+ if (!(info == null ? void 0 : info.changeContent))
+ mathfield.stopCoalescingUndo();
+ mathfield.defaultStyle = {};
+ }
+ }
+ if (dirty)
+ requestUpdate(mathfield);
+ return handled;
+}
+function performWithFeedback(mathfield, selector) {
+ var _a3;
+ if (!mathfield)
+ return false;
+ mathfield.focus();
+ if (mathfield_element_default.keypressVibration && canVibrate())
+ navigator.vibrate(HAPTIC_FEEDBACK_DURATION);
+ const info = getCommandInfo(selector);
+ window.MathfieldElement.playSound((_a3 = info == null ? void 0 : info.audioFeedback) != null ? _a3 : "keypress");
+ const result = mathfield.executeCommand(selector);
+ mathfield.scrollIntoView();
+ return result;
+}
+register2({
+ performWithFeedback: (mathfield, command) => performWithFeedback(mathfield, command)
+});
+function nextSuggestion(mathfield) {
+ updateAutocomplete(mathfield, { atIndex: mathfield.suggestionIndex + 1 });
+ return false;
+}
+function previousSuggestion(mathfield) {
+ updateAutocomplete(mathfield, { atIndex: mathfield.suggestionIndex - 1 });
+ return false;
+}
+register2(
+ { complete },
+ {
+ target: "mathfield",
+ audioFeedback: "return",
+ canUndo: true,
+ changeContent: true,
+ changeSelection: true
+ }
+);
+register2(
+ { nextSuggestion, previousSuggestion },
+ {
+ target: "mathfield",
+ audioFeedback: "keypress",
+ changeSelection: true
+ }
+);
+
+// src/virtual-keyboard/proxy.ts
+var VIRTUAL_KEYBOARD_MESSAGE = "mathlive#virtual-keyboard-message";
+function isVirtualKeyboardMessage(evt) {
+ var _a3;
+ if (evt.type !== "message")
+ return false;
+ const msg = evt;
+ return ((_a3 = msg.data) == null ? void 0 : _a3.type) === VIRTUAL_KEYBOARD_MESSAGE;
+}
+var VirtualKeyboardProxy = class _VirtualKeyboardProxy {
+ constructor() {
+ this.targetOrigin = window.origin;
+ this.originValidator = "none";
+ this._boundingRect = new DOMRect(0, 0, 0, 0);
+ this._isShifted = false;
+ window.addEventListener("message", this);
+ this.sendMessage("proxy-created");
+ this.listeners = {};
+ }
+ static get singleton() {
+ if (!this._singleton)
+ this._singleton = new _VirtualKeyboardProxy();
+ return this._singleton;
+ }
+ set alphabeticLayout(value) {
+ this.sendMessage("update-setting", { alphabeticLayout: value });
+ }
+ set layouts(value) {
+ this.sendMessage("update-setting", { layouts: value });
+ }
+ get normalizedLayouts() {
+ return [];
+ }
+ set editToolbar(value) {
+ this.sendMessage("update-setting", { editToolbar: value });
+ }
+ set actionKeycap(value) {
+ this.sendMessage("update-setting", { actionKeycap: value });
+ }
+ set shiftKeycap(value) {
+ this.sendMessage("update-setting", { shiftKeycap: value });
+ }
+ set backspaceKeycap(value) {
+ this.sendMessage("update-setting", { backspaceKeycap: value });
+ }
+ set tabKeycap(value) {
+ this.sendMessage("update-setting", { tabKeycap: value });
+ }
+ set container(value) {
+ throw new Error("Container inside an iframe cannot be changed");
+ }
+ show(options) {
+ this.sendMessage("show", options);
+ }
+ hide(options) {
+ this.sendMessage("hide", options);
+ }
+ get isShifted() {
+ return this._isShifted;
+ }
+ get visible() {
+ return this._boundingRect.height > 0;
+ }
+ set visible(value) {
+ if (value)
+ this.show();
+ else
+ this.hide();
+ }
+ get boundingRect() {
+ return this._boundingRect;
+ }
+ executeCommand(command) {
+ this.sendMessage("execute-command", { command });
+ return true;
+ }
+ updateToolbar(mf) {
+ this.sendMessage("update-toolbar", mf);
+ }
+ update(mf) {
+ this.sendMessage("update-setting", mf);
+ }
+ connect() {
+ this.sendMessage("connect");
+ }
+ disconnect() {
+ this.sendMessage("disconnect");
+ }
+ addEventListener(type, callback, _options) {
+ if (!this.listeners[type])
+ this.listeners[type] = /* @__PURE__ */ new Set();
+ if (!this.listeners[type].has(callback))
+ this.listeners[type].add(callback);
+ }
+ dispatchEvent(event) {
+ if (!this.listeners[event.type] || this.listeners[event.type].size === 0)
+ return true;
+ this.listeners[event.type].forEach((x) => {
+ if (typeof x === "function")
+ x(event);
+ else
+ x == null ? void 0 : x.handleEvent(event);
+ });
+ return !event.defaultPrevented;
+ }
+ removeEventListener(type, callback, _options) {
+ if (this.listeners[type])
+ this.listeners[type].delete(callback);
+ }
+ handleEvent(evt) {
+ if (isVirtualKeyboardMessage(evt)) {
+ if (!validateOrigin(evt.origin, this.originValidator)) {
+ throw new DOMException(
+ `Message from unknown origin (${evt.origin}) cannot be handled`,
+ "SecurityError"
+ );
+ }
+ this.handleMessage(evt.data);
+ }
+ }
+ handleMessage(msg) {
+ const { action } = msg;
+ if (action === "execute-command") {
+ const { command } = msg;
+ const commandTarget = getCommandTarget(command);
+ if (commandTarget === "virtual-keyboard")
+ this.executeCommand(command);
+ return;
+ }
+ if (action === "synchronize-proxy") {
+ this._boundingRect = msg.boundingRect;
+ this._isShifted = msg.isShifted;
+ return;
+ }
+ if (action === "geometry-changed") {
+ this._boundingRect = msg.boundingRect;
+ this.dispatchEvent(new Event("geometrychange"));
+ return;
+ }
+ }
+ sendMessage(action, payload = {}) {
+ if (!window.top) {
+ throw new DOMException(
+ `A frame does not have access to the top window and can\u2018t communicate with the keyboard. Review virtualKeyboardTargetOrigin and originValidator on mathfields embedded in an iframe`,
+ "SecurityError"
+ );
+ }
+ window.top.postMessage(
+ __spreadValues({
+ type: VIRTUAL_KEYBOARD_MESSAGE,
+ action
+ }, payload),
+ this.targetOrigin
+ );
+ }
+};
+
+// src/virtual-keyboard/data.ts
+var LAYOUTS = {
+ "numeric": {
+ label: "123",
+ labelClass: "MLK__tex-math",
+ tooltip: "keyboard.tooltip.numeric",
+ rows: [
+ [
+ {
+ latex: "x",
+ shift: "y",
+ variants: [
+ "y",
+ "z",
+ "t",
+ "r",
+ "x^2",
+ "x^n",
+ "x^{#?}",
+ "x_n",
+ "x_i",
+ "x_{#?}",
+ { latex: "f(#?)", class: "small" },
+ { latex: "g(#?)", class: "small" }
+ ]
+ },
+ { latex: "n", shift: "a", variants: ["i", "j", "p", "k", "a", "u"] },
+ "[separator-5]",
+ "[7]",
+ "[8]",
+ "[9]",
+ "[/]",
+ "[separator-5]",
+ {
+ latex: "\\exponentialE",
+ shift: "\\ln",
+ variants: ["\\exp", "\\times 10^{#?}", "\\ln", "\\log_{10}", "\\log"]
+ },
+ {
+ latex: "\\imaginaryI",
+ variants: ["\\Re", "\\Im", "\\imaginaryJ", "\\Vert #0 \\Vert"]
+ },
+ {
+ latex: "\\pi",
+ shift: "\\sin",
+ variants: [
+ "\\prod",
+ { latex: "\\theta", aside: "theta" },
+ { latex: "\\rho", aside: "rho" },
+ { latex: "\\tau", aside: "tau" },
+ "\\sin",
+ "\\cos",
+ "\\tan"
+ ]
+ }
+ ],
+ [
+ {
+ label: "<",
+ latex: "<",
+ class: "hide-shift",
+ shift: { latex: "\\le", label: "\u2264" }
+ },
+ {
+ label: ">",
+ latex: ">",
+ class: "hide-shift",
+ shift: { latex: "\\ge", label: "\u2265" }
+ },
+ "[separator-5]",
+ "[4]",
+ "[5]",
+ "[6]",
+ "[*]",
+ "[separator-5]",
+ {
+ class: "hide-shift",
+ latex: "#@^2}",
+ shift: "#@^{\\prime}}"
+ },
+ {
+ latex: "#@^{#0}}",
+ class: "hide-shift",
+ shift: "#@_{#?}"
+ },
+ {
+ class: "hide-shift",
+ latex: "\\sqrt{#0}",
+ shift: { latex: "\\sqrt[#0]{#?}}" }
+ }
+ ],
+ [
+ "[(]",
+ "[)]",
+ "[separator-5]",
+ "[1]",
+ "[2]",
+ "[3]",
+ "[-]",
+ "[separator-5]",
+ {
+ latex: "\\int^{\\infty}_{0}\\!#?\\,\\mathrm{d}x",
+ class: "small hide-shift",
+ shift: "\\int",
+ variants: [
+ { latex: "\\int_{#?}^{#?}", class: "small" },
+ { latex: "\\int", class: "small" },
+ { latex: "\\iint", class: "small" },
+ { latex: "\\iiint", class: "small" },
+ { latex: "\\oint", class: "small" },
+ "\\mathrm{d}x",
+ { latex: "\\dfrac{\\mathrm{d}}{\\mathrm{d} x}", class: "small" },
+ { latex: "\\frac{\\partial}{\\partial x}", class: "small" },
+ "\\partial"
+ ]
+ },
+ {
+ class: "hide-shift",
+ latex: "\\forall",
+ shift: "\\exists"
+ },
+ { label: "[backspace]", width: 1 }
+ ],
+ [
+ { label: "[shift]", width: 2 },
+ "[separator-5]",
+ "[0]",
+ "[.]",
+ "[=]",
+ "[+]",
+ "[separator-5]",
+ "[left]",
+ "[right]",
+ { label: "[action]", width: 1 }
+ ]
+ ]
+ },
+ "greek": {
+ label: "αβγ",
+ labelClass: "MLK__tex-math",
+ tooltip: "keyboard.tooltip.greek",
+ rows: [
+ [
+ {
+ label: "φ",
+ class: "MLK__tex hide-shift",
+ insert: "\\varphi",
+ aside: "phi var.",
+ shift: "\\Phi"
+ },
+ {
+ label: "ς",
+ class: "MLK__tex hide-shift",
+ insert: "\\varsigma",
+ aside: "sigma var.",
+ shift: "\\Sigma"
+ },
+ {
+ label: "ϵ",
+ class: "MLK__tex hide-shift",
+ insert: "\\epsilon",
+ aside: "espilon",
+ shift: '\\char"0190'
+ },
+ {
+ label: "ρ",
+ class: "MLK__tex hide-shift",
+ insert: "\\rho",
+ aside: "rho",
+ shift: '\\char"3A1'
+ },
+ {
+ label: "τ",
+ class: "MLK__tex hide-shift",
+ insert: "\\tau",
+ aside: "tau",
+ shift: '\\char"3A4'
+ },
+ {
+ label: "υ",
+ class: "MLK__tex hide-shift",
+ insert: "\\upsilon",
+ aside: "upsilon",
+ shift: "\\Upsilon"
+ },
+ {
+ label: "θ",
+ class: "MLK__tex hide-shift",
+ insert: "\\theta",
+ aside: "theta",
+ shift: "\\Theta"
+ },
+ {
+ label: "ι",
+ class: "MLK__tex hide-shift",
+ insert: "\\iota",
+ aside: "iota",
+ shift: '\\char"399'
+ },
+ {
+ label: "ο",
+ class: "MLK__tex hide-shift",
+ insert: "\\omicron",
+ aside: "omicron",
+ shift: '\\char"39F'
+ },
+ {
+ label: "π",
+ class: "MLK__tex hide-shift",
+ insert: "\\pi",
+ aside: "pi",
+ shift: "\\Pi"
+ }
+ ],
+ [
+ "[separator-5]",
+ {
+ label: "α",
+ class: "MLK__tex hide-shift",
+ insert: "\\alpha",
+ aside: "alpha",
+ shift: '\\char"391'
+ },
+ {
+ label: "σ",
+ class: "MLK__tex hide-shift",
+ insert: "\\sigma",
+ aside: "sigma",
+ shift: "\\Sigma"
+ },
+ {
+ label: "δ",
+ class: "MLK__tex hide-shift",
+ insert: "\\delta",
+ aside: "delta",
+ shift: "\\Delta"
+ },
+ {
+ latex: "\\phi",
+ class: "MLK__tex hide-shift",
+ insert: "\\phi",
+ aside: "phi",
+ shift: "\\Phi"
+ },
+ {
+ label: "γ",
+ class: "MLK__tex hide-shift",
+ insert: "\\gamma",
+ aside: "gamma",
+ shift: "\\Gamma"
+ },
+ {
+ label: "η",
+ class: "MLK__tex hide-shift",
+ insert: "\\eta",
+ aside: "eta",
+ shift: '\\char"397'
+ },
+ {
+ label: "ξ",
+ class: "MLK__tex hide-shift",
+ insert: "\\xi",
+ aside: "xi",
+ shift: "\\Xi"
+ },
+ {
+ label: "κ",
+ class: "MLK__tex hide-shift",
+ insert: "\\kappa",
+ aside: "kappa",
+ shift: "\\Kappa"
+ },
+ {
+ label: "λ",
+ class: "MLK__tex hide-shift",
+ insert: "\\lambda",
+ aside: "lambda",
+ shift: "\\Lambda"
+ },
+ "[separator-5]"
+ ],
+ [
+ "[shift]",
+ {
+ label: "ζ",
+ class: "MLK__tex hide-shift",
+ insert: "\\zeta",
+ aside: "zeta",
+ shift: '\\char"396'
+ },
+ {
+ label: "χ",
+ class: "MLK__tex hide-shift",
+ insert: "\\chi",
+ aside: "chi",
+ shift: '\\char"3A7'
+ },
+ {
+ label: "ψ",
+ class: "MLK__tex hide-shift",
+ insert: "\\psi",
+ aside: "zeta",
+ shift: "\\Psi"
+ },
+ {
+ label: "ω",
+ class: "MLK__tex hide-shift",
+ insert: "\\omega",
+ aside: "omega",
+ shift: "\\Omega"
+ },
+ {
+ label: "β",
+ class: "MLK__tex hide-shift",
+ insert: "\\beta",
+ aside: "beta",
+ shift: '\\char"392'
+ },
+ {
+ label: "ν",
+ class: "MLK__tex hide-shift",
+ insert: "\\nu",
+ aside: "nu",
+ shift: '\\char"39D'
+ },
+ {
+ label: "μ",
+ class: "MLK__tex hide-shift",
+ insert: "\\mu",
+ aside: "mu",
+ shift: '\\char"39C'
+ },
+ "[backspace]"
+ ],
+ [
+ "[separator]",
+ {
+ label: "ε",
+ class: "MLK__tex",
+ insert: "\\varepsilon",
+ aside: "espilon var."
+ },
+ {
+ label: "ϑ",
+ class: "MLK__tex",
+ insert: "\\vartheta",
+ aside: "theta var."
+ },
+ {
+ label: "ϰ",
+ class: "MLK__tex",
+ insert: "\\varkappa",
+ aside: "kappa var."
+ },
+ {
+ label: "ϖ",
+ class: "MLK__tex",
+ insert: "\\varpi",
+ aside: "pi var."
+ },
+ {
+ label: "ϱ",
+ class: "MLK__tex",
+ insert: "\\varrho",
+ aside: "rho var."
+ },
+ "[left]",
+ "[right]",
+ "[action]"
+ ]
+ ]
+ },
+ "symbols": {
+ label: "∞\u2260\u2208",
+ labelClass: "MLK__tex",
+ tooltip: "keyboard.tooltip.symbols",
+ rows: [
+ [
+ {
+ latex: "\\sin",
+ shift: "\\sin^{-1}",
+ variants: [
+ { class: "small", latex: "\\sinh" },
+ { class: "small", latex: "\\sin^{-1}" },
+ { class: "small", latex: "\\arsinh" }
+ ]
+ },
+ "\\ln",
+ {
+ latex: "\\mathrm{abs}",
+ insert: "\\mathrm{abs}\\left(#0\\right)"
+ },
+ {
+ latex: "\\rarr",
+ shift: "\\rArr",
+ variants: [
+ { latex: "\\implies", aside: "implies" },
+ { latex: "\\to", aside: "to" },
+ "\\dashv",
+ { latex: "\\roundimplies", aside: "round implies" }
+ ]
+ },
+ {
+ latex: "\\exists",
+ variants: ["\\nexists"],
+ shift: "\\nexists"
+ },
+ { latex: "\\in", shift: "\\notin", variants: ["\\notin", "\\owns"] },
+ "\\cup",
+ {
+ latex: "\\overrightarrow{#@}",
+ shift: "\\overleftarrow{#@}",
+ variants: [
+ "\\overleftarrow{#@}",
+ "\\bar{#@}",
+ "\\vec{#@}",
+ "\\hat{#@}",
+ "\\check{#@}",
+ "\\dot{#@}",
+ "\\ddot{#@}",
+ "\\mathring{#@}",
+ "\\breve{#@}",
+ "\\acute{#@}",
+ "\\tilde{#@}",
+ "\\grave{#@}"
+ ]
+ },
+ {
+ class: "small",
+ latex: "\\lim_{#?}",
+ shift: "\\lim_{x\\to\\infty}",
+ variants: [
+ { class: "small", latex: "\\liminf_{#?}" },
+ { class: "small", latex: "\\limsup_{#?}" }
+ ]
+ },
+ "\\exponentialE"
+ ],
+ [
+ {
+ latex: "\\cos",
+ shift: "\\cos^{-1}",
+ variants: [
+ { class: "small", latex: "\\cosh" },
+ { class: "small", latex: "\\cos^{-1}" },
+ { class: "small", latex: "\\arcosh" }
+ ]
+ },
+ {
+ latex: "\\log",
+ shift: "\\log_{10}",
+ variants: ["\\log_{#0}", "\\log_{10}"]
+ },
+ "\\left\\vert#0\\right\\vert",
+ {
+ latex: "\\larr",
+ shift: "\\lArr",
+ variants: [
+ { latex: "\\impliedby", aside: "implied by" },
+ { latex: "\\gets", aside: "gets" },
+ "\\lArr",
+ "\\vdash",
+ { latex: "\\models", aside: "models" }
+ ]
+ },
+ {
+ latex: "\\forall",
+ shift: "\\lnot",
+ variants: [
+ { latex: "\\land", aside: "and" },
+ { latex: "\\lor", aside: "or" },
+ { latex: "\\oplus", aside: "xor" },
+ { latex: "\\lnot", aside: "not" },
+ { latex: "\\downarrow", aside: "nor" },
+ { latex: "\\uparrow", aside: "nand" },
+ { latex: "\\curlywedge", aside: "nor" },
+ { latex: "\\bar\\curlywedge", aside: "nand" }
+ // {latex:'\\barwedge', aside:'bar wedge'},
+ // {latex:'\\curlyvee', aside:'curly vee'},
+ // {latex:'\\veebar', aside:'vee bar'},
+ ]
+ },
+ { latex: "\\ni", shift: "\\not\\owns" },
+ "\\cap",
+ {
+ latex: "\\overline{#@}",
+ shift: "\\underline{#@}",
+ variants: [
+ "\\overbrace{#@}",
+ "\\overlinesegment{#@}",
+ "\\overleftrightarrow{#@}",
+ "\\overrightarrow{#@}",
+ "\\overleftarrow{#@}",
+ "\\overgroup{#@}",
+ "\\underbrace{#@}",
+ "\\underlinesegment{#@}",
+ "\\underleftrightarrow{#@}",
+ "\\underrightarrow{#@}",
+ "\\underleftarrow{#@}",
+ "\\undergroup{#@}"
+ ]
+ },
+ {
+ class: "hide-shift",
+ latex: "\\int",
+ shift: "\\iint",
+ variants: [
+ { latex: "\\int_{#?}^{#?}", class: "small" },
+ { latex: "\\int", class: "small" },
+ { latex: "\\smallint", class: "small" },
+ { latex: "\\iint", class: "small" },
+ { latex: "\\iiint", class: "small" },
+ { latex: "\\oint", class: "small" },
+ "\\intop",
+ "\\iiint",
+ "\\oiint",
+ "\\oiiint",
+ "\\intclockwise",
+ "\\varointclockwise",
+ "\\ointctrclockwise",
+ "\\intctrclockwise"
+ ]
+ },
+ { latex: "\\pi", shift: "\\tau", variants: ["\\tau"] }
+ ],
+ [
+ {
+ latex: "\\tan",
+ shift: "\\tan^{-1}",
+ variants: [
+ { class: "small", latex: "\\tanh" },
+ { class: "small", latex: "\\tan^{-1}" },
+ { class: "small", latex: "\\artanh" },
+ { class: "small", latex: "\\arctan" },
+ { class: "small", latex: "\\arctg" },
+ { class: "small", latex: "\\tg" }
+ ]
+ },
+ {
+ latex: "\\exp",
+ insert: "\\exp\\left(#0\\right)",
+ variants: ["\\exponentialE^{#0}"]
+ },
+ "\\left\\Vert#0\\right\\Vert",
+ {
+ latex: "\\lrArr",
+ shift: "\\leftrightarrow",
+ variants: [
+ { latex: "\\iff", aside: "if and only if" },
+ "\\leftrightarrow",
+ "\\leftrightarrows",
+ "\\Leftrightarrow",
+ { latex: "^\\biconditional", aside: "biconditional" }
+ ]
+ },
+ { latex: "\\vert", shift: "!" },
+ {
+ latex: "#@^{\\complement}",
+ aside: "complement",
+ variants: [
+ { latex: "\\setminus", aside: "set minus" },
+ { latex: "\\smallsetminus", aside: "small set minus" }
+ ]
+ },
+ {
+ latex: "\\subset",
+ shift: "\\subseteq",
+ variants: [
+ "\\subset",
+ "\\subseteq",
+ "\\subsetneq",
+ "\\varsubsetneq",
+ "\\subsetneqq",
+ "\\nsubset",
+ "\\nsubseteq",
+ "\\supset",
+ "\\supseteq",
+ "\\supsetneq",
+ "\\supsetneqq",
+ "\\nsupset",
+ "\\nsupseteq"
+ ]
+ },
+ {
+ latex: "#@^{\\prime}",
+ shift: "#@^{\\doubleprime}",
+ variants: ["#@^{\\doubleprime}", "#@\\degree"]
+ },
+ {
+ latex: "\\mathrm{d}",
+ shift: "\\partial",
+ variants: [
+ "\\mathrm{d}x",
+ { latex: "\\dfrac{\\mathrm{d}}{\\mathrm{d} x}", class: "small" },
+ { latex: "\\frac{\\partial}{\\partial x}", class: "small" },
+ "\\partial"
+ ]
+ },
+ {
+ latex: "\\infty",
+ variants: ["\\aleph_0", "\\aleph_1", "\\omega", "\\mathfrak{m}"]
+ }
+ ],
+ [
+ { label: "[shift]", width: 2 },
+ {
+ class: "box",
+ latex: ",",
+ shift: ";",
+ variants: [";", "?"]
+ },
+ {
+ class: "box",
+ latex: "\\colon",
+ shift: "\\Colon",
+ variants: [
+ { latex: "\\Colon", aside: "such that", class: "box" },
+ { latex: ":", aside: "ratio", class: "box" },
+ { latex: "\\vdots", aside: "", class: "box" },
+ { latex: "\\ddots", aside: "", class: "box" },
+ { latex: "\\ldotp", aside: "low dot", class: "box" },
+ { latex: "\\cdotp", aside: "center dot", class: "box" },
+ { latex: "\\ldots", aside: "low ellipsis", class: "box" },
+ { latex: "\\cdots", aside: "center ellipsis", class: "box" },
+ { latex: "\\therefore", aside: "therefore", class: "box" },
+ { latex: "\\because", aside: "because", class: "box" }
+ ]
+ },
+ {
+ class: "box",
+ latex: "\\cdot",
+ aside: "centered dot",
+ shift: "\\ast",
+ variants: [
+ "\\circ",
+ "\\bigcirc",
+ "\\bullet",
+ "\\odot",
+ "\\oslash",
+ "\\circledcirc",
+ "\\ast",
+ "\\star",
+ "\\times",
+ "\\doteq",
+ "\\doteqdot"
+ ]
+ },
+ "[separator]",
+ "[left]",
+ "[right]",
+ {
+ label: "[backspace]",
+ width: 1,
+ class: "action hide-shift"
+ },
+ { label: "[action]", width: 1 }
+ ]
+ ]
+ },
+ "compact": {
+ label: "compact",
+ rows: [
+ [
+ "[+]",
+ "[-]",
+ "[*]",
+ "[/]",
+ "[=]",
+ "[.]",
+ "[(]",
+ "[)]",
+ "\\sqrt{#0}",
+ "#@^{#?}"
+ ],
+ ["[1]", "[2]", "[3]", "[4]", "[5]", "[6]", "[7]", "[8]", "[9]", "[0]"],
+ ["[hr]"],
+ [
+ "[undo]",
+ "[redo]",
+ "[separator]",
+ "[separator]",
+ "[separator]",
+ "[left]",
+ "[right]",
+ { label: "[backspace]", class: "action hide-shift" },
+ "[hide-keyboard]"
+ ]
+ ]
+ },
+ "minimalist": {
+ label: "minimalist",
+ layers: [
+ {
+ style: `
+ .minimalist-backdrop {
+ display: flex;
+ justify-content: center;
+ }
+ .minimalist-container {
+ --keycap-height: 40px;
+ --keycap-max-width: 53px;
+ --keycap-small-font-size: 12px;
+ background: var(--keyboard-background);
+ padding: 20px;
+ border-top-left-radius: 8px;
+ border-top-right-radius: 8px;
+ border: 1px solid var(--keyboard-border);
+ box-shadow: 0 0 32px rgb(0 0 0 / 30%);
+ }
+ `,
+ backdrop: "minimalist-backdrop",
+ container: "minimalist-container",
+ rows: [
+ [
+ "+",
+ "-",
+ "\\times",
+ { latex: "\\frac{#@}{#0}", class: "small" },
+ "=",
+ "[.]",
+ "(",
+ ")",
+ { latex: "\\sqrt{#0}", class: "small" },
+ { latex: "#@^{#?}", class: "small" }
+ ],
+ ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"],
+ ["[hr]"],
+ [
+ "[undo]",
+ "[redo]",
+ "[separator]",
+ "[separator]",
+ "[separator]",
+ "[left]",
+ "[right]",
+ { label: "[backspace]", class: "action hide-shift" },
+ "[hide-keyboard]"
+ ]
+ ]
+ }
+ ]
+ },
+ "numeric-only": {
+ label: "123",
+ labelClass: "MLK__tex-math",
+ tooltip: "keyboard.tooltip.numeric",
+ id: "numeric-only",
+ rows: [
+ ["7", "8", "9", "[separator]", { label: "[backspace]", width: 2 }],
+ ["4", "5", "6", "[separator]", "[separator]", "[separator]"],
+ ["1", "2", "3", "[separator]", "[separator]", "[separator]"],
+ [
+ "0",
+ { label: "[.]", variants: [] },
+ "-",
+ "[separator]",
+ "[left]",
+ "[right]"
+ ]
+ ]
+ }
+};
+
+// src/virtual-keyboard/variants.ts
+var VARIANTS2 = {
+ // '0-extended': [
+ // '\\emptyset',
+ // '\\varnothing',
+ // '\\infty',
+ // { latex: '#?_0', insert: '#@_0' },
+ // '\\circ',
+ // '\\bigcirc',
+ // '\\bullet',
+ // ],
+ "0": ["\\varnothing", "\\infty"],
+ "1": ["\\frac{1}{#@}", "#@^{-1}", "\\times 10^{#?}", "\\phi", "\\imaginaryI"],
+ "2": ["\\frac{1}{2}", "#@^2", "\\sqrt2", "\\exponentialE"],
+ "3": ["\\frac{1}{3}", "#@^3", "\\sqrt3", "\\pi"],
+ "4": ["\\frac{1}{4}", "#@^4"],
+ "5": ["\\frac{1}{5}", "#@^5", "\\sqrt5"],
+ "6": ["\\frac{1}{6}", "#@^6"],
+ "7": ["\\frac{1}{7}", "#@^7"],
+ "8": ["\\frac{1}{8}", "#@^8"],
+ "9": ["\\frac{1}{9}", "#@^9"],
+ ".": [".", ",", ";", "\\colon"],
+ ",": ["{,}", ".", ";", "\\colon"],
+ "a": [
+ { latex: "\\aleph", aside: "aleph" },
+ { latex: "\\forall", aside: "for all" },
+ "\xE0",
+ "\xE1",
+ "\xE2",
+ "\xE4",
+ "\xE6"
+ ],
+ "b": [{ latex: "\\beth", aside: "beth" }],
+ "c": [{ latex: "\\C", aside: "set of complex numbers" }, "\xE7"],
+ "d": [{ latex: "\\daleth", aside: "daleth" }],
+ "e": [
+ { latex: "\\exponentialE", aside: "exponential e" },
+ { latex: "\\exists", aside: "there is" },
+ { latex: "\\nexists", aside: "there isn\u2019t" },
+ "\xE8",
+ "\xE9",
+ "\xEA",
+ "\xEB"
+ ],
+ "g": [{ latex: "\\gimel", aside: "gimel" }],
+ "h": [
+ { latex: "\\hbar", aside: "h bar" },
+ { latex: "\\hslash", aside: "h slash" }
+ ],
+ "i": [{ latex: "\\imaginaryI", aside: "imaginary i" }, "\xEC", "\xED", "\xEE", "\xEF"],
+ "j": [{ latex: "\\imaginaryJ", aside: "imaginary j" }],
+ "l": [{ latex: "\\ell", aside: "ell" }],
+ "n": [{ latex: "\\mathbb{N}", aside: "set of natural numbers" }, "\xF1"],
+ "o": ["\xF8", "\u0153", "\xF2", "\xF3", "\xF4", "\xF6", "\u0153"],
+ "p": [{ latex: "\\mathbb{P}", aside: "set of primes" }],
+ "q": [{ latex: "\\mathbb{Q}", aside: "set of rational numbers" }],
+ "r": [{ latex: "\\mathbb{R}", aside: "set of real numbers" }],
+ "u": ["\xF9", "\xFA", "\xFB", "\xFC"],
+ "z": [{ latex: "\\mathbb{Z}", aside: "set of integers" }],
+ "y": ["\xFD", "\xFF"],
+ "space": [
+ {
+ latex: '\\char"203A\\!\\char"2039',
+ insert: "\\!",
+ aside: "negative thin space
\u207B\xB3\u29F8\u2081\u2088 em"
+ },
+ {
+ latex: '\\char"203A\\,\\char"2039',
+ insert: "\\,",
+ aside: "thin space
\xB3\u29F8\u2081\u2088 em"
+ },
+ {
+ latex: '\\char"203A\\:\\char"2039',
+ insert: "\\:",
+ aside: "medium space
\u2074\u29F8\u2081\u2088 em"
+ },
+ {
+ latex: '\\char"203A\\;\\char"2039',
+ insert: "\\;",
+ aside: "thick space
\u2075\u29F8\u2081\u2088 em"
+ },
+ {
+ latex: '\\char"203A\\ \\char"2039',
+ insert: "\\ ",
+ aside: "\u2153 em"
+ },
+ {
+ latex: '\\char"203A\\enspace\\char"2039',
+ insert: "\\enspace",
+ aside: "\xBD em"
+ },
+ {
+ latex: '\\char"203A\\quad\\char"2039',
+ insert: "\\quad",
+ aside: "1 em"
+ },
+ {
+ latex: '\\char"203A\\qquad\\char"2039',
+ insert: "\\qquad",
+ aside: "2 em"
+ }
+ ]
+};
+var gVariantPanelController;
+function showVariantsPanel(element, onClose) {
+ var _a3, _b3, _c2;
+ const keyboard = VirtualKeyboard.singleton;
+ if (!keyboard)
+ return;
+ const keycap = parentKeycap(element);
+ const variantDef = (_b3 = (_a3 = keyboard.getKeycap(keycap == null ? void 0 : keycap.id)) == null ? void 0 : _a3.variants) != null ? _b3 : "";
+ if (typeof variantDef === "string" && !hasVariants(variantDef) || Array.isArray(variantDef) && variantDef.length === 0) {
+ onClose == null ? void 0 : onClose();
+ return;
+ }
+ const variants = {};
+ let markup = "";
+ for (const variant of getVariants(variantDef)) {
+ const keycap2 = normalizeKeycap(variant);
+ const id = Date.now().toString(36).slice(-2) + Math.floor(Math.random() * 1e5).toString(36);
+ variants[id] = keycap2;
+ const [keycapMarkup, keycapCls] = renderKeycap(keycap2);
+ markup += `${keycapMarkup}`;
+ }
+ const variantPanel = document.createElement("div");
+ variantPanel.setAttribute("aria-hidden", "true");
+ variantPanel.className = "MLK__variant-panel";
+ variantPanel.style.height = "auto";
+ const l = Object.keys(variants).length;
+ let w = 5;
+ if (l === 1)
+ w = 1;
+ else if (l === 2 || l === 4)
+ w = 2;
+ else if (l === 3 || l === 5 || l === 6)
+ w = 3;
+ else if (l >= 7 && l < 14)
+ w = 4;
+ variantPanel.style.width = `calc(var(--variant-keycap-length) * ${w} + 12px)`;
+ variantPanel.innerHTML = mathfield_element_default.createHTML(markup);
+ Scrim.open({
+ root: (_c2 = keyboard == null ? void 0 : keyboard.container) == null ? void 0 : _c2.querySelector(".ML__keyboard"),
+ child: variantPanel
+ });
+ gVariantPanelController = new AbortController();
+ const { signal } = gVariantPanelController;
+ const position = element == null ? void 0 : element.getBoundingClientRect();
+ if (position) {
+ if (position.top - variantPanel.clientHeight < 0) {
+ variantPanel.style.width = "auto";
+ if (l <= 6)
+ variantPanel.style.height = "56px";
+ else if (l <= 12)
+ variantPanel.style.height = "108px";
+ else if (l <= 18)
+ variantPanel.style.height = "205px";
+ else
+ variantPanel.classList.add("compact");
+ }
+ const left = Math.max(
+ 0,
+ Math.min(
+ window.innerWidth - variantPanel.offsetWidth,
+ (position.left + position.right - variantPanel.offsetWidth) / 2
+ )
+ );
+ const top = position.top - variantPanel.clientHeight + 5;
+ variantPanel.style.transform = `translate(${left}px, ${top}px)`;
+ variantPanel.classList.add("is-visible");
+ requestAnimationFrame(() => {
+ variantPanel.addEventListener(
+ "pointerup",
+ (ev) => {
+ const target = parentKeycap(ev.target);
+ if (!(target == null ? void 0 : target.id) || !variants[target.id])
+ return;
+ executeKeycapCommand(variants[target.id]);
+ hideVariantsPanel();
+ onClose == null ? void 0 : onClose();
+ ev.preventDefault();
+ },
+ { capture: true, passive: false, signal }
+ );
+ variantPanel.addEventListener(
+ "pointerenter",
+ (ev) => {
+ const target = parentKeycap(ev.target);
+ if (!(target == null ? void 0 : target.id) || !variants[target.id])
+ return;
+ target.classList.add("is-active");
+ },
+ { capture: true, signal }
+ );
+ variantPanel.addEventListener(
+ "pointerleave",
+ (ev) => {
+ const target = parentKeycap(ev.target);
+ if (!(target == null ? void 0 : target.id) || !variants[target.id])
+ return;
+ target.classList.remove("is-active");
+ },
+ { capture: true, signal }
+ );
+ window.addEventListener(
+ "pointercancel",
+ () => {
+ hideVariantsPanel();
+ onClose == null ? void 0 : onClose();
+ },
+ { signal }
+ );
+ window.addEventListener(
+ "pointerup",
+ () => {
+ hideVariantsPanel();
+ onClose == null ? void 0 : onClose();
+ },
+ { signal }
+ );
+ });
+ }
+ return;
+}
+function hideVariantsPanel() {
+ gVariantPanelController == null ? void 0 : gVariantPanelController.abort();
+ gVariantPanelController = null;
+ if (Scrim.state === "open")
+ Scrim.close();
+}
+function makeVariants(id) {
+ if (id === "foreground-color") {
+ const result = [];
+ for (const color of Object.keys(FOREGROUND_COLORS)) {
+ result.push({
+ class: "swatch-button",
+ label: '',
+ command: ["applyStyle", { color }]
+ });
+ }
+ return result;
+ }
+ if (id === "background-color") {
+ const result = [];
+ for (const color of Object.keys(BACKGROUND_COLORS)) {
+ result.push({
+ class: "swatch-button",
+ label: '',
+ command: ["applyStyle", { backgroundColor: color }]
+ });
+ }
+ return result;
+ }
+ return void 0;
+}
+function hasVariants(id) {
+ return VARIANTS2[id] !== void 0;
+}
+function getVariants(id) {
+ var _a3;
+ if (typeof id !== "string")
+ return id;
+ if (!VARIANTS2[id])
+ VARIANTS2[id] = (_a3 = makeVariants(id)) != null ? _a3 : [];
+ return VARIANTS2[id];
+}
+
+// src/virtual-keyboard/utils.ts
+function jsonToCssProps(json) {
+ if (typeof json === "string")
+ return json;
+ return Object.entries(json).map(([k, v]) => `${k}:${v} !important`).join(";");
+}
+function jsonToCss(json) {
+ return Object.keys(json).map((k) => {
+ return `${k} {${jsonToCssProps(json[k])}}`;
+ }).join("");
+}
+function latexToMarkup2(latex) {
+ if (!latex)
+ return "";
+ const context = new Context();
+ const root = new Atom({
+ mode: "math",
+ type: "root",
+ body: parseLatex(latex, {
+ context,
+ args: (arg) => arg === "@" ? "{\\class{ML__box-placeholder}{\\blacksquare}}" : "\\placeholder{}"
+ })
+ });
+ const box = coalesce(
+ applyInterBoxSpacing(
+ new Box(root.render(context), { classes: "ML__base" }),
+ context
+ )
+ );
+ return makeStruts(box, { classes: "ML__latex" }).toMarkup();
+}
+function normalizeLayer(layer) {
+ var _a3;
+ if (Array.isArray(layer))
+ return layer.map((x) => normalizeLayer(x)).flat();
+ const result = typeof layer === "string" ? { markup: layer } : layer;
+ if ("rows" in result && Array.isArray(result.rows))
+ result.rows = result.rows.map((row) => row.map((x) => normalizeKeycap(x)));
+ (_a3 = result.id) != null ? _a3 : result.id = "ML__layer_" + Date.now().toString(36).slice(-2) + Math.floor(Math.random() * 1e5).toString(36);
+ return [result];
+}
+function alphabeticLayout() {
+ var _a3, _b3;
+ const keyboard = window.mathVirtualKeyboard;
+ let layoutName = keyboard.alphabeticLayout;
+ if (layoutName === "auto") {
+ const activeLayout = getActiveKeyboardLayout();
+ if (activeLayout)
+ layoutName = activeLayout.virtualLayout;
+ if (!layoutName || layoutName === "auto") {
+ layoutName = (_a3 = {
+ fr: "azerty",
+ be: "azerty",
+ al: "qwertz",
+ ba: "qwertz",
+ cz: "qwertz",
+ de: "qwertz",
+ hu: "qwertz",
+ sk: "qwertz",
+ ch: "qwertz"
+ }[l10n.locale.slice(0, 2)]) != null ? _a3 : "qwerty";
+ }
+ }
+ const ALPHABETIC_TEMPLATE = {
+ qwerty: ["qwertyuiop", " asdfghjkl ", "^zxcvbnm~"],
+ azerty: ["azertyuiop", "qsdfghjklm", "^ wxcvbn ~"],
+ qwertz: ["qwertzuiop", " asdfghjkl ", "^yxcvbnm~"],
+ dvorak: ["^ pyfgcrl ", "aoeuidhtns", "qjkxbmwvz~"],
+ colemak: [" qwfpgjluy ", "arstdhneio", "^zxcvbkm~"]
+ };
+ const template = (_b3 = ALPHABETIC_TEMPLATE[layoutName]) != null ? _b3 : ALPHABETIC_TEMPLATE.qwerty;
+ const rows = layoutName === "azerty" ? [
+ [
+ { label: "1", variants: "1" },
+ { label: "2", shift: { latex: "\xE9" }, variants: "2" },
+ { label: "3", shift: { latex: "\xF9" }, variants: "3" },
+ { label: "4", variants: "4" },
+ { label: "5", shift: { label: "(", latex: "(" }, variants: "5" },
+ { label: "6", shift: { label: ")", latex: ")" }, variants: "6" },
+ { label: "7", shift: { latex: "\xE8" }, variants: "7" },
+ { label: "8", shift: { latex: "\xEA" }, variants: "8" },
+ { label: "9", shift: { latex: "\xE7" }, variants: "9" },
+ { label: "0", shift: { latex: "\xE0" }, variants: "0" }
+ ]
+ ] : [
+ [
+ { label: "1", variants: "1" },
+ { label: "2", variants: "2" },
+ { label: "3", variants: "3" },
+ { label: "4", variants: "4" },
+ { label: "5", shift: { latex: "\\frac{#@}{#?}" }, variants: "5" },
+ { label: "6", shift: { latex: "#@^#?" }, variants: "6" },
+ { label: "7", variants: "7" },
+ { label: "8", shift: { latex: "\\times" }, variants: "8" },
+ { label: "9", shift: { label: "(", latex: "(" }, variants: "9" },
+ { label: "0", shift: { label: ")", latex: ")" }, variants: "0" }
+ ]
+ ];
+ for (const templateRow of template) {
+ const row = [];
+ for (const k of templateRow) {
+ if (/[a-z]/.test(k)) {
+ row.push({
+ label: k,
+ class: "hide-shift",
+ shift: { label: k.toUpperCase() },
+ variants: hasVariants(k) ? k : void 0
+ });
+ } else if (k === "~") {
+ if (layoutName !== "dvorak")
+ row.push("[backspace]");
+ else
+ row.push({ label: "[backspace]", width: 1 });
+ } else if (k === "^")
+ row.push("[shift]");
+ else if (k === " ")
+ row.push("[separator-5]");
+ }
+ rows.push(row);
+ }
+ rows.push([
+ // {
+ // class: 'action',
+ // label: 'text mode',
+ // command: ['performWithFeedback', ['switchMode', 'text', '', '']],
+ // },
+ "[-]",
+ "[+]",
+ "[=]",
+ { label: " ", width: 1.5 },
+ { label: ",", shift: ";", variants: ".", class: "hide-shift" },
+ "[.]",
+ "[left]",
+ "[right]",
+ { label: "[action]", width: 1.5 }
+ ]);
+ return {
+ label: "abc",
+ labelClass: "MLK__tex-math",
+ tooltip: "keyboard.tooltip.alphabetic",
+ layers: normalizeLayer({ rows })
+ };
+}
+function normalizeLayout(layout) {
+ if (layout === "alphabetic")
+ return alphabeticLayout();
+ if (typeof layout === "string") {
+ console.assert(
+ LAYOUTS[layout] !== void 0,
+ `MathLive 0.98.5: unknown keyboard layout "${layout}"`
+ );
+ return normalizeLayout(LAYOUTS[layout]);
+ }
+ let result;
+ if ("rows" in layout && Array.isArray(layout.rows)) {
+ console.assert(
+ !("layers" in layout || "markup" in layout),
+ `MathLive 0.98.5: when providing a "rows" property, "layers" and "markup" are ignored`
+ );
+ const _a3 = layout, { rows } = _a3, partialLayout = __objRest(_a3, ["rows"]);
+ result = __spreadProps(__spreadValues({}, partialLayout), {
+ layers: normalizeLayer({ rows: layout.rows })
+ });
+ } else if ("markup" in layout && typeof layout.markup === "string") {
+ const _b3 = layout, { markup } = _b3, partialLayout = __objRest(_b3, ["markup"]);
+ result = __spreadProps(__spreadValues({}, partialLayout), {
+ layers: normalizeLayer(layout.markup)
+ });
+ } else {
+ result = __spreadValues({}, layout);
+ if ("layers" in layout)
+ result.layers = normalizeLayer(layout.layers);
+ else {
+ console.error(
+ `MathLive 0.98.5: provide either a "rows", "markup" or "layers" property`
+ );
+ }
+ }
+ let hasShift = false;
+ let hasEdit = false;
+ for (const layer of result.layers) {
+ if (layer.rows) {
+ for (const keycap of layer.rows.flat()) {
+ if (isShiftKey(keycap))
+ hasShift = true;
+ const command = keycap.command;
+ if (typeof command === "string" && ["undo", "redo", "cut", "copy", "paste"].includes(command))
+ hasEdit = true;
+ }
+ }
+ }
+ if (!("displayShiftedKeycaps" in layout) || layout.displayShiftedKeycaps === void 0)
+ result.displayShiftedKeycaps = hasShift;
+ if (!("displayEditToolbar" in layout) || layout.displayEditToolbar === void 0)
+ result.displayEditToolbar = !hasEdit;
+ return result;
+}
+function makeLayoutsToolbar(keyboard, index) {
+ var _a3, _b3;
+ let markup = ``;
+ if (keyboard.normalizedLayouts.length > 1) {
+ for (const [i, l] of keyboard.normalizedLayouts.entries()) {
+ const layout = l;
+ const classes = [i === index ? "selected" : "layer-switch"];
+ if (layout.tooltip)
+ classes.push("MLK__tooltip");
+ if (layout.labelClass)
+ classes.push(...layout.labelClass.split(" "));
+ markup += `${(_b3 = layout.label) != null ? _b3 : "untitled"}`;
+ }
+ }
+ markup += "";
+ return markup;
+}
+function makeEditToolbar(options, mathfield) {
+ let result = "";
+ const toolbarOptions = options.editToolbar;
+ if (toolbarOptions === "none")
+ return "";
+ const availableActions = [];
+ if (mathfield.selectionIsCollapsed)
+ availableActions.push("undo", "redo", "pasteFromClipboard");
+ else {
+ availableActions.push(
+ "cutToClipboard",
+ "copyToClipboard",
+ "pasteFromClipboard"
+ );
+ }
+ const actionsMarkup = {
+ undo: `
+
+ `,
+ redo: `
+
+ `,
+ cutToClipboard: `
+
+
+
+ `,
+ copyToClipboard: `
+
+
+
+ `,
+ pasteFromClipboard: `
+
+
+
+ `
+ };
+ result += availableActions.map((action) => actionsMarkup[action]).join("");
+ return result;
+}
+function makeSyntheticKeycaps(elementList) {
+ for (const element of elementList)
+ makeSyntheticKeycap(element);
+}
+function makeSyntheticKeycap(element) {
+ const keyboard = VirtualKeyboard.singleton;
+ if (!keyboard)
+ return;
+ const keycap = {};
+ if (!element.id) {
+ if (element.hasAttribute("data-label"))
+ keycap.label = element.dataset.label;
+ if (element.hasAttribute("data-latex"))
+ keycap.latex = element.dataset.latex;
+ if (element.hasAttribute("data-key"))
+ keycap.key = element.dataset.key;
+ if (element.hasAttribute("data-insert"))
+ keycap.insert = element.dataset.insert;
+ if (element.hasAttribute("data-variants"))
+ keycap.variants = element.dataset.variants;
+ if (element.hasAttribute("data-aside"))
+ keycap.aside = element.dataset.aside;
+ if (element.className)
+ keycap.class = element.className;
+ if (!keycap.label && !keycap.latex && !keycap.key && !keycap.insert) {
+ keycap.latex = element.innerText;
+ keycap.label = element.innerHTML;
+ }
+ if (element.hasAttribute("data-command")) {
+ try {
+ keycap.command = JSON.parse(element.dataset.command);
+ } catch (e) {
+ }
+ }
+ element.id = keyboard.registerKeycap(keycap);
+ }
+ if (!element.innerHTML) {
+ const [markup, _] = renderKeycap(keycap);
+ element.innerHTML = window.MathfieldElement.createHTML(markup);
+ }
+}
+function injectStylesheets() {
+ injectStylesheet("virtual-keyboard");
+ injectStylesheet("core");
+ void loadFonts();
+}
+function releaseStylesheets() {
+ releaseStylesheet("core");
+ releaseStylesheet("virtual-keyboard");
+}
+var SVG_ICONS = ``;
+function makeKeyboardElement(keyboard) {
+ keyboard.resetKeycapRegistry();
+ injectStylesheets();
+ const result = document.createElement("div");
+ result.className = "ML__keyboard";
+ const plate = document.createElement("div");
+ plate.className = "MLK__plate";
+ plate.innerHTML = window.MathfieldElement.createHTML(
+ SVG_ICONS + keyboard.normalizedLayouts.map((x, i) => makeLayout(keyboard, x, i)).join("")
+ );
+ const backdrop = document.createElement("div");
+ backdrop.className = "MLK__backdrop";
+ backdrop.appendChild(plate);
+ result.appendChild(backdrop);
+ result.addEventListener("pointerdown", handlePointerDown, { passive: false });
+ const toolbars = result.querySelectorAll(".ML__edit-toolbar");
+ if (toolbars) {
+ for (const toolbar of toolbars) {
+ toolbar.addEventListener("click", (ev) => {
+ var _a3, _b3;
+ let target = ev.target;
+ let command = "";
+ while (target && !command) {
+ command = (_a3 = target == null ? void 0 : target.getAttribute("data-command")) != null ? _a3 : "";
+ target = (_b3 = target == null ? void 0 : target.parentElement) != null ? _b3 : null;
+ }
+ if (command)
+ keyboard.executeCommand(JSON.parse(command));
+ });
+ }
+ }
+ makeSyntheticKeycaps(
+ result.querySelectorAll(
+ ".MLK__keycap, .action, .fnbutton, .bigfnbutton"
+ )
+ );
+ const layerElements = result.querySelectorAll(".MLK__layer");
+ console.assert(layerElements.length > 0, "No virtual keyboards available");
+ for (const x of layerElements)
+ x.addEventListener("pointerdown", (evt) => evt.preventDefault());
+ keyboard.currentLayer = keyboard.latentLayer;
+ return result;
+}
+function makeLayout(keyboard, layout, index) {
+ const markup = [];
+ if (!("layers" in layout))
+ return "";
+ for (const layer of layout.layers) {
+ markup.push(``);
+ if (keyboard.normalizedLayouts.length > 1 || layout.displayEditToolbar) {
+ markup.push(``);
+ }
+ markup.push(makeLayer(keyboard, layer));
+ markup.push("");
+ }
+ return markup.join("");
+}
+function makeLayer(keyboard, layer) {
+ if (typeof layer === "string")
+ return layer;
+ let layerMarkup = "";
+ if (typeof layer.style === "string")
+ layerMarkup += ``;
+ else if (typeof layer.style === "object")
+ layerMarkup += ``;
+ if (layer.backdrop)
+ layerMarkup += ``;
+ if (layer.container)
+ layerMarkup += ``;
+ if (layer.rows) {
+ layerMarkup += ``;
+ for (const row of layer.rows) {
+ layerMarkup += ``;
+ for (const keycap of row) {
+ if (keycap) {
+ const keycapId = keyboard.registerKeycap(keycap);
+ const [markup, cls] = renderKeycap(keycap);
+ if (/(^|\s)separator/.test(cls))
+ layerMarkup += `${markup}`;
+ }
+ }
+ layerMarkup += ``;
+ }
+ layerMarkup += ``;
+ } else if (layer.markup)
+ layerMarkup += layer.markup;
+ if (layer.container)
+ layerMarkup += "";
+ if (layer.backdrop)
+ layerMarkup += "";
+ return layerMarkup;
+}
+function renderKeycap(keycap, options = { shifted: false }) {
+ var _a3, _b3, _c2, _d2, _e, _f, _g;
+ let markup = "";
+ let cls = (_a3 = keycap.class) != null ? _a3 : "";
+ if (options.shifted && isShiftKey(keycap))
+ cls += " is-active";
+ if (options.shifted && "shift" in keycap) {
+ if (typeof keycap.shift === "string")
+ markup = latexToMarkup2(keycap.shift);
+ else if (typeof keycap.shift === "object") {
+ markup = keycap.shift.label ? keycap.shift.label : (
+ // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
+ (_b3 = latexToMarkup2(keycap.shift.latex || keycap.shift.insert || "") || keycap.shift.key) != null ? _b3 : ""
+ );
+ }
+ if (typeof keycap.shift === "object")
+ cls = (_d2 = (_c2 = keycap.shift.class) != null ? _c2 : keycap.class) != null ? _d2 : "";
+ } else {
+ markup = keycap.label ? keycap.label : (
+ // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
+ (_e = latexToMarkup2(keycap.latex || keycap.insert || "") || keycap.key) != null ? _e : ""
+ );
+ if (keycap.shift) {
+ let shiftLabel;
+ if (typeof keycap.shift === "string")
+ shiftLabel = latexToMarkup2(keycap.shift);
+ else if (keycap.shift.label)
+ shiftLabel = keycap.shift.label;
+ else {
+ shiftLabel = // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
+ (_f = latexToMarkup2(keycap.shift.latex || keycap.shift.insert || "") || keycap.shift.key) != null ? _f : "";
+ }
+ markup += `${shiftLabel}`;
+ }
+ if (keycap.aside)
+ markup += ``;
+ }
+ if (keycap.layer && !/layer-switch/.test(cls))
+ cls += " layer-switch";
+ if (!/(^|\s)(separator|action|shift|fnbutton|bigfnbutton)($|\s)/.test(cls))
+ cls += " MLK__keycap";
+ if (!/\bw[0-9]+\b/.test(cls) && keycap.width) {
+ cls += (_g = { 0: " w0", 0.5: " w5", 1.5: " w15", 2: " w20", 5: " w50" }[keycap.width]) != null ? _g : "";
+ }
+ return [markup, cls || "MLK__keycap"];
+}
+var KEYCAP_SHORTCUTS = {
+ "[left]": {
+ class: "action hide-shift",
+ label: "",
+ command: ["performWithFeedback", "moveToPreviousChar"],
+ shift: {
+ label: "",
+ command: ["performWithFeedback", "extendSelectionBackward"]
+ }
+ },
+ "[right]": {
+ class: "action hide-shift",
+ label: "",
+ command: ["performWithFeedback", "moveToNextChar"],
+ shift: {
+ label: "",
+ command: ["performWithFeedback", "extendSelectionForward"]
+ }
+ },
+ "[up]": {
+ class: "action hide-shift",
+ label: "\u2191",
+ command: ["performWithFeedback", "moveUp"],
+ shift: {
+ label: "\u219F",
+ command: ["performWithFeedback", "extendSelectionUpward"]
+ }
+ },
+ "[down]": {
+ class: "action hide-shift",
+ label: "\u2193",
+ command: ["performWithFeedback", "moveDown"],
+ shift: {
+ label: "\u21A1",
+ command: ["performWithFeedback", "extendSelectionDownward"]
+ }
+ },
+ "[return]": {
+ class: "action hide-shift",
+ command: ["performWithFeedback", "commit"],
+ shift: { command: ["performWithFeedback", "addRowAfter"] },
+ width: 1.5,
+ label: ""
+ },
+ "[action]": {
+ class: "action hide-shift",
+ command: ["performWithFeedback", "commit"],
+ shift: {
+ label: "",
+ command: ["performWithFeedback", "addRowAfter"]
+ },
+ width: 1.5,
+ label: ""
+ },
+ "[hr]": {
+ class: "separator horizontal-rule"
+ },
+ "[hide-keyboard]": {
+ class: "action",
+ command: ["hideVirtualKeyboard"],
+ width: 1.5,
+ label: ""
+ },
+ "[.]": {
+ variants: ".",
+ command: ["performWithFeedback", "insertDecimalSeparator"],
+ shift: ",",
+ class: "big-op hide-shift",
+ label: "."
+ },
+ "[,]": {
+ variants: ",",
+ command: ["performWithFeedback", "insertDecimalSeparator"],
+ shift: ".",
+ class: "big-op hide-shift",
+ label: ","
+ },
+ "[+]": {
+ variants: [{ latex: "\\sum_{#0}^{#0}", class: "small" }, "\\oplus"],
+ latex: "+",
+ label: "+",
+ class: "big-op hide-shift",
+ shift: {
+ latex: "\\sum",
+ insert: "\\sum",
+ class: "small"
+ }
+ },
+ "[-]": {
+ variants: ["\\pm", "\\ominus"],
+ latex: "-",
+ label: "−",
+ shift: "\\pm",
+ class: "big-op hide-shift"
+ },
+ "[/]": {
+ class: "big-op hide-shift",
+ shift: { class: "", latex: "\\frac{1}{#@}" },
+ variants: ["/", "\\div", "\\%", "\\oslash"],
+ latex: "\\frac{#@}{#?}",
+ label: "÷"
+ },
+ "[*]": {
+ variants: [
+ { latex: "\\prod_{#0}^{#0}", class: "small" },
+ "\\otimes",
+ "\\cdot"
+ ],
+ latex: "\\cdot",
+ label: "×",
+ shift: { latex: "\\times" },
+ class: "big-op hide-shift"
+ },
+ "[=]": {
+ variants: [
+ "\\neq",
+ "\\equiv",
+ "\\varpropto",
+ "\\thickapprox",
+ "\\lt",
+ "\\gt",
+ "\\le",
+ "\\ge"
+ ],
+ latex: "=",
+ label: "=",
+ shift: { label: "\u2260", latex: "\\ne" },
+ class: "big-op hide-shift"
+ },
+ "[backspace]": {
+ class: "action bottom right hide-shift",
+ width: 1.5,
+ command: ["performWithFeedback", "deleteBackward"],
+ label: "",
+ shift: {
+ class: "action warning",
+ label: "",
+ command: "deleteAll"
+ }
+ },
+ "[undo]": {
+ class: "ghost if-can-undo",
+ command: "undo",
+ label: "",
+ tooltip: "tooltip.undo"
+ },
+ "[redo]": {
+ class: "ghost if-can-redo",
+ command: "redo",
+ label: "",
+ tooltip: "tooltip.redo"
+ },
+ "[(]": {
+ variants: [
+ // We insert the fences as "keys" so they can be handled by smartFence.
+ // They will be sent via `onKeystroke` instead of inserted directly in
+ // the model
+ { latex: "\\lbrack", key: "[" },
+ "\\langle",
+ "\\lfloor",
+ "\\lceil",
+ { latex: "\\lbrace", key: "{" }
+ ],
+ key: "(",
+ label: "(",
+ shift: { label: "[", key: "[" },
+ class: "hide-shift"
+ },
+ "[)]": {
+ variants: [
+ { latex: "\\rbrack", key: "]" },
+ "\\rangle",
+ "\\rfloor",
+ "\\rceil",
+ { latex: "\\rbrace", key: "]" }
+ ],
+ key: ")",
+ label: ")",
+ shift: { label: "]", latex: "\\rbrack" },
+ class: "hide-shift"
+ },
+ "[0]": {
+ variants: "0",
+ latex: "0",
+ label: "0",
+ shift: "\\infty",
+ class: "hide-shift"
+ },
+ "[1]": {
+ variants: "1",
+ latex: "1",
+ label: "1",
+ shift: "#@^{-1}",
+ class: "hide-shift"
+ },
+ "[2]": {
+ variants: "2",
+ latex: "2",
+ label: "2",
+ shift: "#@^2",
+ class: "hide-shift"
+ },
+ "[3]": {
+ variants: "3",
+ latex: "3",
+ label: "3",
+ shift: "#@^3",
+ class: "hide-shift"
+ },
+ "[4]": {
+ variants: "4",
+ latex: "4",
+ label: "4",
+ shift: "#@^4",
+ class: "hide-shift"
+ },
+ "[5]": {
+ variants: "5",
+ latex: "5",
+ label: "5",
+ shift: "#@^5",
+ class: "hide-shift"
+ },
+ "[6]": {
+ variants: "6",
+ latex: "6",
+ label: "6",
+ shift: "#@^6",
+ class: "hide-shift"
+ },
+ "[7]": {
+ variants: "7",
+ latex: "7",
+ label: "7",
+ shift: "#@^7",
+ class: "hide-shift"
+ },
+ "[8]": {
+ variants: "8",
+ latex: "8",
+ label: "8",
+ shift: "#@^8",
+ class: "hide-shift"
+ },
+ "[9]": {
+ variants: "9",
+ latex: "9",
+ label: "9",
+ shift: "#@^9",
+ class: "hide-shift"
+ },
+ "[separator-5]": { class: "separator", width: 0.5 },
+ "[separator]": { class: "separator" },
+ "[separator-10]": { class: "separator" },
+ "[separator-15]": { class: "separator", width: 1.5 },
+ "[separator-20]": { class: "separator", width: 2 },
+ "[separator-50]": { class: "separator", width: 5 },
+ "[shift]": {
+ class: "shift bottom left",
+ width: 1.5,
+ label: ""
+ },
+ "[foreground-color]": {
+ variants: "foreground-color",
+ command: ["applyStyle", { color: "red" }],
+ label: ""
+ },
+ "[background-color]": {
+ variants: "background-color",
+ command: ["applyStyle", { backgroundColor: "yellow" }],
+ label: ""
+ }
+};
+function normalizeKeycap(keycap) {
+ var _a3;
+ if (typeof keycap === "string") {
+ if (keycap === "[.]" && window.MathfieldElement.decimalSeparator === ",")
+ keycap = "[,]";
+ if (!KEYCAP_SHORTCUTS[keycap])
+ return { latex: keycap };
+ keycap = { label: keycap };
+ }
+ let shortcut = void 0;
+ if ("label" in keycap && keycap.label && KEYCAP_SHORTCUTS[keycap.label]) {
+ shortcut = __spreadProps(__spreadValues(__spreadValues({}, KEYCAP_SHORTCUTS[keycap.label]), keycap), {
+ label: KEYCAP_SHORTCUTS[keycap.label].label
+ });
+ }
+ if ("key" in keycap && keycap.key && KEYCAP_SHORTCUTS[keycap.key]) {
+ shortcut = __spreadProps(__spreadValues(__spreadValues({}, KEYCAP_SHORTCUTS[keycap.key]), keycap), {
+ key: KEYCAP_SHORTCUTS[keycap.key].key
+ });
+ }
+ if (shortcut) {
+ if (shortcut.command === "insertDecimalSeparator")
+ shortcut.label = (_a3 = window.MathfieldElement.decimalSeparator) != null ? _a3 : ".";
+ if (keycap.label === "[action]") {
+ shortcut = __spreadValues(__spreadValues({}, shortcut), window.mathVirtualKeyboard.actionKeycap);
+ }
+ if (keycap.label === "[shift]") {
+ shortcut = __spreadValues(__spreadValues({}, shortcut), window.mathVirtualKeyboard.shiftKeycap);
+ }
+ if (keycap.label === "[backspace]") {
+ shortcut = __spreadValues(__spreadValues({}, shortcut), window.mathVirtualKeyboard.backspaceKeycap);
+ }
+ if (keycap.label === "[tab]") {
+ shortcut = __spreadValues(__spreadValues({}, shortcut), window.mathVirtualKeyboard.tabKeycap);
+ }
+ return shortcut;
+ }
+ return keycap;
+}
+var pressAndHoldTimer;
+function handlePointerDown(ev) {
+ var _a3;
+ if (ev.button !== 0)
+ return;
+ const keyboard = VirtualKeyboard.singleton;
+ if (!keyboard)
+ return;
+ let layerButton = ev.target;
+ while (layerButton && !layerButton.getAttribute("data-layer"))
+ layerButton = layerButton.parentElement;
+ if (layerButton) {
+ keyboard.currentLayer = (_a3 = layerButton.getAttribute("data-layer")) != null ? _a3 : "";
+ ev.preventDefault();
+ return;
+ }
+ const target = parentKeycap(ev.target);
+ if (!(target == null ? void 0 : target.id))
+ return;
+ const keycap = keyboard.getKeycap(target.id);
+ if (!keycap)
+ return;
+ console.assert(ev.type === "pointerdown");
+ const controller = new AbortController();
+ const signal = controller.signal;
+ target.classList.add("is-pressed");
+ target.addEventListener(
+ "pointerenter",
+ handleVirtualKeyboardEvent(controller),
+ { capture: true, signal }
+ );
+ target.addEventListener(
+ "pointerleave",
+ handleVirtualKeyboardEvent(controller),
+ { capture: true, signal }
+ );
+ target.addEventListener(
+ "pointercancel",
+ handleVirtualKeyboardEvent(controller),
+ { signal }
+ );
+ target.addEventListener("pointerup", handleVirtualKeyboardEvent(controller), {
+ signal
+ });
+ if (isShiftKey(keycap)) {
+ target.classList.add("is-active");
+ keyboard.shiftPressCount++;
+ }
+ if (keycap.variants) {
+ if (pressAndHoldTimer)
+ clearTimeout(pressAndHoldTimer);
+ pressAndHoldTimer = setTimeout(() => {
+ if (target.classList.contains("is-pressed")) {
+ target.classList.remove("is-pressed");
+ target.classList.add("is-active");
+ if (ev.target && "releasePointerCapture" in ev.target)
+ ev.target.releasePointerCapture(ev.pointerId);
+ showVariantsPanel(target, () => {
+ controller.abort();
+ target == null ? void 0 : target.classList.remove("is-active");
+ });
+ }
+ }, 300);
+ }
+ ev.preventDefault();
+}
+function handleVirtualKeyboardEvent(controller) {
+ return (ev) => {
+ const target = parentKeycap(ev.target);
+ if (!(target == null ? void 0 : target.id))
+ return;
+ const keyboard = VirtualKeyboard.singleton;
+ if (!keyboard)
+ return;
+ const keycap = keyboard.getKeycap(target.id);
+ if (!keycap)
+ return;
+ if (ev.type === "pointerenter" && ev.target === target) {
+ const pev = ev;
+ if (pev.isPrimary)
+ target.classList.add("is-pressed");
+ }
+ if (ev.type === "pointercancel") {
+ target.classList.remove("is-pressed");
+ if (isShiftKey(keycap)) {
+ keyboard.shiftPressCount--;
+ target.classList.toggle("is-active", keyboard.isShifted);
+ }
+ controller.abort();
+ return;
+ }
+ if (ev.type === "pointerleave" && ev.target === target) {
+ target.classList.remove("is-pressed");
+ if (isShiftKey(keycap)) {
+ keyboard.shiftPressCount--;
+ target.classList.toggle("is-active", keyboard.isShifted);
+ }
+ return;
+ }
+ if (ev.type === "pointerup") {
+ if (pressAndHoldTimer)
+ clearTimeout(pressAndHoldTimer);
+ if (isShiftKey(keycap)) {
+ target.classList.toggle("is-active", keyboard.isShifted);
+ } else if (target.classList.contains("is-pressed")) {
+ target.classList.remove("is-pressed");
+ if (keyboard.isShifted && keycap.shift) {
+ if (typeof keycap.shift === "string") {
+ keyboard.executeCommand([
+ "insert",
+ keycap.shift,
+ {
+ focus: true,
+ feedback: true,
+ scrollIntoView: true,
+ mode: "math",
+ format: "latex"
+ }
+ ]);
+ } else
+ executeKeycapCommand(keycap.shift);
+ } else
+ executeKeycapCommand(keycap);
+ if (keyboard.shiftPressCount === 1 && !ev.shiftKey)
+ keyboard.shiftPressCount = 0;
+ }
+ controller.abort();
+ ev.preventDefault();
+ return;
+ }
+ };
+}
+function executeKeycapCommand(keycap) {
+ var _a3;
+ let command = keycap.command;
+ if (!command && keycap.insert) {
+ command = [
+ "insert",
+ keycap.insert,
+ {
+ focus: true,
+ feedback: true,
+ scrollIntoView: true,
+ mode: "math",
+ format: "latex"
+ }
+ ];
+ }
+ if (!command && keycap.key) {
+ command = [
+ "typedText",
+ keycap.key,
+ { focus: true, feedback: true, simulateKeystroke: true }
+ ];
+ }
+ if (!command && keycap.latex) {
+ command = [
+ "insert",
+ keycap.latex,
+ {
+ focus: true,
+ feedback: true,
+ scrollIntoView: true,
+ mode: "math",
+ format: "latex"
+ }
+ ];
+ }
+ if (!command) {
+ command = [
+ "typedText",
+ keycap.label,
+ { focus: true, feedback: true, simulateKeystroke: true }
+ ];
+ }
+ (_a3 = VirtualKeyboard.singleton) == null ? void 0 : _a3.executeCommand(command);
+}
+function isKeycapElement(el) {
+ if (el.nodeType !== 1)
+ return false;
+ const classes = el.classList;
+ return classes.contains("MLK__keycap") || classes.contains("shift") || classes.contains("action") || classes.contains("fnbutton") || classes.contains("bigfnbutton");
+}
+function parentKeycap(el) {
+ if (!el)
+ return void 0;
+ let node = el;
+ while (node && !isKeycapElement(node))
+ node = node.parentElement;
+ return node != null ? node : void 0;
+}
+function isShiftKey(k) {
+ return !!k.class && /(^|\s)shift($|\s)/.test(k.class);
+}
+
+// src/virtual-keyboard/virtual-keyboard.ts
+var VirtualKeyboard = class _VirtualKeyboard {
+ constructor() {
+ this.originalContainerBottomPadding = null;
+ this.keycapRegistry = {};
+ /**
+ * `0`: not pressed
+ * `1`: Shift is locked for next char only
+ * `2`: Shift is locked for all characters
+ */
+ this._shiftPressCount = 0;
+ var _a3, _b3, _c2;
+ this.targetOrigin = window.origin;
+ this.originValidator = "none";
+ this._alphabeticLayout = "auto";
+ this._layouts = Object.freeze(["default"]);
+ this._editToolbar = "default";
+ this._container = (_b3 = (_a3 = window.document) == null ? void 0 : _a3.body) != null ? _b3 : null;
+ this._visible = false;
+ this._rebuilding = false;
+ this.observer = new ResizeObserver((_entries) => {
+ this.adjustBoundingRect();
+ this.dispatchEvent(new Event("geometrychange"));
+ this.sendMessage("geometry-changed", { boundingRect: this.boundingRect });
+ });
+ this.listeners = {};
+ try {
+ (_c2 = window.top) == null ? void 0 : _c2.addEventListener("message", this);
+ } catch (e) {
+ window.addEventListener("message", this);
+ }
+ document.body.addEventListener("focusin", (event) => {
+ const target = event.target;
+ if (!(target == null ? void 0 : target.isConnected))
+ return;
+ setTimeout(() => {
+ const mf = focusedMathfield();
+ if (mf && !mf.readOnly && mf.mathVirtualKeyboardPolicy === "auto" && isTouchCapable())
+ this.show({ animate: true });
+ }, 300);
+ });
+ document.addEventListener("focusout", (evt) => {
+ const target = evt.target;
+ if (target.mathVirtualKeyboardPolicy !== "manual") {
+ setTimeout(() => {
+ if (!focusedMathfield())
+ this.hide();
+ }, 300);
+ }
+ });
+ }
+ get currentLayer() {
+ var _a3, _b3, _c2;
+ return (_c2 = (_b3 = (_a3 = this._element) == null ? void 0 : _a3.querySelector(".MLK__layer.is-visible")) == null ? void 0 : _b3.id) != null ? _c2 : "";
+ }
+ set currentLayer(id) {
+ var _a3;
+ if (!this._element) {
+ this.latentLayer = id;
+ return;
+ }
+ let newActive = id ? this._element.querySelector(`#${id}.MLK__layer`) : null;
+ if (!newActive)
+ newActive = this._element.querySelector(".MLK__layer");
+ if (newActive) {
+ (_a3 = this._element.querySelector(".MLK__layer.is-visible")) == null ? void 0 : _a3.classList.remove("is-visible");
+ newActive.classList.add("is-visible");
+ }
+ this.render();
+ }
+ get shiftPressCount() {
+ return this._shiftPressCount;
+ }
+ set shiftPressCount(count) {
+ var _a3;
+ this._shiftPressCount = count > 2 || count < 0 ? 0 : count;
+ (_a3 = this._element) == null ? void 0 : _a3.classList.toggle("is-caps-lock", this.shiftPressCount === 2);
+ this.render();
+ }
+ get isShifted() {
+ return this._shiftPressCount > 0;
+ }
+ resetKeycapRegistry() {
+ this.keycapRegistry = {};
+ }
+ registerKeycap(keycap) {
+ const id = "ML__k" + Date.now().toString(36).slice(-2) + Math.floor(Math.random() * 1e5).toString(36);
+ this.keycapRegistry[id] = keycap;
+ return id;
+ }
+ getKeycap(id) {
+ return id ? this.keycapRegistry[id] : void 0;
+ }
+ getLayer(id) {
+ const layouts = this.normalizedLayouts;
+ for (const layout of layouts)
+ for (const layer of layout.layers)
+ if (layer.id === id)
+ return layer;
+ return void 0;
+ }
+ get alphabeticLayout() {
+ return this._alphabeticLayout;
+ }
+ set alphabeticLayout(value) {
+ this._alphabeticLayout = value;
+ this.rebuild();
+ }
+ get actionKeycap() {
+ return this._actionKeycap;
+ }
+ set actionKeycap(value) {
+ this._actionKeycap = typeof value === "string" ? { label: value } : value;
+ }
+ get shiftKeycap() {
+ return this._shiftKeycap;
+ }
+ set shiftKeycap(value) {
+ this._shiftKeycap = typeof value === "string" ? { label: value } : value;
+ }
+ get backspaceKeycap() {
+ return this._backspaceKeycap;
+ }
+ set backspaceKeycap(value) {
+ this._backspaceKeycap = typeof value === "string" ? { label: value } : value;
+ }
+ get tabKeycap() {
+ return this._tabKeycap;
+ }
+ set tabKeycap(value) {
+ this._tabKeycap = typeof value === "string" ? { label: value } : value;
+ }
+ get layouts() {
+ return this._layouts;
+ }
+ set layouts(value) {
+ this.updateNormalizedLayouts(value);
+ this.rebuild();
+ }
+ updateNormalizedLayouts(value) {
+ const layouts = Array.isArray(value) ? [...value] : [value];
+ const defaultIndex = layouts.findIndex((x) => x === "default");
+ if (defaultIndex >= 0) {
+ layouts.splice(
+ defaultIndex,
+ 1,
+ "numeric",
+ "symbols",
+ "alphabetic",
+ "greek"
+ );
+ }
+ this._layouts = Object.freeze(layouts);
+ this._normalizedLayouts = layouts.map((x) => normalizeLayout(x));
+ }
+ get normalizedLayouts() {
+ if (!this._normalizedLayouts)
+ this.updateNormalizedLayouts(this._layouts);
+ return this._normalizedLayouts;
+ }
+ get editToolbar() {
+ return this._editToolbar;
+ }
+ set editToolbar(value) {
+ this._editToolbar = value;
+ this.rebuild();
+ }
+ get container() {
+ return this._container;
+ }
+ set container(value) {
+ this._container = value;
+ this.rebuild();
+ }
+ static get singleton() {
+ if (this._singleton === void 0) {
+ try {
+ this._singleton = new _VirtualKeyboard();
+ } catch (e) {
+ this._singleton = null;
+ }
+ }
+ return this._singleton;
+ }
+ get style() {
+ return this._style;
+ }
+ addEventListener(type, callback, _options) {
+ if (!this.listeners[type])
+ this.listeners[type] = /* @__PURE__ */ new Set();
+ if (!this.listeners[type].has(callback))
+ this.listeners[type].add(callback);
+ }
+ dispatchEvent(event) {
+ if (!this.listeners[event.type] || this.listeners[event.type].size === 0)
+ return true;
+ this.listeners[event.type].forEach((x) => {
+ if (typeof x === "function")
+ x(event);
+ else
+ x == null ? void 0 : x.handleEvent(event);
+ });
+ return !event.defaultPrevented;
+ }
+ removeEventListener(type, callback, _options) {
+ if (this.listeners[type])
+ this.listeners[type].delete(callback);
+ }
+ get element() {
+ return this._element;
+ }
+ set element(val) {
+ var _a3;
+ if (this._element === val)
+ return;
+ (_a3 = this._element) == null ? void 0 : _a3.remove();
+ this._element = val;
+ }
+ get visible() {
+ return this._visible;
+ }
+ set visible(val) {
+ if (val)
+ this.show();
+ else
+ this.hide();
+ }
+ get boundingRect() {
+ var _a3;
+ if (!this._visible)
+ return new DOMRect();
+ const plate = (_a3 = this._element) == null ? void 0 : _a3.getElementsByClassName("MLK__plate")[0];
+ if (plate)
+ return plate.getBoundingClientRect();
+ return new DOMRect();
+ }
+ adjustBoundingRect() {
+ var _a3, _b3;
+ const h = this.boundingRect.height;
+ if (this.container === document.body) {
+ (_a3 = this._element) == null ? void 0 : _a3.style.setProperty(
+ "--_keyboard-height",
+ `calc(${h}px + var(--_padding-top) + var(--_padding-bottom) + env(safe-area-inset-bottom, 0))`
+ );
+ const keyboardHeight = h - 1;
+ this.container.style.paddingBottom = this.originalContainerBottomPadding ? `calc(${this.originalContainerBottomPadding} + ${keyboardHeight}px)` : `${keyboardHeight}px`;
+ } else
+ (_b3 = this._element) == null ? void 0 : _b3.style.setProperty("--_keyboard-height", `${h}px`);
+ }
+ rebuild() {
+ if (this._rebuilding || !this._element)
+ return;
+ this._rebuilding = true;
+ const currentLayerId = this.currentLayer;
+ requestAnimationFrame(() => {
+ this._rebuilding = false;
+ if (this._element) {
+ this._element.remove();
+ this._element = void 0;
+ }
+ if (this.visible) {
+ this.buildAndAttachElement();
+ this.currentLayer = currentLayerId;
+ this.render();
+ this.adjustBoundingRect();
+ this._element.classList.add("is-visible");
+ }
+ });
+ }
+ /** Update the keycaps to account for the current state */
+ render() {
+ if (!this._element)
+ return;
+ const layer = this.getLayer(this.currentLayer);
+ this._element.classList.toggle(
+ "backdrop-is-transparent",
+ Boolean(layer && (layer.backdrop || layer.container))
+ );
+ const keycaps = this._element.querySelectorAll(
+ ".MLK__layer.is-visible .MLK__keycap, .MLK__layer.is-visible .action, .fnbutton, .MLK__layer.is-visible .bigfnbutton, .MLK__layer.is-visible .shift"
+ );
+ if (!keycaps)
+ return;
+ for (const keycapElement of keycaps) {
+ const keycap = this.getKeycap(keycapElement.id);
+ if (keycap) {
+ const [markup, cls] = renderKeycap(keycap, { shifted: this.isShifted });
+ keycapElement.innerHTML = window.MathfieldElement.createHTML(markup);
+ keycapElement.className = cls;
+ }
+ }
+ }
+ show(options) {
+ var _a3;
+ if (this._visible)
+ return;
+ const container = this.container;
+ if (!container)
+ return;
+ if (!window.mathVirtualKeyboard)
+ return;
+ if (!this.stateWillChange(true))
+ return;
+ if (!this._element) {
+ this.buildAndAttachElement();
+ this.adjustBoundingRect();
+ }
+ if (!this._visible) {
+ const plate = this._element.getElementsByClassName(
+ "MLK__plate"
+ )[0];
+ if (plate)
+ this.observer.observe(plate);
+ if (container === window.document.body) {
+ const padding2 = container.style.paddingBottom;
+ this.originalContainerBottomPadding = padding2;
+ const keyboardHeight = plate.offsetHeight - 1;
+ container.style.paddingBottom = padding2 ? `calc(${padding2} + ${keyboardHeight}px)` : `${keyboardHeight}px`;
+ }
+ window.addEventListener("mouseup", this);
+ window.addEventListener("blur", this);
+ window.addEventListener("keydown", this, { capture: true });
+ window.addEventListener("keyup", this, { capture: true });
+ (_a3 = this._element) == null ? void 0 : _a3.classList.toggle(
+ "is-caps-lock",
+ this.shiftPressCount === 2
+ );
+ this.currentLayer = this.latentLayer;
+ }
+ this._visible = true;
+ if (options == null ? void 0 : options.animate) {
+ requestAnimationFrame(() => {
+ if (this._element) {
+ this._element.classList.add("animate");
+ this._element.addEventListener(
+ "transitionend",
+ () => {
+ var _a4;
+ return (_a4 = this._element) == null ? void 0 : _a4.classList.remove("animate");
+ },
+ { once: true }
+ );
+ this._element.classList.add("is-visible");
+ this.stateChanged();
+ }
+ });
+ } else {
+ this._element.classList.add("is-visible");
+ this.stateChanged();
+ }
+ }
+ hide(_options) {
+ var _a3;
+ const container = this.container;
+ if (!container)
+ return;
+ if (!this._visible)
+ return;
+ if (!this.stateWillChange(false))
+ return;
+ this._visible = false;
+ if (this._element) {
+ this.latentLayer = this.currentLayer;
+ const plate = this._element.getElementsByClassName("MLK__plate")[0];
+ if (plate)
+ this.observer.unobserve(plate);
+ window.removeEventListener("mouseup", this);
+ window.removeEventListener("blur", this);
+ window.removeEventListener("keydown", this, { capture: true });
+ window.removeEventListener("keyup", this, { capture: true });
+ window.removeEventListener("contextmenu", this, { capture: true });
+ hideVariantsPanel();
+ releaseStylesheets();
+ (_a3 = this._element) == null ? void 0 : _a3.remove();
+ this._element = void 0;
+ if (this.originalContainerBottomPadding !== null)
+ container.style.paddingBottom = this.originalContainerBottomPadding;
+ }
+ this.stateChanged();
+ }
+ get height() {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this.element) == null ? void 0 : _a3.offsetHeight) != null ? _b3 : 0;
+ }
+ buildAndAttachElement() {
+ var _a3;
+ console.assert(!this.element);
+ this.element = makeKeyboardElement(this);
+ window.addEventListener("contextmenu", this, { capture: true });
+ this.element.addEventListener(
+ "contextmenu",
+ (ev) => {
+ if (!ev.shiftKey) {
+ if (ev.ctrlKey || ev.button === 2)
+ showVariantsPanel(ev.target);
+ ev.preventDefault();
+ ev.stopPropagation();
+ }
+ },
+ { capture: true }
+ );
+ (_a3 = this.container) == null ? void 0 : _a3.appendChild(this.element);
+ }
+ handleEvent(evt) {
+ if (isVirtualKeyboardMessage(evt)) {
+ if (!validateOrigin(evt.origin, this.originValidator)) {
+ throw new DOMException(
+ `Message from unknown origin (${evt.origin}) cannot be handled`,
+ "SecurityError"
+ );
+ }
+ if (evt.data.action === "disconnect")
+ this.connectedMathfieldWindow = void 0;
+ else if (evt.data.action !== "update-setting" && evt.data.action !== "proxy-created" && evt.data.action !== "execute-command") {
+ console.assert(evt.source !== void 0);
+ this.connectedMathfieldWindow = evt.source;
+ }
+ this.handleMessage(evt.data, evt.source);
+ }
+ if (!this._element)
+ return;
+ switch (evt.type) {
+ case "mouseup":
+ case "blur":
+ document.body.style.userSelect = "";
+ this.shiftPressCount = 0;
+ break;
+ case "contextmenu":
+ if (evt.button !== 2)
+ evt.preventDefault();
+ break;
+ case "keydown": {
+ if (evt.key === "Shift" && !evt.repeat)
+ this.shiftPressCount = 1;
+ break;
+ }
+ case "keyup": {
+ if (evt.key === "Shift" || !evt.getModifierState("Shift") && this.shiftPressCount !== 2)
+ this.shiftPressCount = 0;
+ break;
+ }
+ }
+ }
+ handleMessage(msg, source) {
+ const { action } = msg;
+ if (action === "execute-command") {
+ const { command } = msg;
+ const commandTarget = getCommandTarget(command);
+ if (window.top !== void 0 && commandTarget !== "virtual-keyboard")
+ return;
+ this.executeCommand(command);
+ return;
+ }
+ if (action === "connect" || action === "show") {
+ this.sendMessage(
+ "synchronize-proxy",
+ {
+ boundingRect: this.boundingRect,
+ alphabeticLayout: this._alphabeticLayout,
+ layouts: this._layouts,
+ editToolbar: this._editToolbar
+ },
+ source
+ );
+ }
+ if (action === "disconnect")
+ return;
+ if (window !== window.top)
+ return;
+ if (action === "show") {
+ if (typeof msg.animate !== "undefined")
+ this.show({ animate: msg.animate });
+ else
+ this.show();
+ return;
+ }
+ if (action === "hide") {
+ if (typeof msg.animate !== "undefined")
+ this.hide({ animate: msg.animate });
+ else
+ this.hide();
+ return;
+ }
+ if (action === "update-setting") {
+ if (msg.alphabeticLayout)
+ this.alphabeticLayout = msg.alphabeticLayout;
+ if (msg.layouts)
+ this.layouts = msg.layouts;
+ if (msg.editToolbar)
+ this.editToolbar = msg.editToolbar;
+ return;
+ }
+ if (action === "proxy-created") {
+ this.sendMessage(
+ "synchronize-proxy",
+ {
+ boundingRect: this.boundingRect,
+ alphabeticLayout: this._alphabeticLayout,
+ layouts: this._layouts,
+ editToolbar: this._editToolbar
+ },
+ source
+ );
+ return;
+ }
+ }
+ sendMessage(action, payload, target) {
+ if (!target)
+ target = this.connectedMathfieldWindow;
+ if (this.targetOrigin === null || this.targetOrigin === "null" || target === window) {
+ window.dispatchEvent(
+ new MessageEvent("message", {
+ source: window,
+ data: __spreadValues({
+ type: VIRTUAL_KEYBOARD_MESSAGE,
+ action
+ }, payload)
+ })
+ );
+ return;
+ }
+ if (target) {
+ target.postMessage(
+ __spreadValues({
+ type: VIRTUAL_KEYBOARD_MESSAGE,
+ action
+ }, payload),
+ { targetOrigin: this.targetOrigin }
+ );
+ } else {
+ if (payload.command) {
+ this.dispatchEvent(
+ new CustomEvent("math-virtual-keyboard-command", {
+ detail: payload.command
+ })
+ );
+ }
+ if (action === "execute-command" && Array.isArray(payload.command) && payload.command[0] === "insert") {
+ const s = payload.command[1].split("");
+ for (const c of s) {
+ this.dispatchEvent(
+ new KeyboardEvent("keydown", { key: c, bubbles: true })
+ );
+ this.dispatchEvent(
+ new KeyboardEvent("keyup", { key: c, bubbles: true })
+ );
+ }
+ }
+ }
+ }
+ stateWillChange(visible) {
+ const defaultNotPrevented = this.dispatchEvent(
+ new CustomEvent("before-virtual-keyboard-toggle", {
+ detail: { visible },
+ bubbles: true,
+ cancelable: true,
+ composed: true
+ })
+ );
+ return defaultNotPrevented;
+ }
+ stateChanged() {
+ this.dispatchEvent(new Event("virtual-keyboard-toggle"));
+ if (!this._visible) {
+ this.dispatchEvent(new Event("geometrychange"));
+ this.sendMessage("geometry-changed", {
+ boundingRect: this.boundingRect
+ });
+ }
+ }
+ /**
+ * @category Focus
+ */
+ focus() {
+ this.sendMessage("focus", {});
+ }
+ /**
+ * @category Focus
+ */
+ blur() {
+ this.sendMessage("blur", {});
+ }
+ updateToolbar(mf) {
+ const el = this._element;
+ if (!el)
+ return;
+ el.classList.toggle("is-math-mode", mf.mode === "math");
+ el.classList.toggle("is-text-mode", mf.mode === "text");
+ el.classList.toggle("can-undo", mf.canUndo);
+ el.classList.toggle("can-redo", mf.canRedo);
+ el.classList.toggle("can-copy", !mf.selectionIsCollapsed);
+ el.classList.toggle("can-copy", !mf.selectionIsCollapsed);
+ el.classList.toggle("can-paste", true);
+ const toolbars = el.querySelectorAll(".ML__edit-toolbar");
+ if (!toolbars)
+ return;
+ for (const toolbar of toolbars)
+ toolbar.innerHTML = makeEditToolbar(this, mf);
+ }
+ update(mf) {
+ this._style = mf.style;
+ this.updateToolbar(mf);
+ }
+ connect() {
+ this.connectedMathfieldWindow = window;
+ }
+ disconnect() {
+ this.connectedMathfieldWindow = void 0;
+ }
+ executeCommand(command) {
+ let selector;
+ let args = [];
+ let target = getCommandTarget(command);
+ if (isArray(command)) {
+ selector = command[0];
+ if (selector === "performWithFeedback") {
+ command = command.slice(1);
+ target = getCommandTarget(command);
+ }
+ args = command.slice(1);
+ } else
+ selector = command;
+ selector = selector.replace(
+ /-\w/g,
+ (m) => m[1].toUpperCase()
+ );
+ if (target === "virtual-keyboard")
+ return COMMANDS[selector].fn(void 0, ...args);
+ this.sendMessage("execute-command", { command });
+ return false;
+ }
+ dispose() {
+ window.removeEventListener("mouseup", this);
+ window.removeEventListener("blur", this);
+ window.removeEventListener("message", this);
+ }
+};
+function focusedMathfield() {
+ var _a3, _b3;
+ let target = deepActiveElement();
+ let mf = null;
+ while (target) {
+ if ("host" in target && ((_b3 = (_a3 = target.host) == null ? void 0 : _a3.tagName) == null ? void 0 : _b3.toLowerCase()) === "math-field") {
+ mf = target.host;
+ break;
+ }
+ target = target.parentNode;
+ }
+ return mf;
+}
+
+// src/virtual-keyboard/global.ts
+if (isBrowser() && !("mathVirtualKeyboard" in window)) {
+ if (window === window["top"]) {
+ const kbd = VirtualKeyboard.singleton;
+ Object.defineProperty(window, "mathVirtualKeyboard", {
+ get: () => kbd
+ });
+ } else {
+ Object.defineProperty(window, "mathVirtualKeyboard", {
+ get: () => VirtualKeyboardProxy.singleton,
+ configurable: true
+ });
+ }
+}
+
+// src/editor-mathfield/options.ts
+function update(updates) {
+ const result = {};
+ for (const key of Object.keys(updates)) {
+ switch (key) {
+ case "scriptDepth":
+ const scriptDepth = updates.scriptDepth;
+ if (isArray(scriptDepth))
+ result.scriptDepth = [scriptDepth[0], scriptDepth[1]];
+ else if (typeof scriptDepth === "number")
+ result.scriptDepth = [scriptDepth, scriptDepth];
+ else if (typeof scriptDepth === "string") {
+ const [from, to] = scriptDepth.split(",").map((x) => parseInt(x.trim()));
+ result.scriptDepth = [from, to];
+ } else
+ throw new TypeError("Unexpected value for scriptDepth");
+ break;
+ case "mathVirtualKeyboardPolicy":
+ let keyboardPolicy = updates.mathVirtualKeyboardPolicy.toLowerCase();
+ if (keyboardPolicy === "sandboxed") {
+ if (window !== window["top"]) {
+ const kbd = VirtualKeyboard.singleton;
+ Object.defineProperty(window, "mathVirtualKeyboard", {
+ get: () => kbd
+ });
+ }
+ keyboardPolicy = "manual";
+ }
+ result.mathVirtualKeyboardPolicy = keyboardPolicy;
+ break;
+ case "letterShapeStyle":
+ if (updates.letterShapeStyle === "auto") {
+ if (l10n.locale.startsWith("fr"))
+ result.letterShapeStyle = "french";
+ else
+ result.letterShapeStyle = "tex";
+ } else
+ result.letterShapeStyle = updates.letterShapeStyle;
+ break;
+ case "defaultMode":
+ if (!["text", "math", "inline-math"].includes(
+ updates.defaultMode
+ )) {
+ console.error(
+ `MathLive 0.98.5: valid values for defaultMode are "text", "math" or "inline-math"`
+ );
+ result.defaultMode = "math";
+ } else
+ result.defaultMode = updates.defaultMode;
+ break;
+ case "macros":
+ result.macros = normalizeMacroDictionary(updates.macros);
+ break;
+ default:
+ if (isArray(updates[key]))
+ result[key] = [...updates[key]];
+ else if (typeof updates[key] === "object" && !(updates[key] instanceof Element) && key !== "computeEngine")
+ result[key] = __spreadValues({}, updates[key]);
+ else
+ result[key] = updates[key];
+ }
+ }
+ return result;
+}
+function get(config, keys) {
+ let resolvedKeys;
+ if (typeof keys === "string")
+ resolvedKeys = [keys];
+ else if (keys === void 0)
+ resolvedKeys = Object.keys(config);
+ else
+ resolvedKeys = keys;
+ const result = {};
+ for (const x of resolvedKeys) {
+ if (config[x] === null)
+ result[x] = null;
+ else if (isArray(config[x]))
+ result[x] = [...config[x]];
+ else if (typeof config[x] === "object" && !(config[x] instanceof Element) && x !== "computeEngine") {
+ result[x] = __spreadValues({}, config[x]);
+ } else
+ result[x] = config[x];
+ }
+ if (typeof keys === "string")
+ return result[keys];
+ return result;
+}
+function getDefault() {
+ return {
+ readOnly: false,
+ defaultMode: "math",
+ macros: {},
+ registers: {},
+ colorMap: defaultColorMap,
+ backgroundColorMap: defaultBackgroundColorMap,
+ letterShapeStyle: l10n.locale.startsWith("fr") ? "french" : "tex",
+ minFontScale: 0,
+ smartMode: false,
+ smartFence: true,
+ smartSuperscript: true,
+ scriptDepth: [Infinity, Infinity],
+ removeExtraneousParentheses: true,
+ isImplicitFunction: (x) => [
+ "\\sin",
+ "\\cos",
+ "\\tan",
+ "\\arcsin",
+ "\\arccos",
+ "\\arctan",
+ "\\arcsec",
+ "\\arccsc",
+ "\\arsinh",
+ "\\arcosh",
+ "\\artanh",
+ "\\arcsech",
+ "\\arccsch",
+ "\\arg",
+ "\\ch",
+ "\\cosec",
+ "\\cosh",
+ "\\cot",
+ "\\cotg",
+ "\\coth",
+ "\\csc",
+ "\\ctg",
+ "\\cth",
+ "\\sec",
+ "\\sinh",
+ "\\sh",
+ "\\tanh",
+ "\\tg",
+ "\\th",
+ "\\lg",
+ "\\lb",
+ "\\log",
+ "\\ln"
+ ].includes(x),
+ mathModeSpace: "",
+ placeholderSymbol: "\u25A2",
+ contentPlaceholder: "",
+ popoverPolicy: "auto",
+ environmentPopoverPolicy: "off",
+ keybindings: DEFAULT_KEYBINDINGS,
+ inlineShortcuts: INLINE_SHORTCUTS,
+ inlineShortcutTimeout: 0,
+ mathVirtualKeyboardPolicy: "auto",
+ virtualKeyboardTargetOrigin: window == null ? void 0 : window.origin,
+ originValidator: "none",
+ onInlineShortcut: () => "",
+ onScrollIntoView: null,
+ onExport: defaultExportHook,
+ value: ""
+ };
+}
+function effectiveMode(options) {
+ if (options.defaultMode === "inline-math")
+ return "math";
+ return options.defaultMode;
+}
+
+// src/editor-model/styling.ts
+function applyStyleToUnstyledAtoms(atom, style) {
+ if (!atom || !style)
+ return;
+ if (isArray(atom)) {
+ atom.forEach((x) => applyStyleToUnstyledAtoms(x, style));
+ } else if (typeof atom === "object") {
+ if (!atom.style.color && !atom.style.backgroundColor && !atom.style.fontFamily && !atom.style.fontShape && !atom.style.fontSeries && !atom.style.fontSize && !atom.style.variant && !atom.style.variantStyle) {
+ atom.applyStyle(style);
+ applyStyleToUnstyledAtoms(atom.body, style);
+ applyStyleToUnstyledAtoms(atom.above, style);
+ applyStyleToUnstyledAtoms(atom.below, style);
+ applyStyleToUnstyledAtoms(atom.subscript, style);
+ applyStyleToUnstyledAtoms(atom.superscript, style);
+ }
+ }
+}
+function applyStyle(model, range2, style, options) {
+ function everyStyle(property, value) {
+ for (const atom of atoms)
+ if (atom.style[property] !== value)
+ return false;
+ return true;
+ }
+ range2 = model.normalizeRange(range2);
+ if (range2[0] === range2[1])
+ return false;
+ const atoms = model.getAtoms(range2, { includeChildren: true });
+ if (options.operation === "toggle") {
+ if (style.color && everyStyle("color", style.color)) {
+ style.color = "none";
+ delete style.verbatimColor;
+ }
+ if (style.backgroundColor && everyStyle("backgroundColor", style.backgroundColor)) {
+ style.backgroundColor = "none";
+ delete style.verbatimBackgroundColor;
+ }
+ if (style.fontFamily && everyStyle("fontFamily", style.fontFamily)) {
+ style.fontFamily = "none";
+ }
+ if (style.fontSeries && everyStyle("fontSeries", style.fontSeries)) {
+ style.fontSeries = "auto";
+ }
+ if (style.fontShape && everyStyle("fontShape", style.fontShape)) {
+ style.fontShape = "auto";
+ }
+ if (style.fontSize && everyStyle("fontSize", style.fontSize)) {
+ style.fontSize = DEFAULT_FONT_SIZE;
+ }
+ if (style.variant && everyStyle("variant", style.variant)) {
+ style.variant = "normal";
+ }
+ if (style.variantStyle && everyStyle("variantStyle", style.variantStyle)) {
+ style.variantStyle = "";
+ }
+ }
+ for (const atom of atoms)
+ atom.applyStyle(style);
+ return true;
+}
+
+// src/editor-model/composition.ts
+function updateComposition(model, s) {
+ const cursor = model.at(model.position);
+ if (cursor.type === "composition") {
+ cursor.value = s;
+ } else {
+ const { caret } = cursor;
+ cursor.caret = void 0;
+ const atom = new CompositionAtom(s, { mode: cursor.mode });
+ atom.caret = caret;
+ cursor.parent.addChildAfter(atom, cursor);
+ model.position += 1;
+ }
+}
+function removeComposition(model) {
+ const cursor = model.at(model.position);
+ if (cursor.type === "composition") {
+ cursor.parent.removeChild(cursor);
+ model.position -= 1;
+ }
+}
+
+// src/latex-commands/environments.ts
+defineEnvironment(["math", "displaymath"], makeEnvironment);
+defineEnvironment("center", makeEnvironment);
+defineFunction("displaylines", "", {
+ parse: (parser) => {
+ const lines = [];
+ let line = [];
+ parser.beginContext({ tabular: true });
+ do {
+ if (parser.end())
+ break;
+ if (parser.match("<}>"))
+ break;
+ if (parser.matchColumnSeparator() || parser.matchRowSeparator()) {
+ lines.push([line]);
+ line = [];
+ } else {
+ line.push(
+ ...parser.scan(
+ (token) => ["<}>", "&", "\\cr", "\\\\", "\\tabularnewline"].includes(token)
+ )
+ );
+ }
+ } while (true);
+ parser.endContext();
+ lines.push([line]);
+ return lines;
+ },
+ createAtom: (options) => new ArrayAtom("lines", options.args, [], {
+ // arraystretch: 1.2,
+ leftDelim: ".",
+ rightDelim: ".",
+ columns: [{ align: "l" }]
+ })
+});
+defineTabularEnvironment(
+ "array",
+ "{columns:colspec}",
+ (name, array, rowGaps, args) => {
+ return new ArrayAtom(name, defaultContent(array), rowGaps, {
+ columns: args[0],
+ mathstyleName: "textstyle"
+ });
+ }
+);
+defineTabularEnvironment(
+ ["equation", "equation*", "subequations"],
+ "",
+ (name, array, rowGaps) => {
+ return new ArrayAtom(name, defaultContent(array), rowGaps, {
+ columns: [{ align: "c" }]
+ });
+ }
+);
+defineTabularEnvironment(["multline", "multline*"], "", makeEnvironment);
+defineTabularEnvironment(
+ ["align", "align*", "aligned", "eqnarray"],
+ "",
+ makeEnvironment
+);
+defineTabularEnvironment("split", "", makeEnvironment);
+defineTabularEnvironment(["gather", "gathered"], "", makeEnvironment);
+defineTabularEnvironment(
+ [
+ "matrix",
+ "pmatrix",
+ "bmatrix",
+ "Bmatrix",
+ "vmatrix",
+ "Vmatrix",
+ "matrix*",
+ "pmatrix*",
+ "bmatrix*",
+ "Bmatrix*",
+ "vmatrix*",
+ "Vmatrix*"
+ ],
+ "[columns:colspec]",
+ makeEnvironment
+);
+defineTabularEnvironment(
+ ["smallmatrix", "smallmatrix*"],
+ "[columns:colspec]",
+ makeEnvironment
+);
+defineTabularEnvironment(["cases", "dcases", "rcases"], "", makeEnvironment);
+function isContentEmpty(array) {
+ for (const row of array)
+ for (const col of row)
+ if (col.length > 0)
+ return false;
+ return true;
+}
+function defaultContent(array, count = 1) {
+ if (isContentEmpty(array)) {
+ return Array(count).fill([
+ [new Atom({ type: "first" }), new PlaceholderAtom()]
+ ]);
+ }
+ return array.map((row) => {
+ if (row.length === 0)
+ return [[new Atom({ type: "first" })]];
+ return row.map((cell) => {
+ if (cell.length === 0)
+ return [new Atom({ type: "first" })];
+ if (cell[0].type !== "first")
+ cell.unshift(new Atom({ type: "first" }));
+ return cell;
+ });
+ });
+}
+function makeEnvironment(name, content = [[[]]], rowGaps = [], args = []) {
+ content = defaultContent(
+ content,
+ ["split", "align", "align*", "aligned", "eqnarray"].includes(name) ? 2 : 1
+ );
+ switch (name) {
+ case "math":
+ return new ArrayAtom(name, content, rowGaps, {
+ mathstyleName: "textstyle"
+ });
+ case "displaymath":
+ return new ArrayAtom(name, content, rowGaps, {
+ mathstyleName: "textstyle"
+ });
+ case "center":
+ return new ArrayAtom(name, content, rowGaps, {
+ columns: [{ align: "c" }]
+ });
+ case "multline":
+ case "multline*":
+ return new ArrayAtom(name, content, rowGaps, {
+ columns: [{ align: "m" }],
+ leftDelim: ".",
+ rightDelim: "."
+ });
+ case "split":
+ return new ArrayAtom(name, content, rowGaps, {
+ columns: [{ align: "r" }, { align: "l" }],
+ minColumns: 2
+ });
+ case "gather":
+ case "gathered":
+ return new ArrayAtom(name, content, rowGaps, {
+ columns: [{ gap: 0.25 }, { align: "c" }, { gap: 0 }]
+ // colSeparationType: 'gather',
+ });
+ case "pmatrix":
+ case "pmatrix*":
+ return new ArrayAtom(name, content, rowGaps, {
+ mathstyleName: "textstyle",
+ leftDelim: "(",
+ rightDelim: ")",
+ columns: defaultColumns(args[0])
+ });
+ case "bmatrix":
+ case "bmatrix*":
+ return new ArrayAtom(name, content, rowGaps, {
+ mathstyleName: "textstyle",
+ leftDelim: "[",
+ rightDelim: "]",
+ columns: defaultColumns(args[0])
+ });
+ case "Bmatrix":
+ case "Bmatrix*":
+ return new ArrayAtom(name, content, rowGaps, {
+ mathstyleName: "textstyle",
+ leftDelim: "\\lbrace",
+ rightDelim: "\\rbrace",
+ columns: defaultColumns(args[0])
+ });
+ case "vmatrix":
+ case "vmatrix*":
+ return new ArrayAtom(name, content, rowGaps, {
+ mathstyleName: "textstyle",
+ leftDelim: "\\vert",
+ rightDelim: "\\vert",
+ columns: defaultColumns(args[0])
+ });
+ case "Vmatrix":
+ case "Vmatrix*":
+ return new ArrayAtom(name, content, rowGaps, {
+ mathstyleName: "textstyle",
+ leftDelim: "\\Vert",
+ rightDelim: "\\Vert",
+ columns: defaultColumns(args[0])
+ });
+ case "matrix":
+ case "matrix*":
+ return new ArrayAtom(name, content, rowGaps, {
+ mathstyleName: "textstyle",
+ leftDelim: ".",
+ rightDelim: ".",
+ columns: defaultColumns(args == null ? void 0 : args[0])
+ });
+ case "smallmatrix":
+ case "smallmatrix*":
+ return new ArrayAtom(name, content, rowGaps, {
+ mathstyleName: "scriptstyle",
+ columns: defaultColumns(args == null ? void 0 : args[0]),
+ colSeparationType: "small",
+ arraystretch: 0.5
+ });
+ case "cases":
+ case "dcases":
+ return new ArrayAtom(name, content, rowGaps, {
+ mathstyleName: name === "dcases" ? "displaystyle" : "textstyle",
+ arraystretch: 1.2,
+ leftDelim: "\\lbrace",
+ rightDelim: ".",
+ columns: [{ align: "l" }, { gap: 1 }, { align: "l" }]
+ });
+ case "rcases":
+ return new ArrayAtom(name, content, rowGaps, {
+ arraystretch: 1.2,
+ leftDelim: ".",
+ rightDelim: "\\rbrace",
+ columns: [{ align: "l" }, { gap: 1 }, { align: "l" }]
+ });
+ case "lines":
+ return new ArrayAtom(name, content, rowGaps, {
+ // arraystretch: 1.2,
+ leftDelim: ".",
+ rightDelim: ".",
+ columns: [{ align: "l" }]
+ });
+ case "align":
+ case "align*":
+ case "aligned":
+ case "eqnarray": {
+ let colCount = 0;
+ for (const row of content)
+ colCount = Math.max(colCount, row.length);
+ const columns = [
+ { gap: 0 },
+ { align: "r" },
+ { gap: 0.25 },
+ { align: "l" }
+ ];
+ let i = 2;
+ while (i < colCount) {
+ columns.push({ gap: 1 }, { align: "r" }, { gap: 0.25 }, { align: "l" });
+ i += 2;
+ }
+ columns.push({ gap: 0 });
+ return new ArrayAtom(name, content, rowGaps, {
+ arraycolsep: 0,
+ columns,
+ // colSeparationType: 'align',
+ minColumns: 2
+ });
+ }
+ }
+ return new ArrayAtom(name, content, rowGaps, {
+ mathstyleName: "textstyle"
+ });
+}
+function defaultColumns(args) {
+ return args != null ? args : [
+ { align: "c" },
+ { align: "c" },
+ { align: "c" },
+ { align: "c" },
+ { align: "c" },
+ { align: "c" },
+ { align: "c" },
+ { align: "c" },
+ { align: "c" },
+ { align: "c" }
+ ];
+}
+
+// src/editor-model/array.ts
+function parentArray(model, where) {
+ let atom = model.at(model.position);
+ while (atom && !(atom.parent instanceof ArrayAtom))
+ atom = atom.parent;
+ if (atom && atom.type === "array") {
+ const array = atom;
+ if (array.environmentName === "lines") {
+ }
+ }
+ if (!atom || !(atom.parent instanceof ArrayAtom)) {
+ const cursor = model.at(model.position);
+ atom = cursor;
+ if (!atom.parent.parent) {
+ let secondCell = model.extractAtoms([model.position, model.lastOffset]);
+ let firstCell = model.extractAtoms([0, model.position]);
+ if (firstCell.length === 0)
+ firstCell = placeholderCell();
+ if (secondCell.length === 0)
+ secondCell = placeholderCell();
+ let array;
+ if (where.endsWith("column")) {
+ array = makeEnvironment("split", [[firstCell, secondCell]]);
+ model.root = array;
+ if (isPlaceholderCell(array, 0, 0))
+ selectCell(model, array, 0, 0);
+ else if (isPlaceholderCell(array, 0, 1))
+ selectCell(model, array, 0, 1);
+ else
+ model.position = model.offsetOf(cursor);
+ } else {
+ array = makeEnvironment("lines", [[firstCell], [secondCell]]);
+ model.root = array;
+ if (isPlaceholderCell(array, 0, 0))
+ selectCell(model, array, 0, 0);
+ else if (isPlaceholderCell(array, 1, 0))
+ selectCell(model, array, 1, 0);
+ else
+ model.position = model.offsetOf(cursor);
+ }
+ return [void 0, [0, 0]];
+ }
+ if (atom.parent instanceof LeftRightAtom) {
+ const parent = atom.parent;
+ let secondCell = model.extractAtoms([
+ model.position,
+ model.offsetOf(parent.lastChild)
+ ]);
+ let firstCell = model.extractAtoms([
+ model.offsetOf(parent.firstChild),
+ model.position
+ ]);
+ if (firstCell.length === 0)
+ firstCell = placeholderCell();
+ if (secondCell.length === 0)
+ secondCell = placeholderCell();
+ let envName = "pmatrix";
+ const lDelim = parent.leftDelim;
+ const rDelim = parent.rightDelim;
+ if (lDelim === "(" && (rDelim === ")" || rDelim === "?"))
+ envName = "pmatrix";
+ else if ((lDelim === "[" || lDelim === "\\lbrack") && (rDelim === "]" || rDelim === "\\rbrack" || rDelim === "?"))
+ envName = "bmatrix";
+ else if (lDelim === "\\vert" && rDelim === "\\vert")
+ envName = "vmatrix";
+ else if (lDelim === "\\Vert" && rDelim === "\\Vert")
+ envName = "Vmatrix";
+ else if ((lDelim === "{" || lDelim === "\\lbrace") && (rDelim === "." || rDelim === "?"))
+ envName = "cases";
+ const array = makeEnvironment(
+ envName,
+ where.endsWith("column") ? [[firstCell, secondCell]] : [[firstCell], [secondCell]]
+ );
+ parent.parent.addChildBefore(array, parent);
+ parent.parent.removeChild(parent);
+ if (isPlaceholderCell(array, 0, 0))
+ selectCell(model, array, 0, 0);
+ else if (where.endsWith("column")) {
+ if (isPlaceholderCell(array, 0, 1))
+ selectCell(model, array, 0, 1);
+ else
+ model.position = model.offsetOf(atom);
+ } else {
+ if (isPlaceholderCell(array, 1, 0))
+ selectCell(model, array, 1, 0);
+ else
+ model.position = model.offsetOf(atom);
+ }
+ return [void 0, [0, 0]];
+ }
+ }
+ return atom && atom.parent instanceof ArrayAtom ? [atom.parent, atom.parentBranch] : [void 0, [0, 0]];
+}
+function isPlaceholderCell(array, row, column) {
+ const cell = array.getCell(row, column);
+ if (!cell || cell.length !== 2)
+ return false;
+ return cell[1].type === "placeholder";
+}
+function cellRange(model, array, row, column) {
+ const cell = array.getCell(row, column);
+ if (!cell)
+ return -1;
+ return [model.offsetOf(cell[0]), model.offsetOf(cell[cell.length - 1])];
+}
+function selectCell(model, array, row, column) {
+ const range2 = cellRange(model, array, row, column);
+ if (typeof range2 !== "number")
+ model.setSelection(range2);
+}
+function setPositionInCell(model, array, row, column, pos) {
+ const cell = array.getCell(row, column);
+ if (!cell)
+ return;
+ model.setPositionHandlingPlaceholder(
+ model.offsetOf(cell[pos === "start" ? 0 : cell.length - 1])
+ );
+}
+function addCell(model, where) {
+ const [arrayAtom, [row, column]] = parentArray(model, where);
+ if (!arrayAtom)
+ return;
+ switch (where) {
+ case "after row":
+ arrayAtom.addRowAfter(row);
+ setPositionInCell(model, arrayAtom, row + 1, 0, "end");
+ break;
+ case "after column":
+ if (arrayAtom.maxColumns <= arrayAtom.colCount) {
+ model.announce("plonk");
+ return;
+ }
+ arrayAtom.addColumnAfter(column);
+ setPositionInCell(model, arrayAtom, row, column + 1, "end");
+ break;
+ case "before row":
+ arrayAtom.addRowBefore(row);
+ setPositionInCell(model, arrayAtom, row, 0, "start");
+ break;
+ case "before column":
+ if (arrayAtom.maxColumns <= arrayAtom.colCount) {
+ model.announce("plonk");
+ return;
+ }
+ arrayAtom.addColumnBefore(column);
+ setPositionInCell(model, arrayAtom, row, column, "start");
+ break;
+ }
+}
+function addRowAfter(model) {
+ if (!model.contentWillChange({ inputType: "insertText" }))
+ return false;
+ addCell(model, "after row");
+ model.contentDidChange({ inputType: "insertText" });
+ return true;
+}
+function addRowBefore(model) {
+ if (!model.contentWillChange({ inputType: "insertText" }))
+ return false;
+ addCell(model, "before row");
+ model.contentDidChange({ inputType: "insertText" });
+ return true;
+}
+function addColumnAfter(model) {
+ if (!model.contentWillChange({ inputType: "insertText" }))
+ return false;
+ addCell(model, "after column");
+ model.contentDidChange({ inputType: "insertText" });
+ return true;
+}
+function addColumnBefore(model) {
+ if (!model.contentWillChange({ inputType: "insertText" }))
+ return false;
+ addCell(model, "before column");
+ model.contentDidChange({ inputType: "insertText" });
+ return true;
+}
+function setEnvironment(model, environment) {
+ if (!model.contentWillChange({}))
+ return false;
+ model.mathfield.snapshot();
+ let leftDelim = ".";
+ let rightDelim = ".";
+ switch (environment) {
+ case "pmatrix":
+ case "pmatrix*":
+ leftDelim = "(";
+ rightDelim = ")";
+ break;
+ case "bmatrix":
+ case "bmatrix*":
+ leftDelim = "[";
+ rightDelim = "]";
+ break;
+ case "Bmatrix":
+ case "Bmatrix*":
+ leftDelim = "\\lbrace";
+ rightDelim = "\\rbrace";
+ break;
+ case "vmatrix":
+ case "vmatrix*":
+ leftDelim = "\\vert";
+ rightDelim = "\\vert";
+ break;
+ case "Vmatrix":
+ case "Vmatrix*":
+ leftDelim = "\\Vert";
+ rightDelim = "\\Vert";
+ break;
+ case "matrix":
+ case "matrix*":
+ leftDelim = ".";
+ rightDelim = ".";
+ break;
+ case "cases":
+ case "dcases":
+ leftDelim = "\\lbrace";
+ break;
+ case "rcases":
+ rightDelim = "\\rbrace";
+ break;
+ }
+ const atom = model.at(model.position);
+ const arrayAtom = atom.type === "array" ? atom : model.parentEnvironment;
+ arrayAtom.environmentName = environment;
+ arrayAtom.leftDelim = leftDelim;
+ arrayAtom.rightDelim = rightDelim;
+ model.contentDidChange({});
+ return true;
+}
+function removeCell(model, where) {
+ let atom = model.at(model.position);
+ while (atom && !(Array.isArray(atom.parentBranch) && atom.parent instanceof ArrayAtom))
+ atom = atom.parent;
+ if (Array.isArray(atom == null ? void 0 : atom.parentBranch) && (atom == null ? void 0 : atom.parent) instanceof ArrayAtom) {
+ const arrayAtom = atom.parent;
+ const treeBranch = atom.parentBranch;
+ let pos;
+ switch (where) {
+ case "row":
+ if (arrayAtom.rowCount > 1) {
+ arrayAtom.removeRow(treeBranch[0]);
+ const cell = arrayAtom.getCell(
+ Math.max(0, treeBranch[0] - 1),
+ treeBranch[1]
+ );
+ pos = model.offsetOf(cell[cell.length - 1]);
+ }
+ break;
+ case "column":
+ if (arrayAtom.colCount > arrayAtom.minColumns) {
+ arrayAtom.removeColumn(treeBranch[1]);
+ const cell = arrayAtom.getCell(
+ treeBranch[0],
+ Math.max(0, treeBranch[1] - 1)
+ );
+ pos = model.offsetOf(cell[cell.length - 1]);
+ }
+ break;
+ }
+ if (pos)
+ model.setPositionHandlingPlaceholder(pos);
+ }
+}
+function removeRow(model) {
+ if (!model.contentWillChange({ inputType: "deleteContent" }))
+ return false;
+ removeCell(model, "row");
+ model.contentDidChange({ inputType: "deleteContent" });
+ return true;
+}
+function removeColumn(model) {
+ if (!model.contentWillChange({ inputType: "deleteContent" }))
+ return false;
+ removeCell(model, "column");
+ model.contentDidChange({ inputType: "deleteContent" });
+ return true;
+}
+register2(
+ {
+ addRowAfter,
+ addColumnAfter,
+ addRowBefore,
+ addColumnBefore,
+ removeRow,
+ removeColumn,
+ setEnvironment
+ },
+ {
+ target: "model",
+ canUndo: true,
+ changeContent: true,
+ changeSelection: true
+ }
+);
+function placeholderCell() {
+ return [new PlaceholderAtom()];
+}
+
+// src/editor/undo.ts
+var _UndoManager = class _UndoManager {
+ constructor(model) {
+ this.recording = false;
+ this.model = model;
+ this.reset();
+ }
+ reset() {
+ this.stack = [];
+ this.index = -1;
+ this.lastOp = "";
+ }
+ startRecording() {
+ this.recording = true;
+ }
+ stopRecording() {
+ this.recording = false;
+ }
+ canUndo() {
+ return this.index - 1 >= 0;
+ }
+ canRedo() {
+ return this.stack.length - 1 > this.index;
+ }
+ /** Call this to stop coalescing future ops, for example when the selection
+ * changes
+ */
+ stopCoalescing(selection) {
+ if (selection && this.index >= 0)
+ this.stack[this.index].selection = selection;
+ this.lastOp = "";
+ }
+ undo() {
+ if (!this.canUndo())
+ return false;
+ this.model.setState(this.stack[this.index - 1], {
+ silenceNotifications: false,
+ type: "undo"
+ });
+ this.index -= 1;
+ this.lastOp = "";
+ return true;
+ }
+ redo() {
+ if (!this.canRedo())
+ return false;
+ this.index += 1;
+ this.model.setState(this.stack[this.index], {
+ silenceNotifications: false,
+ type: "redo"
+ });
+ this.lastOp = "";
+ return true;
+ }
+ pop() {
+ if (!this.canUndo())
+ return;
+ this.stack.splice(this.index, this.stack.length - this.index);
+ this.index -= 1;
+ }
+ /**
+ * Push a snapshot of the content and selection of the mathfield onto the
+ * undo stack so that it can potentially be reverted to later.
+ *
+ * **Return** `true` if the undo state changed
+ */
+ snapshot(op) {
+ if (!this.recording)
+ return false;
+ if (op && op === this.lastOp)
+ this.pop();
+ this.stack.splice(this.index + 1, this.stack.length - this.index - 1);
+ this.stack.push(this.model.getState());
+ this.index += 1;
+ if (this.stack.length > _UndoManager.maximumDepth) {
+ this.stack.shift();
+ this.index -= 1;
+ }
+ this.lastOp = op != null ? op : "";
+ return true;
+ }
+};
+// Maximum number of undo/redo states
+_UndoManager.maximumDepth = 1e3;
+var UndoManager = _UndoManager;
+
+// src/editor-model/commands.ts
+function wordBoundaryOffset(model, offset, direction) {
+ if (model.at(offset).mode !== "text")
+ return offset;
+ const dir = direction === "backward" ? -1 : 1;
+ let result;
+ if (LETTER_AND_DIGITS.test(model.at(offset).value)) {
+ let i = offset;
+ let match;
+ do {
+ match = model.at(i).mode === "text" && LETTER_AND_DIGITS.test(model.at(i).value);
+ i += dir;
+ } while (model.at(i) && match);
+ result = model.at(i) ? i - 2 * dir : i - dir;
+ } else if (/\s/.test(model.at(offset).value)) {
+ let i = offset;
+ while (model.at(i) && model.at(i).mode === "text" && /\s/.test(model.at(i).value))
+ i += dir;
+ if (!model.at(i)) {
+ result = i - dir;
+ } else {
+ let match = true;
+ do {
+ match = model.at(i).mode === "text" && !/\s/.test(model.at(i).value);
+ i += dir;
+ } while (model.at(i) && match);
+ result = model.at(i) ? i - 2 * dir : i - dir;
+ }
+ } else {
+ let i = offset;
+ while (model.at(i) && model.at(i).mode === "text" && !/\s/.test(model.at(i).value))
+ i += dir;
+ result = model.at(i) ? i : i - dir;
+ let match = true;
+ while (model.at(i) && match) {
+ match = model.at(i).mode === "text" && /\s/.test(model.at(i).value);
+ if (match)
+ result = i;
+ i += dir;
+ }
+ result = model.at(i) ? i - 2 * dir : i - dir;
+ }
+ return result - (dir > 0 ? 0 : 1);
+}
+function skip(model, direction, options) {
+ var _a3, _b3, _c2, _d2, _e, _f, _g;
+ const previousPosition = model.position;
+ if (!((_a3 = options == null ? void 0 : options.extend) != null ? _a3 : false))
+ model.collapseSelection(direction);
+ let atom = model.at(model.position);
+ if (direction === "forward") {
+ if (atom.type === "subsup") {
+ atom = atom.rightSibling;
+ if (!atom)
+ atom = model.at(model.position + 1);
+ } else
+ atom = model.at(model.position + 1);
+ }
+ if (!atom) {
+ model.announce("plonk");
+ return false;
+ }
+ let offset = model.offsetOf(atom);
+ if (atom instanceof TextAtom) {
+ offset = wordBoundaryOffset(model, offset, direction);
+ } else if (atom instanceof LatexAtom) {
+ if (atom.isSuggestion) {
+ console.assert(direction === "forward");
+ while (atom && atom instanceof LatexAtom) {
+ atom.isSuggestion = false;
+ offset = model.offsetOf(atom);
+ atom = atom.rightSibling;
+ }
+ } else if (direction === "forward") {
+ atom = atom.rightSibling;
+ if (!atom || !(atom instanceof LatexAtom)) {
+ model.announce("plonk");
+ return false;
+ }
+ while (atom && atom instanceof LatexAtom && /[a-zA-Z\*]/.test(atom.value)) {
+ offset = model.offsetOf(atom);
+ atom = atom.rightSibling;
+ }
+ } else {
+ atom = atom.leftSibling;
+ if (!atom || !(atom instanceof LatexAtom)) {
+ model.announce("plonk");
+ return false;
+ }
+ while (atom && atom instanceof LatexAtom && /[a-zA-Z\*]/.test(atom.value)) {
+ offset = model.offsetOf(atom);
+ atom = atom.leftSibling;
+ }
+ }
+ } else if (direction === "forward" && atom.type === "mopen") {
+ let level = 0;
+ do {
+ if (atom.type === "mopen")
+ level += 1;
+ else if (atom.type === "mclose")
+ level -= 1;
+ atom = atom.rightSibling;
+ } while (!atom.isLastSibling && level !== 0);
+ offset = model.offsetOf(atom.leftSibling);
+ } else if (direction === "backward" && atom.type === "mclose") {
+ let level = 0;
+ do {
+ if (atom.type === "mopen")
+ level += 1;
+ else if (atom.type === "mclose")
+ level -= 1;
+ atom = atom.leftSibling;
+ } while (!atom.isFirstSibling && level !== 0);
+ offset = model.offsetOf(atom);
+ } else if (direction === "backward") {
+ if (atom.type === "first") {
+ while (offset > 0 && atom.type === "first") {
+ offset -= 1;
+ atom = model.at(offset);
+ }
+ } else {
+ const type = atom.type;
+ if (atom.type === "subsup") {
+ offset = model.offsetOf(model.at(offset).leftSibling);
+ }
+ offset -= 1;
+ let nextType = (_b3 = model.at(offset)) == null ? void 0 : _b3.type;
+ while (offset >= 0 && nextType === type) {
+ if (((_c2 = model.at(offset)) == null ? void 0 : _c2.type) === "subsup")
+ offset = model.offsetOf(model.at(offset).leftSibling);
+ else
+ offset -= 1;
+ nextType = model.at(offset).type;
+ }
+ }
+ } else {
+ const { type } = atom;
+ let nextType = (_d2 = model.at(offset)) == null ? void 0 : _d2.type;
+ const { lastOffset } = model;
+ while (offset <= lastOffset && (nextType === type || nextType === "subsup")) {
+ while (((_e = model.at(offset).rightSibling) == null ? void 0 : _e.type) === "subsup")
+ offset = model.offsetOf(model.at(offset).rightSibling);
+ offset += 1;
+ nextType = (_f = model.at(offset)) == null ? void 0 : _f.type;
+ }
+ offset -= 1;
+ }
+ if ((_g = options == null ? void 0 : options.extend) != null ? _g : false) {
+ if (!model.setSelection(model.anchor, offset)) {
+ model.announce("plonk");
+ return false;
+ }
+ } else {
+ if (offset === model.position) {
+ model.announce("plonk");
+ return false;
+ }
+ model.position = offset;
+ }
+ model.announce("move", previousPosition);
+ model.mathfield.stopCoalescingUndo();
+ return true;
+}
+function move(model, direction, options) {
+ var _a3, _b3;
+ options = options != null ? options : { extend: false };
+ model.mathfield.adoptStyle = direction === "backward" ? "right" : "left";
+ if (direction !== "forward") {
+ const [from, to] = getCommandSuggestionRange(model);
+ if (from !== void 0 && to !== void 0)
+ model.deleteAtoms([from, to]);
+ }
+ if (direction === "upward")
+ return moveUpward(model, options);
+ if (direction === "downward")
+ return moveDownward(model, options);
+ if (options.extend) {
+ let pos2 = nextValidPosition(model, model.position, direction);
+ if (pos2 < 0)
+ pos2 = 0;
+ if (pos2 > model.lastOffset)
+ pos2 = model.lastOffset;
+ const result = model.setSelection(model.anchor, pos2);
+ model.mathfield.stopCoalescingUndo();
+ return result;
+ }
+ if (model.selectionIsPlaceholder) {
+ model.collapseSelection(direction);
+ const result = move(model, direction);
+ model.mathfield.stopCoalescingUndo();
+ return result;
+ }
+ let pos = model.position;
+ const previousPosition = pos;
+ if (model.collapseSelection(direction)) {
+ pos = model.position;
+ if (!isValidPosition(model, pos))
+ pos = nextValidPosition(model, pos, direction);
+ } else
+ pos = nextValidPosition(model, pos, direction);
+ if (pos < 0 || pos > model.lastOffset) {
+ let result = true;
+ if (!model.silenceNotifications) {
+ result = (_b3 = (_a3 = model.mathfield.host) == null ? void 0 : _a3.dispatchEvent(
+ new CustomEvent("move-out", {
+ detail: { direction },
+ cancelable: true,
+ bubbles: true,
+ composed: true
+ })
+ )) != null ? _b3 : true;
+ }
+ if (result)
+ model.announce("plonk");
+ return result;
+ }
+ model.setPositionHandlingPlaceholder(pos);
+ model.mathfield.stopCoalescingUndo();
+ model.announce("move", previousPosition);
+ return true;
+}
+function nextValidPosition(model, pos, direction) {
+ pos = pos + (direction === "forward" ? 1 : -1);
+ if (pos < 0 || pos > model.lastOffset)
+ return pos;
+ if (!isValidPosition(model, pos))
+ return nextValidPosition(model, pos, direction);
+ return pos;
+}
+function isValidPosition(model, pos) {
+ var _a3;
+ const atom = model.at(pos);
+ let parent = atom.parent;
+ while (parent && !parent.inCaptureSelection)
+ parent = parent.parent;
+ if (parent == null ? void 0 : parent.inCaptureSelection)
+ return false;
+ if ((_a3 = atom.parent) == null ? void 0 : _a3.skipBoundary) {
+ if (!atom.isFirstSibling && atom.isLastSibling)
+ return false;
+ if (atom.type === "first")
+ return false;
+ }
+ if (model.mathfield.hasEditablePrompts && !atom.parentPrompt)
+ return false;
+ return true;
+}
+function getClosestAtomToXPosition(mathfield, search, x) {
+ let prevX = Infinity;
+ let i = 0;
+ for (; i < search.length; i++) {
+ const toX = getLocalDOMRect(mathfield.getHTMLElement(search[i])).right;
+ const abs = Math.abs(x - toX);
+ if (abs <= prevX) {
+ prevX = abs;
+ } else {
+ break;
+ }
+ }
+ return search[i - 1];
+}
+function moveToClosestAtomVertically(model, fromAtom, toAtoms, extend, direction) {
+ const hasEditablePrompts = model.mathfield.hasEditablePrompts;
+ const editableAtoms = !hasEditablePrompts ? toAtoms : toAtoms.filter((a) => a.type === "prompt" && !a.captureSelection);
+ const fromX = getLocalDOMRect(model.mathfield.getHTMLElement(fromAtom)).right;
+ const targetSelection = model.offsetOf(
+ getClosestAtomToXPosition(model.mathfield, editableAtoms, fromX)
+ ) - (hasEditablePrompts ? 1 : 0);
+ if (extend) {
+ const [left, right] = model.selection.ranges[0];
+ let newSelection;
+ const cmp = direction === "up" ? left : right;
+ if (targetSelection < cmp) {
+ newSelection = {
+ ranges: [[targetSelection, right]],
+ direction: "backward"
+ };
+ } else {
+ newSelection = {
+ ranges: [[left, targetSelection]],
+ direction: "forward"
+ };
+ }
+ model.setSelection(newSelection);
+ } else {
+ model.setPositionHandlingPlaceholder(targetSelection);
+ }
+ model.announce(`move ${direction}`);
+}
+function moveUpward(model, options) {
+ var _a3, _b3;
+ const extend = (_a3 = options == null ? void 0 : options.extend) != null ? _a3 : false;
+ if (!extend)
+ model.collapseSelection("backward");
+ const handleDeadEnd = () => {
+ var _a4, _b4;
+ let result = true;
+ if (!model.silenceNotifications) {
+ result = (_b4 = (_a4 = model.mathfield.host) == null ? void 0 : _a4.dispatchEvent(
+ new CustomEvent("move-out", {
+ detail: { direction: "upward" },
+ cancelable: true,
+ bubbles: true,
+ composed: true
+ })
+ )) != null ? _b4 : true;
+ }
+ model.announce(result ? "plonk" : "line");
+ return result;
+ };
+ const baseAtom = model.at(model.position);
+ let atom = baseAtom;
+ while (atom && atom.parentBranch !== "below" && !(Array.isArray(atom.parentBranch) && atom.parent instanceof ArrayAtom))
+ atom = atom.parent;
+ if (Array.isArray(atom == null ? void 0 : atom.parentBranch) && atom.parent instanceof ArrayAtom) {
+ const arrayAtom = atom.parent;
+ if (atom.parentBranch[0] < 1)
+ return handleDeadEnd();
+ const rowAbove = atom.parentBranch[0] - 1;
+ const aboveCell = arrayAtom.array[rowAbove][atom.parentBranch[1]];
+ const cellHasPrompt = aboveCell.some(
+ (a) => a.type === "prompt" && !a.captureSelection
+ );
+ if (!cellHasPrompt && model.mathfield.hasEditablePrompts)
+ return handleDeadEnd();
+ moveToClosestAtomVertically(model, baseAtom, aboveCell, extend, "up");
+ } else if (atom) {
+ const branch = (_b3 = atom.parent.branch("above")) != null ? _b3 : atom.parent.createBranch("above");
+ const branchHasPrompt = branch.some(
+ (a) => a.type === "prompt" && a.placeholderId
+ );
+ if (!branchHasPrompt && model.mathfield.hasEditablePrompts)
+ return handleDeadEnd();
+ moveToClosestAtomVertically(model, baseAtom, branch, extend, "up");
+ } else
+ return handleDeadEnd();
+ model.mathfield.stopCoalescingUndo();
+ return true;
+}
+function moveDownward(model, options) {
+ var _a3, _b3;
+ const extend = (_a3 = options == null ? void 0 : options.extend) != null ? _a3 : false;
+ if (!extend)
+ model.collapseSelection("forward");
+ const handleDeadEnd = () => {
+ var _a4, _b4;
+ let result = true;
+ if (!model.silenceNotifications) {
+ result = (_b4 = (_a4 = model.mathfield.host) == null ? void 0 : _a4.dispatchEvent(
+ new CustomEvent("move-out", {
+ detail: { direction: "downward" },
+ cancelable: true,
+ bubbles: true,
+ composed: true
+ })
+ )) != null ? _b4 : true;
+ }
+ model.announce(result ? "plonk" : "line");
+ return result;
+ };
+ const baseAtom = model.at(model.position);
+ let atom = baseAtom;
+ while (atom && atom.parentBranch !== "above" && !(Array.isArray(atom.parentBranch) && atom.parent instanceof ArrayAtom))
+ atom = atom.parent;
+ if (Array.isArray(atom == null ? void 0 : atom.parentBranch) && atom.parent instanceof ArrayAtom) {
+ const arrayAtom = atom.parent;
+ if (atom.parentBranch[0] + 1 > arrayAtom.array.length - 1)
+ return handleDeadEnd();
+ const rowBelow = atom.parentBranch[0] + 1;
+ const belowCell = arrayAtom.array[rowBelow][atom.parentBranch[1]];
+ const cellHasPrompt = belowCell.some(
+ (a) => a.type === "prompt" && !a.captureSelection
+ );
+ if (!cellHasPrompt && model.mathfield.hasEditablePrompts)
+ return handleDeadEnd();
+ moveToClosestAtomVertically(model, baseAtom, belowCell, extend, "down");
+ } else if (atom) {
+ const branch = (_b3 = atom.parent.branch("below")) != null ? _b3 : atom.parent.createBranch("below");
+ const branchHasPrompt = branch.some((a) => a.type === "prompt");
+ if (!branchHasPrompt && model.mathfield.hasEditablePrompts)
+ return handleDeadEnd();
+ moveToClosestAtomVertically(model, baseAtom, branch, extend, "down");
+ } else
+ return handleDeadEnd();
+ return true;
+}
+
+// src/editor-model/commands-move.ts
+function moveAfterParent(model) {
+ const previousPosition = model.position;
+ const parent = model.at(previousPosition).parent;
+ if (!(parent == null ? void 0 : parent.parent)) {
+ model.announce("plonk");
+ return false;
+ }
+ model.position = model.offsetOf(parent);
+ model.mathfield.stopCoalescingUndo();
+ model.announce("move", previousPosition);
+ return true;
+}
+function superscriptDepth(model) {
+ let result = 0;
+ let atom = model.at(model.position);
+ let wasSuperscript = false;
+ while (atom) {
+ if (!atom.hasEmptyBranch("superscript") || !atom.hasEmptyBranch("subscript"))
+ result += 1;
+ if (!atom.hasEmptyBranch("superscript"))
+ wasSuperscript = true;
+ else if (!atom.hasEmptyBranch("subscript"))
+ wasSuperscript = false;
+ atom = atom.parent;
+ }
+ return wasSuperscript ? result : 0;
+}
+function subscriptDepth(model) {
+ let result = 0;
+ let atom = model.at(model.position);
+ let wasSubscript = false;
+ while (atom) {
+ if (!atom.hasEmptyBranch("superscript") || !atom.hasEmptyBranch("subscript"))
+ result += 1;
+ if (!atom.hasEmptyBranch("superscript"))
+ wasSubscript = false;
+ else if (!atom.hasEmptyBranch("subscript"))
+ wasSubscript = true;
+ atom = atom.parent;
+ }
+ return wasSubscript ? result : 0;
+}
+function moveToSuperscript(model) {
+ var _a3;
+ model.collapseSelection();
+ if (superscriptDepth(model) >= model.mathfield.options.scriptDepth[1]) {
+ model.announce("plonk");
+ return false;
+ }
+ let target = model.at(model.position);
+ if (target.subsupPlacement === void 0) {
+ if (((_a3 = target.rightSibling) == null ? void 0 : _a3.type) !== "subsup") {
+ target.parent.addChildAfter(
+ new SubsupAtom({ style: target.computedStyle }),
+ target
+ );
+ }
+ target = target.rightSibling;
+ }
+ target.createBranch("superscript");
+ model.setSelection(
+ model.getSiblingsRange(model.offsetOf(target.superscript[0]))
+ );
+ return true;
+}
+function moveToSubscript(model) {
+ var _a3;
+ model.collapseSelection();
+ if (subscriptDepth(model) >= model.mathfield.options.scriptDepth[0]) {
+ model.announce("plonk");
+ return false;
+ }
+ let target = model.at(model.position);
+ if (target.subsupPlacement === void 0) {
+ if (((_a3 = model.at(model.position + 1)) == null ? void 0 : _a3.type) !== "subsup") {
+ target.parent.addChildAfter(
+ new SubsupAtom({ style: model.at(model.position).computedStyle }),
+ target
+ );
+ }
+ target = model.at(model.position + 1);
+ }
+ target.createBranch("subscript");
+ model.setSelection(
+ model.getSiblingsRange(model.offsetOf(target.subscript[0]))
+ );
+ return true;
+}
+function getTabbableElements() {
+ function tabbable(element) {
+ const regularTabbables = [];
+ const orderedTabbables = [];
+ const candidates = [
+ ...element.querySelectorAll(`input, select, textarea, a[href], button,
+ [tabindex], audio[controls], video[controls],
+ [contenteditable]:not([contenteditable="false"]), details>summary`)
+ ].filter(isNodeMatchingSelectorTabbable);
+ candidates.forEach((candidate, i) => {
+ const candidateTabindex = getTabindex(candidate);
+ if (candidateTabindex === 0)
+ regularTabbables.push(candidate);
+ else {
+ orderedTabbables.push({
+ documentOrder: i,
+ tabIndex: candidateTabindex,
+ node: candidate
+ });
+ }
+ });
+ return orderedTabbables.sort(
+ (a, b) => a.tabIndex === b.tabIndex ? a.documentOrder - b.documentOrder : a.tabIndex - b.tabIndex
+ ).map((a) => a.node).concat(regularTabbables);
+ }
+ function isNodeMatchingSelectorTabbable(element) {
+ if (!isNodeMatchingSelectorFocusable(element) || isNonTabbableRadio(element) || getTabindex(element) < 0)
+ return false;
+ return true;
+ }
+ function isNodeMatchingSelectorFocusable(node) {
+ if (node.disabled || node.type === "hidden" && node.tagName.toUpperCase() === "INPUT" || isHidden(node))
+ return false;
+ return true;
+ }
+ function getTabindex(node) {
+ var _a3;
+ const tabindexAttr = Number.parseInt(
+ (_a3 = node.getAttribute("tabindex")) != null ? _a3 : "NaN",
+ 10
+ );
+ if (!Number.isNaN(tabindexAttr))
+ return tabindexAttr;
+ if (node.contentEditable === "true")
+ return 0;
+ if ((node.nodeName === "AUDIO" || node.nodeName === "VIDEO") && node.getAttribute("tabindex") === null)
+ return 0;
+ return node.tabIndex;
+ }
+ function isNonTabbableRadio(node) {
+ return node.tagName.toUpperCase() === "INPUT" && node.type === "radio" && !isTabbableRadio(node);
+ }
+ function getCheckedRadio(nodes, form) {
+ for (const node of nodes)
+ if (node.checked && node.form === form)
+ return node;
+ return null;
+ }
+ function isTabbableRadio(node) {
+ var _a3;
+ if (!node.name)
+ return true;
+ const radioScope = (_a3 = node.form) != null ? _a3 : node.ownerDocument;
+ const radioSet = radioScope.querySelectorAll(
+ 'input[type="radio"][name="' + node.name + '"]'
+ );
+ const checked = getCheckedRadio(radioSet, node.form);
+ return !checked || checked === node;
+ }
+ function isHidden(element) {
+ if (!isBrowser() || element === document.activeElement || element.contains(document.activeElement))
+ return false;
+ if (getComputedStyle(element).visibility === "hidden")
+ return true;
+ const bounds = element.getBoundingClientRect();
+ if (bounds.width === 0 || bounds.height === 0)
+ return true;
+ while (element) {
+ if (getComputedStyle(element).display === "none")
+ return true;
+ element = element.parentElement;
+ }
+ return false;
+ }
+ if (!isBrowser())
+ return [];
+ return tabbable(document.body);
+}
+function select(model, target, direction = "forward") {
+ const previousPosition = model.position;
+ if (Array.isArray(target)) {
+ const first = model.offsetOf(target[0]);
+ const last = model.offsetOf(target[target.length - 1]);
+ if (direction === "forward")
+ model.setSelection(first, last);
+ else
+ model.setSelection(last, first);
+ model.announce("move", previousPosition);
+ model.mathfield.stopCoalescingUndo();
+ return true;
+ }
+ if (direction === "forward")
+ return select(model, [target.leftSibling, target]);
+ return select(model, [target, target.leftSibling]);
+}
+function leapTo(model, target) {
+ const previousPosition = model.position;
+ if (typeof target === "number")
+ target = model.at(target);
+ if (target.type === "prompt") {
+ model.setSelection(
+ model.offsetOf(target.firstChild),
+ model.offsetOf(target.lastChild)
+ );
+ } else {
+ const newPosition = model.offsetOf(target);
+ if (target.type === "placeholder")
+ model.setSelection(newPosition - 1, newPosition);
+ else
+ model.position = newPosition;
+ }
+ model.announce("move", previousPosition);
+ model.mathfield.stopCoalescingUndo();
+ return true;
+}
+function leap(model, dir, callHooks = true) {
+ var _a3, _b3;
+ const dist = dir === "forward" ? 1 : -1;
+ if (model.at(model.anchor).type === "placeholder")
+ move(model, dir);
+ let origin;
+ const parentPrompt = model.at(model.anchor).parentPrompt;
+ if (parentPrompt) {
+ if (dir === "forward")
+ origin = model.offsetOf(parentPrompt) + 1;
+ else
+ origin = model.offsetOf(parentPrompt.leftSibling);
+ } else
+ origin = Math.max(model.position + dist, 0);
+ const target = leapTarget(model, origin, dir);
+ if (!target || dir === "forward" && model.offsetOf(target) < origin || dir === "backward" && model.offsetOf(target) > origin) {
+ const handled = !callHooks || !((_b3 = (_a3 = model.mathfield.host) == null ? void 0 : _a3.dispatchEvent(
+ new CustomEvent("move-out", {
+ detail: { direction: dir },
+ cancelable: true,
+ bubbles: true,
+ composed: true
+ })
+ )) != null ? _b3 : true);
+ if (handled) {
+ model.announce("plonk");
+ return false;
+ }
+ const tabbable = getTabbableElements();
+ if (!document.activeElement || tabbable.length <= 1) {
+ model.announce("plonk");
+ return false;
+ }
+ let index = tabbable.indexOf(document.activeElement) + dist;
+ if (index < 0)
+ index = tabbable.length - 1;
+ if (index >= tabbable.length)
+ index = 0;
+ tabbable[index].focus();
+ model.mathfield.stopCoalescingUndo();
+ return true;
+ }
+ leapTo(model, target);
+ return true;
+}
+function leapTarget(model, origin = 0, dir = "forward") {
+ return model.findAtom(
+ (atom) => atom.type === "placeholder" || atom.type === "prompt" || !model.mathfield.readOnly && atom.treeDepth > 2 && atom.isFirstSibling && atom.isLastSibling,
+ origin,
+ dir
+ );
+}
+register2(
+ {
+ moveToOpposite: (model) => {
+ const OPPOSITE_RELATIONS = {
+ superscript: "subscript",
+ subscript: "superscript",
+ above: "below",
+ below: "above"
+ };
+ const cursor = model.at(model.position);
+ const { parent } = cursor;
+ if (!parent) {
+ model.announce("plonk");
+ return false;
+ }
+ const relation = cursor.parentBranch;
+ let oppositeRelation;
+ if (typeof relation === "string")
+ oppositeRelation = OPPOSITE_RELATIONS[relation];
+ if (!oppositeRelation) {
+ const result2 = cursor.subsupPlacement ? moveToSubscript(model) : moveToSuperscript(model);
+ model.mathfield.stopCoalescingUndo();
+ return result2;
+ }
+ if (!parent.branch(oppositeRelation)) {
+ parent.createBranch(oppositeRelation);
+ }
+ const result = model.setSelection(
+ model.getBranchRange(model.offsetOf(parent), oppositeRelation)
+ );
+ model.mathfield.stopCoalescingUndo();
+ return result;
+ },
+ moveBeforeParent: (model) => {
+ const { parent } = model.at(model.position);
+ if (!parent) {
+ model.announce("plonk");
+ return false;
+ }
+ model.position = model.offsetOf(parent);
+ model.mathfield.stopCoalescingUndo();
+ return true;
+ },
+ moveAfterParent: (model) => moveAfterParent(model),
+ moveToNextChar: (model) => move(model, "forward"),
+ moveToPreviousChar: (model) => move(model, "backward"),
+ moveUp: (model) => move(model, "upward"),
+ moveDown: (model) => move(model, "downward"),
+ moveToNextWord: (model) => skip(model, "forward"),
+ moveToPreviousWord: (model) => skip(model, "backward"),
+ moveToGroupStart: (model) => {
+ const pos = model.offsetOf(model.at(model.position).firstSibling);
+ if (pos === model.position) {
+ model.announce("plonk");
+ return false;
+ }
+ model.position = pos;
+ model.mathfield.stopCoalescingUndo();
+ return true;
+ },
+ moveToGroupEnd: (model) => {
+ const pos = model.offsetOf(model.at(model.position).lastSibling);
+ if (pos === model.position) {
+ model.announce("plonk");
+ return false;
+ }
+ model.position = pos;
+ model.mathfield.stopCoalescingUndo();
+ return true;
+ },
+ moveToNextGroup: (model) => {
+ var _a3, _b3, _c2, _d2;
+ if (model.position === model.lastOffset && model.anchor === model.lastOffset)
+ return leap(model, "forward");
+ const atom = model.at(model.position);
+ const mode = atom.mode;
+ if (mode === "text") {
+ if (model.selectionIsCollapsed) {
+ let first = atom;
+ while (first && first.mode === "text")
+ first = first.leftSibling;
+ let last = atom;
+ while (((_a3 = last.rightSibling) == null ? void 0 : _a3.mode) === "text")
+ last = last.rightSibling;
+ if (first && last)
+ return select(model, [first, last]);
+ }
+ if (atom.rightSibling.mode === "text") {
+ let next = atom;
+ while (next && next.mode === "text")
+ next = next.rightSibling;
+ if (next) {
+ leapTo(model, (_b3 = next.leftSibling) != null ? _b3 : next);
+ model.mathfield.switchMode("math");
+ return true;
+ }
+ return leapTo(model, model.lastOffset);
+ }
+ }
+ const parentPrompt = model.at(model.anchor).parentPrompt;
+ const origin = parentPrompt ? model.offsetOf(parentPrompt) + 1 : Math.max(model.position + 1, 0);
+ const target = leapTarget(model, origin, "forward");
+ if (target)
+ return leapTo(model, target);
+ const sibling = findSibling(
+ model,
+ atom,
+ (x) => x.type === "leftright" || x.type === "text",
+ "forward"
+ );
+ if (sibling) {
+ if (sibling.mode === "text") {
+ let last = sibling;
+ while (last && last.mode === "text")
+ last = last.rightSibling;
+ return select(model, [
+ (_c2 = sibling.leftSibling) != null ? _c2 : sibling,
+ (_d2 = last.leftSibling) != null ? _d2 : last
+ ]);
+ }
+ return select(model, sibling);
+ }
+ const parent = atom.parent;
+ if (parent) {
+ if (parent.type === "leftright" || parent.type === "surd")
+ return select(model, parent);
+ if (atom.parentBranch === "superscript" && parent.subscript)
+ return select(model, parent.subscript);
+ if (atom.parentBranch === "above" && parent.below)
+ return select(model, parent.below);
+ if (atom.parentBranch === "superscript" || atom.parentBranch === "subscript")
+ return leapTo(model, parent);
+ if (atom.parentBranch === "above" || atom.parentBranch === "below")
+ return select(model, parent);
+ }
+ return leapTo(model, model.lastOffset);
+ },
+ moveToPreviousGroup: (model) => {
+ var _a3;
+ if (model.position === 0 && model.anchor === 0)
+ return leap(model, "backward");
+ let atom = model.at(model.position);
+ const mode = atom.mode;
+ if (mode === "text") {
+ if (model.selectionIsCollapsed) {
+ let first = atom;
+ while (first && first.mode === "text")
+ first = first.leftSibling;
+ let last = atom;
+ while (((_a3 = last.rightSibling) == null ? void 0 : _a3.mode) === "text")
+ last = last.rightSibling;
+ if (first && last)
+ return select(model, [first, last]);
+ }
+ while (atom && atom.mode === "text")
+ atom = atom.leftSibling;
+ if (atom)
+ return leapTo(model, atom);
+ return leapTo(model, 0);
+ }
+ const parentPrompt = model.at(model.anchor).parentPrompt;
+ const origin = parentPrompt ? model.offsetOf(parentPrompt.leftSibling) : Math.max(model.position - 1, 0);
+ const target = leapTarget(model, origin, "backward");
+ if (target)
+ return leapTo(model, target);
+ if (mode === "math") {
+ const sibling = findSibling(
+ model,
+ atom,
+ (x) => x.type === "leftright" || x.type === "text",
+ "backward"
+ );
+ if (sibling) {
+ if (sibling.mode === "text") {
+ let first = sibling;
+ while (first && first.mode === "text")
+ first = first.leftSibling;
+ return select(model, [sibling, first]);
+ }
+ return select(model, sibling);
+ }
+ const parent = atom.parent;
+ if (parent) {
+ if (parent.type === "leftright" || parent.type === "surd")
+ return select(model, parent);
+ if (atom.parentBranch === "subscript" && parent.superscript)
+ return select(model, parent.superscript);
+ if (atom.parentBranch === "below" && parent.above)
+ return select(model, parent.above);
+ if (atom.parentBranch === "superscript" || atom.parentBranch === "subscript")
+ return leapTo(model, parent);
+ if (atom.parentBranch === "above" || atom.parentBranch === "below")
+ return select(model, parent);
+ }
+ return leapTo(model, 0);
+ }
+ return false;
+ },
+ moveToMathfieldStart: (model) => {
+ if (model.selectionIsCollapsed && model.position === 0) {
+ model.announce("plonk");
+ return false;
+ }
+ model.position = 0;
+ model.mathfield.stopCoalescingUndo();
+ return true;
+ },
+ moveToMathfieldEnd: (model) => {
+ if (model.selectionIsCollapsed && model.position === model.lastOffset) {
+ model.announce("plonk");
+ return false;
+ }
+ model.position = model.lastOffset;
+ model.mathfield.stopCoalescingUndo();
+ return true;
+ },
+ moveToSuperscript,
+ moveToSubscript
+ },
+ { target: "model", changeSelection: true }
+);
+register2(
+ {
+ moveToNextPlaceholder: (model) => leap(model, "forward"),
+ moveToPreviousPlaceholder: (model) => leap(model, "backward")
+ },
+ { target: "model", changeSelection: true, audioFeedback: "return" }
+);
+function findSibling(model, atom, pred, dir) {
+ if (dir === "forward") {
+ let result2 = atom.rightSibling;
+ while (result2 && !pred(result2))
+ result2 = result2.rightSibling;
+ return result2;
+ }
+ let result = atom.leftSibling;
+ while (result && !pred(result))
+ result = result.leftSibling;
+ return result;
+}
+
+// src/editor-mathfield/smartmode.ts
+function convertLastAtomsToText(model, count, until) {
+ if (typeof count === "function") {
+ until = count;
+ count = Infinity;
+ }
+ if (count === void 0)
+ count = Infinity;
+ let i = model.position;
+ let done = false;
+ let text = "";
+ while (!done) {
+ const atom = model.at(i);
+ done = count === 0 || atom === void 0 || atom.type === "first" || atom.mode !== "math" || !(atom.type && /mord|mpunct|operator/.test(atom.type) || atom.type === "mop" && /[a-zA-Z ]+/.test(atom.value)) || !atom.hasEmptyBranch("superscript") || !atom.hasEmptyBranch("subscript") || typeof until === "function" && !until(atom);
+ if (!done) {
+ atom.mode = "text";
+ atom.command = atom.value;
+ atom.verbatimLatex = void 0;
+ text += atom.value;
+ }
+ i -= 1;
+ count -= 1;
+ }
+ model.contentDidChange({ data: text, inputType: "insertText" });
+}
+function convertLastAtomsToMath(model, count, until) {
+ if (typeof count === "function") {
+ until = count;
+ count = Infinity;
+ }
+ if (count === void 0)
+ count = Infinity;
+ let i = model.position;
+ let done = false;
+ const data = [];
+ while (!done) {
+ const atom = model.at(i);
+ done = count === 0 || !atom || atom.type === "first" || atom.isFirstSibling || atom.mode !== "text" || atom.value === " " || typeof until === "function" && !until(atom);
+ if (!done) {
+ data.push(Atom.serialize([atom], { defaultMode: "math" }));
+ atom.mode = "math";
+ }
+ i -= 1;
+ count -= 1;
+ }
+ removeIsolatedSpace(model);
+ model.contentDidChange({ data: joinLatex(data), inputType: "insertText" });
+}
+function removeIsolatedSpace(model) {
+ var _a3;
+ let i = model.position - 1;
+ while (i >= 0 && ((_a3 = model.at(i)) == null ? void 0 : _a3.mode) === "math")
+ i -= 1;
+ if (i < 0)
+ return;
+ if (model.at(i).mode === "text" && model.at(i).value === " " && model.at(i - 1).mode === "math") {
+ model.at(i - 1).parent.removeChild(model.at(i - 1));
+ const save = model.silenceNotifications;
+ model.silenceNotifications = true;
+ model.position -= 1;
+ model.silenceNotifications = save;
+ model.contentDidChange({ inputType: "deleteContent" });
+ }
+}
+function getTextBeforePosition(model) {
+ let result = "";
+ let i = model.position;
+ let done = false;
+ while (!done) {
+ const atom = model.at(i);
+ done = !(atom && (atom.mode === "text" || atom.mode === "math" && atom.type && /mord|mpunct/.test(atom.type)));
+ if (!done)
+ result = atom.value + result;
+ i -= 1;
+ }
+ return result;
+}
+function smartMode(mathfield, keystroke, evt) {
+ const { model } = mathfield;
+ if (model.mode === "latex")
+ return false;
+ if (!model.at(model.position).isLastSibling)
+ return false;
+ if (!evt || !mightProducePrintableCharacter(evt))
+ return false;
+ const c = keyboardEventToChar(evt);
+ if (!model.selectionIsCollapsed) {
+ if (mathfield.model.mode === "text") {
+ if (/[/_^]/.test(c))
+ return true;
+ }
+ return false;
+ }
+ const context = getTextBeforePosition(model) + c;
+ if (mathfield.model.mode === "text") {
+ if (keystroke === "Esc" || /[/\\]/.test(c)) {
+ return true;
+ }
+ if (/[\^_]/.test(c)) {
+ if (/(^|\s)[a-zA-Z][^_]$/.test(context)) {
+ convertLastAtomsToMath(model, 1);
+ }
+ return true;
+ }
+ const lFence = { ")": "(", "}": "{", "]": "[" }[c];
+ const { parent } = model.at(model.position);
+ if (lFence && parent instanceof LeftRightAtom && parent.leftDelim === lFence)
+ return true;
+ if (/(^|[^a-zA-Z])(a|I) $/.test(context)) {
+ return false;
+ }
+ if (/[$€£₤₺¥¤฿¢₡₧₨₹₩₱]/u.test(c)) {
+ return true;
+ }
+ if (/(^|[^a-zA-Z'’])[a-zA-Z] $/.test(context)) {
+ convertLastAtomsToMath(model, 1);
+ return false;
+ }
+ if (/\D\.[^\d\s]$/.test(context)) {
+ convertLastAtomsToMath(model, 1);
+ const atom = model.at(model.position);
+ atom.value = "\u22C5";
+ atom.style.variant = "normal";
+ atom.command = "\\cdot";
+ atom.verbatimLatex = void 0;
+ model.contentDidChange({ data: "\\cdot", inputType: "insertText" });
+ return true;
+ }
+ if (/(^|\s)[a-zA-Z][^a-zA-Z]$/.test(context)) {
+ convertLastAtomsToMath(model, 1);
+ return true;
+ }
+ if (/\.\d$/.test(context)) {
+ convertLastAtomsToMath(model, 1);
+ return true;
+ }
+ if (/\([\d+\-.]$/.test(context)) {
+ convertLastAtomsToMath(model, 1);
+ return true;
+ }
+ if (/\([a-z][,;]$/.test(context)) {
+ convertLastAtomsToMath(model, 2);
+ return true;
+ }
+ if (/[\d+\-=><*|]$/.test(c)) {
+ removeIsolatedSpace(model);
+ return true;
+ }
+ } else {
+ if (keystroke === "[Space]") {
+ convertLastAtomsToText(
+ model,
+ void 0,
+ (a) => /[a-z][:,;.]$/.test(a.value)
+ );
+ return true;
+ }
+ if (/[a-zA-Z]{3,}$/.test(context) && !/(dxd|abc|xyz|uvw)$/.test(context)) {
+ convertLastAtomsToText(model, void 0, (a) => /[a-zA-Z]/.test(a.value));
+ return true;
+ }
+ if (/(^|\W)(if)$/i.test(context)) {
+ convertLastAtomsToText(model, 1);
+ return true;
+ }
+ if (/(\u0393|\u0394|\u0398|\u039B|\u039E|\u03A0|\u03A3|\u03A5|\u03A6|\u03A8|\u03A9|[\u03B1-\u03C9]|\u03D1|\u03D5|\u03D6|\u03F1|\u03F5){3,}$/u.test(
+ context
+ ) && !/(αβγ)$/.test(context)) {
+ convertLastAtomsToText(
+ model,
+ void 0,
+ (a) => /(:|,|;|.|\u0393|\u0394|\u0398|\u039B|\u039E|\u03A0|\u03A3|\u03A5|\u03A6|\u03A8|\u03A9|[\u03B1-\u03C9]|\u03D1|\u03D5|\u03D6|\u03F1|\u03F5)/u.test(
+ a.value
+ )
+ );
+ return true;
+ }
+ if (c === "?") {
+ return true;
+ }
+ if (c === "." && !/[\d-+]\.$/.test(context)) {
+ return true;
+ }
+ }
+ return false;
+}
+
+// src/editor-mathfield/keystroke-caption.ts
+function showKeystroke(mathfield, keystroke) {
+ if (!mathfield.isSelectionEditable || !mathfield.keystrokeCaptionVisible)
+ return;
+ const vb = createKeystrokeCaption();
+ const bounds = mathfield.element.getBoundingClientRect();
+ vb.style.left = `${bounds.left}px`;
+ vb.style.top = `${bounds.top - 64}px`;
+ vb.innerHTML = window.MathfieldElement.createHTML(
+ "" + (getKeybindingMarkup(keystroke) || keystroke) + "" + vb.innerHTML
+ );
+ vb.style.visibility = "visible";
+ setTimeout(() => {
+ if (vb.childNodes.length > 0)
+ vb.childNodes[vb.childNodes.length - 1].remove();
+ if (vb.childNodes.length === 0)
+ vb.style.visibility = "hidden";
+ }, 3e3);
+}
+function toggleKeystrokeCaption(mathfield) {
+ mathfield.keystrokeCaptionVisible = !mathfield.keystrokeCaptionVisible;
+ if (!mathfield.keystrokeCaptionVisible) {
+ const panel = getSharedElement("mathlive-keystroke-caption-panel");
+ panel.style.visibility = "hidden";
+ } else {
+ const panel = createKeystrokeCaption();
+ panel.innerHTML = "";
+ }
+ return false;
+}
+function createKeystrokeCaption() {
+ const panel = document.getElementById("mathlive-keystroke-caption-panel");
+ if (panel)
+ return panel;
+ injectStylesheet("keystroke-caption");
+ injectStylesheet("core");
+ return getSharedElement("mathlive-keystroke-caption-panel");
+}
+function disposeKeystrokeCaption() {
+ if (!document.getElementById("mathlive-keystroke-caption-panel"))
+ return;
+ releaseSharedElement("mathlive-keystroke-caption-panel");
+ releaseStylesheet("core");
+ releaseStylesheet("keystroke-caption");
+}
+
+// src/editor-mathfield/keyboard-input.ts
+function onKeystroke(mathfield, evt) {
+ var _a3, _b3, _c2;
+ const { model } = mathfield;
+ const keystroke = keyboardEventToString(evt);
+ if (evt.isTrusted) {
+ validateKeyboardLayout(evt);
+ const activeLayout = getActiveKeyboardLayout();
+ if (mathfield.keyboardLayout !== activeLayout.id) {
+ mathfield.keyboardLayout = activeLayout.id;
+ mathfield._keybindings = void 0;
+ }
+ }
+ clearTimeout(mathfield.inlineShortcutBufferFlushTimer);
+ mathfield.inlineShortcutBufferFlushTimer = 0;
+ showKeystroke(mathfield, keystroke);
+ if (evt.isTrusted && evt.defaultPrevented) {
+ mathfield.flushInlineShortcutBuffer();
+ return false;
+ }
+ let shortcut;
+ let selector = "";
+ let stateIndex;
+ const buffer = mathfield.inlineShortcutBuffer;
+ if (mathfield.isSelectionEditable) {
+ if (model.mode === "math") {
+ if (keystroke === "[Backspace]")
+ buffer.pop();
+ else if (!mightProducePrintableCharacter(evt)) {
+ mathfield.flushInlineShortcutBuffer();
+ } else {
+ const c = keyboardEventToChar(evt);
+ const keystrokes = [
+ ...(_b3 = (_a3 = buffer[buffer.length - 1]) == null ? void 0 : _a3.keystrokes) != null ? _b3 : [],
+ c
+ ];
+ buffer.push({
+ state: model.getState(),
+ keystrokes,
+ leftSiblings: getLeftSiblings(mathfield)
+ });
+ let i = 0;
+ let candidate = "";
+ while (!shortcut && i < keystrokes.length) {
+ stateIndex = buffer.length - (keystrokes.length - i);
+ candidate = keystrokes.slice(i).join("");
+ shortcut = getInlineShortcut(
+ buffer[stateIndex].leftSiblings,
+ candidate,
+ mathfield.options.inlineShortcuts
+ );
+ if (!shortcut && /^[a-zA-Z][a-zA-Z0-9]+?([_\^][a-zA-Z0-9\*\+\-]+?)?$/.test(candidate))
+ shortcut = mathfield.options.onInlineShortcut(mathfield, candidate);
+ i += 1;
+ }
+ mathfield.flushInlineShortcutBuffer({ defer: true });
+ }
+ }
+ if (mathfield.options.smartMode) {
+ if (shortcut) {
+ mathfield.switchMode("math");
+ } else if (smartMode(mathfield, keystroke, evt)) {
+ mathfield.switchMode({ math: "text", text: "math" }[model.mode]);
+ selector = "";
+ }
+ }
+ }
+ if (!shortcut) {
+ if (!selector) {
+ selector = getCommandForKeybinding(
+ mathfield.keybindings,
+ model.mode,
+ evt
+ );
+ }
+ if (!selector && (keystroke === "[Enter]" || keystroke === "[Return]")) {
+ let result = false;
+ if (model.contentWillChange({ inputType: "insertLineBreak" })) {
+ if (mathfield.host) {
+ result = !mathfield.host.dispatchEvent(
+ new Event("change", { bubbles: true, composed: true })
+ );
+ }
+ if (!result) {
+ if (evt.preventDefault) {
+ evt.preventDefault();
+ evt.stopPropagation();
+ }
+ }
+ model.contentDidChange({ inputType: "insertLineBreak" });
+ }
+ return result;
+ }
+ if ((!selector || keystroke === "[Space]") && model.mode === "math") {
+ if (keystroke === "[Space]") {
+ mathfield.adoptStyle = "none";
+ mathfield.flushInlineShortcutBuffer();
+ if (mathfield.options.mathModeSpace) {
+ ModeEditor.insert(model, mathfield.options.mathModeSpace, {
+ format: "latex",
+ mode: "math"
+ });
+ mathfield.snapshot("insert-space");
+ selector = "";
+ mathfield.dirty = true;
+ mathfield.scrollIntoView();
+ if (evt.preventDefault) {
+ evt.preventDefault();
+ evt.stopPropagation();
+ }
+ return false;
+ }
+ const nextSibling = model.at(model.position + 1);
+ const previousSibling = model.at(model.position - 1);
+ if ((nextSibling == null ? void 0 : nextSibling.mode) === "text" || (previousSibling == null ? void 0 : previousSibling.mode) === "text") {
+ ModeEditor.insert(model, " ", { mode: "text" });
+ mathfield.snapshot("insert-space");
+ mathfield.dirty = true;
+ mathfield.scrollIntoView();
+ return false;
+ }
+ }
+ if (((_c2 = model.at(model.position)) == null ? void 0 : _c2.isDigit()) && window.MathfieldElement.decimalSeparator === "," && keyboardEventToChar(evt) === ",")
+ selector = "insertDecimalSeparator";
+ }
+ }
+ if (!shortcut && !selector) {
+ if (!model.mathfield.smartFence) {
+ const { parent: parent2 } = model.at(model.position);
+ if (parent2 instanceof LeftRightAtom && parent2.rightDelim === "?" && model.at(model.position).isLastSibling && /^[)}\]|]$/.test(keystroke)) {
+ mathfield.snapshot();
+ parent2.isDirty = true;
+ parent2.rightDelim = keystroke;
+ model.position += 1;
+ model.selectionDidChange();
+ model.contentDidChange({
+ data: keyboardEventToChar(evt),
+ inputType: "insertText"
+ });
+ mathfield.snapshot("insert-fence");
+ mathfield.dirty = true;
+ mathfield.scrollIntoView();
+ if (evt.preventDefault)
+ evt.preventDefault();
+ return false;
+ }
+ if (!model.selectionIsCollapsed) {
+ const fence = keyboardEventToChar(evt);
+ if (fence === "(" || fence === "{" || fence === "[") {
+ const lDelim = { "(": "(", "{": "\\lbrace", "[": "\\lbrack" }[fence];
+ const rDelim = { "(": ")", "{": "\\rbrace", "[": "\\rbrack" }[fence];
+ const [start, end] = range(model.selection);
+ mathfield.snapshot();
+ model.position = end;
+ ModeEditor.insert(model, rDelim, { format: "latex" });
+ model.position = start;
+ ModeEditor.insert(model, lDelim, { format: "latex" });
+ model.setSelection(start + 1, end + 1);
+ model.contentDidChange({
+ data: fence,
+ inputType: "insertText"
+ });
+ mathfield.snapshot("insert-fence");
+ mathfield.dirty = true;
+ mathfield.scrollIntoView();
+ if (evt.preventDefault)
+ evt.preventDefault();
+ return false;
+ }
+ }
+ } else if (insertSmartFence(
+ model,
+ keyboardEventToChar(evt),
+ mathfield.effectiveStyle
+ )) {
+ mathfield.dirty = true;
+ mathfield.scrollIntoView();
+ if (evt.preventDefault)
+ evt.preventDefault();
+ return false;
+ }
+ return true;
+ }
+ const child = model.at(Math.max(model.position, model.anchor));
+ const { parent } = child;
+ if (selector === "moveAfterParent" && (parent == null ? void 0 : parent.type) === "leftright" && child.isLastSibling && mathfield.options.smartFence && insertSmartFence(model, ".", mathfield.defaultStyle)) {
+ selector = "";
+ requestUpdate(mathfield);
+ }
+ mathfield.keyboardDelegate.cancelComposition();
+ if (selector)
+ mathfield.executeCommand(selector);
+ else if (shortcut) {
+ const style = mathfield.effectiveStyle;
+ model.setState(buffer[stateIndex].state);
+ const keystrokes = buffer[buffer.length - 1].keystrokes;
+ for (const c of keystrokes) {
+ ModeEditor.insert(model, c, {
+ silenceNotifications: true,
+ style
+ });
+ }
+ mathfield.snapshot(`insert-shortcut`);
+ model.setState(buffer[stateIndex].state);
+ model.deferNotifications(
+ {
+ content: true,
+ selection: true,
+ data: shortcut,
+ type: "insertText"
+ },
+ () => {
+ ModeEditor.insert(model, shortcut, { format: "latex", style });
+ removeIsolatedSpace(mathfield.model);
+ if (shortcut.endsWith(" ")) {
+ mathfield.switchMode("text");
+ ModeEditor.insert(model, " ", { style, mode: "text" });
+ }
+ mathfield.snapshot();
+ if (!model.selectionIsCollapsed)
+ mathfield.flushInlineShortcutBuffer();
+ return true;
+ }
+ );
+ mathfield.dirty = true;
+ model.announce("replacement");
+ }
+ mathfield.scrollIntoView();
+ if (evt.preventDefault)
+ evt.preventDefault();
+ return false;
+}
+function onInput(mathfield, text, options) {
+ const { model } = mathfield;
+ if (!mathfield.isSelectionEditable) {
+ model.announce("plonk");
+ return;
+ }
+ options != null ? options : options = {};
+ if (options.focus)
+ mathfield.focus();
+ if (options.feedback)
+ window.MathfieldElement.playSound("keypress");
+ if (typeof options.mode === "string") {
+ mathfield.switchMode(options.mode);
+ mathfield.snapshot();
+ }
+ let graphemes = splitGraphemes(text);
+ const keyboard = window.mathVirtualKeyboard;
+ if (keyboard == null ? void 0 : keyboard.isShifted) {
+ graphemes = typeof graphemes === "string" ? graphemes.toUpperCase() : graphemes.map((c) => c.toUpperCase());
+ }
+ if (options.simulateKeystroke) {
+ let handled = true;
+ for (const c of graphemes) {
+ if (onKeystroke(mathfield, new KeyboardEvent("keypress", { key: c })))
+ handled = false;
+ }
+ if (handled)
+ return;
+ }
+ const atom = model.at(model.position);
+ const style = __spreadValues(__spreadValues({}, atom.computedStyle), mathfield.defaultStyle);
+ if (!model.selectionIsCollapsed) {
+ model.deleteAtoms(range(model.selection));
+ mathfield.snapshot("delete");
+ }
+ if (model.mode === "latex") {
+ model.deferNotifications(
+ { content: true, selection: true, data: text, type: "insertText" },
+ () => {
+ removeSuggestion(mathfield);
+ for (const c of graphemes)
+ ModeEditor.insert(model, c);
+ mathfield.snapshot("insert-latex");
+ updateAutocomplete(mathfield);
+ }
+ );
+ } else if (model.mode === "text") {
+ for (const c of graphemes)
+ ModeEditor.insert(model, c, { style });
+ mathfield.snapshot("insert-text");
+ } else if (model.mode === "math")
+ for (const c of graphemes)
+ insertMathModeChar(mathfield, c, style, atom);
+ mathfield.dirty = true;
+ mathfield.scrollIntoView();
+}
+function getLeftSiblings(mf) {
+ const model = mf.model;
+ const result = [];
+ let atom = model.at(Math.min(model.position, model.anchor));
+ while (atom.type !== "first") {
+ result.push(atom);
+ atom = atom.leftSibling;
+ }
+ return result;
+}
+function insertMathModeChar(mathfield, c, style, atom) {
+ const model = mathfield.model;
+ let selector = {
+ "^": "moveToSuperscript",
+ "_": "moveToSubscript",
+ " ": "moveAfterParent"
+ }[c];
+ if (c === " " && mathfield.options.mathModeSpace)
+ selector = ["insert", mathfield.options.mathModeSpace];
+ if (selector) {
+ mathfield.executeCommand(selector);
+ return;
+ }
+ if (/\d/.test(c) && mathfield.options.smartSuperscript && atom.parentBranch === "superscript" && atom.parent.type !== "mop" && atom.parent.type !== "operator" && atom.parent.type !== "extensible-symbol" && atom.hasNoSiblings) {
+ clearSelection(model);
+ ModeEditor.insert(model, c, { style });
+ mathfield.snapshot();
+ moveAfterParent(model);
+ mathfield.snapshot();
+ return;
+ }
+ if (/[a-zA-Z0-9]/.test(c) && mathfield.adoptStyle !== "none") {
+ const sibling = mathfield.adoptStyle === "left" ? atom : atom.parent ? atom.rightSibling : null;
+ if ((sibling == null ? void 0 : sibling.type) === "mord" && /[a-zA-Z0-9]/.test(sibling.value)) {
+ style = __spreadValues({}, style);
+ if (sibling.style.variant)
+ style.variant = sibling.style.variant;
+ if (sibling.style.variantStyle)
+ style.variantStyle = sibling.style.variantStyle;
+ }
+ }
+ ModeEditor.insert(model, c, { style });
+ mathfield.snapshot(`insert-${model.at(model.position).type}`);
+}
+function clearSelection(model) {
+ if (!model.selectionIsCollapsed) {
+ model.deleteAtoms(range(model.selection));
+ model.mathfield.snapshot("delete");
+ }
+}
+function insertSmartFence(model, key, style) {
+ if (!key)
+ return false;
+ if (model.mode !== "math")
+ return false;
+ const atom = model.at(model.position);
+ const { parent } = atom;
+ const fence = {
+ "(": "(",
+ ")": ")",
+ "{": "\\lbrace",
+ "}": "\\rbrace",
+ "[": "\\lbrack",
+ "]": "\\rbrack",
+ "|": "|"
+ }[key];
+ if (!fence)
+ return false;
+ const lDelim = LEFT_DELIM[fence];
+ const rDelim = RIGHT_DELIM[fence];
+ if (!model.selectionIsCollapsed) {
+ model.mathfield.snapshot();
+ const [start, end] = range(model.selection);
+ const body = model.extractAtoms([start, end]);
+ const atom2 = parent.addChildrenAfter(
+ [
+ new LeftRightAtom("left...right", body, {
+ leftDelim: fence,
+ rightDelim: rDelim
+ })
+ ],
+ model.at(start)
+ );
+ model.setSelection(
+ model.offsetOf(atom2.firstChild),
+ model.offsetOf(atom2.lastChild)
+ );
+ model.mathfield.snapshot("insert-fence");
+ model.contentDidChange({ data: fence, inputType: "insertText" });
+ return true;
+ }
+ if (fence === "|") {
+ const delims = parent instanceof LeftRightAtom ? parent.leftDelim + parent.rightDelim : "";
+ if (delims === "\\lbrace\\rbrace" || delims === "\\{\\}" || delims === "\\lbrace?") {
+ model.mathfield.snapshot();
+ ModeEditor.insert(model, "\\,\\middle\\vert\\,", {
+ format: "latex",
+ style
+ });
+ model.mathfield.snapshot("insert-fence");
+ model.contentDidChange({ data: fence, inputType: "insertText" });
+ return true;
+ }
+ }
+ if (rDelim) {
+ if (parent instanceof LeftRightAtom && parent.firstChild === atom && // At first child
+ (parent.leftDelim === "?" || parent.leftDelim === ".")) {
+ parent.leftDelim = fence;
+ parent.isDirty = true;
+ model.mathfield.snapshot();
+ model.contentDidChange({ data: fence, inputType: "insertText" });
+ model.mathfield.snapshot("insert-fence");
+ return true;
+ }
+ if (!(parent instanceof LeftRightAtom)) {
+ let sibling = atom;
+ while (sibling) {
+ if (sibling.type === "mclose" && sibling.value === rDelim)
+ break;
+ sibling = sibling.rightSibling;
+ }
+ if (sibling) {
+ model.mathfield.snapshot();
+ const body = model.extractAtoms([
+ model.offsetOf(atom),
+ model.offsetOf(sibling)
+ ]);
+ body.pop();
+ parent.addChildrenAfter(
+ [
+ new LeftRightAtom("left...right", body, {
+ leftDelim: fence,
+ rightDelim: rDelim
+ })
+ ],
+ atom
+ );
+ model.position = model.offsetOf(parent.firstChild) + 1;
+ model.contentDidChange({ data: fence, inputType: "insertText" });
+ model.mathfield.snapshot("insert-fence");
+ return true;
+ }
+ }
+ const lastSibling = model.offsetOf(atom.lastSibling);
+ let i;
+ for (i = model.position; i <= lastSibling; i++) {
+ const atom2 = model.at(i);
+ if (atom2 instanceof LeftRightAtom && (atom2.leftDelim === "?" || atom2.leftDelim === ".") && isValidOpen(fence, atom2.rightDelim))
+ break;
+ }
+ const match = model.at(i);
+ if (i <= lastSibling && match instanceof LeftRightAtom) {
+ match.leftDelim = fence;
+ model.mathfield.snapshot();
+ let extractedAtoms = model.extractAtoms([model.position, i - 1]);
+ extractedAtoms = extractedAtoms.filter((value) => value.type !== "first");
+ match.addChildren(extractedAtoms, match.parentBranch);
+ model.position += 1;
+ model.contentDidChange({ data: fence, inputType: "insertText" });
+ model.mathfield.snapshot("insert-fence");
+ return true;
+ }
+ if (parent instanceof LeftRightAtom && (parent.leftDelim === "?" || parent.leftDelim === ".") && isValidOpen(fence, parent.rightDelim)) {
+ parent.isDirty = true;
+ parent.leftDelim = fence;
+ model.mathfield.snapshot();
+ const extractedAtoms = model.extractAtoms([
+ model.offsetOf(atom.firstSibling),
+ model.position
+ ]);
+ for (const extractedAtom of extractedAtoms)
+ parent.parent.addChildBefore(extractedAtom, parent);
+ model.contentDidChange({ data: fence, inputType: "insertText" });
+ model.mathfield.snapshot("insert-fence");
+ return true;
+ }
+ if (!(parent instanceof LeftRightAtom && parent.leftDelim === "|")) {
+ model.mathfield.snapshot();
+ ModeEditor.insert(model, `\\left${fence}\\right?`, {
+ format: "latex",
+ style
+ });
+ if (atom.lastSibling.type !== "first") {
+ const lastSiblingOffset = model.offsetOf(atom.lastSibling);
+ const content = model.extractAtoms([model.position, lastSiblingOffset]);
+ model.at(model.position).body = content;
+ model.position -= 1;
+ }
+ model.mathfield.snapshot("insert-fence");
+ return true;
+ }
+ }
+ if (lDelim) {
+ let sibling = atom;
+ while (sibling) {
+ if (sibling.type === "mopen" && sibling.value === lDelim) {
+ model.mathfield.snapshot();
+ const insertAfter = sibling.leftSibling;
+ const body = model.extractAtoms([
+ model.offsetOf(sibling.leftSibling),
+ model.offsetOf(atom)
+ ]);
+ body.shift();
+ const result = new LeftRightAtom("left...right", body, {
+ leftDelim: lDelim,
+ rightDelim: fence
+ });
+ parent.addChildrenAfter([result], insertAfter);
+ model.position = model.offsetOf(result);
+ model.contentDidChange({ data: fence, inputType: "insertText" });
+ model.mathfield.snapshot("insert-fence");
+ return true;
+ }
+ sibling = sibling.leftSibling;
+ }
+ if (parent instanceof LeftRightAtom && atom.isLastSibling && isValidClose(parent.leftDelim, fence)) {
+ model.mathfield.snapshot();
+ parent.isDirty = true;
+ parent.rightDelim = fence;
+ model.position += 1;
+ model.contentDidChange({ data: fence, inputType: "insertText" });
+ model.mathfield.snapshot("insert-fence");
+ return true;
+ }
+ const firstSibling = model.offsetOf(atom.firstSibling);
+ let i;
+ for (i = model.position; i >= firstSibling; i--) {
+ const atom2 = model.at(i);
+ if (atom2 instanceof LeftRightAtom && (atom2.rightDelim === "?" || atom2.rightDelim === ".") && isValidClose(atom2.leftDelim, fence))
+ break;
+ }
+ const match = model.at(i);
+ if (i >= firstSibling && match instanceof LeftRightAtom) {
+ model.mathfield.snapshot();
+ match.rightDelim = fence;
+ match.addChildren(
+ model.extractAtoms([i, model.position]),
+ match.parentBranch
+ );
+ model.contentDidChange({ data: fence, inputType: "insertText" });
+ model.mathfield.snapshot("insert-fence");
+ return true;
+ }
+ if (parent instanceof LeftRightAtom && (parent.rightDelim === "?" || parent.rightDelim === ".") && isValidClose(parent.leftDelim, fence)) {
+ model.mathfield.snapshot();
+ parent.isDirty = true;
+ parent.rightDelim = fence;
+ parent.parent.addChildren(
+ model.extractAtoms([model.position, model.offsetOf(atom.lastSibling)]),
+ parent.parentBranch
+ );
+ model.position = model.offsetOf(parent);
+ model.contentDidChange({ data: fence, inputType: "insertText" });
+ model.mathfield.snapshot("insert-fence");
+ return true;
+ }
+ const grandparent = parent.parent;
+ if (grandparent instanceof LeftRightAtom && (grandparent.rightDelim === "?" || grandparent.rightDelim === ".") && model.at(model.position).isLastSibling) {
+ model.position = model.offsetOf(grandparent);
+ return insertSmartFence(model, fence, style);
+ }
+ return false;
+ }
+ return false;
+}
+function isValidClose(open, close) {
+ if (!open)
+ return true;
+ if (["(", "\\lparen", "{", "\\{", "\\lbrace", "[", "\\lbrack"].includes(open)) {
+ return [")", "\\rparen", "}", "\\}", "\\rbrace", "]", "\\rbrack"].includes(
+ close
+ );
+ }
+ return RIGHT_DELIM[open] === close;
+}
+function isValidOpen(open, close) {
+ if (!close)
+ return true;
+ if ([")", "\\rparen", "}", "\\}", "\\rbrace", "]", "\\rbrack"].includes(close)) {
+ return ["(", "\\lparen", "{", "\\{", "\\lbrace", "[", "\\lbrack"].includes(
+ open
+ );
+ }
+ return LEFT_DELIM[close] === open;
+}
+
+// src/editor-mathfield/commands.ts
+register2({
+ undo: (mathfield) => {
+ mathfield.undo();
+ return true;
+ },
+ redo: (mathfield) => {
+ mathfield.redo();
+ return true;
+ },
+ scrollIntoView: (mathfield) => {
+ mathfield.scrollIntoView();
+ return true;
+ },
+ scrollToStart: (mathfield) => {
+ mathfield.field.scroll(0, 0);
+ return true;
+ },
+ scrollToEnd: (mathfield) => {
+ const fieldBounds = mathfield.field.getBoundingClientRect();
+ mathfield.field.scroll(fieldBounds.left - window.scrollX, 0);
+ return true;
+ },
+ toggleKeystrokeCaption,
+ toggleContextMenu: (mathfield) => {
+ const result = mathfield.toggleContextMenu();
+ if (!result)
+ mathfield.model.announce("plonk");
+ return result;
+ },
+ plonk: (mathfield) => {
+ mathfield.model.announce("plonk");
+ return true;
+ },
+ switchMode: (mathfield, mode, prefix, suffix) => {
+ mathfield.switchMode(mode, prefix, suffix);
+ return true;
+ },
+ insert: (mathfield, s, options) => mathfield.insert(s, options),
+ typedText: (mathfield, text, options) => {
+ onInput(mathfield, text, options);
+ return true;
+ },
+ insertDecimalSeparator: (mathfield) => {
+ const model = mathfield.model;
+ if (model.mode === "math" && window.MathfieldElement.decimalSeparator === ",") {
+ const child = model.at(Math.max(model.position, model.anchor));
+ if (child.isDigit()) {
+ mathfield.insert("{,}", { format: "latex" });
+ mathfield.snapshot("insert-mord");
+ return true;
+ }
+ }
+ mathfield.insert(".");
+ return true;
+ },
+ // A 'commit' command is used to simulate pressing the return/enter key,
+ // e.g. when using a virtual keyboard
+ commit: (mathfield) => {
+ var _a3;
+ if (mathfield.model.contentWillChange({ inputType: "insertLineBreak" })) {
+ (_a3 = mathfield.host) == null ? void 0 : _a3.dispatchEvent(
+ new Event("change", { bubbles: true, composed: true })
+ );
+ mathfield.model.contentDidChange({ inputType: "insertLineBreak" });
+ }
+ return true;
+ },
+ insertPrompt: (mathfield, id, options) => {
+ const promptIds = mathfield.getPrompts();
+ let prospectiveId = "prompt-" + Date.now().toString(36).slice(-2) + Math.floor(Math.random() * 1e5).toString(36);
+ let i = 0;
+ while (promptIds.includes(prospectiveId) && i < 100) {
+ if (i === 99) {
+ console.error("could not find a unique ID after 100 tries");
+ return false;
+ }
+ prospectiveId = "prompt-" + Date.now().toString(36).slice(-2) + Math.floor(Math.random() * 1e5).toString(36);
+ i++;
+ }
+ mathfield.insert(`\\placeholder[${id != null ? id : prospectiveId}]{}`, options);
+ return true;
+ }
+});
+register2(
+ {
+ copyToClipboard: (mathfield) => {
+ mathfield.focus();
+ if (mathfield.model.selectionIsCollapsed)
+ mathfield.select();
+ if ("queryCommandSupported" in document && document.queryCommandSupported("copy"))
+ document.execCommand("copy");
+ else {
+ mathfield.element.querySelector(".ML__keyboard-sink").dispatchEvent(
+ new ClipboardEvent("copy", {
+ bubbles: true,
+ composed: true
+ })
+ );
+ }
+ return false;
+ }
+ },
+ { target: "mathfield" }
+);
+register2(
+ {
+ cutToClipboard: (mathfield) => {
+ mathfield.focus();
+ if ("queryCommandSupported" in document && document.queryCommandSupported("cut"))
+ document.execCommand("cut");
+ else {
+ mathfield.element.querySelector(".ML__keyboard-sink").dispatchEvent(
+ new ClipboardEvent("cut", {
+ bubbles: true,
+ composed: true
+ })
+ );
+ }
+ return true;
+ },
+ pasteFromClipboard: (mathfield) => {
+ mathfield.focus();
+ if ("queryCommandSupported" in document && document.queryCommandSupported("paste")) {
+ document.execCommand("paste");
+ return true;
+ }
+ navigator.clipboard.readText().then((text) => {
+ if (text && mathfield.model.contentWillChange({
+ inputType: "insertFromPaste",
+ data: text
+ })) {
+ mathfield.stopCoalescingUndo();
+ mathfield.stopRecording();
+ if (mathfield.insert(text, { mode: mathfield.model.mode })) {
+ updateAutocomplete(mathfield);
+ mathfield.startRecording();
+ mathfield.snapshot("paste");
+ mathfield.model.contentDidChange({ inputType: "insertFromPaste" });
+ requestUpdate(mathfield);
+ }
+ } else
+ mathfield.model.announce("plonk");
+ mathfield.startRecording();
+ });
+ return true;
+ }
+ },
+ {
+ target: "mathfield",
+ canUndo: true,
+ changeContent: true,
+ changeSelection: true
+ }
+);
+
+// src/editor-mathfield/styling.ts
+function applyStyle2(mathfield, inStyle) {
+ mathfield.flushInlineShortcutBuffer();
+ mathfield.stopCoalescingUndo();
+ const style = validateStyle(mathfield, inStyle);
+ const { model } = mathfield;
+ if (model.selectionIsCollapsed) {
+ if (mathfield.defaultStyle.fontSeries && style.fontSeries === mathfield.defaultStyle.fontSeries)
+ style.fontSeries = "auto";
+ if (style.fontShape && style.fontShape === mathfield.defaultStyle.fontShape)
+ style.fontShape = "auto";
+ if (style.color && style.color === mathfield.defaultStyle.color)
+ style.color = "none";
+ if (style.backgroundColor && style.backgroundColor === mathfield.defaultStyle.backgroundColor)
+ style.backgroundColor = "none";
+ if (style.fontSize && style.fontSize === mathfield.defaultStyle.fontSize)
+ style.fontSize = "auto";
+ mathfield.defaultStyle = __spreadValues(__spreadValues({}, mathfield.defaultStyle), style);
+ } else {
+ mathfield.model.deferNotifications(
+ { content: true, type: "insertText" },
+ () => {
+ model.selection.ranges.forEach(
+ (range2) => applyStyle(model, range2, style, { operation: "toggle" })
+ );
+ mathfield.snapshot("style-change");
+ }
+ );
+ }
+ return true;
+}
+register2(
+ { applyStyle: applyStyle2 },
+ {
+ target: "mathfield",
+ canUndo: true,
+ changeContent: true
+ }
+);
+function validateStyle(mathfield, style) {
+ var _a3, _b3, _c2, _d2, _e, _f, _g, _h, _i, _j;
+ const result = {};
+ if (typeof style.color === "string") {
+ const newColor = (_b3 = mathfield.colorMap((_a3 = style.color) != null ? _a3 : style.verbatimColor)) != null ? _b3 : "none";
+ if (newColor !== style.color)
+ result.verbatimColor = (_c2 = style.verbatimColor) != null ? _c2 : style.color;
+ result.color = newColor;
+ }
+ if (typeof style.backgroundColor === "string") {
+ const newColor = (_e = mathfield.backgroundColorMap(
+ (_d2 = style.backgroundColor) != null ? _d2 : style.verbatimBackgroundColor
+ )) != null ? _e : "none";
+ if (newColor !== style.backgroundColor) {
+ result.verbatimBackgroundColor = (_f = style.verbatimBackgroundColor) != null ? _f : style.backgroundColor;
+ }
+ result.backgroundColor = newColor;
+ }
+ if (typeof style.fontFamily === "string")
+ result.fontFamily = style.fontFamily;
+ if (typeof style.series === "string")
+ result.fontSeries = style.series;
+ if (typeof style.fontSeries === "string")
+ result.fontSeries = style.fontSeries.toLowerCase();
+ if (result.fontSeries) {
+ result.fontSeries = (_g = {
+ bold: "b",
+ medium: "m",
+ normal: "m"
+ }[result.fontSeries]) != null ? _g : result.fontSeries;
+ }
+ if (typeof style.shape === "string")
+ result.fontShape = style.shape;
+ if (typeof style.fontShape === "string")
+ result.fontShape = style.fontShape.toLowerCase();
+ if (result.fontShape) {
+ result.fontShape = (_h = {
+ italic: "it",
+ up: "n",
+ upright: "n",
+ normal: "n"
+ }[result.fontShape]) != null ? _h : result.fontShape;
+ }
+ if (style.variant)
+ result.variant = style.variant.toLowerCase();
+ if (style.variantStyle)
+ result.variantStyle = style.variantStyle.toLowerCase();
+ const size = (_i = style.size) != null ? _i : style.fontSize;
+ if (typeof size === "number")
+ result.fontSize = Math.max(1, Math.min(10, size));
+ else if (typeof size === "string") {
+ result.fontSize = (_j = {
+ size1: 1,
+ size2: 2,
+ size3: 3,
+ size4: 4,
+ size5: 5,
+ size6: 6,
+ size7: 7,
+ size8: 8,
+ size9: 9,
+ size10: 10
+ }[size.toLowerCase()]) != null ? _j : {
+ tiny: 1,
+ scriptsize: 2,
+ footnotesize: 3,
+ small: 4,
+ normal: 5,
+ normalsize: 5,
+ large: 6,
+ Large: 7,
+ LARGE: 8,
+ huge: 9,
+ Huge: 10
+ }[size];
+ }
+ return result;
+}
+
+// src/editor-model/commands-select.ts
+function selectGroup(model) {
+ let [start, end] = range(model.selection);
+ start = boundary(model, start, "backward");
+ end = boundary(model, end, "forward");
+ if (start === end) {
+ const atom = model.at(start);
+ if (atom.type === "leftright")
+ return model.setSelection(model.offsetOf(atom.firstChild) - 1, end);
+ if (atom.type === "first" && (atom.parent.type === "leftright" || atom.parent.type === "surd")) {
+ return model.setSelection(
+ start - 1,
+ model.offsetOf(atom.parent.lastChild) + 1
+ );
+ }
+ model.setSelection(start - 1, end);
+ } else
+ model.setSelection(start, end);
+ return true;
+}
+function boundary(model, pos, direction) {
+ var _a3, _b3, _c2;
+ let atom = model.at(pos);
+ if (!atom)
+ return pos;
+ const dir = direction === "forward" ? 1 : -1;
+ if (atom.mode === "text") {
+ while (atom) {
+ if (atom.mode !== "text" || !LETTER_AND_DIGITS.test(atom.value))
+ break;
+ pos += dir;
+ atom = model.at(pos);
+ }
+ return direction === "backward" ? pos - 1 : pos;
+ }
+ if (atom.mode === "latex") {
+ if (/[a-zA-Z\*]/.test(atom.value)) {
+ if (direction === "backward") {
+ while (atom && atom.mode === "latex" && atom.value !== "\\" && /[a-zA-Z]/.test(atom.value)) {
+ pos += dir;
+ atom = model.at(pos);
+ }
+ } else {
+ while (atom && atom.mode === "latex" && /[a-zA-Z\*]/.test(atom.value)) {
+ pos += dir;
+ atom = model.at(pos);
+ }
+ }
+ } else if (atom.value === "{") {
+ if (direction === "forward") {
+ while (atom && atom.mode === "latex" && atom.value !== "}") {
+ pos += dir;
+ atom = model.at(pos);
+ }
+ return pos;
+ }
+ return pos - 1;
+ } else if (atom.value === "}") {
+ if (direction === "backward") {
+ while (atom && atom.mode === "latex" && atom.value !== "{") {
+ pos += dir;
+ atom = model.at(pos);
+ }
+ return pos - 1;
+ }
+ return pos;
+ }
+ return pos - 1;
+ }
+ if (atom.mode === "math") {
+ if (atom.isDigit()) {
+ while ((_a3 = model.at(pos + dir)) == null ? void 0 : _a3.isDigit())
+ pos += dir;
+ return direction === "backward" ? pos - 1 : pos;
+ }
+ if (atom.style.variant || atom.style.variantStyle) {
+ let x = (_b3 = model.at(pos)) == null ? void 0 : _b3.style;
+ while (x && x.variant === atom.style.variant && x.variantStyle === atom.style.variantStyle) {
+ x = (_c2 = model.at(pos + dir)) == null ? void 0 : _c2.style;
+ pos += dir;
+ }
+ return direction === "backward" ? pos - 1 : pos;
+ }
+ return pos;
+ }
+ return pos;
+}
+register2(
+ {
+ selectGroup: (model) => {
+ const result = selectGroup(model);
+ if (!result)
+ model.announce("plonk");
+ return result;
+ },
+ selectAll: (model) => model.setSelection(0, model.lastOffset),
+ extendSelectionForward: (model) => move(model, "forward", { extend: true }),
+ extendSelectionBackward: (model) => move(model, "backward", { extend: true }),
+ extendToNextWord: (model) => skip(model, "forward", { extend: true }),
+ extendToPreviousWord: (model) => skip(model, "backward", { extend: true }),
+ extendSelectionUpward: (model) => move(model, "upward", { extend: true }),
+ extendSelectionDownward: (model) => move(model, "downward", { extend: true }),
+ /**
+ * Extend the selection until the next boundary is reached. A boundary
+ * is defined by an atom of a different type (mbin, mord, etc...)
+ * than the current focus. For example, in "1234+x=y", if the focus is between
+ * "1" and "2", invoking `extendToNextBoundary_` would extend the selection
+ * to "234".
+ */
+ extendToNextBoundary: (model) => skip(model, "forward", { extend: true }),
+ /**
+ * Extend the selection until the previous boundary is reached. A boundary
+ * is defined by an atom of a different type (mbin, mord, etc...)
+ * than the current focus. For example, in "1+23456", if the focus is between
+ * "5" and "6", invoking `extendToPreviousBoundary` would extend the selection
+ * to "2345".
+ */
+ extendToPreviousBoundary: (model) => skip(model, "backward", { extend: true }),
+ extendToGroupStart: (model) => {
+ const result = model.setSelection(
+ model.anchor,
+ model.offsetOf(model.at(model.position).firstSibling)
+ );
+ if (!result)
+ model.announce("plonk");
+ return result;
+ },
+ extendToGroupEnd: (model) => {
+ const result = model.setSelection(
+ model.anchor,
+ model.offsetOf(model.at(model.position).lastSibling)
+ );
+ if (!result)
+ model.announce("plonk");
+ return result;
+ },
+ extendToMathFieldStart: (model) => {
+ const result = model.setSelection(model.anchor, 0);
+ if (!result)
+ model.announce("plonk");
+ return result;
+ },
+ extendToMathFieldEnd: (model) => {
+ const result = model.setSelection(model.anchor, model.lastOffset);
+ if (!result)
+ model.announce("plonk");
+ return result;
+ }
+ },
+ { target: "model", changeSelection: true }
+);
+
+// src/editor-mathfield/pointer-input.ts
+var gLastTap = null;
+var gTapCount = 0;
+var PointerTracker = class _PointerTracker {
+ static start(element, evt, onMove, onCancel) {
+ var _a3;
+ _PointerTracker.element = element;
+ (_a3 = _PointerTracker.controller) == null ? void 0 : _a3.abort();
+ _PointerTracker.controller = new AbortController();
+ const options = { signal: _PointerTracker.controller.signal };
+ if ("PointerEvent" in window) {
+ element.addEventListener("pointermove", onMove, options);
+ element.addEventListener("pointerup", onCancel, options);
+ element.addEventListener("pointercancel", onCancel, options);
+ if (isPointerEvent(evt)) {
+ _PointerTracker.pointerId = evt.pointerId;
+ element.setPointerCapture(evt.pointerId);
+ }
+ } else {
+ window.addEventListener("mousemove", onMove, options);
+ window.addEventListener("blur", onCancel, options);
+ window.addEventListener("mouseup", onCancel, options);
+ }
+ }
+ static stop() {
+ var _a3;
+ (_a3 = _PointerTracker.controller) == null ? void 0 : _a3.abort();
+ _PointerTracker.controller = void 0;
+ if (typeof _PointerTracker.pointerId === "number") {
+ _PointerTracker.element.releasePointerCapture(_PointerTracker.pointerId);
+ _PointerTracker.pointerId = void 0;
+ }
+ }
+};
+function isPointerEvent(evt) {
+ return evt !== null && globalThis.PointerEvent !== void 0 && evt instanceof PointerEvent;
+}
+function onPointerDown(mathfield, evt) {
+ var _a3;
+ if (evt.buttons > 1)
+ return;
+ mathfield.atomBoundsCache = /* @__PURE__ */ new Map();
+ const that = mathfield;
+ let anchor;
+ let trackingPointer = false;
+ let trackingWords = false;
+ let dirty = "none";
+ let scrollLeft = false;
+ let scrollRight = false;
+ const anchorX = evt.clientX;
+ const anchorY = evt.clientY;
+ const anchorTime = Date.now();
+ const field = that.field;
+ const scrollInterval = setInterval(() => {
+ if (scrollLeft)
+ field.scroll({ top: 0, left: field.scrollLeft - 16 });
+ else if (scrollRight)
+ field.scroll({ top: 0, left: field.scrollLeft + 16 });
+ }, 32);
+ function endPointerTracking() {
+ PointerTracker.stop();
+ trackingPointer = false;
+ clearInterval(scrollInterval);
+ mathfield.element.classList.remove("tracking");
+ if (evt)
+ evt.preventDefault();
+ }
+ function onPointerMove(evt2) {
+ if (!that.hasFocus()) {
+ endPointerTracking();
+ return;
+ }
+ const x = evt2.clientX;
+ const y = evt2.clientY;
+ const hysteresis = isPointerEvent(evt2) && evt2.pointerType === "touch" ? 20 : 5;
+ if (Date.now() < anchorTime + 500 && Math.abs(anchorX - x) < hysteresis && Math.abs(anchorY - y) < hysteresis) {
+ evt2.preventDefault();
+ evt2.stopPropagation();
+ return;
+ }
+ const fieldBounds = field.getBoundingClientRect();
+ scrollRight = x > fieldBounds.right;
+ scrollLeft = x < fieldBounds.left;
+ let actualAnchor = anchor;
+ if (isPointerEvent(evt2)) {
+ if (!evt2.isPrimary) {
+ actualAnchor = offsetFromPoint(that, evt2.clientX, evt2.clientY, {
+ bias: 0
+ });
+ }
+ }
+ const focus = offsetFromPoint(that, x, y, {
+ bias: x <= anchorX ? x === anchorX ? 0 : -1 : 1
+ });
+ if (actualAnchor >= 0 && focus >= 0) {
+ that.model.extendSelectionTo(actualAnchor, focus);
+ requestUpdate(mathfield);
+ }
+ if (trackingWords)
+ selectGroup(that.model);
+ }
+ if (gLastTap && Math.abs(gLastTap.x - anchorX) < 5 && Math.abs(gLastTap.y - anchorY) < 5 && Date.now() < gLastTap.time + 500) {
+ gTapCount += 1;
+ gLastTap.time = anchorTime;
+ } else {
+ gLastTap = {
+ x: anchorX,
+ y: anchorY,
+ time: anchorTime
+ };
+ gTapCount = 1;
+ }
+ const bounds = field.getBoundingClientRect();
+ if (anchorX >= bounds.left && anchorX <= bounds.right && anchorY >= bounds.top && anchorY <= bounds.bottom) {
+ mathfield.flushInlineShortcutBuffer();
+ mathfield.adoptStyle = "left";
+ anchor = offsetFromPoint(mathfield, anchorX, anchorY, {
+ bias: 0
+ });
+ if (anchor >= 0) {
+ mathfield.element.classList.add("tracking");
+ if (evt.shiftKey) {
+ const wasCollapsed = mathfield.model.selectionIsCollapsed;
+ mathfield.model.extendSelectionTo(mathfield.model.anchor, anchor);
+ if (acceptCommandSuggestion(mathfield.model) || wasCollapsed)
+ dirty = "all";
+ else
+ dirty = "selection";
+ } else if (mathfield.model.at(anchor).type === "placeholder") {
+ mathfield.model.setSelection(anchor - 1, anchor);
+ dirty = "selection";
+ } else if (((_a3 = mathfield.model.at(anchor).rightSibling) == null ? void 0 : _a3.type) === "placeholder") {
+ mathfield.model.setSelection(anchor, anchor + 1);
+ dirty = "selection";
+ } else {
+ mathfield.model.position = anchor;
+ if (acceptCommandSuggestion(mathfield.model))
+ dirty = "all";
+ else
+ dirty = "selection";
+ }
+ mathfield.defaultStyle = {};
+ if (evt.detail === 3 || gTapCount > 2) {
+ endPointerTracking();
+ if (evt.detail === 3 || gTapCount === 3) {
+ mathfield.model.selection = {
+ ranges: [[0, mathfield.model.lastOffset]]
+ };
+ dirty = "all";
+ }
+ } else if (!trackingPointer) {
+ trackingPointer = true;
+ PointerTracker.start(field, evt, onPointerMove, endPointerTracking);
+ if (evt.detail === 2 || gTapCount === 2) {
+ trackingWords = true;
+ selectGroup(mathfield.model);
+ dirty = "all";
+ }
+ }
+ }
+ if (!mathfield.hasFocus()) {
+ dirty = "none";
+ mathfield.focus({ preventScroll: true });
+ }
+ } else
+ gLastTap = null;
+ mathfield.stopCoalescingUndo();
+ if (dirty !== "none") {
+ if (mathfield.model.selectionIsCollapsed)
+ dirty = "all";
+ requestUpdate(mathfield);
+ }
+ evt.preventDefault();
+}
+function distance(x, y, r) {
+ if (x >= r.left && x <= r.right && y >= r.top && y <= r.bottom)
+ return 0;
+ const dx = x - (r.left + r.right) / 2;
+ const dy = y - (r.top + r.bottom) / 2;
+ return dx * dx + dy * dy;
+}
+function nearestAtomFromPointRecursive(mathfield, cache, atom, x, y) {
+ if (!atom.id)
+ return [Infinity, null];
+ if (cache.has(atom.id))
+ return cache.get(atom.id);
+ const bounds = getAtomBounds(mathfield, atom);
+ if (!bounds)
+ return [Infinity, null];
+ let result = [
+ Infinity,
+ null
+ ];
+ if (atom.hasChildren && !atom.captureSelection && x >= bounds.left && x <= bounds.right) {
+ for (const child of atom.children) {
+ const r = nearestAtomFromPointRecursive(mathfield, cache, child, x, y);
+ if (r[0] <= result[0])
+ result = r;
+ }
+ }
+ if (!result[1])
+ result = [distance(x, y, bounds), atom];
+ cache.set(atom.id, result);
+ return result;
+}
+function nearestAtomFromPoint(mathfield, x, y) {
+ const [, atom] = nearestAtomFromPointRecursive(
+ mathfield,
+ /* @__PURE__ */ new Map(),
+ mathfield.model.root,
+ x,
+ y
+ );
+ return atom;
+}
+function offsetFromPoint(mathfield, x, y, options) {
+ var _a3;
+ const bounds = mathfield.field.querySelector(".ML__latex").getBoundingClientRect();
+ if (!bounds)
+ return 0;
+ if (x > bounds.right || y > bounds.bottom + 8)
+ return mathfield.model.lastOffset;
+ if (x < bounds.left || y < bounds.top - 8)
+ return 0;
+ options = options != null ? options : {};
+ options.bias = (_a3 = options.bias) != null ? _a3 : 0;
+ let atom = nearestAtomFromPoint(mathfield, x, y);
+ const parents = [];
+ let parent = atom;
+ while (parent) {
+ parents.unshift(parent);
+ parent = parent.parent;
+ }
+ for (const x2 of parents) {
+ if (x2.captureSelection) {
+ atom = x2;
+ break;
+ }
+ }
+ let result = mathfield.model.offsetOf(atom);
+ if (result < 0)
+ return -1;
+ if (atom.leftSibling) {
+ if (options.bias === 0 && atom.type !== "placeholder") {
+ const bounds2 = getAtomBounds(mathfield, atom);
+ if (bounds2 && x < (bounds2.left + bounds2.right) / 2)
+ result = mathfield.model.offsetOf(atom.leftSibling);
+ } else if (options.bias < 0)
+ result = mathfield.model.offsetOf(atom.leftSibling);
+ }
+ return result;
+}
+
+// src/editor-mathfield/mode-editor-math.ts
+var MathModeEditor = class extends ModeEditor {
+ constructor() {
+ super("math");
+ }
+ onPaste(mathfield, data) {
+ if (!data)
+ return false;
+ if (!mathfield.model.contentWillChange({
+ data: typeof data === "string" ? data : null,
+ dataTransfer: typeof data === "string" ? null : data,
+ inputType: "insertFromPaste"
+ }))
+ return false;
+ let text = "";
+ let format = "auto";
+ let json = typeof data !== "string" ? data.getData("application/json+mathlive") : "";
+ if (json) {
+ try {
+ const atomJson = JSON.parse(json);
+ if (atomJson && Array.isArray(atomJson)) {
+ mathfield.snapshot();
+ const atoms = fromJson(atomJson);
+ const { model } = mathfield;
+ if (!model.selectionIsCollapsed)
+ model.deleteAtoms(range(model.selection));
+ const cursor = model.at(model.position);
+ if (cursor.parent instanceof ArrayAtom) {
+ console.assert(cursor.parentBranch !== void 0);
+ const columns = [];
+ let buffer = [];
+ if (atoms[0].type === "first")
+ atoms.shift();
+ if (atoms[atoms.length - 1].type === "first")
+ atoms.pop();
+ for (const atom of atoms) {
+ if (atom.type === "first" && buffer.length > 0) {
+ columns.push(buffer);
+ buffer = [atom];
+ } else
+ buffer.push(atom);
+ }
+ if (buffer.length > 0)
+ columns.push(buffer);
+ let currentRow = Number(cursor.parentBranch[0]);
+ let currentColumn = Number(cursor.parentBranch[1]);
+ const maxColumns = cursor.parent.maxColumns;
+ while (cursor.parent.colCount - currentColumn < columns.length && cursor.parent.colCount < maxColumns)
+ cursor.parent.addColumn();
+ cursor.parent.addChildrenAfter(columns[0], cursor);
+ for (let i = 1; i < columns.length; i++) {
+ currentColumn++;
+ if (currentColumn >= maxColumns) {
+ currentColumn = 0;
+ cursor.parent.addRowAfter(currentRow);
+ currentRow++;
+ }
+ cursor.parent.setCell(currentRow, currentColumn, columns[i]);
+ }
+ } else {
+ cursor.parent.addChildrenAfter(
+ atoms.filter((a) => a.type !== "first"),
+ cursor
+ );
+ }
+ model.position = model.offsetOf(atoms[atoms.length - 1]);
+ model.contentDidChange({ inputType: "insertFromPaste" });
+ requestUpdate(mathfield);
+ return true;
+ }
+ } catch (e) {
+ }
+ }
+ json = typeof data !== "string" ? data.getData("application/json") : "";
+ if (json && window.MathfieldElement.computeEngine) {
+ try {
+ const expr = JSON.parse(json);
+ if (typeof expr === "object" && "latex" in expr && expr.latex)
+ text = expr.latex;
+ if (!text) {
+ const box = window.MathfieldElement.computeEngine.box(expr);
+ if (box && !box.has("Error"))
+ text = box.latex;
+ }
+ if (!text)
+ format = "latex";
+ } catch (e) {
+ }
+ }
+ if (!text && typeof data !== "string") {
+ text = data.getData("application/x-latex");
+ if (text)
+ format = "latex";
+ }
+ if (!text)
+ text = typeof data === "string" ? data : data.getData("text/plain");
+ if (text) {
+ let wasLatex;
+ [wasLatex, text] = trimModeShiftCommand(text);
+ if (format === "auto" && wasLatex)
+ format = "latex";
+ mathfield.stopCoalescingUndo();
+ mathfield.stopRecording();
+ if (this.insert(mathfield.model, text, { format })) {
+ mathfield.startRecording();
+ mathfield.snapshot("paste");
+ requestUpdate(mathfield);
+ }
+ mathfield.startRecording();
+ return true;
+ }
+ return false;
+ }
+ insert(model, input, options) {
+ var _a3, _b3;
+ const data = typeof input === "string" ? input : (_b3 = (_a3 = window.MathfieldElement.computeEngine) == null ? void 0 : _a3.box(input).latex) != null ? _b3 : "";
+ if (!options.silenceNotifications && !model.contentWillChange({ data, inputType: "insertText" }))
+ return false;
+ if (!options.insertionMode)
+ options.insertionMode = "replaceSelection";
+ if (!options.selectionMode)
+ options.selectionMode = "placeholder";
+ if (!options.format)
+ options.format = "auto";
+ const { silenceNotifications } = model;
+ if (options.silenceNotifications)
+ model.silenceNotifications = true;
+ const contentWasChanging = model.silenceNotifications;
+ model.silenceNotifications = true;
+ const args = {
+ "?": "\\placeholder{}",
+ "@": "\\placeholder{}"
+ };
+ args[0] = options.insertionMode === "replaceAll" ? "" : model.getValue(model.selection, "latex-unstyled");
+ if (options.insertionMode === "replaceSelection" && !model.selectionIsCollapsed)
+ model.deleteAtoms(range(model.selection));
+ else if (options.insertionMode === "replaceAll") {
+ model.root.setChildren([], "body");
+ model.position = 0;
+ } else if (options.insertionMode === "insertBefore")
+ model.collapseSelection("backward");
+ else if (options.insertionMode === "insertAfter")
+ model.collapseSelection("forward");
+ if (!model.at(model.position).isLastSibling && model.at(model.position + 1).type === "placeholder") {
+ model.deleteAtoms([model.position, model.position + 1]);
+ } else if (model.at(model.position).type === "placeholder") {
+ model.deleteAtoms([model.position - 1, model.position]);
+ }
+ let implicitArgumentOffset = -1;
+ if (args[0]) {
+ args["@"] = args[0];
+ } else if (typeof input === "string" && /(^|[^\\])#@/.test(input)) {
+ implicitArgumentOffset = getImplicitArgOffset(model);
+ if (implicitArgumentOffset >= 0) {
+ args["@"] = model.getValue(
+ implicitArgumentOffset,
+ model.position,
+ "latex"
+ );
+ }
+ }
+ if (!args[0])
+ args[0] = args["?"];
+ let usedArg = false;
+ const argFunction = (arg) => {
+ usedArg = true;
+ return args[arg];
+ };
+ let [format, newAtoms] = convertStringToAtoms(
+ model,
+ input,
+ argFunction,
+ options
+ );
+ if (!newAtoms)
+ return false;
+ const insertingFraction = newAtoms.length === 1 && newAtoms[0].type === "genfrac";
+ if (insertingFraction && implicitArgumentOffset >= 0 && typeof model.mathfield.options.isImplicitFunction === "function" && model.mathfield.options.isImplicitFunction(
+ model.at(model.position).command
+ )) {
+ args["@"] = args["?"];
+ usedArg = false;
+ [format, newAtoms] = convertStringToAtoms(
+ model,
+ input,
+ argFunction,
+ options
+ );
+ } else if (implicitArgumentOffset >= 0) {
+ model.deleteAtoms([implicitArgumentOffset, model.position]);
+ }
+ const { parent } = model.at(model.position);
+ const hadEmptyBody = parent.hasEmptyBranch("body");
+ if (insertingFraction && format !== "latex" && model.mathfield.options.removeExtraneousParentheses && parent instanceof LeftRightAtom && parent.leftDelim === "(" && hadEmptyBody) {
+ const newParent = parent.parent;
+ const branch = parent.parentBranch;
+ newParent.removeChild(parent);
+ newParent.setChildren(newAtoms, branch);
+ }
+ const cursor = model.at(model.position);
+ cursor.parent.addChildrenAfter(newAtoms, cursor);
+ if (format === "latex" && typeof input === "string") {
+ if ((parent == null ? void 0 : parent.type) === "root" && hadEmptyBody && !usedArg)
+ parent.verbatimLatex = input;
+ }
+ model.silenceNotifications = contentWasChanging;
+ const lastNewAtom = newAtoms[newAtoms.length - 1];
+ if (options.selectionMode === "placeholder") {
+ const placeholder = newAtoms.flatMap((x) => [x, ...x.children]).find((x) => x.type === "placeholder");
+ if (placeholder) {
+ const placeholderOffset = model.offsetOf(placeholder);
+ model.setSelection(placeholderOffset - 1, placeholderOffset);
+ model.announce("move");
+ } else if (lastNewAtom) {
+ model.position = model.offsetOf(lastNewAtom);
+ }
+ } else if (options.selectionMode === "before") {
+ } else if (options.selectionMode === "after") {
+ if (lastNewAtom)
+ model.position = model.offsetOf(lastNewAtom);
+ } else if (options.selectionMode === "item")
+ model.setSelection(model.anchor, model.offsetOf(lastNewAtom));
+ model.contentDidChange({ data, inputType: "insertText" });
+ model.silenceNotifications = silenceNotifications;
+ return true;
+ }
+};
+function convertStringToAtoms(model, s, args, options) {
+ var _a3;
+ let format = void 0;
+ let result = [];
+ if (typeof s !== "string" || options.format === "math-json") {
+ const ce = window.MathfieldElement.computeEngine;
+ if (!ce)
+ return ["math-json", []];
+ [format, s] = ["latex", ce.box(s).latex];
+ result = parseLatex(s, { context: model.mathfield.context });
+ } else if (typeof s === "string" && options.format === "ascii-math") {
+ [format, s] = parseMathString(s, {
+ format: "ascii-math",
+ inlineShortcuts: model.mathfield.options.inlineShortcuts
+ });
+ result = parseLatex(s, { context: model.mathfield.context });
+ if (format !== "latex" && model.mathfield.options.removeExtraneousParentheses)
+ simplifyParen(result);
+ } else if (options.format === "auto" || ((_a3 = options.format) == null ? void 0 : _a3.startsWith("latex"))) {
+ if (options.format === "auto") {
+ [format, s] = parseMathString(s, {
+ format: "auto",
+ inlineShortcuts: model.mathfield.options.inlineShortcuts
+ });
+ }
+ if (options.format === "latex")
+ [, s] = trimModeShiftCommand(s);
+ result = parseLatex(s, {
+ context: model.mathfield.context,
+ args
+ });
+ if (options.format !== "latex" && model.mathfield.options.removeExtraneousParentheses)
+ simplifyParen(result);
+ }
+ applyStyleToUnstyledAtoms(result, options.style);
+ return [format != null ? format : "latex", result];
+}
+function removeParen(atoms) {
+ if (!atoms)
+ return null;
+ console.assert(atoms[0].type === "first");
+ if (atoms.length > 1)
+ return null;
+ const atom = atoms[0];
+ if (atom instanceof LeftRightAtom && atom.leftDelim === "(" && atom.rightDelim === ")")
+ return atom.removeBranch("body");
+ return null;
+}
+function simplifyParen(atoms) {
+ if (!atoms)
+ return;
+ for (let i = 0; atoms[i]; i++) {
+ const atom = atoms[i];
+ if (atom instanceof LeftRightAtom && atom.leftDelim === "(") {
+ let genFracCount = 0;
+ let genFracIndex = 0;
+ let nonGenFracCount = 0;
+ for (let j = 0; atom.body[j]; j++) {
+ if (atom.body[j].type === "genfrac") {
+ genFracCount++;
+ genFracIndex = j;
+ }
+ nonGenFracCount++;
+ }
+ if (nonGenFracCount === 0 && genFracCount === 1) {
+ atoms[i] = atom.body[genFracIndex];
+ }
+ }
+ }
+ for (const atom of atoms) {
+ for (const branch of atom.branches) {
+ if (!atom.hasEmptyBranch(branch)) {
+ simplifyParen(atom.branch(branch));
+ const newChildren = removeParen(atom.branch(branch));
+ if (newChildren)
+ atom.setChildren(newChildren, branch);
+ }
+ }
+ if (atom instanceof ArrayAtom)
+ for (const x of atom.cells)
+ simplifyParen(x);
+ }
+}
+function getImplicitArgOffset(model) {
+ let atom = model.at(model.position);
+ if (atom.mode === "text") {
+ while (!atom.isFirstSibling && atom.mode === "text")
+ atom = atom.leftSibling;
+ return model.offsetOf(atom);
+ }
+ const atomAtCursor = atom;
+ let afterDelim = false;
+ if (atom.type === "mclose") {
+ const delim = LEFT_DELIM[atom.value];
+ while (!atom.isFirstSibling && !(atom.type === "mopen" && atom.value === delim))
+ atom = atom.leftSibling;
+ if (!atom.isFirstSibling)
+ atom = atom.leftSibling;
+ afterDelim = true;
+ } else if (atom.type === "leftright") {
+ atom = atom.leftSibling;
+ afterDelim = true;
+ }
+ if (afterDelim) {
+ while (!atom.isFirstSibling && (atom.isFunction || isImplicitArg(atom)))
+ atom = atom.leftSibling;
+ } else {
+ const delimiterStack = [];
+ while (!atom.isFirstSibling && (isImplicitArg(atom) || delimiterStack.length > 0)) {
+ if (atom.type === "mclose")
+ delimiterStack.unshift(atom.value);
+ if (atom.type === "mopen" && delimiterStack.length > 0 && atom.value === LEFT_DELIM[delimiterStack[0]])
+ delimiterStack.shift();
+ atom = atom.leftSibling;
+ }
+ }
+ if (atomAtCursor === atom)
+ return -1;
+ return model.offsetOf(atom);
+}
+function isImplicitArg(atom) {
+ if (atom.isDigit())
+ return true;
+ if (atom.type && /^(mord|surd|subsup|leftright|mop|mclose)$/.test(atom.type)) {
+ if (atom.isExtensibleSymbol)
+ return false;
+ return true;
+ }
+ return false;
+}
+new MathModeEditor();
+
+// src/editor-mathfield/mode-editor-text.ts
+var TextModeEditor = class extends ModeEditor {
+ constructor() {
+ super("text");
+ }
+ onPaste(mathfield, data) {
+ if (!data)
+ return false;
+ const text = typeof data === "string" ? data : data.getData("text/plain");
+ if (text && mathfield.model.contentWillChange({
+ inputType: "insertFromPaste",
+ data: text
+ })) {
+ mathfield.stopCoalescingUndo();
+ mathfield.stopRecording();
+ if (this.insert(mathfield.model, text)) {
+ mathfield.model.contentDidChange({ inputType: "insertFromPaste" });
+ mathfield.startRecording();
+ mathfield.snapshot("paste");
+ requestUpdate(mathfield);
+ }
+ mathfield.startRecording();
+ return true;
+ }
+ return false;
+ }
+ insert(model, text, options = {}) {
+ if (!model.contentWillChange({ data: text, inputType: "insertText" }))
+ return false;
+ if (!options.insertionMode)
+ options.insertionMode = "replaceSelection";
+ if (!options.selectionMode)
+ options.selectionMode = "placeholder";
+ if (!options.format)
+ options.format = "auto";
+ const { silenceNotifications } = model;
+ if (options.silenceNotifications)
+ model.silenceNotifications = true;
+ const contentWasChanging = model.silenceNotifications;
+ model.silenceNotifications = true;
+ if (options.insertionMode === "replaceSelection" && !model.selectionIsCollapsed)
+ model.deleteAtoms(range(model.selection));
+ else if (options.insertionMode === "replaceAll") {
+ model.root.setChildren([], "body");
+ model.position = 0;
+ } else if (options.insertionMode === "insertBefore")
+ model.collapseSelection("backward");
+ else if (options.insertionMode === "insertAfter")
+ model.collapseSelection("forward");
+ const newAtoms = convertStringToAtoms2(text, model.mathfield.context);
+ applyStyleToUnstyledAtoms(newAtoms, options.style);
+ if (!newAtoms)
+ return false;
+ const cursor = model.at(model.position);
+ const lastNewAtom = cursor.parent.addChildrenAfter(newAtoms, cursor);
+ model.silenceNotifications = contentWasChanging;
+ if (options.selectionMode === "before") {
+ } else if (options.selectionMode === "item")
+ model.setSelection(model.anchor, model.offsetOf(lastNewAtom));
+ else if (lastNewAtom)
+ model.position = model.offsetOf(lastNewAtom);
+ model.contentDidChange({ data: text, inputType: "insertText" });
+ model.silenceNotifications = silenceNotifications;
+ return true;
+ }
+};
+function convertStringToAtoms2(s, context) {
+ s = s.replace(/\\/g, "\\textbackslash ");
+ s = s.replace(/#/g, "\\#");
+ s = s.replace(/\$/g, "\\$");
+ s = s.replace(/%/g, "\\%");
+ s = s.replace(/&/g, "\\&");
+ s = s.replace(/_/g, "\\_");
+ s = s.replace(/{/g, "\\textbraceleft ");
+ s = s.replace(/}/g, "\\textbraceright ");
+ s = s.replace(/lbrace/g, "\\textbraceleft ");
+ s = s.replace(/rbrace/g, "\\textbraceright ");
+ s = s.replace(/\^/g, "\\textasciicircum ");
+ s = s.replace(/~/g, "\\textasciitilde ");
+ s = s.replace(/£/g, "\\textsterling ");
+ return parseLatex(s, { context, parseMode: "text" });
+}
+new TextModeEditor();
+
+// src/virtual-keyboard/mathfield-proxy.ts
+function makeProxy(mf) {
+ return {
+ value: mf.model.getValue(),
+ selectionIsCollapsed: mf.model.selectionIsCollapsed,
+ canUndo: mf.canUndo(),
+ canRedo: mf.canRedo(),
+ style: mf.selectionStyle,
+ mode: mf.model.mode
+ };
+}
+
+// src/editor/environment-popover.ts
+var padding = 4;
+var radius = 20;
+var paddedWidth = 2 * (radius + padding);
+var newPlus = (x, y) => `
+
+ `;
+var newMinus = (x, y) => `
+
+ `;
+var newArrow = (x, y, theta) => `
+ `;
+var controllerSvg = `
+`;
+var matrix = (className) => `
+`;
+var pmatrix = (className) => `
+`;
+var Bmatrix = (className) => `
+`;
+var bmatrix = (className) => `
+`;
+var vmatrix = (className) => `
+`;
+var Vmatrix = (className) => `
+`;
+var cases2 = (className) => `
+`;
+var rcases = (className) => `
+`;
+var matrixButtons = { matrix, pmatrix, bmatrix, Bmatrix, vmatrix, Vmatrix };
+var casesButtons = { cases: cases2, rcases, Bmatrix };
+function showEnvironmentPopover(mf) {
+ var _a3, _d2;
+ const array = (_a3 = mf.model.parentEnvironment) == null ? void 0 : _a3.array;
+ if (!array)
+ return;
+ let columnCount = 0;
+ array.forEach((column) => {
+ if (!columnCount || column.length > columnCount)
+ columnCount = column.length;
+ });
+ let panel = document.getElementById("mathlive-environment-popover");
+ if (!panel) {
+ panel = getSharedElement("mathlive-environment-popover");
+ injectStylesheet("environment-popover");
+ injectStylesheet("core");
+ panel.setAttribute("aria-hidden", "true");
+ }
+ let flexbox;
+ const possiblyExistentFlexbox = panel.querySelector(
+ ".MLEP__environment-controls"
+ );
+ if (possiblyExistentFlexbox)
+ flexbox = possiblyExistentFlexbox;
+ else {
+ flexbox = document.createElement("div");
+ panel.innerHTML = "";
+ panel.appendChild(flexbox);
+ }
+ flexbox.className = "MLEP__environment-controls";
+ flexbox.style.display = "flex";
+ flexbox.style.width = "100%";
+ flexbox.style.height = "100%";
+ flexbox.style.boxSizing = "border-box";
+ flexbox.innerHTML = controllerSvg;
+ let delimiterOptions = [];
+ let activeDelimeter = "";
+ const environment = mf.model.parentEnvironment.environmentName;
+ if (isMatrixEnvironment(environment)) {
+ const normalizedEnvironment = normalizeMatrixName(environment);
+ activeDelimeter = matrixButtons[normalizedEnvironment]("active");
+ const _b3 = matrixButtons, { [normalizedEnvironment]: _ } = _b3, filteredDelimeters = __objRest(_b3, [__restKey(normalizedEnvironment)]);
+ delimiterOptions = Object.values(filteredDelimeters).map(
+ (f) => f("inactive")
+ );
+ } else if (isCasesEnvironment(environment)) {
+ const normalizedEnvironment = normalizeCasesName(environment);
+ activeDelimeter = casesButtons[normalizedEnvironment]("active");
+ const _c2 = casesButtons, { [normalizedEnvironment]: _ } = _c2, filteredDelimeters = __objRest(_c2, [__restKey(normalizedEnvironment)]);
+ delimiterOptions = Object.values(filteredDelimeters).map(
+ (f) => f("inactive")
+ );
+ } else if (isAlignEnvironment(environment)) {
+ activeDelimeter = matrixButtons["matrix"]("active");
+ delimiterOptions = Object.values(casesButtons).map(
+ (f) => f("inactive")
+ );
+ }
+ const delimiterControls = document.createElement("div");
+ delimiterControls.className = "MLEP__environment-delimiter-controls";
+ delimiterControls.style.display = "flex";
+ delimiterControls.style.flexDirection = "column";
+ delimiterControls.innerHTML = `
+ `;
+ if (activeDelimeter)
+ flexbox.appendChild(delimiterControls);
+ const arrayControls = flexbox.querySelectorAll(
+ "[data-command]"
+ );
+ arrayControls.forEach((control) => {
+ const commandString = control.dataset.command;
+ let command = commandString;
+ try {
+ command = JSON.parse(commandString);
+ } catch (e) {
+ }
+ control.addEventListener("mousedown", (ev) => ev.preventDefault());
+ if (command)
+ control.addEventListener("click", () => mf.executeCommand(command));
+ });
+ const position = (_d2 = mf.field) == null ? void 0 : _d2.getBoundingClientRect();
+ if (position) {
+ panel.style.top = `${window.scrollY + (position.top - panel.clientHeight - 15)}px`;
+ panel.style.left = `${position.left + 20}px`;
+ panel.classList.add("is-visible");
+ }
+}
+function hideEnvironmentPopover() {
+ const panel = document.getElementById("mathlive-environment-popover");
+ panel == null ? void 0 : panel.classList.remove("is-visible");
+}
+function disposeEnvironmentPopover() {
+ if (!document.getElementById("mathlive-environment-popover"))
+ return;
+ releaseSharedElement("mathlive-environment-popover");
+ releaseStylesheet("environment-popover");
+ releaseStylesheet("core");
+}
+function updateEnvironmentPopover(mf) {
+ if (!mf.hasFocus())
+ return;
+ let visible = false;
+ if (mf.model.mode === "math") {
+ const env = mf.model.parentEnvironment;
+ if (!!(env == null ? void 0 : env.array) && isTabularEnvironment(env.environmentName)) {
+ const policy = mf.options.environmentPopoverPolicy;
+ visible = policy === "auto" || policy === "on";
+ }
+ }
+ if (visible)
+ showEnvironmentPopover(mf);
+ else
+ hideEnvironmentPopover();
+}
+function normalizeMatrixName(environment) {
+ return environment.replace("*", "");
+}
+function normalizeCasesName(environment) {
+ if (environment === "dcases")
+ return "cases";
+ return environment;
+}
+
+// src/ui/i18n/utils.ts
+function getComputedDir(element) {
+ const dir = getComputedStyle(element).direction;
+ return dir === "ltr" || dir === "rtl" ? dir : "ltr";
+}
+
+// src/ui/geometry/utils.ts
+function getEdge(bounds, position, direction) {
+ if (position === "left" || position === "leading" && direction === "ltr" || position === "trailing" && direction === "rtl")
+ return bounds.left;
+ return bounds.right;
+}
+function getEffectivePos(pos, length, placement, dir) {
+ if (placement === "middle")
+ return pos - length / 2;
+ if (placement === "start" && dir === "rtl" || placement === "end" && dir === "ltr" || placement === "top" || placement === "right")
+ return Math.max(0, pos - length);
+ return pos;
+}
+function getOppositeEffectivePos(pos, length, placement, dir) {
+ if (placement === "middle")
+ return pos - length / 2;
+ if (placement === "start" && dir === "ltr" || placement === "end" && dir === "rtl" || placement === "top" || placement === "right")
+ return pos;
+ return pos - length;
+}
+function fitInViewport(element, options) {
+ var _a3, _b3, _c2;
+ const dir = (_a3 = getComputedDir(element)) != null ? _a3 : "ltr";
+ element.style.position = "fixed";
+ element.style.left = "";
+ element.style.top = "";
+ element.style.right = "";
+ element.style.bottom = "";
+ element.style.height = "";
+ element.style.width = "";
+ const elementBounds = element.getBoundingClientRect();
+ const maxHeight = Number.isFinite(options.maxHeight) ? Math.min(options.maxHeight, window.innerHeight) : window.innerHeight;
+ let height = Math.min(maxHeight, (_b3 = options.height) != null ? _b3 : elementBounds.height);
+ let top = getEffectivePos(
+ options.location.y,
+ height,
+ options.verticalPos,
+ dir
+ );
+ if (top + height > window.innerHeight - 8) {
+ if (options.alternateLocation) {
+ top = getEffectivePos(
+ options.alternateLocation.y,
+ height,
+ options.verticalPos,
+ dir
+ );
+ if (top + height > window.innerHeight - 8)
+ top = void 0;
+ } else
+ top = void 0;
+ }
+ if (!Number.isFinite(top)) {
+ top = Math.max(8, window.innerHeight - 8 - height);
+ if (8 + height > window.innerHeight - 8) {
+ element.style.bottom = "8px";
+ }
+ }
+ height = Math.min(top + height, window.innerHeight - 8) - top;
+ const maxWidth = Number.isFinite(options.maxWidth) ? Math.min(options.maxWidth, window.innerWidth) : window.innerWidth;
+ let width = Math.min(maxWidth, (_c2 = options.width) != null ? _c2 : elementBounds.width);
+ let left = getEffectivePos(
+ options.location.x,
+ width,
+ options.horizontalPos,
+ dir
+ );
+ if (left + width > window.innerWidth - 8) {
+ if (options.alternateLocation) {
+ left = getOppositeEffectivePos(
+ options.alternateLocation.x,
+ width,
+ options.verticalPos,
+ dir
+ );
+ if (left + width > window.innerWidth - 8)
+ left = void 0;
+ } else
+ left = void 0;
+ }
+ if (!Number.isFinite(left)) {
+ left = Math.max(8, window.innerWidth - 8 - width);
+ if (8 + width > window.innerWidth - 8) {
+ element.style.right = "8px";
+ }
+ }
+ width = Math.min(left + width, window.innerWidth - 8) - left;
+ if (dir === "rtl") {
+ element.style.right = `${Math.ceil(
+ window.innerWidth - left - width
+ ).toString()}px`;
+ } else
+ element.style.left = `${Math.ceil(left).toString()}px`;
+ element.style.top = `${Math.ceil(top).toString()}px`;
+ if (height !== elementBounds.height)
+ element.style.height = `${Math.ceil(height).toString()}px`;
+ if (width !== elementBounds.width)
+ element.style.width = `${Math.ceil(width).toString()}px`;
+}
+function distance2(p1, p2) {
+ return Math.hypot(p2.x - p1.x, p2.y - p1.y);
+}
+
+// src/public/ui-menu-types.ts
+function isSubmenu(item) {
+ return "submenu" in item;
+}
+function isCommand(item) {
+ return "type" in item && item.type === "command" || "onMenuSelect" in item || "id" in item;
+}
+function isDivider(item) {
+ return "type" in item && item.type === "divider";
+}
+function isHeading(item) {
+ return "type" in item && item.type === "heading";
+}
+
+// src/ui/icons/icons.ts
+var ICON_CATALOG = {};
+function icon(name) {
+ let icon2 = ICON_CATALOG[name];
+ if (!icon2) {
+ let markup;
+ switch (name) {
+ case "checkmark":
+ markup = ``;
+ break;
+ case "trailing-chevron":
+ markup = ``;
+ break;
+ case "mixedmark":
+ markup = '';
+ }
+ if (markup) {
+ const template = document.createElement("template");
+ template.innerHTML = markup;
+ ICON_CATALOG[name] = template;
+ icon2 = template;
+ }
+ }
+ if (icon2) {
+ if ("content" in icon2)
+ return icon2.content.cloneNode(true);
+ const element = document.createElement("svg");
+ element.innerHTML = icon2.innerHTML;
+ return element;
+ }
+ return void 0;
+}
+
+// src/ui/menu/menu-item.ts
+var BLINK_SPEED = 80;
+var _MenuItemState = class {
+ constructor(declaration, parentMenu) {
+ /** The DOM element the menu item is rendered as */
+ this._element = null;
+ var _a3;
+ this.parentMenu = parentMenu;
+ this._declaration = declaration;
+ if (isSubmenu(declaration)) {
+ this.type = "submenu";
+ this.submenu = new _MenuListState(declaration.submenu, {
+ parentMenu,
+ submenuClass: declaration.submenuClass,
+ columnCount: declaration.columnCount
+ });
+ } else
+ this.type = (_a3 = declaration.type) != null ? _a3 : "command";
+ this.hasCheck = isCommand(declaration) && declaration.checked !== void 0;
+ }
+ get rootMenu() {
+ return this.parentMenu.rootMenu;
+ }
+ get abortController() {
+ if (!this._abortController)
+ this._abortController = new AbortController();
+ return this._abortController;
+ }
+ dispose() {
+ var _a3, _b3;
+ (_a3 = this._abortController) == null ? void 0 : _a3.abort();
+ this._abortController = void 0;
+ (_b3 = this._element) == null ? void 0 : _b3.remove();
+ this._element = null;
+ if (this.submenu)
+ this.submenu.dispose();
+ this.submenu = void 0;
+ }
+ get menuItem() {
+ return this._declaration;
+ }
+ get label() {
+ var _a3;
+ return (_a3 = this._label) != null ? _a3 : "";
+ }
+ set label(value) {
+ if (value === void 0)
+ value = "";
+ if (value === this._label)
+ return;
+ this._label = value;
+ this.dirty = true;
+ }
+ get visible() {
+ return this._visible;
+ }
+ set visible(value) {
+ if (value === this._visible)
+ return;
+ this._visible = value;
+ this.dirty = true;
+ }
+ get enabled() {
+ return this._enabled;
+ }
+ set enabled(value) {
+ this._enabled = value;
+ if (this.element) {
+ if (value)
+ this.element.removeAttribute("aria-disabled");
+ else
+ this.element.setAttribute("aria-disabled", "true");
+ }
+ this.dirty = true;
+ }
+ get checked() {
+ return this._checked;
+ }
+ set checked(value) {
+ this._checked = value;
+ this.dirty = true;
+ }
+ get tooltip() {
+ return this._tooltip;
+ }
+ set tooltip(value) {
+ if (value === this._tooltip)
+ return;
+ this._tooltip = value;
+ this.dirty = true;
+ }
+ get ariaLabel() {
+ return this._ariaLabel;
+ }
+ set ariaLabel(value) {
+ if (value === this._ariaLabel)
+ return;
+ this._ariaLabel = value;
+ this.dirty = true;
+ }
+ get active() {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this.element) == null ? void 0 : _a3.classList.contains("active")) != null ? _b3 : false;
+ }
+ set active(value) {
+ if (!this.element)
+ return;
+ this.element.classList.toggle("active", value);
+ }
+ updateState(modifiers) {
+ var _a3, _b3, _c2;
+ const declaration = this._declaration;
+ if (isDivider(declaration)) {
+ this.enabled = false;
+ this.checked = false;
+ return;
+ }
+ if (isHeading(declaration)) {
+ this.enabled = false;
+ this.checked = false;
+ this.visible = true;
+ }
+ if (isCommand(declaration)) {
+ this.checked = isCommand(declaration) && ((_a3 = dynamicValue(declaration.checked, modifiers)) != null ? _a3 : false);
+ }
+ if (isCommand(declaration) || isSubmenu(declaration)) {
+ this.enabled = (_b3 = dynamicValue(declaration.enabled, modifiers)) != null ? _b3 : true;
+ this.visible = (_c2 = dynamicValue(declaration.visible, modifiers)) != null ? _c2 : true;
+ if (this.visible && this.enabled && this.submenu) {
+ this.submenu.updateState(modifiers);
+ if (!this.submenu.visible)
+ this.visible = false;
+ }
+ }
+ if (isCommand(declaration) || isHeading(declaration) || isSubmenu(declaration)) {
+ this.label = dynamicValue(declaration.label, modifiers);
+ this.tooltip = dynamicValue(declaration.tooltip, modifiers);
+ this.ariaLabel = dynamicValue(declaration.ariaLabel, modifiers);
+ }
+ if (this._element)
+ this.updateElement();
+ }
+ set dirty(value) {
+ console.assert(value === true);
+ if (value && this.parentMenu)
+ this.parentMenu.dirty = true;
+ }
+ updateElement() {
+ if (!this.visible || !this.element)
+ return;
+ const li = this.element;
+ li.textContent = "";
+ if (!this.enabled)
+ li.setAttribute("aria-disabled", "true");
+ else
+ li.removeAttribute("aria-disabled");
+ if (this.checked === true) {
+ li.setAttribute("aria-checked", "true");
+ li.append(icon("checkmark"));
+ } else if (this.checked === "mixed") {
+ li.setAttribute("aria-checked", "mixed");
+ li.append(icon("mixedmark"));
+ } else
+ li.removeAttribute("aria-checked");
+ if (this.ariaLabel)
+ li.setAttribute("aria-label", this.ariaLabel);
+ const span = document.createElement("span");
+ span.className = this.parentMenu.hasCheck ? "label indent" : "label";
+ if (this.type === "heading")
+ span.classList.add("heading");
+ span.innerHTML = this.label;
+ li.append(span);
+ if (this._tooltip) {
+ li.setAttribute("data-tooltip", this._tooltip);
+ }
+ if (isCommand(this._declaration) && this._declaration.keyboardShortcut) {
+ const kbd = document.createElement("kbd");
+ kbd.innerHTML = getKeybindingMarkup(this._declaration.keyboardShortcut);
+ li.append(kbd);
+ }
+ if (this.type === "submenu")
+ li.append(icon("trailing-chevron"));
+ }
+ get element() {
+ if (this._element)
+ return this._element;
+ if (isDivider(this._declaration)) {
+ const li2 = document.createElement("li");
+ li2.setAttribute("part", "menu-divider");
+ li2.setAttribute("role", "divider");
+ this._element = li2;
+ return li2;
+ }
+ const li = document.createElement("li");
+ this._element = li;
+ if ((isCommand(this._declaration) || isHeading(this._declaration) || isSubmenu(this._declaration)) && this._declaration.class)
+ li.className = this._declaration.class;
+ li.setAttribute("part", "menu-item");
+ li.setAttribute("tabindex", "-1");
+ if (this.hasCheck)
+ li.setAttribute("role", "menuitemcheckbox");
+ else
+ li.setAttribute("role", "menuitem");
+ if (this.type === "submenu") {
+ li.setAttribute("aria-haspopup", "true");
+ li.setAttribute("aria-expanded", "false");
+ }
+ const signal = this.abortController.signal;
+ li.addEventListener("pointerenter", this, { signal });
+ li.addEventListener("pointerleave", this, { signal });
+ li.addEventListener("pointerup", this, { signal });
+ li.addEventListener("click", this, { signal });
+ return this._element;
+ }
+ /** Dispatch a `menu-select` event, and call the
+ * `onMenuSelect()` hook if defined.
+ */
+ dispatchSelect() {
+ if (!isCommand(this._declaration))
+ return;
+ const ev = new CustomEvent("menu-select", {
+ cancelable: true,
+ bubbles: true,
+ detail: {
+ modifiers: this.rootMenu.modifiers,
+ id: this._declaration.id,
+ data: this._declaration.data
+ }
+ });
+ const notCanceled = this.parentMenu.dispatchEvent(ev);
+ if (notCanceled && typeof this._declaration.onMenuSelect === "function") {
+ this._declaration.onMenuSelect({
+ modifiers: this.rootMenu.modifiers,
+ id: this._declaration.id,
+ data: this._declaration.data
+ });
+ }
+ }
+ handleEvent(event) {
+ var _a3;
+ if (!this.visible || !this.enabled)
+ return;
+ if (event.type === "click") {
+ if (this.rootMenu.state === "modal")
+ this.select();
+ event.stopPropagation();
+ event.preventDefault();
+ return;
+ }
+ if (event.type === "pointerenter") {
+ const ev = event;
+ this.rootMenu.cancelDelayedOperation();
+ if (this.parentMenu.isSubmenuOpen && ((_a3 = this.parentMenu.activeMenuItem) == null ? void 0 : _a3.movingTowardSubmenu(ev))) {
+ this.rootMenu.scheduleOperation(() => {
+ this.parentMenu.activeMenuItem = this;
+ this.openSubmenu();
+ });
+ } else {
+ this.parentMenu.activeMenuItem = this;
+ this.openSubmenu({ withDelay: true });
+ }
+ return;
+ }
+ if (event.type === "pointerleave") {
+ if (this.rootMenu.activeSubmenu === this.parentMenu)
+ this.parentMenu.activeMenuItem = null;
+ return;
+ }
+ if (event.type === "pointerup") {
+ if (this.rootMenu.state !== "modal")
+ this.select();
+ event.stopPropagation();
+ event.preventDefault();
+ return;
+ }
+ }
+ /**
+ * Called when a menu item is selected:
+ * - either dismiss the menu and execute the command
+ * - or display the submenu
+ */
+ select() {
+ this.rootMenu.cancelDelayedOperation();
+ if (this.type === "submenu") {
+ this.openSubmenu();
+ return;
+ }
+ this.active = false;
+ setTimeout(() => {
+ this.active = true;
+ setTimeout(() => {
+ this.rootMenu.hide();
+ this.dispatchSelect();
+ }, BLINK_SPEED);
+ }, BLINK_SPEED);
+ }
+ /**
+ * Open the submenu of this menu item, with a delay if options.delay
+ * This delay improves targeting of submenus with the mouse.
+ */
+ openSubmenu(options) {
+ var _a3;
+ if (this.type !== "submenu" || !this.element)
+ return;
+ if ((_a3 = options == null ? void 0 : options.withDelay) != null ? _a3 : false) {
+ this.rootMenu.scheduleOperation(() => this.openSubmenu());
+ return;
+ }
+ const bounds = this.element.getBoundingClientRect();
+ const dir = getComputedDir(this.element);
+ this.submenu.show({
+ container: this.rootMenu.element.parentNode,
+ location: { x: getEdge(bounds, "trailing", dir), y: bounds.top - 4 },
+ alternateLocation: {
+ x: getEdge(bounds, "leading", dir),
+ y: bounds.top - 4
+ }
+ });
+ }
+ movingTowardSubmenu(ev) {
+ if (!this.element)
+ return false;
+ if (this.type !== "submenu")
+ return false;
+ const lastEv = this.rootMenu.lastMoveEvent;
+ if (!lastEv)
+ return false;
+ const deltaT = ev.timeStamp - lastEv.timeStamp;
+ if (deltaT > 500)
+ return false;
+ const deltaX = ev.clientX - lastEv.clientX;
+ const s = speed(deltaX, lastEv.clientY - ev.clientY, deltaT);
+ if (s <= 0.2)
+ return false;
+ let position = "right";
+ if (this.submenu.element) {
+ const submenuBounds = this.submenu.element.getBoundingClientRect();
+ const bounds = this.element.getBoundingClientRect();
+ if (submenuBounds.left < bounds.left + bounds.width / 2)
+ position = "left";
+ }
+ return position === "right" ? deltaX > 0 : deltaX < 0;
+ }
+};
+function speed(dx, dy, dt) {
+ return Math.hypot(dx, dy) / dt;
+}
+function dynamicValue(value, modifiers) {
+ if (value === void 0 || typeof value !== "function")
+ return value;
+ modifiers != null ? modifiers : modifiers = { alt: false, control: false, shift: false, meta: false };
+ return value(modifiers);
+}
+
+// src/ui/menu/menu-list.ts
+var _MenuListState = class __MenuListState {
+ constructor(items, options) {
+ this._element = null;
+ this._activeMenuItem = null;
+ this._dirty = true;
+ var _a3, _b3;
+ this.parentMenu = (_a3 = options == null ? void 0 : options.parentMenu) != null ? _a3 : null;
+ this._submenuClass = options == null ? void 0 : options.submenuClass;
+ this.columnCount = (_b3 = options == null ? void 0 : options.columnCount) != null ? _b3 : 1;
+ this.isSubmenuOpen = false;
+ this.menuItems = items;
+ }
+ get children() {
+ return this._menuItems;
+ }
+ /** Setting the menu items will reset this item and
+ * redefine a set of _MenuItem objects
+ */
+ set menuItems(items) {
+ const parent = this.parentMenu;
+ this.dispose();
+ this.parentMenu = parent;
+ items = [...items];
+ this._menuItems = items.map(
+ (x) => x["onCreate"] ? x["onCreate"](x, this) : new _MenuItemState(x, this)
+ );
+ this.hasCheck = void 0;
+ this.dirty = true;
+ }
+ dispose() {
+ var _a3;
+ this.hide();
+ if (this._element)
+ this._element.remove();
+ if (this._abortController)
+ this._abortController.abort();
+ (_a3 = this._menuItems) == null ? void 0 : _a3.forEach((x) => x.dispose());
+ this._menuItems = [];
+ this._activeMenuItem = null;
+ this.parentMenu = null;
+ }
+ handleEvent(event) {
+ if (event.type === "wheel" && this._element) {
+ const ev = event;
+ this._element.scrollBy(0, ev.deltaY);
+ event.stopPropagation();
+ }
+ }
+ dispatchEvent(ev) {
+ return this.rootMenu.dispatchEvent(ev);
+ }
+ get rootMenu() {
+ return this.parentMenu.rootMenu;
+ }
+ /**
+ * Update the 'model' of this menu (i.e. list of menu items)
+ */
+ updateState(modifiers) {
+ var _a3, _b3, _c2;
+ this._menuItems.forEach((x) => x.updateState(modifiers));
+ const previousHasCheck = this.hasCheck;
+ this.hasCheck = this._menuItems.some((x) => x.visible && x.hasCheck);
+ if (this.hasCheck !== previousHasCheck) {
+ this._menuItems.forEach((x) => x.updateState(modifiers));
+ }
+ let heading = void 0;
+ let itemInHeadingCount = 0;
+ for (const item of this._menuItems) {
+ if (item.type === "heading") {
+ if (heading && itemInHeadingCount === 0)
+ heading.visible = false;
+ heading = item;
+ itemInHeadingCount = 0;
+ } else if (item.type === "divider" && heading) {
+ heading.visible = itemInHeadingCount > 0;
+ heading = void 0;
+ itemInHeadingCount = 0;
+ } else if (heading && item.visible)
+ itemInHeadingCount += 1;
+ }
+ if (heading)
+ heading.visible = itemInHeadingCount > 0;
+ let wasDivider = true;
+ for (const item of this._menuItems) {
+ if (item.type === "divider") {
+ item.visible = !wasDivider;
+ wasDivider = true;
+ } else if (item.visible)
+ wasDivider = false;
+ }
+ if (!((_a3 = this.activeMenuItem) == null ? void 0 : _a3.visible))
+ this.activeMenuItem = null;
+ if (!((_b3 = this.activeMenuItem) == null ? void 0 : _b3.enabled) && ((_c2 = this.activeMenuItem) == null ? void 0 : _c2.type) === "submenu")
+ this._activeMenuItem.submenu.hide();
+ this._dirty = false;
+ }
+ get enabled() {
+ this.updateIfDirty();
+ return this._menuItems.some(
+ (x) => x.type !== "divider" && x.visible && x.enabled
+ );
+ }
+ get visible() {
+ this.updateIfDirty();
+ return this._menuItems.some((x) => x.type !== "divider" && x.visible);
+ }
+ set dirty(value) {
+ console.assert(value === true);
+ if (this._dirty === value)
+ return;
+ if (value && this.parentMenu) {
+ this._dirty = true;
+ this.parentMenu.dirty = true;
+ }
+ }
+ updateIfDirty() {
+ if (this._dirty)
+ this.updateState(this.rootMenu.modifiers);
+ }
+ /** If the element has been created, update its content to reflect
+ * the current state of the menu items
+ */
+ updateElement() {
+ var _a3;
+ if (!this._element)
+ return;
+ this._element.textContent = "";
+ for (const { element, visible } of this._menuItems)
+ if (element && visible)
+ this._element.append(element);
+ (_a3 = this._element.querySelector("li:first-of-type")) == null ? void 0 : _a3.setAttribute("tabindex", "0");
+ }
+ /**
+ * Construct (or return a cached version) of an element representing
+ * the items in this menu (model -> view)
+ */
+ get element() {
+ if (this._element)
+ return this._element;
+ const menu = document.createElement("menu");
+ menu.setAttribute("role", "menu");
+ menu.setAttribute("tabindex", "-1");
+ menu.setAttribute("aria-orientation", "vertical");
+ menu.setAttribute("part", "ui-menu-container");
+ if (this._submenuClass)
+ menu.classList.add(this._submenuClass);
+ menu.classList.add("ui-menu-container");
+ if (!this._abortController)
+ this._abortController = new AbortController();
+ const signal = this._abortController.signal;
+ menu.addEventListener("focus", this, { signal });
+ menu.addEventListener("wheel", this, { passive: true, signal });
+ this._element = menu;
+ this.updateElement();
+ return menu;
+ }
+ /**
+ * The active menu is displayed on a colored background.
+ */
+ get activeMenuItem() {
+ return this._activeMenuItem;
+ }
+ /**
+ * Set to null to have no active item.
+ * Note that setting the active menu item doesn't automatically
+ * open the submenu (e.g. when keyboard navigating).
+ * Call `item.submenu.openSubmenu()` to open the submenu.
+ */
+ set activeMenuItem(value) {
+ var _a3, _b3, _c2, _d2;
+ this.rootMenu.cancelDelayedOperation();
+ if (value !== this._activeMenuItem) {
+ if (this.activeMenuItem) {
+ const item = this.activeMenuItem;
+ item.active = false;
+ (_a3 = item.submenu) == null ? void 0 : _a3.hide();
+ }
+ if (!((_b3 = value == null ? void 0 : value.visible) != null ? _b3 : true)) {
+ this._activeMenuItem = null;
+ return;
+ }
+ this._activeMenuItem = value;
+ if (value)
+ value.active = true;
+ }
+ if (value)
+ (_c2 = value.element) == null ? void 0 : _c2.focus({ preventScroll: true });
+ else
+ (_d2 = this._element) == null ? void 0 : _d2.focus({ preventScroll: true });
+ }
+ /** First activable menu item */
+ get firstMenuItem() {
+ this.updateIfDirty();
+ let result = 0;
+ let found = false;
+ const menuItems = this._menuItems;
+ while (!found && result <= menuItems.length - 1) {
+ const item = menuItems[result];
+ found = item.type !== "divider" && item.visible && item.enabled;
+ result += 1;
+ }
+ return found ? menuItems[result - 1] : null;
+ }
+ /** Last activable menu item */
+ get lastMenuItem() {
+ this.updateIfDirty();
+ const menuItems = this._menuItems;
+ let result = menuItems.length - 1;
+ let found = false;
+ while (!found && result >= 0) {
+ const item = menuItems[result];
+ found = item.type !== "divider" && item.visible && item.enabled;
+ result -= 1;
+ }
+ return found ? menuItems[result + 1] : null;
+ }
+ nextMenuItem(stride) {
+ if (stride === 0)
+ return this._activeMenuItem;
+ if (!this._activeMenuItem)
+ return stride > 0 ? this.firstMenuItem : this.lastMenuItem;
+ if (!this.firstMenuItem || !this.lastMenuItem || !this._activeMenuItem)
+ return null;
+ this.updateIfDirty();
+ const first = this._menuItems.indexOf(this.firstMenuItem);
+ const last = this._menuItems.indexOf(this.lastMenuItem);
+ let index = this._menuItems.indexOf(this._activeMenuItem);
+ let count = 1;
+ while (index >= first && index <= last) {
+ index += stride > 0 ? 1 : -1;
+ const item = this._menuItems[index];
+ if (!item)
+ break;
+ if (item.visible && item.enabled) {
+ if (count === Math.abs(stride))
+ return this._menuItems[index];
+ count += 1;
+ }
+ }
+ return stride > 0 ? this.lastMenuItem : this.firstMenuItem;
+ }
+ getMenuItemColumn(menu) {
+ this.updateIfDirty();
+ const visibleItems = this._menuItems.filter((x) => x.visible && x.enabled);
+ const index = visibleItems.indexOf(menu);
+ if (index < 0)
+ return -1;
+ return index % this.columnCount;
+ }
+ static get collator() {
+ if (__MenuListState._collator)
+ return __MenuListState._collator;
+ __MenuListState._collator = new Intl.Collator(void 0, {
+ usage: "search",
+ sensitivity: "base"
+ });
+ return __MenuListState._collator;
+ }
+ findMenuItem(text) {
+ var _a3;
+ this.updateIfDirty();
+ const candidates = this._menuItems.filter(
+ (x) => x.type !== "divider" && x.visible && x.enabled
+ );
+ if (candidates.length === 0)
+ return null;
+ const last = Math.max(...candidates.map((x) => x.label.length)) - text.length;
+ if (last < 0)
+ return null;
+ let result = null;
+ let i = 0;
+ while (i < last && !result) {
+ result = (_a3 = candidates.find(
+ (x) => __MenuListState.collator.compare(
+ text,
+ x.label.substring(i, text.length)
+ ) === 0
+ )) != null ? _a3 : null;
+ i++;
+ }
+ return result;
+ }
+ /**
+ * @param location: in viewport coordinates
+ * @param alternateLocation: in viewport coordinates
+ * @param container: where the menu should be attached
+ * @return false if no menu to show
+ */
+ show(options) {
+ if (!this.visible || !options.container)
+ return false;
+ this.updateElement();
+ options.container.appendChild(this.element);
+ if (supportPopover()) {
+ this.element.popover = "manual";
+ this.element.showPopover();
+ }
+ if (options.location) {
+ fitInViewport(this.element, {
+ location: options.location,
+ alternateLocation: options.alternateLocation,
+ verticalPos: "bottom",
+ horizontalPos: "start"
+ });
+ }
+ this.element.focus({ preventScroll: true });
+ if (this.parentMenu)
+ this.parentMenu.openSubmenu = this;
+ return true;
+ }
+ hide() {
+ var _a3, _b3, _c2, _d2, _e;
+ this.openSubmenu = null;
+ this.activeMenuItem = null;
+ if (this.parentMenu)
+ this.parentMenu.openSubmenu = null;
+ if (supportPopover() && ((_a3 = this._element) == null ? void 0 : _a3.popover))
+ this.element.hidePopover();
+ (_c2 = (_b3 = this.parentMenu) == null ? void 0 : _b3.element) == null ? void 0 : _c2.focus();
+ (_e = (_d2 = this._element) == null ? void 0 : _d2.parentNode) == null ? void 0 : _e.removeChild(this._element);
+ }
+ /**
+ * This method is called to record that one of our submenus has opened.
+ * To open a submenu call openSubmenu() on the item with the submenu
+ * or show() on the submenu.
+ */
+ set openSubmenu(submenu) {
+ var _a3, _b3, _c2, _d2;
+ const expanded = submenu !== null;
+ if (((_a3 = this.activeMenuItem) == null ? void 0 : _a3.type) === "submenu") {
+ (_b3 = this.activeMenuItem.element) == null ? void 0 : _b3.setAttribute(
+ "aria-expanded",
+ expanded.toString()
+ );
+ }
+ (_d2 = (_c2 = this.activeMenuItem) == null ? void 0 : _c2.element) == null ? void 0 : _d2.classList.toggle("is-submenu-open", expanded);
+ this.isSubmenuOpen = expanded;
+ }
+};
+
+// src/ui/menu/menu.ts
+var _Menu = class _Menu extends _MenuListState {
+ /**
+ * The host is the element that the events will be dispatched from
+ *
+ */
+ constructor(menuItems, options) {
+ var _a3;
+ super(menuItems);
+ /**
+ * - 'closed': the menu is not visible
+ * - 'open': the menu is visible as long as the mouse button is pressed
+ * - 'modal': the menu is visible until dismissed, even with
+ * the mouse button released
+ */
+ this.state = "closed";
+ this.typingBufferResetTimer = 0;
+ this.hysteresisTimer = 0;
+ this._updating = false;
+ this._host = (_a3 = options == null ? void 0 : options.host) != null ? _a3 : null;
+ this.isDynamic = menuItems.some(isDynamic);
+ this._modifiers = {
+ shift: false,
+ control: false,
+ alt: false,
+ meta: false
+ };
+ this.typingBuffer = "";
+ this.state = "closed";
+ }
+ get modifiers() {
+ return this._modifiers;
+ }
+ set modifiers(value) {
+ if (equalKeyboardModifiers(this._modifiers, value))
+ return;
+ this._modifiers = value;
+ this.dirty = true;
+ }
+ /**
+ * The currently active menu: could be the root menu or a submenu
+ */
+ get activeSubmenu() {
+ let result = this;
+ while (result.isSubmenuOpen)
+ result = result.activeMenuItem.submenu;
+ return result;
+ }
+ set dirty(value) {
+ if (this._updating)
+ return;
+ console.assert(value === true);
+ if (this._dirty === value)
+ return;
+ this._dirty = true;
+ if (value) {
+ setTimeout(() => {
+ this.updateState(this.modifiers);
+ this.updateElement();
+ });
+ }
+ }
+ updateState(modifiers) {
+ this._updating = true;
+ this.modifiers = modifiers != null ? modifiers : this.modifiers;
+ super.updateState(this.modifiers);
+ this._updating = false;
+ }
+ handleKeyupEvent(ev) {
+ if (this.isDynamic)
+ this.modifiers = keyboardModifiersFromEvent(ev);
+ ev.stopImmediatePropagation();
+ }
+ handleKeydownEvent(ev) {
+ var _a3, _b3, _c2;
+ if (ev.key === "Tab" || ev.key === "Escape") {
+ this.hide();
+ return;
+ }
+ if (this.isDynamic)
+ this.modifiers = keyboardModifiersFromEvent(ev);
+ let handled = true;
+ const menu = this.activeSubmenu;
+ const menuItem = menu.activeMenuItem;
+ switch (ev.key) {
+ case " ":
+ case "Space":
+ case "Return":
+ case "Enter":
+ menuItem == null ? void 0 : menuItem.select(keyboardModifiersFromEvent(ev));
+ break;
+ case "ArrowRight":
+ if ((menuItem == null ? void 0 : menuItem.type) === "submenu") {
+ menuItem.select(keyboardModifiersFromEvent(ev));
+ this.activeSubmenu.activeMenuItem = this.activeSubmenu.firstMenuItem;
+ } else if (!menuItem)
+ menu.activeMenuItem = menu.firstMenuItem;
+ else {
+ const col = (_a3 = menu.getMenuItemColumn(menuItem)) != null ? _a3 : -1;
+ if (col >= 0 && col < ((_b3 = menu.columnCount) != null ? _b3 : 1) - 1) {
+ const next = menu.nextMenuItem(1);
+ if (next)
+ menu.activeMenuItem = next;
+ }
+ }
+ break;
+ case "ArrowLeft":
+ if (menu === this.rootMenu) {
+ if (!menuItem)
+ menu.activeMenuItem = menu.firstMenuItem;
+ } else {
+ const col = menuItem ? (_c2 = menu.getMenuItemColumn(menuItem)) != null ? _c2 : -1 : -1;
+ if (col <= 0 || !menuItem) {
+ menu.hide();
+ const activeMenu = menu.parentMenu.activeMenuItem;
+ if (activeMenu) {
+ const { element } = activeMenu;
+ element == null ? void 0 : element.focus();
+ element == null ? void 0 : element.classList.remove("is-submenu-open");
+ }
+ } else {
+ const next = menu.nextMenuItem(-1);
+ if (next)
+ menu.activeMenuItem = next;
+ }
+ }
+ break;
+ case "ArrowDown":
+ menu.activeMenuItem = menu.nextMenuItem(menu.columnCount);
+ break;
+ case "ArrowUp":
+ menu.activeMenuItem = menu.nextMenuItem(-menu.columnCount);
+ break;
+ case "Home":
+ case "PageUp":
+ menu.activeMenuItem = menu.firstMenuItem;
+ break;
+ case "End":
+ case "PageDown":
+ menu.activeMenuItem = menu.lastMenuItem;
+ break;
+ case "Backspace":
+ if (this.typingBuffer) {
+ this.typingBuffer = this.typingBuffer.slice(0, -1);
+ if (this.typingBuffer) {
+ clearTimeout(this.typingBufferResetTimer);
+ const newItem = menu.findMenuItem(this.typingBuffer);
+ if (newItem)
+ menu.activeMenuItem = newItem;
+ this.typingBufferResetTimer = setTimeout(() => {
+ this.typingBuffer = "";
+ }, 500);
+ }
+ }
+ break;
+ default:
+ if (mightProducePrintableCharacter(ev)) {
+ if (isFinite(this.typingBufferResetTimer))
+ clearTimeout(this.typingBufferResetTimer);
+ this.typingBuffer += ev.key;
+ const newItem = menu.findMenuItem(this.typingBuffer);
+ if (newItem)
+ menu.activeMenuItem = newItem;
+ this.typingBufferResetTimer = setTimeout(() => {
+ this.typingBuffer = "";
+ }, 500);
+ } else
+ handled = false;
+ }
+ if (handled) {
+ ev.preventDefault();
+ ev.stopPropagation();
+ }
+ }
+ handleEvent(event) {
+ if (event.type === "keydown")
+ this.handleKeydownEvent(event);
+ else if (event.type === "keyup")
+ this.handleKeyupEvent(event);
+ else if (event.type === "pointermove")
+ this.lastMoveEvent = event;
+ else if (event.type === "pointerup" && event.target === this.scrim) {
+ if (Number.isFinite(this.rootMenu._openTimestamp) && Date.now() - this.rootMenu._openTimestamp < 120) {
+ this.state = "modal";
+ } else if (this.state === "modal") {
+ this.hide();
+ }
+ } else if (event.type === "contextmenu") {
+ event.preventDefault();
+ event.stopPropagation();
+ return;
+ }
+ super.handleEvent(event);
+ }
+ /** Return true if the event is **not** canceled */
+ dispatchEvent(ev) {
+ if (!this._host)
+ return true;
+ return this._host.dispatchEvent(ev);
+ }
+ get scrim() {
+ return Scrim.element;
+ }
+ connectScrim(target) {
+ const scrim = this.scrim;
+ scrim.addEventListener("pointerup", this);
+ scrim.addEventListener("contextmenu", this);
+ scrim.addEventListener("keydown", this);
+ scrim.addEventListener("keyup", this);
+ scrim.addEventListener("pointermove", this);
+ Scrim.open({ root: target, onDismiss: () => this.hide() });
+ }
+ disconnectScrim() {
+ const scrim = this.scrim;
+ scrim.removeEventListener("pointerup", this);
+ scrim.removeEventListener("contextmenu", this);
+ scrim.removeEventListener("keydown", this);
+ scrim.removeEventListener("keyup", this);
+ scrim.removeEventListener("pointermove", this);
+ if (Scrim.state === "open")
+ Scrim.scrim.close();
+ }
+ get rootMenu() {
+ return this;
+ }
+ /** Locations are in viewport coordinate. */
+ show(options) {
+ this._onDismiss = options == null ? void 0 : options.onDismiss;
+ if (options == null ? void 0 : options.modifiers)
+ this.modifiers = options.modifiers;
+ this.updateState();
+ this.connectScrim(options == null ? void 0 : options.target);
+ if (!super.show(__spreadProps(__spreadValues({}, options), { container: this.scrim }))) {
+ this.disconnectScrim();
+ return false;
+ }
+ this._openTimestamp = Date.now();
+ this.state = "open";
+ return true;
+ }
+ hide() {
+ this.cancelDelayedOperation();
+ if (this.state !== void 0) {
+ if (this.state !== "closed") {
+ this.activeMenuItem = null;
+ Scrim.element.parentElement.focus();
+ super.hide();
+ this.state = "closed";
+ this.disconnectScrim();
+ }
+ if (this._onDismiss) {
+ this._onDismiss();
+ this._onDismiss = void 0;
+ }
+ }
+ }
+ scheduleOperation(fn) {
+ this.cancelDelayedOperation();
+ const delay = _Menu.SUBMENU_DELAY;
+ if (delay <= 0) {
+ fn();
+ return;
+ }
+ this.hysteresisTimer = setTimeout(() => {
+ this.hysteresisTimer = 0;
+ fn();
+ }, delay);
+ }
+ cancelDelayedOperation() {
+ if (this.hysteresisTimer) {
+ clearTimeout(this.hysteresisTimer);
+ this.hysteresisTimer = 0;
+ }
+ }
+};
+/**
+ * Delay (in milliseconds) before displaying a submenu.
+ *
+ * Prevents distracting flashing of submenus when moving quickly
+ * through the options in a menu.
+ */
+_Menu.SUBMENU_DELAY = 120;
+var Menu = _Menu;
+function isDynamic(item) {
+ if (isDivider(item))
+ return false;
+ if (typeof item.label === "function" || typeof item.ariaLabel === "function" || typeof item.tooltip === "function")
+ return true;
+ if ((isCommand(item) || isSubmenu(item)) && (typeof item.enabled === "function" || typeof item.visible === "function"))
+ return true;
+ if (isCommand(item) && typeof item.checked === "function")
+ return true;
+ if (isSubmenu(item))
+ return item.submenu.some(isDynamic);
+ return false;
+}
+
+// src/ui/events/longpress.ts
+var LongPress = class {
+ // Maximum distance between the start and end of the gesture, in pixels
+};
+LongPress.DELAY = 300;
+// Amount of time before showing the context menu, in ms
+LongPress.MAX_DISTANCE = 10;
+function onLongPress(triggerEvent) {
+ return new Promise((resolve, _reject) => {
+ const startPoint = eventLocation(triggerEvent);
+ if (!startPoint)
+ resolve(false);
+ let lastPoint = startPoint;
+ const timer = setTimeout(() => {
+ controller.abort();
+ resolve(distance2(lastPoint, startPoint) < LongPress.MAX_DISTANCE);
+ }, LongPress.DELAY);
+ const controller = new AbortController();
+ const signal = controller.signal;
+ for (const eventType of ["pointermove", "pointerup", "pointercancel"]) {
+ window.addEventListener(
+ eventType,
+ (evt) => {
+ if (evt.type === "pointerup" || evt.type === "pointercancel") {
+ clearTimeout(timer);
+ controller.abort();
+ resolve(false);
+ } else if (evt.type === "pointermove") {
+ const location = eventLocation(evt);
+ if (location)
+ lastPoint = location;
+ }
+ },
+ { passive: true, signal }
+ );
+ }
+ });
+}
+
+// src/ui/menu/context-menu.ts
+async function onContextMenu(event, target, menu) {
+ if (event.type === "contextmenu") {
+ const evt = event;
+ if (menu.show({
+ target,
+ location: eventLocation(evt),
+ modifiers: keyboardModifiersFromEvent(evt)
+ })) {
+ event.preventDefault();
+ event.stopPropagation();
+ return true;
+ }
+ }
+ if (event.type === "keydown") {
+ const evt = event;
+ if (evt.code === "ContextMenu" || evt.code === "F10" && evt.shiftKey) {
+ const bounds = target == null ? void 0 : target.getBoundingClientRect();
+ if (bounds && menu.show({
+ target,
+ location: {
+ x: Math.ceil(bounds.left + bounds.width / 2),
+ y: Math.ceil(bounds.top + bounds.height / 2)
+ },
+ modifiers: keyboardModifiersFromEvent(evt)
+ })) {
+ event.preventDefault();
+ event.stopPropagation();
+ return true;
+ }
+ }
+ }
+ if (event.type === "pointerdown" && event.pointerType !== "mouse" && event.button === 0) {
+ let eventTarget = event.target;
+ while (eventTarget && target !== eventTarget)
+ eventTarget = eventTarget.parentNode;
+ if (!eventTarget)
+ return false;
+ if (!menu.visible)
+ return false;
+ const location = eventLocation(event);
+ if (await onLongPress(event)) {
+ if (menu.state !== "closed")
+ return false;
+ menu.show({ target, location });
+ return true;
+ }
+ }
+ return false;
+}
+
+// src/latex-commands/accents.ts
+var ACCENTS = {
+ acute: 714,
+ grave: 715,
+ dot: 729,
+ ddot: 168,
+ mathring: 730,
+ tilde: 126,
+ bar: 713,
+ breve: 728,
+ check: 711,
+ hat: 94,
+ vec: 8407
+};
+defineFunction(Object.keys(ACCENTS), "{body:auto}", {
+ createAtom: (options) => new AccentAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ accentChar: ACCENTS[options.command.slice(1)]
+ }))
+});
+defineFunction(["widehat", "widecheck", "widetilde"], "{body:auto}", {
+ createAtom: (options) => {
+ const baseString = parseArgAsString(argAtoms(options.args[0]));
+ return new AccentAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ svgAccent: options.command.slice(1) + (baseString.length > 5 ? "4" : ["1", "1", "2", "2", "3", "3"][baseString.length])
+ }));
+ }
+});
+defineFunction(["overarc", "overparen", "wideparen"], "{body:auto}", {
+ createAtom: (options) => {
+ return new AccentAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ svgAccent: "overarc"
+ }));
+ }
+});
+defineFunction(["underarc", "underparen"], "{body:auto}", {
+ createAtom: (options) => {
+ return new OverunderAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ svgBelow: "underarc"
+ }));
+ }
+});
+defineFunction("utilde", "{body:auto}", {
+ createAtom: (options) => {
+ const body = argAtoms(options.args[0]);
+ const baseString = parseArgAsString(body);
+ const accent = "widetilde" + (baseString.length > 5 ? "4" : ["1", "1", "2", "2", "3", "3"][baseString.length]);
+ return new OverunderAtom(__spreadProps(__spreadValues({}, options), {
+ body,
+ svgBelow: accent,
+ boxType: atomsBoxType(body)
+ }));
+ }
+});
+defineFunction("^", "{:string}", {
+ createAtom: (options) => {
+ var _a3;
+ return new Atom(__spreadProps(__spreadValues({}, options), {
+ type: "mord",
+ isFunction: false,
+ limits: "adjacent",
+ value: options.args[0] ? (_a3 = {
+ a: "\xE2",
+ e: "\xEA",
+ i: "\xEE",
+ o: "\xF4",
+ u: "\xFB",
+ A: "\xC2",
+ E: "\xCA",
+ I: "\xCE",
+ O: "\xD4",
+ U: "\xDB"
+ }[options.args[0]]) != null ? _a3 : "^" : "^"
+ }));
+ }
+});
+defineFunction("`", "{:string}", {
+ createAtom: (options) => {
+ var _a3;
+ return new Atom(__spreadProps(__spreadValues({}, options), {
+ type: "mord",
+ isFunction: false,
+ limits: "adjacent",
+ value: options.args[0] ? (_a3 = {
+ a: "\xE0",
+ e: "\xE8",
+ i: "\xEC",
+ o: "\xF2",
+ u: "\xF9",
+ A: "\xC0",
+ E: "\xC8",
+ I: "\xCC",
+ O: "\xD2",
+ U: "\xD9"
+ }[options.args[0]]) != null ? _a3 : "`" : "`"
+ }));
+ }
+});
+defineFunction("'", "{:string}", {
+ createAtom: (options) => {
+ var _a3;
+ return new Atom(__spreadProps(__spreadValues({}, options), {
+ type: "mord",
+ isFunction: false,
+ limits: "adjacent",
+ value: options.args[0] ? (_a3 = {
+ a: "\xE1",
+ e: "\xE9",
+ i: "\xED",
+ o: "\xF3",
+ u: "\xFA",
+ A: "\xC1",
+ E: "\xC9",
+ I: "\xCD",
+ O: "\xD3",
+ U: "\xDA"
+ }[options.args[0]]) != null ? _a3 : "'" : "'"
+ }));
+ }
+});
+defineFunction('"', "{:string}", {
+ createAtom: (options) => {
+ var _a3, _b3;
+ return new Atom(__spreadProps(__spreadValues({}, options), {
+ type: "mord",
+ isFunction: false,
+ limits: "adjacent",
+ value: ((_a3 = options.args) == null ? void 0 : _a3[0]) ? (_b3 = {
+ a: "\xE4",
+ e: "\xEB",
+ i: "\xEF",
+ o: "\xF6",
+ u: "\xFC",
+ A: "\xC4",
+ E: "\xCB",
+ I: "\xCB",
+ O: "\xD6",
+ U: "\xDC"
+ }[options.args[0]]) != null ? _b3 : '"' + options.args[0] : '"'
+ }));
+ }
+});
+defineFunction(".", "{:string}", {
+ createAtom: (options) => {
+ var _a3, _b3;
+ return new Atom(__spreadProps(__spreadValues({}, options), {
+ type: "mord",
+ isFunction: false,
+ limits: "adjacent",
+ value: ((_a3 = options.args) == null ? void 0 : _a3[0]) ? (_b3 = {
+ // a with single dot above
+ a: "\u0227",
+ e: "\u0117",
+ // i with single dot above (combining character)
+ i: "\u0307i",
+ o: "\u022F",
+ // U with single dot above (combining character)
+ u: "\u0307u",
+ A: "\u0226",
+ E: "\u0116",
+ I: "\u0130",
+ O: "\u022E",
+ // U with single dot above (combining character)
+ U: "\u0307U"
+ }[options.args[0]]) != null ? _b3 : "." + options.args[0] : "."
+ }));
+ }
+});
+defineFunction("=", "{:string}", {
+ createAtom: (options) => {
+ var _a3, _b3;
+ return new Atom(__spreadProps(__spreadValues({}, options), {
+ type: "mord",
+ isFunction: false,
+ limits: "adjacent",
+ value: ((_a3 = options.args) == null ? void 0 : _a3[0]) ? (_b3 = {
+ // a with macron
+ a: "\u0101",
+ e: "\u0113",
+ i: "\u012B",
+ o: "\u014D",
+ u: "\u016B",
+ A: "\u0100",
+ E: "\u0112",
+ I: "\u012A",
+ O: "\u014C",
+ U: "\u016A"
+ }[options.args[0]]) != null ? _b3 : "=" + options.args[0] : "="
+ // fallback
+ }));
+ }
+});
+defineFunction("~", "{:string}", {
+ createAtom: (options) => {
+ var _a3;
+ return new Atom(__spreadProps(__spreadValues({
+ type: "mord"
+ }, options), {
+ isFunction: false,
+ limits: "adjacent",
+ value: options.args[0] ? (_a3 = { n: "\xF1", N: "\xD1", a: "\xE3", o: "\xF5", A: "\xC3", O: "\xD5" }[options.args[0]]) != null ? _a3 : "\xB4" : "\xB4"
+ }));
+ }
+});
+defineFunction("c", "{:string}", {
+ createAtom: (options) => {
+ var _a3;
+ return new Atom(__spreadProps(__spreadValues({}, options), {
+ type: "mord",
+ isFunction: false,
+ limits: "adjacent",
+ value: options.args[0] ? (_a3 = { c: "\xE7", C: "\xC7" }[options.args[0]]) != null ? _a3 : "" : ""
+ }));
+ }
+});
+
+// src/latex-commands/enclose.ts
+defineFunction("enclose", "{notation:string}[style:string]{body:auto}", {
+ createAtom: (atomOptions) => {
+ var _a3, _b3;
+ const args = atomOptions.args;
+ const options = {
+ strokeColor: "currentColor",
+ strokeWidth: "",
+ strokeStyle: "solid",
+ backgroundcolor: "transparent",
+ padding: "auto",
+ shadow: "none",
+ svgStrokeStyle: void 0,
+ borderStyle: void 0,
+ style: (_a3 = atomOptions.style) != null ? _a3 : {}
+ };
+ if (args[1]) {
+ const styles = args[1].split(/,(?![^(]*\)(?:(?:[^(]*\)){2})*[^"]*$)/);
+ for (const s of styles) {
+ const shorthand = s.match(/\s*(\S+)\s+(\S+)\s+(.*)/);
+ if (shorthand) {
+ options.strokeWidth = shorthand[1];
+ options.strokeStyle = shorthand[2];
+ options.strokeColor = shorthand[3];
+ } else {
+ const attribute = s.match(/\s*([a-z]*)\s*=\s*"(.*)"/);
+ if (attribute) {
+ if (attribute[1] === "mathbackground")
+ options.backgroundcolor = attribute[2];
+ else if (attribute[1] === "mathcolor")
+ options.strokeColor = attribute[2];
+ else if (attribute[1] === "padding")
+ options.padding = attribute[2];
+ else if (attribute[1] === "shadow")
+ options.shadow = attribute[2];
+ }
+ }
+ }
+ if (options.strokeStyle === "dashed")
+ options.svgStrokeStyle = "5,5";
+ else if (options.strokeStyle === "dotted")
+ options.svgStrokeStyle = "1,5";
+ }
+ options.borderStyle = `${options.strokeWidth} ${options.strokeStyle} ${options.strokeColor}`;
+ const notation = {};
+ ((_b3 = args[0]) != null ? _b3 : "").split(/[, ]/).filter((v) => v.length > 0).forEach((x) => {
+ notation[x.toLowerCase()] = true;
+ });
+ return new EncloseAtom(
+ atomOptions.command,
+ argAtoms(args[2]),
+ notation,
+ options
+ );
+ }
+});
+defineFunction("cancel", "{body:auto}", {
+ createAtom: (options) => {
+ var _a3;
+ return new EncloseAtom(
+ options.command,
+ argAtoms(options.args[0]),
+ { updiagonalstrike: true },
+ {
+ strokeColor: "currentColor",
+ strokeWidth: "",
+ strokeStyle: "solid",
+ borderStyle: "1px solid currentColor",
+ backgroundcolor: "transparent",
+ padding: "auto",
+ shadow: "none",
+ style: (_a3 = options.style) != null ? _a3 : {}
+ }
+ );
+ }
+});
+defineFunction("bcancel", "{body:auto}", {
+ createAtom: (options) => {
+ var _a3;
+ return new EncloseAtom(
+ options.command,
+ argAtoms(options.args[0]),
+ { downdiagonalstrike: true },
+ {
+ strokeColor: "currentColor",
+ strokeWidth: "",
+ strokeStyle: "solid",
+ borderStyle: "1px solid currentColor",
+ backgroundcolor: "transparent",
+ padding: "auto",
+ shadow: "none",
+ style: (_a3 = options.style) != null ? _a3 : {}
+ }
+ );
+ }
+});
+defineFunction("xcancel", "{body:auto}", {
+ createAtom: (options) => {
+ var _a3;
+ return new EncloseAtom(
+ options.command,
+ argAtoms(options.args[0]),
+ { updiagonalstrike: true, downdiagonalstrike: true },
+ {
+ strokeColor: "currentColor",
+ strokeWidth: "",
+ strokeStyle: "solid",
+ borderStyle: "1px solid currentColor",
+ backgroundcolor: "transparent",
+ padding: "auto",
+ shadow: "none",
+ style: (_a3 = options.style) != null ? _a3 : {}
+ }
+ );
+ }
+});
+
+// src/latex-commands/extensible-symbols.ts
+defineFunction(
+ [
+ "overrightarrow",
+ "overleftarrow",
+ "Overrightarrow",
+ "overleftharpoon",
+ "overrightharpoon",
+ "overleftrightarrow",
+ "overlinesegment",
+ "overgroup"
+ ],
+ "{:auto}",
+ {
+ createAtom: (options) => {
+ var _a3;
+ return new OverunderAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms((_a3 = options.args) == null ? void 0 : _a3[0]),
+ skipBoundary: false,
+ supsubPlacement: "over-under",
+ paddedBody: true,
+ boxType: "rel",
+ // Set the "svgAbove" to the name of a SVG object (which is the same
+ // as the command name)
+ svgAbove: options.command.slice(1)
+ }));
+ }
+ }
+);
+defineFunction("overbrace", "{:auto}", {
+ createAtom: (options) => new OverunderAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ skipBoundary: false,
+ supsubPlacement: "over-under",
+ paddedBody: true,
+ boxType: "ord",
+ svgAbove: options.command.slice(1)
+ }))
+});
+defineFunction(
+ [
+ "underrightarrow",
+ "underleftarrow",
+ "underleftrightarrow",
+ "underlinesegment",
+ "undergroup"
+ ],
+ "{:auto}",
+ {
+ createAtom: (options) => new OverunderAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ skipBoundary: false,
+ supsubPlacement: "over-under",
+ paddedBody: true,
+ boxType: "rel",
+ // Set the "svgBelow" to the name of a SVG object (which is the same
+ // as the command name)
+ svgBelow: options.command.slice(1)
+ }))
+ }
+);
+defineFunction(["underbrace"], "{:auto}", {
+ createAtom: (options) => new OverunderAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ skipBoundary: false,
+ supsubPlacement: "over-under",
+ paddedBody: true,
+ boxType: "ord",
+ svgBelow: options.command.slice(1)
+ }))
+});
+defineFunction(
+ [
+ "xrightarrow",
+ "longrightarrow",
+ // From mhchem.sty package
+ "xleftarrow",
+ "longleftarrow",
+ // From mhchem.sty package
+ "xRightarrow",
+ "xLeftarrow",
+ "xleftharpoonup",
+ "xleftharpoondown",
+ "xrightharpoonup",
+ "xrightharpoondown",
+ "xlongequal",
+ "xtwoheadleftarrow",
+ "xtwoheadrightarrow",
+ "xleftrightarrow",
+ "longleftrightarrow",
+ // From mhchem.sty package
+ "xLeftrightarrow",
+ "xrightleftharpoons",
+ // From mhchem.sty package
+ "longrightleftharpoons",
+ "xleftrightharpoons",
+ "xhookleftarrow",
+ "xhookrightarrow",
+ "xmapsto",
+ "xtofrom",
+ "xleftrightarrows",
+ // From mhchem.sty package
+ "longleftrightarrows",
+ // From mhchem.sty package
+ "xRightleftharpoons",
+ // From mhchem.sty package
+ "longRightleftharpoons",
+ // From mhchem.sty package
+ "xLeftrightharpoons",
+ // From mhchem.sty package
+ "longLeftrightharpoons"
+ // From mhchem.sty package
+ ],
+ "[:auto]{:auto}",
+ {
+ createAtom: (options) => {
+ var _a3, _b3, _c2, _d2, _e;
+ return new OverunderAtom(__spreadProps(__spreadValues({}, options), {
+ // Set the "svgBody" to the name of a SVG object (which is the same
+ // as the command name)
+ svgBody: options.command.slice(1),
+ // The overscript is optional, i.e. `\xtofrom` is valid
+ above: ((_b3 = argAtoms((_a3 = options.args) == null ? void 0 : _a3[1])) == null ? void 0 : _b3.length) === 0 ? void 0 : argAtoms((_c2 = options.args) == null ? void 0 : _c2[1]),
+ below: (_e = argAtoms((_d2 = options.args) == null ? void 0 : _d2[0])) != null ? _e : null,
+ skipBoundary: false,
+ supsubPlacement: "over-under",
+ paddedBody: true,
+ paddedLabels: true,
+ boxType: "rel"
+ }));
+ },
+ serialize: (atom, options) => atom.command + (!atom.hasEmptyBranch("below") ? `[${atom.belowToLatex(options)}]` : "") + `{${atom.aboveToLatex(options)}}${atom.supsubToLatex(options)}`
+ }
+);
+
+// src/latex-commands/functions.ts
+defineFunction(
+ [
+ "arccos",
+ "arcsin",
+ "arctan",
+ "arctg",
+ // Not LaTeX standard. Used in France
+ "arcctg",
+ // Not LaTeX standard. Used in France
+ "arg",
+ "ch",
+ // Not LaTeX standard. \cosh
+ "cos",
+ "cosh",
+ "cot",
+ "cotg",
+ // Not LaTeX standard. Used in France
+ "coth",
+ "ctg",
+ // Not LaTeX standard. Used in France
+ "cth",
+ "csc",
+ // Not LaTeX standard. \cth
+ "cosec",
+ // Not LaTeX standard.
+ "deg",
+ "dim",
+ "exp",
+ "gcd",
+ "hom",
+ "inf",
+ "ker",
+ "lb",
+ // Not LaTeX standard. US Dept of Commerce recommendation for log2
+ "lg",
+ // Not LaTeX standard. In German and Russian literature, log10.
+ // Sometimes used as the log2
+ "ln",
+ "log",
+ "Pr",
+ "sec",
+ "sh",
+ // Not LaTeX standard. \sinh
+ "sin",
+ "sinh",
+ "sup",
+ "tan",
+ "tanh",
+ "tg",
+ // Not LaTeX standard. Used in France
+ "th",
+ // Not LaTeX standard. \tanh
+ "arcsec",
+ "arccsc",
+ "arsinh",
+ "arcosh",
+ "artanh",
+ "arcsech",
+ "arccsch"
+ ],
+ "",
+ {
+ isFunction: true,
+ ifMode: "math",
+ createAtom: (options) => new OperatorAtom(options.command.slice(1), __spreadProps(__spreadValues({}, options), {
+ limits: "adjacent",
+ isFunction: true,
+ variant: "main",
+ variantStyle: "up"
+ }))
+ }
+);
+defineFunction(["liminf", "limsup"], "", {
+ ifMode: "math",
+ createAtom: (options) => new OperatorAtom(
+ { "\\liminf": "lim inf", "\\limsup": "lim sup" }[options.command],
+ __spreadProps(__spreadValues({}, options), { limits: "over-under", variant: "main" })
+ )
+});
+defineFunction(["lim", "mod"], "", {
+ ifMode: "math",
+ createAtom: (options) => new OperatorAtom(options.command.slice(1), __spreadProps(__spreadValues({}, options), {
+ limits: "over-under",
+ variant: "main"
+ }))
+});
+defineFunction(["det", "max", "min"], "", {
+ ifMode: "math",
+ isFunction: true,
+ createAtom: (options) => new OperatorAtom(options.command.slice(1), __spreadProps(__spreadValues({}, options), {
+ limits: "over-under",
+ isFunction: true,
+ variant: "main"
+ }))
+});
+defineFunction(["ang"], "{:math}", {
+ ifMode: "math",
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[0]) })),
+ serialize: (atom, options) => `\\ang{${atom.bodyToLatex(options)}}`,
+ render: (atom, context) => {
+ const box = atom.createBox(context);
+ const caret = box.caret;
+ box.caret = void 0;
+ const deg = new Box("\xB0", {
+ style: __spreadProps(__spreadValues({}, atom.style), { variant: "normal", variantStyle: "up" })
+ });
+ return new Box([box, deg], {
+ type: "inner",
+ isSelected: atom.isSelected,
+ caret
+ });
+ }
+});
+defineFunction("sqrt", "[index:auto]{radicand:expression}", {
+ ifMode: "math",
+ createAtom: (options) => new SurdAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[1]),
+ index: options.args[0] ? argAtoms(options.args[0]) : void 0
+ }))
+});
+defineFunction(
+ ["frac", "dfrac", "tfrac", "cfrac", "binom", "dbinom", "tbinom"],
+ "{:expression}{:expression}",
+ {
+ ifMode: "math",
+ createAtom: (options) => {
+ const genfracOptions = __spreadValues({}, options);
+ const command = options.command;
+ const args = options.args;
+ switch (command) {
+ case "\\dfrac":
+ case "\\frac":
+ case "\\tfrac":
+ genfracOptions.hasBarLine = true;
+ break;
+ case "\\atopfrac":
+ genfracOptions.hasBarLine = false;
+ break;
+ case "\\dbinom":
+ case "\\binom":
+ case "\\tbinom":
+ genfracOptions.hasBarLine = false;
+ genfracOptions.leftDelim = "(";
+ genfracOptions.rightDelim = ")";
+ break;
+ case "\\cfrac":
+ genfracOptions.hasBarLine = true;
+ genfracOptions.continuousFraction = true;
+ break;
+ default:
+ }
+ switch (command) {
+ case "\\dfrac":
+ case "\\dbinom":
+ genfracOptions.mathstyleName = "displaystyle";
+ break;
+ case "\\tfrac":
+ case "\\tbinom":
+ genfracOptions.mathstyleName = "textstyle";
+ break;
+ default:
+ }
+ return new GenfracAtom(
+ !args[0] ? [new PlaceholderAtom()] : argAtoms(args[0]),
+ !args[1] ? [new PlaceholderAtom()] : argAtoms(args[1]),
+ genfracOptions
+ );
+ },
+ serialize: (atom, options) => {
+ const numer = atom.aboveToLatex(options);
+ const denom = atom.belowToLatex(options);
+ if (/^[0-9]$/.test(numer) && /^[0-9]$/.test(denom))
+ return `${atom.command}${numer}${denom}`;
+ return latexCommand(atom.command, numer, denom);
+ }
+ }
+);
+defineFunction(["brace", "brack"], "", {
+ infix: true,
+ createAtom: (options) => new GenfracAtom(argAtoms(options.args[0]), argAtoms(options.args[1]), __spreadProps(__spreadValues({}, options), {
+ hasBarLine: false,
+ leftDelim: options.command === "\\brace" ? "\\lbrace" : "\\lbrack",
+ rightDelim: options.command === "\\brace" ? "\\rbrace" : "\\rbrack"
+ })),
+ serialize: (atom, options) => joinLatex([
+ atom.aboveToLatex(options),
+ atom.command,
+ atom.belowToLatex(options)
+ ])
+});
+defineFunction(["over", "atop", "choose"], "", {
+ infix: true,
+ createAtom: (options) => {
+ let leftDelim = void 0;
+ let rightDelim = void 0;
+ const args = options.args;
+ if (options.command === "\\choose") {
+ leftDelim = "(";
+ rightDelim = ")";
+ }
+ return new GenfracAtom(argAtoms(args[0]), argAtoms(args[1]), __spreadProps(__spreadValues({}, options), {
+ hasBarLine: options.command === "\\over",
+ leftDelim,
+ rightDelim
+ }));
+ },
+ serialize: (atom, options) => joinLatex([
+ atom.aboveToLatex(options),
+ atom.command,
+ atom.belowToLatex(options)
+ ])
+});
+defineFunction(
+ ["overwithdelims", "atopwithdelims"],
+ "{numer:auto}{denom:auto}{left-delim:delim}{right-delim:delim}",
+ {
+ infix: true,
+ createAtom: (options) => {
+ var _a3, _b3;
+ const args = options.args;
+ return new GenfracAtom(argAtoms(args[0]), argAtoms(args[1]), __spreadProps(__spreadValues({}, options), {
+ leftDelim: (_a3 = args[2]) != null ? _a3 : ".",
+ rightDelim: (_b3 = args[3]) != null ? _b3 : ".",
+ hasBarLine: false
+ }));
+ },
+ serialize: (atom, options) => `${atom.aboveToLatex(options)} ${atom.command}${atom.leftDelim}${atom.rightDelim}${atom.belowToLatex(options)}`
+ }
+);
+defineFunction("pdiff", "{numerator}{denominator}", {
+ ifMode: "math",
+ createAtom: (options) => new GenfracAtom(argAtoms(options.args[0]), argAtoms(options.args[1]), __spreadProps(__spreadValues({}, options), {
+ hasBarLine: true,
+ numerPrefix: "\u2202",
+ denomPrefix: "\u2202"
+ }))
+});
+defineFunction(
+ [
+ "sum",
+ "prod",
+ "bigcup",
+ "bigcap",
+ "coprod",
+ "bigvee",
+ "bigwedge",
+ "biguplus",
+ "bigotimes",
+ "bigoplus",
+ "bigodot",
+ "bigsqcup",
+ "intop"
+ ],
+ "",
+ {
+ ifMode: "math",
+ createAtom: (options) => new ExtensibleSymbolAtom(
+ {
+ coprod: "\u2210",
+ bigvee: "\u22C1",
+ bigwedge: "\u22C0",
+ biguplus: "\u2A04",
+ bigcap: "\u22C2",
+ bigcup: "\u22C3",
+ intop: "\u222B",
+ prod: "\u220F",
+ sum: "\u2211",
+ bigotimes: "\u2A02",
+ bigoplus: "\u2A01",
+ bigodot: "\u2A00",
+ bigsqcup: "\u2A06",
+ smallint: "\u222B"
+ }[options.command.slice(1)],
+ __spreadProps(__spreadValues({}, options), {
+ limits: "auto",
+ variant: "main"
+ })
+ )
+ }
+);
+defineFunction("smallint", "", {
+ ifMode: "math",
+ createAtom: (options) => new OperatorAtom("\u222B", __spreadProps(__spreadValues({}, options), {
+ limits: "adjacent",
+ variant: "main"
+ }))
+});
+var EXTENSIBLE_SYMBOLS = {
+ int: "\u222B",
+ iint: "\u222C",
+ iiint: "\u222D",
+ oint: "\u222E",
+ oiint: "\u222F",
+ oiiint: "\u2230",
+ intclockwise: "\u2231",
+ varointclockwise: "\u2232",
+ ointctrclockwise: "\u2233",
+ intctrclockwise: "\u2A11",
+ sqcup: "\u2294",
+ sqcap: "\u2293",
+ uplus: "\u228E",
+ wr: "\u2240",
+ amalg: "\u2A3F",
+ Cap: "\u22D2",
+ Cup: "\u22D3",
+ doublecap: "\u22D2",
+ doublecup: "\u22D3"
+};
+defineFunction(Object.keys(EXTENSIBLE_SYMBOLS), "", {
+ ifMode: "math",
+ createAtom: (options) => {
+ const command = options.command;
+ const symbol = EXTENSIBLE_SYMBOLS[command.slice(1)];
+ return new ExtensibleSymbolAtom(symbol, __spreadProps(__spreadValues({}, options), {
+ limits: "adjacent",
+ variant: { "\u22D2": "ams", "\u22D3": "ams" }[symbol]
+ }));
+ }
+});
+defineFunction(["Re", "Im"], "", {
+ ifMode: "math",
+ createAtom: (options) => new OperatorAtom(
+ { "\\Re": "\u211C", "\\Im": "\u2111" }[options.command],
+ __spreadProps(__spreadValues({}, options), {
+ limits: "adjacent",
+ isFunction: true,
+ variant: "fraktur"
+ })
+ )
+});
+defineFunction("middle", "{:delim}", {
+ ifMode: "math",
+ createAtom: (options) => {
+ var _a3;
+ return new MiddleDelimAtom(__spreadProps(__spreadValues({}, options), {
+ delim: (_a3 = options.args[0]) != null ? _a3 : "|",
+ size: 1
+ }));
+ }
+});
+defineFunction("the", "{:value}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), {
+ captureSelection: true,
+ verbatimLatex: null
+ // disable verbatim LaTeX
+ })),
+ render: (atom, parent) => {
+ var _a3;
+ const ctx = new Context({ parent }, atom.style);
+ let classes = "";
+ if (atom.isSelected)
+ classes += " ML__selected";
+ const arg = ctx.evaluate(atom.args[0]);
+ return new Box(
+ ((_a3 = serializeLatexValue(arg)) != null ? _a3 : "").split("").map(
+ (x) => new Box(x, {
+ type: "ord",
+ classes,
+ mode: atom.mode,
+ isSelected: atom.isSelected,
+ style: __spreadValues({ variant: "main" }, atom.style)
+ })
+ ),
+ {
+ type: "lift",
+ style: atom.style,
+ caret: atom.caret,
+ isSelected: atom.isSelected,
+ classes
+ }
+ ).wrap(ctx);
+ },
+ serialize: (atom) => {
+ var _a3;
+ return `\\the${(_a3 = serializeLatexValue(atom.args[0])) != null ? _a3 : "\\relax"}`;
+ }
+});
+
+// src/latex-commands/styling.ts
+defineFunction("mathtip", "{:auto}{:math}", {
+ createAtom: (options) => new TooltipAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ tooltip: argAtoms(options.args[1]),
+ content: "math"
+ })),
+ serialize: (atom, options) => options.skipStyles ? atom.bodyToLatex(options) : `\\texttip{${atom.bodyToLatex(options)}}{${Atom.serialize(
+ [atom.tooltip],
+ __spreadProps(__spreadValues({}, options), {
+ defaultMode: "math"
+ })
+ )}}`
+});
+defineFunction("texttip", "{:auto}{:text}", {
+ createAtom: (options) => new TooltipAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ tooltip: argAtoms(options.args[1]),
+ content: "text"
+ })),
+ serialize: (atom, options) => options.skipStyles ? atom.bodyToLatex(options) : `\\texttip{${atom.bodyToLatex(options)}}{${Atom.serialize(
+ [atom.tooltip],
+ __spreadProps(__spreadValues({}, options), {
+ defaultMode: "text"
+ })
+ )}}`
+});
+defineFunction("error", "{:math}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[0]) })),
+ serialize: (atom, options) => `\\error{${atom.bodyToLatex(options)}}`,
+ render: (atom, context) => atom.createBox(context, { classes: "ML__error" })
+});
+defineFunction("ensuremath", "{:math}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[0]) })),
+ serialize: (atom, options) => `${atom.command}{${atom.bodyToLatex(__spreadProps(__spreadValues({}, options), { defaultMode: "math" }))}}`
+});
+defineFunction("color", "{:value}", {
+ applyStyle: (_name, args, context) => {
+ var _a3, _b3;
+ return {
+ verbatimColor: (_a3 = serializeLatexValue(args[0])) != null ? _a3 : void 0,
+ color: context.toColor((_b3 = args[0]) != null ? _b3 : { string: "red" })
+ };
+ }
+});
+defineFunction("textcolor", "{:value}{content:auto*}", {
+ applyStyle: (_name, args, context) => {
+ var _a3, _b3;
+ return {
+ verbatimColor: (_a3 = serializeLatexValue(args[0])) != null ? _a3 : void 0,
+ color: context.toColor((_b3 = args[0]) != null ? _b3 : { string: "red" })
+ };
+ }
+});
+defineFunction("boxed", "{content:math}", {
+ createAtom: (options) => new BoxAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ framecolor: { string: "black" }
+ }))
+});
+defineFunction("colorbox", "{:value}{:text*}", {
+ applyStyle: (_name, args, context) => {
+ var _a3, _b3;
+ return {
+ verbatimBackgroundColor: (_a3 = serializeLatexValue(args[0])) != null ? _a3 : void 0,
+ backgroundColor: context.toBackgroundColor(
+ (_b3 = args[0]) != null ? _b3 : { string: "yellow" }
+ )
+ };
+ }
+});
+defineFunction(
+ "fcolorbox",
+ "{frame-color:value}{background-color:value}{content:text}",
+ {
+ applyMode: "text",
+ createAtom: (options) => {
+ var _a3, _b3;
+ return new BoxAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[2]),
+ framecolor: (_a3 = options.args[0]) != null ? _a3 : { string: "blue" },
+ backgroundcolor: (_b3 = options.args[1]) != null ? _b3 : { string: "yellow" }
+ }));
+ },
+ serialize: (atom, options) => {
+ var _a3, _b3;
+ return options.skipStyles ? atom.bodyToLatex(__spreadProps(__spreadValues({}, options), { defaultMode: "text" })) : latexCommand(
+ atom.command,
+ (_a3 = serializeLatexValue(atom.framecolor)) != null ? _a3 : "",
+ (_b3 = serializeLatexValue(atom.backgroundcolor)) != null ? _b3 : "",
+ atom.bodyToLatex(__spreadProps(__spreadValues({}, options), { defaultMode: "text" }))
+ );
+ }
+ }
+);
+defineFunction("bbox", "[:bbox]{body:auto}", {
+ createAtom: (options) => {
+ var _a3;
+ const arg = options.args[0];
+ const body = argAtoms(options.args[1]);
+ if (!arg)
+ return new BoxAtom(__spreadProps(__spreadValues({}, options), { body }));
+ return new BoxAtom(__spreadProps(__spreadValues({}, options), {
+ body,
+ padding: arg.padding,
+ border: arg.border,
+ backgroundcolor: (_a3 = arg.backgroundcolor) != null ? _a3 : void 0
+ }));
+ },
+ serialize: (atom, options) => {
+ var _a3, _b3;
+ if (options.skipStyles)
+ return atom.bodyToLatex(options);
+ let result = atom.command;
+ if (Number.isFinite(atom.padding) || atom.border !== void 0 || atom.backgroundcolor !== void 0) {
+ const bboxParameters = [];
+ if (atom.padding)
+ bboxParameters.push((_a3 = serializeLatexValue(atom.padding)) != null ? _a3 : "");
+ if (atom.border)
+ bboxParameters.push(`border: ${atom.border}`);
+ if (atom.backgroundcolor)
+ bboxParameters.push((_b3 = serializeLatexValue(atom.backgroundcolor)) != null ? _b3 : "");
+ result += `[${bboxParameters.join(",")}]`;
+ }
+ return latexCommand(result, atom.bodyToLatex(options));
+ }
+});
+defineFunction(
+ ["displaystyle", "textstyle", "scriptstyle", "scriptscriptstyle"],
+ "{:rest}",
+ {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[0]) })),
+ render: (atom, context) => {
+ const ctx = new Context(
+ { parent: context, mathstyle: atom.command.slice(1) },
+ atom.style
+ );
+ const box = Atom.createBox(ctx, atom.body, { type: "lift" });
+ if (atom.caret)
+ box.caret = atom.caret;
+ return atom.bind(context, box);
+ },
+ serialize: (atom, options) => options.skipStyles ? atom.bodyToLatex(options) : `{${joinLatex([atom.command, atom.bodyToLatex(options)])}}`
+ }
+);
+defineFunction(
+ [
+ "tiny",
+ "scriptsize",
+ "footnotesize",
+ "small",
+ "normalsize",
+ "large",
+ "Large",
+ "LARGE",
+ "huge",
+ "Huge"
+ ],
+ "",
+ {
+ // TeX behaves very inconsistently when sizing commands are applied
+ // to math mode. We allow sizing commands to be applied in both math and
+ // text mode
+ applyStyle: (name) => {
+ return {
+ fontSize: {
+ "\\tiny": 1,
+ "\\scriptsize": 2,
+ // Not to be confused with \scriptstyle
+ "\\footnotesize": 3,
+ "\\small": 4,
+ "\\normalsize": 5,
+ "\\large": 6,
+ "\\Large": 7,
+ "\\LARGE": 8,
+ "\\huge": 9,
+ "\\Huge": 10
+ }[name]
+ };
+ }
+ }
+);
+defineFunction("fontseries", "{:string}", {
+ ifMode: "text",
+ applyStyle: (_name, args) => {
+ var _a3;
+ return { fontSeries: (_a3 = args[0]) != null ? _a3 : "auto" };
+ }
+});
+defineFunction("fontshape", "{:string}", {
+ ifMode: "text",
+ applyStyle: (_name, args) => {
+ var _a3;
+ return { fontShape: (_a3 = args[0]) != null ? _a3 : "auto" };
+ }
+});
+defineFunction("fontfamily", "{:string}", {
+ ifMode: "text",
+ applyStyle: (_name, args) => {
+ var _a3;
+ return { fontFamily: (_a3 = args[0]) != null ? _a3 : "roman" };
+ }
+});
+defineFunction("selectfont", "", {
+ ifMode: "text",
+ applyStyle: () => ({})
+});
+defineFunction("bf", "{:rest}", {
+ applyStyle: () => ({ fontSeries: "b", fontShape: "n", fontFamily: "roman" })
+});
+defineFunction(["boldsymbol", "bm"], "{:math}", {
+ applyMode: "math",
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[0]) })),
+ serialize: (atom, options) => `${atom.command}{${atom.bodyToLatex(options)}}`,
+ render: (atom, context) => atom.createBox(context, { classes: "ML__boldsymbol" })
+});
+defineFunction("bold", "{:math*}", {
+ applyMode: "math",
+ applyStyle: () => ({ variantStyle: "bold" })
+});
+defineFunction("bfseries", "{:rest}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontSeries: "b" })
+});
+defineFunction("mdseries", "{:rest}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontSeries: "m" })
+});
+defineFunction("upshape", "{:rest}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontShape: "n" })
+});
+defineFunction("slshape", "{:rest}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontShape: "sl" })
+});
+defineFunction("scshape", "{:rest}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontShape: "sc" })
+});
+defineFunction("textbf", "{:text*}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontSeries: "b" })
+});
+defineFunction("textmd", "{:text*}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontSeries: "m" })
+});
+defineFunction("textup", "{:text*}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontShape: "n" })
+});
+defineFunction("textnormal", "{:text*}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontShape: "n", fontSeries: "m" })
+});
+defineFunction("textsl", "{:text*}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontShape: "sl" })
+});
+defineFunction("textit", "{:text*}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontShape: "it" })
+});
+defineFunction("textsc", "{:text*}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontShape: "sc" })
+});
+defineFunction("textrm", "{:text*}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontFamily: "roman" })
+});
+defineFunction("textsf", "{:text*}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontFamily: "sans-serif" })
+});
+defineFunction("texttt", "{:text*}", {
+ applyMode: "text",
+ applyStyle: () => ({ fontFamily: "monospace" })
+});
+defineFunction("mathbf", "{:math*}", {
+ applyMode: "math",
+ applyStyle: () => ({ variant: "normal", variantStyle: "bold" })
+});
+defineFunction("mathit", "{:math*}", {
+ applyMode: "math",
+ applyStyle: () => ({ variant: "main", variantStyle: "italic" })
+});
+defineFunction("mathnormal", "{:math*}", {
+ applyMode: "math",
+ applyStyle: () => ({ variant: "normal", variantStyle: "italic" })
+});
+defineFunction("mathbfit", "{:math*}", {
+ applyMode: "math",
+ applyStyle: () => ({ variant: "main", variantStyle: "bolditalic" })
+});
+defineFunction("mathrm", "{:math*}", {
+ applyMode: "math",
+ applyStyle: () => ({ variant: "normal", variantStyle: "up" })
+});
+defineFunction("mathsf", "{:math*}", {
+ applyMode: "math",
+ applyStyle: () => ({ variant: "sans-serif", variantStyle: "up" })
+});
+defineFunction("mathtt", "{:math*}", {
+ applyMode: "math",
+ applyStyle: () => ({ variant: "monospace", variantStyle: "up" })
+});
+defineFunction("it", "{:rest}", {
+ applyStyle: () => ({
+ fontSeries: "m",
+ fontShape: "it",
+ fontFamily: "roman",
+ variantStyle: "italic"
+ // For math mode
+ })
+});
+defineFunction("rmfamily", "", {
+ applyStyle: () => ({ fontFamily: "roman" })
+});
+defineFunction("sffamily", "", {
+ applyStyle: () => ({ fontFamily: "sans-serif" })
+});
+defineFunction("ttfamily", "", {
+ applyStyle: () => ({ fontFamily: "monospace" })
+});
+defineFunction(["Bbb", "mathbb"], "{:math*}", {
+ applyStyle: () => ({ variant: "double-struck", variantStyle: "up" })
+});
+defineFunction(["frak", "mathfrak"], "{:math*}", {
+ applyStyle: () => ({ variant: "fraktur", variantStyle: "up" })
+});
+defineFunction("mathcal", "{:math*}", {
+ applyStyle: () => ({ variant: "calligraphic", variantStyle: "up" })
+});
+defineFunction("mathscr", "{:math*}", {
+ applyStyle: () => ({ variant: "script", variantStyle: "up" })
+});
+defineFunction("mbox", "{:text}", {
+ ifMode: "math",
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), {
+ type: "mord",
+ body: argAtoms(options.args[0]),
+ mode: "math"
+ })),
+ serialize: (atom, options) => latexCommand(
+ "\\mbox",
+ atom.bodyToLatex(__spreadProps(__spreadValues({}, options), { defaultMode: "text" }))
+ )
+});
+defineFunction("text", "{:text}", {
+ ifMode: "math",
+ applyMode: "text"
+});
+defineFunction(["class", "htmlClass"], "{name:string}{content:auto}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[1]) })),
+ serialize: (atom, options) => {
+ if (!atom.args[0] || options.skipStyles)
+ return atom.bodyToLatex(options);
+ return `${atom.command}{${atom.args[0]}}{${atom.bodyToLatex(
+ options
+ )}}`;
+ },
+ render: (atom, context) => {
+ var _a3;
+ return atom.createBox(context, { classes: (_a3 = atom.args[0]) != null ? _a3 : "" });
+ }
+});
+defineFunction(["cssId", "htmlId"], "{id:string}{content:auto}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[1]) })),
+ serialize: (atom, options) => {
+ var _a3;
+ if (!((_a3 = atom.args) == null ? void 0 : _a3[0]) || options.skipStyles)
+ return atom.bodyToLatex(options);
+ return `${atom.command}{${atom.args[0]}}{${atom.bodyToLatex(
+ options
+ )}}`;
+ },
+ render: (atom, context) => {
+ var _a3;
+ const box = atom.createBox(context);
+ box.cssId = (_a3 = atom.args[0]) != null ? _a3 : "";
+ return box;
+ }
+});
+defineFunction("htmlData", "{data:string}{content:auto}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[1]) })),
+ serialize: (atom, options) => {
+ var _a3;
+ if (!((_a3 = atom.args) == null ? void 0 : _a3[0]) || options.skipStyles)
+ return atom.bodyToLatex(options);
+ return `\\htmlData{${atom.args[0]}}{${atom.bodyToLatex(
+ options
+ )}}`;
+ },
+ render: (atom, context) => {
+ var _a3;
+ const box = atom.createBox(context);
+ box.htmlData = (_a3 = atom.args[0]) != null ? _a3 : "";
+ return box;
+ }
+});
+defineFunction(["style", "htmlStyle"], "{data:string}{content:auto}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[1]) })),
+ serialize: (atom, options) => {
+ var _a3;
+ if (!((_a3 = atom.args) == null ? void 0 : _a3[0]) || options.skipStyles)
+ return atom.bodyToLatex(options);
+ return `${atom.command}{${atom.args[0]}}{${atom.bodyToLatex(
+ options
+ )}}`;
+ },
+ render: (atom, context) => {
+ var _a3;
+ const box = atom.createBox(context);
+ box.htmlStyle = (_a3 = atom.args[0]) != null ? _a3 : "";
+ return box;
+ }
+});
+defineFunction("em", "{:rest}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[0]) })),
+ serialize: (atom, options) => options.skipStyles ? atom.bodyToLatex(options) : `{\\em ${atom.bodyToLatex(options)}}`,
+ render: (atom, context) => atom.createBox(context, { classes: "ML__emph", boxType: "lift" })
+});
+defineFunction("emph", "{:auto}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[1]) })),
+ serialize: (atom, options) => options.skipStyles ? atom.bodyToLatex(options) : `\\emph{${atom.bodyToLatex(options)}}`,
+ render: (atom, context) => atom.createBox(context, { classes: "ML__emph", boxType: "lift" })
+});
+var DELIMITER_SIZES = {
+ "\\bigl": { mclass: "mopen", size: 1 },
+ "\\Bigl": { mclass: "mopen", size: 2 },
+ "\\biggl": { mclass: "mopen", size: 3 },
+ "\\Biggl": { mclass: "mopen", size: 4 },
+ "\\bigr": { mclass: "mclose", size: 1 },
+ "\\Bigr": { mclass: "mclose", size: 2 },
+ "\\biggr": { mclass: "mclose", size: 3 },
+ "\\Biggr": { mclass: "mclose", size: 4 },
+ "\\bigm": { mclass: "mrel", size: 1 },
+ "\\Bigm": { mclass: "mrel", size: 2 },
+ "\\biggm": { mclass: "mrel", size: 3 },
+ "\\Biggm": { mclass: "mrel", size: 4 },
+ "\\big": { mclass: "mord", size: 1 },
+ "\\Big": { mclass: "mord", size: 2 },
+ "\\bigg": { mclass: "mord", size: 3 },
+ "\\Bigg": { mclass: "mord", size: 4 }
+};
+defineFunction(
+ [
+ "bigl",
+ "Bigl",
+ "biggl",
+ "Biggl",
+ "bigr",
+ "Bigr",
+ "biggr",
+ "Biggr",
+ "bigm",
+ "Bigm",
+ "biggm",
+ "Biggm",
+ "big",
+ "Big",
+ "bigg",
+ "Bigg"
+ ],
+ "{:delim}",
+ {
+ createAtom: (options) => {
+ var _a3;
+ return new SizedDelimAtom(__spreadProps(__spreadValues({}, options), {
+ delim: (_a3 = options.args[0]) != null ? _a3 : ".",
+ size: DELIMITER_SIZES[options.command].size,
+ delimType: DELIMITER_SIZES[options.command].mclass
+ }));
+ }
+ }
+);
+defineFunction(
+ [
+ "hspace",
+ "hspace*"
+ // \hspace* inserts a non-breakable space, but since we don't line break...
+ // it's the same as \hspace.
+ ],
+ "{width:value}",
+ {
+ createAtom: (options) => {
+ var _a3;
+ return new SpacingAtom(__spreadProps(__spreadValues({}, options), {
+ width: (_a3 = options.args[0]) != null ? _a3 : { dimension: 0 }
+ }));
+ }
+ }
+);
+defineFunction(["mkern", "kern", "mskip", "hskip", "mspace"], "{width:value}", {
+ createAtom: (options) => {
+ var _a3;
+ return new SpacingAtom(__spreadProps(__spreadValues({}, options), {
+ width: (_a3 = options.args[0]) != null ? _a3 : { dimension: 0 }
+ }));
+ }
+});
+defineFunction("mathchoice", "{:math}{:math}{:math}{:math}", {
+ // display, text, script and scriptscript
+ createAtom: (options) => new Atom(options),
+ render: (atom, context) => {
+ let i = 0;
+ const d = context.mathstyle.id;
+ if (d === T || d === Tc)
+ i = 1;
+ if (d === S || d === Sc)
+ i = 2;
+ if (d === SS || d === SSc)
+ i = 3;
+ const body = argAtoms(atom.args[i]);
+ return Atom.createBox(context, body);
+ },
+ serialize: (atom, options) => `\\mathchoice{${Atom.serialize(
+ atom.args[0],
+ options
+ )}}{${Atom.serialize(atom.args[1], options)}}{${Atom.serialize(
+ atom.args[2],
+ options
+ )}}{${Atom.serialize(atom.args[3], options)}}`
+});
+defineFunction("mathop", "{:auto}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), {
+ type: "mop",
+ body: argAtoms(options.args[0]),
+ limits: "over-under",
+ isFunction: true,
+ captureSelection: true
+ })),
+ render: (atom, context) => {
+ var _a3;
+ let base = Atom.createBox(context, atom.body);
+ if (atom.superscript || atom.subscript) {
+ const limits = (_a3 = atom.subsupPlacement) != null ? _a3 : "auto";
+ base = limits === "over-under" || limits === "auto" && context.isDisplayStyle ? atom.attachLimits(context, { base }) : atom.attachSupsub(context, { base });
+ }
+ return new Box(atom.bind(context, base), {
+ type: "op",
+ isSelected: atom.isSelected,
+ classes: "op-group"
+ });
+ },
+ serialize: (atom, options) => {
+ const result = [latexCommand(atom.command, atom.bodyToLatex(options))];
+ if (atom.explicitSubsupPlacement) {
+ if (atom.subsupPlacement === "over-under")
+ result.push("\\limits");
+ if (atom.subsupPlacement === "adjacent")
+ result.push("\\nolimits");
+ if (atom.subsupPlacement === "auto")
+ result.push("\\displaylimits");
+ }
+ result.push(atom.supsubToLatex(options));
+ return joinLatex(result);
+ }
+});
+defineFunction(
+ [
+ "mathbin",
+ "mathrel",
+ "mathopen",
+ "mathclose",
+ "mathpunct",
+ "mathord",
+ "mathinner"
+ ],
+ "{:auto}",
+ {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), {
+ type: {
+ "\\mathbin": "mbin",
+ "\\mathrel": "mrel",
+ "\\mathopen": "mopen",
+ "\\mathclose": "mclose",
+ "\\mathpunct": "mpunct",
+ "\\mathord": "mord",
+ "\\mathinner": "minner"
+ }[options.command],
+ body: argAtoms(options.args[0])
+ }))
+ }
+);
+defineFunction(["operatorname", "operatorname*"], "{operator:math}", {
+ createAtom: (options) => {
+ const body = argAtoms(options.args[0]).map((x) => {
+ var _a3;
+ if (x.type !== "first") {
+ x.type = "mord";
+ x.value = (_a3 = { "\u2217": "*", "\u2212": "-" }[x.value]) != null ? _a3 : x.value;
+ x.isFunction = false;
+ if (!x.style.variant && !x.style.variantStyle) {
+ x.style.variant = "main";
+ x.style.variantStyle = "up";
+ }
+ }
+ return x;
+ });
+ return new Atom(__spreadProps(__spreadValues({}, options), {
+ type: "mop",
+ body,
+ isFunction: true,
+ limits: options.command === "\\operatorname" ? "adjacent" : "over-under"
+ }));
+ },
+ render: (atom, context) => {
+ var _a3;
+ let base = Atom.createBox(context, atom.body);
+ if (atom.superscript || atom.subscript) {
+ const limits = (_a3 = atom.subsupPlacement) != null ? _a3 : "auto";
+ base = limits === "over-under" || limits === "auto" && context.isDisplayStyle ? atom.attachLimits(context, { base }) : atom.attachSupsub(context, { base });
+ }
+ if (atom.caret)
+ base.caret = atom.caret;
+ return new Box(atom.bind(context, base), {
+ type: "op",
+ isSelected: atom.isSelected,
+ classes: "op-group"
+ });
+ },
+ serialize: (atom, options) => {
+ const result = [latexCommand(atom.command, atom.bodyToLatex(options))];
+ if (atom.explicitSubsupPlacement) {
+ if (atom.subsupPlacement === "over-under")
+ result.push("\\limits");
+ if (atom.subsupPlacement === "adjacent")
+ result.push("\\nolimits");
+ if (atom.subsupPlacement === "auto")
+ result.push("\\displaylimits");
+ }
+ result.push(atom.supsubToLatex(options));
+ return joinLatex(result);
+ }
+});
+defineFunction(["char", "unicode"], "{charcode:value}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { type: options.mode === "text" ? "text" : "mord" })),
+ serialize: (atom) => {
+ var _a3;
+ return `${atom.command}${serializeLatexValue(
+ (_a3 = atom.args[0]) != null ? _a3 : { number: 10067, base: "hexadecimal" }
+ )}`;
+ },
+ render: (atom, context) => {
+ let value = context.evaluate(atom.args[0]);
+ if (!value || !("number" in value))
+ value = { number: 10067, base: "hexadecimal" };
+ atom.value = String.fromCodePoint(value.number);
+ return atom.createBox(context);
+ }
+});
+defineFunction("rule", "[raise:value]{width:value}{thickness:value}", {
+ createAtom: (options) => new Atom(options),
+ render: (atom, context) => {
+ var _a3, _b3, _c2;
+ const ctx = new Context(
+ { parent: context, mathstyle: "textstyle" },
+ atom.style
+ );
+ const shift = ctx.toEm((_a3 = atom.args[0]) != null ? _a3 : { dimension: 0 });
+ const width = ctx.toEm((_b3 = atom.args[1]) != null ? _b3 : { dimension: 10 });
+ const height = ctx.toEm((_c2 = atom.args[2]) != null ? _c2 : { dimension: 10 });
+ const result = new Box(null, {
+ classes: "rule",
+ type: "ord"
+ });
+ result.width = width;
+ result.height = height + shift;
+ result.depth = -shift;
+ result.setStyle("border-right-width", width, "em");
+ result.setStyle("border-top-width", height, "em");
+ result.setStyle("border-color", atom.style.color);
+ result.setStyle("vertical-align", shift, "em");
+ if (atom.isSelected)
+ result.setStyle("opacity", "50%");
+ atom.bind(ctx, result);
+ if (atom.caret)
+ result.caret = atom.caret;
+ return result.wrap(context);
+ },
+ serialize: (atom) => `\\rule${atom.args[0] ? `[${serializeLatexValue(atom.args[0])}]` : ""}{${serializeLatexValue(atom.args[1])}}{${serializeLatexValue(
+ atom.args[2]
+ )}}`
+});
+defineFunction(["overline", "underline"], "{:auto}", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), { body: argAtoms(options.args[0]) })),
+ render: (atom, parentContext) => {
+ const position = atom.command.substring(1);
+ const context = new Context(
+ { parent: parentContext, mathstyle: "cramp" },
+ atom.style
+ );
+ const inner = Atom.createBox(context, atom.body);
+ if (!inner)
+ return null;
+ const ruleThickness = context.metrics.defaultRuleThickness / context.scalingFactor;
+ const line = new Box(null, { classes: position + "-line" });
+ line.height = ruleThickness;
+ line.maxFontSize = ruleThickness * 1.125 * context.scalingFactor;
+ let stack;
+ if (position === "overline") {
+ stack = new VBox({
+ shift: 0,
+ children: [
+ { box: inner },
+ 3 * ruleThickness,
+ { box: line },
+ ruleThickness
+ ]
+ });
+ } else {
+ stack = new VBox({
+ top: inner.height,
+ children: [
+ ruleThickness,
+ { box: line },
+ 3 * ruleThickness,
+ { box: inner }
+ ]
+ });
+ }
+ if (atom.caret)
+ stack.caret = atom.caret;
+ return new Box(stack, { classes: position, type: "ignore" });
+ }
+});
+defineFunction("overset", "{:auto}{base:auto}", {
+ createAtom: (options) => {
+ const body = argAtoms(options.args[1]);
+ return new OverunderAtom(__spreadProps(__spreadValues({}, options), {
+ above: argAtoms(options.args[0]),
+ body,
+ skipBoundary: false,
+ boxType: atomsBoxType(body)
+ }));
+ },
+ serialize: (atom, options) => latexCommand(
+ atom.command,
+ atom.aboveToLatex(options),
+ atom.bodyToLatex(options)
+ )
+});
+defineFunction("underset", "{:auto}{base:auto}", {
+ createAtom: (options) => {
+ const body = argAtoms(options.args[1]);
+ return new OverunderAtom(__spreadProps(__spreadValues({}, options), {
+ below: argAtoms(options.args[0]),
+ body,
+ skipBoundary: false,
+ boxType: atomsBoxType(body)
+ }));
+ },
+ serialize: (atom, options) => latexCommand(
+ atom.command,
+ atom.belowToLatex(options),
+ atom.bodyToLatex(options)
+ )
+});
+defineFunction("overunderset", "{above:auto}{below:auto}{base:auto}", {
+ createAtom: (options) => {
+ const body = argAtoms(options.args[2]);
+ return new OverunderAtom(__spreadProps(__spreadValues({}, options), {
+ above: argAtoms(options.args[0]),
+ below: argAtoms(options.args[1]),
+ body,
+ skipBoundary: false,
+ boxType: atomsBoxType(body)
+ }));
+ },
+ serialize: (atom, options) => latexCommand(
+ atom.command,
+ atom.belowToLatex(options),
+ atom.bodyToLatex(options)
+ )
+});
+defineFunction(
+ ["stackrel", "stackbin"],
+ "[below:auto]{above:auto}{base:auto}",
+ {
+ createAtom: (options) => new OverunderAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[2]),
+ above: argAtoms(options.args[1]),
+ below: argAtoms(options.args[0]),
+ skipBoundary: false,
+ boxType: options.command === "\\stackrel" ? "rel" : "bin"
+ })),
+ serialize: (atom, options) => latexCommand(
+ atom.command,
+ atom.aboveToLatex(options),
+ atom.bodyToLatex(options)
+ )
+ }
+);
+defineFunction("smash", "[:string]{:auto}", {
+ createAtom: (options) => {
+ var _a3, _b3, _c2, _d2;
+ return new PhantomAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[1]),
+ smashHeight: (_b3 = (_a3 = options.args[0]) == null ? void 0 : _a3.includes("t")) != null ? _b3 : true,
+ smashDepth: (_d2 = (_c2 = options.args[0]) == null ? void 0 : _c2.includes("b")) != null ? _d2 : true
+ }));
+ }
+});
+defineFunction(["vphantom"], "{:auto}", {
+ createAtom: (options) => new PhantomAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ isInvisible: true,
+ smashWidth: true
+ }))
+});
+defineFunction(["hphantom"], "{:auto}", {
+ createAtom: (options) => new PhantomAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ isInvisible: true,
+ smashHeight: true,
+ smashDepth: true
+ }))
+});
+defineFunction(["phantom"], "{:auto}", {
+ createAtom: (options) => new PhantomAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ isInvisible: true
+ }))
+});
+defineFunction("not", "{:math}", {
+ createAtom: (options) => {
+ const body = argAtoms(options.args[0]);
+ if (body.length === 0)
+ return new Atom(__spreadProps(__spreadValues({}, options), { type: "mrel", value: "\uE020" }));
+ return new Atom(__spreadProps(__spreadValues({}, options), {
+ body: [
+ new OverlapAtom(__spreadProps(__spreadValues({}, options), { body: "\uE020", align: "right" })),
+ ...body
+ ],
+ captureSelection: true
+ }));
+ },
+ serialize: (atom, options) => {
+ const arg = atom.args[0];
+ const isGroup = arg && typeof arg === "object" && "group" in arg;
+ if (atom.value !== "\uE020") {
+ return isGroup ? `\\not{${Atom.serialize(arg.group, options)}}` : `\\not${Atom.serialize(arg, options)}`;
+ }
+ return isGroup ? `\\not{}` : `\\not`;
+ },
+ render: (atom, context) => {
+ if (atom.value)
+ return atom.createBox(context);
+ const isGroup = atom.args[0] && typeof atom.args[0] === "object" && "group" in atom.args[0];
+ const type = isGroup ? "ord" : atomsBoxType(argAtoms(atom.args[0]));
+ const box = Atom.createBox(context, atom.body, { type });
+ if (atom.caret)
+ box.caret = atom.caret;
+ return atom.bind(context, box);
+ }
+});
+defineFunction(["ne", "neq"], "", {
+ createAtom: (options) => new Atom(__spreadProps(__spreadValues({}, options), {
+ type: "mrel",
+ body: [
+ new OverlapAtom(__spreadProps(__spreadValues({}, options), {
+ body: "\uE020",
+ align: "right",
+ boxType: "rel"
+ })),
+ new Atom(__spreadProps(__spreadValues({}, options), { value: "=" }))
+ ],
+ captureSelection: true
+ })),
+ serialize: (atom) => atom.command
+});
+defineFunction("rlap", "{:auto}", {
+ createAtom: (options) => new OverlapAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ align: "right"
+ }))
+});
+defineFunction("llap", "{:auto}", {
+ createAtom: (options) => new OverlapAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ align: "left"
+ }))
+});
+defineFunction("mathrlap", "{:math}", {
+ createAtom: (options) => new OverlapAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ align: "left"
+ }))
+});
+defineFunction("mathllap", "{:math}", {
+ createAtom: (options) => new OverlapAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[0]),
+ align: "left"
+ }))
+});
+defineFunction("raisebox", "{:value}{:text}", {
+ createAtom: (options) => {
+ var _a3;
+ return new BoxAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[1]),
+ padding: { dimension: 0 },
+ offset: (_a3 = options.args[0]) != null ? _a3 : { dimension: 0 }
+ }));
+ },
+ serialize: (atom, options) => {
+ var _a3;
+ return latexCommand(
+ "\\raisebox",
+ (_a3 = serializeLatexValue(atom.offset)) != null ? _a3 : "0pt",
+ atom.bodyToLatex(options)
+ );
+ }
+});
+defineFunction("raise", "{:value}{:auto}", {
+ createAtom: (options) => {
+ var _a3;
+ return new BoxAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[1]),
+ padding: { dimension: 0 },
+ offset: (_a3 = options.args[0]) != null ? _a3 : { dimension: 0 }
+ }));
+ },
+ serialize: (atom, options) => {
+ var _a3;
+ return latexCommand(
+ "\\raise",
+ (_a3 = serializeLatexValue(atom.offset)) != null ? _a3 : "0pt",
+ atom.bodyToLatex(options)
+ );
+ }
+});
+defineFunction("lower", "{:value}{:auto}", {
+ createAtom: (options) => {
+ var _a3;
+ return new BoxAtom(__spreadProps(__spreadValues({}, options), {
+ body: argAtoms(options.args[1]),
+ padding: { dimension: 0 },
+ offset: (_a3 = multiplyLatexValue(options.args[0], -1)) != null ? _a3 : { dimension: 0 }
+ }));
+ },
+ serialize: (atom, options) => {
+ var _a3, _b3;
+ return latexCommand(
+ "\\lower",
+ (_b3 = serializeLatexValue(
+ multiplyLatexValue((_a3 = atom.offset) != null ? _a3 : { dimension: 0 }, -1)
+ )) != null ? _b3 : "0pt",
+ atom.bodyToLatex(options)
+ );
+ }
+});
+
+// src/latex-commands/symbols.ts
+defineSymbols("0123456789/@.?!");
+defineSymbolRange(65, 90);
+defineSymbolRange(97, 122);
+defineSymbols([
+ ["\\forall", 8704],
+ ["\\exists", 8707],
+ ["\\nexists", 8708, "mord", "ams"],
+ ["\\mid", 8739, "mrel"],
+ ["\\top", 8868],
+ ["\\bot", 8869]
+]);
+defineSymbols([
+ ["\\#", 35],
+ ["\\&", 38],
+ ["\\parallelogram", 9649],
+ ["\\spadesuit", 9824],
+ ["\\heartsuit", 9825],
+ ["\\diamondsuit", 9826],
+ ["\\clubsuit", 9827],
+ ["\\flat", 9837],
+ ["\\natural", 9838],
+ ["\\sharp", 9839]
+]);
+defineSymbols([
+ ["\\backslash", 92],
+ ["\\nabla", 8711],
+ ["\\partial", 8706],
+ ["\\ell", 8467],
+ ["\\hbar", 8463],
+ ["\\Q", 81, "mord", "double-struck"],
+ // NOTE: Check if standard LaTeX
+ ["\\C", 67, "mord", "double-struck"],
+ // NOTE: Check if standard LaTeX
+ ["\\P", 80, "mord", "double-struck"],
+ // NOTE: Check if standard LaTeX
+ ["\\pounds", 163],
+ ["\\euro", 8364]
+ // NOTE: not TeX built-in, but textcomp package
+ // TODO Koppa, Stigma, Sampi
+]);
+defineSymbols(
+ [
+ ["\\rightarrow", 8594],
+ ["\\to", 8594],
+ ["\\leftarrow", 8592],
+ ["\\gets", 8592],
+ ["\\Rightarrow", 8658],
+ ["\\Leftarrow", 8656],
+ ["\\longrightarrow", 10230],
+ ["\\longleftarrow", 10229],
+ ["\\Longrightarrow", 10233],
+ ["\\implies", 10233],
+ ["\\Longleftarrow", 10232],
+ ["\\impliedby", 10232],
+ ["\\longleftrightarrow", 10231],
+ ["\\biconditional", 10231],
+ ["\\Longleftrightarrow", 10234],
+ ["\\mapsto", 8614],
+ ["\\longmapsto", 10236],
+ ["\\uparrow", 8593],
+ ["\\downarrow", 8595],
+ ["\\Uparrow", 8657],
+ ["\\Downarrow", 8659],
+ ["\\updownarrow", 8597],
+ ["\\Updownarrow", 8661],
+ ["\\hookrightarrow", 8618],
+ ["\\hookleftarrow", 8617],
+ ["\\rightharpoonup", 8640],
+ ["\\leftharpoonup", 8636],
+ ["\\rightharpoondown", 8641],
+ ["\\leftharpoondown", 8637],
+ ["\\searrow", 8600],
+ ["\\nearrow", 8599],
+ ["\\swarrow", 8601],
+ ["\\nwarrow", 8598],
+ ["\\originalof", 8886],
+ ["\\laplace", 8886],
+ ["\\imageof", 8887],
+ ["\\Laplace", 8887]
+ ],
+ "mrel"
+);
+defineSymbols([
+ ["\\mapsfrom", 8612, "mrel"],
+ ["\\Mapsfrom", 10502, "mrel"],
+ ["\\MapsTo", 10503, "mrel"],
+ ["\\Yup", 8516, "mord"],
+ ["\\lightning", 8623, "mrel"],
+ ["\\leftarrowtriangle", 8701, "mrel"],
+ ["\\rightarrowtriangle", 8702, "mrel"],
+ ["\\leftrightarrowtriangle", 8703, "mrel"],
+ ["\\boxdot", 8865, "mbin"],
+ ["\\bigtriangleup", 9651, "mbin"],
+ ["\\bigtriangledown", 9661, "mbin"],
+ ["\\boxbar", 9707, "mbin"],
+ ["\\Lbag", 10181, "mopen"],
+ ["\\Rbag", 10182, "mclose"],
+ ["\\llbracket", 10214, "mopen"],
+ ["\\rrbracket", 10215, "mclose"],
+ ["\\longmapsfrom", 10235, "mrel"],
+ ["\\Longmapsfrom", 10237, "mrel"],
+ ["\\Longmapsto", 10238, "mrel"],
+ ["\\boxslash", 10692, "mbin"],
+ ["\\boxbslash", 10693, "mbin"],
+ ["\\boxast", 10694, "mbin"],
+ ["\\boxcircle", 10695, "mbin"],
+ ["\\boxbox", 10696, "mbin"],
+ ["\\fatsemi", 10783, "mop"],
+ ["\\leftslice", 10918, "mrel"],
+ ["\\rightslice", 10919, "mrel"],
+ ["\\interleave", 10996, "mbin"],
+ ["\\biginterleave", 11004, "mop"],
+ ["\\sslash", 11005, "mbin"],
+ ["\\talloblong", 11006, "mbin"]
+]);
+defineSymbols([
+ // 'ams' Delimiters
+ ["\\lbrace", 123, "mopen"],
+ ["\\rbrace", 125, "mclose"],
+ ["\\lparen", 40, "mopen"],
+ // mathtools.sty
+ ["\\rparen", 41, "mclose"],
+ // mathtools.sty
+ ["\\langle", 10216, "mopen"],
+ ["\\rangle", 10217, "mclose"],
+ ["\\lfloor", 8970, "mopen"],
+ ["\\rfloor", 8971, "mclose"],
+ ["\\lceil", 8968, "mopen"],
+ ["\\rceil", 8969, "mclose"],
+ ["\\vert", 8739],
+ ["\\lvert", 8739, "mopen"],
+ ["\\rvert", 8739, "mclose"],
+ ["\\|", 8741],
+ ["\\Vert", 8741],
+ ["\\mVert", 8741],
+ ["\\lVert", 8741, "mopen"],
+ ["\\rVert", 8741, "mclose"],
+ ["\\lbrack", 91, "mopen"],
+ ["\\rbrack", 93, "mclose"],
+ ["\\{", 123, "mopen"],
+ ["\\}", 125, "mclose"],
+ ["(", 40, "mopen"],
+ [")", 41, "mclose"],
+ ["[", 91, "mopen"],
+ ["]", 93, "mclose"],
+ ["\\ulcorner", 9484, "mopen", "ams"],
+ ["\\urcorner", 9488, "mclose", "ams"],
+ ["\\llcorner", 9492, "mopen", "ams"],
+ ["\\lrcorner", 9496, "mclose", "ams"],
+ // Large Delimiters
+ ["\\lgroup", 10222, "mopen"],
+ ["\\rgroup", 10223, "mclose"],
+ ["\\lmoustache", 9136, "mopen"],
+ ["\\rmoustache", 9137, "mclose"]
+ // defineSymbol('\\ne', 0x2260, 'mrel'],
+ // defineSymbol('\\neq', 0x2260, 'mrel'],
+ // defineSymbol( '\\longequal', 0xF7D9, 'mrel', MAIN], // NOTE: Not TeX
+]);
+defineSymbols(
+ [
+ // 'ams' arrows
+ ["\\dashrightarrow", 8674],
+ ["\\dashleftarrow", 8672],
+ ["\\Rrightarrow", 8667],
+ ["\\Lleftarrow", 8666],
+ ["\\leftrightarrows", 8646],
+ ["\\rightleftarrows", 8644],
+ ["\\curvearrowright", 8631],
+ ["\\curvearrowleft", 8630],
+ ["\\rightrightarrows", 8649],
+ ["\\leftleftarrows", 8647],
+ ["\\upuparrows", 8648],
+ ["\\downdownarrows", 8650],
+ ["\\vartriangle", 9651],
+ ["\\triangleq", 8796],
+ ["\\vartriangleleft", 8882],
+ ["\\trianglelefteq", 8884],
+ ["\\ntriangleleft", 8938],
+ ["\\ntrianglelefteq", 8940],
+ ["\\vartriangleright", 8883],
+ ["\\trianglerighteq", 8885],
+ ["\\ntriangleright", 8939],
+ ["\\ntrianglerighteq", 8941],
+ ["\\blacktriangleleft", 9664],
+ ["\\blacktriangleright", 9654],
+ ["\\leftarrowtail", 8610],
+ ["\\rightarrowtail", 8611],
+ ["\\looparrowright", 8620],
+ ["\\looparrowleft", 8619],
+ ["\\twoheadleftarrow", 8606],
+ ["\\twoheadrightarrow", 8608],
+ ["\\twoheadrightarrowtail", 10518],
+ ["\\rightleftharpoons", 8652],
+ ["\\leftrightharpoons", 8651],
+ ["\\Rsh", 8625],
+ ["\\Lsh", 8624],
+ // 'ams' Relations
+ ["\\circlearrowright", 8635],
+ ["\\circlearrowleft", 8634],
+ ["\\restriction", 8638],
+ ["\\upharpoonright", 8638],
+ ["\\upharpoonleft", 8639],
+ ["\\downharpoonright", 8642],
+ ["\\downharpoonleft", 8643],
+ ["\\rightsquigarrow", 8669],
+ ["\\leadsto", 8669],
+ ["\\leftrightsquigarrow", 8621],
+ ["\\multimap", 8888],
+ // 'ams' Negated Arrows
+ ["\\nleftarrow", 8602],
+ ["\\nrightarrow", 8603],
+ ["\\nRightarrow", 8655],
+ ["\\nLeftarrow", 8653],
+ ["\\nleftrightarrow", 8622],
+ ["\\nLeftrightarrow", 8654],
+ ["\\nvrightarrow", 8696],
+ ["\\nvtwoheadrightarrow", 10496],
+ ["\\nvrightarrowtail", 10516],
+ ["\\nvtwoheadrightarrowtail", 10519],
+ // 'ams' Negated Relations
+ ["\\shortparallel", 8741],
+ ["\\nless", 8814],
+ ["\\nleqslant", 57360],
+ ["\\lneq", 10887],
+ ["\\lneqq", 8808],
+ ["\\nleqq", 57361],
+ ["\\lvertneqq", 57356],
+ ["\\lnsim", 8934],
+ ["\\lnapprox", 10889],
+ ["\\nprec", 8832],
+ ["\\npreceq", 8928],
+ ["\\precnsim", 8936],
+ ["\\precnapprox", 10937],
+ ["\\nsim", 8769],
+ ["\\nshortmid", 57350],
+ ["\\nmid", 8740],
+ ["\\nvdash", 8876],
+ ["\\nvDash", 8877],
+ ["\\ngtr", 8815],
+ ["\\ngeqslant", 57359],
+ ["\\ngeqq", 57358],
+ ["\\gneq", 10888],
+ ["\\gneqq", 8809],
+ ["\\gvertneqq", 57357],
+ ["\\gnsim", 8935],
+ ["\\gnapprox", 10890],
+ ["\\nsucc", 8833],
+ ["\\nsucceq", 8929],
+ ["\\succnsim", 8937],
+ ["\\succnapprox", 10938],
+ ["\\ncong", 8774],
+ ["\\nshortparallel", 57351],
+ ["\\nparallel", 8742],
+ ["\\nVDash", 8879],
+ ["\\nsupseteqq", 57368],
+ ["\\supsetneq", 8843],
+ ["\\varsupsetneq", 57371],
+ ["\\supsetneqq", 10956],
+ ["\\varsupsetneqq", 57369],
+ ["\\nVdash", 8878],
+ ["\\precneqq", 10933],
+ ["\\succneqq", 10934],
+ ["\\nsubseteqq", 57366],
+ ["\\leqslant", 10877],
+ ["\\geqslant", 10878],
+ ["\\gtrsim", 8819],
+ ["\\approxeq", 8778],
+ ["\\thickapprox", 8776],
+ ["\\lessapprox", 10885],
+ ["\\gtrapprox", 10886],
+ ["\\precapprox", 10935],
+ ["\\succapprox", 10936],
+ ["\\thicksim", 8764],
+ ["\\succsim", 8831],
+ ["\\precsim", 8830],
+ ["\\backsim", 8765],
+ ["\\eqsim", 8770],
+ ["\\backsimeq", 8909],
+ ["\\lesssim", 8818],
+ ["\\nleq", 8816],
+ ["\\ngeq", 8817],
+ ["\\smallsmile", 8995],
+ ["\\smallfrown", 8994],
+ ["\\leqq", 8806],
+ ["\\eqslantless", 10901],
+ ["\\lll", 8920],
+ ["\\lessgtr", 8822],
+ ["\\lesseqgtr", 8922],
+ ["\\lesseqqgtr", 10891],
+ ["\\risingdotseq", 8787],
+ ["\\fallingdotseq", 8786],
+ ["\\subseteqq", 10949],
+ ["\\Subset", 8912],
+ ["\\sqsubset", 8847],
+ ["\\preccurlyeq", 8828],
+ ["\\curlyeqprec", 8926],
+ ["\\vDash", 8872],
+ ["\\Vvdash", 8874],
+ ["\\bumpeq", 8783],
+ ["\\Bumpeq", 8782],
+ ["\\geqq", 8807],
+ ["\\eqslantgtr", 10902],
+ ["\\ggg", 8921],
+ ["\\gtrless", 8823],
+ ["\\gtreqless", 8923],
+ ["\\gtreqqless", 10892],
+ ["\\supseteqq", 10950],
+ ["\\Supset", 8913],
+ ["\\sqsupset", 8848],
+ ["\\succcurlyeq", 8829],
+ ["\\curlyeqsucc", 8927],
+ ["\\Vdash", 8873],
+ ["\\shortmid", 8739],
+ ["\\between", 8812],
+ ["\\pitchfork", 8916],
+ ["\\varpropto", 8733],
+ ["\\backepsilon", 8717],
+ ["\\llless", 8920],
+ ["\\gggtr", 8921],
+ ["\\doteqdot", 8785],
+ ["\\Doteq", 8785],
+ ["\\eqcirc", 8790],
+ ["\\circeq", 8791],
+ ["\\therefore", 8756],
+ ["\\because", 8757]
+ ],
+ "mrel",
+ "ams"
+);
+defineSymbols(
+ [
+ ["+", 43],
+ ["-", 8722],
+ ["\u2212", 8722],
+ ["\\pm", 177],
+ ["\\mp", 8723],
+ ["*", 8727],
+ ["\\times", 215],
+ ["\\div", 247],
+ ["\\divides", 8739],
+ ["\\cdot", 8901],
+ ["\\cap", 8745],
+ ["\\cup", 8746],
+ ["\\setminus", 8726],
+ ["\\land", 8743],
+ ["\\wedge", 8743],
+ ["\\lor", 8744],
+ ["\\vee", 8744],
+ ["\\circ", 8728],
+ ["\\bigcirc", 9711],
+ ["\\bullet", 8729],
+ ["\\oplus", 8853],
+ ["\\ominus", 8854],
+ ["\\otimes", 8855],
+ ["\\odot", 8857],
+ ["\\oslash", 8856],
+ ["\\bigtriangleup", 9651],
+ ["\\bigtriangledown", 9661],
+ ["\\triangleleft", 9667],
+ ["\\triangleright", 9657],
+ ["\\And", 38],
+ ["\\dagger", 8224],
+ ["\\dag", 8224],
+ ["\\ddag", 8225],
+ ["\\ddagger", 8225],
+ ["\\ast", 8727],
+ ["\\star", 8902],
+ ["\\bigstar", 9733],
+ ["\\diamond", 8900]
+ ],
+ "mbin"
+);
+defineSymbols(
+ [
+ ["\\lhd", 8882],
+ ["\\rhd", 8883],
+ ["\\lessdot", 8918],
+ ["\\gtrdot", 8919],
+ ["\\ltimes", 8905],
+ ["\\rtimes", 8906],
+ ["\\leftthreetimes", 8907],
+ ["\\rightthreetimes", 8908],
+ ["\\intercal", 8890],
+ ["\\dotplus", 8724],
+ ["\\doublebarwedge", 10846],
+ ["\\divideontimes", 8903],
+ ["\\centerdot", 8901],
+ ["\\smallsetminus", 8726],
+ ["\\barwedge", 8892],
+ ["\\veebar", 8891],
+ ["\\nor", 8891],
+ // NOTE: Not TeX, Mathematica
+ ["\\curlywedge", 8911],
+ ["\\curlyvee", 8910],
+ ["\\boxminus", 8863],
+ ["\\boxplus", 8862],
+ ["\\boxtimes", 8864],
+ ["\\boxdot", 8865],
+ ["\\circleddash", 8861],
+ ["\\circledast", 8859],
+ ["\\circledcirc", 8858],
+ ["\\unlhd", 8884],
+ ["\\unrhd", 8885]
+ ],
+ "mbin",
+ "ams"
+);
+defineSymbols([
+ ["\\surd", 8730],
+ // From MnSymbol package
+ ["\\infty", 8734],
+ ["\\prime", 8242],
+ ["\\doubleprime", 8243],
+ // NOTE: Not in TeX, but Mathematica
+ ["\\angle", 8736],
+ ["`", 8216],
+ ["\\$", 36],
+ ["\\%", 37],
+ ["\\_", 95],
+ // Note: In TeX, greek symbols are only available in Math mode
+ ["\\alpha", 945],
+ ["\\beta", 946],
+ ["\\gamma", 947],
+ ["\\delta", 948],
+ ["\\epsilon", 1013],
+ ["\\varepsilon", 949],
+ ["\\zeta", 950],
+ ["\\eta", 951],
+ ["\\theta", 952],
+ ["\\vartheta", 977],
+ ["\\iota", 953],
+ ["\\kappa", 954],
+ ["\\varkappa", 1008, "mord", "ams"],
+ ["\\lambda", 955],
+ ["\\mu", 956],
+ ["\\nu", 957],
+ ["\\xi", 958],
+ ["\\omicron", 111],
+ ["\\pi", 960],
+ ["\\varpi", 982],
+ ["\\rho", 961],
+ ["\\varrho", 1009],
+ ["\\sigma", 963],
+ ["\\varsigma", 962],
+ ["\\tau", 964],
+ ["\\phi", 981],
+ ["\\varphi", 966],
+ ["\\upsilon", 965],
+ ["\\chi", 967],
+ ["\\psi", 968],
+ ["\\omega", 969],
+ ["\\Gamma", 915],
+ ["\\Delta", 916],
+ ["\\Theta", 920],
+ ["\\Lambda", 923],
+ ["\\Xi", 926],
+ ["\\Pi", 928],
+ ["\\Sigma", 931],
+ ["\\Upsilon", 933],
+ ["\\Phi", 934],
+ ["\\Psi", 936],
+ ["\\Omega", 937],
+ // 'ams' Greek
+ ["\\digamma", 989, "mord", "ams"],
+ ["\\emptyset", 8709]
+]);
+defineSymbols(
+ [
+ ["=", 61],
+ ["<", 60],
+ ["\\lt", 60],
+ [">", 62],
+ ["\\gt", 62],
+ ["\\le", 8804],
+ ["\\leq", 8804],
+ ["\\ge", 8805],
+ ["\\geq", 8805],
+ ["\\ll", 8810],
+ ["\\gg", 8811],
+ ["\\coloneq", 8788],
+ // Prefered form as of Summer 2022. See § 3.7.3 https://ctan.math.illinois.edu/macros/latex/contrib/mathtools/mathtools.pdf)
+ ["\\coloneqq", 8788],
+ // Legacy form
+ ["\\colonequals", 8788],
+ // From the colonequals package
+ ["\\measeq", 8797],
+ // MEASSURED BY
+ ["\\eqdef", 8798],
+ ["\\questeq", 8799],
+ // QUESTIONED EQUAL TO
+ [":", 58],
+ ["\\cong", 8773],
+ ["\\equiv", 8801],
+ ["\\prec", 8826],
+ ["\\preceq", 10927],
+ ["\\succ", 8827],
+ ["\\succeq", 10928],
+ ["\\perp", 8869],
+ ["\\propto", 8733],
+ ["\\Colon", 8759],
+ ["\\smile", 8995],
+ ["\\frown", 8994],
+ ["\\sim", 8764],
+ ["\\doteq", 8784],
+ ["\\bowtie", 8904],
+ ["\\Join", 8904],
+ ["\\asymp", 8781],
+ ["\\sqsubseteq", 8849],
+ ["\\sqsupseteq", 8850],
+ ["\\approx", 8776],
+ // In TeX, '~' is a spacing command (non-breaking space).
+ // However, '~' is used as an ASCII Math shortctut character, so define a \\~
+ // command which maps to the '~' character
+ ["\\~", 126],
+ ["\\leftrightarrow", 8596],
+ ["\\Leftrightarrow", 8660],
+ ["\\models", 8872],
+ ["\\vdash", 8866],
+ ["\\dashv", 8867],
+ ["\\roundimplies", 10608],
+ ["\\in", 8712],
+ ["\\notin", 8713],
+ // defineSymbol('\\not', 0x0338],
+ // defineSymbol('\\not', 0xe020],
+ ["\\ni", 8715],
+ ["\\owns", 8715],
+ ["\\subset", 8834],
+ ["\\supset", 8835],
+ ["\\subseteq", 8838],
+ ["\\supseteq", 8839],
+ ["\\differencedelta", 8710],
+ ["\\mvert", 8739],
+ ["\\parallel", 8741],
+ ["\\simeq", 8771]
+ ],
+ "mrel"
+);
+defineSymbols(
+ [
+ ["\\lnot", 172],
+ ["\\neg", 172],
+ ["\\triangle", 9651],
+ ["\\subsetneq", 8842],
+ ["\\varsubsetneq", 57370],
+ ["\\subsetneqq", 10955],
+ ["\\varsubsetneqq", 57367],
+ ["\\nsubset", 8836],
+ // NOTE: Not TeX?
+ ["\\nsupset", 8837],
+ // NOTE: Not TeX?
+ ["\\nsubseteq", 8840],
+ ["\\nsupseteq", 8841]
+ ],
+ "mrel",
+ "ams"
+);
+defineSymbols([
+ ["\\wp", 8472],
+ ["\\aleph", 8501]
+]);
+defineSymbols(
+ [
+ ["\\blacktriangle", 9650],
+ ["\\hslash", 8463],
+ ["\\Finv", 8498],
+ ["\\Game", 8513],
+ ["\\eth", 240],
+ ["\\mho", 8487],
+ ["\\Bbbk", 107],
+ ["\\yen", 165],
+ ["\\square", 9633],
+ ["\\Box", 9633],
+ ["\\blacksquare", 9632],
+ ["\\circledS", 9416],
+ ["\\circledR", 174],
+ ["\\triangledown", 9661],
+ ["\\blacktriangledown", 9660],
+ ["\\checkmark", 10003],
+ ["\\diagup", 9585],
+ ["\\measuredangle", 8737],
+ ["\\sphericalangle", 8738],
+ ["\\backprime", 8245],
+ ["\\backdoubleprime", 8246],
+ ["\\Diamond", 9674],
+ ["\\lozenge", 9674],
+ ["\\blacklozenge", 10731],
+ ["\\varnothing", 8709],
+ ["\\complement", 8705],
+ ["\\maltese", 10016],
+ // 'ams' Hebrew
+ ["\\beth", 8502],
+ ["\\daleth", 8504],
+ ["\\gimel", 8503]
+ ],
+ "mord",
+ "ams"
+);
+defineSymbols(
+ [
+ // See http://tex.stackexchange.com/questions/41476/lengths-and-when-to-use-them
+ ["\\ ", 160],
+ ["~", 160]
+ ],
+ "space"
+);
+defineFunction(
+ ["!", ",", ":", ";", ">", "enskip", "enspace", "quad", "qquad"],
+ "",
+ {
+ createAtom: (options) => new SpacingAtom(options)
+ }
+);
+defineFunction("space", "", {
+ createAtom: (options) => new SpacingAtom(options)
+});
+defineSymbols(
+ [
+ ["\\colon", 58],
+ ["\\cdotp", 8901],
+ ["\\vdots", 8942, "mord"],
+ ["\\ldotp", 46],
+ [",", 44],
+ [";", 59]
+ ],
+ "mpunct"
+);
+defineSymbols(
+ [
+ ["\\cdots", 8943],
+ ["\\ddots", 8945],
+ ["\\ldots", 8230],
+ ["\\mathellipsis", 8230]
+ ],
+ "minner"
+);
+defineSymbols([
+ ["\\/", 47],
+ ["|", 8739, "mord"],
+ ["\\imath", 305],
+ ["\\jmath", 567],
+ ["\\degree", 176],
+ ["'", 8242],
+ // Prime
+ ['"', 8221]
+ // Double Prime
+ // defineSymbol( "\'', 0x2033, 'mord', MAIN], // Double Prime
+]);
+
+// src/formats/atom-to-math-ml.ts
+var APPLY_FUNCTION = " ";
+var INVISIBLE_TIMES = " ";
+function xmlEscape(string) {
+ return string.replace(/"/g, """).replace(/'/g, "'").replace(/ /g, ">");
+}
+function makeID(id, options) {
+ if (!id || !options.generateID)
+ return "";
+ return ` extid="${id}"`;
+}
+function scanIdentifier(stream, final, options) {
+ var _a3, _b3, _c2, _d2, _e, _f, _g, _h, _i, _j, _k;
+ let result = false;
+ final = final != null ? final : stream.atoms.length;
+ let mathML = "";
+ let body = "";
+ let atom = stream.atoms[stream.index];
+ const variant = (_b3 = (_a3 = atom.style) == null ? void 0 : _a3.variant) != null ? _b3 : "";
+ const variantStyle = (_d2 = (_c2 = atom.style) == null ? void 0 : _c2.variantStyle) != null ? _d2 : "";
+ let variantProp = "";
+ if (variant || variantStyle) {
+ const unicodeVariant = mathVariantToUnicode(
+ atom.value,
+ (_e = atom.style) == null ? void 0 : _e.variant,
+ (_f = atom.style) == null ? void 0 : _f.variantStyle
+ );
+ if (unicodeVariant !== atom.value) {
+ stream.index += 1;
+ mathML = `${unicodeVariant} `;
+ if (!parseSubsup(mathML, stream, options)) {
+ stream.mathML += mathML;
+ stream.lastType = "mi";
+ }
+ return true;
+ }
+ variantProp = (_g = {
+ "upnormal": "normal",
+ "boldnormal": "bold",
+ "italicmain": "italic",
+ "bolditalicmain": "bold-italic",
+ "updouble-struck": "double-struck",
+ "double-struck": "double-struck",
+ "boldfraktur": "bold-fraktur",
+ "calligraphic": "script",
+ "upcalligraphic": "script",
+ "script": "script",
+ "boldscript": "bold-script",
+ "boldcalligraphic": "bold-script",
+ "fraktur": "fraktur",
+ "upsans-serif": "sans-serif",
+ "boldsans-serif": "bold-sans-serif",
+ "italicsans-serif": "sans-serif-italic",
+ "bolditalicsans-serif": "sans-serif-bold-italic",
+ "monospace": "monospace"
+ }[variantStyle + variant]) != null ? _g : "";
+ variantProp = ` mathvariant="${variantProp}"`;
+ }
+ const SPECIAL_IDENTIFIERS2 = {
+ "\\exponentialE": "ⅇ",
+ "\\imaginaryI": "ⅈ",
+ "\\differentialD": "ⅆ",
+ "\\capitalDifferentialD": "ⅅ",
+ "\\alpha": "α",
+ "\\pi": "π",
+ "\\infty": "∞",
+ "\\forall": "∀",
+ "\\nexists": "∄",
+ "\\exists": "∃",
+ "\\hbar": "\u210F",
+ "\\cdotp": "\u22C5",
+ "\\ldots": "\u2026",
+ "\\cdots": "\u22EF",
+ "\\ddots": "\u22F1",
+ "\\vdots": "\u22EE",
+ "\\ldotp": "."
+ };
+ if (atom.command === "!") {
+ stream.index += 1;
+ mathML = "! ";
+ if (!parseSubsup(mathML, stream, options)) {
+ stream.mathML += mathML;
+ stream.lastType = "mo";
+ }
+ return true;
+ }
+ if (SPECIAL_IDENTIFIERS2[atom.command]) {
+ stream.index += 1;
+ let mathML2 = `${SPECIAL_IDENTIFIERS2[atom.command]} `;
+ if (stream.lastType === "mi" || stream.lastType === "mn" || stream.lastType === "mtext" || stream.lastType === "fence")
+ mathML2 = INVISIBLE_TIMES + mathML2;
+ if (!parseSubsup(mathML2, stream, options)) {
+ stream.mathML += mathML2;
+ stream.lastType = "mi";
+ }
+ return true;
+ }
+ if (atom.command === "\\operatorname") {
+ body = toString2(atom.body);
+ stream.index += 1;
+ } else {
+ if (variant || variantStyle) {
+ while (stream.index < final && (atom.type === "mord" || atom.type === "macro") && !atom.isDigit() && variant === ((_i = (_h = atom.style) == null ? void 0 : _h.variant) != null ? _i : "") && variantStyle === ((_k = (_j = atom.style) == null ? void 0 : _j.variantStyle) != null ? _k : "")) {
+ body += toString2([atom]);
+ stream.index += 1;
+ atom = stream.atoms[stream.index];
+ }
+ } else if ((atom.type === "mord" || atom.type === "macro") && !atom.isDigit()) {
+ body += toString2([atom]);
+ stream.index += 1;
+ }
+ }
+ if (body.length > 0) {
+ result = true;
+ mathML = `${body} `;
+ const lastType = stream.lastType;
+ if (mathML.endsWith(">f") || mathML.endsWith(">g")) {
+ mathML += APPLY_FUNCTION;
+ stream.lastType = "applyfunction";
+ } else
+ stream.lastType = /^(.*)<\/mo>$/.test(mathML) ? "mo" : "mi";
+ if (!parseSubsup(mathML, stream, options)) {
+ if (lastType === "mi" || lastType === "mn" || lastType === "mtext" || lastType === "fence")
+ mathML = INVISIBLE_TIMES + mathML;
+ stream.mathML += mathML;
+ }
+ }
+ return result;
+}
+function isSuperscriptAtom(stream) {
+ return stream.index < stream.atoms.length && stream.atoms[stream.index].superscript && stream.atoms[stream.index].type === "subsup";
+}
+function indexOfSuperscriptInNumber(stream) {
+ let result = -1;
+ let i = stream.index;
+ let done = false;
+ let found = false;
+ while (i < stream.atoms.length && !done && !found) {
+ const atom = stream.atoms[i];
+ done = !atom.isDigit();
+ found = !done && atom.superscript !== void 0;
+ i++;
+ }
+ if (found)
+ result = i - 1;
+ return result;
+}
+function parseSubsup(base, stream, options) {
+ var _a3;
+ let atom = stream.atoms[stream.index - 1];
+ if (!atom)
+ return false;
+ if (!atom.superscript && !atom.subscript) {
+ if (((_a3 = stream.atoms[stream.index]) == null ? void 0 : _a3.type) === "subsup") {
+ atom = stream.atoms[stream.index];
+ stream.index += 1;
+ } else
+ return false;
+ }
+ const lastType = stream.lastType;
+ stream.lastType = "";
+ const superscript = toMathML(atom.superscript, options);
+ stream.lastType = "";
+ const subscript = toMathML(atom.subscript, options);
+ stream.lastType = lastType;
+ if (!superscript && !subscript)
+ return false;
+ let mathML = "";
+ if (superscript && subscript)
+ mathML = `${base}${subscript}${superscript} `;
+ else if (superscript)
+ mathML = `${base}${superscript} `;
+ else if (subscript)
+ mathML = `${base}${subscript} `;
+ stream.mathML += mathML;
+ stream.lastType = "";
+ return true;
+}
+function scanText(stream, final, options) {
+ final = final != null ? final : stream.atoms.length;
+ const initial = stream.index;
+ let mathML = "";
+ while (stream.index < final && stream.atoms[stream.index].mode === "text") {
+ mathML += stream.atoms[stream.index].value ? stream.atoms[stream.index].value : " ";
+ stream.index += 1;
+ }
+ if (mathML.length > 0) {
+ stream.mathML += `${mathML} `;
+ stream.lastType = "mtext";
+ return true;
+ }
+ return false;
+}
+function scanNumber(stream, final, options) {
+ final = final != null ? final : stream.atoms.length;
+ const initial = stream.index;
+ let mathML = "";
+ let superscript = indexOfSuperscriptInNumber(stream);
+ if (superscript >= 0 && superscript < final)
+ final = superscript;
+ while (stream.index < final && stream.atoms[stream.index].isDigit()) {
+ mathML += stream.atoms[stream.index].asDigit();
+ stream.index += 1;
+ }
+ if (mathML.length <= 0)
+ return false;
+ mathML = "" + mathML + " ";
+ if (superscript < 0 && isSuperscriptAtom(stream)) {
+ superscript = stream.index;
+ stream.index += 1;
+ }
+ if (!parseSubsup(mathML, stream, options)) {
+ stream.mathML += mathML;
+ stream.lastType = "mn";
+ }
+ return true;
+}
+function scanFence(stream, final, options) {
+ let result = false;
+ final = final != null ? final : stream.atoms.length;
+ let mathML = "";
+ let lastType = "";
+ if (stream.index < final && stream.atoms[stream.index].type === "mopen") {
+ let found = false;
+ let depth = 0;
+ const openIndex = stream.index;
+ let closeIndex = -1;
+ let index = openIndex + 1;
+ while (index < final && !found) {
+ if (stream.atoms[index].type === "mopen")
+ depth += 1;
+ else if (stream.atoms[index].type === "mclose")
+ depth -= 1;
+ if (depth === -1) {
+ found = true;
+ closeIndex = index;
+ }
+ index += 1;
+ }
+ if (found) {
+ mathML = "";
+ mathML += toMo(stream.atoms[openIndex], options);
+ mathML += toMathML(stream.atoms, options, openIndex + 1, closeIndex);
+ mathML += toMo(stream.atoms[closeIndex], options);
+ mathML += " ";
+ stream.index = closeIndex + 1;
+ if (stream.lastType === "mi" || stream.lastType === "mn" || stream.lastType === "mfrac" || stream.lastType === "fence")
+ stream.mathML += INVISIBLE_TIMES;
+ if (parseSubsup(mathML, stream, options)) {
+ result = true;
+ stream.lastType = "";
+ mathML = "";
+ }
+ lastType = "fence";
+ }
+ }
+ if (mathML.length > 0) {
+ result = true;
+ stream.mathML += mathML;
+ stream.lastType = lastType;
+ }
+ return result;
+}
+function scanOperator(stream, final, options) {
+ let result = false;
+ final = final != null ? final : stream.atoms.length;
+ let mathML = "";
+ let lastType = "";
+ const atom = stream.atoms[stream.index];
+ if (!atom)
+ return false;
+ const SPECIAL_OPERATORS2 = {
+ "\\ne": "≠",
+ "\\neq": "&neq;",
+ "\\pm": "±",
+ "\\times": "×",
+ "\\colon": ":",
+ "\\vert": "|",
+ "\\Vert": "\u2225",
+ "\\mid": "\u2223",
+ "\\{": "{",
+ "\\}": "}",
+ "\\lbrace": "{",
+ "\\rbrace": "}",
+ "\\lbrack": "[",
+ "\\rbrack": "]",
+ "\\lparen": "(",
+ "\\rparen": ")",
+ "\\langle": "\u27E8",
+ "\\rangle": "\u27E9",
+ "\\lfloor": "\u230A",
+ "\\rfloor": "\u230B",
+ "\\lceil": "\u2308",
+ "\\rceil": "\u2309"
+ };
+ if (SPECIAL_OPERATORS2[atom.command]) {
+ stream.index += 1;
+ const mathML2 = `${SPECIAL_OPERATORS2[atom.command]} `;
+ if (!parseSubsup(mathML2, stream, options)) {
+ stream.mathML += mathML2;
+ stream.lastType = "mo";
+ }
+ return true;
+ }
+ if (stream.index < final && (atom.type === "mbin" || atom.type === "mrel")) {
+ mathML += atomToMathML(stream.atoms[stream.index], options);
+ stream.index += 1;
+ lastType = "mo";
+ } else if (stream.index < final && (atom.type === "mop" || atom.type === "operator" || atom.type === "extensible-symbol")) {
+ if (atom.subsupPlacement === "over-under" && (atom.superscript || atom.subscript)) {
+ const op = toMo(atom, options);
+ if (atom.superscript && atom.subscript) {
+ mathML += "" + op;
+ mathML += toMathML(atom.subscript, options);
+ mathML += toMathML(atom.superscript, options);
+ mathML += " ";
+ } else if (atom.superscript) {
+ mathML += "" + op;
+ mathML += toMathML(atom.superscript, options);
+ mathML += " ";
+ } else if (atom.subscript) {
+ mathML += "" + op;
+ mathML += toMathML(atom.subscript, options);
+ mathML += " ";
+ }
+ stream.mathML += mathML;
+ stream.lastType = "mo";
+ stream.index += 1;
+ return true;
+ }
+ {
+ const atom2 = stream.atoms[stream.index];
+ const isUnit = atom2.value === "\\operatorname";
+ const op = isUnit ? '" + toString2(atom2.value) + " " : toMo(atom2, options);
+ mathML += op;
+ if (!isUnit && !/^(.*)<\/mo>$/.test(op)) {
+ mathML += APPLY_FUNCTION;
+ lastType = "applyfunction";
+ } else
+ lastType = isUnit ? "mi" : "mo";
+ }
+ if ((stream.lastType === "mi" || stream.lastType === "mn") && !/^(.*)<\/mo>$/.test(mathML))
+ mathML = INVISIBLE_TIMES + mathML;
+ stream.index += 1;
+ }
+ if (mathML.length > 0) {
+ result = true;
+ if (!parseSubsup(mathML, stream, options)) {
+ stream.mathML += mathML;
+ stream.lastType = lastType;
+ }
+ }
+ return result;
+}
+function toMathML(input, options, initial, final) {
+ options != null ? options : options = {};
+ const result = {
+ atoms: [],
+ index: initial != null ? initial : 0,
+ mathML: "",
+ lastType: ""
+ };
+ if (typeof input === "number" || typeof input === "boolean")
+ result.mathML = input.toString();
+ else if (typeof input === "string")
+ result.mathML = input;
+ else if (input instanceof Atom)
+ result.mathML = atomToMathML(input, options);
+ else if (Array.isArray(input)) {
+ result.atoms = input;
+ let count = 0;
+ final = final ? final : input ? input.length : 0;
+ while (result.index < final) {
+ if (scanText(result, final, options) || scanNumber(result, final, options) || scanIdentifier(result, final, options) || scanOperator(result, final, options) || scanFence(result, final, options))
+ count += 1;
+ else if (result.index < final) {
+ let mathML = atomToMathML(result.atoms[result.index], options);
+ if (result.lastType === "mn" && mathML.length > 0 && result.atoms[result.index].type === "genfrac") {
+ mathML = " " + mathML;
+ }
+ if (result.atoms[result.index].type === "genfrac")
+ result.lastType = "mfrac";
+ else
+ result.lastType = "";
+ result.index += 1;
+ if (parseSubsup(mathML, result, options))
+ count += 1;
+ else {
+ if (mathML.length > 0) {
+ result.mathML += mathML;
+ count += 1;
+ }
+ }
+ }
+ }
+ if (count > 1)
+ result.mathML = "" + result.mathML + " ";
+ }
+ return result.mathML;
+}
+function toMo(atom, options) {
+ let result = "";
+ const body = toString2(atom.value);
+ if (body)
+ result = "" + body + " ";
+ return result;
+}
+function toString2(atoms) {
+ if (!atoms)
+ return "";
+ if (typeof atoms === "string")
+ return xmlEscape(atoms);
+ if (!Array.isArray(atoms) && typeof atoms.body === "string")
+ return xmlEscape(atoms.body);
+ let result = "";
+ for (const atom of atoms)
+ if (typeof atom.value === "string")
+ result += atom.value;
+ return xmlEscape(result);
+}
+function atomToMathML(atom, options) {
+ var _a3, _b3, _c2, _d2, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v;
+ if (atom.mode === "text")
+ return `${atom.value} `;
+ const SVG_CODE_POINTS = {
+ widehat: "^",
+ widecheck: "\u02C7",
+ widetilde: "~",
+ utilde: "~",
+ overleftarrow: "\u2190",
+ underleftarrow: "\u2190",
+ xleftarrow: "\u2190",
+ longleftarrow: "\u2190",
+ overrightarrow: "\u2192",
+ underrightarrow: "\u2192",
+ xrightarrow: "\u2192",
+ longrightarrow: "\u2192",
+ underbrace: "\u23DF",
+ overbrace: "\u23DE",
+ overgroup: "\u23E0",
+ undergroup: "\u23E1",
+ overleftrightarrow: "\u2194",
+ underleftrightarrow: "\u2194",
+ xleftrightarrow: "\u2194",
+ Overrightarrow: "\u21D2",
+ xRightarrow: "\u21D2",
+ overleftharpoon: "\u21BC",
+ xleftharpoonup: "\u21BC",
+ overrightharpoon: "\u21C0",
+ xrightharpoonup: "\u21C0",
+ xLeftarrow: "\u21D0",
+ xLeftrightarrow: "\u21D4",
+ xhookleftarrow: "\u21A9",
+ xhookrightarrow: "\u21AA",
+ xmapsto: "\u21A6",
+ xrightharpoondown: "\u21C1",
+ xleftharpoondown: "\u21BD",
+ xrightleftharpoons: "\u21CC",
+ longrightleftharpoons: "\u21CC",
+ xleftrightharpoons: "\u21CB",
+ xtwoheadleftarrow: "\u219E",
+ xtwoheadrightarrow: "\u21A0",
+ xlongequal: "=",
+ xtofrom: "\u21C4",
+ xleftrightarrows: "\u21C4",
+ xRightleftharpoons: "\u21CC",
+ // Not a perfect match.
+ longRightleftharpoons: "\u21CC",
+ // Not a perfect match.
+ xLeftrightharpoons: "\u21CB",
+ // None better available.
+ longLeftrightharpoons: "\u21CB"
+ // None better available.
+ };
+ const SPACING = {
+ "\\!": -3 / 18,
+ "\\ ": 6 / 18,
+ "\\,": 3 / 18,
+ "\\:": 4 / 18,
+ "\\>": 4 / 18,
+ "\\;": 5 / 18,
+ "\\enspace": 0.5,
+ "\\quad": 1,
+ "\\qquad": 2,
+ "\\enskip": 0.5
+ };
+ let result = "";
+ let sep = "";
+ let col;
+ let row;
+ let i;
+ let underscript;
+ let overscript;
+ let body;
+ const { command } = atom;
+ if (atom.command === "\\error") {
+ return `${toMathML(
+ atom.body,
+ options
+ )} `;
+ }
+ const SPECIAL_DELIMS = {
+ "\\vert": "|",
+ "\\Vert": "\u2225",
+ "\\mid": "\u2223",
+ "\\lbrack": "[",
+ "\\rbrack": "]",
+ "\\{": "{",
+ "\\}": "}",
+ "\\lbrace": "{",
+ "\\rbrace": "}",
+ "\\lparen": "(",
+ "\\rparen": ")",
+ "\\langle": "\u27E8",
+ "\\rangle": "\u27E9",
+ "\\lfloor": "\u230A",
+ "\\rfloor": "\u230B",
+ "\\lceil": "\u2308",
+ "\\rceil": "\u2309"
+ };
+ const SPECIAL_ACCENTS = {
+ "\\vec": "⃗",
+ "\\acute": "´",
+ "\\grave": "`",
+ "\\dot": "˙",
+ "\\ddot": "¨",
+ "\\tilde": "~",
+ "\\bar": "¯",
+ "\\breve": "˘",
+ "\\check": "ˇ",
+ "\\hat": "^"
+ };
+ switch (atom.type) {
+ case "first":
+ break;
+ case "group":
+ case "root":
+ result = toMathML(atom.body, options);
+ break;
+ case "array":
+ if (atom.leftDelim && atom.leftDelim !== "." || atom.rightDelim && atom.rightDelim !== ".") {
+ result += "";
+ if (atom.leftDelim && atom.leftDelim !== ".") {
+ result += "" + (SPECIAL_DELIMS[atom.leftDelim] || atom.leftDelim) + " ";
+ }
+ }
+ result += "";
+ for (row = 0; row < atom.array.length; row++) {
+ result += "";
+ for (col = 0; col < atom.array[row].length; col++) {
+ result += "" + toMathML(atom.array[row][col], options) + " ";
+ }
+ result += " ";
+ }
+ result += " ";
+ if (atom.leftDelim && atom.leftDelim !== "." || atom.rightDelim && atom.rightDelim !== ".") {
+ if (atom.rightDelim && atom.rightDelim !== ".") {
+ result += "" + (SPECIAL_DELIMS[atom.leftDelim] || atom.rightDelim) + " ";
+ }
+ result += " ";
+ }
+ break;
+ case "genfrac":
+ if (atom.leftDelim || atom.rightDelim)
+ result += "";
+ if (atom.leftDelim && atom.leftDelim !== ".") {
+ result += "" + (SPECIAL_DELIMS[atom.leftDelim] || atom.leftDelim) + " ";
+ }
+ if (atom.hasBarLine) {
+ result += "";
+ result += toMathML(atom.above, options) || " ";
+ result += toMathML(atom.below, options) || " ";
+ result += " ";
+ } else {
+ result += "";
+ result += "" + toMathML(atom.above, options) + " ";
+ result += "" + toMathML(atom.below, options) + " ";
+ result += " ";
+ }
+ if (atom.rightDelim && atom.rightDelim !== ".") {
+ result += "" + (SPECIAL_DELIMS[atom.rightDelim] || atom.rightDelim) + " ";
+ }
+ if (atom.leftDelim || atom.rightDelim)
+ result += " ";
+ break;
+ case "surd":
+ if (!atom.hasEmptyBranch("above")) {
+ result += "";
+ result += toMathML(atom.body, options);
+ result += toMathML(atom.above, options);
+ result += " ";
+ } else {
+ result += "";
+ result += toMathML(atom.body, options);
+ result += " ";
+ }
+ break;
+ case "leftright":
+ const leftrightAtom = atom;
+ const lDelim = leftrightAtom.leftDelim;
+ result = "";
+ if (lDelim && lDelim !== ".") {
+ result += `${(_a3 = SPECIAL_DELIMS[lDelim]) != null ? _a3 : lDelim} `;
+ }
+ if (atom.body)
+ result += toMathML(atom.body, options);
+ const rDelim = leftrightAtom.matchingRightDelim();
+ if (rDelim && rDelim !== ".") {
+ result += `${(_b3 = SPECIAL_DELIMS[rDelim]) != null ? _b3 : rDelim} `;
+ }
+ result += " ";
+ break;
+ case "sizeddelim":
+ case "delim":
+ result += `${SPECIAL_DELIMS[atom.value] || atom.value} `;
+ break;
+ case "accent":
+ result += '";
+ result += toMathML(atom.body, options);
+ result += "" + (SPECIAL_ACCENTS[command] || atom.accent) + " ";
+ result += " ";
+ break;
+ case "line":
+ case "overlap":
+ break;
+ case "overunder":
+ overscript = atom.above;
+ underscript = atom.below;
+ if ((atom.svgAbove || overscript) && (atom.svgBelow || underscript))
+ body = atom.body;
+ else if (overscript && overscript.length > 0) {
+ body = atom.body;
+ if ((_d2 = (_c2 = atom.body) == null ? void 0 : _c2[0]) == null ? void 0 : _d2.below) {
+ underscript = atom.body[0].below;
+ body = atom.body[0].body;
+ } else if (((_f = (_e = atom.body) == null ? void 0 : _e[0]) == null ? void 0 : _f.type) === "first" && ((_h = (_g = atom.body) == null ? void 0 : _g[1]) == null ? void 0 : _h.below)) {
+ underscript = atom.body[1].below;
+ body = atom.body[1].body;
+ }
+ } else if (underscript && underscript.length > 0) {
+ body = atom.body;
+ if ((_j = (_i = atom.body) == null ? void 0 : _i[0]) == null ? void 0 : _j.above) {
+ overscript = atom.body[0].above;
+ body = atom.body[0].body;
+ } else if (((_l = (_k = atom.body) == null ? void 0 : _k[0]) == null ? void 0 : _l.type) === "first" && ((_n = (_m = atom.body) == null ? void 0 : _m[1]) == null ? void 0 : _n.above)) {
+ overscript = atom.body[1].overscript;
+ body = atom.body[1].body;
+ }
+ }
+ if ((atom.svgAbove || overscript) && (atom.svgBelow || underscript)) {
+ result += ``;
+ result += (_o = SVG_CODE_POINTS[atom.svgBody]) != null ? _o : toMathML(body, options);
+ result += (_p = SVG_CODE_POINTS[atom.svgBelow]) != null ? _p : toMathML(underscript, options);
+ result += (_q = SVG_CODE_POINTS[atom.svgAbove]) != null ? _q : toMathML(overscript, options);
+ result += " ";
+ } else if (atom.svgAbove || overscript) {
+ result += `` + ((_r = SVG_CODE_POINTS[atom.svgBody]) != null ? _r : toMathML(body, options));
+ result += (_s = SVG_CODE_POINTS[atom.svgAbove]) != null ? _s : toMathML(overscript, options);
+ result += " ";
+ } else if (atom.svgBelow || underscript) {
+ result += `` + ((_t = SVG_CODE_POINTS[atom.svgBody]) != null ? _t : toMathML(body, options));
+ result += (_u = SVG_CODE_POINTS[atom.svgBelow]) != null ? _u : toMathML(underscript, options);
+ result += " ";
+ }
+ break;
+ case "placeholder":
+ result += "?";
+ break;
+ case "mord": {
+ result = typeof atom.value === "string" ? atom.value : command;
+ if (command === "\\char") {
+ result = "" + ("000000" + atom.args[0].number.toString(16)).slice(-4) + ";";
+ } else if (result.length > 0 && result.startsWith("\\")) {
+ if (typeof atom.value === "string" && atom.value.charCodeAt(0) > 255) {
+ result = "" + ("000000" + atom.value.charCodeAt(0).toString(16)).slice(-4) + ";";
+ } else if (typeof atom.value === "string")
+ result = atom.value.charAt(0);
+ else {
+ console.error("Did not expect this");
+ result = "";
+ }
+ }
+ const tag = /\d/.test(result) ? "mn" : "mi";
+ result = `<${tag}${makeID(atom.id, options)}>${xmlEscape(
+ result
+ )}${tag}>`;
+ break;
+ }
+ case "mbin":
+ case "mrel":
+ case "minner":
+ result = toMo(atom, options);
+ break;
+ case "mpunct":
+ result = '" + command + " ";
+ break;
+ case "mop":
+ case "operator":
+ case "extensible-symbol":
+ if (atom.body !== "\u200B") {
+ result = "";
+ result += command === "\\operatorname" ? atom.body : command || atom.body;
+ result += " ";
+ }
+ break;
+ case "box":
+ result = '" + toMathML(atom.body, options) + " ";
+ break;
+ case "spacing":
+ result += ' ';
+ break;
+ case "enclose":
+ result = '' + toMathML(atom.body, options) + " ";
+ break;
+ case "prompt":
+ result = '' + toMathML(atom.body, options) + " ";
+ break;
+ case "space":
+ result += " ";
+ break;
+ case "subsup":
+ break;
+ case "phantom":
+ break;
+ case "composition":
+ break;
+ case "rule":
+ break;
+ case "chem":
+ break;
+ case "mopen":
+ result += toMo(atom, options);
+ break;
+ case "mclose":
+ result += toMo(atom, options);
+ break;
+ case "macro":
+ {
+ const body2 = atom.command + toString2(atom.macroArgs);
+ if (body2)
+ result += `${body2} `;
+ }
+ break;
+ case "latexgroup":
+ result += toMathML(atom.body, options);
+ break;
+ case "latex":
+ result += "" + atom.value + " ";
+ break;
+ case "tooltip":
+ result += toMathML(atom.body, options);
+ break;
+ case "text":
+ result += `${atom.value} `;
+ break;
+ default:
+ if (atom.command === "\\displaystyle") {
+ return `${toMathML(atom.body, options)} `;
+ }
+ if (atom.command === "\\textstyle") {
+ return `${toMathML(atom.body, options)} `;
+ }
+ console.info("Unexpected element in conversion to MathML:", atom);
+ }
+ return result;
+}
+
+// src/formats/atom-to-speakable-text.ts
+var PRONUNCIATION = {
+ "\\alpha": "alpha ",
+ "\\mu": "mew ",
+ "\\sigma": "sigma ",
+ "\\pi": "pie ",
+ "\\imaginaryI": "imaginary eye ",
+ "\\imaginaryJ": "imaginary jay ",
+ "\\sum": "Summation ",
+ "\\prod": "Product ",
+ "+": "plus ",
+ "-": "minus ",
+ ";": ' semi-colon ',
+ ",": ' comma ',
+ "|": ' Vertical bar ',
+ "(": ' Open paren. ',
+ ")": ' Close paren. ',
+ "=": "equals ",
+ "<": "is less than ",
+ "\\lt": "is less than ",
+ "<=": "is less than or equal to ",
+ "\\le": "is less than or equal to ",
+ "\\gt": "is greater than ",
+ ">": "is greater than ",
+ "\\pm": "plus or minus",
+ "\\mp": "minus or plus",
+ "\\ge": "is greater than or equal to ",
+ "\\geq": "is greater than or equal to ",
+ "\\leq": "is less than or equal to ",
+ "\\ne": "is not equal to ",
+ "\\neq": "is not equal to ",
+ "!": "factorial ",
+ "\\sin": "sine ",
+ "\\cos": "cosine ",
+ "\u200B": "",
+ "\u2212": "minus ",
+ ":": ' such that ',
+ "\\colon": ' such that ',
+ "\\hbar": "etch bar ",
+ "\\iff": ' if, and only if, ',
+ "\\Longleftrightarrow": ' if, and only if, ',
+ "\\land": "and ",
+ "\\lor": "or ",
+ "\\neg": "not ",
+ "\\div": "divided by ",
+ "\\forall": "for all ",
+ "\\exists": "there exists ",
+ "\\nexists": "there does not exists ",
+ "\\in": "element of ",
+ "\\N": 'the set n ',
+ "\\C": 'the set c ',
+ "\\Z": 'the set z ',
+ "\\Q": 'the set q ',
+ "\\infty": "infinity ",
+ "\\nabla": "nabla ",
+ "\\partial": "partial derivative of ",
+ "\\cdot": "times ",
+ "\\cdots": "dot dot dot ",
+ "\\Rightarrow": "implies ",
+ "\\lparen": ' open paren ',
+ "\\rparen": ' close paren ',
+ "\\lbrace": ' open brace ',
+ "\\{": ' open brace ',
+ "\\rbrace": ' close brace ',
+ "\\}": ' close brace ',
+ "\\langle": ' left angle bracket ',
+ "\\rangle": ' right angle bracket ',
+ "\\lfloor": ' open floor ',
+ "\\rfloor": ' close floor ',
+ "\\lceil": ' open ceiling ',
+ "\\rceil": ' close ceiling ',
+ "\\vert": ' vertical bar ',
+ "\\mvert": ' divides ',
+ "\\lvert": ' left vertical bar ',
+ "\\rvert": ' right vertical bar ',
+ // '\\lbrack': 'left bracket',
+ // '\\rbrack': 'right bracket',
+ "\\lbrack": ' open square bracket ',
+ "\\rbrack": ' close square bracket ',
+ // Need to add code to detect singluar/plural. Until then spoken as plural since that is vastly more common
+ // note: need to worry about intervening ⁢.
+ // note: need to also do this when in numerator of fraction and number preceeds fraction
+ // note: need to do this for
+ "mm": "millimeters",
+ "cm": "centimeters",
+ "km": "kilometers",
+ "kg": "kilograms"
+};
+var ENVIRONMENTS_NAMES = {
+ "array": "array",
+ "matrix": "matrix",
+ "pmatrix": "parenthesis matrix",
+ "bmatrix": "square brackets matrix",
+ "Bmatrix": "braces matrix",
+ "vmatrix": "bars matrix",
+ "Vmatrix": "double bars matrix",
+ "matrix*": "matrix",
+ "smallmatrix": "small matrix"
+};
+function getSpokenName(latex) {
+ let result = "";
+ if (latex.startsWith("\\"))
+ result = " " + latex.replace("\\", "") + " ";
+ return result;
+}
+function isAtomic(atoms) {
+ let count = 0;
+ if (isArray(atoms)) {
+ for (const atom of atoms)
+ if (atom.type !== "first")
+ count += 1;
+ }
+ return count === 1;
+}
+function atomicID(atoms) {
+ if (isArray(atoms)) {
+ for (const atom of atoms)
+ if (atom.type !== "first" && atom.id)
+ return atom.id.toString();
+ }
+ return "";
+}
+function atomicValue(atoms) {
+ let result = "";
+ if (isArray(atoms)) {
+ for (const atom of atoms) {
+ if (atom.type !== "first" && typeof atom.value === "string")
+ result += atom.value;
+ }
+ }
+ return result;
+}
+function atomsAsText(atoms) {
+ if (!atoms)
+ return "";
+ return atoms.map((atom) => atom.value).join("");
+}
+function atomToSpeakableFragment(mode, atom) {
+ var _a3, _b3, _c2, _d2, _e;
+ function letter(c) {
+ if (!window.MathfieldElement.textToSpeechMarkup) {
+ if (/[a-z]/.test(c))
+ return " '" + c.toUpperCase() + "'";
+ if (/[A-Z]/.test(c))
+ return " 'capital " + c.toUpperCase() + "'";
+ return c;
+ }
+ if (/[a-z]/.test(c))
+ return ` ${c} `;
+ if (/[A-Z]/.test(c))
+ return `capital ${c.toLowerCase()} `;
+ return c;
+ }
+ function emph(s) {
+ return "" + s + " ";
+ }
+ if (!atom)
+ return "";
+ let result = "";
+ if (isArray(atom)) {
+ let isInDigitRun = false;
+ let isInTextRun = false;
+ for (let i = 0; i < atom.length; i++) {
+ if (atom[i].type === "first")
+ continue;
+ if (atom[i].mode !== "text")
+ isInTextRun = false;
+ if (i < atom.length - 2 && atom[i].type === "mopen" && atom[i + 2].type === "mclose" && atom[i + 1].type === "mord") {
+ result += " of ";
+ result += emph(atomToSpeakableFragment(mode, atom[i + 1]));
+ i += 2;
+ } else if (atom[i].mode === "text") {
+ if (isInTextRun)
+ result += (_a3 = atom[i].value) != null ? _a3 : " ";
+ else {
+ isInTextRun = true;
+ result += atomToSpeakableFragment("text", atom[i]);
+ }
+ } else if (atom[i].isDigit()) {
+ if (isInDigitRun)
+ result += atom[i].asDigit();
+ else {
+ isInDigitRun = true;
+ result += atomToSpeakableFragment(mode, atom[i]);
+ }
+ } else {
+ isInDigitRun = false;
+ result += atomToSpeakableFragment(mode, atom[i]);
+ }
+ }
+ } else if (atom.mode === "text") {
+ if (atom.id && mode === "math")
+ result += '';
+ result += atom.value;
+ } else {
+ if (atom.id && mode === "math")
+ result += '';
+ let numer = "";
+ let denom = "";
+ let body = "";
+ let supsubHandled = false;
+ const { command } = atom;
+ switch (command) {
+ case "\\vec":
+ return "vector " + atomToSpeakableFragment(mode, atom.body);
+ case "\\acute":
+ return atomToSpeakableFragment(mode, atom.body) + " acute";
+ case "\\grave":
+ return atomToSpeakableFragment(mode, atom.body) + " grave";
+ case "\\dot":
+ return "dot over" + atomToSpeakableFragment(mode, atom.body);
+ case "\\ddot":
+ return "double dot over" + atomToSpeakableFragment(mode, atom.body);
+ case "\\mathring":
+ return "ring over" + atomToSpeakableFragment(mode, atom.body);
+ case "\\tilde":
+ case "\\widetilde":
+ return "tilde over" + atomToSpeakableFragment(mode, atom.body);
+ case "\\bar":
+ return atomToSpeakableFragment(mode, atom.body) + " bar";
+ case "\\breve":
+ return atomToSpeakableFragment(mode, atom.body) + " breve";
+ case "\\check":
+ case "\\widecheck":
+ return "check over " + atomToSpeakableFragment(mode, atom.body);
+ case "\\hat":
+ case "\\widehat":
+ return "hat over" + atomToSpeakableFragment(mode, atom.body);
+ case "\\overarc":
+ case "\\overparen":
+ case "\\wideparen":
+ return "arc over " + atomToSpeakableFragment(mode, atom.body);
+ case "\\underarc":
+ case "\\underparen":
+ return "arc under " + atomToSpeakableFragment(mode, atom.body);
+ }
+ switch (atom.type) {
+ case "prompt":
+ const input = atom.body.length > 1 ? 'start input . ' + atomToSpeakableFragment(mode, atom.body) + '. end input' : "blank";
+ result += ' ' + input + '. ' + ((_b3 = atom.correctness) != null ? _b3 : "") + ' . ';
+ break;
+ case "array":
+ const array = atom.array;
+ const environment = atom.environmentName;
+ if (Object.keys(ENVIRONMENTS_NAMES).includes(environment)) {
+ result += ` begin ${ENVIRONMENTS_NAMES[environment]} `;
+ for (let i = 0; i < array.length; i++) {
+ if (i > 0)
+ result += ",";
+ result += ` row ${i + 1} `;
+ for (let j = 0; j < array[i].length; j++) {
+ if (j > 0)
+ result += ",";
+ result += ` column ${j + 1}: `;
+ result += atomToSpeakableFragment("math", array[i][j]);
+ }
+ }
+ result += ` end ${ENVIRONMENTS_NAMES[environment]} `;
+ }
+ break;
+ case "group":
+ if (command === "\\ne")
+ result += " not equal ";
+ else if (command === "\\not") {
+ result += " not ";
+ result += atomToSpeakableFragment("math", atom.body);
+ } else {
+ result += atomToSpeakableFragment("math", atom.body);
+ }
+ break;
+ case "root":
+ result += atomToSpeakableFragment("math", atom.body);
+ break;
+ case "genfrac":
+ numer = atomToSpeakableFragment("math", atom.above);
+ denom = atomToSpeakableFragment("math", atom.below);
+ if (isAtomic(atom.above) && isAtomic(atom.below)) {
+ const COMMON_FRACTIONS = {
+ "1/2": " half ",
+ "1/3": " one third ",
+ "2/3": " two third",
+ "1/4": " one quarter ",
+ "3/4": " three quarter ",
+ "1/5": " one fifth ",
+ "2/5": " two fifths ",
+ "3/5": " three fifths ",
+ "4/5": " four fifths ",
+ "1/6": " one sixth ",
+ "5/6": " five sixths ",
+ "1/8": " one eight ",
+ "3/8": " three eights ",
+ "5/8": " five eights ",
+ "7/8": " seven eights ",
+ "1/9": " one ninth ",
+ "2/9": " two ninths ",
+ "4/9": " four ninths ",
+ "5/9": " five ninths ",
+ "7/9": " seven ninths ",
+ "8/9": " eight ninths "
+ // '1/10': ' one tenth ',
+ // '1/12': ' one twelfth ',
+ // 'x/2': ' X over 2',
+ };
+ const commonFraction = COMMON_FRACTIONS[atomicValue(atom.above) + "/" + atomicValue(atom.below)];
+ if (commonFraction)
+ result = commonFraction;
+ else
+ result += numer + " over " + denom;
+ } else {
+ result += ' the fraction ' + numer + ' over ' + denom + '. End fraction. ';
+ }
+ break;
+ case "surd":
+ body = atomToSpeakableFragment("math", atom.body);
+ if (atom.hasEmptyBranch("above")) {
+ result += isAtomic(atom.body) ? " the square root of " + body + " , " : ' the square root of ' + body + '. End square root';
+ } else {
+ let index = atomToSpeakableFragment("math", atom.above);
+ index = index.trim();
+ const index2 = index.replace(//g, "");
+ if (index2 === "3") {
+ result += ' the cube root of ' + body + '. End cube root';
+ } else if (index2 === "n") {
+ result += ' the nth root of ' + body + '. End root';
+ } else {
+ result += ' the root with index: ' + index + ', of ' + body + '. End root';
+ }
+ }
+ break;
+ case "leftright":
+ {
+ const delimAtom = atom;
+ result += (_c2 = delimAtom.leftDelim ? PRONUNCIATION[delimAtom.leftDelim] : void 0) != null ? _c2 : delimAtom.leftDelim;
+ result += atomToSpeakableFragment("math", atom.body);
+ result += (_d2 = delimAtom.rightDelim ? PRONUNCIATION[delimAtom.rightDelim] : void 0) != null ? _d2 : delimAtom.rightDelim;
+ }
+ break;
+ case "rule":
+ break;
+ case "overunder":
+ break;
+ case "overlap":
+ break;
+ case "macro":
+ const macroName = command.replace(/^\\/g, "");
+ const macro = getMacros()[macroName];
+ if (macro) {
+ if (macro == null ? void 0 : macro.expand)
+ result += atomToSpeakableFragment("math", atom.body);
+ else
+ result += `${macroName} `;
+ }
+ break;
+ case "placeholder":
+ result += "placeholder ";
+ break;
+ case "delim":
+ case "sizeddelim":
+ case "mord":
+ case "minner":
+ case "mbin":
+ case "mrel":
+ case "mpunct":
+ case "mopen":
+ case "mclose": {
+ if (command === "\\mathbin" || command === "\\mathrel" || command === "\\mathopen" || command === "\\mathclose" || command === "\\mathpunct" || command === "\\mathord" || command === "\\mathinner") {
+ result = atomToSpeakableFragment(mode, atom.body);
+ break;
+ }
+ let atomValue = atom.isDigit() ? atom.asDigit() : atom.value;
+ let latexValue = atom.command;
+ if (atom.type === "delim" || atom.type === "sizeddelim") {
+ latexValue = atom.value;
+ atomValue = latexValue;
+ }
+ if (mode === "text")
+ result += atomValue;
+ else {
+ if (atom.type === "mbin")
+ result += ' ';
+ if (atomValue) {
+ const value = PRONUNCIATION[atomValue] || (latexValue ? PRONUNCIATION[latexValue.trim()] : "");
+ if (value)
+ result += " " + value;
+ else {
+ const spokenName = latexValue ? getSpokenName(latexValue.trim()) : "";
+ result += spokenName ? spokenName : letter(atomValue);
+ }
+ } else
+ result += atomToSpeakableFragment("math", atom.body);
+ if (atom.type === "mbin")
+ result += ' ';
+ }
+ break;
+ }
+ case "mop":
+ case "operator":
+ case "extensible-symbol":
+ if (atom.value !== "\u200B") {
+ const trimLatex = atom.command;
+ if (trimLatex === "\\sum") {
+ if (!atom.hasEmptyBranch("superscript") && !atom.hasEmptyBranch("subscript")) {
+ let sup = atomToSpeakableFragment("math", atom.superscript);
+ sup = sup.trim();
+ let sub = atomToSpeakableFragment("math", atom.subscript);
+ sub = sub.trim();
+ result += ' the summation from ' + sub + ' to ' + sup + ' of ';
+ supsubHandled = true;
+ } else if (!atom.hasEmptyBranch("subscript")) {
+ let sub = atomToSpeakableFragment("math", atom.subscript);
+ sub = sub.trim();
+ result += ' the summation from ' + sub + ' of ';
+ supsubHandled = true;
+ } else
+ result += " the summation of";
+ } else if (trimLatex === "\\prod") {
+ if (!atom.hasEmptyBranch("superscript") && !atom.hasEmptyBranch("subscript")) {
+ let sup = atomToSpeakableFragment("math", atom.superscript);
+ sup = sup.trim();
+ let sub = atomToSpeakableFragment("math", atom.subscript);
+ sub = sub.trim();
+ result += ' the product from ' + sub + ' to ' + sup + ' of ';
+ supsubHandled = true;
+ } else if (!atom.hasEmptyBranch("subscript")) {
+ let sub = atomToSpeakableFragment("math", atom.subscript);
+ sub = sub.trim();
+ result += ' the product from ' + sub + ' of ';
+ supsubHandled = true;
+ } else
+ result += " the product of ";
+ } else if (trimLatex === "\\int") {
+ if (!atom.hasEmptyBranch("superscript") && !atom.hasEmptyBranch("subscript")) {
+ let sup = atomToSpeakableFragment("math", atom.superscript);
+ sup = sup.trim();
+ let sub = atomToSpeakableFragment("math", atom.subscript);
+ sub = sub.trim();
+ result += ' the integral from ' + emph(sub) + ' to ' + emph(sup) + ' of ';
+ supsubHandled = true;
+ } else
+ result += ' the integral of ';
+ } else if (typeof atom.value === "string") {
+ const value = (_e = PRONUNCIATION[atom.value]) != null ? _e : atom.command ? PRONUNCIATION[atom.command] : void 0;
+ result += value ? value : " " + atom.value;
+ } else if (atom.command) {
+ if (atom.command === "\\mathop")
+ result += atomToSpeakableFragment("math", atom.body);
+ else if (atom.command === "\\operatorname")
+ result += atomsAsText(atom.body);
+ else {
+ result += atom.command.startsWith("\\") ? " " + atom.command.slice(1) : " " + atom.command;
+ }
+ }
+ }
+ break;
+ case "enclose":
+ body = atomToSpeakableFragment("math", atom.body);
+ result += " crossed out " + body + ". End crossed out.";
+ break;
+ case "space":
+ case "spacing":
+ break;
+ }
+ if (!supsubHandled && !atom.hasEmptyBranch("superscript")) {
+ let sup = atomToSpeakableFragment(mode, atom.superscript);
+ sup = sup.trim();
+ const sup2 = sup.replace(/<[^>]*>/g, "");
+ if (isAtomic(atom.superscript)) {
+ if (mode === "math") {
+ const id = atomicID(atom.superscript);
+ if (id)
+ result += '';
+ }
+ if (sup2 === "\u2032")
+ result += " prime ";
+ else if (sup2 === "2")
+ result += " squared ";
+ else if (sup2 === "3")
+ result += " cubed ";
+ else if (Number.isNaN(Number.parseInt(sup2)))
+ result += " to the " + sup + "; ";
+ else {
+ result += ' to the ' + sup2 + " power; ";
+ }
+ } else if (Number.isNaN(Number.parseInt(sup2)))
+ result += " raised to the " + sup + "; ";
+ else {
+ result += ' raised to the ' + sup2 + " power; ";
+ }
+ }
+ if (!supsubHandled && !atom.hasEmptyBranch("subscript")) {
+ let sub = atomToSpeakableFragment("math", atom.subscript);
+ sub = sub.trim();
+ result += isAtomic(atom.subscript) ? " sub " + sub : " subscript " + sub + ". End subscript. ";
+ }
+ }
+ return result;
+}
+function atomToSpeakableText(atoms) {
+ var _a3, _b3;
+ if (window.MathfieldElement.textToSpeechRules === "sre" && ("sre" in window || "SRE" in window)) {
+ const mathML = toMathML(atoms);
+ if (mathML) {
+ if (window.MathfieldElement.textToSpeechMarkup) {
+ window.MathfieldElement.textToSpeechRulesOptions = (_a3 = window.MathfieldElement.textToSpeechRulesOptions) != null ? _a3 : {};
+ window.MathfieldElement.textToSpeechRulesOptions = __spreadProps(__spreadValues({}, window.MathfieldElement.textToSpeechRulesOptions), {
+ markup: window.MathfieldElement.textToSpeechMarkup
+ });
+ if (window.MathfieldElement.textToSpeechRulesOptions.markup === "ssml") {
+ window.MathfieldElement.textToSpeechRulesOptions = __spreadProps(__spreadValues({}, window.MathfieldElement.textToSpeechRulesOptions), {
+ markup: "ssml_step"
+ });
+ }
+ window.MathfieldElement.textToSpeechRulesOptions = __spreadProps(__spreadValues({}, window.MathfieldElement.textToSpeechRulesOptions), {
+ rate: window.MathfieldElement.speechEngineRate
+ });
+ }
+ const SRE = (_b3 = window["SRE"]) != null ? _b3 : window.sre.System.getInstance();
+ if (window.MathfieldElement.textToSpeechRulesOptions)
+ SRE.setupEngine(window.MathfieldElement.textToSpeechRulesOptions);
+ let result2 = "";
+ try {
+ result2 = SRE.toSpeech(mathML);
+ } catch (e) {
+ console.error(
+ `MathLive 0.98.5: \`SRE.toSpeech()\` runtime error`,
+ e
+ );
+ }
+ return result2;
+ }
+ return "";
+ }
+ let result = atomToSpeakableFragment("math", atoms);
+ if (window.MathfieldElement.textToSpeechMarkup === "ssml") {
+ let prosody = "";
+ if (window.MathfieldElement.speechEngineRate) {
+ prosody = '';
+ }
+ result = `` + prosody + "" + result + "
" + (prosody ? " " : "") + "";
+ } else if (window.MathfieldElement.textToSpeechMarkup === "mac" && osPlatform() === "macos") {
+ result = result.replace(//g, "").replace(//g, "[[emph+]]").replace(/<\/emphasis>/g, "").replace(/ /g, "[[slc $1]]").replace(/]*>/g, "").replace(/<\/say-as>/g, "");
+ } else {
+ result = result.replace(/<[^>]*>/g, "").replace(/\s{2,}/g, " ");
+ }
+ return result;
+}
+
+// src/formats/atom-to-ascii-math.ts
+var SPECIAL_IDENTIFIERS = {
+ "\\ne": "\u2260",
+ "\\neq": "\u2260",
+ "\u2212": "-",
+ // MINUS SIGN
+ "-": "-",
+ "\\alpha": "alpha",
+ "\\beta": "beta",
+ "\\gamma": "gamma",
+ "\\delta": "delta",
+ "\\epsilon": "epsilon",
+ "\\varepsilon": "varepsilon",
+ "\\zeta": "zeta",
+ "\\eta": "eta",
+ "\\theta": "theta",
+ "\\vartheta": "vartheta",
+ "\\iota": "iota",
+ "\\kappa": "kappa",
+ "\\lambda": "lambda",
+ "\\mu": "mu",
+ "\\nu": "nu",
+ "\\xi": "xi",
+ "\\pi": "pi",
+ "\\rho": "rho",
+ "\\sigma": "sigma",
+ "\\tau": "tau",
+ "\\upsilon": "upsilon",
+ "\\phi": "phi",
+ "\\varphi": "varphi",
+ "\\chi": "chi",
+ "\\psi": "psi",
+ "\\omega": "omega",
+ "\\Gamma": "Gamma",
+ "\\Delta": "Delta",
+ "\\Theta": "Theta",
+ "\\Lambda": "Lambda",
+ "\\Xi": "Xi",
+ "\\Pi": "Pi",
+ "\\Sigma": "Sigma",
+ "\\Phi": "Phi",
+ "\\Psi": "Psi",
+ "\\Omega": "Omega",
+ "\\exponentialE": "e",
+ "\\imaginaryI": "i",
+ "\\imaginaryJ": "j",
+ "\\!": " ",
+ "\\,": " ",
+ "\\:": " ",
+ "\\>": " ",
+ "\\;": " ",
+ "\\enskip": " ",
+ "\\enspace": " ",
+ "\\qquad": " ",
+ "\\quad": " ",
+ "\\infty": "oo"
+};
+var SPECIAL_OPERATORS = {
+ "\\pm": "+-",
+ "\\colon": ":",
+ "\\vert": "|",
+ "\\Vert": "||",
+ "\\mid": "|",
+ "\\lbrack": "[",
+ "\\rbrack": "]",
+ "\\lbrace": "{",
+ "\\rbrace": "}",
+ "\\lparen": "(",
+ "\\rparen": ")",
+ "\\langle": "(:",
+ "\\rangle": ":)",
+ "\\sum": " sum ",
+ "\\prod": " prod ",
+ "\\bigcap": " nnn ",
+ "\\bigcup": " uuu ",
+ "\\int": " int ",
+ "\\oint": " oint ",
+ "\\ge": ">=",
+ "\\le": "<=",
+ "\\ne": "!=",
+ "\\neq": "!=",
+ "\\lt": "<",
+ "\\gt": ">",
+ "\\gets": "<-",
+ "\\to": "->",
+ "\\land": " and ",
+ "\\lor": " or ",
+ "\\lnot": " not ",
+ "\\forall": " AA ",
+ "\\exists": " EE ",
+ "\\in": " in ",
+ "\\notin": " !in ",
+ "\\mapsto": "|->",
+ "\\implies": "=>",
+ "\\iff": "<=>",
+ "\\cdot": "*",
+ "\\ast": "**",
+ "\\star": "***",
+ "\\times": "xx",
+ "\\div": "-:",
+ "\\ltimes": "|><",
+ "\\rtimes": "><|",
+ "\\bowtie": "|><|",
+ "\\circ": "@"
+ // '\\lfloor': '\u230a',
+ // '\\rfloor': '\u230b',
+ // '\\lceil': '\u2308',
+ // '\\rceil': '\u2309',
+ // '\\vec': '⃗',
+ // '\\acute': '´',
+ // '\\grave': '`',
+ // '\\dot': '˙',
+ // '\\ddot': '¨',
+ // '\\tilde': '~',
+ // '\\bar': '¯',
+ // '\\breve': '˘',
+ // '\\check': 'ˇ',
+ // '\\hat': '^'
+};
+function joinAsciiMath(xs) {
+ let result = "";
+ for (const x of xs) {
+ const last = result[result.length - 1];
+ if (last !== void 0 && /\d/.test(last) && /^\d/.test(x))
+ result += " ";
+ result += x;
+ }
+ return result;
+}
+function atomToAsciiMath(atom) {
+ var _a3, _b3, _c2, _d2, _e, _f, _g, _h, _i, _j, _k, _l, _m;
+ if (!atom)
+ return "";
+ if (isArray(atom)) {
+ if (atom.length === 0)
+ return "";
+ if (atom[0].mode === "latex")
+ return atom.map(atomToAsciiMath).join("");
+ if (atom[0].mode === "text") {
+ let i2 = 0;
+ let text = "";
+ while (((_a3 = atom[i2]) == null ? void 0 : _a3.mode) === "text") {
+ text += atom[i2].body ? atomToAsciiMath(atom[i2].body) : atom[i2].value;
+ i2++;
+ }
+ return `"${text}" ${atomToAsciiMath(atom.slice(i2))}`;
+ }
+ let i = 0;
+ const result2 = [];
+ while (atom[i] && atom[i].mode === "math") {
+ let digits = "";
+ while (atom[i] && atom[i].type === "mord" && /\d/.test(atom[i].value))
+ digits += atom[i++].value;
+ if (digits)
+ result2.push(digits);
+ else
+ result2.push(atomToAsciiMath(atom[i++]));
+ }
+ result2.push(atomToAsciiMath(atom.slice(i)));
+ return joinAsciiMath(result2);
+ }
+ if (atom.mode === "text")
+ return `"${atom.value}"`;
+ let result = "";
+ const { command } = atom;
+ let m;
+ if (command === "\\placeholder")
+ return `(${atomToAsciiMath(atom.body)})`;
+ switch (atom.type) {
+ case "accent":
+ const accent = {
+ "\\vec": "vec",
+ "\\dot": "dot",
+ "\\ddot": "ddot",
+ "\\bar": "bar",
+ "\\hat": "hat",
+ "\\acute": "acute;",
+ // non-standard
+ "\\grave": "grave",
+ // non-standard
+ "\\tilde": "tilde",
+ // non-standard
+ "\\breve": "breave",
+ // non-standard
+ "\\check": "check"
+ // non-standard
+ }[command];
+ result = `${accent != null ? accent : ""} ${atomToAsciiMath(atom.body)} `;
+ break;
+ case "first":
+ return "";
+ case "latexgroup":
+ return atom.body.map((x) => x.value).join("");
+ case "group":
+ case "root":
+ result = (_b3 = SPECIAL_IDENTIFIERS[command]) != null ? _b3 : atomToAsciiMath(atom.body);
+ break;
+ case "genfrac":
+ {
+ const genfracAtom = atom;
+ if (genfracAtom.leftDelim || genfracAtom.rightDelim) {
+ result = genfracAtom.leftDelim === "." || !genfracAtom.leftDelim ? "{:" : genfracAtom.leftDelim;
+ }
+ if (genfracAtom.hasBarLine) {
+ result += "(";
+ result += atomToAsciiMath(genfracAtom.above);
+ result += ")/(";
+ result += atomToAsciiMath(genfracAtom.below);
+ result += ")";
+ } else {
+ result += "(" + atomToAsciiMath(genfracAtom.above) + "),";
+ result += "(" + atomToAsciiMath(genfracAtom.below) + ")";
+ }
+ if (genfracAtom.leftDelim || genfracAtom.rightDelim) {
+ result += genfracAtom.rightDelim === "." || !genfracAtom.rightDelim ? "{:" : genfracAtom.rightDelim;
+ }
+ }
+ break;
+ case "surd":
+ result += !atom.hasEmptyBranch("above") ? "root(" + atomToAsciiMath(atom.above) + ")(" + atomToAsciiMath(atom.body) + ")" : "sqrt(" + atomToAsciiMath(atom.body) + ")";
+ break;
+ case "latex":
+ result = atom.value;
+ break;
+ case "leftright":
+ {
+ const leftrightAtom = atom;
+ const lDelim = leftrightAtom.leftDelim;
+ result += lDelim === "." || !lDelim ? "{:" : lDelim;
+ result += atomToAsciiMath(leftrightAtom.body);
+ const rDelim = leftrightAtom.matchingRightDelim();
+ result += rDelim === "." || !rDelim ? ":}" : rDelim;
+ }
+ break;
+ case "sizeddelim":
+ case "delim":
+ result = atom.value;
+ break;
+ case "overlap":
+ break;
+ case "overunder":
+ break;
+ case "mord":
+ result = (_d2 = (_c2 = SPECIAL_IDENTIFIERS[command]) != null ? _c2 : command) != null ? _d2 : typeof atom.value === "string" ? atom.value : "";
+ if (result.startsWith("\\"))
+ result += " ";
+ m = command ? command.match(/{?\\char"([\dabcdefABCDEF]+)}?/) : null;
+ if (m) {
+ result = String.fromCodePoint(Number.parseInt("0x" + m[1]));
+ } else if (result.length > 0 && result.startsWith("\\")) {
+ result = typeof atom.value === "string" ? atom.value.charAt(0) : atom.command;
+ }
+ result = asciiStyle(result, atom.style);
+ break;
+ case "mbin":
+ case "mrel":
+ case "minner":
+ result = (_f = (_e = SPECIAL_IDENTIFIERS[command]) != null ? _e : SPECIAL_OPERATORS[command]) != null ? _f : atom.value;
+ break;
+ case "mopen":
+ case "mclose":
+ result = atom.value;
+ break;
+ case "mpunct":
+ result = (_g = SPECIAL_OPERATORS[command]) != null ? _g : command;
+ break;
+ case "mop":
+ case "operator":
+ case "extensible-symbol":
+ if (atom.value !== "\u200B") {
+ if (SPECIAL_OPERATORS[command])
+ result = SPECIAL_OPERATORS[command];
+ else {
+ result = command === "\\operatorname" ? atomToAsciiMath(atom.body) : (_h = atom.value) != null ? _h : command;
+ }
+ result += " ";
+ }
+ break;
+ case "array":
+ const array = atom.array;
+ const environment = atom.environmentName;
+ const rowDelim = (_i = {
+ "bmatrix": ["[", "]"],
+ "bmatrix*": ["[", "]"]
+ }[environment]) != null ? _i : ["(", ")"];
+ const rows = [];
+ for (const row of array) {
+ const cells = [];
+ for (const cell of row)
+ cells.push(rowDelim[0] + atomToAsciiMath(cell) + rowDelim[1]);
+ rows.push(cells.join(","));
+ }
+ const delim = (_j = {
+ "bmatrix": ["[", "]"],
+ "bmatrix*": ["[", "]"],
+ "cases": ["{", ":}"]
+ }[environment]) != null ? _j : ["(", ")"];
+ result = delim[0] + rows.join(",") + delim[1];
+ break;
+ case "box":
+ break;
+ case "spacing":
+ result = (_k = SPECIAL_IDENTIFIERS[command]) != null ? _k : " ";
+ break;
+ case "enclose":
+ result = "(" + atomToAsciiMath(atom.body) + ")";
+ break;
+ case "space":
+ result = " ";
+ break;
+ case "subsup":
+ result = "";
+ break;
+ case "macro":
+ result = (_m = (_l = SPECIAL_IDENTIFIERS[command]) != null ? _l : SPECIAL_OPERATORS[command]) != null ? _m : atomToAsciiMath(atom.body);
+ break;
+ }
+ if (!atom.hasEmptyBranch("subscript")) {
+ result += "_";
+ const arg = atomToAsciiMath(atom.subscript);
+ result += arg.length !== 1 ? `(${arg})` : arg;
+ }
+ if (!atom.hasEmptyBranch("superscript")) {
+ result += "^";
+ const arg = atomToAsciiMath(atom.superscript);
+ result += arg.length !== 1 ? `(${arg})` : arg;
+ }
+ return result;
+}
+function asciiStyle(body, style) {
+ if (!style)
+ return body;
+ let result = body;
+ if (style.variant === "double-struck")
+ result = `bbb "${result}"`;
+ if (style.variant === "script")
+ result = `cc "${result}"`;
+ if (style.variant === "fraktur")
+ result = `fr "${result}"`;
+ if (style.variant === "sans-serif")
+ result = `sf "${result}"`;
+ if (style.variant === "monospace")
+ result = `tt "${result}"`;
+ if (style.variantStyle === "bold")
+ result = `bb "${result}"`;
+ if (style.color)
+ return `color({${style.color}})(${result})`;
+ return result;
+}
+
+// src/public/mathlive-ssr.ts
+function convertLatexToMarkup(text, options) {
+ var _a3, _b3;
+ options != null ? options : options = {};
+ options.mathstyle = (_a3 = options.mathstyle) != null ? _a3 : "displaystyle";
+ const context = new Context({
+ from: __spreadProps(__spreadValues({}, getDefaultContext()), {
+ renderPlaceholder: () => new Box(160, { maxFontSize: 1 }),
+ letterShapeStyle: (_b3 = options == null ? void 0 : options.letterShapeStyle) != null ? _b3 : "tex"
+ }),
+ mathstyle: options.mathstyle
+ });
+ const root = new Atom({
+ mode: "math",
+ type: "root",
+ body: parseLatex(text, {
+ context,
+ parseMode: "math",
+ mathstyle: options.mathstyle
+ })
+ });
+ const box = root.render(context);
+ if (!box)
+ return "";
+ coalesce(applyInterBoxSpacing(box, context));
+ const struts = makeStruts(box, { classes: "ML__latex" });
+ return struts.toMarkup();
+}
+function validateLatex2(s) {
+ return validateLatex(s, { context: getDefaultContext() });
+}
+function convertLatexToMathMl(latex, options = {}) {
+ return toMathML(
+ parseLatex(latex, {
+ parseMode: "math",
+ args: () => "",
+ // Prevent #0 arguments to be replaced with placeholder (default behavior)
+ mathstyle: "displaystyle"
+ }),
+ options
+ );
+}
+function convertLatexToSpeakableText(latex) {
+ const atoms = parseLatex(latex, {
+ parseMode: "math",
+ mathstyle: "displaystyle"
+ });
+ return atomToSpeakableText(atoms);
+}
+var gComputeEngine;
+function convertMathJsonToLatex(json) {
+ var _a3, _b3;
+ if (!gComputeEngine) {
+ const ComputeEngineCtor = (_a3 = globalThis[Symbol.for("io.cortexjs.compute-engine")]) == null ? void 0 : _a3.ComputeEngine;
+ if (ComputeEngineCtor)
+ gComputeEngine = new ComputeEngineCtor();
+ else {
+ console.error(
+ `MathLive 0.98.5: The CortexJS Compute Engine library is not available.
+
+ Load the library, for example with:
+
+ import "https://unpkg.com/@cortex-js/compute-engine?module"`
+ );
+ }
+ }
+ return (_b3 = gComputeEngine == null ? void 0 : gComputeEngine.box(json).latex) != null ? _b3 : "";
+}
+function convertLatexToAsciiMath(latex, parseMode = "math") {
+ return atomToAsciiMath(
+ new Atom({ type: "root", body: parseLatex(latex, { parseMode }) })
+ );
+}
+function convertAsciiMathToLatex(ascii) {
+ return parseMathString(ascii, { format: "ascii-math" })[1];
+}
+
+// src/ui/colors/utils.ts
+function asRgb(color) {
+ if (typeof color === "string") {
+ const parsed = parseHex2(color);
+ if (!parsed)
+ throw new Error(`Invalid color: ${color}`);
+ return parsed;
+ }
+ if ("C" in color)
+ return oklchToRgb(color);
+ if ("a" in color)
+ return oklabToRgb(color);
+ return color;
+}
+function clampByte2(v) {
+ if (v < 0)
+ return 0;
+ if (v > 255)
+ return 255;
+ return Math.round(v);
+}
+function parseHex2(hex) {
+ if (!hex)
+ return void 0;
+ if (hex[0] !== "#")
+ return void 0;
+ hex = hex.slice(1);
+ let result;
+ if (hex.length <= 4) {
+ result = {
+ r: parseInt(hex[0] + hex[0], 16),
+ g: parseInt(hex[1] + hex[1], 16),
+ b: parseInt(hex[2] + hex[2], 16)
+ };
+ if (hex.length === 4)
+ result.a = parseInt(hex[3] + hex[3], 16) / 255;
+ } else {
+ result = {
+ r: parseInt(hex[0] + hex[1], 16),
+ g: parseInt(hex[2] + hex[3], 16),
+ b: parseInt(hex[4] + hex[5], 16)
+ };
+ if (hex.length === 8)
+ result.a = parseInt(hex[6] + hex[7], 16) / 255;
+ }
+ if (result && typeof result.a === "undefined")
+ result.a = 1;
+ return result;
+}
+function oklchToOklab(_) {
+ const [L, C, H] = [_.L, _.C, _.H];
+ const hRadians = H * Math.PI / 180;
+ const result = {
+ L,
+ a: C * Math.cos(hRadians),
+ b: C * Math.sin(hRadians)
+ };
+ if (_.alpha !== void 0)
+ result.alpha = _.alpha;
+ return result;
+}
+function oklabToOklch(_) {
+ const [L, a, b] = [_.L, _.a, _.b];
+ const C = Math.sqrt(a * a + b * b);
+ const hRadians = Math.atan2(b, a);
+ const H = hRadians * 180 / Math.PI;
+ const result = { L, C, H };
+ if (_.alpha !== void 0)
+ result.alpha = _.alpha;
+ return result;
+}
+function oklabToUnclippedRgb(_) {
+ const [l, a, b] = [_.L, _.a, _.b];
+ const L = Math.pow(
+ 0.9999999984505198 * l + 0.39633779217376786 * a + 0.2158037580607588 * b,
+ 3
+ );
+ const M = Math.pow(
+ 1.00000000888176 * l - 0.10556134232365635 * a - 0.0638541747717059 * b,
+ 3
+ );
+ const S2 = Math.pow(
+ l * 1.000000054672411 - 0.0894841820949657 * a - 1.2914855378640917 * b,
+ 3
+ );
+ const r = 4.076741661347994 * L - 3.307711590408193 * M + 0.230969928729428 * S2;
+ const g = -1.2684380040921763 * L + 2.6097574006633715 * M - 0.3413193963102197 * S2;
+ const bl = -0.004196086541837188 * L - 0.7034186144594493 * M + 1.7076147009309444 * S2;
+ const conv = (n) => {
+ const abs = Math.abs(n);
+ if (abs <= 31308e-7)
+ return n * 12.92;
+ return (Math.sign(n) || 1) * (1.055 * Math.pow(abs, 1 / 2.4) - 0.055);
+ };
+ return [conv(r), conv(g), conv(bl)];
+}
+function inGamut(rgb) {
+ const [r, g, b] = rgb;
+ return r >= 0 && r <= 1 && g >= 0 && g <= 1 && b >= 0 && b <= 1;
+}
+function clampRgb(rgb, alpha) {
+ let [r, g, b] = rgb;
+ r = clampByte2(r * 255);
+ g = clampByte2(g * 255);
+ b = clampByte2(b * 255);
+ return alpha !== void 0 ? { r, g, b, alpha } : { r, g, b };
+}
+function oklabToRgb(color) {
+ let [r, g, b] = oklabToUnclippedRgb(color);
+ if (inGamut([r, g, b]))
+ return clampRgb([r, g, b], color.alpha);
+ const oklch = oklabToOklch(color);
+ oklch.C = 0;
+ [r, g, b] = oklabToUnclippedRgb(oklchToOklab(oklch));
+ if (!inGamut([r, g, b]))
+ return clampRgb([r, g, b], color.alpha);
+ let low = 0;
+ let high = color.L;
+ let mid = (low + high) / 2;
+ oklch.C = mid;
+ const resolution = 0.36 / Math.pow(2, 12);
+ while (high - low > resolution) {
+ mid = (low + high) / 2;
+ oklch.C = mid;
+ [r, g, b] = oklabToUnclippedRgb(oklchToOklab(oklch));
+ if (inGamut([r, g, b]))
+ low = mid;
+ else
+ high = mid;
+ }
+ return clampRgb([r, g, b], color.alpha);
+}
+function oklchToRgb(_) {
+ return oklabToRgb(oklchToOklab(_));
+}
+
+// src/ui/colors/contrast.ts
+function apca(bgColor, fgColor) {
+ const bgRgb = asRgb(bgColor);
+ const fgRgb = asRgb(fgColor);
+ const normBG = 0.56;
+ const normTXT = 0.57;
+ const revTXT = 0.62;
+ const revBG = 0.65;
+ const blkThrs = 0.022;
+ const blkClmp = 1.414;
+ const loClip = 0.1;
+ const deltaYmin = 5e-4;
+ const scaleBoW = 1.14;
+ const loBoWoffset = 0.027;
+ const scaleWoB = 1.14;
+ const loWoBoffset = 0.027;
+ function fclamp(Y) {
+ return Y >= blkThrs ? Y : Y + (blkThrs - Y) ** blkClmp;
+ }
+ function linearize(val) {
+ const sign = val < 0 ? -1 : 1;
+ return sign * Math.pow(Math.abs(val), 2.4);
+ }
+ const Yfg = fclamp(
+ linearize(fgRgb.r / 255) * 0.2126729 + linearize(fgRgb.g / 255) * 0.7151522 + linearize(fgRgb.b / 255) * 0.072175
+ );
+ const Ybg = fclamp(
+ linearize(bgRgb.r / 255) * 0.2126729 + linearize(bgRgb.g / 255) * 0.7151522 + linearize(bgRgb.b / 255) * 0.072175
+ );
+ let S2, C, Sapc;
+ if (Math.abs(Ybg - Yfg) < deltaYmin)
+ C = 0;
+ else {
+ if (Ybg > Yfg) {
+ S2 = Ybg ** normBG - Yfg ** normTXT;
+ C = S2 * scaleBoW;
+ } else {
+ S2 = Ybg ** revBG - Yfg ** revTXT;
+ C = S2 * scaleWoB;
+ }
+ }
+ if (Math.abs(C) < loClip)
+ Sapc = 0;
+ else if (C > 0)
+ Sapc = C - loWoBoffset;
+ else
+ Sapc = C + loBoWoffset;
+ return Sapc * 100;
+}
+function contrast(bgColor, dark, light) {
+ light != null ? light : light = "#fff";
+ dark != null ? dark : dark = "#000";
+ const lightContrast = apca(bgColor, light);
+ const darkContrast = apca(bgColor, dark);
+ return Math.abs(lightContrast) > Math.abs(darkContrast) ? light : dark;
+}
+
+// src/ui/colors/css.ts
+function asHexColor(_) {
+ const rgb = asRgb(_);
+ let hexString = ((1 << 24) + (clampByte2(rgb.r) << 16) + (clampByte2(rgb.g) << 8) + clampByte2(rgb.b)).toString(16).slice(1);
+ if (rgb.alpha !== void 0 && rgb.alpha < 1)
+ hexString += ("00" + Math.round(rgb.alpha * 255).toString(16)).slice(-2);
+ if (hexString[0] === hexString[1] && hexString[2] === hexString[3] && hexString[4] === hexString[5] && hexString[6] === hexString[7]) {
+ hexString = hexString[0] + hexString[2] + hexString[4] + (rgb.alpha !== void 0 && rgb.alpha < 1 ? hexString[6] : "");
+ }
+ return "#" + hexString;
+}
+
+// src/editor/default-menu.ts
+function getSelectionPlainString(mf) {
+ const atoms = getSelectionAtoms(mf);
+ let result = "";
+ for (const atom of atoms) {
+ if (typeof atom.value !== "string")
+ return "";
+ result += atom.value;
+ }
+ return result;
+}
+function getSelectionAtoms(mf) {
+ const model = mf.model;
+ const ranges = model.selection.ranges;
+ if (ranges.length !== 1)
+ return [];
+ return mf.model.getAtoms(ranges[0]);
+}
+function validVariantAtom(mf, variant) {
+ const atoms = getSelectionAtoms(mf);
+ if (atoms.length !== 1)
+ return false;
+ const repertoire = VARIANT_REPERTOIRE[variant];
+ if (!repertoire)
+ return false;
+ if (repertoire.test(atoms[0].value))
+ return true;
+ return false;
+}
+function validVariantStyleSelection(mf, _variantStyle) {
+ return getSelectionPlainString(mf).length > 0;
+}
+function getVariantSubmenu(mf) {
+ return [
+ variantMenuItem(mf, "double-struck", "mathbb", "tooltip.blackboard"),
+ variantMenuItem(mf, "fraktur", "mathfrak", "tooltip.fraktur"),
+ variantMenuItem(mf, "calligraphic", "mathcal", "tooltip.caligraphic"),
+ variantStyleMenuItem(mf, "up", "mathrm", "tooltip.roman-upright"),
+ variantStyleMenuItem(mf, "bold", "mathbf", "tooltip.bold"),
+ variantStyleMenuItem(mf, "italic", "mathit", "tooltip.italic")
+ ];
+}
+function getAccentSubmenu(mf) {
+ return [
+ {
+ label: () => convertLatexToMarkup(`\\vec{${getSelectionPlainString(mf)}}`),
+ visible: () => getSelectionPlainString(mf).length === 1,
+ onMenuSelect: () => mf.insert("\\vec{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(
+ `\\overrightarrow{${getSelectionPlainString(mf)}}`
+ ),
+ visible: () => getSelectionPlainString(mf).length > 0,
+ onMenuSelect: () => mf.insert("\\overrightarrow{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(`\\overleftarrow{${getSelectionPlainString(mf)}}`),
+ visible: () => getSelectionPlainString(mf).length > 0,
+ onMenuSelect: () => mf.insert("\\overleftarrow{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(`\\dot{${getSelectionPlainString(mf)}}`),
+ visible: () => getSelectionPlainString(mf).length === 1,
+ onMenuSelect: () => mf.insert("\\dot{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(`\\ddot{${getSelectionPlainString(mf)}}`),
+ visible: () => getSelectionPlainString(mf).length === 1,
+ onMenuSelect: () => mf.insert("\\ddot{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(`\\bar{${getSelectionPlainString(mf)}}`),
+ visible: () => getSelectionPlainString(mf).length === 1,
+ onMenuSelect: () => mf.insert("\\bar{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(`\\overline{${getSelectionPlainString(mf)}}`),
+ visible: () => getSelectionPlainString(mf).length > 0,
+ onMenuSelect: () => mf.insert("\\overline{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(`\\overgroup{${getSelectionPlainString(mf)}}`),
+ visible: () => getSelectionPlainString(mf).length > 0,
+ onMenuSelect: () => mf.insert("\\overgroup{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(`\\overbrace{${getSelectionPlainString(mf)}}`),
+ visible: () => getSelectionPlainString(mf).length > 0,
+ onMenuSelect: () => mf.insert("\\overbrace{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(`\\underline{${getSelectionPlainString(mf)}}`),
+ visible: () => getSelectionPlainString(mf).length > 0,
+ onMenuSelect: () => mf.insert("\\underline{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(`\\undergroup{${getSelectionPlainString(mf)}}`),
+ visible: () => getSelectionPlainString(mf).length > 0,
+ onMenuSelect: () => mf.insert("\\undergroup{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(`\\underbrace{${getSelectionPlainString(mf)}}`),
+ visible: () => getSelectionPlainString(mf).length > 0,
+ onMenuSelect: () => mf.insert("\\underbrace{#@}", { selectionMode: "item" })
+ }
+ ];
+}
+function getDecorationSubmenu(mf) {
+ return [
+ // {
+ // label: () => convertLatexToMarkup(`\\cancel{${getSelection(mf)}}`),
+ // // visible: () => getSelection(mf).length > 0,
+ // onMenuSelect: () => mf.insert('\\cancel{#@}', { selectionMode: 'item' }),
+ // },
+ {
+ label: () => convertLatexToMarkup(`\\boxed{${mf.getValue(mf.model.selection)}}}`),
+ // visible: () => getSelection(mf).length > 0,
+ onMenuSelect: () => mf.insert("\\boxed{#@}", { selectionMode: "item" })
+ },
+ {
+ label: () => convertLatexToMarkup(
+ `\\bbox[5px, border: 2px solid red]{${mf.getValue(
+ mf.model.selection
+ )}}`
+ ),
+ // visible: () => getSelection(mf).length > 0,
+ onMenuSelect: () => mf.insert("\\bbox[5px, border: 2px solid red]{#@}", {
+ selectionMode: "item"
+ })
+ },
+ {
+ label: () => convertLatexToMarkup(
+ `\\bbox[5px, border: 2px dashed black]{${mf.getValue(
+ mf.model.selection
+ )}}`
+ ),
+ // visible: () => getSelection(mf).length > 0,
+ onMenuSelect: () => mf.insert("\\bbox[5px, border: 2px dashed black]{#@}", {
+ selectionMode: "item"
+ })
+ }
+ ];
+}
+function getBackgroundColorSubmenu(mf) {
+ const result = [];
+ for (const color of Object.keys(BACKGROUND_COLORS)) {
+ result.push({
+ class: (asHexColor(contrast(BACKGROUND_COLORS[color])) === "#000" ? "dark-contrast" : "light-contrast") + " menu-swatch",
+ label: ``,
+ ariaLabel: () => {
+ var _a3;
+ return (_a3 = localize(color)) != null ? _a3 : color;
+ },
+ checked: () => {
+ var _a3;
+ return { some: "mixed", all: true }[(_a3 = mf.queryStyle({ backgroundColor: color })) != null ? _a3 : false];
+ },
+ onMenuSelect: () => {
+ mf.applyStyle({ backgroundColor: color }, { operation: "toggle" });
+ mf.adoptStyle = "none";
+ }
+ });
+ }
+ return result;
+}
+function getColorSubmenu(mf) {
+ const result = [];
+ for (const color of Object.keys(FOREGROUND_COLORS)) {
+ result.push({
+ class: (contrast(FOREGROUND_COLORS[color]) === "#000" ? "dark-contrast" : "light-contrast") + " menu-swatch",
+ label: ``,
+ ariaLabel: () => {
+ var _a3;
+ return (_a3 = localize(color)) != null ? _a3 : color;
+ },
+ checked: () => {
+ var _a3;
+ return { some: "mixed", all: true }[(_a3 = mf.queryStyle({ color })) != null ? _a3 : false];
+ },
+ onMenuSelect: () => {
+ mf.applyStyle({ color }, { operation: "toggle" });
+ mf.adoptStyle = "none";
+ }
+ });
+ }
+ return result;
+}
+var InsertMatrixMenuItem = class extends _MenuItemState {
+ constructor(decl, parent, row, col) {
+ super(decl, parent);
+ this.row = row;
+ this.col = col;
+ }
+ set active(value) {
+ const cells = this.parentMenu.children;
+ if (value) {
+ for (const cell of cells) {
+ cell.element.classList.toggle(
+ "active",
+ cell.row <= this.row && cell.col <= this.col
+ );
+ }
+ } else
+ for (const cell of cells)
+ cell.element.classList.remove("active");
+ }
+};
+function getInsertMatrixSubmenu(mf) {
+ const result = [];
+ for (let row = 1; row <= 5; row++) {
+ for (let col = 1; col <= 5; col++) {
+ result.push({
+ onCreate: (decl, parent) => new InsertMatrixMenuItem(decl, parent, row, col),
+ label: `\u2610`,
+ tooltip: () => localize("tooltip.row-by-col", row, col),
+ data: { row, col },
+ onMenuSelect: () => {
+ mf.insert(
+ `\\begin{pmatrix}${Array(row).fill(Array(col).fill("#?").join(" & ")).join("\\\\")}\\end{pmatrix}`,
+ {
+ selectionMode: "item"
+ }
+ );
+ }
+ });
+ }
+ }
+ return result;
+}
+function getDefaultMenuItems(mf) {
+ return [
+ // {
+ // label: 'Show Virtual Keyboard',
+ // onMenuSelect: () => window.mathVirtualKeyboard.show({ animate: true }),
+ // visible: () => window.mathVirtualKeyboard.visible === false,
+ // },
+ // {
+ // label: 'Hide Virtual Keyboard',
+ // onMenuSelect: () => window.mathVirtualKeyboard.hide({ animate: true }),
+ // visible: () => window.mathVirtualKeyboard.visible === true,
+ // },
+ {
+ label: () => localize("menu.array.add row above"),
+ id: "add-row-above",
+ onMenuSelect: () => mf.executeCommand("addRowBefore"),
+ visible: () => inMatrix(mf)
+ },
+ {
+ label: () => localize("menu.array.add row below"),
+ id: "add-row-below",
+ onMenuSelect: () => mf.executeCommand("addRowAfter"),
+ visible: () => inMatrix(mf)
+ },
+ {
+ label: () => localize("menu.array.add column before"),
+ id: "add-column-before",
+ onMenuSelect: () => mf.executeCommand("addColumnBefore"),
+ visible: () => inMatrix(mf),
+ enabled: () => {
+ const array = mf.model.parentEnvironment;
+ if (!array)
+ return false;
+ const [rows, _cols] = shape(mf);
+ return rows < array.maxColumns;
+ }
+ },
+ {
+ label: () => localize("menu.array.add column after"),
+ id: "add-column-after",
+ onMenuSelect: () => mf.executeCommand("addColumnAfter"),
+ visible: () => inMatrix(mf)
+ },
+ {
+ type: "divider"
+ },
+ {
+ label: () => localize("menu.array.delete row"),
+ id: "delete-row",
+ onMenuSelect: () => mf.executeCommand("removeRow"),
+ visible: () => inMatrix(mf)
+ },
+ {
+ label: () => localize("menu.array.delete column"),
+ id: "delete-column",
+ onMenuSelect: () => mf.executeCommand("removeColumn"),
+ visible: () => inMatrix(mf)
+ },
+ {
+ type: "divider"
+ },
+ {
+ label: () => localize("menu.borders"),
+ visible: () => (isMatrixSelected(mf) || inMatrix(mf)) && mf.isSelectionEditable,
+ submenu: [
+ {
+ label: " \u22F1 ",
+ id: "environment-no-border",
+ onMenuSelect: () => performSetEnvironment(mf, "matrix")
+ },
+ {
+ label: "(\u22F1)",
+ id: "environment-parentheses",
+ onMenuSelect: () => performSetEnvironment(mf, "pmatrix")
+ },
+ {
+ label: "[\u22F1]",
+ id: "environment-brackets",
+ onMenuSelect: () => performSetEnvironment(mf, "bmatrix")
+ },
+ {
+ label: "|\u22F1|",
+ id: "environment-bar",
+ onMenuSelect: () => performSetEnvironment(mf, "vmatrix")
+ },
+ {
+ label: "{\u22F1}",
+ id: "environment-braces",
+ onMenuSelect: () => performSetEnvironment(mf, "Bmatrix")
+ }
+ ],
+ submenuClass: "border-submenu"
+ },
+ {
+ type: "divider"
+ },
+ {
+ label: () => localize("menu.insert matrix"),
+ id: "insert-matrix",
+ visible: () => mf.isSelectionEditable,
+ submenu: getInsertMatrixSubmenu(mf),
+ submenuClass: "insert-matrix-submenu",
+ columnCount: 5
+ },
+ {
+ label: () => localize("menu.mode"),
+ id: "mode",
+ visible: () => mf.isSelectionEditable && mf.model.selectionIsCollapsed,
+ submenu: [
+ {
+ label: () => localize("menu.mode-math"),
+ id: "mode-math",
+ onMenuSelect: () => {
+ complete(mf, "accept-all");
+ mf.executeCommand(["switchMode", "math"]);
+ },
+ checked: () => mf.model.mode === "math"
+ },
+ {
+ label: () => localize("menu.mode-text"),
+ id: "mode-text",
+ onMenuSelect: () => {
+ complete(mf, "accept-all");
+ mf.executeCommand(["switchMode", "text"]);
+ },
+ checked: () => mf.model.mode === "text"
+ },
+ {
+ label: () => localize("menu.mode-latex"),
+ id: "mode-latex",
+ onMenuSelect: () => mf.executeCommand(["switchMode", "latex"]),
+ checked: () => mf.model.mode === "latex"
+ }
+ ]
+ },
+ {
+ type: "divider"
+ },
+ {
+ label: () => localize("menu.font-style"),
+ id: "variant",
+ visible: () => mf.isSelectionEditable,
+ submenu: getVariantSubmenu(mf),
+ submenuClass: "variant-submenu"
+ },
+ {
+ label: () => localize("menu.color"),
+ id: "color",
+ visible: () => mf.isSelectionEditable,
+ submenu: getColorSubmenu(mf),
+ columnCount: 4,
+ submenuClass: "swatches-submenu"
+ },
+ {
+ label: () => localize("menu.background-color"),
+ id: "background-color",
+ visible: () => mf.isSelectionEditable,
+ submenu: getBackgroundColorSubmenu(mf),
+ columnCount: 4,
+ submenuClass: "swatches-submenu"
+ },
+ {
+ label: () => localize("menu.accent"),
+ id: "accent",
+ visible: () => mf.isSelectionEditable,
+ submenu: getAccentSubmenu(mf),
+ submenuClass: "variant-submenu"
+ },
+ {
+ label: () => localize("menu.decoration"),
+ id: "decoration",
+ visible: () => mf.isSelectionEditable && getSelectionPlainString(mf).length > 0,
+ submenu: getDecorationSubmenu(mf),
+ submenuClass: "variant-submenu"
+ },
+ {
+ type: "divider"
+ },
+ {
+ label: () => localize("menu.evaluate"),
+ id: "ce-evaluate",
+ visible: () => mf.isSelectionEditable && window.MathfieldElement.computeEngine !== null,
+ onMenuSelect: () => {
+ const latex = evaluate(mf);
+ if (!latex) {
+ mf.model.announce("plonk");
+ return;
+ }
+ if (mf.model.selectionIsCollapsed) {
+ mf.model.position = mf.model.lastOffset;
+ mf.insert(`=${latex}`, {
+ insertionMode: "insertAfter",
+ selectionMode: "item"
+ });
+ } else {
+ mf.insert(latex, {
+ insertionMode: "replaceSelection",
+ selectionMode: "item"
+ });
+ }
+ }
+ },
+ {
+ label: () => localize("menu.simplify"),
+ id: "ce-simplify",
+ visible: () => mf.isSelectionEditable && window.MathfieldElement.computeEngine !== null,
+ onMenuSelect: () => {
+ var _a3, _b3;
+ if (mf.model.selectionIsCollapsed) {
+ const result = (_a3 = mf.expression) == null ? void 0 : _a3.simplify();
+ mf.model.position = mf.model.lastOffset;
+ if (!result) {
+ mf.model.announce("plonk");
+ return;
+ }
+ mf.insert(`=${result.latex}`, {
+ insertionMode: "insertAfter",
+ selectionMode: "item"
+ });
+ } else {
+ const result = (_b3 = window.MathfieldElement.computeEngine) == null ? void 0 : _b3.parse(mf.getValue(mf.model.selection)).simplify();
+ if (!result) {
+ mf.model.announce("plonk");
+ return;
+ }
+ mf.insert(result.latex, {
+ insertionMode: "replaceSelection",
+ selectionMode: "item"
+ });
+ }
+ }
+ },
+ {
+ label: () => {
+ var _a3;
+ if (window.MathfieldElement.computeEngine === null)
+ return "";
+ const unknown = (_a3 = mf.expression) == null ? void 0 : _a3.unknowns[0];
+ if (unknown)
+ return localize("menu.solve-for", convertLatexToMarkup(unknown));
+ return localize("menu.solve");
+ },
+ id: "ce-solve",
+ visible: () => {
+ var _a3;
+ return mf.isSelectionEditable && window.MathfieldElement.computeEngine !== null && ((_a3 = mf.expression) == null ? void 0 : _a3.unknowns.length) === 1 && mf.expression.unknowns[0] !== "Nothing";
+ },
+ onMenuSelect: () => {
+ var _a3;
+ const expr = mf.expression;
+ const unknown = expr == null ? void 0 : expr.unknowns[0];
+ const results = (_a3 = expr.solve(unknown)) == null ? void 0 : _a3.map((x) => {
+ var _a4;
+ return (_a4 = x.simplify().latex) != null ? _a4 : "";
+ });
+ if (!results) {
+ mf.model.announce("plonk");
+ return;
+ }
+ mf.insert(
+ `${unknown}=${results.length === 1 ? results[0] : "\\left\\lbrace" + (results == null ? void 0 : results.join(", ")) + "\\right\\rbrace"}`,
+ {
+ insertionMode: "replaceAll",
+ selectionMode: "item"
+ }
+ );
+ }
+ },
+ {
+ type: "divider"
+ },
+ {
+ label: () => localize("menu.cut"),
+ onMenuSelect: () => mf.executeCommand("cutToClipboard"),
+ visible: () => !mf.options.readOnly && mf.isSelectionEditable,
+ keyboardShortcut: "meta+X"
+ },
+ // {
+ // label: 'Copy',
+ // onMenuSelect: () => mf.executeCommand('copyToClipboard'),
+ // },
+ {
+ label: () => localize("menu.copy"),
+ id: "copy",
+ submenu: [
+ {
+ label: () => localize("menu.copy-as-latex"),
+ id: "copy-latex",
+ onMenuSelect: () => ModeEditor.copyToClipboard(mf, "latex"),
+ keyboardShortcut: "meta+C"
+ },
+ {
+ label: () => localize("menu.copy-as-ascii-math"),
+ id: "copy-ascii-math",
+ onMenuSelect: () => ModeEditor.copyToClipboard(mf, "ascii-math")
+ },
+ {
+ label: () => localize("menu.copy-as-mathml"),
+ id: "copy-math-ml",
+ onMenuSelect: () => ModeEditor.copyToClipboard(mf, "math-ml")
+ }
+ ]
+ },
+ {
+ label: () => localize("menu.paste"),
+ id: "paste",
+ onMenuSelect: () => mf.executeCommand("pasteFromClipboard"),
+ visible: () => mf.hasEditableContent,
+ keyboardShortcut: "meta+V"
+ },
+ {
+ label: () => localize("menu.select-all"),
+ id: "select-all",
+ keyboardShortcut: "meta+A",
+ onMenuSelect: () => mf.executeCommand("selectAll")
+ }
+ ];
+}
+function inMatrix(mf) {
+ var _a3;
+ return !!((_a3 = mf.model.parentEnvironment) == null ? void 0 : _a3.array);
+}
+function isMatrixSelected(mf) {
+ return mf.model.at(mf.model.position).type === "array";
+}
+function shape(mf) {
+ var _a3;
+ const array = (_a3 = mf.model.parentEnvironment) == null ? void 0 : _a3.array;
+ if (!array)
+ return [0, 0];
+ return [
+ array.length,
+ array.reduce((acc, col) => Math.max(acc, col.length), 0)
+ ];
+}
+function performSetEnvironment(mf, env) {
+ removeSuggestion(mf);
+ mf.flushInlineShortcutBuffer();
+ setEnvironment(mf.model, env);
+ requestUpdate(mf);
+}
+function evaluate(mf) {
+ var _a3, _b3;
+ let expr;
+ if (mf.model.selectionIsCollapsed) {
+ expr = (_a3 = window.MathfieldElement.computeEngine) == null ? void 0 : _a3.parse(mf.getValue(), {
+ canonical: false
+ });
+ } else {
+ expr = (_b3 = window.MathfieldElement.computeEngine) == null ? void 0 : _b3.parse(
+ mf.getValue(mf.model.selection),
+ { canonical: false }
+ );
+ }
+ if (!expr)
+ return "";
+ let result = expr.evaluate();
+ if (result.isSame(expr))
+ result = expr.N();
+ return result.latex;
+}
+function variantMenuItem(mf, variant, command, tooltip) {
+ return {
+ label: () => convertLatexToMarkup(`\\${command}{${getSelectionPlainString(mf)}}`),
+ tooltip: () => {
+ var _a3;
+ return (_a3 = localize(tooltip)) != null ? _a3 : tooltip;
+ },
+ visible: () => validVariantAtom(mf, variant),
+ checked: () => {
+ var _a3;
+ return { some: "mixed", all: true }[(_a3 = mf.queryStyle({ variant })) != null ? _a3 : false];
+ },
+ onMenuSelect: () => {
+ mf.applyStyle({ variant }, { operation: "toggle" });
+ mf.adoptStyle = "none";
+ }
+ };
+}
+function variantStyleMenuItem(mf, variantStyle, command, tooltip) {
+ return {
+ label: () => convertLatexToMarkup(`\\${command}{${getSelectionPlainString(mf)}}`),
+ tooltip: () => {
+ var _a3;
+ return (_a3 = localize(tooltip)) != null ? _a3 : tooltip;
+ },
+ visible: () => validVariantStyleSelection(mf, variantStyle),
+ checked: () => {
+ var _a3;
+ return { some: "mixed", all: true }[(_a3 = mf.queryStyle({ variantStyle })) != null ? _a3 : false];
+ },
+ onMenuSelect: () => {
+ mf.applyStyle({ variantStyle }, { operation: "toggle" });
+ mf.adoptStyle = "none";
+ }
+ };
+}
+
+// src/editor/speech.ts
+function speakableText(prefix, atoms) {
+ return prefix + atomToSpeakableText(atoms);
+}
+register2(
+ {
+ speak: (mathfield, scope, options) => {
+ return speak(mathfield, scope, options);
+ }
+ },
+ { target: "mathfield" }
+);
+function speak(mathfield, scope, speakOptions) {
+ var _a3, _b3;
+ speakOptions = speakOptions != null ? speakOptions : { withHighlighting: false };
+ const { model } = mathfield;
+ function getAtoms(scope2) {
+ let result = null;
+ switch (scope2) {
+ case "all":
+ result = model.root;
+ break;
+ case "selection":
+ result = model.getAtoms(model.selection);
+ break;
+ case "left": {
+ result = model.getAtoms(
+ model.offsetOf(model.at(model.position).leftSibling),
+ model.position
+ );
+ break;
+ }
+ case "right": {
+ result = model.getAtoms(
+ model.position,
+ model.offsetOf(model.at(model.position).rightSibling)
+ );
+ break;
+ }
+ case "group":
+ result = model.getAtoms(model.getSiblingsRange(model.position));
+ break;
+ case "parent": {
+ const { parent } = model.at(model.position);
+ if (parent == null ? void 0 : parent.parent)
+ result = parent;
+ else
+ result = model.root;
+ break;
+ }
+ default:
+ result = model.root;
+ }
+ return result;
+ }
+ function getFailedSpeech(scope2) {
+ let result = "";
+ switch (scope2) {
+ case "all":
+ console.log("Internal failure: speak all failed");
+ break;
+ case "selection":
+ result = "no selection";
+ break;
+ case "left":
+ result = "at start";
+ break;
+ case "right":
+ result = "at end";
+ break;
+ case "group":
+ console.log("Internal failure: speak group failed");
+ break;
+ case "parent":
+ result = "no parent";
+ break;
+ default:
+ console.log('unknown speak_ param value: "' + scope2 + '"');
+ break;
+ }
+ return result;
+ }
+ const atoms = getAtoms(scope);
+ if (atoms === null) {
+ (_b3 = (_a3 = window.MathfieldElement).speakHook) == null ? void 0 : _b3.call(_a3, getFailedSpeech(scope));
+ return false;
+ }
+ if (speakOptions.withHighlighting || window.MathfieldElement.speechEngine === "amazon") {
+ window.MathfieldElement.textToSpeechMarkup = window.sre && window.MathfieldElement.textToSpeechRules === "sre" ? "ssml_step" : "ssml";
+ }
+ const text = atomToSpeakableText(atoms);
+ if (isBrowser() && speakOptions.withHighlighting) {
+ globalMathLive().readAloudMathfield = mathfield;
+ render(mathfield, { forHighlighting: true });
+ if (window.MathfieldElement.readAloudHook)
+ window.MathfieldElement.readAloudHook(mathfield.field, text);
+ } else if (window.MathfieldElement.speakHook)
+ window.MathfieldElement.speakHook(text);
+ return false;
+}
+function defaultSpeakHook(text) {
+ var _a3, _b3;
+ if (!isBrowser()) {
+ console.log("Speak:", text);
+ return;
+ }
+ if (!window.MathfieldElement.speechEngine || window.MathfieldElement.speechEngine === "local") {
+ const utterance = new SpeechSynthesisUtterance(text);
+ window.speechSynthesis.speak(utterance);
+ } else if (window.MathfieldElement.speechEngine === "amazon") {
+ if (!("AWS" in window)) {
+ console.error(
+ `MathLive 0.98.5: AWS SDK not loaded. See https://www.npmjs.com/package/aws-sdk`
+ );
+ } else {
+ const polly = new window.AWS.Polly({ apiVersion: "2016-06-10" });
+ const parameters = {
+ OutputFormat: "mp3",
+ VoiceId: (_a3 = window.MathfieldElement.speechEngineVoice) != null ? _a3 : "Joanna",
+ Engine: [
+ "Amy",
+ "Emma",
+ "Brian",
+ "Ivy",
+ "Joanna",
+ "Kendra",
+ "Kimberly",
+ "Salli",
+ "Joey",
+ "Justin",
+ "Matthew"
+ ].includes((_b3 = window.MathfieldElement.speechEngineVoice) != null ? _b3 : "Joanna") ? "neural" : "standard",
+ // SampleRate: '24000',
+ Text: text,
+ TextType: "ssml"
+ // SpeechMarkTypes: ['ssml]'
+ };
+ polly.synthesizeSpeech(parameters, (err, data) => {
+ if (err) {
+ console.trace(
+ `MathLive 0.98.5: \`polly.synthesizeSpeech()\` error: ${err}`
+ );
+ } else if (data == null ? void 0 : data.AudioStream) {
+ const uInt8Array = new Uint8Array(data.AudioStream);
+ const blob = new Blob([uInt8Array.buffer], { type: "audio/mpeg" });
+ const url = URL.createObjectURL(blob);
+ const audioElement = new Audio(url);
+ audioElement.play().catch((error) => console.log(error));
+ } else
+ console.log("polly.synthesizeSpeech():", data);
+ });
+ }
+ } else if (window.MathfieldElement.speechEngine === "google") {
+ console.error(
+ `MathLive 0.98.5: The Google speech engine is not supported yet. Please come again.`
+ );
+ }
+}
+
+// src/editor/a11y.ts
+function relationName(atom) {
+ var _a3;
+ let result = void 0;
+ if (atom.parent.type === "prompt") {
+ if (atom.parentBranch === "body")
+ result = "prompt";
+ } else if (atom.parentBranch === "body") {
+ result = !atom.type ? "parent" : (_a3 = {
+ enclose: "cross out",
+ leftright: "delimiter",
+ surd: "square root",
+ root: "math field",
+ mop: "operator",
+ // E.g. `\operatorname`, a `mop` with a body
+ first: "first"
+ }[atom.type]) != null ? _a3 : "parent";
+ } else if (atom.parent.type === "genfrac") {
+ if (atom.parentBranch === "above")
+ return "numerator";
+ if (atom.parentBranch === "below")
+ return "denominator";
+ } else if (atom.parent.type === "surd") {
+ if (atom.parentBranch === "above")
+ result = "index";
+ } else if (atom.parentBranch === "superscript")
+ result = "superscript";
+ else if (atom.parentBranch === "subscript")
+ result = "subscript";
+ if (!result)
+ console.log("unknown relationship");
+ return result != null ? result : "parent";
+}
+function defaultAnnounceHook(mathfield, action, previousPosition, atoms) {
+ let liveText = "";
+ if (action === "plonk") {
+ window.MathfieldElement.playSound("plonk");
+ mathfield.flushInlineShortcutBuffer();
+ } else if (action === "delete")
+ liveText = speakableText("deleted: ", atoms);
+ else if (action === "focus" || action.includes("move")) {
+ liveText = getRelationshipAsSpokenText(mathfield.model, previousPosition) + (mathfield.model.selectionIsCollapsed ? "" : "selected: ") + getNextAtomAsSpokenText(mathfield.model);
+ } else if (action === "replacement") {
+ liveText = speakableText("", mathfield.model.at(mathfield.model.position));
+ } else if (action === "line") {
+ const label = speakableText("", mathfield.model.root);
+ mathfield.keyboardDelegate.setAriaLabel(label);
+ } else
+ liveText = atoms ? speakableText(action + " ", atoms) : action;
+ if (liveText) {
+ const ariaLiveChangeHack = mathfield.ariaLiveText.textContent.includes(
+ "\xA0"
+ ) ? " \u202F " : " \xA0 ";
+ mathfield.ariaLiveText.textContent = liveText + ariaLiveChangeHack;
+ }
+}
+function getRelationshipAsSpokenText(model, previousOffset) {
+ if (Number.isNaN(previousOffset))
+ return "";
+ const previous = model.at(previousOffset);
+ if (!previous)
+ return "";
+ if (previous.treeDepth <= model.at(model.position).treeDepth)
+ return "";
+ let result = "";
+ let ancestor = previous.parent;
+ const newParent = model.at(model.position).parent;
+ while (ancestor !== model.root && ancestor !== newParent) {
+ result += `out of ${relationName(ancestor)};`;
+ ancestor = ancestor.parent;
+ }
+ return result;
+}
+function getNextAtomAsSpokenText(model) {
+ if (!model.selectionIsCollapsed)
+ return speakableText("", model.getAtoms(model.selection));
+ let result = "";
+ const cursor = model.at(model.position);
+ const relation = relationName(cursor);
+ if (cursor.isFirstSibling)
+ result = (relation ? "start of " + relation : "unknown") + ": ";
+ if (cursor.isLastSibling) {
+ if (!cursor.isFirstSibling)
+ result += relation ? "end of " + relation : "unknown";
+ } else
+ result += speakableText("", cursor);
+ return result;
+}
+
+// src/editor-model/model-private.ts
+var _Model = class {
+ constructor(target, mode, root) {
+ this.mathfield = target;
+ this.mode = mode;
+ this.silenceNotifications = false;
+ this._selection = { ranges: [[0, 0]], direction: "none" };
+ this._anchor = 0;
+ this._position = 0;
+ this.root = root;
+ }
+ dispose() {
+ this.mathfield = void 0;
+ }
+ getState() {
+ const selection = { ranges: [...this._selection.ranges] };
+ if (this.selection.direction && this.selection.direction !== "none")
+ selection.direction = this.selection.direction;
+ return {
+ content: this.root.toJson(),
+ selection,
+ mode: this.mode
+ };
+ }
+ setState(state, options) {
+ var _a3;
+ const wasSuppressing = this.silenceNotifications;
+ this.silenceNotifications = (_a3 = options == null ? void 0 : options.silenceNotifications) != null ? _a3 : true;
+ let changeOption = {};
+ if ((options == null ? void 0 : options.type) === "undo")
+ changeOption = { inputType: "historyUndo" };
+ if ((options == null ? void 0 : options.type) === "redo")
+ changeOption = { inputType: "historyRedo" };
+ if (this.contentWillChange(changeOption)) {
+ const didSuppress = this.silenceNotifications;
+ this.silenceNotifications = true;
+ this.mode = state.mode;
+ this.root = fromJson(state.content);
+ this.selection = state.selection;
+ this.silenceNotifications = didSuppress;
+ this.contentDidChange(changeOption);
+ }
+ this.silenceNotifications = wasSuppressing;
+ }
+ get atoms() {
+ return this.root.children;
+ }
+ /**
+ * The selection, accounting for the common ancestors
+ */
+ get selection() {
+ return this._selection;
+ }
+ set selection(value) {
+ this.setSelection(value);
+ }
+ setSelection(arg1, arg2) {
+ if (!this.mathfield.contentEditable && this.mathfield.userSelect === "none")
+ return false;
+ return this.deferNotifications({ selection: true }, () => {
+ var _a3, _b3, _c2;
+ const value = this.normalizeSelection(arg1, arg2);
+ if (value === void 0)
+ throw new TypeError("Invalid selection");
+ if (value.ranges.length === 1 && value.ranges[0][0] === value.ranges[0][1]) {
+ const pos = value.ranges[0][0];
+ if (!this.mathfield.dirty && !((_a3 = this.at(pos)) == null ? void 0 : _a3.parentPrompt) && this.mathfield.hasEditablePrompts) {
+ if ((_b3 = this.at(pos - 1)) == null ? void 0 : _b3.parentPrompt) {
+ this._anchor = this.normalizeOffset(pos - 1);
+ this._position = this._anchor;
+ this._selection = this.normalizeSelection(this._anchor);
+ return;
+ }
+ if ((_c2 = this.at(pos + 1)) == null ? void 0 : _c2.parentPrompt) {
+ this._anchor = this.normalizeOffset(pos + 1);
+ this._position = this._anchor;
+ this._selection = this.normalizeSelection(this._anchor);
+ return;
+ }
+ this._anchor = 0;
+ this._position = 0;
+ this._selection = { ranges: [[0, 0]] };
+ return;
+ }
+ this._anchor = pos;
+ this._position = pos;
+ this._selection = value;
+ return;
+ }
+ const selRange = range(value);
+ if (value.direction === "backward")
+ [this._position, this._anchor] = selRange;
+ else
+ [this._anchor, this._position] = selRange;
+ const first = this.at(selRange[0] + 1);
+ const last = this.at(selRange[1]);
+ const commonAncestor = Atom.commonAncestor(first, last);
+ if ((commonAncestor == null ? void 0 : commonAncestor.type) === "array" && first.parent === commonAncestor && last.parent === commonAncestor) {
+ this._selection = { ranges: [selRange], direction: value.direction };
+ } else
+ this._selection = { ranges: [selRange], direction: value.direction };
+ console.assert(this._position >= 0 && this._position <= this.lastOffset);
+ return;
+ });
+ }
+ setPositionHandlingPlaceholder(pos) {
+ var _a3;
+ const atom = this.at(pos);
+ if ((atom == null ? void 0 : atom.type) === "placeholder") {
+ this.setSelection(pos - 1, pos);
+ } else if (((_a3 = atom == null ? void 0 : atom.rightSibling) == null ? void 0 : _a3.type) === "placeholder") {
+ this.setSelection(pos, pos + 1);
+ } else
+ this.position = pos;
+ if (atom instanceof LatexAtom && atom.isSuggestion)
+ atom.isSuggestion = false;
+ this.mathfield.stopCoalescingUndo();
+ }
+ /**
+ * The "focus" or "cursor" (i.e. not the anchor) a.k.a the insertion point
+ * or caret: where things are going to be inserted next.
+ *
+ */
+ get position() {
+ return this._position;
+ }
+ set position(value) {
+ this.setSelection(value, value);
+ }
+ /**
+ * The offset from which the selection is extended
+ */
+ get anchor() {
+ return this._anchor;
+ }
+ get selectionIsCollapsed() {
+ return this._anchor === this._position;
+ }
+ get selectionIsPlaceholder() {
+ if (Math.abs(this._anchor - this._position) === 1) {
+ return this.at(Math.max(this._anchor, this._position)).type === "placeholder";
+ }
+ return false;
+ }
+ collapseSelection(direction = "forward") {
+ if (this._anchor === this._position)
+ return false;
+ if (direction === "backward")
+ this.position = Math.min(this._anchor, this._position);
+ else
+ this.position = Math.max(this._anchor, this._position);
+ return true;
+ }
+ get lastOffset() {
+ return this.atoms.length - 1;
+ }
+ at(index) {
+ return this.atoms[index];
+ }
+ offsetOf(atom) {
+ return this.atoms.indexOf(atom);
+ }
+ getSiblingsRange(offset) {
+ const atom = this.at(offset);
+ const { parent } = atom;
+ if (!parent)
+ return [0, this.lastOffset];
+ const branch = atom.parent.branch(atom.parentBranch);
+ return [this.offsetOf(branch[0]), this.offsetOf(branch[branch.length - 1])];
+ }
+ getBranchRange(offset, branchName) {
+ const branch = this.at(offset).branch(branchName);
+ return [this.offsetOf(branch[0]), this.offsetOf(branch[branch.length - 1])];
+ }
+ getAtoms(arg1, arg2, arg3) {
+ let options = arg3 != null ? arg3 : {};
+ if (isSelection(arg1)) {
+ options = arg2 != null ? arg2 : {};
+ if (arg1.ranges.length > 1) {
+ return arg1.ranges.reduce(
+ (acc, range2) => [...acc, ...this.getAtoms(range2, options)],
+ []
+ );
+ }
+ arg1 = arg1.ranges[0];
+ }
+ let start;
+ let end;
+ if (isOffset(arg1)) {
+ start = arg1;
+ if (!isOffset(arg2))
+ return [];
+ end = arg2;
+ } else {
+ [start, end] = arg1;
+ options = arg2 != null ? arg2 : {};
+ }
+ if (!Number.isFinite(start))
+ return [];
+ if (options.includeChildren === void 0)
+ options.includeChildren = false;
+ if (start < 0)
+ start = this.lastOffset - start + 1;
+ if (end < 0)
+ end = this.lastOffset - end + 1;
+ const first = Math.min(start, end) + 1;
+ const last = Math.max(start, end);
+ if (!options.includeChildren && first === 1 && last === this.lastOffset)
+ return [this.root];
+ let result = [];
+ for (let i = first; i <= last; i++) {
+ const atom = this.atoms[i];
+ if (atomIsInRange(this, atom, first, last))
+ result.push(atom);
+ }
+ if (!options.includeChildren) {
+ result = result.filter((atom) => {
+ let ancestorIncluded = false;
+ let { parent } = atom;
+ while (parent && !ancestorIncluded) {
+ ancestorIncluded = atomIsInRange(this, parent, first, last);
+ parent = parent.parent;
+ }
+ return !ancestorIncluded;
+ });
+ }
+ return result;
+ }
+ /**
+ * Unlike `getAtoms()`, the argument here is an index
+ * Return all the atoms, in order, starting at startingIndex
+ * then looping back at the beginning
+ */
+ getAllAtoms(startingIndex = 0) {
+ const result = [];
+ const last = this.lastOffset;
+ for (let i = startingIndex; i <= last; i++)
+ result.push(this.atoms[i]);
+ for (let i = 0; i < startingIndex; i++)
+ result.push(this.atoms[i]);
+ return result;
+ }
+ findAtom(filter, startingIndex = 0, direction = "forward") {
+ let atom = void 0;
+ const last = this.lastOffset;
+ if (direction === "forward") {
+ for (let i = startingIndex; i <= last; i++) {
+ atom = this.atoms[i];
+ if (filter(atom))
+ return atom;
+ }
+ for (let i = 0; i < startingIndex; i++) {
+ atom = this.atoms[i];
+ if (filter(atom))
+ return atom;
+ }
+ return void 0;
+ }
+ for (let i = startingIndex; i >= 0; i--) {
+ atom = this.atoms[i];
+ if (filter(atom))
+ return atom;
+ }
+ for (let i = last; i > startingIndex; i--) {
+ atom = this.atoms[i];
+ if (filter(atom))
+ return atom;
+ }
+ return void 0;
+ }
+ /** Remove the specified atoms from the tree.
+ * **WARNING** upon return the selection may now be invalid
+ */
+ extractAtoms(range2) {
+ let result = this.getAtoms(range2);
+ if (result.length === 1 && !result[0].parent) {
+ if (result[0].type === "root") {
+ result = [...result[0].body];
+ result.shift();
+ } else {
+ result = this.root.cells.flat();
+ this.root = new Atom({ type: "root", body: [] });
+ return result;
+ }
+ }
+ for (const child of result)
+ child.parent.removeChild(child);
+ return result;
+ }
+ deleteAtoms(range2) {
+ this.extractAtoms(range2);
+ this.position = range2[0];
+ }
+ atomToString(atom, inFormat) {
+ const format = inFormat != null ? inFormat : "latex";
+ if (format.startsWith("latex")) {
+ return Atom.serialize([atom], {
+ expandMacro: format === "latex-expanded",
+ skipStyles: format === "latex-unstyled",
+ skipPlaceholders: format === "latex-without-placeholders",
+ defaultMode: this.mathfield.options.defaultMode
+ });
+ }
+ if (format === "math-ml")
+ return toMathML(atom);
+ if (format === "spoken")
+ return atomToSpeakableText(atom);
+ if (format === "spoken-text") {
+ const saveTextToSpeechMarkup = window.MathfieldElement.textToSpeechMarkup;
+ window.MathfieldElement.textToSpeechMarkup = "";
+ const result = atomToSpeakableText(atom);
+ window.MathfieldElement.textToSpeechMarkup = saveTextToSpeechMarkup;
+ return result;
+ }
+ if (format === "spoken-ssml" || format === "spoken-ssml-with-highlighting") {
+ const saveTextToSpeechMarkup = window.MathfieldElement.textToSpeechMarkup;
+ window.MathfieldElement.textToSpeechMarkup = "ssml";
+ const result = atomToSpeakableText(atom);
+ window.MathfieldElement.textToSpeechMarkup = saveTextToSpeechMarkup;
+ return result;
+ }
+ if (format === "ascii-math")
+ return atomToAsciiMath(atom);
+ console.error(`MathLive 0.98.5: Unexpected format "${format}`);
+ return "";
+ }
+ getValue(arg1, arg2, arg3) {
+ if (arg1 === void 0)
+ return this.atomToString(this.root, "latex");
+ if (typeof arg1 === "string" && arg1 !== "math-json")
+ return this.atomToString(this.root, arg1);
+ let ranges;
+ let format;
+ if (isOffset(arg1) && isOffset(arg2)) {
+ ranges = [this.normalizeRange([arg1, arg2])];
+ format = arg3;
+ } else if (isRange(arg1)) {
+ ranges = [this.normalizeRange(arg1)];
+ format = arg2;
+ } else if (isSelection(arg1)) {
+ ranges = arg1.ranges;
+ format = arg2;
+ } else {
+ ranges = [this.normalizeRange([0, -1])];
+ format = arg1;
+ }
+ format != null ? format : format = "latex";
+ if (format === "math-json") {
+ if (!window.MathfieldElement.computeEngine) {
+ if (!window[Symbol.for("io.cortexjs.compute-engine")]) {
+ console.error(
+ 'The CortexJS Compute Engine library is not available.\nLoad the library, for example with:\nimport "https://unpkg.com/@cortex-js/compute-engine?module"'
+ );
+ }
+ return '["Error", "compute-engine-not-available"]';
+ }
+ const latex = this.getValue({ ranges }, "latex-unstyled");
+ try {
+ const expr = window.MathfieldElement.computeEngine.parse(latex);
+ return JSON.stringify(expr.json);
+ } catch (e) {
+ return JSON.stringify(["Error", `'${e.toString()}'`]);
+ }
+ }
+ if (format.startsWith("latex")) {
+ const options = {
+ expandMacro: format === "latex-expanded",
+ skipStyles: format === "latex-unstyled",
+ skipPlaceholders: format === "latex-without-placeholders",
+ defaultMode: this.mathfield.options.defaultMode
+ };
+ return joinLatex(
+ ranges.map((range2) => Atom.serialize(this.getAtoms(range2), options))
+ );
+ }
+ return ranges.map(
+ (range2) => this.getAtoms(range2).map((atom) => this.atomToString(atom, format)).join("")
+ ).join("");
+ }
+ /**
+ * Unlike `setSelection`, this method is intended to be used in response
+ * to a user action, and it performs various adjustments to result
+ * in a more intuitive selection.
+ * For example:
+ * - when all the children of an atom are selected, the atom
+ * become selected.
+ * - this method will *not* change the anchor, but may result
+ * in a selection whose boundary is outside the anchor
+ */
+ extendSelectionTo(anchor, position) {
+ if (!this.mathfield.contentEditable && this.mathfield.userSelect === "none")
+ return false;
+ return this.deferNotifications({ selection: true }, () => {
+ const range2 = this.normalizeRange([anchor, position]);
+ let [start, end] = range2;
+ let { parent } = this.at(end);
+ if (parent) {
+ if (parent.type === "genfrac" || parent.type === "subsup") {
+ while (parent !== this.root && childrenInRange(this, parent, [start, end])) {
+ end = this.offsetOf(parent);
+ parent = parent.parent;
+ }
+ }
+ }
+ parent = this.at(start).parent;
+ while (parent !== this.root && childrenInRange(this, parent, [start, end])) {
+ start = this.offsetOf(parent.leftSibling);
+ parent = parent.parent;
+ }
+ parent = this.at(end).parent;
+ if ((parent == null ? void 0 : parent.type) === "genfrac") {
+ while (parent !== this.root && childrenInRange(this, parent, [start, end])) {
+ end = this.offsetOf(parent);
+ console.assert(end >= 0);
+ parent = parent.parent;
+ }
+ }
+ this._position = this.normalizeOffset(position);
+ this._selection = {
+ ranges: [[start, end]],
+ direction: "none"
+ };
+ });
+ }
+ /**
+ * This method is called to provide feedback when using a screen reader
+ * or other assistive device, for example when changing the selection or
+ * moving the insertion point.
+ *
+ * It can also be used with the 'plonk' command to provide an audible
+ * feedback when a command is not possible.
+ *
+ * This method should not be called from other methods of the model
+ * (such as `setSelection`) as these methods can also be called
+ * programmatically and a feedback in these case would be innapropriate,
+ * however they should be called from functions called as a result of a user
+ * action, such as the functions in `commands.ts`
+ */
+ announce(command, previousPosition, atoms = []) {
+ var _a3, _b3;
+ const result = (_b3 = (_a3 = this.mathfield.host) == null ? void 0 : _a3.dispatchEvent(
+ new CustomEvent("announce", {
+ detail: { command, previousPosition, atoms },
+ cancelable: true,
+ bubbles: true,
+ composed: true
+ })
+ )) != null ? _b3 : true;
+ if (result)
+ defaultAnnounceHook(this.mathfield, command, previousPosition, atoms);
+ }
+ // Suppress notification while scope is executed,
+ // then notify of content change, and selection change (if actual change)
+ deferNotifications(options, f) {
+ const oldSelection = this._selection;
+ const oldAnchor = this._anchor;
+ const oldPosition = this._position;
+ const saved = this.silenceNotifications;
+ this.silenceNotifications = true;
+ const previousCounter = this.root.changeCounter;
+ f();
+ const contentChanged = this.root.changeCounter !== previousCounter;
+ const selectionChanged = oldAnchor !== this._anchor || oldPosition !== this._position || compareSelection(this._selection, oldSelection) === "different";
+ this.silenceNotifications = saved;
+ if (options.content && contentChanged)
+ this.contentDidChange({ inputType: options.type });
+ if (options.selection && selectionChanged)
+ this.selectionDidChange();
+ return contentChanged || selectionChanged;
+ }
+ normalizeOffset(value) {
+ if (value > 0)
+ value = Math.min(value, this.lastOffset);
+ else if (value < 0)
+ value = this.lastOffset + value + 1;
+ return value;
+ }
+ /**
+ * Ensure that the range is valid and canonical, i.e.
+ * - start <= end
+ * - collapsed = start === end
+ * - start >= 0, end >=0
+ */
+ normalizeRange(range2) {
+ let [start, end] = range2;
+ start = this.normalizeOffset(start);
+ end = this.normalizeOffset(end);
+ return start < end ? [start, end] : [end, start];
+ }
+ normalizeSelection(value, value2) {
+ var _a3;
+ let result = void 0;
+ if (isOffset(value)) {
+ const offset = this.normalizeOffset(value);
+ if (isOffset(value2)) {
+ const offset2 = this.normalizeOffset(value2);
+ result = offset <= offset2 ? { ranges: [[offset, offset2]], direction: "none" } : {
+ ranges: [[offset2, offset]],
+ direction: "backward"
+ };
+ } else
+ result = { ranges: [[offset, offset]], direction: "none" };
+ } else if (isRange(value)) {
+ const start = this.normalizeOffset(value[0]);
+ const end = this.normalizeOffset(value[1]);
+ result = start <= end ? { ranges: [[start, end]], direction: "none" } : { ranges: [[end, start]], direction: "backward" };
+ } else if (isSelection(value)) {
+ result = {
+ ranges: value.ranges.map((x) => this.normalizeRange(x)),
+ direction: (_a3 = value.direction) != null ? _a3 : "none"
+ };
+ }
+ console.assert(result !== void 0);
+ return result;
+ }
+ /** Returns the first ArrayAtom in ancestry of current position */
+ get parentEnvironment() {
+ let parent = this.at(this.position).parent;
+ if (!parent)
+ return void 0;
+ while (parent.parent && parent.type !== "array")
+ parent = parent.parent;
+ if (parent.type !== "array")
+ return void 0;
+ return parent;
+ }
+ /** Return the cell (row, col) that the current selection is in */
+ get cell() {
+ var _a3;
+ let atom = this.at(this.position);
+ if (!atom)
+ return void 0;
+ while (atom && ((_a3 = atom.parent) == null ? void 0 : _a3.type) !== "array")
+ atom = atom.parent;
+ if (!(atom == null ? void 0 : atom.parent) || atom.parent.type !== "array")
+ return void 0;
+ return atom.parentBranch;
+ }
+ contentWillChange(options = {}) {
+ if (this.silenceNotifications || !this.mathfield)
+ return true;
+ const save = this.silenceNotifications;
+ this.silenceNotifications = true;
+ const result = this.mathfield.onContentWillChange(options);
+ this.silenceNotifications = save;
+ return result;
+ }
+ contentDidChange(options) {
+ var _a3;
+ if (window.mathVirtualKeyboard.visible)
+ window.mathVirtualKeyboard.update(makeProxy(this.mathfield));
+ if (this.silenceNotifications || !this.mathfield.host || !this.mathfield)
+ return;
+ const save = this.silenceNotifications;
+ this.silenceNotifications = true;
+ this.mathfield.host.dispatchEvent(
+ new InputEvent("input", __spreadProps(__spreadValues({}, options), {
+ // To work around a bug in WebKit/Safari (the inputType property gets stripped), include the inputType as the 'data' property. (see #1843)
+ data: options.data ? options.data : (_a3 = options.inputType) != null ? _a3 : "",
+ bubbles: true,
+ composed: true
+ }))
+ );
+ this.silenceNotifications = save;
+ }
+ selectionDidChange() {
+ if (!this.mathfield)
+ return;
+ if (window.mathVirtualKeyboard.visible)
+ window.mathVirtualKeyboard.update(makeProxy(this.mathfield));
+ if (this.silenceNotifications)
+ return;
+ const save = this.silenceNotifications;
+ this.silenceNotifications = true;
+ this.mathfield.onSelectionDidChange();
+ this.silenceNotifications = save;
+ }
+};
+function atomIsInRange(model, atom, first, last) {
+ const offset = model.offsetOf(atom);
+ if (offset < first || offset > last)
+ return false;
+ if (!atom.hasChildren)
+ return true;
+ const firstOffset = model.offsetOf(atom.firstChild);
+ if (firstOffset >= first && firstOffset <= last) {
+ const lastOffset = model.offsetOf(atom.lastChild);
+ if (lastOffset >= first && lastOffset <= last)
+ return true;
+ }
+ return false;
+}
+function childrenInRange(model, atom, range2) {
+ if (!(atom == null ? void 0 : atom.hasChildren))
+ return false;
+ const [start, end] = range2;
+ const first = model.offsetOf(atom.firstChild);
+ const last = model.offsetOf(atom.lastChild);
+ if (first >= start && first <= end && last >= first && last <= end)
+ return true;
+ return false;
+}
+
+// src/editor-model/delete.ts
+function onDelete(model, direction, atom, branch) {
+ var _a3, _b3, _c2, _d2, _e, _f;
+ const parent = atom.parent;
+ if (parent && atom instanceof LeftRightAtom) {
+ const atStart = !branch && direction === "forward" || branch === "body" && direction === "backward";
+ let pos = atStart ? model.offsetOf(atom.firstChild) : model.offsetOf(atom.lastChild);
+ if (atStart) {
+ if (atom.rightDelim !== "?" && atom.rightDelim !== ".") {
+ atom.leftDelim = ".";
+ atom.isDirty = true;
+ } else {
+ parent.addChildrenAfter(atom.removeBranch("body"), atom);
+ parent.removeChild(atom);
+ pos--;
+ }
+ } else {
+ if (atom.leftDelim !== "?" && atom.leftDelim !== ".") {
+ atom.rightDelim = ".";
+ atom.isDirty = true;
+ } else {
+ parent.addChildrenAfter(atom.removeBranch("body"), atom);
+ parent.removeChild(atom);
+ pos--;
+ }
+ }
+ model.position = pos;
+ return true;
+ }
+ if (parent && atom.type === "surd") {
+ if (direction === "forward" && !branch || direction === "backward" && branch === "body") {
+ const pos = atom.leftSibling;
+ if (atom.hasChildren)
+ parent.addChildrenAfter(atom.removeBranch("body"), atom);
+ parent.removeChild(atom);
+ model.position = model.offsetOf(pos);
+ } else if (direction === "forward" && branch === "body") {
+ model.position = model.offsetOf(atom);
+ } else if (!branch && direction === "backward") {
+ if (atom.hasChildren)
+ model.position = model.offsetOf(atom.lastChild);
+ else {
+ model.position = Math.max(0, model.offsetOf(atom) - 1);
+ parent.removeChild(atom);
+ }
+ } else if (branch === "above") {
+ if (atom.hasEmptyBranch("above"))
+ atom.removeBranch("above");
+ if (direction === "backward") {
+ model.position = model.offsetOf(atom.leftSibling);
+ } else {
+ model.position = model.offsetOf(atom.body[0]);
+ }
+ }
+ return true;
+ }
+ if (parent && (atom.type === "box" || atom.type === "enclose")) {
+ const pos = branch && direction === "backward" || !branch && direction === "forward" ? atom.leftSibling : atom.lastChild;
+ parent.addChildrenAfter(atom.removeBranch("body"), atom);
+ parent.removeChild(atom);
+ model.position = model.offsetOf(pos);
+ return true;
+ }
+ if (atom.type === "genfrac" || atom.type === "overunder") {
+ if (!branch) {
+ if (atom.type === "overunder" && atom.hasEmptyBranch("body"))
+ return false;
+ if (atom.type === "genfrac" && atom.hasEmptyBranch("below") && atom.hasEmptyBranch("above"))
+ return false;
+ model.position = model.offsetOf(
+ direction === "forward" ? atom.firstChild : atom.lastChild
+ );
+ return true;
+ }
+ const firstBranch = MathfieldElement.fractionNavigationOrder === "numerator-denominator" ? "above" : "below";
+ const secondBranch = firstBranch === "above" ? "below" : "above";
+ if (parent && (direction === "forward" && branch === firstBranch || direction === "backward" && branch === secondBranch)) {
+ const first = atom.removeBranch(firstBranch);
+ const second = atom.removeBranch(secondBranch);
+ parent.addChildrenAfter([...first, ...second], atom);
+ parent.removeChild(atom);
+ model.position = model.offsetOf(
+ first.length > 0 ? first[first.length - 1] : second[0]
+ );
+ return true;
+ }
+ if (direction === "backward")
+ model.position = model.offsetOf(atom.leftSibling);
+ else
+ model.position = model.offsetOf(atom);
+ return true;
+ }
+ if (atom.isExtensibleSymbol || atom.type === "subsup") {
+ if (!branch && direction === "forward")
+ return false;
+ if (!branch) {
+ if (atom.subscript || atom.superscript) {
+ const pos = direction === "forward" ? (_c2 = (_a3 = atom.superscript) == null ? void 0 : _a3[0]) != null ? _c2 : (_b3 = atom.subscript) == null ? void 0 : _b3[0] : (_f = (_d2 = atom.subscript) == null ? void 0 : _d2[0].lastSibling) != null ? _f : (_e = atom.superscript) == null ? void 0 : _e[0].lastSibling;
+ if (pos)
+ model.position = model.offsetOf(pos);
+ return true;
+ }
+ return false;
+ }
+ if (!atom.hasChildren && atom.type === "subsup") {
+ const pos = direction === "forward" ? model.offsetOf(atom) : Math.max(0, model.offsetOf(atom) - 1);
+ atom.parent.removeChild(atom);
+ model.position = pos;
+ return true;
+ }
+ if (branch === "superscript") {
+ if (direction === "backward") {
+ const pos = model.offsetOf(atom.firstChild) - 1;
+ console.assert(pos >= 0);
+ model.position = pos;
+ } else if (atom.subscript)
+ model.position = model.offsetOf(atom.subscript[0]);
+ else
+ model.position = model.offsetOf(atom);
+ } else if (branch === "subscript") {
+ if (direction === "backward" && atom.superscript) {
+ model.position = model.offsetOf(atom.superscript[0].lastSibling);
+ } else if (direction === "backward") {
+ model.position = model.offsetOf(atom.firstChild) - 1;
+ } else {
+ model.position = model.offsetOf(atom);
+ }
+ }
+ if (branch && atom.hasEmptyBranch(branch)) {
+ atom.removeBranch(branch);
+ if (atom.type === "subsup" && !atom.subscript && !atom.superscript) {
+ const pos = direction === "forward" ? model.offsetOf(atom) : Math.max(0, model.offsetOf(atom) - 1);
+ atom.parent.removeChild(atom);
+ model.position = pos;
+ }
+ }
+ return true;
+ }
+ if ((parent == null ? void 0 : parent.type) === "genfrac" && !branch && atom.type !== "first") {
+ let pos = model.offsetOf(atom.leftSibling);
+ parent.removeChild(atom);
+ if (parent.hasEmptyBranch("above") && parent.hasEmptyBranch("below")) {
+ pos = model.offsetOf(parent.leftSibling);
+ parent.parent.removeChild(parent);
+ model.announce("delete", void 0, [parent]);
+ model.position = pos;
+ return true;
+ }
+ model.announce("delete", void 0, [atom]);
+ model.position = pos;
+ return true;
+ }
+ if (direction === "backward" && ((parent == null ? void 0 : parent.command) === "\\ln" || (parent == null ? void 0 : parent.command) === "\\log") && atom.parentBranch !== "body") {
+ const pos = model.offsetOf(parent.leftSibling);
+ parent.parent.removeChild(parent);
+ model.announce("delete", void 0, [parent]);
+ model.position = pos;
+ return true;
+ }
+ return false;
+}
+function deleteBackward(model) {
+ if (!model.mathfield.isSelectionEditable)
+ return false;
+ if (!model.contentWillChange({ inputType: "deleteContentBackward" }))
+ return false;
+ if (!model.selectionIsCollapsed)
+ return deleteRange(model, range(model.selection), "deleteContentBackward");
+ return model.deferNotifications(
+ { content: true, selection: true, type: "deleteContentBackward" },
+ () => {
+ let target = model.at(model.position);
+ if (target && onDelete(model, "backward", target))
+ return;
+ if (target == null ? void 0 : target.isFirstSibling) {
+ if (onDelete(model, "backward", target.parent, target.parentBranch))
+ return;
+ target = null;
+ }
+ if (!target) {
+ model.announce("plonk");
+ return;
+ }
+ model.position = model.offsetOf(target.leftSibling);
+ target.parent.removeChild(target);
+ model.announce("delete", void 0, [target]);
+ }
+ );
+}
+function deleteForward(model) {
+ if (!model.mathfield.isSelectionEditable)
+ return false;
+ if (!model.contentWillChange({ inputType: "deleteContentForward" }))
+ return false;
+ if (!model.selectionIsCollapsed)
+ return deleteRange(model, range(model.selection), "deleteContentForward");
+ return model.deferNotifications(
+ { content: true, selection: true, type: "deleteContentForward" },
+ () => {
+ var _a3, _b3;
+ let target = model.at(model.position).rightSibling;
+ if (target && onDelete(model, "forward", target))
+ return;
+ if (!target) {
+ target = model.at(model.position);
+ if (target.isLastSibling && onDelete(model, "forward", target.parent, target.parentBranch))
+ return;
+ target = void 0;
+ } else if (model.at(model.position).isLastSibling && onDelete(model, "forward", target.parent, target.parentBranch))
+ return;
+ if (model.position === model.lastOffset || !target) {
+ model.announce("plonk");
+ return;
+ }
+ target.parent.removeChild(target);
+ let sibling = (_a3 = model.at(model.position)) == null ? void 0 : _a3.rightSibling;
+ while ((sibling == null ? void 0 : sibling.type) === "subsup") {
+ sibling.parent.removeChild(sibling);
+ sibling = (_b3 = model.at(model.position)) == null ? void 0 : _b3.rightSibling;
+ }
+ model.announce("delete", void 0, [target]);
+ }
+ );
+}
+function deleteRange(model, range2, type) {
+ const result = model.getAtoms(range2);
+ if (result.length > 0 && result[0].parent) {
+ let firstChild = result[0].parent.firstChild;
+ if (firstChild.type === "first")
+ firstChild = firstChild.rightSibling;
+ const lastChild = result[result.length - 1].parent.lastChild;
+ let firstSelected = result[0];
+ if (firstSelected.type === "first")
+ firstSelected = firstSelected.rightSibling;
+ const lastSelected = result[result.length - 1];
+ if (firstSelected === firstChild && lastSelected === lastChild) {
+ const parent = result[0].parent;
+ if (parent.parent && parent.type !== "prompt")
+ range2 = [model.offsetOf(parent.leftSibling), model.offsetOf(parent)];
+ }
+ if (result.length === 1 && result[0].type === "placeholder" && result[0].parent.type === "genfrac") {
+ const genfrac = result[0].parent;
+ const branch = result[0].parentBranch === "below" ? "above" : "below";
+ const pos = model.offsetOf(genfrac.leftSibling);
+ return model.deferNotifications(
+ { content: true, selection: true, type },
+ () => {
+ var _a3, _b3;
+ const numer = genfrac.removeBranch(branch);
+ if (!(numer.length === 1 && numer[0].type === "placeholder")) {
+ const lastAtom = genfrac.parent.addChildrenAfter(numer, genfrac);
+ (_a3 = genfrac.parent) == null ? void 0 : _a3.removeChild(genfrac);
+ model.position = model.offsetOf(lastAtom);
+ } else {
+ (_b3 = genfrac.parent) == null ? void 0 : _b3.removeChild(genfrac);
+ model.position = Math.max(0, pos);
+ }
+ }
+ );
+ }
+ }
+ return model.deferNotifications(
+ { content: true, selection: true, type },
+ () => model.deleteAtoms(range2)
+ );
+}
+
+// src/editor-model/commands-delete.ts
+register2(
+ {
+ deleteAll: (model) => model.contentWillChange({ inputType: "deleteContent" }) && deleteRange(model, [0, -1], "deleteContent"),
+ deleteForward: (model) => deleteForward(model),
+ deleteBackward: (model) => deleteBackward(model),
+ deleteNextWord: (model) => model.contentWillChange({ inputType: "deleteWordForward" }) && deleteRange(
+ model,
+ [model.anchor, wordBoundaryOffset(model, model.position, "forward")],
+ "deleteWordForward"
+ ),
+ deletePreviousWord: (model) => model.contentWillChange({ inputType: "deleteWordBackward" }) && deleteRange(
+ model,
+ [model.anchor, wordBoundaryOffset(model, model.position, "backward")],
+ "deleteWordBackward"
+ ),
+ deleteToGroupStart: (model) => model.contentWillChange({ inputType: "deleteSoftLineBackward" }) && deleteRange(
+ model,
+ [model.anchor, model.offsetOf(model.at(model.position).firstSibling)],
+ "deleteSoftLineBackward"
+ ),
+ deleteToGroupEnd: (model) => model.contentWillChange({ inputType: "deleteSoftLineForward" }) && deleteRange(
+ model,
+ [model.anchor, model.offsetOf(model.at(model.position).lastSibling)],
+ "deleteSoftLineForward"
+ ),
+ deleteToMathFieldStart: (model) => model.contentWillChange({ inputType: "deleteHardLineBackward" }) && deleteRange(model, [model.anchor, 0], "deleteHardLineBackward"),
+ deleteToMathFieldEnd: (model) => model.contentWillChange({ inputType: "deleteHardLineForward" }) && deleteRange(model, [model.anchor, -1], "deleteHardLineForward")
+ },
+ {
+ target: "model",
+ audioFeedback: "delete",
+ canUndo: true,
+ changeContent: true,
+ changeSelection: true
+ }
+);
+
+// src/editor-mathfield/mathfield-private.ts
+var DEFAULT_KEYBOARD_TOGGLE_GLYPH = ``;
+var MENU_GLYPH = ``;
+var _Mathfield = class {
+ /**
+ *
+ * - `options.computeEngine`: An instance of a `ComputeEngine`. It is used to parse and serialize
+ * LaTeX strings, using the information contained in the dictionaries
+ * of the Compute Engine to determine, for example, which symbols are
+ * numbers or which are functions, and therefore correctly interpret
+ * `bf(x)` as `b \\times f(x)`.
+ *
+ * If no instance is provided, a new default one is created.
+ *
+ * @param element - The DOM element that this mathfield is attached to.
+ * Note that `element.mathfield` is this object.
+ */
+ constructor(element, options) {
+ this.focusBlurInProgress = false;
+ var _a3, _b3, _c2;
+ this.options = __spreadValues(__spreadProps(__spreadValues({}, getDefault()), {
+ macros: getMacros(),
+ registers: getDefaultRegisters()
+ }), update(options));
+ this.eventController = new AbortController();
+ const signal = this.eventController.signal;
+ if (options.eventSink)
+ this.host = options.eventSink;
+ this.element = element;
+ element.mathfield = this;
+ this.blurred = true;
+ this.keystrokeCaptionVisible = false;
+ this.suggestionIndex = 0;
+ this.inlineShortcutBuffer = [];
+ this.inlineShortcutBufferFlushTimer = 0;
+ this.defaultStyle = {};
+ this.adoptStyle = "left";
+ if (this.options.defaultMode === "inline-math")
+ this.element.classList.add("ML__is-inline");
+ else
+ this.element.classList.remove("ML__is-inline");
+ this.dirty = false;
+ let elementText = (_b3 = (_a3 = options.value) != null ? _a3 : this.element.textContent) != null ? _b3 : "";
+ elementText = elementText.trim();
+ const mode = effectiveMode(this.options);
+ const root = new Atom({
+ type: "root",
+ mode,
+ body: parseLatex(elementText, { context: this.context })
+ });
+ this.model = new _Model(this, mode, root);
+ this.undoManager = new UndoManager(this.model);
+ const markup = [];
+ markup.push(
+ ``
+ );
+ markup.push(
+ '");
+ markup.push("");
+ markup.push(
+ ""
+ );
+ markup.push("");
+ this.element.innerHTML = window.MathfieldElement.createHTML(
+ markup.join("")
+ );
+ if (!this.element.children) {
+ console.error(
+ `%cMathLive 0.98.5: Something went wrong and the mathfield could not be created.%c
+If you are using Vue, this may be because you are using the runtime-only build of Vue. Make sure to include \`runtimeCompiler: true\` in your Vue configuration. There may a warning from Vue in the log above.`,
+ "color:red;font-family:system-ui;font-size:1.2rem;font-weight:bold",
+ "color:inherit;font-family:system-ui;font-size:inherit;font-weight:inherit"
+ );
+ return;
+ }
+ this._l10Subscription = l10n.subscribe(() => l10n.update(this.element));
+ l10n.update(this.element);
+ this.field = this.element.querySelector("[part=content]");
+ this.field.addEventListener(
+ "click",
+ (evt) => evt.stopImmediatePropagation(),
+ { capture: false, signal }
+ );
+ this.field.addEventListener("wheel", this, { passive: false, signal });
+ if ("PointerEvent" in window)
+ this.field.addEventListener("pointerdown", this, { signal });
+ else
+ this.field.addEventListener("mousedown", this, { signal });
+ (_c2 = this.element.querySelector("[part=virtual-keyboard-toggle]")) == null ? void 0 : _c2.addEventListener(
+ "click",
+ () => {
+ if (window.mathVirtualKeyboard.visible)
+ window.mathVirtualKeyboard.hide();
+ else {
+ window.mathVirtualKeyboard.show({ animate: true });
+ window.mathVirtualKeyboard.update(makeProxy(this));
+ }
+ },
+ { signal }
+ );
+ this._menu = new Menu(getDefaultMenuItems(this), { host: this.host });
+ this.field.addEventListener("contextmenu", this, { signal });
+ const menuToggle = this.element.querySelector("[part=menu-toggle]");
+ menuToggle == null ? void 0 : menuToggle.addEventListener(
+ "pointerdown",
+ (ev) => {
+ if (ev.currentTarget !== menuToggle)
+ return;
+ if (this._menu.state !== "closed")
+ return;
+ this.element.classList.add("tracking");
+ const bounds = menuToggle.getBoundingClientRect();
+ this._menu.modifiers = keyboardModifiersFromEvent(ev);
+ this._menu.show({
+ target: menuToggle,
+ location: { x: bounds.left, y: bounds.bottom },
+ onDismiss: () => this.element.classList.remove("tracking")
+ });
+ ev.preventDefault();
+ ev.stopPropagation();
+ },
+ { signal }
+ );
+ if (this.model.atoms.length <= 1 || this.disabled || this.readOnly && !this.hasEditableContent || this.userSelect === "none")
+ menuToggle.style.display = "none";
+ this.ariaLiveText = this.element.querySelector("[role=status]");
+ this.keyboardDelegate = delegateKeyboardEvents(
+ this.element.querySelector(".ML__keyboard-sink"),
+ this.element,
+ this
+ );
+ window.addEventListener("resize", this, { signal });
+ document.addEventListener("scroll", this, { signal });
+ this.resizeObserver = new ResizeObserver(() => requestUpdate(this));
+ this.resizeObserver.observe(this.field);
+ window.mathVirtualKeyboard.addEventListener(
+ "virtual-keyboard-toggle",
+ this,
+ { signal }
+ );
+ if (gKeyboardLayout && !l10n.locale.startsWith(gKeyboardLayout.locale))
+ setKeyboardLayoutLocale(l10n.locale);
+ if (gFontsState !== "ready")
+ document.fonts.ready.then(() => renderSelection(this));
+ element.querySelector("[part=container]").style.removeProperty("visibility");
+ this.undoManager.startRecording();
+ this.undoManager.snapshot("set-value");
+ }
+ get defaultStyle() {
+ return this._defaultStyle;
+ }
+ set defaultStyle(value) {
+ this._defaultStyle = value;
+ }
+ /** Depending on the value of `adoptStyle` return the style of the
+ * sibling or the default style.
+ *
+ * This style is the one that will be applied to the next inserted atom.
+ *
+ */
+ get effectiveStyle() {
+ if (this.adoptStyle === "none")
+ return this.defaultStyle;
+ const atom = this.model.at(this.model.position);
+ const sibling = this.adoptStyle === "right" ? atom.rightSibling : atom;
+ if (!sibling)
+ return this.defaultStyle;
+ if (sibling.type === "group") {
+ const branch = sibling.branch("body");
+ if (!branch || branch.length < 2)
+ return {};
+ if (this.adoptStyle === "right")
+ return branch[1].computedStyle;
+ return branch[branch.length - 1].computedStyle;
+ }
+ return sibling.computedStyle;
+ }
+ connectToVirtualKeyboard() {
+ if (this.connectedToVirtualKeyboard)
+ return;
+ this.connectedToVirtualKeyboard = true;
+ window.addEventListener("message", this, {
+ signal: this.eventController.signal
+ });
+ window.mathVirtualKeyboard.connect();
+ if (window.mathVirtualKeyboard.visible)
+ window.mathVirtualKeyboard.update(makeProxy(this));
+ updateEnvironmentPopover(this);
+ }
+ disconnectFromVirtualKeyboard() {
+ if (!this.connectedToVirtualKeyboard)
+ return;
+ window.removeEventListener("message", this);
+ window.mathVirtualKeyboard.disconnect();
+ this.connectedToVirtualKeyboard = false;
+ hideEnvironmentPopover();
+ }
+ showMenu(_) {
+ var _a3, _b3;
+ const location = (_b3 = (_a3 = _ == null ? void 0 : _.location) != null ? _a3 : getCaretPoint(this.field)) != null ? _b3 : void 0;
+ const modifiers = _ == null ? void 0 : _.modifiers;
+ const target = this.element.querySelector("[part=container]");
+ return this._menu.show({ target, location, modifiers });
+ }
+ get colorMap() {
+ return (name) => {
+ var _a3, _b3, _c2;
+ return (_c2 = (_b3 = (_a3 = this.options).colorMap) == null ? void 0 : _b3.call(_a3, name)) != null ? _c2 : defaultColorMap(name);
+ };
+ }
+ get backgroundColorMap() {
+ return (name) => {
+ var _a3, _b3, _c2, _d2, _e, _f;
+ return (_f = (_e = (_b3 = (_a3 = this.options).backgroundColorMap) == null ? void 0 : _b3.call(_a3, name)) != null ? _e : (_d2 = (_c2 = this.options).colorMap) == null ? void 0 : _d2.call(_c2, name)) != null ? _f : defaultBackgroundColorMap(name);
+ };
+ }
+ get smartFence() {
+ var _a3;
+ return (_a3 = this.options.smartFence) != null ? _a3 : false;
+ }
+ get readOnly() {
+ var _a3;
+ return (_a3 = this.options.readOnly) != null ? _a3 : false;
+ }
+ get disabled() {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this.host) == null ? void 0 : _a3["disabled"]) != null ? _b3 : false;
+ }
+ // This reflects the contenteditable attribute.
+ // Use hasEditableContent instead to take into account readonly and disabled
+ // states.
+ get contentEditable() {
+ if (!this.host)
+ return false;
+ return this.host.getAttribute("contenteditable") !== "false";
+ }
+ // This reflect the `user-select` CSS property
+ get userSelect() {
+ if (!this.host)
+ return "";
+ const style = getComputedStyle(this.host);
+ return style.getPropertyValue("user-select") || style.getPropertyValue("-webkit-user-select");
+ }
+ // Use to hide/show the virtual keyboard toggle. If false, no point in
+ // showing the toggle.
+ get hasEditableContent() {
+ if (this.disabled || !this.contentEditable)
+ return false;
+ return !this.readOnly || this.hasEditablePrompts;
+ }
+ get hasEditablePrompts() {
+ return this.readOnly && !this.disabled && this.contentEditable && this.model.findAtom(
+ (a) => a.type === "prompt" && !a.locked
+ ) !== void 0;
+ }
+ /** Returns true if the selection is editable:
+ * - mathfield is not disabled, and has contentEditable
+ * - if mathfield is readonly, the current selection is in a prompt which is editable (not locked)
+ */
+ get isSelectionEditable() {
+ if (this.disabled || !this.contentEditable)
+ return false;
+ if (!this.readOnly)
+ return true;
+ const anchor = this.model.at(this.model.anchor);
+ const cursor = this.model.at(this.model.position);
+ const ancestor = Atom.commonAncestor(anchor, cursor);
+ if ((ancestor == null ? void 0 : ancestor.type) === "prompt" || (ancestor == null ? void 0 : ancestor.parentPrompt))
+ return true;
+ return false;
+ }
+ get letterShapeStyle() {
+ var _a3;
+ return (_a3 = this.options.letterShapeStyle) != null ? _a3 : "tex";
+ }
+ get minFontScale() {
+ return this.options.minFontScale;
+ }
+ /** Returns styles shared by all selected atoms */
+ get selectionStyle() {
+ if (this.model.selectionIsCollapsed)
+ return this.effectiveStyle;
+ const selectedAtoms = this.model.getAtoms(this.model.selection);
+ if (selectedAtoms.length === 0)
+ return {};
+ const style = __spreadValues({}, selectedAtoms[0].style);
+ for (const atom of selectedAtoms) {
+ for (const [key, value] of Object.entries(atom.style))
+ if (style[key] !== value)
+ delete style[key];
+ }
+ return style;
+ }
+ /**
+ *
+ * If there is a selection, return if all the atoms in the selection,
+ * some of them or none of them match the `style` argument.
+ *
+ * If there is no selection, return 'all' if the current implicit style
+ * (determined by a combination of the style of the previous atom and
+ * the current style) matches the `style` argument, 'none' if it does not.
+ */
+ queryStyle(inStyle) {
+ const style = validateStyle(this, inStyle);
+ if ("verbatimColor" in style)
+ delete style.verbatimColor;
+ if ("verbatimBackgroundColor" in style)
+ delete style.verbatimBackgroundColor;
+ const keyCount = Object.keys(style).length;
+ if (keyCount === 0)
+ return "all";
+ if (keyCount > 1) {
+ for (const prop2 of Object.keys(style)) {
+ const result = this.queryStyle({ [prop2]: style[prop2] });
+ if (result === "none")
+ return "none";
+ if (result === "some")
+ return "some";
+ }
+ return "all";
+ }
+ const prop = Object.keys(style)[0];
+ const value = style[prop];
+ if (this.model.selectionIsCollapsed) {
+ if (this.effectiveStyle[prop] === value)
+ return "all";
+ return "none";
+ }
+ const atoms = this.model.getAtoms(this.model.selection, {
+ includeChildren: true
+ });
+ let length = atoms.length;
+ if (length === 0)
+ return "none";
+ let count = 0;
+ for (const atom of atoms) {
+ if (atom.type === "first") {
+ length -= 1;
+ continue;
+ }
+ if (atom.style[prop] === value)
+ count += 1;
+ }
+ if (count === 0)
+ return "none";
+ if (count === length)
+ return "all";
+ return "some";
+ }
+ get keybindings() {
+ var _a3, _b3;
+ if (this._keybindings)
+ return this._keybindings;
+ const [keybindings, errors] = normalizeKeybindings(
+ this.options.keybindings,
+ (_a3 = getActiveKeyboardLayout()) != null ? _a3 : getDefaultKeyboardLayout()
+ );
+ if (((_b3 = getActiveKeyboardLayout()) == null ? void 0 : _b3.score) > 0) {
+ this._keybindings = keybindings;
+ if (errors.length > 0) {
+ console.error(
+ `MathLive 0.98.5: Invalid keybindings for current keyboard layout`,
+ errors
+ );
+ }
+ }
+ return keybindings;
+ }
+ get menu() {
+ return this._menu;
+ }
+ setOptions(config) {
+ var _a3;
+ this.options = __spreadValues(__spreadValues({}, this.options), update(config));
+ this._keybindings = void 0;
+ if (this.options.defaultMode === "inline-math")
+ this.element.classList.add("ML__is-inline");
+ else
+ this.element.classList.remove("ML__is-inline");
+ let mode = this.options.defaultMode;
+ if (mode === "inline-math")
+ mode = "math";
+ if (((_a3 = this.model.root.firstChild) == null ? void 0 : _a3.mode) !== mode)
+ this.model.root.firstChild.mode = mode;
+ if (this.options.readOnly) {
+ if (this.hasFocus() && window.mathVirtualKeyboard.visible)
+ this.executeCommand("hideVirtualKeyboard");
+ }
+ const content = Atom.serialize([this.model.root], {
+ expandMacro: false,
+ defaultMode: this.options.defaultMode
+ });
+ if ("macros" in config || this.model.getValue() !== content) {
+ ModeEditor.insert(this.model, content, {
+ insertionMode: "replaceAll",
+ selectionMode: "after",
+ format: "latex",
+ silenceNotifications: true,
+ mode: "math"
+ });
+ }
+ if ("value" in config || "macros" in config || "registers" in config || "colorMap" in config || "backgroundColorMap" in config || "letterShapeStyle" in config || "minFontScale" in config || "readOnly" in config || "placeholderSymbol" in config)
+ requestUpdate(this);
+ }
+ getOptions(keys) {
+ return get(this.options, keys);
+ }
+ getOption(key) {
+ return get(this.options, key);
+ }
+ /*
+ * handleEvent is a function invoked when an event is registered with an
+ * object.
+ * The name is defined by `addEventListener()` and cannot be changed.
+ * This pattern is used to be able to release bound event handlers,
+ * (event handlers that need access to `this`) as the `bind()` function
+ * would create a new function that would have to be kept track of
+ * to be able to properly remove the event handler later.
+ */
+ async handleEvent(evt) {
+ var _a3;
+ if (!isValidMathfield(this))
+ return;
+ if (isVirtualKeyboardMessage(evt)) {
+ if (!validateOrigin(evt.origin, (_a3 = this.options.originValidator) != null ? _a3 : "none")) {
+ throw new DOMException(
+ `Message from unknown origin (${evt.origin}) cannot be handled`,
+ "SecurityError"
+ );
+ }
+ const { action } = evt.data;
+ if (action === "execute-command") {
+ const command = evt.data.command;
+ if (getCommandTarget(command) === "virtual-keyboard")
+ return;
+ this.executeCommand(command);
+ } else if (action === "update-state") {
+ } else if (action === "focus")
+ this.focus({ preventScroll: true });
+ else if (action === "blur")
+ this.blur();
+ return;
+ }
+ switch (evt.type) {
+ case "focus":
+ this.onFocus();
+ break;
+ case "blur":
+ this.onBlur();
+ break;
+ case "mousedown":
+ if (this.userSelect !== "none")
+ onPointerDown(this, evt);
+ break;
+ case "pointerdown":
+ if (this.userSelect !== "none") {
+ onPointerDown(this, evt);
+ if (evt.shiftKey === false) {
+ if (await onContextMenu(
+ evt,
+ this.element.querySelector("[part=container]"),
+ this._menu
+ ))
+ PointerTracker.stop();
+ }
+ }
+ break;
+ case "contextmenu":
+ if (this.userSelect !== "none" && evt.shiftKey === false) {
+ if (await onContextMenu(
+ evt,
+ this.element.querySelector("[part=container]"),
+ this._menu
+ ))
+ PointerTracker.stop();
+ }
+ break;
+ case "virtual-keyboard-toggle":
+ if (this.hasFocus())
+ updateEnvironmentPopover(this);
+ break;
+ case "resize":
+ if (this.geometryChangeTimer)
+ cancelAnimationFrame(this.geometryChangeTimer);
+ this.geometryChangeTimer = requestAnimationFrame(
+ () => isValidMathfield(this) && this.onGeometryChange()
+ );
+ break;
+ case "scroll":
+ if (this.geometryChangeTimer)
+ cancelAnimationFrame(this.geometryChangeTimer);
+ this.geometryChangeTimer = requestAnimationFrame(
+ () => isValidMathfield(this) && this.onGeometryChange()
+ );
+ break;
+ case "wheel":
+ this.onWheel(evt);
+ break;
+ default:
+ console.warn("Unexpected event type", evt.type);
+ }
+ }
+ dispose() {
+ if (!isValidMathfield(this))
+ return;
+ l10n.unsubscribe(this._l10Subscription);
+ this.keyboardDelegate.dispose();
+ this.keyboardDelegate = void 0;
+ this.eventController.abort();
+ this.eventController = void 0;
+ this.resizeObserver.disconnect();
+ window.mathVirtualKeyboard.removeEventListener(
+ "virtual-keyboard-toggle",
+ this
+ );
+ this.disconnectFromVirtualKeyboard();
+ this.model.dispose();
+ const element = this.element;
+ delete element.mathfield;
+ this.element = void 0;
+ this.host = void 0;
+ this.field = void 0;
+ this.ariaLiveText = void 0;
+ disposeKeystrokeCaption();
+ disposeSuggestionPopover();
+ disposeEnvironmentPopover();
+ }
+ flushInlineShortcutBuffer(options) {
+ options != null ? options : options = { defer: false };
+ if (!options.defer) {
+ this.inlineShortcutBuffer = [];
+ clearTimeout(this.inlineShortcutBufferFlushTimer);
+ this.inlineShortcutBufferFlushTimer = 0;
+ return;
+ }
+ if (this.options.inlineShortcutTimeout > 0) {
+ clearTimeout(this.inlineShortcutBufferFlushTimer);
+ this.inlineShortcutBufferFlushTimer = setTimeout(
+ () => this.flushInlineShortcutBuffer(),
+ this.options.inlineShortcutTimeout
+ );
+ }
+ }
+ executeCommand(command) {
+ if (getCommandTarget(command) === "virtual-keyboard") {
+ this.focus({ preventScroll: true });
+ window.mathVirtualKeyboard.executeCommand(command);
+ requestAnimationFrame(
+ () => window.mathVirtualKeyboard.update(makeProxy(this))
+ );
+ return false;
+ }
+ return perform(this, command);
+ }
+ get errors() {
+ return validateLatex(this.model.getValue(), { context: this.context });
+ }
+ getValue(arg1, arg2, arg3) {
+ return this.model.getValue(arg1, arg2, arg3);
+ }
+ setValue(value, options) {
+ var _a3;
+ options = options != null ? options : { mode: "math" };
+ if (options.insertionMode === void 0)
+ options.insertionMode = "replaceAll";
+ if (options.format === void 0 || options.format === "auto")
+ options.format = "latex";
+ if (options.mode === void 0 || options.mode === "auto")
+ options.mode = (_a3 = getMode(this.model, this.model.position)) != null ? _a3 : "math";
+ const couldUndo = this.undoManager.canUndo();
+ if (ModeEditor.insert(this.model, value, options)) {
+ requestUpdate(this);
+ if (!couldUndo)
+ this.undoManager.reset();
+ this.undoManager.snapshot("set-value");
+ }
+ }
+ get expression() {
+ const ce = window.MathfieldElement.computeEngine;
+ if (!ce) {
+ console.error(
+ `MathLive 0.98.5: no compute engine available. Make sure the Compute Engine library is loaded.`
+ );
+ return null;
+ }
+ return ce.box(ce.parse(this.model.getValue("latex-unstyled")));
+ }
+ /** Make sure the caret is visible within the matfield.
+ * If using mathfield element, make sure the mathfield element is visible in
+ * the page
+ */
+ scrollIntoView() {
+ var _a3;
+ if (!this.element)
+ return;
+ if (this.host) {
+ if (this.options.onScrollIntoView)
+ this.options.onScrollIntoView(this);
+ else {
+ this.host.scrollIntoView({ block: "nearest", inline: "nearest" });
+ if (window.mathVirtualKeyboard.visible && window.mathVirtualKeyboard.container === window.document.body) {
+ const kbdBounds = window.mathVirtualKeyboard.boundingRect;
+ const mathfieldBounds = this.host.getBoundingClientRect();
+ if (mathfieldBounds.bottom > kbdBounds.top) {
+ (_a3 = window.document.scrollingElement) == null ? void 0 : _a3.scrollBy(
+ 0,
+ mathfieldBounds.bottom - kbdBounds.top + 8
+ );
+ }
+ }
+ }
+ }
+ if (this.dirty)
+ render(this, { interactive: true });
+ const fieldBounds = this.field.getBoundingClientRect();
+ let caretPoint = null;
+ if (this.model.selectionIsCollapsed)
+ caretPoint = getCaretPoint(this.field);
+ else {
+ const selectionBounds = getSelectionBounds(this);
+ if (selectionBounds.length > 0) {
+ let maxRight = -Infinity;
+ let minTop = -Infinity;
+ for (const r of selectionBounds) {
+ if (r.right > maxRight)
+ maxRight = r.right;
+ if (r.top < minTop)
+ minTop = r.top;
+ }
+ caretPoint = {
+ x: maxRight + fieldBounds.left - this.field.scrollLeft,
+ y: minTop + fieldBounds.top - this.field.scrollTop,
+ height: 0
+ };
+ }
+ }
+ if (this.host && caretPoint) {
+ const hostBounds = this.host.getBoundingClientRect();
+ const y = caretPoint.y;
+ let top = this.host.scrollTop;
+ if (y < hostBounds.top)
+ top = y - hostBounds.top + this.host.scrollTop;
+ else if (y > hostBounds.bottom)
+ top = y - hostBounds.bottom + this.host.scrollTop + caretPoint.height;
+ this.host.scroll({ top, left: 0 });
+ }
+ if (caretPoint) {
+ const x = caretPoint.x - window.scrollX;
+ let left = this.field.scrollLeft;
+ if (x < fieldBounds.left)
+ left = x - fieldBounds.left + this.field.scrollLeft - 20;
+ else if (x > fieldBounds.right)
+ left = x - fieldBounds.right + this.field.scrollLeft + 20;
+ this.field.scroll({
+ top: this.field.scrollTop,
+ // should always be 0
+ left
+ });
+ }
+ }
+ insert(s, options) {
+ if (typeof s !== "string")
+ return false;
+ if (s.length === 0 && ((options == null ? void 0 : options.insertionMode) === "insertBefore" || (options == null ? void 0 : options.insertionMode) === "insertAfter"))
+ return false;
+ if (s.length === 0 && this.model.selectionIsCollapsed)
+ return false;
+ this.flushInlineShortcutBuffer();
+ options = options != null ? options : { mode: "math" };
+ if (options.focus)
+ this.focus();
+ if (options.feedback) {
+ if (window.MathfieldElement.keypressVibration && canVibrate())
+ navigator.vibrate(HAPTIC_FEEDBACK_DURATION);
+ window.MathfieldElement.playSound("keypress");
+ }
+ if (s === "\\\\") {
+ addRowAfter(this.model);
+ } else if (s === "&")
+ addColumnAfter(this.model);
+ else {
+ if (this.model.selectionIsCollapsed) {
+ ModeEditor.insert(this.model, s, __spreadValues({
+ style: this.model.at(this.model.position).computedStyle
+ }, options));
+ } else
+ ModeEditor.insert(this.model, s, options);
+ }
+ this.snapshot(`insert-${this.model.at(this.model.position).type}`);
+ requestUpdate(this);
+ if (options.scrollIntoView)
+ this.scrollIntoView();
+ return true;
+ }
+ switchMode(mode, prefix = "", suffix = "") {
+ var _a3;
+ if (this.model.mode === mode || !this.hasEditableContent || !this.contentEditable || this.disabled)
+ return;
+ const previousMode = this.model.mode;
+ this.model.mode = mode;
+ if (!((_a3 = this.host) == null ? void 0 : _a3.dispatchEvent(
+ new Event("mode-change", {
+ bubbles: true,
+ composed: true,
+ cancelable: true
+ })
+ ))) {
+ this.model.mode = previousMode;
+ return;
+ }
+ const currentMode = this.model.mode;
+ const { model } = this;
+ model.deferNotifications(
+ {
+ content: Boolean(suffix) || Boolean(prefix),
+ selection: true,
+ type: "insertText"
+ },
+ () => {
+ let contentChanged = false;
+ this.flushInlineShortcutBuffer();
+ this.stopCoalescingUndo();
+ if (prefix && mode !== "latex") {
+ const atoms = parseLatex(prefix, {
+ context: this.context,
+ parseMode: mode
+ });
+ model.collapseSelection("forward");
+ const cursor = model.at(model.position);
+ model.position = model.offsetOf(
+ cursor.parent.addChildrenAfter(atoms, cursor)
+ );
+ contentChanged = true;
+ }
+ this.model.mode = mode;
+ if (mode === "latex") {
+ let wasCollapsed = model.selectionIsCollapsed;
+ complete(this, "accept");
+ let latex;
+ let cursor = model.at(model.position);
+ if (wasCollapsed)
+ latex = "\\";
+ else {
+ const selRange = range(model.selection);
+ latex = this.model.getValue(selRange, "latex");
+ const extractedAtoms = this.model.extractAtoms(selRange);
+ if (extractedAtoms.length === 1 && extractedAtoms[0].type === "placeholder") {
+ latex = prefix;
+ wasCollapsed = true;
+ }
+ cursor = model.at(selRange[0]);
+ }
+ const atom = new LatexGroupAtom(latex);
+ cursor.parent.addChildAfter(atom, cursor);
+ if (wasCollapsed)
+ model.position = model.offsetOf(atom.lastChild);
+ else {
+ model.setSelection(
+ model.offsetOf(atom.firstChild),
+ model.offsetOf(atom.lastChild)
+ );
+ }
+ } else {
+ getLatexGroupBody(model).forEach((x) => {
+ x.isError = false;
+ });
+ }
+ if (suffix) {
+ const atoms = parseLatex(suffix, {
+ context: this.context,
+ parseMode: currentMode
+ });
+ model.collapseSelection("forward");
+ const cursor = model.at(model.position);
+ model.position = model.offsetOf(
+ cursor.parent.addChildrenAfter(atoms, cursor)
+ );
+ contentChanged = true;
+ }
+ requestUpdate(this);
+ this.undoManager.snapshot(mode === "latex" ? "insert-latex" : "insert");
+ return contentChanged;
+ }
+ );
+ this.model.mode = mode;
+ window.mathVirtualKeyboard.update(makeProxy(this));
+ }
+ hasFocus() {
+ return !this.blurred;
+ }
+ focus(options) {
+ var _a3;
+ if (!this.hasFocus()) {
+ this.keyboardDelegate.focus();
+ this.connectToVirtualKeyboard();
+ this.onFocus();
+ this.model.announce("line");
+ }
+ if (!((_a3 = options == null ? void 0 : options.preventScroll) != null ? _a3 : false))
+ this.scrollIntoView();
+ }
+ blur() {
+ this.disconnectFromVirtualKeyboard();
+ if (!this.hasFocus())
+ return;
+ this.keyboardDelegate.blur();
+ }
+ select() {
+ this.model.selection = { ranges: [[0, this.model.lastOffset]] };
+ this.focus();
+ }
+ applyStyle(inStyle, inOptions = {}) {
+ var _a3, _b3;
+ const options = {
+ operation: "set",
+ silenceNotifications: false
+ };
+ if (isRange(inOptions))
+ options.range = inOptions;
+ else {
+ if (inOptions.operation === "toggle")
+ options.operation = "toggle";
+ options.range = inOptions.range;
+ options.silenceNotifications = (_a3 = inOptions.silenceNotifications) != null ? _a3 : false;
+ }
+ const style = validateStyle(this, inStyle);
+ const operation = (_b3 = options.operation) != null ? _b3 : "set";
+ if (options.range === void 0 && this.model.selectionIsCollapsed) {
+ if (operation === "set") {
+ this.defaultStyle = __spreadValues(__spreadValues({}, this.defaultStyle), style);
+ return;
+ }
+ const newStyle = __spreadValues({}, this.defaultStyle);
+ for (const prop of Object.keys(style)) {
+ if (newStyle[prop] === style[prop]) {
+ if (prop === "color")
+ delete newStyle.verbatimColor;
+ if (prop === "backgroundColor")
+ delete newStyle.verbatimBackgroundColor;
+ delete newStyle[prop];
+ } else
+ newStyle[prop] = style[prop];
+ }
+ this.defaultStyle = newStyle;
+ return;
+ }
+ this.model.deferNotifications(
+ { content: !options.silenceNotifications, type: "insertText" },
+ () => {
+ if (options.range === void 0) {
+ for (const range2 of this.model.selection.ranges)
+ applyStyle(this.model, range2, style, { operation });
+ } else
+ applyStyle(this.model, options.range, style, { operation });
+ }
+ );
+ requestUpdate(this);
+ }
+ toggleContextMenu() {
+ var _a3;
+ if (!this._menu.visible)
+ return false;
+ if (this._menu.state === "open") {
+ this._menu.hide();
+ return true;
+ }
+ this._menu.show({
+ target: this.element.querySelector("[part=container]"),
+ location: (_a3 = this.getCaretPoint()) != null ? _a3 : void 0,
+ onDismiss: () => {
+ var _a4;
+ return (_a4 = this.element) == null ? void 0 : _a4.focus();
+ }
+ });
+ return true;
+ }
+ getCaretPoint() {
+ const caretOffset = getCaretPoint(this.field);
+ return caretOffset ? { x: caretOffset.x, y: caretOffset.y } : null;
+ }
+ setCaretPoint(x, y) {
+ const newPosition = offsetFromPoint(this, x, y, { bias: 0 });
+ if (newPosition < 0)
+ return false;
+ const previousPosition = this.model.position;
+ this.model.position = newPosition;
+ this.model.announce("move", previousPosition);
+ requestUpdate(this);
+ return true;
+ }
+ getPrompt(id) {
+ const prompt = this.model.findAtom(
+ (a) => a.type === "prompt" && a.placeholderId === id
+ );
+ console.assert(
+ prompt !== void 0,
+ `MathLive 0.98.5: no prompts with matching ID found`
+ );
+ return prompt;
+ }
+ getPromptValue(id, format) {
+ const prompt = this.getPrompt(id);
+ if (!prompt)
+ return "";
+ const first = this.model.offsetOf(prompt.firstChild);
+ const last = this.model.offsetOf(prompt.lastChild);
+ return this.model.getValue(first, last, format);
+ }
+ getPrompts(filter) {
+ return this.model.getAllAtoms().filter((a) => {
+ if (a.type !== "prompt")
+ return false;
+ if (!filter)
+ return true;
+ if (filter.id && a.placeholderId !== filter.id)
+ return false;
+ if (filter.locked && a.locked !== filter.locked)
+ return false;
+ if (filter.correctness === "undefined" && a.correctness)
+ return false;
+ if (filter.correctness && a.correctness !== filter.correctness)
+ return false;
+ return true;
+ }).map((a) => a.placeholderId);
+ }
+ setPromptValue(id, value, insertOptions) {
+ if (value !== void 0) {
+ const prompt = this.getPrompt(id);
+ if (!prompt) {
+ console.error(`MathLive 0.98.5: unknown prompt ${id}`);
+ return;
+ }
+ const branchRange = this.model.getBranchRange(
+ this.model.offsetOf(prompt),
+ "body"
+ );
+ this.model.setSelection(branchRange);
+ this.insert(value, __spreadProps(__spreadValues({}, insertOptions), {
+ insertionMode: "replaceSelection"
+ }));
+ }
+ if (insertOptions == null ? void 0 : insertOptions.silenceNotifications)
+ this.valueOnFocus = this.getValue();
+ requestUpdate(this);
+ }
+ setPromptState(id, state, locked) {
+ const prompt = this.getPrompt(id);
+ if (!prompt) {
+ console.error(`MathLive 0.98.5: unknown prompt ${id}`);
+ return;
+ }
+ if (state === "undefined")
+ prompt.correctness = void 0;
+ else if (typeof state === "string")
+ prompt.correctness = state;
+ if (typeof locked === "boolean") {
+ prompt.locked = locked;
+ prompt.captureSelection = locked;
+ }
+ requestUpdate(this);
+ }
+ getPromptState(id) {
+ const prompt = this.getPrompt(id);
+ if (!prompt) {
+ console.error(`MathLive 0.98.5: unknown prompt ${id}`);
+ return [void 0, true];
+ }
+ return [prompt.correctness, prompt.locked];
+ }
+ getPromptRange(id) {
+ const prompt = this.getPrompt(id);
+ if (!prompt) {
+ console.error(`MathLive 0.98.5: unknown prompt ${id}`);
+ return [0, 0];
+ }
+ return this.model.getBranchRange(this.model.offsetOf(prompt), "body");
+ }
+ canUndo() {
+ return this.undoManager.canUndo();
+ }
+ canRedo() {
+ return this.undoManager.canRedo();
+ }
+ popUndoStack() {
+ this.undoManager.pop();
+ }
+ snapshot(op) {
+ var _a3;
+ if (this.undoManager.snapshot(op)) {
+ if (window.mathVirtualKeyboard.visible)
+ window.mathVirtualKeyboard.update(makeProxy(this));
+ (_a3 = this.host) == null ? void 0 : _a3.dispatchEvent(
+ new CustomEvent("undo-state-change", {
+ bubbles: true,
+ composed: true,
+ detail: { type: "snapshot" }
+ })
+ );
+ }
+ }
+ stopCoalescingUndo() {
+ this.undoManager.stopCoalescing(this.model.selection);
+ }
+ stopRecording() {
+ this.undoManager.stopRecording();
+ }
+ startRecording() {
+ this.undoManager.startRecording();
+ }
+ undo() {
+ var _a3;
+ if (!this.undoManager.undo())
+ return;
+ if (window.mathVirtualKeyboard.visible)
+ window.mathVirtualKeyboard.update(makeProxy(this));
+ (_a3 = this.host) == null ? void 0 : _a3.dispatchEvent(
+ new CustomEvent("undo-state-change", {
+ bubbles: true,
+ composed: true,
+ detail: { type: "undo" }
+ })
+ );
+ }
+ redo() {
+ var _a3;
+ if (!this.undoManager.redo())
+ return;
+ if (window.mathVirtualKeyboard.visible)
+ window.mathVirtualKeyboard.update(makeProxy(this));
+ (_a3 = this.host) == null ? void 0 : _a3.dispatchEvent(
+ new CustomEvent("undo-state-change", {
+ bubbles: true,
+ composed: true,
+ detail: { type: "undo" }
+ })
+ );
+ }
+ resetUndo() {
+ var _a3;
+ (_a3 = this.undoManager) == null ? void 0 : _a3.reset();
+ }
+ onSelectionDidChange() {
+ var _a3, _b3;
+ const model = this.model;
+ this.keyboardDelegate.setValue(
+ model.getValue(this.model.selection, "latex-expanded")
+ );
+ {
+ const cursor = model.at(model.position);
+ const newMode = (_a3 = cursor.mode) != null ? _a3 : effectiveMode(this.options);
+ if (this.model.mode !== newMode) {
+ if (this.model.mode === "latex") {
+ complete(this, "accept", { mode: newMode });
+ model.position = model.offsetOf(cursor);
+ } else
+ this.switchMode(newMode);
+ }
+ }
+ (_b3 = this.host) == null ? void 0 : _b3.dispatchEvent(
+ new Event("selection-change", {
+ bubbles: true,
+ composed: true
+ })
+ );
+ if (window.mathVirtualKeyboard.visible)
+ window.mathVirtualKeyboard.update(makeProxy(this));
+ updateEnvironmentPopover(this);
+ }
+ onContentWillChange(options) {
+ var _a3, _b3, _c2;
+ return (_c2 = (_b3 = this.host) == null ? void 0 : _b3.dispatchEvent(
+ new InputEvent("beforeinput", __spreadProps(__spreadValues({}, options), {
+ // To work around a bug in WebKit/Safari (the inputType property gets stripped), include the inputType as the 'data' property. (see #1843)
+ data: options.data ? options.data : (_a3 = options.inputType) != null ? _a3 : "",
+ cancelable: true,
+ bubbles: true,
+ composed: true
+ }))
+ )) != null ? _c2 : true;
+ }
+ onFocus() {
+ if (this.focusBlurInProgress || !this.blurred)
+ return;
+ this.focusBlurInProgress = true;
+ this.blurred = false;
+ this.keyboardDelegate.focus();
+ this.stopCoalescingUndo();
+ render(this, { interactive: true });
+ this.valueOnFocus = this.model.getValue();
+ if (this.hasEditablePrompts && !this.model.at(this.model.anchor).parentPrompt)
+ this.executeCommand("moveToNextPlaceholder");
+ this.focusBlurInProgress = false;
+ }
+ onBlur() {
+ var _a3, _b3, _c2;
+ if (this.focusBlurInProgress || this.blurred)
+ return;
+ this.focusBlurInProgress = true;
+ this.stopCoalescingUndo();
+ this.blurred = true;
+ this.ariaLiveText.textContent = "";
+ hideSuggestionPopover(this);
+ if (this.model.getValue() !== this.valueOnFocus) {
+ (_a3 = this.host) == null ? void 0 : _a3.dispatchEvent(
+ new Event("change", { bubbles: true, composed: true })
+ );
+ }
+ this.disconnectFromVirtualKeyboard();
+ (_b3 = this.host) == null ? void 0 : _b3.dispatchEvent(
+ new Event("blur", {
+ bubbles: false,
+ // DOM 'focus' and 'blur' don't bubble
+ composed: true
+ })
+ );
+ (_c2 = this.host) == null ? void 0 : _c2.dispatchEvent(
+ new UIEvent("focusout", {
+ bubbles: true,
+ // unlike 'blur', focusout does bubble
+ composed: true
+ })
+ );
+ requestUpdate(this);
+ this.focusBlurInProgress = false;
+ hideEnvironmentPopover();
+ const controller = new AbortController();
+ const signal = controller.signal;
+ document.addEventListener(
+ "visibilitychange",
+ () => {
+ if (document.visibilityState === "hidden") {
+ document.addEventListener(
+ "visibilitychange",
+ () => {
+ if (isValidMathfield(this) && document.visibilityState === "visible")
+ this.focus({ preventScroll: true });
+ },
+ { once: true, signal }
+ );
+ }
+ },
+ { once: true, signal }
+ );
+ setTimeout(() => controller.abort(), 100);
+ }
+ onInput(text) {
+ onInput(this, text);
+ }
+ onKeystroke(evt) {
+ return onKeystroke(this, evt);
+ }
+ onCompositionStart(_composition) {
+ this.model.deleteAtoms(range(this.model.selection));
+ const caretPoint = getCaretPoint(this.field);
+ if (!caretPoint)
+ return;
+ requestAnimationFrame(() => {
+ render(this);
+ this.keyboardDelegate.moveTo(
+ caretPoint.x,
+ caretPoint.y - caretPoint.height
+ );
+ });
+ }
+ onCompositionUpdate(composition) {
+ updateComposition(this.model, composition);
+ requestUpdate(this);
+ }
+ onCompositionEnd(composition) {
+ removeComposition(this.model);
+ onInput(this, composition, { simulateKeystroke: true });
+ }
+ onCut(ev) {
+ if (!this.isSelectionEditable) {
+ this.model.announce("plonk");
+ return;
+ }
+ if (this.model.contentWillChange({ inputType: "deleteByCut" })) {
+ this.stopCoalescingUndo();
+ ModeEditor.onCopy(this, ev);
+ deleteRange(this.model, range(this.model.selection), "deleteByCut");
+ this.snapshot("cut");
+ requestUpdate(this);
+ }
+ }
+ onCopy(ev) {
+ ModeEditor.onCopy(this, ev);
+ }
+ onPaste(ev) {
+ let result = this.isSelectionEditable;
+ if (result) {
+ result = ModeEditor.onPaste(
+ this.model.at(this.model.position).mode,
+ this,
+ ev.clipboardData
+ );
+ }
+ if (!result)
+ this.model.announce("plonk");
+ ev.preventDefault();
+ ev.stopPropagation();
+ return result;
+ }
+ onGeometryChange() {
+ this._menu.hide();
+ updateSuggestionPopoverPosition(this);
+ updateEnvironmentPopover(this);
+ }
+ onWheel(ev) {
+ const wheelDelta = 5 * ev.deltaX;
+ if (!Number.isFinite(wheelDelta) || wheelDelta === 0)
+ return;
+ const field = this.field;
+ if (wheelDelta < 0 && field.scrollLeft === 0)
+ return;
+ if (wheelDelta > 0 && field.offsetWidth + field.scrollLeft >= field.scrollWidth)
+ return;
+ field.scrollBy({ top: 0, left: wheelDelta });
+ ev.preventDefault();
+ ev.stopPropagation();
+ }
+ getHTMLElement(atom) {
+ let target = atom;
+ while (!target.id && target.hasChildren)
+ target = atom.children[0];
+ return this.field.querySelector(
+ `[data-atom-id="${target.id}"]`
+ );
+ }
+ get context() {
+ var _a3, _b3;
+ return {
+ registers: (_a3 = this.options.registers) != null ? _a3 : {},
+ smartFence: this.smartFence,
+ letterShapeStyle: this.letterShapeStyle,
+ minFontScale: this.minFontScale,
+ placeholderSymbol: (_b3 = this.options.placeholderSymbol) != null ? _b3 : "\u25A2",
+ colorMap: (name) => this.colorMap(name),
+ backgroundColorMap: (name) => this.backgroundColorMap(name),
+ getMacro: (token) => getMacroDefinition(
+ token,
+ this.options.macros
+ ),
+ atomIdsSettings: { seed: "random", groupNumbers: false }
+ };
+ }
+};
+
+// src/editor/speech-read-aloud.ts
+function removeHighlight(element) {
+ if (!element)
+ return;
+ element.classList.remove("ML__highlight");
+ if (element.children)
+ for (const child of element.children)
+ removeHighlight(child);
+}
+function highlightAtomID(element, atomID) {
+ var _a3;
+ if (!element)
+ return;
+ if (!atomID || ((_a3 = element.dataset) == null ? void 0 : _a3.atomId) === atomID) {
+ element.classList.add("ML__highlight");
+ if (element.children && element.children.length > 0) {
+ [...element.children].forEach((x) => {
+ if (x instanceof HTMLElement)
+ highlightAtomID(x);
+ });
+ }
+ } else {
+ element.classList.remove("ML__highlight");
+ if (element.children && element.children.length > 0) {
+ [...element.children].forEach((x) => {
+ if (x instanceof HTMLElement)
+ highlightAtomID(x, atomID);
+ });
+ }
+ }
+}
+function defaultReadAloudHook(element, text) {
+ var _a3;
+ if (!isBrowser())
+ return;
+ if (window.MathfieldElement.speechEngine !== "amazon") {
+ console.error(
+ `MathLive 0.98.5: Use Amazon TTS Engine for synchronized highlighting`
+ );
+ if (typeof window.MathfieldElement.speakHook === "function")
+ window.MathfieldElement.speakHook(text);
+ return;
+ }
+ if (!window.AWS) {
+ console.error(
+ `MathLive 0.98.5: AWS SDK not loaded. See https://www.npmjs.com/package/aws-sdk`
+ );
+ return;
+ }
+ const polly = new window.AWS.Polly({ apiVersion: "2016-06-10" });
+ const parameters = {
+ OutputFormat: "json",
+ VoiceId: (_a3 = window.MathfieldElement.speechEngineVoice) != null ? _a3 : "Joanna",
+ Engine: "standard",
+ // The neural engine does not appear to support ssml marks
+ Text: text,
+ TextType: "ssml",
+ SpeechMarkTypes: ["ssml"]
+ };
+ globalMathLive().readAloudElement = element;
+ polly.synthesizeSpeech(parameters, (err, data) => {
+ if (err) {
+ console.trace(
+ `MathLive 0.98.5: \`polly.synthesizeSpeech()\` error: ${err}`
+ );
+ return;
+ }
+ if (!(data == null ? void 0 : data.AudioStream)) {
+ console.log("polly.synthesizeSpeech():", data);
+ return;
+ }
+ const response = new TextDecoder("utf-8").decode(
+ new Uint8Array(data.AudioStream)
+ );
+ globalMathLive().readAloudMarks = response.split("\n").map((x) => x ? JSON.parse(x) : {});
+ globalMathLive().readAloudTokens = [];
+ for (const mark of globalMathLive().readAloudMarks)
+ if (mark.value)
+ globalMathLive().readAloudTokens.push(mark.value);
+ globalMathLive().readAloudCurrentMark = "";
+ parameters.OutputFormat = "mp3";
+ parameters.SpeechMarkTypes = [];
+ polly.synthesizeSpeech(parameters, (err2, data2) => {
+ if (err2) {
+ console.trace(
+ `MathLive 0.98.5: \`polly.synthesizeSpeech("${text}") error:${err2}`
+ );
+ return;
+ }
+ if (!(data2 == null ? void 0 : data2.AudioStream))
+ return;
+ const uInt8Array = new Uint8Array(data2.AudioStream);
+ const blob = new Blob([uInt8Array.buffer], {
+ type: "audio/mpeg"
+ });
+ const url = URL.createObjectURL(blob);
+ const global = globalMathLive();
+ if (!global.readAloudAudio) {
+ global.readAloudAudio = new Audio();
+ global.readAloudAudio.addEventListener("ended", () => {
+ const mathfield = global.readAloudMathfield;
+ global.readAloudStatus = "ended";
+ document.body.dispatchEvent(
+ new Event("read-aloud-status-change", {
+ bubbles: true,
+ composed: true
+ })
+ );
+ if (mathfield) {
+ render(mathfield);
+ global.readAloudElement = null;
+ global.readAloudMathfield = null;
+ global.readAloudTokens = [];
+ global.readAloudMarks = [];
+ global.readAloudCurrentMark = "";
+ } else
+ removeHighlight(global.readAloudElement);
+ });
+ global.readAloudAudio.addEventListener("timeupdate", () => {
+ let value = "";
+ const target = global.readAloudAudio.currentTime * 1e3 + 100;
+ for (const mark of global.readAloudMarks)
+ if (mark.time < target)
+ value = mark.value;
+ if (global.readAloudCurrentMark !== value) {
+ global.readAloudCurrentToken = value;
+ if (value && value === global.readAloudFinalToken)
+ global.readAloudAudio.pause();
+ else {
+ global.readAloudCurrentMark = value;
+ highlightAtomID(
+ global.readAloudElement,
+ global.readAloudCurrentMark
+ );
+ }
+ }
+ });
+ } else
+ global.readAloudAudio.pause();
+ global.readAloudAudio.src = url;
+ global.readAloudStatus = "playing";
+ document.body.dispatchEvent(
+ new Event("read-aloud-status-change", {
+ bubbles: true,
+ composed: true
+ })
+ );
+ global.readAloudAudio.play();
+ });
+ });
+}
+
+// src/public/mathfield-element.ts
+if (!isBrowser()) {
+ console.error(
+ `MathLive 0.98.5: this version of the MathLive library is for use in the browser. A subset of the API is available on the server side in the "mathlive-ssr" library. If using server side rendering (with React for example) you may want to do a dynamic import of the MathLive library inside a \`useEffect()\` call.`
+ );
+}
+var gDeferredState = /* @__PURE__ */ new WeakMap();
+var AUDIO_FEEDBACK_VOLUME = 0.5;
+var DEPRECATED_OPTIONS = {
+ letterShapeStyle: "mf.letterShapeStyle = ...",
+ horizontalSpacingScale: 'Removed. Use `"thinmuskip"`, `"medmuskip"`, and `"thickmuskip"` registers ',
+ macros: "mf.macros = ...",
+ registers: "mf.registers = ...",
+ backgroundColorMap: "mf.backgroundColorMap = ...",
+ colorMap: "mf.colorMap = ...",
+ enablePopover: "mf.popoverPolicy = ...",
+ mathModeSpace: "mf.mathModeSpace = ...",
+ placeholderSymbol: "mf.placeholderSymbol = ...",
+ readOnly: "mf.readOnly = ...",
+ removeExtraneousParentheses: "mf.removeExtraneousParentheses = ...",
+ scriptDepth: "mf.scriptDepth = ...",
+ smartFence: "mf.smartFence = ...",
+ smartMode: "mf.smartMode = ...",
+ smartSuperscript: "mf.smartSuperscript = ...",
+ inlineShortcutTimeout: "mf.inlineShortcutTimeout = ...",
+ inlineShortcuts: "mf.inlineShortcuts = ...",
+ keybindings: "mf.keybindings = ...",
+ virtualKeyboardMode: "mf.mathVirtualKeyboardPolicy = ...",
+ customVirtualKeyboardLayers: "mathVirtualKeyboard.layers = ...",
+ customVirtualKeyboards: "mathVirtualKeyboard.layouts = ...",
+ keypressSound: "mathVirtualKeyboard.keypressSound = ...",
+ keypressVibration: "mathVirtualKeyboard.keypressVibration = ...",
+ plonkSound: "mathVirtualKeyboard.plonkSound = ...",
+ virtualKeyboardContainer: "mathVirtualKeyboard.container = ...",
+ virtualKeyboardLayout: "mathVirtualKeyboard.alphabeticLayout = ...",
+ virtualKeyboardTheme: "No longer supported",
+ virtualKeyboardToggleGlyph: "No longer supported",
+ virtualKeyboardToolbar: "mathVirtualKeyboard.editToolbar = ...",
+ virtualKeyboards: "Use `mathVirtualKeyboard.layouts`",
+ speechEngine: "`MathfieldElement.speechEngine`",
+ speechEngineRate: "`MathfieldElement.speechEngineRate`",
+ speechEngineVoice: "`MathfieldElement.speechEngineVoice`",
+ textToSpeechMarkup: "`MathfieldElement.textToSpeechMarkup`",
+ textToSpeechRules: "`MathfieldElement.textToSpeechRules`",
+ textToSpeechRulesOptions: "`MathfieldElement.textToSpeechRulesOptions`",
+ readAloudHook: "`MathfieldElement.readAloudHook`",
+ speakHook: "`MathfieldElement.speakHook`",
+ computeEngine: "`MathfieldElement.computeEngine`",
+ fontsDirectory: "`MathfieldElement.fontsDirectory`",
+ soundsDirectory: "`MathfieldElement.soundsDirectory`",
+ createHTML: "`MathfieldElement.createHTML`",
+ onExport: "`MathfieldElement.onExport`",
+ onInlineShortcut: "`MathfieldElement.onInlineShortcut`",
+ onScrollIntoView: "`MathfieldElement.onScrollIntoView`",
+ locale: "MathfieldElement.locale = ...",
+ strings: "MathfieldElement.strings = ...",
+ decimalSeparator: "MathfieldElement.decimalSeparator = ...",
+ fractionNavigationOrder: "MathfieldElement.fractionNavigationOrder = ..."
+};
+var _MathfieldElement = class _MathfieldElement extends HTMLElement {
+ static get formAssociated() {
+ return isElementInternalsSupported();
+ }
+ /**
+ * Private lifecycle hooks.
+ * If adding a 'boolean' attribute, add its default value to getOptionsFromAttributes
+ * @internal
+ */
+ static get optionsAttributes() {
+ return {
+ "default-mode": "string",
+ "letter-shape-style": "string",
+ "min-font-scale": "number",
+ "popover-policy": "string",
+ "math-mode-space": "string",
+ "read-only": "boolean",
+ "remove-extraneous-parentheses": "on/off",
+ "smart-fence": "on/off",
+ "smart-mode": "on/off",
+ "smart-superscript": "on/off",
+ "inline-shortcut-timeout": "string",
+ "script-depth": "string",
+ "placeholder": "string",
+ "virtual-keyboard-target-origin": "string",
+ "math-virtual-keyboard-policy": "string"
+ };
+ }
+ /**
+ * Custom elements lifecycle hooks
+ * @internal
+ */
+ static get observedAttributes() {
+ return [
+ ...Object.keys(this.optionsAttributes),
+ "contenteditable",
+ // Global attribute
+ "disabled",
+ // Global attribute
+ "readonly",
+ // A semi-global attribute (not all standard elements support it, but some do)
+ "read-only"
+ // Alternate spelling for `readonly`
+ ];
+ }
+ /**
+ * A URL fragment pointing to the directory containing the fonts
+ * necessary to render a formula.
+ *
+ * These fonts are available in the `/dist/fonts` directory of the SDK.
+ *
+ * Customize this value to reflect where you have copied these fonts,
+ * or to use the CDN version.
+ *
+ * The default value is `"./fonts"`. Use `null` to prevent
+ * any fonts from being loaded.
+ *
+ * Changing this setting after the mathfield has been created will have
+ * no effect.
+ *
+ * ```javascript
+ * {
+ * // Use the CDN version
+ * fontsDirectory: ''
+ * }
+ * ```
+ *
+ * ```javascript
+ * {
+ * // Use a directory called "fonts", located next to the
+ * // `mathlive.js` (or `mathlive.mjs`) file.
+ * fontsDirectory: './fonts'
+ * }
+ * ```
+ *
+ * ```javascript
+ * {
+ * // Use a directory located at the root of your website
+ * fontsDirectory: 'https://example.com/fonts'
+ * }
+ * ```
+ *
+ */
+ static get fontsDirectory() {
+ return this._fontsDirectory;
+ }
+ static set fontsDirectory(value) {
+ if (value !== this._fontsDirectory) {
+ this._fontsDirectory = value;
+ reloadFonts();
+ }
+ }
+ /** @internal */
+ get fontsDirectory() {
+ throw new Error("Use MathfieldElement.fontsDirectory instead");
+ }
+ /** @internal */
+ set fontsDirectory(_value) {
+ throw new Error("Use MathfieldElement.fontsDirectory instead");
+ }
+ /**
+ * A URL fragment pointing to the directory containing the optional
+ * sounds used to provide feedback while typing.
+ *
+ * Some default sounds are available in the `/dist/sounds` directory of the SDK.
+ *
+ * Use `null` to prevent any sound from being loaded.
+ * @category Virtual Keyboard
+ */
+ static get soundsDirectory() {
+ return this._soundsDirectory;
+ }
+ static set soundsDirectory(value) {
+ this._soundsDirectory = value;
+ this.audioBuffers = {};
+ }
+ /** @internal */
+ get soundsDirectory() {
+ throw new Error("Use MathfieldElement.soundsDirectory instead");
+ }
+ /** @internal */
+ set soundsDirectory(_value) {
+ throw new Error("Use MathfieldElement.soundsDirectory instead");
+ }
+ /**
+ * When a key on the virtual keyboard is pressed, produce a short audio
+ * feedback.
+ *
+ * If the property is set to a `string`, the same sound is played in all
+ * cases. Otherwise, a distinct sound is played:
+ *
+ * - `delete` a sound played when the delete key is pressed
+ * - `return` ... when the return/tab key is pressed
+ * - `spacebar` ... when the spacebar is pressed
+ * - `default` ... when any other key is pressed. This property is required,
+ * the others are optional. If they are missing, this sound is played as
+ * well.
+ *
+ * The value of the properties should be either a string, the name of an
+ * audio file in the `soundsDirectory` directory or `null` to suppress the sound.
+ * @category Virtual Keyboard
+ */
+ static get keypressSound() {
+ return this._keypressSound;
+ }
+ static set keypressSound(value) {
+ var _a3, _b3, _c2;
+ this.audioBuffers = {};
+ if (value === null) {
+ this._keypressSound = {
+ spacebar: null,
+ return: null,
+ delete: null,
+ default: null
+ };
+ } else if (typeof value === "string") {
+ this._keypressSound = {
+ spacebar: value,
+ return: value,
+ delete: value,
+ default: value
+ };
+ } else if (typeof value === "object" && "default" in value) {
+ this._keypressSound = {
+ spacebar: (_a3 = value.spacebar) != null ? _a3 : value.default,
+ return: (_b3 = value.return) != null ? _b3 : value.default,
+ delete: (_c2 = value.delete) != null ? _c2 : value.default,
+ default: value.default
+ };
+ }
+ }
+ /**
+ * Sound played to provide feedback when a command has no effect, for example
+ * when pressing the spacebar at the root level.
+ *
+ * The property is either:
+ * - a string, the name of an audio file in the `soundsDirectory` directory
+ * - null to turn off the sound
+ */
+ static get plonkSound() {
+ return this._plonkSound;
+ }
+ static set plonkSound(value) {
+ this.audioBuffers = {};
+ this._plonkSound = value;
+ }
+ /** @internal */
+ static get audioContext() {
+ if (!this._audioContext)
+ this._audioContext = new AudioContext();
+ return this._audioContext;
+ }
+ // @todo https://github.com/microsoft/TypeScript/issues/30024
+ /**
+ * Indicates which speech engine to use for speech output.
+ *
+ * Use `local` to use the OS-specific TTS engine.
+ *
+ * Use `amazon` for Amazon Text-to-Speech cloud API. You must include the
+ * AWS API library and configure it with your API key before use.
+ *
+ * **See**
+ * {@link https://cortexjs.io/mathlive/guides/speech/ | Guide: Speech}
+ */
+ static get speechEngine() {
+ return this._speechEngine;
+ }
+ static set speechEngine(value) {
+ this._speechEngine = value;
+ }
+ /**
+ * Sets the speed of the selected voice.
+ *
+ * One of `x-slow`, `slow`, `medium`, `fast`, `x-fast` or a value as a
+ * percentage.
+ *
+ * Range is `20%` to `200%` For example `200%` to indicate a speaking rate
+ * twice the default rate.
+ */
+ static get speechEngineRate() {
+ return this._speechEngineRate;
+ }
+ static set speechEngineRate(value) {
+ this._speechEngineRate = value;
+ }
+ /**
+ * Indicates the voice to use with the speech engine.
+ *
+ * This is dependent on the speech engine. For Amazon Polly, see here:
+ * https://docs.aws.amazon.com/polly/latest/dg/voicelist.html
+ *
+ */
+ static get speechEngineVoice() {
+ return this._speechEngineVoice;
+ }
+ static set speechEngineVoice(value) {
+ this._speechEngineVoice = value;
+ }
+ /**
+ * The markup syntax to use for the output of conversion to spoken text.
+ *
+ * Possible values are `ssml` for the SSML markup or `mac` for the macOS
+ * markup, i.e. `[[ltr]]`.
+ *
+ */
+ static get textToSpeechMarkup() {
+ return this._textToSpeechMarkup;
+ }
+ static set textToSpeechMarkup(value) {
+ this._textToSpeechMarkup = value;
+ }
+ /**
+ * Specify which set of text to speech rules to use.
+ *
+ * A value of `mathlive` indicates that the simple rules built into MathLive
+ * should be used.
+ *
+ * A value of `sre` indicates that the Speech Rule Engine from Volker Sorge
+ * should be used.
+ *
+ * **(Caution)** SRE is not included or loaded by MathLive. For this option to
+ * work SRE should be loaded separately.
+ *
+ * **See**
+ * {@link https://cortexjs.io/mathlive/guides/speech/ | Guide: Speech}
+ */
+ static get textToSpeechRules() {
+ return this._textToSpeechRules;
+ }
+ static set textToSpeechRules(value) {
+ this._textToSpeechRules = value;
+ }
+ /**
+ * A set of key/value pairs that can be used to configure the speech rule
+ * engine.
+ *
+ * Which options are available depends on the speech rule engine in use.
+ * There are no options available with MathLive's built-in engine. The
+ * options for the SRE engine are documented
+ * {@link https://github.com/zorkow/speech-rule-engine | here}
+ */
+ static get textToSpeechRulesOptions() {
+ return this._textToSpeechRulesOptions;
+ }
+ static set textToSpeechRulesOptions(value) {
+ this._textToSpeechRulesOptions = value;
+ }
+ /**
+ * The locale (language + region) to use for string localization.
+ *
+ * If none is provided, the locale of the browser is used.
+ * @category Localization
+ *
+ */
+ static get locale() {
+ return l10n.locale;
+ }
+ static set locale(value) {
+ if (value === "auto")
+ value = navigator.language.slice(0, 5);
+ l10n.locale = value;
+ }
+ /** @internal */
+ get locale() {
+ throw new Error("Use MathfieldElement.locale instead");
+ }
+ /** @internal */
+ set locale(_value) {
+ throw new Error("Use MathfieldElement.locale instead");
+ }
+ /**
+ * An object whose keys are a locale string, and whose values are an object of
+ * string identifier to localized string.
+ *
+ * **Example**
+ *
+ ```js example
+ mf.strings = {
+ "fr-CA": {
+ "tooltip.undo": "Annuler",
+ "tooltip.redo": "Refaire",
+ }
+ }
+ ```
+ *
+ * If the locale is already supported, this will override the existing
+ * strings. If the locale is not supported, it will be added.
+ *
+ * @category Localization
+ */
+ static get strings() {
+ return l10n.strings;
+ }
+ static set strings(value) {
+ l10n.merge(value);
+ }
+ /** @internal */
+ get strings() {
+ throw new Error("Use MathfieldElement.strings instead");
+ }
+ /** @internal */
+ set strings(_val) {
+ throw new Error("Use MathfieldElement.strings instead");
+ }
+ /**
+ * The symbol used to separate the integer part from the fractional part of a
+ * number.
+ *
+ * When `","` is used, the corresponding LaTeX string is `{,}`, in order
+ * to ensure proper spacing (otherwise an extra gap is displayed after the
+ * comma).
+ *
+ * This affects:
+ * - what happens when the `,` key is pressed (if `decimalSeparator` is
+ * `","`, the `{,}` LaTeX string is inserted when following some digits)
+ * - the label and behavior of the "." key in the default virtual keyboard
+ *
+ * **Default**: `"."`
+ * @category Localization
+ */
+ static get decimalSeparator() {
+ return this._decimalSeparator;
+ }
+ static set decimalSeparator(value) {
+ this._decimalSeparator = value;
+ if (this._computeEngine) {
+ this._computeEngine.latexOptions.decimalMarker = this.decimalSeparator === "," ? "{,}" : ".";
+ }
+ }
+ /** @internal */
+ get decimalSeparator() {
+ throw new Error("Use MathfieldElement.decimalSeparator instead");
+ }
+ /** @internal */
+ set decimalSeparator(_val) {
+ throw new Error("Use MathfieldElement.decimalSeparator instead");
+ }
+ /**
+ * A custom compute engine instance. If none is provided, a default one is
+ * used. If `null` is specified, no compute engine is used.
+ */
+ static get computeEngine() {
+ var _a3, _b3;
+ if (this._computeEngine === void 0) {
+ const ComputeEngineCtor = (_a3 = window[Symbol.for("io.cortexjs.compute-engine")]) == null ? void 0 : _a3.ComputeEngine;
+ if (!ComputeEngineCtor)
+ return null;
+ this._computeEngine = new ComputeEngineCtor();
+ if (this._computeEngine && this.decimalSeparator === ",")
+ this._computeEngine.latexOptions.decimalMarker = "{,}";
+ }
+ return (_b3 = this._computeEngine) != null ? _b3 : null;
+ }
+ static set computeEngine(value) {
+ this._computeEngine = value;
+ }
+ /** @internal */
+ get computeEngine() {
+ throw new Error("Use MathfieldElement.computeEngine instead");
+ }
+ /** @internal */
+ set computeEngine(_val) {
+ throw new Error("Use MathfieldElement.computeEngine instead");
+ }
+ static get isFunction() {
+ if (typeof this._isFunction !== "function")
+ return () => false;
+ return this._isFunction;
+ }
+ static set isFunction(value) {
+ this._isFunction = value;
+ }
+ static async loadSound(sound) {
+ delete this.audioBuffers[sound];
+ let soundFile = "";
+ switch (sound) {
+ case "keypress":
+ soundFile = this._keypressSound.default;
+ break;
+ case "return":
+ soundFile = this._keypressSound.return;
+ break;
+ case "spacebar":
+ soundFile = this._keypressSound.spacebar;
+ break;
+ case "delete":
+ soundFile = this._keypressSound.delete;
+ break;
+ case "plonk":
+ soundFile = this.plonkSound;
+ break;
+ }
+ if (typeof soundFile !== "string")
+ return;
+ soundFile = soundFile.trim();
+ const soundsDirectory = this.soundsDirectory;
+ if (soundsDirectory === void 0 || soundsDirectory === null || soundsDirectory === "null" || soundFile === "none" || soundFile === "null")
+ return;
+ try {
+ const response = await fetch(
+ await resolveUrl(`${soundsDirectory}/${soundFile}`)
+ );
+ const arrayBuffer = await response.arrayBuffer();
+ const audioBuffer = await this.audioContext.decodeAudioData(arrayBuffer);
+ this.audioBuffers[sound] = audioBuffer;
+ } catch (e) {
+ }
+ }
+ static async playSound(name) {
+ if (this.audioContext.state === "suspended" || this.audioContext.state === "interrupted")
+ await this.audioContext.resume();
+ if (!this.audioBuffers[name])
+ await this.loadSound(name);
+ if (!this.audioBuffers[name])
+ return;
+ const soundSource = this.audioContext.createBufferSource();
+ soundSource.buffer = this.audioBuffers[name];
+ const gainNode = this.audioContext.createGain();
+ gainNode.gain.value = AUDIO_FEEDBACK_VOLUME;
+ soundSource.connect(gainNode).connect(this.audioContext.destination);
+ soundSource.start();
+ }
+ /**
+ * To create programmatically a new mathfield use:
+ *
+ ```javascript
+ let mfe = new MathfieldElement();
+
+ // Set initial value and options
+ mfe.value = "\\frac{\\sin(x)}{\\cos(x)}";
+
+ // Options can be set either as an attribute (for simple options)...
+ mfe.setAttribute("letter-shape-style", "french");
+
+ // ... or using properties
+ mfe.letterShapeStyle = "french";
+
+ // Attach the element to the DOM
+ document.body.appendChild(mfe);
+ ```
+ */
+ constructor(options) {
+ super();
+ if (options) {
+ const warnings = [];
+ for (const key of Object.keys(options)) {
+ if (DEPRECATED_OPTIONS[key]) {
+ if (DEPRECATED_OPTIONS[key].startsWith("mf.")) {
+ if (!DEPRECATED_OPTIONS[key].startsWith(`mf.${key}`)) {
+ const newName = DEPRECATED_OPTIONS[key].match(/([a-zA-Z]+) =/);
+ warnings.push(
+ `Option \`${key}\` has been renamed \`${newName[1]}\``
+ );
+ } else {
+ warnings.push(
+ `Option \`${key}\` cannot be used as a constructor option. Use ${DEPRECATED_OPTIONS[key]}`
+ );
+ }
+ } else {
+ warnings.push(
+ `Option \`${key}\` cannot be used as a constructor option. Use ${DEPRECATED_OPTIONS[key]}`
+ );
+ }
+ }
+ }
+ if (warnings.length > 0) {
+ console.group(
+ `%cMathLive 0.98.5: %cInvalid Options`,
+ "color:#12b; font-size: 1.1rem",
+ "color:#db1111; font-size: 1.1rem"
+ );
+ console.warn(
+ `Some of the options passed to \`new MathfieldElement(...)\` are invalid.
+ See https://cortexjs.io/mathlive/changelog/ for details.`
+ );
+ for (const warning of warnings)
+ console.warn(warning);
+ console.groupEnd();
+ }
+ }
+ if (isElementInternalsSupported()) {
+ this._internals = this.attachInternals();
+ this._internals["role"] = "math";
+ this._internals.ariaLabel = "math input field";
+ this._internals.ariaMultiLine = "false";
+ }
+ this.attachShadow({ mode: "open", delegatesFocus: true });
+ if (this.shadowRoot && "adoptedStyleSheets" in this.shadowRoot) {
+ this.shadowRoot.adoptedStyleSheets = [
+ getStylesheet("core"),
+ getStylesheet("mathfield"),
+ getStylesheet("mathfield-element"),
+ getStylesheet("ui"),
+ getStylesheet("menu")
+ ];
+ this.shadowRoot.appendChild(document.createElement("span"));
+ const slot = document.createElement("slot");
+ slot.style.display = "none";
+ this.shadowRoot.appendChild(slot);
+ } else {
+ this.shadowRoot.innerHTML = "';
+ }
+ if (options)
+ this._setOptions(options);
+ this.shadowRoot.addEventListener("slotchange", () => {
+ var _a3;
+ const slot = this.shadowRoot.querySelector("slot:not([name])");
+ this.value = (_a3 = slot == null ? void 0 : slot.assignedNodes().map((x) => x.nodeType === 3 ? x.textContent : "").join("").trim()) != null ? _a3 : "";
+ });
+ }
+ showMenu(_) {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.showMenu(_)) != null ? _b3 : false;
+ }
+ /** @internal */
+ get mathVirtualKeyboard() {
+ throw new Error(
+ "The `mathVirtualKeyboard` property is not available on the MathfieldElement. Use `window.mathVirtualKeyboard` instead."
+ );
+ }
+ /** @internal */
+ onPointerDown() {
+ window.addEventListener(
+ "pointerup",
+ (evt) => {
+ var _a3;
+ if (evt.target === this && !((_a3 = this._mathfield) == null ? void 0 : _a3.disabled)) {
+ this.dispatchEvent(
+ new MouseEvent("click", {
+ altKey: evt.altKey,
+ button: evt.button,
+ buttons: evt.buttons,
+ clientX: evt.clientX,
+ clientY: evt.clientY,
+ ctrlKey: evt.ctrlKey,
+ metaKey: evt.metaKey,
+ movementX: evt.movementX,
+ movementY: evt.movementY,
+ relatedTarget: evt.relatedTarget,
+ screenX: evt.screenX,
+ screenY: evt.screenY,
+ shiftKey: evt.shiftKey
+ })
+ );
+ }
+ },
+ { once: true }
+ );
+ }
+ /**
+ * @inheritdoc Mathfield.getPromptValue
+ * @category Prompts */
+ getPromptValue(placeholderId, format) {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.getPromptValue(placeholderId, format)) != null ? _b3 : "";
+ }
+ /**
+ * @inheritdoc Mathfield.setPromptValue
+ * @category Prompts
+ * */
+ setPromptValue(id, content, insertOptions) {
+ var _a3;
+ (_a3 = this._mathfield) == null ? void 0 : _a3.setPromptValue(id, content, insertOptions);
+ }
+ /**
+ * Return the selection range for the specified prompt.
+ *
+ * This can be used for example to select the content of the prompt.
+ *
+ * ```js
+ * mf.selection = mf.getPromptRange('my-prompt-id');
+ * ```
+ *
+ * @category Prompts
+ *
+ */
+ getPromptRange(id) {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.getPromptRange(id)) != null ? _b3 : null;
+ }
+ /** Return the id of the prompts matching the filter.
+ * @category Prompts
+ */
+ getPrompts(filter) {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.getPrompts(filter)) != null ? _b3 : [];
+ }
+ get form() {
+ var _a3;
+ return (_a3 = this._internals) == null ? void 0 : _a3["form"];
+ }
+ get name() {
+ var _a3;
+ return (_a3 = this.getAttribute("name")) != null ? _a3 : "";
+ }
+ get type() {
+ return this.localName;
+ }
+ get mode() {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.model.mode) != null ? _b3 : this.defaultMode === "text" ? "text" : "math";
+ }
+ set mode(value) {
+ var _a3;
+ (_a3 = this._mathfield) == null ? void 0 : _a3.switchMode(value);
+ }
+ /**
+ * If the Compute Engine library is available, return a boxed MathJSON expression representing the value of the mathfield.
+ *
+ * To load the Compute Engine library, use:
+ * ```js
+ import 'https://unpkg.com/@cortex-js/compute-engine?module';
+ ```
+ *
+ * @category Accessing and changing the content
+ */
+ get expression() {
+ if (!this._mathfield)
+ return void 0;
+ if (!window[Symbol.for("io.cortexjs.compute-engine")]) {
+ console.error(
+ `MathLive 0.98.5: The CortexJS Compute Engine library is not available.
+
+ Load the library, for example with:
+
+ import "https://unpkg.com/@cortex-js/compute-engine?module"`
+ );
+ return null;
+ }
+ return this._mathfield.expression;
+ }
+ set expression(mathJson) {
+ var _a3, _b3;
+ if (!this._mathfield)
+ return;
+ const latex = (_b3 = (_a3 = _MathfieldElement.computeEngine) == null ? void 0 : _a3.box(mathJson).latex) != null ? _b3 : null;
+ if (latex !== null)
+ this._mathfield.setValue(latex);
+ if (!window[Symbol.for("io.cortexjs.compute-engine")]) {
+ console.error(
+ `MathLive 0.98.5: The CortexJS Compute Engine library is not available.
+
+ Load the library, for example with:
+
+ import "https://unpkg.com/@cortex-js/compute-engine?module"`
+ );
+ }
+ }
+ /**
+ * Return an array of LaTeX syntax errors, if any.
+ * @category Accessing and changing the content
+ */
+ get errors() {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.errors) != null ? _b3 : [];
+ }
+ _getOptions(keys) {
+ if (this._mathfield)
+ return get(this._mathfield.options, keys);
+ if (!gDeferredState.has(this))
+ return null;
+ return __spreadValues({}, get(
+ __spreadValues(__spreadValues({}, getDefault()), update(gDeferredState.get(this).options)),
+ keys
+ ));
+ }
+ getOptions(keys) {
+ console.warn(
+ `%cMathLive 0.98.5: %cDeprecated Usage%c
+ \`mf.getOptions()\` is deprecated. Read the property directly on the mathfield instead.
+ See https://cortexjs.io/mathlive/changelog/ for details.`,
+ "color:#12b; font-size: 1.1rem",
+ "color:#db1111; font-size: 1.1rem",
+ "color: inherit, font-size: 1rem"
+ );
+ if (this._mathfield)
+ return get(this._mathfield.options, keys);
+ if (!gDeferredState.has(this))
+ return null;
+ return get(
+ __spreadValues(__spreadValues({}, getDefault()), update(gDeferredState.get(this).options)),
+ keys
+ );
+ }
+ /** @internal */
+ reflectAttributes() {
+ const defaultOptions = getDefault();
+ const options = this._getOptions();
+ Object.keys(_MathfieldElement.optionsAttributes).forEach((x) => {
+ const prop = toCamelCase(x);
+ if (_MathfieldElement.optionsAttributes[x] === "on/off") {
+ if (defaultOptions[prop] !== options[prop])
+ this.setAttribute(x, options[prop] ? "on" : "off");
+ else
+ this.removeAttribute(x);
+ } else if (defaultOptions[prop] !== options[prop]) {
+ if (_MathfieldElement.optionsAttributes[x] === "boolean") {
+ if (options[prop]) {
+ this.setAttribute(x, "");
+ } else {
+ this.removeAttribute(x);
+ }
+ } else {
+ if (typeof options[prop] === "string" || typeof options[prop] === "number")
+ this.setAttribute(x, options[prop].toString());
+ }
+ }
+ });
+ }
+ /**
+ * @category Options
+ * @deprecated
+ */
+ getOption(key) {
+ console.warn(
+ `%cMathLive 0.98.5: %cDeprecated Usage%c
+ \`mf.getOption()\` is deprecated. Read the property directly on the mathfield instead.
+ See https://cortexjs.io/mathlive/changelog/ for details.`,
+ "color:#12b; font-size: 1.1rem",
+ "color:#db1111; font-size: 1.1rem",
+ "color: inherit, font-size: 1rem"
+ );
+ return this._getOptions([key])[key];
+ }
+ /** @internal */
+ _getOption(key) {
+ return this._getOptions([key])[key];
+ }
+ /** @internal */
+ _setOptions(options) {
+ if (this._mathfield)
+ this._mathfield.setOptions(options);
+ else if (gDeferredState.has(this)) {
+ const mergedOptions = __spreadValues(__spreadValues({}, gDeferredState.get(this).options), options);
+ gDeferredState.set(this, __spreadProps(__spreadValues({}, gDeferredState.get(this)), {
+ selection: { ranges: mergedOptions.readOnly ? [[0, 0]] : [[0, -1]] },
+ options: mergedOptions
+ }));
+ } else {
+ gDeferredState.set(this, {
+ value: void 0,
+ selection: { ranges: [[0, 0]] },
+ options,
+ menuItems: void 0
+ });
+ }
+ this.reflectAttributes();
+ }
+ /**
+ * @category Options
+ * @deprecated
+ */
+ setOptions(options) {
+ console.group(
+ `%cMathLive 0.98.5: %cDeprecated Usage`,
+ "color:#12b; font-size: 1.1rem",
+ "color:#db1111; font-size: 1.1rem"
+ );
+ console.warn(
+ ` \`mf.setOptions()\` is deprecated. Set the property directly on the mathfield instead.
+ See https://cortexjs.io/mathlive/changelog/ for details.`
+ );
+ for (const key of Object.keys(options)) {
+ if (DEPRECATED_OPTIONS[key]) {
+ console.warn(
+ `\`mf.setOptions({${key}:...})\` -> ${DEPRECATED_OPTIONS[key]}`
+ );
+ }
+ }
+ console.groupEnd();
+ this._setOptions(options);
+ }
+ /**
+ * @inheritdoc Mathfield.executeCommand
+ */
+ executeCommand(command) {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.executeCommand(command)) != null ? _b3 : false;
+ }
+ getValue(arg1, arg2, arg3) {
+ var _a3, _b3;
+ if (this._mathfield)
+ return this._mathfield.model.getValue(arg1, arg2, arg3);
+ if (gDeferredState.has(this)) {
+ let start;
+ let end;
+ let format = void 0;
+ if (isSelection(arg1)) {
+ [start, end] = arg1.ranges[0];
+ format = arg2;
+ } else if (isRange(arg1)) {
+ [start, end] = arg1;
+ format = arg2;
+ } else if (isOffset(arg1) && isOffset(arg2)) {
+ start = arg1;
+ end = arg2;
+ format = arg3;
+ } else {
+ start = 0;
+ end = -1;
+ format = arg1;
+ }
+ if ((format === void 0 || format === "latex") && start === 0 && end === -1)
+ return (_b3 = (_a3 = gDeferredState.get(this).value) != null ? _a3 : this.textContent) != null ? _b3 : "";
+ }
+ return "";
+ }
+ /**
+ * @inheritdoc Mathfield.setValue
+ * @category Accessing and changing the content
+ */
+ setValue(value, options) {
+ if (this._mathfield && value !== void 0) {
+ options != null ? options : options = { silenceNotifications: true, mode: "math" };
+ this._mathfield.setValue(value, options);
+ return;
+ }
+ if (gDeferredState.has(this)) {
+ const options2 = gDeferredState.get(this).options;
+ gDeferredState.set(this, {
+ value,
+ selection: { ranges: [[-1, -1]], direction: "forward" },
+ options: options2,
+ menuItems: void 0
+ });
+ return;
+ }
+ const attrOptions = getOptionsFromAttributes(this);
+ gDeferredState.set(this, {
+ value,
+ selection: { ranges: [[-1, -1]], direction: "forward" },
+ options: attrOptions,
+ menuItems: void 0
+ });
+ }
+ /**
+ * @inheritdoc Mathfield.hasFocus
+ *
+ * @category Focus
+ *
+ */
+ hasFocus() {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.hasFocus()) != null ? _b3 : false;
+ }
+ /**
+ * Sets the focus to the mathfield (will respond to keyboard input).
+ *
+ * @category Focus
+ *
+ */
+ focus() {
+ var _a3;
+ (_a3 = this._mathfield) == null ? void 0 : _a3.focus();
+ }
+ /**
+ * Remove the focus from the mathfield (will no longer respond to keyboard
+ * input).
+ *
+ * @category Focus
+ *
+ */
+ blur() {
+ var _a3;
+ (_a3 = this._mathfield) == null ? void 0 : _a3.blur();
+ }
+ /**
+ * Select the content of the mathfield.
+ * @category Selection
+ */
+ select() {
+ var _a3;
+ (_a3 = this._mathfield) == null ? void 0 : _a3.select();
+ }
+ /**
+ * @inheritdoc Mathfield.insert
+
+ * @category Accessing and changing the content
+ */
+ insert(s, options) {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.insert(s, options)) != null ? _b3 : false;
+ }
+ /**
+ * @inheritdoc Mathfield.applyStyle
+ *
+ * @category Accessing and changing the content
+ */
+ applyStyle(style, options) {
+ var _a3;
+ return (_a3 = this._mathfield) == null ? void 0 : _a3.applyStyle(style, options);
+ }
+ /**
+ *
+ * @category Accessing and changing the content
+ */
+ queryStyle(style) {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.queryStyle(style)) != null ? _b3 : "none";
+ }
+ /**
+ * @inheritdoc Mathfield.getCaretPoint
+ * @category Selection
+ */
+ get caretPoint() {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.getCaretPoint()) != null ? _b3 : null;
+ }
+ set caretPoint(point) {
+ var _a3;
+ if (!point)
+ return;
+ (_a3 = this._mathfield) == null ? void 0 : _a3.setCaretPoint(point.x, point.y);
+ }
+ /**
+ * `x` and `y` are in viewport coordinates.
+ *
+ * Return true if the location of the point is a valid caret location.
+ *
+ * See also [[`caretPoint`]]
+ * @category Selection
+ */
+ setCaretPoint(x, y) {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.setCaretPoint(x, y)) != null ? _b3 : false;
+ }
+ /** The offset closest to the location `(x, y)` in viewport coordinate.
+ *
+ * **`bias`**: if `0`, the vertical midline is considered to the left or
+ * right sibling. If `-1`, the left sibling is favored, if `+1`, the right
+ * sibling is favored.
+ *
+ * @category Selection
+ */
+ offsetFromPoint(x, y, options) {
+ if (!this._mathfield)
+ return -1;
+ return offsetFromPoint(this._mathfield, x, y, options);
+ }
+ /** The bounding rect of the atom at offset
+ *
+ * @category Selection
+ *
+ */
+ hitboxFromOffset(offset) {
+ if (!this._mathfield)
+ return null;
+ const atom = this._mathfield.model.at(offset);
+ if (!atom)
+ return null;
+ const bounds = getAtomBounds(this._mathfield, atom);
+ if (!bounds)
+ return null;
+ return new DOMRect(
+ bounds.left,
+ bounds.top,
+ bounds.right - bounds.left,
+ bounds.bottom - bounds.top
+ );
+ }
+ /**
+ * Reset the undo stack
+ *
+ * @category Undo
+ */
+ resetUndo() {
+ var _a3;
+ (_a3 = this._mathfield) == null ? void 0 : _a3.resetUndo();
+ }
+ /**
+ * Return whether there are undoable items
+ * @category Undo
+ */
+ canUndo() {
+ if (!this._mathfield)
+ return false;
+ return this._mathfield.canUndo();
+ }
+ /**
+ * Return whether there are redoable items
+ * @category Undo
+ */
+ canRedo() {
+ if (!this._mathfield)
+ return false;
+ return this._mathfield.canRedo();
+ }
+ /** @internal */
+ handleEvent(evt) {
+ var _a3, _b3, _c2, _d2;
+ if (Scrim.state !== "closed")
+ return;
+ if (((_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.menu) == null ? void 0 : _b3.state) !== "closed")
+ return;
+ if (evt.type === "pointerdown")
+ this.onPointerDown();
+ if (evt.type === "focus")
+ (_c2 = this._mathfield) == null ? void 0 : _c2.focus();
+ if (evt.type === "blur")
+ (_d2 = this._mathfield) == null ? void 0 : _d2.blur();
+ }
+ /**
+ * Custom elements lifecycle hooks
+ * @internal
+ */
+ connectedCallback() {
+ var _a3, _b3, _c2, _d2;
+ const computedStyle = window.getComputedStyle(this);
+ const shadowRoot = this.shadowRoot;
+ const userSelect = computedStyle.userSelect !== "none";
+ if (userSelect)
+ shadowRoot.host.addEventListener("pointerdown", this, true);
+ else {
+ const span = shadowRoot.querySelector("span");
+ span.style.pointerEvents = "none";
+ }
+ shadowRoot.host.addEventListener("focus", this, true);
+ shadowRoot.host.addEventListener("blur", this, true);
+ if (!isElementInternalsSupported()) {
+ if (!this.hasAttribute("role"))
+ this.setAttribute("role", "math");
+ if (!this.hasAttribute("aria-label"))
+ this.setAttribute("aria-label", "math input field");
+ this.setAttribute("aria-multiline", "false");
+ }
+ if (userSelect && !this.hasAttribute("contenteditable"))
+ this.setAttribute("contenteditable", "true");
+ if (!this.hasAttribute("tabindex"))
+ this.setAttribute("tabindex", "0");
+ const slot = shadowRoot.querySelector("slot:not([name])");
+ if (slot) {
+ try {
+ this._style = slot.assignedElements().filter((x) => x.tagName.toLowerCase() === "style").map((x) => x.textContent).join("");
+ } catch (error) {
+ console.error(error);
+ }
+ }
+ if (this._style) {
+ const styleElement = document.createElement("style");
+ styleElement.textContent = this._style;
+ shadowRoot.appendChild(styleElement);
+ }
+ let value = "";
+ if (this.hasAttribute("value"))
+ value = this.getAttribute("value");
+ else {
+ value = (_a3 = slot == null ? void 0 : slot.assignedNodes().map((x) => x.nodeType === 3 ? x.textContent : "").join("").trim()) != null ? _a3 : "";
+ }
+ this._mathfield = new _Mathfield(
+ shadowRoot.querySelector(":host > span"),
+ __spreadProps(__spreadValues({}, (_c2 = (_b3 = gDeferredState.get(this)) == null ? void 0 : _b3.options) != null ? _c2 : getOptionsFromAttributes(this)), {
+ eventSink: this,
+ value
+ })
+ );
+ if (!gDeferredState.has(this)) {
+ this.upgradeProperty("disabled");
+ this.upgradeProperty("readonly");
+ for (const attr of Object.keys(_MathfieldElement.optionsAttributes))
+ this.upgradeProperty(toCamelCase(attr));
+ }
+ if (!((_d2 = this._mathfield) == null ? void 0 : _d2.model)) {
+ this._mathfield = null;
+ return;
+ }
+ if (gDeferredState.has(this)) {
+ const mf = this._mathfield;
+ const state = gDeferredState.get(this);
+ const menuItems = state.menuItems;
+ mf.model.deferNotifications({ content: false, selection: false }, () => {
+ const value2 = state.value;
+ if (value2 !== void 0)
+ mf.setValue(value2);
+ mf.model.selection = state.selection;
+ gDeferredState.delete(this);
+ });
+ if (menuItems)
+ this.menuItems = menuItems;
+ }
+ window.queueMicrotask(() => {
+ if (!this.isConnected)
+ return;
+ this.dispatchEvent(
+ new Event("mount", {
+ cancelable: false,
+ bubbles: true,
+ composed: true
+ })
+ );
+ });
+ void loadFonts();
+ }
+ /**
+ * Custom elements lifecycle hooks
+ * @internal
+ */
+ disconnectedCallback() {
+ var _a3, _b3;
+ this.shadowRoot.host.removeEventListener("pointerdown", this, true);
+ if (!this._mathfield)
+ return;
+ window.queueMicrotask(
+ () => (
+ // Notify listeners that we have been unmounted
+ this.dispatchEvent(
+ new Event("unmount", {
+ cancelable: false,
+ bubbles: true,
+ composed: true
+ })
+ )
+ )
+ );
+ const options = get(
+ this._mathfield.options,
+ Object.keys(_MathfieldElement.optionsAttributes).map((x) => toCamelCase(x))
+ );
+ gDeferredState.set(this, {
+ value: this._mathfield.getValue(),
+ selection: this._mathfield.model.selection,
+ menuItems: (_b3 = (_a3 = this._mathfield.menu) == null ? void 0 : _a3.menuItems) != null ? _b3 : void 0,
+ options
+ });
+ this._mathfield.dispose();
+ this._mathfield = null;
+ }
+ /**
+ * Private lifecycle hooks
+ * @internal
+ */
+ upgradeProperty(prop) {
+ if (this.hasOwnProperty(prop)) {
+ const value = this[prop];
+ delete this[prop];
+ if (prop === "readonly" || prop === "read-only")
+ prop = "readOnly";
+ this[prop] = value;
+ }
+ }
+ /**
+ * Custom elements lifecycle hooks
+ * @internal
+ */
+ attributeChangedCallback(name, oldValue, newValue) {
+ if (oldValue === newValue)
+ return;
+ const hasValue = newValue !== null;
+ switch (name) {
+ case "contenteditable":
+ requestUpdate(this._mathfield);
+ break;
+ case "disabled":
+ this.disabled = hasValue;
+ break;
+ case "read-only":
+ case "readonly":
+ this.readOnly = hasValue;
+ break;
+ default:
+ }
+ }
+ get readonly() {
+ return this.hasAttribute("readonly") || this.hasAttribute("read-only");
+ }
+ set readonly(value) {
+ const isReadonly = Boolean(value);
+ if (isReadonly) {
+ this.setAttribute("readonly", "");
+ if (isElementInternalsSupported())
+ this._internals.ariaReadOnly = "true";
+ else
+ this.setAttribute("aria-readonly", "true");
+ this.setAttribute("aria-readonly", "true");
+ } else {
+ if (isElementInternalsSupported())
+ this._internals.ariaReadOnly = "false";
+ else
+ this.removeAttribute("aria-readonly");
+ this.removeAttribute("readonly");
+ this.removeAttribute("read-only");
+ }
+ this._setOptions({ readOnly: isReadonly });
+ }
+ get disabled() {
+ return this.hasAttribute("disabled");
+ }
+ set disabled(value) {
+ var _a3;
+ const isDisabled = Boolean(value);
+ if (isDisabled)
+ this.setAttribute("disabled", "");
+ else
+ this.removeAttribute("disabled");
+ if (isElementInternalsSupported())
+ this._internals.ariaDisabled = isDisabled ? "true" : "false";
+ else
+ this.setAttribute("aria-disabled", isDisabled ? "true" : "false");
+ if (isDisabled && ((_a3 = this._mathfield) == null ? void 0 : _a3.hasFocus) && window.mathVirtualKeyboard.visible)
+ this._mathfield.executeCommand("hideVirtualKeyboard");
+ }
+ /**
+ * The content of the mathfield as a LaTeX expression.
+ * ```js
+ * document.querySelector('mf').value = '\\frac{1}{\\pi}'
+ * ```
+ * @category Accessing and changing the content
+ */
+ get value() {
+ return this.getValue();
+ }
+ /**
+ * @category Accessing and changing the content
+ */
+ set value(value) {
+ this.setValue(value);
+ }
+ /** @category Customization
+ * @inheritDoc LayoutOptions.defaultMode
+ */
+ get defaultMode() {
+ return this._getOption("defaultMode");
+ }
+ set defaultMode(value) {
+ this._setOptions({ defaultMode: value });
+ }
+ /** @category Customization
+ * @inheritDoc LayoutOptions.macros
+ */
+ get macros() {
+ return this._getOption("macros");
+ }
+ set macros(value) {
+ this._setOptions({ macros: value });
+ }
+ /** @category Customization
+ * @inheritDoc Registers
+ */
+ get registers() {
+ const that = this;
+ return new Proxy(
+ {},
+ {
+ get: (_, prop) => {
+ if (typeof prop !== "string")
+ return void 0;
+ return that._getOption("registers")[prop];
+ },
+ set(_, prop, value) {
+ if (typeof prop !== "string")
+ return false;
+ that._setOptions({
+ registers: __spreadProps(__spreadValues({}, that._getOption("registers")), { [prop]: value })
+ });
+ return true;
+ }
+ }
+ );
+ }
+ set registers(value) {
+ this._setOptions({ registers: value });
+ }
+ /** @category Customization
+ * @inheritDoc LayoutOptions.colorMap
+ */
+ get colorMap() {
+ return this._getOption("colorMap");
+ }
+ set colorMap(value) {
+ this._setOptions({ colorMap: value });
+ }
+ /** @category Customization
+ * @inheritDoc LayoutOptions.backgroundColorMap
+ */
+ get backgroundColorMap() {
+ return this._getOption("backgroundColorMap");
+ }
+ set backgroundColorMap(value) {
+ this._setOptions({ backgroundColorMap: value });
+ }
+ /** @category Customization
+ * @inheritDoc LayoutOptions.letterShapeStyle
+ */
+ get letterShapeStyle() {
+ return this._getOption("letterShapeStyle");
+ }
+ set letterShapeStyle(value) {
+ this._setOptions({ letterShapeStyle: value });
+ }
+ /** @category Customization
+ * @inheritDoc LayoutOptions.minFontScale
+ */
+ get minFontScale() {
+ return this._getOption("minFontScale");
+ }
+ set minFontScale(value) {
+ this._setOptions({ minFontScale: value });
+ }
+ /** @category Customization
+ * @inheritDoc EditingOptions.smartMode
+ */
+ get smartMode() {
+ return this._getOption("smartMode");
+ }
+ set smartMode(value) {
+ this._setOptions({ smartMode: value });
+ }
+ /** @category Customization
+ * @inheritDoc EditingOptions.smartFence
+ */
+ get smartFence() {
+ return this._getOption("smartFence");
+ }
+ set smartFence(value) {
+ this._setOptions({ smartFence: value });
+ }
+ /** @category Customization
+ * @inheritDoc EditingOptions.smartSuperscript
+ */
+ get smartSuperscript() {
+ return this._getOption("smartSuperscript");
+ }
+ set smartSuperscript(value) {
+ this._setOptions({ smartSuperscript: value });
+ }
+ /** @category Customization
+ * @inheritDoc EditingOptions.scriptDepth
+ */
+ get scriptDepth() {
+ return this._getOption("scriptDepth");
+ }
+ set scriptDepth(value) {
+ this._setOptions({ scriptDepth: value });
+ }
+ /** @category Customization
+ * @inheritDoc EditingOptions.removeExtraneousParentheses
+ */
+ get removeExtraneousParentheses() {
+ return this._getOption("removeExtraneousParentheses");
+ }
+ set removeExtraneousParentheses(value) {
+ this._setOptions({ removeExtraneousParentheses: value });
+ }
+ /** @category Customization
+ * @inheritDoc EditingOptions.mathModeSpace
+ */
+ get mathModeSpace() {
+ return this._getOption("mathModeSpace");
+ }
+ set mathModeSpace(value) {
+ this._setOptions({ mathModeSpace: value });
+ }
+ /** @category Customization
+ * @inheritDoc EditingOptions.placeholderSymbol
+ */
+ get placeholderSymbol() {
+ return this._getOption("placeholderSymbol");
+ }
+ set placeholderSymbol(value) {
+ this._setOptions({ placeholderSymbol: value });
+ }
+ /** @category Customization
+ * @inheritDoc EditingOptions.popoverPolicy
+ */
+ get popoverPolicy() {
+ return this._getOption("popoverPolicy");
+ }
+ set popoverPolicy(value) {
+ this._setOptions({ popoverPolicy: value });
+ }
+ /**
+ * @category Customization
+ * @inheritDoc EditingOptions.environmentPopoverPolicy
+ */
+ get environmentPopoverPolicy() {
+ return this._getOption("environmentPopoverPolicy");
+ }
+ set environmentPopoverPolicy(value) {
+ this._setOptions({ environmentPopoverPolicy: value });
+ }
+ /**
+ * @category Customization
+ */
+ get menuItems() {
+ var _a3, _b3, _c2;
+ if (this._mathfield)
+ return (_a3 = this._mathfield.menu._menuItems.map((x) => x.menuItem)) != null ? _a3 : [];
+ return (_c2 = (_b3 = gDeferredState.get(this)) == null ? void 0 : _b3.menuItems) != null ? _c2 : [];
+ }
+ set menuItems(menuItems) {
+ var _a3;
+ if (this._mathfield) {
+ const btn = (_a3 = this._mathfield.element) == null ? void 0 : _a3.querySelector(
+ "[part=menu-toggle]"
+ );
+ if (btn)
+ btn.style.display = menuItems.length === 0 ? "none" : "";
+ this._mathfield.menu.menuItems = menuItems;
+ }
+ if (gDeferredState.has(this)) {
+ gDeferredState.set(this, __spreadProps(__spreadValues({}, gDeferredState.get(this)), {
+ menuItems
+ }));
+ } else {
+ gDeferredState.set(this, {
+ value: void 0,
+ selection: { ranges: [[0, 0]] },
+ options: getOptionsFromAttributes(this),
+ menuItems
+ });
+ }
+ }
+ /**
+ * @category Customization
+ * @category Virtual Keyboard
+ * @inheritDoc EditingOptions.mathVirtualKeyboardPolicy
+ */
+ get mathVirtualKeyboardPolicy() {
+ return this._getOption("mathVirtualKeyboardPolicy");
+ }
+ set mathVirtualKeyboardPolicy(value) {
+ this._setOptions({ mathVirtualKeyboardPolicy: value });
+ }
+ /** @category Customization
+ * @inheritDoc EditingOptions.inlineShortcuts
+ */
+ get inlineShortcuts() {
+ return this._getOption("inlineShortcuts");
+ }
+ set inlineShortcuts(value) {
+ this._setOptions({ inlineShortcuts: value });
+ }
+ /** @category Customization
+ * @inheritDoc EditingOptions.inlineShortcutTimeout
+ */
+ get inlineShortcutTimeout() {
+ return this._getOption("inlineShortcutTimeout");
+ }
+ set inlineShortcutTimeout(value) {
+ this._setOptions({ inlineShortcutTimeout: value });
+ }
+ /** @category Customization
+ * @inheritDoc EditingOptions.keybindings
+ */
+ get keybindings() {
+ return this._getOption("keybindings");
+ }
+ set keybindings(value) {
+ this._setOptions({ keybindings: value });
+ }
+ /** @category Hooks
+ * @inheritDoc MathfieldHooks.onInlineShortcut
+ */
+ get onInlineShortcut() {
+ return this._getOption("onInlineShortcut");
+ }
+ set onInlineShortcut(value) {
+ this._setOptions({ onInlineShortcut: value });
+ }
+ /** @category Hooks
+ * @inheritDoc MathfieldHooks.onScrollIntoView
+ */
+ get onScrollIntoView() {
+ return this._getOption("onScrollIntoView");
+ }
+ set onScrollIntoView(value) {
+ this._setOptions({ onScrollIntoView: value });
+ }
+ /** @category Hooks
+ * @inheritDoc MathfieldHooks.onExport
+ */
+ get onExport() {
+ return this._getOption("onExport");
+ }
+ set onExport(value) {
+ this._setOptions({ onExport: value });
+ }
+ get readOnly() {
+ return this._getOption("readOnly");
+ }
+ set readOnly(value) {
+ this._setOptions({ readOnly: value });
+ }
+ get isSelectionEditable() {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.isSelectionEditable) != null ? _b3 : false;
+ }
+ /** @category Prompts */
+ setPromptState(id, state, locked) {
+ var _a3;
+ (_a3 = this._mathfield) == null ? void 0 : _a3.setPromptState(id, state, locked);
+ }
+ getPromptState(id) {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.getPromptState(id)) != null ? _b3 : [void 0, true];
+ }
+ /** @category Virtual Keyboard */
+ get virtualKeyboardTargetOrigin() {
+ return this._getOption("virtualKeyboardTargetOrigin");
+ }
+ set virtualKeyboardTargetOrigin(value) {
+ this._setOptions({ virtualKeyboardTargetOrigin: value });
+ }
+ /**
+ * An array of ranges representing the selection.
+ *
+ * It is guaranteed there will be at least one element. If a discontinuous
+ * selection is present, the result will include more than one element.
+ *
+ * @category Selection
+ *
+ */
+ get selection() {
+ if (this._mathfield)
+ return this._mathfield.model.selection;
+ if (gDeferredState.has(this))
+ return gDeferredState.get(this).selection;
+ return { ranges: [[0, 0]], direction: "forward" };
+ }
+ /**
+ *
+ * @category Selection
+ */
+ set selection(sel) {
+ if (typeof sel === "number")
+ sel = { ranges: [[sel, sel]] };
+ if (this._mathfield) {
+ this._mathfield.model.selection = sel;
+ requestUpdate(this._mathfield);
+ return;
+ }
+ if (gDeferredState.has(this)) {
+ gDeferredState.set(this, __spreadProps(__spreadValues({}, gDeferredState.get(this)), {
+ selection: sel
+ }));
+ return;
+ }
+ gDeferredState.set(this, {
+ value: void 0,
+ selection: sel,
+ options: getOptionsFromAttributes(this),
+ menuItems: void 0
+ });
+ }
+ /**
+ * @category Selection
+ */
+ get selectionIsCollapsed() {
+ const selection = this.selection;
+ return selection.ranges.length === 1 && selection.ranges[0][0] === selection.ranges[0][1];
+ }
+ /**
+ * The position of the caret/insertion point, from 0 to `lastOffset`.
+ *
+ * @category Selection
+ *
+ */
+ get position() {
+ if (this._mathfield)
+ return this._mathfield.model.position;
+ if (gDeferredState.has(this))
+ return gDeferredState.get(this).selection.ranges[0][0];
+ return 0;
+ }
+ /**
+ * @category Selection
+ */
+ set position(offset) {
+ if (this._mathfield) {
+ this._mathfield.model.position = offset;
+ requestUpdate(this._mathfield);
+ }
+ if (gDeferredState.has(this)) {
+ gDeferredState.set(this, __spreadProps(__spreadValues({}, gDeferredState.get(this)), {
+ selection: { ranges: [[offset, offset]] }
+ }));
+ return;
+ }
+ gDeferredState.set(this, {
+ value: void 0,
+ selection: { ranges: [[offset, offset]] },
+ options: getOptionsFromAttributes(this),
+ menuItems: void 0
+ });
+ }
+ /**
+ * The depth of an offset represent the depth in the expression tree.
+ * @category Selection
+ */
+ getOffsetDepth(offset) {
+ var _a3, _b3;
+ if (!this._mathfield)
+ return 0;
+ return ((_b3 = (_a3 = this._mathfield.model.at(offset)) == null ? void 0 : _a3.treeDepth) != null ? _b3 : 2) - 2;
+ }
+ /**
+ * The last valid offset.
+ * @category Selection
+ */
+ get lastOffset() {
+ var _a3, _b3;
+ return (_b3 = (_a3 = this._mathfield) == null ? void 0 : _a3.model.lastOffset) != null ? _b3 : -1;
+ }
+};
+_MathfieldElement.version = "0.98.5";
+/** @internal */
+_MathfieldElement._fontsDirectory = "./fonts";
+/** @internal */
+_MathfieldElement._soundsDirectory = "./sounds";
+/**
+ * When a key on the virtual keyboard is pressed, produce a short haptic
+ * feedback, if the device supports it.
+ * @category Virtual Keyboard
+ */
+_MathfieldElement.keypressVibration = true;
+/** @internal */
+_MathfieldElement._keypressSound = {
+ spacebar: "keypress-spacebar.wav",
+ return: "keypress-return.wav",
+ delete: "keypress-delete.wav",
+ default: "keypress-standard.wav"
+};
+/** @ignore */
+_MathfieldElement._plonkSound = "plonk.wav";
+/** @internal */
+_MathfieldElement.audioBuffers = {};
+/**
+ * Support for [Trusted Type](https://w3c.github.io/webappsec-trusted-types/dist/spec/).
+ *
+ * This optional function will be called before a string of HTML is
+ * injected in the DOM, allowing that string to be sanitized
+ * according to a policy defined by the host.
+ */
+_MathfieldElement.createHTML = (x) => x;
+/** @internal */
+_MathfieldElement._speechEngineRate = "100%";
+/** @internal */
+_MathfieldElement._speechEngineVoice = "Joanna";
+/** @internal */
+_MathfieldElement._textToSpeechMarkup = "";
+/** @internal */
+_MathfieldElement._textToSpeechRules = "mathlive";
+/** @internal */
+_MathfieldElement._textToSpeechRulesOptions = {};
+_MathfieldElement.speakHook = defaultSpeakHook;
+_MathfieldElement.readAloudHook = defaultReadAloudHook;
+/** @internal */
+_MathfieldElement._decimalSeparator = ".";
+/**
+ * When using the keyboard to navigate a fraction, the order in which the
+ * numerator and navigator are traversed:
+ * - "numerator-denominator": first the elements in the numerator, then
+ * the elements in the denominator.
+ * - "denominator-numerator": first the elements in the denominator, then
+ * the elements in the numerator. In some East-Asian cultures, fractions
+ * are read and written denominator first ("fēnzhī"). With this option
+ * the keyboard navigation follows this convention.
+ *
+ * **Default**: `"numerator-denominator"`
+ * @category Localization
+ */
+_MathfieldElement.fractionNavigationOrder = "numerator-denominator";
+/** @internal */
+_MathfieldElement._isFunction = (command) => {
+ var _a3, _b3;
+ const ce = window.MathfieldElement.computeEngine;
+ return (_b3 = (_a3 = ce == null ? void 0 : ce.parse(command).domain) == null ? void 0 : _a3.isFunction) != null ? _b3 : false;
+};
+var MathfieldElement = _MathfieldElement;
+function toCamelCase(s) {
+ return s.replace(/[^a-zA-Z\d]+(.)/g, (_m, c) => c.toUpperCase());
+}
+function getOptionsFromAttributes(mfe) {
+ const result = { readOnly: false };
+ const attribs = MathfieldElement.optionsAttributes;
+ Object.keys(attribs).forEach((x) => {
+ if (mfe.hasAttribute(x)) {
+ const value = mfe.getAttribute(x);
+ if (x === "placeholder")
+ result.contentPlaceholder = value != null ? value : "";
+ else if (attribs[x] === "boolean")
+ result[toCamelCase(x)] = true;
+ else if (attribs[x] === "on/off") {
+ if (value === "on")
+ result[toCamelCase(x)] = true;
+ else if (value === "off")
+ result[toCamelCase(x)] = false;
+ else
+ result[toCamelCase(x)] = void 0;
+ } else if (attribs[x] === "number")
+ result[toCamelCase(x)] = Number.parseFloat(value != null ? value : "0");
+ else
+ result[toCamelCase(x)] = value;
+ }
+ });
+ return result;
+}
+function isElementInternalsSupported() {
+ if (!("ElementInternals" in window) || !HTMLElement.prototype.attachInternals)
+ return false;
+ if (!("role" in window.ElementInternals.prototype))
+ return false;
+ return true;
+}
+var mathfield_element_default = MathfieldElement;
+var _a2, _b2, _c, _d;
+if (isBrowser() && !((_a2 = window.customElements) == null ? void 0 : _a2.get("math-field"))) {
+ (_c = window[_b2 = Symbol.for("io.cortexjs.mathlive")]) != null ? _c : window[_b2] = {};
+ const global = window[Symbol.for("io.cortexjs.mathlive")];
+ global.version = "0.98.5";
+ window.MathfieldElement = MathfieldElement;
+ (_d = window.customElements) == null ? void 0 : _d.define("math-field", MathfieldElement);
+}
+
+// src/addons/static-render.ts
+function findEndOfMath(delimiter, text, startIndex) {
+ let index = startIndex;
+ let braceLevel = 0;
+ const delimLength = delimiter.length;
+ while (index < text.length) {
+ const character = text[index];
+ if (braceLevel <= 0 && text.slice(index, index + delimLength) === delimiter)
+ return index;
+ if (character === "\\")
+ index++;
+ else if (character === "{")
+ braceLevel++;
+ else if (character === "}")
+ braceLevel--;
+ index++;
+ }
+ return -1;
+}
+function splitAtDelimiters(startData, leftDelim, rightDelim, mathstyle, format = "latex") {
+ const finalData = [];
+ for (const startDatum of startData) {
+ if (startDatum.type === "text") {
+ const text = startDatum.data;
+ let lookingForLeft = true;
+ let currIndex = 0;
+ let nextIndex;
+ nextIndex = text.indexOf(leftDelim);
+ if (nextIndex !== -1) {
+ currIndex = nextIndex;
+ if (currIndex > 0) {
+ finalData.push({
+ type: "text",
+ data: text.slice(0, currIndex)
+ });
+ }
+ lookingForLeft = false;
+ }
+ let done = false;
+ while (!done) {
+ if (lookingForLeft) {
+ nextIndex = text.indexOf(leftDelim, currIndex);
+ if (nextIndex === -1) {
+ done = true;
+ break;
+ }
+ if (currIndex !== nextIndex) {
+ finalData.push({
+ type: "text",
+ data: text.slice(currIndex, nextIndex)
+ });
+ }
+ currIndex = nextIndex;
+ } else {
+ nextIndex = findEndOfMath(
+ rightDelim,
+ text,
+ currIndex + leftDelim.length
+ );
+ if (nextIndex === -1) {
+ done = true;
+ break;
+ }
+ let formula = text.slice(currIndex + leftDelim.length, nextIndex);
+ if (format === "ascii-math")
+ [, formula] = parseMathString(formula, { format: "ascii-math" });
+ finalData.push({
+ type: "math",
+ data: formula,
+ rawData: text.slice(currIndex, nextIndex + rightDelim.length),
+ mathstyle
+ });
+ currIndex = nextIndex + rightDelim.length;
+ }
+ lookingForLeft = !lookingForLeft;
+ }
+ if (currIndex < text.length) {
+ finalData.push({
+ type: "text",
+ data: text.slice(currIndex)
+ });
+ }
+ } else
+ finalData.push(startDatum);
+ }
+ return finalData;
+}
+function splitWithDelimiters(text, texDelimiters, mathAsciiDelimiters) {
+ let data = [{ type: "text", data: text }];
+ if (texDelimiters == null ? void 0 : texDelimiters.inline) {
+ texDelimiters.inline.forEach(([openDelim, closeDelim]) => {
+ data = splitAtDelimiters(data, openDelim, closeDelim, "textstyle");
+ });
+ }
+ if (texDelimiters == null ? void 0 : texDelimiters.display) {
+ texDelimiters.display.forEach(([openDelim, closeDelim]) => {
+ data = splitAtDelimiters(data, openDelim, closeDelim, "displaystyle");
+ });
+ }
+ if (mathAsciiDelimiters == null ? void 0 : mathAsciiDelimiters.inline) {
+ mathAsciiDelimiters.inline.forEach(([openDelim, closeDelim]) => {
+ data = splitAtDelimiters(
+ data,
+ openDelim,
+ closeDelim,
+ "textstyle",
+ "ascii-math"
+ );
+ });
+ }
+ if (mathAsciiDelimiters == null ? void 0 : mathAsciiDelimiters.display) {
+ mathAsciiDelimiters.display.forEach(([openDelim, closeDelim]) => {
+ data = splitAtDelimiters(
+ data,
+ openDelim,
+ closeDelim,
+ "displaystyle",
+ "ascii-math"
+ );
+ });
+ }
+ return data;
+}
+function createMathMLNode(latex, options) {
+ const span = document.createElement("span");
+ span.setAttribute("translate", "no");
+ try {
+ const html = "";
+ span.innerHTML = window.MathfieldElement.createHTML(html);
+ } catch (error) {
+ console.error(
+ `MathLive 0.98.5: Could not convert "${latex}"' to MathML with ${error}`
+ );
+ span.textContent = latex;
+ }
+ span.className = "ML__sr-only";
+ return span;
+}
+function createMarkupNode(text, options, mathstyle, createNodeOnFailure) {
+ try {
+ const html = options.renderToMarkup(text, {
+ mathstyle,
+ format: "html"
+ });
+ const element = document.createElement("span");
+ element.dataset.latex = text;
+ element.style.display = mathstyle === "displaystyle" ? "flex" : "inline-flex";
+ element.setAttribute("aria-hidden", "true");
+ element.setAttribute("translate", "no");
+ element.innerHTML = window.MathfieldElement.createHTML(html);
+ return element;
+ } catch (error) {
+ console.error("Could not parse'" + text + "' with ", error);
+ if (createNodeOnFailure)
+ return document.createTextNode(text);
+ }
+ return null;
+}
+function createAccessibleMarkupPair(latex, mathstyle, options, createNodeOnFailure) {
+ var _a3;
+ const markupNode = createMarkupNode(
+ latex,
+ options,
+ mathstyle ? mathstyle : "textstyle",
+ createNodeOnFailure
+ );
+ const accessibleContent = (_a3 = options.renderAccessibleContent) != null ? _a3 : "";
+ if (markupNode && /\b(mathml|speakable-text)\b/i.test(accessibleContent)) {
+ const fragment = document.createElement("span");
+ if (/\bmathml\b/i.test(accessibleContent) && options.renderToMathML)
+ fragment.append(createMathMLNode(latex, options));
+ if (/\bspeakable-text\b/i.test(accessibleContent) && options.renderToSpeakableText) {
+ const span = document.createElement("span");
+ span.setAttribute("translate", "no");
+ const html = options.renderToSpeakableText(latex);
+ span.innerHTML = window.MathfieldElement.createHTML(html);
+ span.className = "ML__sr-only";
+ fragment.append(span);
+ }
+ fragment.append(markupNode);
+ return fragment;
+ }
+ return markupNode;
+}
+function scanText2(text, options) {
+ var _a3, _b3, _c2;
+ let fragment = null;
+ if (((_a3 = options.TeX) == null ? void 0 : _a3.processEnvironments) && /^\s*\\begin/.test(text)) {
+ fragment = document.createDocumentFragment();
+ const node = createAccessibleMarkupPair(text, "", options, true);
+ if (node)
+ fragment.appendChild(node);
+ } else {
+ if (!text.trim())
+ return null;
+ const data = splitWithDelimiters(
+ text,
+ (_b3 = options.TeX) == null ? void 0 : _b3.delimiters,
+ (_c2 = options.asciiMath) == null ? void 0 : _c2.delimiters
+ );
+ if (data.length === 1 && data[0].type === "text") {
+ return null;
+ }
+ fragment = document.createDocumentFragment();
+ for (const datum of data) {
+ if (datum.type === "text")
+ fragment.appendChild(document.createTextNode(datum.data));
+ else {
+ const node = createAccessibleMarkupPair(
+ datum.data,
+ datum.mathstyle === "textstyle" ? "textstyle" : "displaystyle",
+ options,
+ true
+ );
+ if (node)
+ fragment.appendChild(node);
+ }
+ }
+ }
+ return fragment;
+}
+function scanElement(element, options) {
+ var _a3, _b3, _c2, _d2, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p;
+ if (element.childNodes.length === 1 && element.childNodes[0].nodeType === 3) {
+ const text = (_a3 = element.childNodes[0].textContent) != null ? _a3 : "";
+ if (((_b3 = options.TeX) == null ? void 0 : _b3.processEnvironments) && /^\s*\\begin/.test(text)) {
+ element.textContent = "";
+ const node = createAccessibleMarkupPair(text, "", options, true);
+ if (node)
+ element.append(node);
+ return;
+ }
+ const data = splitWithDelimiters(
+ text,
+ (_c2 = options.TeX) == null ? void 0 : _c2.delimiters,
+ (_d2 = options.asciiMath) == null ? void 0 : _d2.delimiters
+ );
+ if (data.length === 1 && data[0].type === "math") {
+ element.textContent = "";
+ const node = createAccessibleMarkupPair(
+ data[0].data,
+ data[0].mathstyle === "textstyle" ? "textstyle" : "displaystyle",
+ options,
+ true
+ );
+ if (node)
+ element.append(node);
+ return;
+ }
+ if (data.length === 1 && data[0].type === "text") {
+ return;
+ }
+ }
+ for (let i = element.childNodes.length - 1; i >= 0; i--) {
+ const childNode = element.childNodes[i];
+ if (childNode.nodeType === 3) {
+ const frag = scanText2((_e = childNode.textContent) != null ? _e : "", options);
+ if (frag) {
+ i += frag.childNodes.length - 1;
+ childNode.replaceWith(frag);
+ }
+ } else if (childNode.nodeType === 1) {
+ const el = childNode;
+ const tag = childNode.nodeName.toLowerCase();
+ if (tag === "script") {
+ const scriptNode = childNode;
+ let textContent = void 0;
+ if ((_f = options.processScriptTypePattern) == null ? void 0 : _f.test(scriptNode.type))
+ textContent = (_g = scriptNode.textContent) != null ? _g : "";
+ else if ((_h = options.processMathJSONScriptTypePattern) == null ? void 0 : _h.test(scriptNode.type)) {
+ try {
+ textContent = (_j = options.serializeToLatex) == null ? void 0 : _j.call(
+ options,
+ JSON.parse((_i = scriptNode.textContent) != null ? _i : "")
+ );
+ } catch (e) {
+ console.error(e);
+ }
+ }
+ if (textContent) {
+ let style = "textstyle";
+ for (const l of scriptNode.type.split(";")) {
+ const [key, value] = l.toLowerCase().split("=");
+ if (key.trim() === "mode")
+ style = value.trim() === "display" ? "displaystyle" : "textstyle";
+ }
+ const span = createAccessibleMarkupPair(
+ textContent,
+ style,
+ options,
+ true
+ );
+ if (span)
+ scriptNode.parentNode.replaceChild(span, scriptNode);
+ }
+ } else {
+ const shouldRender = ((_l = (_k = options.processClassPattern) == null ? void 0 : _k.test(el.className)) != null ? _l : false) || !(((_n = (_m = options.skipTags) == null ? void 0 : _m.includes(tag)) != null ? _n : false) || ((_p = (_o = options.ignoreClassPattern) == null ? void 0 : _o.test(el.className)) != null ? _p : false));
+ if (shouldRender) {
+ if (element.childNodes.length === 1 && element.childNodes[0].nodeType === 3) {
+ const formula = element.textContent;
+ element.textContent = "";
+ const node = createAccessibleMarkupPair(
+ formula != null ? formula : "",
+ "displaystyle",
+ options,
+ true
+ );
+ if (node)
+ element.append(node);
+ } else
+ scanElement(el, options);
+ }
+ }
+ }
+ }
+}
+var DEFAULT_AUTO_RENDER_OPTIONS = {
+ // Name of tags whose content will not be scanned for math delimiters
+ skipTags: [
+ "math-field",
+ "noscript",
+ "style",
+ "textarea",
+ "pre",
+ "code",
+ "annotation",
+ "annotation-xml"
+ ],
+ //