UNPKG

react-exercise-playground

Version:

react-exercise-playground是一个react在线代码编辑器可实时预览运行效果

994 lines (983 loc) 3.78 MB
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode('._loader_z4rlz_1,._loader_z4rlz_1:after{width:10px;height:10px;border-radius:50%}._loader_z4rlz_1{position:relative;border-top:2px solid rgba(255,255,255,.2);border-right:2px solid rgba(255,255,255,.2);border-bottom:2px solid rgba(255,255,255,.2);border-left:2px solid var(--primary);transform:translateZ(0);animation:_load8_z4rlz_1 .3s infinite linear}@keyframes _load8_z4rlz_1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.react-playground-editor{height:100%;overflow:hidden;background-color:var(--border)}.react-playground-editor.hidden{display:none}.react-playground-editor-types-loading{position:absolute;top:41px;right:2px}.dark .react-playground-editor{height:100%;overflow:hidden;background-color:var(--border)}.dark .react-playground-editor .jsx-tag-angle-bracket{color:gray}.dark .react-playground-editor .jsx-text{color:#d4d4d4}.dark .react-playground-editor .jsx-tag-name{color:#569cd6}.dark .react-playground-editor .jsx-tag-attribute-key{color:#9cdcfe}.light .react-playground-editor{height:100%;overflow:hidden;background-color:var(--border)}.light .react-playground-editor .jsx-tag-angle-bracket{color:maroon}.light .react-playground-editor .jsx-text{color:#000}.light .react-playground-editor .jsx-tag-name{color:maroon}.light .react-playground-editor .jsx-tag-attribute-key{color:red}._dialog_eaiwm_1{top:15%;left:50%;min-width:200px;padding:20px 30px;font-size:14px;color:var(--base);background-color:var(--dialog);border:none;border-radius:4px;transform:translate(-50%)}._dialog-footer_eaiwm_13{display:flex;justify-content:flex-end;align-items:center;padding-top:15px}._dialog-footer_eaiwm_13 button{padding:4px 15px;font-size:14px;color:var(--base);cursor:pointer;background:transparent;border:none;border-radius:4px;outline:none}._dialog-footer_eaiwm_13 ._dialog-btn_eaiwm_29{margin-left:4px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.12);background:var(--primary);border-color:var(--primary);box-shadow:0 2px #0000000b}._content_eaiwm_37{display:flex;align-items:center}._content_eaiwm_37 svg{margin-right:16px;font-size:20px;color:#d89614}._tabs_16nwc_1{display:flex;width:100%;height:38px;overflow:auto hidden;color:var(--base);background-color:var(--bg);flex-shrink:0;align-items:center;border-bottom:1px solid var(--border);box-sizing:border-box}._tabs_16nwc_1::-webkit-scrollbar{height:1px}._tabs_16nwc_1::-webkit-scrollbar-track{background-color:var(--border)}._tabs_16nwc_1::-webkit-scrollbar-thumb{background-color:var(--primary)}._tabs_16nwc_1 ._tab-item_16nwc_22{display:inline-flex;padding:8px 10px 6px;font-size:13px;line-height:20px;cursor:pointer;align-items:center;border-bottom:3px solid transparent;flex-shrink:0}._tabs_16nwc_1 ._tab-item_16nwc_22._actived_16nwc_32{color:var(--primary);border-bottom:3px solid var(--primary)}._tabs_16nwc_1 ._tab-item_16nwc_22:first-child{cursor:text}._tabs_16nwc_1 ._import-map-wrapper_16nwc_39{position:sticky;top:0;right:0;padding-left:10px;margin-left:auto;background-color:var(--bg);flex-shrink:0}._tabs_16nwc_1 ._import-map-wrapper_16nwc_39 ._tab-item_16nwc_22{cursor:pointer!important}._tabs_16nwc_1 ._add_16nwc_51{display:flex;width:38px;height:100%;font-size:18px;color:var(--base);cursor:pointer;justify-content:center;align-items:center;border-bottom:3px solid transparent}._tabs_16nwc_1 ._add_16nwc_51:hover{color:var(--primary)}._tabs-item-input_16nwc_65{z-index:11;width:90px;padding:4px 0 4px 10px;font-size:13px;color:var(--base);background-color:var(--border);border:1px solid var(--border);border-radius:4px;outline:none}._input-mask_16nwc_76{position:absolute;top:0;left:0;z-index:10;width:100%;height:100%;cursor:pointer;background-color:#0006}._msg_1t9wq_1{position:absolute;right:8px;bottom:0;left:8px;z-index:10;display:flex;max-height:calc(100% - 300px);min-height:40px;margin-bottom:8px;color:var(--color);white-space:pre-wrap;background-color:var(--bg-color);border:2px solid transparent;border-radius:6px;align-items:stretch;border-color:var(--color)}._msg_1t9wq_1._error_1t9wq_19{--color: #f56c6c;--bg-color: #fef0f0}._msg_1t9wq_1._warn_1t9wq_23{--color: #e6a23c;--bg-color: #fdf6ec}pre{padding:12px 20px;margin:0;overflow:auto;white-space:break-spaces}._dismiss_1t9wq_33{position:absolute;top:2px;right:2px;display:block;width:18px;height:18px;padding:0;font-size:9px;line-height:18px;color:var(--bg-color);text-align:center;cursor:pointer;background-color:var(--color);border:none;border-radius:9px}._header_1whkb_1{position:relative;z-index:999;display:flex;height:50px;padding:0 1em;color:var(--base);background-color:var(--bg);box-sizing:border-box;align-items:center;box-shadow:0 0 4px var(--box-shadow);border-bottom:1px solid var(--border);justify-content:space-between}._header_1whkb_1 ._logo_1whkb_15{display:flex;font-size:20px;align-items:center}._header_1whkb_1 ._logo_1whkb_15 img{height:24px;margin-right:10px}._header_1whkb_1 ._links_1whkb_24{display:flex;height:100%}._header_1whkb_1 ._links_1whkb_24 button{display:flex;width:34px;height:100%;padding:0 6px;margin-left:4px;cursor:pointer;background-color:transparent;border:none;outline:none;align-items:center}._header_1whkb_1 ._links_1whkb_24 button>svg{color:#666}._header_1whkb_1 ._links_1whkb_24 button._theme_1whkb_43>svg{width:18px;height:18px}._tabs_1vzew_1{display:flex;width:100%;height:38px;color:var(--base);background-color:var(--bg);align-items:center;border-bottom:1px solid var(--border);box-sizing:border-box}._tabs_1vzew_1 ._tab-item_1vzew_11{display:inline-block;padding:8px 10px 6px;font-size:13px;line-height:20px;cursor:pointer;border-bottom:3px solid transparent;flex-shrink:0}._tabs_1vzew_1 ._tab-item_1vzew_11._actived_1vzew_20{border-bottom:3px solid var(--primary)}._collapse-left_1la7y_1{position:absolute;top:0;z-index:1;display:flex;width:20px;height:100%;align-items:center;right:0;justify-content:end}._collapse-left_1la7y_1:hover ._collapse-btn_1la7y_12{display:flex}._collapse-left_1la7y_1 ._collapse-btn_1la7y_12{position:relative;display:none;width:10px;height:48px;cursor:pointer;background-color:#e7e9e8;border-radius:4px 0 0 4px}._collapse-left_1la7y_1 ._collapse-btn_1la7y_12:after{position:absolute;top:50%;left:50%;width:0;height:0;content:"";border-top:5px solid transparent;border-bottom:5px solid transparent;transform:translate(-50%) translateY(-50%);border-right:6px solid #000}._collapse-right_1la7y_36{position:absolute;top:0;z-index:1;display:flex;width:20px;height:100%;align-items:center;left:0;justify-content:start}._collapse-right_1la7y_36:hover ._collapse-btn_1la7y_12{display:flex}._collapse-right_1la7y_36 ._collapse-btn_1la7y_12{position:relative;display:none;width:10px;height:48px;cursor:pointer;background-color:#e7e9e8;border-radius:0 4px 4px 0}._collapse-right_1la7y_36 ._collapse-btn_1la7y_12:after{position:absolute;top:50%;left:50%;width:0;height:0;content:"";border-top:5px solid transparent;border-bottom:5px solid transparent;transform:translate(-50%) translateY(-50%);border-left:6px solid #000}._collapse-left_1la7y_1._active_1la7y_71 ._collapse-btn_1la7y_12,._collapse-right_1la7y_36._active_1la7y_71 ._collapse-btn_1la7y_12{display:flex;opacity:0;transition:opacity .2s ease-in-out}._collapse-left_1la7y_1:hover._active_1la7y_71 ._collapse-btn_1la7y_12,._collapse-right_1la7y_36:hover._active_1la7y_71 ._collapse-btn_1la7y_12{opacity:1}:root{--separator-border: rgba(128, 128, 128, .35)}.allotment-module_splitView__L-yRc{height:100%;overflow:hidden;position:relative;width:100%}.allotment-module_splitView__L-yRc>.allotment-module_sashContainer__fzwJF{height:100%;pointer-events:none;position:absolute;width:100%}.allotment-module_splitView__L-yRc>.allotment-module_sashContainer__fzwJF>.allotment-module_sash__QA-2t{pointer-events:auto}.allotment-module_splitView__L-yRc>.allotment-module_splitViewContainer__rQnVa{height:100%;position:relative;white-space:nowrap;width:100%}.allotment-module_splitView__L-yRc>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O{overflow:hidden;position:absolute;white-space:initial}.allotment-module_splitView__L-yRc.allotment-module_vertical__WSwwa>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O{width:100%}.allotment-module_splitView__L-yRc.allotment-module_horizontal__7doS8>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O{height:100%}.allotment-module_splitView__L-yRc.allotment-module_separatorBorder__x-rDS>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O:not(:first-child):before{background-color:var(--separator-border);content:" ";left:0;pointer-events:none;position:absolute;top:0;z-index:5}.allotment-module_splitView__L-yRc.allotment-module_separatorBorder__x-rDS.allotment-module_vertical__WSwwa>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O:not(:first-child):before{height:1px;width:100%}.allotment-module_splitView__L-yRc.allotment-module_separatorBorder__x-rDS.allotment-module_horizontal__7doS8>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O:not(:first-child):before{height:100%;width:1px}:root{--focus-border: #007fd4;--sash-size: 8px;--sash-hover-size: 4px}.sash-module_sash__K-9lB{position:absolute;z-index:35;touch-action:none;pointer-events:auto;text-align:initial}.sash-module_sash__K-9lB.sash-module_disabled__Hm-wx{pointer-events:none}.sash-module_sash__K-9lB.sash-module_mac__Jf6OJ.sash-module_vertical__pB-rs{cursor:col-resize}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs.sash-module_minimum__-UKxp{cursor:e-resize}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs.sash-module_maximum__TCWxD{cursor:w-resize}.sash-module_sash__K-9lB.sash-module_mac__Jf6OJ.sash-module_horizontal__kFbiw{cursor:row-resize}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_minimum__-UKxp{cursor:s-resize}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_maximum__TCWxD{cursor:n-resize}.sash-module_sash__K-9lB.sash-module_disabled__Hm-wx{cursor:default!important;pointer-events:none!important}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs{cursor:ew-resize;top:0;width:var(--sash-size);height:100%}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw{cursor:ns-resize;left:0;width:100%;height:var(--sash-size)}.sash-module_sash__K-9lB:not(.sash-module_disabled__Hm-wx)>.sash-module_orthogonal-drag-handle__Yii2-{content:" ";height:calc(var(--sash-size) * 2);width:calc(var(--sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_orthogonal-edge-north__f7Noe:not(.sash-module_disabled__Hm-wx)>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_start__uZEDk,.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_orthogonal-edge-south__6ZrFC:not(.sash-module_disabled__Hm-wx)>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_end__0TP-R{cursor:nwse-resize}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_orthogonal-edge-north__f7Noe:not(.sash-module_disabled__Hm-wx)>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_end__0TP-R,.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_orthogonal-edge-south__6ZrFC:not(.sash-module_disabled__Hm-wx)>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_start__uZEDk{cursor:nesw-resize}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_start__uZEDk{left:calc(var(--sash-size) * -.5);top:calc(var(--sash-size) * -1)}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_end__0TP-R{left:calc(var(--sash-size) * -.5);bottom:calc(var(--sash-size) * -1)}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_start__uZEDk{top:calc(var(--sash-size) * -.5);left:calc(var(--sash-size) * -1)}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_end__0TP-R{top:calc(var(--sash-size) * -.5);right:calc(var(--sash-size) * -1)}.sash-module_sash__K-9lB:before{content:"";pointer-events:none;position:absolute;width:100%;height:100%;transition:background-color .1s ease-out;background:transparent}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs:before{width:var(--sash-hover-size);left:calc(50% - (var(--sash-hover-size) / 2))}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw:before{height:var(--sash-hover-size);top:calc(50% - (var(--sash-hover-size) / 2))}.sash-module_sash__K-9lB.sash-module_hover__80W6I:before,.sash-module_sash__K-9lB.sash-module_active__bJspD:before{background:var(--focus-border)}div[data-id=react-playground].light{--base: #444;--bg: #fff;--border: #ddd;--box-shadow: #00000054;--primary: #00d8fe;--dialog: #fff}div[data-id=react-playground].dark{--base: #ddd;--bg: #1a1a1a;--border: #383838;--box-shadow: #0000;--primary: #00d8fe;--dialog: #2a2a2a}')),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})(); import { j as s, g as ii, S as bi } from "./index-9d03cee5.mjs"; import yZ, { memo as Bm, useState as mZ, useRef as e, useCallback as ll, useEffect as A, createContext as Wi, useContext as yl, forwardRef as qc, useMemo as _c, useImperativeHandle as Xi, useLayoutEffect as di } from "react"; var Nl = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {}; function Gi(Z) { return Z && Z.__esModule && Object.prototype.hasOwnProperty.call(Z, "default") ? Z.default : Z; } function yi(Z, l, m) { return l in Z ? Object.defineProperty(Z, l, { value: m, enumerable: !0, configurable: !0, writable: !0 }) : Z[l] = m, Z; } function hc(Z, l) { var m = Object.keys(Z); if (Object.getOwnPropertySymbols) { var c = Object.getOwnPropertySymbols(Z); l && (c = c.filter(function(I) { return Object.getOwnPropertyDescriptor(Z, I).enumerable; })), m.push.apply(m, c); } return m; } function Nc(Z) { for (var l = 1; l < arguments.length; l++) { var m = arguments[l] != null ? arguments[l] : {}; l % 2 ? hc(Object(m), !0).forEach(function(c) { yi(Z, c, m[c]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(Z, Object.getOwnPropertyDescriptors(m)) : hc(Object(m)).forEach(function(c) { Object.defineProperty(Z, c, Object.getOwnPropertyDescriptor(m, c)); }); } return Z; } function Li(Z, l) { if (Z == null) return {}; var m = {}, c = Object.keys(Z), I, i; for (i = 0; i < c.length; i++) I = c[i], !(l.indexOf(I) >= 0) && (m[I] = Z[I]); return m; } function Yi(Z, l) { if (Z == null) return {}; var m = Li(Z, l), c, I; if (Object.getOwnPropertySymbols) { var i = Object.getOwnPropertySymbols(Z); for (I = 0; I < i.length; I++) c = i[I], !(l.indexOf(c) >= 0) && Object.prototype.propertyIsEnumerable.call(Z, c) && (m[c] = Z[c]); } return m; } function Vi(Z, l) { return ui(Z) || Ji(Z, l) || hi(Z, l) || Ni(); } function ui(Z) { if (Array.isArray(Z)) return Z; } function Ji(Z, l) { if (!(typeof Symbol > "u" || !(Symbol.iterator in Object(Z)))) { var m = [], c = !0, I = !1, i = void 0; try { for (var W = Z[Symbol.iterator](), b; !(c = (b = W.next()).done) && (m.push(b.value), !(l && m.length === l)); c = !0) ; } catch (d) { I = !0, i = d; } finally { try { !c && W.return != null && W.return(); } finally { if (I) throw i; } } return m; } } function hi(Z, l) { if (Z) { if (typeof Z == "string") return Rc(Z, l); var m = Object.prototype.toString.call(Z).slice(8, -1); if (m === "Object" && Z.constructor && (m = Z.constructor.name), m === "Map" || m === "Set") return Array.from(Z); if (m === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(m)) return Rc(Z, l); } } function Rc(Z, l) { (l == null || l > Z.length) && (l = Z.length); for (var m = 0, c = new Array(l); m < l; m++) c[m] = Z[m]; return c; } function Ni() { throw new TypeError(`Invalid attempt to destructure non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`); } function Ri(Z, l, m) { return l in Z ? Object.defineProperty(Z, l, { value: m, enumerable: !0, configurable: !0, writable: !0 }) : Z[l] = m, Z; } function pc(Z, l) { var m = Object.keys(Z); if (Object.getOwnPropertySymbols) { var c = Object.getOwnPropertySymbols(Z); l && (c = c.filter(function(I) { return Object.getOwnPropertyDescriptor(Z, I).enumerable; })), m.push.apply(m, c); } return m; } function Sc(Z) { for (var l = 1; l < arguments.length; l++) { var m = arguments[l] != null ? arguments[l] : {}; l % 2 ? pc(Object(m), !0).forEach(function(c) { Ri(Z, c, m[c]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(Z, Object.getOwnPropertyDescriptors(m)) : pc(Object(m)).forEach(function(c) { Object.defineProperty(Z, c, Object.getOwnPropertyDescriptor(m, c)); }); } return Z; } function pi() { for (var Z = arguments.length, l = new Array(Z), m = 0; m < Z; m++) l[m] = arguments[m]; return function(c) { return l.reduceRight(function(I, i) { return i(I); }, c); }; } function sl(Z) { return function l() { for (var m = this, c = arguments.length, I = new Array(c), i = 0; i < c; i++) I[i] = arguments[i]; return I.length >= Z.length ? Z.apply(this, I) : function() { for (var W = arguments.length, b = new Array(W), d = 0; d < W; d++) b[d] = arguments[d]; return l.apply(m, [].concat(I, b)); }; }; } function ql(Z) { return {}.toString.call(Z).includes("Object"); } function Si(Z) { return !Object.keys(Z).length; } function nl(Z) { return typeof Z == "function"; } function Mi(Z, l) { return Object.prototype.hasOwnProperty.call(Z, l); } function si(Z, l) { return ql(l) || OZ("changeType"), Object.keys(l).some(function(m) { return !Mi(Z, m); }) && OZ("changeField"), l; } function Ci(Z) { nl(Z) || OZ("selectorType"); } function Fi(Z) { nl(Z) || ql(Z) || OZ("handlerType"), ql(Z) && Object.values(Z).some(function(l) { return !nl(l); }) && OZ("handlersType"); } function ni(Z) { Z || OZ("initialIsRequired"), ql(Z) || OZ("initialType"), Si(Z) && OZ("initialContent"); } function zi(Z, l) { throw new Error(Z[l] || Z.default); } var ki = { initialIsRequired: "initial state is required", initialType: "initial state should be an object", initialContent: "initial state shouldn't be an empty object", handlerType: "handler should be an object or a function", handlersType: "all handlers should be a functions", selectorType: "selector should be a function", changeType: "provided value of changes should be an object", changeField: 'it seams you want to change a field in the state which is not specified in the "initial" state', default: "an unknown error accured in `state-local` package" }, OZ = sl(zi)(ki), Ol = { changes: si, selector: Ci, handler: Fi, initial: ni }; function wi(Z) { var l = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}; Ol.initial(Z), Ol.handler(l); var m = { current: Z }, c = sl(Ui)(m, l), I = sl(xi)(m), i = sl(Ol.changes)(Z), W = sl(ai)(m); function b() { var X = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : function(G) { return G; }; return Ol.selector(X), X(m.current); } function d(X) { pi(c, I, i, W)(X); } return [b, d]; } function ai(Z, l) { return nl(l) ? l(Z.current) : l; } function xi(Z, l) { return Z.current = Sc(Sc({}, Z.current), l), l; } function Ui(Z, l, m) { return nl(l) ? l(Z.current) : Object.keys(m).forEach(function(c) { var I; return (I = l[c]) === null || I === void 0 ? void 0 : I.call(l, Z.current[c]); }), m; } var ji = { create: wi }, Ki = { paths: { vs: "https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs" } }; function Hi(Z) { return function l() { for (var m = this, c = arguments.length, I = new Array(c), i = 0; i < c; i++) I[i] = arguments[i]; return I.length >= Z.length ? Z.apply(this, I) : function() { for (var W = arguments.length, b = new Array(W), d = 0; d < W; d++) b[d] = arguments[d]; return l.apply(m, [].concat(I, b)); }; }; } function oi(Z) { return {}.toString.call(Z).includes("Object"); } function Ti(Z) { return Z || Mc("configIsRequired"), oi(Z) || Mc("configType"), Z.urls ? (gi(), { paths: { vs: Z.urls.monacoBase } }) : Z; } function gi() { console.warn($c.deprecation); } function vi(Z, l) { throw new Error(Z[l] || Z.default); } var $c = { configIsRequired: "the configuration object is required", configType: "the configuration object should be an object", default: "an unknown error accured in `@monaco-editor/loader` package", deprecation: `Deprecation warning! You are using deprecated way of configuration. Instead of using monaco.config({ urls: { monacoBase: '...' } }) use monaco.config({ paths: { vs: '...' } }) For more please check the link https://github.com/suren-atoyan/monaco-loader#config ` }, Mc = Hi(vi)($c), ti = { config: Ti }, Di = function() { for (var l = arguments.length, m = new Array(l), c = 0; c < l; c++) m[c] = arguments[c]; return function(I) { return m.reduceRight(function(i, W) { return W(i); }, I); }; }; function ZI(Z, l) { return Object.keys(l).forEach(function(m) { l[m] instanceof Object && Z[m] && Object.assign(l[m], ZI(Z[m], l[m])); }), Nc(Nc({}, Z), l); } var Qi = { type: "cancelation", msg: "operation is manually canceled" }; function Vm(Z) { var l = !1, m = new Promise(function(c, I) { Z.then(function(i) { return l ? I(Qi) : c(i); }), Z.catch(I); }); return m.cancel = function() { return l = !0; }, m; } var ei = ji.create({ config: Ki, isInitialized: !1, resolve: null, reject: null, monaco: null }), lI = Vi(ei, 2), wl = lI[0], Zm = lI[1]; function Bi(Z) { var l = ti.config(Z), m = l.monaco, c = Yi(l, ["monaco"]); Zm(function(I) { return { config: ZI(I.config, c), monaco: m }; }); } function Oi() { var Z = wl(function(l) { var m = l.monaco, c = l.isInitialized, I = l.resolve; return { monaco: m, isInitialized: c, resolve: I }; }); if (!Z.isInitialized) { if (Zm({ isInitialized: !0 }), Z.monaco) return Z.resolve(Z.monaco), Vm(um); if (window.monaco && window.monaco.editor) return mI(window.monaco), Z.resolve(window.monaco), Vm(um); Di(Ei, Ai)(fi); } return Vm(um); } function Ei(Z) { return document.body.appendChild(Z); } function Pi(Z) { var l = document.createElement("script"); return Z && (l.src = Z), l; } function Ai(Z) { var l = wl(function(c) { var I = c.config, i = c.reject; return { config: I, reject: i }; }), m = Pi("".concat(l.config.paths.vs, "/loader.js")); return m.onload = function() { return Z(); }, m.onerror = l.reject, m; } function fi() { var Z = wl(function(m) { var c = m.config, I = m.resolve, i = m.reject; return { config: c, resolve: I, reject: i }; }), l = window.require; l.config(Z.config), l(["vs/editor/editor.main"], function(m) { mI(m), Z.resolve(m); }, function(m) { Z.reject(m); }); } function mI(Z) { wl().monaco || Zm({ monaco: Z }); } function ri() { return wl(function(Z) { var l = Z.monaco; return l; }); } var um = new Promise(function(Z, l) { return Zm({ resolve: Z, reject: l }); }), Om = { config: Bi, init: Oi, __getMonacoInstance: ri }, qi = { wrapper: { display: "flex", position: "relative", textAlign: "initial" }, fullWidth: { width: "100%" }, hide: { display: "none" } }, Jm = qi, _i = { container: { display: "flex", height: "100%", width: "100%", justifyContent: "center", alignItems: "center" } }, $i = _i; function Zb({ children: Z }) { return yZ.createElement("div", { style: $i.container }, Z); } var lb = Zb, mb = lb; function cb({ width: Z, height: l, isEditorReady: m, loading: c, _ref: I, className: i, wrapperProps: W }) { return yZ.createElement("section", { style: { ...Jm.wrapper, width: Z, height: l }, ...W }, !m && yZ.createElement(mb, null, c), yZ.createElement("div", { ref: I, style: { ...Jm.fullWidth, ...!m && Jm.hide }, className: i })); } var Ib = cb, cI = Bm(Ib); function ib(Z) { A(Z, []); } var II = ib; function bb(Z, l, m = !0) { let c = e(!0); A(c.current || !m ? () => { c.current = !1; } : Z, l); } var VZ = bb; function Cl() { } function dl(Z, l, m, c) { return Wb(Z, c) || Xb(Z, l, m, c); } function Wb(Z, l) { return Z.editor.getModel(iI(Z, l)); } function Xb(Z, l, m, c) { return Z.editor.createModel(l, m, c ? iI(Z, c) : void 0); } function iI(Z, l) { return Z.Uri.parse(l); } function db({ original: Z, modified: l, language: m, originalLanguage: c, modifiedLanguage: I, originalModelPath: i, modifiedModelPath: W, keepCurrentOriginalModel: b = !1, keepCurrentModifiedModel: d = !1, theme: X = "light", loading: G = "Loading...", options: y = {}, height: Y = "100%", width: u = "100%", className: S, wrapperProps: p = {}, beforeMount: M = Cl, onMount: h = Cl }) { let [N, J] = mZ(!1), [w, H] = mZ(!0), j = e(null), R = e(null), n = e(null), F = e(h), x = e(M), a = e(!1); II(() => { let z = Om.init(); return z.then((U) => (R.current = U) && H(!1)).catch((U) => (U == null ? void 0 : U.type) !== "cancelation" && console.error("Monaco initialization: error:", U)), () => j.current ? k() : z.cancel(); }), VZ(() => { if (j.current && R.current) { let z = j.current.getOriginalEditor(), U = dl(R.current, Z || "", c || m || "text", i || ""); U !== z.getModel() && z.setModel(U); } }, [i], N), VZ(() => { if (j.current && R.current) { let z = j.current.getModifiedEditor(), U = dl(R.current, l || "", I || m || "text", W || ""); U !== z.getModel() && z.setModel(U); } }, [W], N), VZ(() => { let z = j.current.getModifiedEditor(); z.getOption(R.current.editor.EditorOption.readOnly) ? z.setValue(l || "") : l !== z.getValue() && (z.executeEdits("", [{ range: z.getModel().getFullModelRange(), text: l || "", forceMoveMarkers: !0 }]), z.pushUndoStop()); }, [l], N), VZ(() => { var z, U; (U = (z = j.current) == null ? void 0 : z.getModel()) == null || U.original.setValue(Z || ""); }, [Z], N), VZ(() => { let { original: z, modified: U } = j.current.getModel(); R.current.editor.setModelLanguage(z, c || m || "text"), R.current.editor.setModelLanguage(U, I || m || "text"); }, [m, c, I], N), VZ(() => { var z; (z = R.current) == null || z.editor.setTheme(X); }, [X], N), VZ(() => { var z; (z = j.current) == null || z.updateOptions(y); }, [y], N); let o = ll(() => { var g; if (!R.current) return; x.current(R.current); let z = dl(R.current, Z || "", c || m || "text", i || ""), U = dl(R.current, l || "", I || m || "text", W || ""); (g = j.current) == null || g.setModel({ original: z, modified: U }); }, [m, l, I, Z, c, i, W]), B = ll(() => { var z; !a.current && n.current && (j.current = R.current.editor.createDiffEditor(n.current, { automaticLayout: !0, ...y }), o(), (z = R.current) == null || z.editor.setTheme(X), J(!0), a.current = !0); }, [y, X, o]); A(() => { N && F.current(j.current, R.current); }, [N]), A(() => { !w && !N && B(); }, [w, N, B]); function k() { var U, g, f, P; let z = (U = j.current) == null ? void 0 : U.getModel(); b || ((g = z == null ? void 0 : z.original) == null || g.dispose()), d || ((f = z == null ? void 0 : z.modified) == null || f.dispose()), (P = j.current) == null || P.dispose(); } return yZ.createElement(cI, { width: u, height: Y, isEditorReady: N, loading: G, _ref: n, className: S, wrapperProps: p }); } var Gb = db; Bm(Gb); function yb(Z) { let l = e(); return A(() => { l.current = Z; }, [Z]), l.current; } var Lb = yb, El = /* @__PURE__ */ new Map(); function Yb({ defaultValue: Z, defaultLanguage: l, defaultPath: m, value: c, language: I, path: i, theme: W = "light", line: b, loading: d = "Loading...", options: X = {}, overrideServices: G = {}, saveViewState: y = !0, keepCurrentModel: Y = !1, width: u = "100%", height: S = "100%", className: p, wrapperProps: M = {}, beforeMount: h = Cl, onMount: N = Cl, onChange: J, onValidate: w = Cl }) { let [H, j] = mZ(!1), [R, n] = mZ(!0), F = e(null), x = e(null), a = e(null), o = e(N), B = e(h), k = e(), z = e(c), U = Lb(i), g = e(!1), f = e(!1); II(() => { let T = Om.init(); return T.then((v) => (F.current = v) && n(!1)).catch((v) => (v == null ? void 0 : v.type) !== "cancelation" && console.error("Monaco initialization: error:", v)), () => x.current ? $() : T.cancel(); }), VZ(() => { var v, Q, ZZ, E; let T = dl(F.current, Z || c || "", l || I || "", i || m || ""); T !== ((v = x.current) == null ? void 0 : v.getModel()) && (y && El.set(U, (Q = x.current) == null ? void 0 : Q.saveViewState()), (ZZ = x.current) == null || ZZ.setModel(T), y && ((E = x.current) == null || E.restoreViewState(El.get(i)))); }, [i], H), VZ(() => { var T; (T = x.current) == null || T.updateOptions(X); }, [X], H), VZ(() => { !x.current || c === void 0 || (x.current.getOption(F.current.editor.EditorOption.readOnly) ? x.current.setValue(c) : c !== x.current.getValue() && (f.current = !0, x.current.executeEdits("", [{ range: x.current.getModel().getFullModelRange(), text: c, forceMoveMarkers: !0 }]), x.current.pushUndoStop(), f.current = !1)); }, [c], H), VZ(() => { var v, Q; let T = (v = x.current) == null ? void 0 : v.getModel(); T && I && ((Q = F.current) == null || Q.editor.setModelLanguage(T, I)); }, [I], H), VZ(() => { var T; b !== void 0 && ((T = x.current) == null || T.revealLine(b)); }, [b], H), VZ(() => { var T; (T = F.current) == null || T.editor.setTheme(W); }, [W], H); let P = ll(() => { var T; if (!(!a.current || !F.current) && !g.current) { B.current(F.current); let v = i || m, Q = dl(F.current, c || Z || "", l || I || "", v || ""); x.current = (T = F.current) == null ? void 0 : T.editor.create(a.current, { model: Q, automaticLayout: !0, ...X }, G), y && x.current.restoreViewState(El.get(v)), F.current.editor.setTheme(W), b !== void 0 && x.current.revealLine(b), j(!0), g.current = !0; } }, [Z, l, m, c, I, i, X, G, y, W, b]); A(() => { H && o.current(x.current, F.current); }, [H]), A(() => { !R && !H && P(); }, [R, H, P]), z.current = c, A(() => { var T, v; H && J && ((T = k.current) == null || T.dispose(), k.current = (v = x.current) == null ? void 0 : v.onDidChangeModelContent((Q) => { f.current || J(x.current.getValue(), Q); })); }, [H, J]), A(() => { if (H) { let T = F.current.editor.onDidChangeMarkers((v) => { var ZZ; let Q = (ZZ = x.current.getModel()) == null ? void 0 : ZZ.uri; if (Q && v.find((E) => E.path === Q.path)) { let E = F.current.editor.getModelMarkers({ resource: Q }); w == null || w(E); } }); return () => { T == null || T.dispose(); }; } return () => { }; }, [H, w]); function $() { var T, v; (T = k.current) == null || T.dispose(), Y ? y && El.set(i, x.current.saveViewState()) : (v = x.current.getModel()) == null || v.dispose(), x.current.dispose(); } return yZ.createElement(cI, { width: u, height: S, isEditorReady: H, loading: d, _ref: a, className: p, wrapperProps: M }); } var Vb = Yb, ub = Bm(Vb), bI = ub; const WI = { automaticLayout: !0, cursorBlinking: "smooth", fontLigatures: !0, formatOnPaste: !0, formatOnType: !0, fontSize: 14, showDeprecated: !0, showUnused: !0, showFoldingControls: "mouseover", scrollBeyondLastLine: !1, minimap: { enabled: !1 }, inlineSuggest: { enabled: !1 }, fixedOverflowWidgets: !0, smoothScrolling: !0, smartSelect: { selectSubwords: !0, selectLeadingAndTrailingWhitespace: !0 }, tabSize: 2, overviewRulerBorder: !1, // 不要滚动条的边框 // 滚动条设置 scrollbar: { verticalScrollbarSize: 6, // 竖滚动条 horizontalScrollbarSize: 6 // 横滚动条 } // lineNumbers: 'off', // 隐藏控制行号 }; var Jb = `/******************************************************************************\r Copyright (c) Microsoft Corporation.\r \r Permission to use, copy, modify, and/or distribute this software for any\r purpose with or without fee is hereby granted.\r \r THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r PERFORMANCE OF THIS SOFTWARE.\r ***************************************************************************** */\r \r var __assign = function() {\r __assign = Object.assign || function __assign(t) {\r for (var s, i = 1, n = arguments.length; i < n; i++) {\r s = arguments[i];\r for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r }\r return t;\r };\r return __assign.apply(this, arguments);\r }; var getTypescriptUrl=function(){var t="https://cdnjs.cloudflare.com/ajax/libs/typescript/4.6.4/typescript.min.js";try{return __TYPESCRIPT_CUSTOM_URL__||t}catch(r){return t}};self.importScripts([getTypescriptUrl()]);var Typescript=self.ts; var JsxToken={angleBracket:"jsx-tag-angle-bracket",attributeKey:"jsx-tag-attribute-key",tagName:"jsx-tag-name",expressionBraces:"jsx-expression-braces",text:"jsx-text",orderTokenPrefix:"jsx-tag-order"}; var getRowAndColumn=function(n,o){for(var t=0,e=0;e+o[t]<n;)e+=o[t],t+=1;return {row:t+1,column:n-e}};var getNodeRange=function(n){return "function"==typeof n.getStart&&"function"==typeof n.getEnd?[n.getStart(),n.getEnd()]:void 0!==n.pos&&void 0!==n.end?[n.pos,n.end]:[0,0]};var calcPosition=function(n,o){var t=getNodeRange(n),e=t[0],r=t[1];return {indexes:[e,r],positions:[getRowAndColumn(e+1,o),getRowAndColumn(r,o)]}}; var disposeJsxElementOrFragment=function(n){var s=n.node,e=n.lines,t=n.classifications,o=n.config,a=n.context,i="".concat(JsxToken.orderTokenPrefix,"-").concat(a.jsxTagOrder);if(a.jsxTagOrder=a.jsxTagOrder+1>o.jsxTagCycle?1:a.jsxTagOrder+1,s.kind===Typescript.SyntaxKind.JsxSelfClosingElement){var r=calcPosition(s,e).positions,c=calcPosition(s.tagName,e).positions;t.push({start:r[0],end:r[0],tokens:[JsxToken.angleBracket,i]}),t.push({start:__assign(__assign({},r[1]),{column:r[1].column-1}),end:r[1],tokens:[JsxToken.angleBracket,i]}),t.push({start:c[0],end:c[1],tokens:[JsxToken.tagName,i]});}else {var p=s.kind===Typescript.SyntaxKind.JsxFragment?s.openingFragment:s.openingElement,g=s.kind===Typescript.SyntaxKind.JsxFragment?s.closingFragment:s.closingElement,l=calcPosition(p,e).positions,k=calcPosition(g,e).positions;if(t.push({start:l[0],end:l[0],tokens:[JsxToken.angleBracket,i]}),t.push({start:l[1],end:l[1],tokens:[JsxToken.angleBracket,i]}),t.push({start:k[0],end:__assign(__assign({},k[0]),{column:k[0].column+1}),tokens:[JsxToken.angleBracket,i]}),t.push({start:k[1],end:k[1],tokens:[JsxToken.angleBracket,i]}),s.kind===Typescript.SyntaxKind.JsxElement){var m=calcPosition(p.tagName,e).positions,x=calcPosition(g.tagName,e).positions;t.push({start:m[0],end:m[1],tokens:[JsxToken.tagName,i]}),t.push({start:x[0],end:x[1],tokens:[JsxToken.tagName,i]});}}}; var disposeJsxAttributeKey=function(o){var t=o.node,i=o.lines,s=o.classifications,e=calcPosition(t,i).positions;s.push({start:e[0],end:e[1],tokens:[JsxToken.attributeKey]});}; var disposeJsxExpression=function(s){var o=s.node,e=s.lines,n=s.classifications,i=calcPosition(o,e).positions;n.push({start:i[0],end:i[0],tokens:[JsxToken.expressionBraces]}),n.push({start:i[1],end:i[1],tokens:[JsxToken.expressionBraces]});}; var disposeJsxText=function(o){var s=o.node,i=o.lines,t=o.classifications,n=calcPosition(s,i).positions;t.push({start:n[0],end:n[1],tokens:[JsxToken.text]});}; var disposeNode=function(e){var s=e.node,i=e.index;[Typescript.SyntaxKind.JsxFragment,Typescript.SyntaxKind.JsxElement,Typescript.SyntaxKind.JsxSelfClosingElement].includes(s.kind)&&disposeJsxElementOrFragment(e),s.parent&&s.parent.kind===Typescript.SyntaxKind.JsxAttribute&&s.kind===Typescript.SyntaxKind.Identifier&&0===i&&disposeJsxAttributeKey(e),s.kind===Typescript.SyntaxKind.JsxExpression&&disposeJsxExpression(e),s.kind===Typescript.SyntaxKind.JsxText&&disposeJsxText(e);},walkAST=function(e){disposeNode(e);var s=0;Typescript.forEachChild(e.node,(function(i){return walkAST(__assign(__assign({},e),{node:i,index:s++}))}));},withDefaultConfig=function(e){var s=(e||{}).jsxTagCycle;return {jsxTagCycle:void 0===s?3:s}};var analysis=function(e,s,i){try{var t=[],n=Typescript.createSourceFile(e,s,Typescript.ScriptTarget.ES2020,!0),r=s.split("\\n").map((function(e){return e.length+1}));return walkAST({node:n,lines:r,context:{jsxTagOrder:1},classifications:t,config:withDefaultConfig(i),index:0}),t}catch(e){return (null==i?void 0:i.enableConsole)&&console.error(e),[]}}; self.addEventListener("message",(function(s){var a=s.data,e=a.code,i=a.filePath,n=a.version,o=a.config;try{var l=analysis(i,e,o);self.postMessage({classifications:l,version:n,filePath:i});}catch(s){(null==o?void 0:o.enableConsole)&&console.error(s);}})); `, hb = { worker: Jb }, Nb = function() { return hb; }, Rb = ( /** @class */ function() { function Z(l, m, c) { var I = this; this.createWorkerFromPureString = function(i, W) { window.URL = window.URL || window.webkitURL; var b; i = i.replace("__TYPESCRIPT_CUSTOM_URL__", W != null && W.customTypescriptUrl ? "'".concat(W == null ? void 0 : W.customTypescriptUrl, "'") : "undefined"); try { b = new Blob([i], { type: "application/javascript" }); } catch { window.BlobBuilder = window.BlobBuilder || window.WebKitBlobBuilder || window.MozBlobBuilder, b = new window.BlobBuilder(), b.append(i), b = b.getBlob(); } var d = new Worker(URL.createObjectURL(b)); return URL.revokeObjectURL(b), d; }, this.highlighterBuilder = function(i) { var W = i.editor, b = i.filePath, d = b === void 0 ? W.getModel().uri.toString() : b, X = { current: [] }, G = function(y) { var Y = y.data, u = Y.classifications, S = Y.version, p = Y.filePath; requestAnimationFrame(function() { if (p === d && S === W.getModel().getVersionId()) { var M = X.current; X.current = W.deltaDecorations(M, u.map(function(h) { return { range: new I.monaco.Range(h.start.row, h.start.column, h.end.row, h.end.column + 1), options: { inlineClassName: h.tokens.join(" ") } }; })); } }); }; return I.worker.addEventListener("message", G), { highlighter: function(y) { requestAnimationFrame(function() { var Y = y || W.getModel().getValue(); I.worker.postMessage({ code: Y, filePath: d, version: W.getModel().getVersionId() }); }); }, dispose: function() { I.worker.removeEventListener("message", G); } }; }, this.monaco = m, typeof l == "string" ? this.worker = new Worker(l) : l.worker && typeof l.worker == "string" ? this.worker = this.createWorkerFromPureString(l.worker, c) : this.worker = l; } return Z; }() ), pb = Object.defineProperty, Sb = Object.defineProperties, Mb = Object.getOwnPropertyDescriptors, sc = Object.getOwnPropertySymbols, sb = Object.prototype.hasOwnProperty, Cb = Object.prototype.propertyIsEnumerable, Cc = (Z, l, m) => l in Z ? pb(Z, l, { enumerable: !0, configurable: !0, writable: !0, value: m }) : Z[l] = m, XI = (Z, l) => { for (var m in l || (l = {})) sb.call(l, m) && Cc(Z, m, l[m]); if (sc) for (var m of sc(l)) Cb.call(l, m) && Cc(Z, m, l[m]); return Z; }, dI = (Z, l) => Sb(Z, Mb(l)), zl = (Z, l, m) => new Promise((c, I) => { var i = (d) => { try { b(m.next(d)); } catch (X) { I(X); } }, W = (d) => { try { b(m.throw(d)); } catch (X) { I(X); } }, b = (d) => d.done ? c(d.value) : Promise.resolve(d.value).then(i, W); b((m = m.apply(Z, l)).next()); }), Fb = (Z, l) => { const m = `https://data.jsdelivr.com/v1/package/npm/${l}`; return Em(Z, m, { cache: "no-store" }); }, nb = (Z, l, m) => { const c = `https://data.jsdelivr.com/v1/package/resolve/npm/${l}@${m}`; return Em(Z, c); }, zb = (Z, l, m) => zl(void 0, null, function* () { const c = `https://data.jsdelivr.com/v1/package/npm/${l}@${m}/flat`, I = yield Em(Z, c); return I instanceof Error ? I : dI(XI({}, I), { moduleName: l, version: m }); }), Fc = (Z, l, m, c) => zl(void 0, null, function* () { const I = `https://cdn.jsdelivr.net/npm/${l}@${m}${c}`, W = yield (Z.fetcher || fetch)(I); return W.ok ? W.text() : new Error("OK"); }); function Em(Z, l, m) { return (Z.fetcher || fetch)(l, m).then((I) => I.ok ? I.json().then((i) => i) : new Error("OK")); } var kb = (Z) => { if ([ "assert", "assert/strict", "async_hooks", "buffer", "child_process", "cluster", "console", "constants", "crypto", "dgram", "diagnostics_channel", "dns", "dns/promises", "domain", "events", "fs", "fs/promises", "http", "http2", "https", "inspector", "module", "net", "os", "path", "path/posix", "path/win32", "perf_hooks", "process", "punycode", "querystring", "readline", "repl", "stream", "stream/promises", "stream/consumers", "stream/web", "string_decoder", "sys", "timers", "timers/promises", "tls", "trace_events", "tty", "url", "util", "util/types", "v8", "vm", "wasi", "worker_threads", "zlib" ].includes(Z.replace("node:", ""))) return "node"; const [m = "", c = ""] = Z.split("/"); return m.startsWith("@") ? `${m}/${c}` : m; }, wb = (Z) => { const l = /* @__PURE__ */ new Map(), m = /* @__PURE__ */ new Map(); let c = 0, I = 0; return (W) => (c = 0, I = 0, i(W, 0).then((b) => { var d, X; I > 0 && ((X = (d = Z.delegate).finished) == null || X.call(d, m)); })); function i(W, b) { return zl(this, null, function* () { var d, X, G, y, Y; const u = xb(Z, l, W); u.forEach((R) => l.set(R.module, { state: "loading" })); const p = (yield Promise.all(u.map((R) => zc(Z, R.module, R.version)))).filter((R) => !("error" in R)), M = p.filter((R) => R.files.find((n) => n.name.endsWith(".d.ts"))), h = M.map((R) => nc(R, `/node_modules/${R.moduleName}`)), N = p.filter((R) => !M.includes(R)), w = (yield Promise.all(N.map((R) => zc(Z, `@types/${hm(R.moduleName)}`, "latest")))).filter((R) => !("error" in R)), H = w.map((R) => nc(R, `/node_modules/@types/${hm(R.moduleName).replace("types__", "")}`)), j = h.concat(H).reduce((R, n) => R.concat(n), []); c += j.length, j.length && b === 0 && ((X = (d = Z.delegate).started) == null || X.call(d)); for (const R of p) { let n = `/node_modules/${R.moduleName}`; w.includes(R) && (n = `/node_modules/@types/${hm(R.moduleName).replace("types__", "")}`); const F = n + "/package.json", x = yield Fc(Z, R.moduleName, R.version, "/package.json"); typeof x == "string" ? (m.set(F, x), (y = (G = Z.delegate).receivedFile) == null || y.call(G, x, F)) : (Y = Z.logger) == null || Y.error(`Could not download package.json for ${R.moduleName}`); } yield Promise.all(j.map((R) => zl(this, null, function* () { var n, F, x; const a = yield Fc(Z, R.moduleName, R.moduleVersion, R.path); I++, a instanceof Error ? (n = Z.logger) == null || n.error(`Had an issue getting ${R.path} for ${R.moduleName}`) : (m.set(R.vfsPath, a), (x = (F = Z.delegate).receivedFile) == null || x.call(F, a, R.vfsPath), Z.delegate.progress && I % 5 === 0 && Z.delegate.progress(I, c), yield i(a, b + 1)); }))); }); } }; function nc(Z, l) { const m = []; for (const c of Z.files) c.name.endsWith(".d.ts") && m.push({ moduleName: Z.moduleName, moduleVersion: Z.version, vfsPath: `${l}${c.name}`, path: c.name }); return m; } var ab = (Z, l) => { const m = Z.preProcessFile(l), c = Z.libMap || /* @__PURE__ */ new Map(); return m.referencedFiles.concat(m.importedFiles).concat(m.libReferenceDirectives).filter((i) => !i.fileName.endsWith(".d.ts")).filter((i) => !c.has(i.fileName)).map((i) => { let W; if (!i.fileName.startsWith(".")) { W = "latest"; const b = l.slice(i.end).split(` `)[0]; b.includes("// types:") && (W = b.split("// types: ")[1].trim()); } return { module: i.fileName, version: W }; }); }; function xb(Z, l, m) { return ab(Z.typescript, m).map((i) => dI(XI({}, i), { module: kb(i.module) })).filter((i) => !i.module.startsWith(".")).filter((i) => !l.has(i.module)); } var zc = (Z, l, m) => zl(void 0, null, function* () { let c = m || "latest"; if (c.split(".").length < 2) { const i = yield nb(Z, l, c); if (i instanceof Error) return { error: i, userFacingMessage: `Could not go from a tag to version on npm for ${l} - possible typo?` }; const W = i.version; if (!W) { const b = yield Fb(Z, l); if (b instanceof Error) return { error: i, userFacingMessage: `Could not get versions on npm for ${l} - possible typo?` }; const d = Object.entries(b.tags).join(", "); return { error: new Error("Could not find tag for module"), userFacingMessage: `Could not find a tag for ${l} called ${m}. Did find ${d}` }; } c = W; } const I = yield zb(Z, l, c); return I instanceof Error ? { error: I, userFacingMessage: `Could not get the files for ${l}@${c}. Is it possibly a typo?` } : I; }); function hm(Z) { return Z.indexOf("@") === 0 && Z.indexOf("/") !== -1 && (Z = Z.substr(1).replace("/", "__")), Z; } const DZ = Ub(); function Ub() { return { receivedFile: /* @__PURE__ */ new Set(), progress: /* @__PURE__ */ new Set(), errorMessage: /* @__PURE__ */ new Set(), finished: /* @__PURE__ */ new Set(), started: /* @__PURE__ */ new Set() }; } async function jb() { const Z = await import("https://esm.sh/typescript@5.2.2"), l = wb({ projectName: "monaco-ts", typescript: Z, logger: console, fetcher(i, W) { let b; try { b = fetch(i, W); } catch (d) { console.error("Error fetching data:", d); } return b; }, delegate: { receivedFile: (i, W) => { DZ.receivedFile.forEach((b) => b(i, W)); }, progress: (i, W) => { DZ.progress.forEach((b) => b(i, W)); }, started: () => { DZ.started.forEach((i) => i()); }, finished: (i) => { DZ.finished.forEach((W) => W(i)); } } }); return { acquireType: (i) => l(i), addListener: (i, W) => { DZ[i].add(W); }, removeListener: (i, W) => { DZ[i].delete(W); }, dispose: () => { for (const i in DZ) DZ[i].clear(); } }; } const Kb = () => ({ autoLoadExtraLib: async (c, I, i, W) => { const b = await jb(); W(b), c.onDidChangeModelContent(() => { b.acquireType(c.getValue()); }); const d = (X, G) => { I.languages.typescript.typescriptDefaults.addExtraLib(X, `file://${G}`); }; return b.addListener("receivedFile", d), b.acquireType(i), b; }, doOpenEditor: (c, I) => { const i = I.options ? I.options.selection : null; if (i) if (typeof i.endLineNumber == "number" && typeof i.endColumn == "number") c.setSelection(i), c.revealRangeInCenter( i, 1 /* Immediate */ ); else { const W = { lineNumber: i.startLineNumber, column: i.startColumn }; c.setPosition(W), c.revealPositionInCenter( W, 1 /* Immediate */ ); } console.log("触发鼠标+command点击", I.resource, i); }, loadJsxSyntaxHighlight: (c, I) => { const i = new Rb(Nb(), I), { highlighter: W, dispose: b } = i.highlighterBuilder({ editor: c }); return c.onDidChangeModelContent(() => { W(); }), W(), { highlighter: W, dispose: b }; } }), Hb = () => { const [Z, l] = mZ(0), [m, c] = mZ(0), [I, i] = mZ(!1); return { progress: Z, total: m, finished: I, onWatch: (b) => { const d = (y, Y) => { l(y), c(Y); }; b.addListener("progress", d); const X = () => i(!0); b.addListener("finished", X); const G = () => i(!1); return b.addListener("started", G), () => { b.removeListener("progress", d), b.removeListener("finished", X), b.removeListener("started", G); }; } }; }, ob = "_loader_z4rlz_1", Tb = "_