@stonecrop/code-editor 0.13.14 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/code-editor.css +1 -1
- package/dist/code-editor.js +265 -251
- package/dist/code-editor.js.map +1 -1
- package/dist/src/utils/language.d.ts +6 -6
- package/dist/src/utils/language.d.ts.map +1 -1
- package/dist/src/utils/language.js +6 -10
- package/dist/src/utils/serialization.d.ts +1 -1
- package/dist/src/utils/serialization.d.ts.map +1 -1
- package/dist/src/utils/serialization.js +1 -1
- package/package.json +6 -4
- package/src/components/ACodeEditor.vue +56 -5
- package/src/utils/serialization.ts +1 -1
- package/src/utils/language.ts +0 -14
package/dist/code-editor.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.a-code-editor[data-v-
|
|
1
|
+
.a-code-editor[data-v-8f53629e]{width:100%;overflow:hidden}
|
package/dist/code-editor.js
CHANGED
|
@@ -1,186 +1,186 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
function O(e,
|
|
3
|
-
(
|
|
4
|
-
for (var
|
|
5
|
-
return
|
|
1
|
+
import { defineComponent as M, useModel as D, useTemplateRef as L, shallowRef as q, watch as j, onMounted as B, onUnmounted as R, openBlock as V, createElementBlock as z, normalizeStyle as H, mergeModels as U } from "vue";
|
|
2
|
+
function O(e, t) {
|
|
3
|
+
(t == null || t > e.length) && (t = e.length);
|
|
4
|
+
for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
|
|
5
|
+
return r;
|
|
6
6
|
}
|
|
7
|
-
function
|
|
7
|
+
function F(e) {
|
|
8
8
|
if (Array.isArray(e)) return e;
|
|
9
9
|
}
|
|
10
|
-
function N(e,
|
|
11
|
-
return (
|
|
12
|
-
value:
|
|
10
|
+
function N(e, t, n) {
|
|
11
|
+
return (t = X(t)) in e ? Object.defineProperty(e, t, {
|
|
12
|
+
value: n,
|
|
13
13
|
enumerable: !0,
|
|
14
14
|
configurable: !0,
|
|
15
15
|
writable: !0
|
|
16
|
-
}) : e[
|
|
16
|
+
}) : e[t] = n, e;
|
|
17
17
|
}
|
|
18
|
-
function
|
|
19
|
-
var
|
|
20
|
-
if (
|
|
21
|
-
var
|
|
18
|
+
function W(e, t) {
|
|
19
|
+
var n = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
|
|
20
|
+
if (n != null) {
|
|
21
|
+
var r, o, i, a, u = [], c = !0, f = !1;
|
|
22
22
|
try {
|
|
23
|
-
if (i = (
|
|
24
|
-
} catch (
|
|
25
|
-
|
|
23
|
+
if (i = (n = n.call(e)).next, t !== 0) for (; !(c = (r = i.call(n)).done) && (u.push(r.value), u.length !== t); c = !0) ;
|
|
24
|
+
} catch (d) {
|
|
25
|
+
f = !0, o = d;
|
|
26
26
|
} finally {
|
|
27
27
|
try {
|
|
28
|
-
if (!
|
|
28
|
+
if (!c && n.return != null && (a = n.return(), Object(a) !== a)) return;
|
|
29
29
|
} finally {
|
|
30
|
-
if (
|
|
30
|
+
if (f) throw o;
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
|
-
return
|
|
33
|
+
return u;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
-
function
|
|
36
|
+
function G() {
|
|
37
37
|
throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
38
38
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
|
|
39
39
|
}
|
|
40
|
-
function w(e,
|
|
41
|
-
var
|
|
40
|
+
function w(e, t) {
|
|
41
|
+
var n = Object.keys(e);
|
|
42
42
|
if (Object.getOwnPropertySymbols) {
|
|
43
|
-
var
|
|
44
|
-
|
|
43
|
+
var r = Object.getOwnPropertySymbols(e);
|
|
44
|
+
t && (r = r.filter(function(o) {
|
|
45
45
|
return Object.getOwnPropertyDescriptor(e, o).enumerable;
|
|
46
|
-
})),
|
|
46
|
+
})), n.push.apply(n, r);
|
|
47
47
|
}
|
|
48
|
-
return
|
|
49
|
-
}
|
|
50
|
-
function
|
|
51
|
-
for (var
|
|
52
|
-
var
|
|
53
|
-
|
|
54
|
-
N(e,
|
|
55
|
-
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(
|
|
56
|
-
Object.defineProperty(e,
|
|
48
|
+
return n;
|
|
49
|
+
}
|
|
50
|
+
function S(e) {
|
|
51
|
+
for (var t = 1; t < arguments.length; t++) {
|
|
52
|
+
var n = arguments[t] != null ? arguments[t] : {};
|
|
53
|
+
t % 2 ? w(Object(n), !0).forEach(function(r) {
|
|
54
|
+
N(e, r, n[r]);
|
|
55
|
+
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : w(Object(n)).forEach(function(r) {
|
|
56
|
+
Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
|
|
57
57
|
});
|
|
58
58
|
}
|
|
59
59
|
return e;
|
|
60
60
|
}
|
|
61
|
-
function
|
|
61
|
+
function K(e, t) {
|
|
62
62
|
if (e == null) return {};
|
|
63
|
-
var
|
|
63
|
+
var n, r, o = J(e, t);
|
|
64
64
|
if (Object.getOwnPropertySymbols) {
|
|
65
65
|
var i = Object.getOwnPropertySymbols(e);
|
|
66
|
-
for (
|
|
66
|
+
for (r = 0; r < i.length; r++) n = i[r], t.indexOf(n) === -1 && {}.propertyIsEnumerable.call(e, n) && (o[n] = e[n]);
|
|
67
67
|
}
|
|
68
68
|
return o;
|
|
69
69
|
}
|
|
70
|
-
function
|
|
70
|
+
function J(e, t) {
|
|
71
71
|
if (e == null) return {};
|
|
72
|
-
var
|
|
73
|
-
for (var
|
|
74
|
-
if (
|
|
75
|
-
r
|
|
72
|
+
var n = {};
|
|
73
|
+
for (var r in e) if ({}.hasOwnProperty.call(e, r)) {
|
|
74
|
+
if (t.indexOf(r) !== -1) continue;
|
|
75
|
+
n[r] = e[r];
|
|
76
76
|
}
|
|
77
|
-
return
|
|
77
|
+
return n;
|
|
78
78
|
}
|
|
79
|
-
function
|
|
80
|
-
return
|
|
79
|
+
function Y(e, t) {
|
|
80
|
+
return F(e) || W(e, t) || Z(e, t) || G();
|
|
81
81
|
}
|
|
82
|
-
function
|
|
82
|
+
function Q(e, t) {
|
|
83
83
|
if (typeof e != "object" || !e) return e;
|
|
84
|
-
var
|
|
85
|
-
if (
|
|
86
|
-
var
|
|
87
|
-
if (typeof
|
|
84
|
+
var n = e[Symbol.toPrimitive];
|
|
85
|
+
if (n !== void 0) {
|
|
86
|
+
var r = n.call(e, t);
|
|
87
|
+
if (typeof r != "object") return r;
|
|
88
88
|
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
89
89
|
}
|
|
90
|
-
return (
|
|
90
|
+
return (t === "string" ? String : Number)(e);
|
|
91
91
|
}
|
|
92
|
-
function
|
|
93
|
-
var
|
|
94
|
-
return typeof
|
|
92
|
+
function X(e) {
|
|
93
|
+
var t = Q(e, "string");
|
|
94
|
+
return typeof t == "symbol" ? t : t + "";
|
|
95
95
|
}
|
|
96
|
-
function
|
|
96
|
+
function Z(e, t) {
|
|
97
97
|
if (e) {
|
|
98
|
-
if (typeof e == "string") return O(e,
|
|
99
|
-
var
|
|
100
|
-
return
|
|
98
|
+
if (typeof e == "string") return O(e, t);
|
|
99
|
+
var n = {}.toString.call(e).slice(8, -1);
|
|
100
|
+
return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? O(e, t) : void 0;
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
|
-
function
|
|
104
|
-
return
|
|
105
|
-
value:
|
|
103
|
+
function _(e, t, n) {
|
|
104
|
+
return t in e ? Object.defineProperty(e, t, {
|
|
105
|
+
value: n,
|
|
106
106
|
enumerable: !0,
|
|
107
107
|
configurable: !0,
|
|
108
108
|
writable: !0
|
|
109
|
-
}) : e[
|
|
109
|
+
}) : e[t] = n, e;
|
|
110
110
|
}
|
|
111
|
-
function
|
|
112
|
-
var
|
|
111
|
+
function P(e, t) {
|
|
112
|
+
var n = Object.keys(e);
|
|
113
113
|
if (Object.getOwnPropertySymbols) {
|
|
114
|
-
var
|
|
115
|
-
|
|
114
|
+
var r = Object.getOwnPropertySymbols(e);
|
|
115
|
+
t && (r = r.filter(function(o) {
|
|
116
116
|
return Object.getOwnPropertyDescriptor(e, o).enumerable;
|
|
117
|
-
})),
|
|
117
|
+
})), n.push.apply(n, r);
|
|
118
118
|
}
|
|
119
|
-
return
|
|
120
|
-
}
|
|
121
|
-
function
|
|
122
|
-
for (var
|
|
123
|
-
var
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(
|
|
127
|
-
Object.defineProperty(e,
|
|
119
|
+
return n;
|
|
120
|
+
}
|
|
121
|
+
function I(e) {
|
|
122
|
+
for (var t = 1; t < arguments.length; t++) {
|
|
123
|
+
var n = arguments[t] != null ? arguments[t] : {};
|
|
124
|
+
t % 2 ? P(Object(n), !0).forEach(function(r) {
|
|
125
|
+
_(e, r, n[r]);
|
|
126
|
+
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : P(Object(n)).forEach(function(r) {
|
|
127
|
+
Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
|
|
128
128
|
});
|
|
129
129
|
}
|
|
130
130
|
return e;
|
|
131
131
|
}
|
|
132
|
-
function
|
|
133
|
-
for (var e = arguments.length,
|
|
134
|
-
n
|
|
135
|
-
return function(
|
|
136
|
-
return
|
|
132
|
+
function ee() {
|
|
133
|
+
for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)
|
|
134
|
+
t[n] = arguments[n];
|
|
135
|
+
return function(r) {
|
|
136
|
+
return t.reduceRight(function(o, i) {
|
|
137
137
|
return i(o);
|
|
138
|
-
},
|
|
138
|
+
}, r);
|
|
139
139
|
};
|
|
140
140
|
}
|
|
141
|
-
function
|
|
142
|
-
return function
|
|
143
|
-
for (var
|
|
141
|
+
function s(e) {
|
|
142
|
+
return function t() {
|
|
143
|
+
for (var n = this, r = arguments.length, o = new Array(r), i = 0; i < r; i++)
|
|
144
144
|
o[i] = arguments[i];
|
|
145
145
|
return o.length >= e.length ? e.apply(this, o) : function() {
|
|
146
|
-
for (var a = arguments.length,
|
|
147
|
-
c
|
|
148
|
-
return
|
|
146
|
+
for (var a = arguments.length, u = new Array(a), c = 0; c < a; c++)
|
|
147
|
+
u[c] = arguments[c];
|
|
148
|
+
return t.apply(n, [].concat(o, u));
|
|
149
149
|
};
|
|
150
150
|
};
|
|
151
151
|
}
|
|
152
|
-
function
|
|
152
|
+
function b(e) {
|
|
153
153
|
return {}.toString.call(e).includes("Object");
|
|
154
154
|
}
|
|
155
|
-
function
|
|
155
|
+
function te(e) {
|
|
156
156
|
return !Object.keys(e).length;
|
|
157
157
|
}
|
|
158
|
-
function
|
|
158
|
+
function g(e) {
|
|
159
159
|
return typeof e == "function";
|
|
160
160
|
}
|
|
161
|
-
function
|
|
162
|
-
return Object.prototype.hasOwnProperty.call(e,
|
|
161
|
+
function ne(e, t) {
|
|
162
|
+
return Object.prototype.hasOwnProperty.call(e, t);
|
|
163
163
|
}
|
|
164
|
-
function
|
|
165
|
-
return
|
|
166
|
-
return !
|
|
167
|
-
}) &&
|
|
164
|
+
function re(e, t) {
|
|
165
|
+
return b(t) || l("changeType"), Object.keys(t).some(function(n) {
|
|
166
|
+
return !ne(e, n);
|
|
167
|
+
}) && l("changeField"), t;
|
|
168
168
|
}
|
|
169
|
-
function
|
|
170
|
-
|
|
169
|
+
function oe(e) {
|
|
170
|
+
g(e) || l("selectorType");
|
|
171
171
|
}
|
|
172
|
-
function
|
|
173
|
-
|
|
174
|
-
return !
|
|
175
|
-
}) &&
|
|
172
|
+
function ie(e) {
|
|
173
|
+
g(e) || b(e) || l("handlerType"), b(e) && Object.values(e).some(function(t) {
|
|
174
|
+
return !g(t);
|
|
175
|
+
}) && l("handlersType");
|
|
176
176
|
}
|
|
177
|
-
function
|
|
178
|
-
e ||
|
|
177
|
+
function ae(e) {
|
|
178
|
+
e || l("initialIsRequired"), b(e) || l("initialType"), te(e) && l("initialContent");
|
|
179
179
|
}
|
|
180
|
-
function
|
|
181
|
-
throw new Error(e[
|
|
180
|
+
function ce(e, t) {
|
|
181
|
+
throw new Error(e[t] || e.default);
|
|
182
182
|
}
|
|
183
|
-
var
|
|
183
|
+
var ue = {
|
|
184
184
|
initialIsRequired: "initial state is required",
|
|
185
185
|
initialType: "initial state should be an object",
|
|
186
186
|
initialContent: "initial state shouldn't be an empty object",
|
|
@@ -190,76 +190,76 @@ var ae = {
|
|
|
190
190
|
changeType: "provided value of changes should be an object",
|
|
191
191
|
changeField: 'it seams you want to change a field in the state which is not specified in the "initial" state',
|
|
192
192
|
default: "an unknown error accured in `state-local` package"
|
|
193
|
-
},
|
|
194
|
-
changes:
|
|
195
|
-
selector:
|
|
196
|
-
handler:
|
|
197
|
-
initial:
|
|
193
|
+
}, l = s(ce)(ue), p = {
|
|
194
|
+
changes: re,
|
|
195
|
+
selector: oe,
|
|
196
|
+
handler: ie,
|
|
197
|
+
initial: ae
|
|
198
198
|
};
|
|
199
|
-
function
|
|
200
|
-
var
|
|
201
|
-
|
|
202
|
-
var
|
|
199
|
+
function fe(e) {
|
|
200
|
+
var t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
|
|
201
|
+
p.initial(e), p.handler(t);
|
|
202
|
+
var n = {
|
|
203
203
|
current: e
|
|
204
|
-
},
|
|
205
|
-
function
|
|
206
|
-
var
|
|
207
|
-
return
|
|
204
|
+
}, r = s(se)(n, t), o = s(le)(n), i = s(p.changes)(e), a = s(de)(n);
|
|
205
|
+
function u() {
|
|
206
|
+
var f = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : function(d) {
|
|
207
|
+
return d;
|
|
208
208
|
};
|
|
209
|
-
return
|
|
209
|
+
return p.selector(f), f(n.current);
|
|
210
210
|
}
|
|
211
|
-
function
|
|
212
|
-
|
|
211
|
+
function c(f) {
|
|
212
|
+
ee(r, o, i, a)(f);
|
|
213
213
|
}
|
|
214
|
-
return [
|
|
214
|
+
return [u, c];
|
|
215
215
|
}
|
|
216
|
-
function
|
|
217
|
-
return
|
|
216
|
+
function de(e, t) {
|
|
217
|
+
return g(t) ? t(e.current) : t;
|
|
218
218
|
}
|
|
219
|
-
function
|
|
220
|
-
return e.current =
|
|
219
|
+
function le(e, t) {
|
|
220
|
+
return e.current = I(I({}, e.current), t), t;
|
|
221
221
|
}
|
|
222
|
-
function
|
|
223
|
-
return
|
|
222
|
+
function se(e, t, n) {
|
|
223
|
+
return g(t) ? t(e.current) : Object.keys(n).forEach(function(r) {
|
|
224
224
|
var o;
|
|
225
|
-
return (o =
|
|
226
|
-
}),
|
|
225
|
+
return (o = t[r]) === null || o === void 0 ? void 0 : o.call(t, e.current[r]);
|
|
226
|
+
}), n;
|
|
227
227
|
}
|
|
228
|
-
var
|
|
229
|
-
create:
|
|
230
|
-
},
|
|
228
|
+
var ge = {
|
|
229
|
+
create: fe
|
|
230
|
+
}, me = {
|
|
231
231
|
paths: {
|
|
232
232
|
vs: "https://cdn.jsdelivr.net/npm/monaco-editor@0.55.1/min/vs"
|
|
233
233
|
}
|
|
234
234
|
};
|
|
235
|
-
function
|
|
236
|
-
return function
|
|
237
|
-
for (var
|
|
235
|
+
function pe(e) {
|
|
236
|
+
return function t() {
|
|
237
|
+
for (var n = this, r = arguments.length, o = new Array(r), i = 0; i < r; i++)
|
|
238
238
|
o[i] = arguments[i];
|
|
239
239
|
return o.length >= e.length ? e.apply(this, o) : function() {
|
|
240
|
-
for (var a = arguments.length,
|
|
241
|
-
c
|
|
242
|
-
return
|
|
240
|
+
for (var a = arguments.length, u = new Array(a), c = 0; c < a; c++)
|
|
241
|
+
u[c] = arguments[c];
|
|
242
|
+
return t.apply(n, [].concat(o, u));
|
|
243
243
|
};
|
|
244
244
|
};
|
|
245
245
|
}
|
|
246
|
-
function
|
|
246
|
+
function be(e) {
|
|
247
247
|
return {}.toString.call(e).includes("Object");
|
|
248
248
|
}
|
|
249
|
-
function
|
|
250
|
-
return e ||
|
|
249
|
+
function he(e) {
|
|
250
|
+
return e || E("configIsRequired"), be(e) || E("configType"), e.urls ? (ve(), {
|
|
251
251
|
paths: {
|
|
252
252
|
vs: e.urls.monacoBase
|
|
253
253
|
}
|
|
254
254
|
}) : e;
|
|
255
255
|
}
|
|
256
|
-
function
|
|
257
|
-
console.warn(
|
|
256
|
+
function ve() {
|
|
257
|
+
console.warn(T.deprecation);
|
|
258
258
|
}
|
|
259
|
-
function
|
|
260
|
-
throw new Error(e[
|
|
259
|
+
function ye(e, t) {
|
|
260
|
+
throw new Error(e[t] || e.default);
|
|
261
261
|
}
|
|
262
|
-
var
|
|
262
|
+
var T = {
|
|
263
263
|
configIsRequired: "the configuration object is required",
|
|
264
264
|
configType: "the configuration object should be an object",
|
|
265
265
|
default: "an unknown error accured in `@monaco-editor/loader` package",
|
|
@@ -273,129 +273,129 @@ var E = {
|
|
|
273
273
|
|
|
274
274
|
For more please check the link https://github.com/suren-atoyan/monaco-loader#config
|
|
275
275
|
`
|
|
276
|
-
},
|
|
277
|
-
config:
|
|
278
|
-
},
|
|
279
|
-
for (var
|
|
280
|
-
r
|
|
276
|
+
}, E = pe(ye)(T), ke = {
|
|
277
|
+
config: he
|
|
278
|
+
}, je = function() {
|
|
279
|
+
for (var t = arguments.length, n = new Array(t), r = 0; r < t; r++)
|
|
280
|
+
n[r] = arguments[r];
|
|
281
281
|
return function(o) {
|
|
282
|
-
return
|
|
282
|
+
return n.reduceRight(function(i, a) {
|
|
283
283
|
return a(i);
|
|
284
284
|
}, o);
|
|
285
285
|
};
|
|
286
286
|
};
|
|
287
|
-
function
|
|
288
|
-
return Object.keys(
|
|
289
|
-
n
|
|
290
|
-
}),
|
|
287
|
+
function A(e, t) {
|
|
288
|
+
return Object.keys(t).forEach(function(n) {
|
|
289
|
+
t[n] instanceof Object && e[n] && Object.assign(t[n], A(e[n], t[n]));
|
|
290
|
+
}), S(S({}, e), t);
|
|
291
291
|
}
|
|
292
|
-
var
|
|
292
|
+
var Oe = {
|
|
293
293
|
type: "cancelation",
|
|
294
294
|
msg: "operation is manually canceled"
|
|
295
295
|
};
|
|
296
296
|
function v(e) {
|
|
297
|
-
var
|
|
297
|
+
var t = !1, n = new Promise(function(r, o) {
|
|
298
298
|
e.then(function(i) {
|
|
299
|
-
return
|
|
299
|
+
return t ? o(Oe) : r(i);
|
|
300
300
|
}), e.catch(o);
|
|
301
301
|
});
|
|
302
|
-
return
|
|
303
|
-
return
|
|
304
|
-
},
|
|
302
|
+
return n.cancel = function() {
|
|
303
|
+
return t = !0;
|
|
304
|
+
}, n;
|
|
305
305
|
}
|
|
306
|
-
var
|
|
307
|
-
config:
|
|
306
|
+
var we = ["monaco"], Se = ge.create({
|
|
307
|
+
config: me,
|
|
308
308
|
isInitialized: !1,
|
|
309
309
|
resolve: null,
|
|
310
310
|
reject: null,
|
|
311
311
|
monaco: null
|
|
312
|
-
}),
|
|
313
|
-
function
|
|
314
|
-
var
|
|
315
|
-
|
|
312
|
+
}), C = Y(Se, 2), m = C[0], h = C[1];
|
|
313
|
+
function Pe(e) {
|
|
314
|
+
var t = ke.config(e), n = t.monaco, r = K(t, we);
|
|
315
|
+
h(function(o) {
|
|
316
316
|
return {
|
|
317
|
-
config:
|
|
318
|
-
monaco:
|
|
317
|
+
config: A(o.config, r),
|
|
318
|
+
monaco: n
|
|
319
319
|
};
|
|
320
320
|
});
|
|
321
321
|
}
|
|
322
|
-
function
|
|
323
|
-
var e =
|
|
324
|
-
var
|
|
322
|
+
function Ie() {
|
|
323
|
+
var e = m(function(t) {
|
|
324
|
+
var n = t.monaco, r = t.isInitialized, o = t.resolve;
|
|
325
325
|
return {
|
|
326
|
-
monaco:
|
|
327
|
-
isInitialized:
|
|
326
|
+
monaco: n,
|
|
327
|
+
isInitialized: r,
|
|
328
328
|
resolve: o
|
|
329
329
|
};
|
|
330
330
|
});
|
|
331
331
|
if (!e.isInitialized) {
|
|
332
|
-
if (
|
|
332
|
+
if (h({
|
|
333
333
|
isInitialized: !0
|
|
334
334
|
}), e.monaco)
|
|
335
335
|
return e.resolve(e.monaco), v(y);
|
|
336
336
|
if (window.monaco && window.monaco.editor)
|
|
337
|
-
return
|
|
338
|
-
|
|
337
|
+
return $(window.monaco), e.resolve(window.monaco), v(y);
|
|
338
|
+
je(Ee, Te)(Ae);
|
|
339
339
|
}
|
|
340
340
|
return v(y);
|
|
341
341
|
}
|
|
342
|
-
function
|
|
342
|
+
function Ee(e) {
|
|
343
343
|
return document.body.appendChild(e);
|
|
344
344
|
}
|
|
345
|
-
function
|
|
346
|
-
var
|
|
347
|
-
return e && (
|
|
345
|
+
function xe(e) {
|
|
346
|
+
var t = document.createElement("script");
|
|
347
|
+
return e && (t.src = e), t;
|
|
348
348
|
}
|
|
349
|
-
function
|
|
350
|
-
var
|
|
351
|
-
var o =
|
|
349
|
+
function Te(e) {
|
|
350
|
+
var t = m(function(r) {
|
|
351
|
+
var o = r.config, i = r.reject;
|
|
352
352
|
return {
|
|
353
353
|
config: o,
|
|
354
354
|
reject: i
|
|
355
355
|
};
|
|
356
|
-
}),
|
|
357
|
-
return
|
|
356
|
+
}), n = xe("".concat(t.config.paths.vs, "/loader.js"));
|
|
357
|
+
return n.onload = function() {
|
|
358
358
|
return e();
|
|
359
|
-
},
|
|
359
|
+
}, n.onerror = t.reject, n;
|
|
360
360
|
}
|
|
361
|
-
function
|
|
362
|
-
var e =
|
|
363
|
-
var
|
|
361
|
+
function Ae() {
|
|
362
|
+
var e = m(function(n) {
|
|
363
|
+
var r = n.config, o = n.resolve, i = n.reject;
|
|
364
364
|
return {
|
|
365
|
-
config:
|
|
365
|
+
config: r,
|
|
366
366
|
resolve: o,
|
|
367
367
|
reject: i
|
|
368
368
|
};
|
|
369
|
-
}),
|
|
370
|
-
|
|
371
|
-
var
|
|
372
|
-
|
|
373
|
-
}, function(
|
|
374
|
-
e.reject(
|
|
369
|
+
}), t = window.require;
|
|
370
|
+
t.config(e.config), t(["vs/editor/editor.main"], function(n) {
|
|
371
|
+
var r = n.m || n;
|
|
372
|
+
$(r), e.resolve(r);
|
|
373
|
+
}, function(n) {
|
|
374
|
+
e.reject(n);
|
|
375
375
|
});
|
|
376
376
|
}
|
|
377
|
-
function
|
|
378
|
-
|
|
377
|
+
function $(e) {
|
|
378
|
+
m().monaco || h({
|
|
379
379
|
monaco: e
|
|
380
380
|
});
|
|
381
381
|
}
|
|
382
|
-
function
|
|
383
|
-
return
|
|
384
|
-
var
|
|
385
|
-
return
|
|
382
|
+
function Ce() {
|
|
383
|
+
return m(function(e) {
|
|
384
|
+
var t = e.monaco;
|
|
385
|
+
return t;
|
|
386
386
|
});
|
|
387
387
|
}
|
|
388
|
-
var y = new Promise(function(e,
|
|
389
|
-
return
|
|
388
|
+
var y = new Promise(function(e, t) {
|
|
389
|
+
return h({
|
|
390
390
|
resolve: e,
|
|
391
|
-
reject:
|
|
391
|
+
reject: t
|
|
392
392
|
});
|
|
393
|
-
}),
|
|
394
|
-
config:
|
|
395
|
-
init:
|
|
396
|
-
__getMonacoInstance:
|
|
393
|
+
}), x = {
|
|
394
|
+
config: Pe,
|
|
395
|
+
init: Ie,
|
|
396
|
+
__getMonacoInstance: Ce
|
|
397
397
|
};
|
|
398
|
-
const
|
|
398
|
+
const $e = {
|
|
399
399
|
base: "vs",
|
|
400
400
|
inherit: !0,
|
|
401
401
|
colors: {
|
|
@@ -743,15 +743,13 @@ const xe = {
|
|
|
743
743
|
}
|
|
744
744
|
]
|
|
745
745
|
};
|
|
746
|
-
function
|
|
747
|
-
return e === "JSON" ? "json" : e === "Code" ? n ?? "typescript" : n ?? "plaintext";
|
|
748
|
-
}
|
|
749
|
-
function De(e, n) {
|
|
746
|
+
function Me(e) {
|
|
750
747
|
return e == null ? "" : typeof e == "string" ? e : JSON.stringify(e, null, 2);
|
|
751
748
|
}
|
|
752
|
-
|
|
749
|
+
let De = 0;
|
|
750
|
+
const Le = /* @__PURE__ */ M({
|
|
753
751
|
__name: "ACodeEditor",
|
|
754
|
-
props: /* @__PURE__ */
|
|
752
|
+
props: /* @__PURE__ */ U({
|
|
755
753
|
height: { default: "300px" },
|
|
756
754
|
mode: { default: "edit" },
|
|
757
755
|
schema: { default: () => {
|
|
@@ -759,6 +757,12 @@ const qe = /* @__PURE__ */ x({
|
|
|
759
757
|
language: { default: () => {
|
|
760
758
|
} },
|
|
761
759
|
options: { default: () => {
|
|
760
|
+
} },
|
|
761
|
+
vsPath: { default: () => {
|
|
762
|
+
} },
|
|
763
|
+
extraLibs: { default: () => {
|
|
764
|
+
} },
|
|
765
|
+
libs: { default: () => {
|
|
762
766
|
} }
|
|
763
767
|
}, {
|
|
764
768
|
modelValue: {},
|
|
@@ -766,52 +770,62 @@ const qe = /* @__PURE__ */ x({
|
|
|
766
770
|
}),
|
|
767
771
|
emits: ["update:modelValue"],
|
|
768
772
|
setup(e) {
|
|
769
|
-
const
|
|
770
|
-
return
|
|
771
|
-
const i =
|
|
773
|
+
const t = D(e, "modelValue"), n = L("aCodeEditor"), r = q(null);
|
|
774
|
+
return j(t, (o) => {
|
|
775
|
+
const i = r.value;
|
|
772
776
|
i && o !== i.getValue() && i.setValue(o ?? "");
|
|
773
|
-
}),
|
|
777
|
+
}), j(
|
|
774
778
|
() => e.mode,
|
|
775
779
|
(o) => {
|
|
776
|
-
|
|
780
|
+
r.value?.updateOptions({ readOnly: o !== "edit" });
|
|
777
781
|
}
|
|
778
|
-
),
|
|
779
|
-
|
|
780
|
-
o.
|
|
781
|
-
|
|
782
|
+
), B(async () => {
|
|
783
|
+
e.vsPath && x.config({ paths: { vs: e.vsPath } });
|
|
784
|
+
const o = await x.init(), i = e.schema?.language ?? e.language ?? "plaintext", a = o.typescript;
|
|
785
|
+
e.extraLibs && a.javascriptDefaults.addExtraLib(e.extraLibs, "ts:stonecrop.d.ts"), (e.extraLibs || e.libs) && a.javascriptDefaults.setCompilerOptions({
|
|
786
|
+
checkJs: !0,
|
|
787
|
+
noImplicitAny: !1,
|
|
788
|
+
// `lib` is authoritative — it replaces Monaco's default set, so passing e.g.
|
|
789
|
+
// ['es2020'] retains the JS built-ins (Promise/Array/JSON/…) while removing the
|
|
790
|
+
// DOM/browser globals. `target` is matched so ES2020 syntax isn't flagged.
|
|
791
|
+
...e.libs && {
|
|
792
|
+
target: a.ScriptTarget.ES2020,
|
|
793
|
+
lib: e.libs
|
|
794
|
+
}
|
|
795
|
+
}), o.editor.defineTheme("agritheory", $e), o.editor.setTheme("agritheory");
|
|
796
|
+
const u = i === "typescript" ? "ts" : i === "json" ? "json" : i === "python" ? "py" : "js", c = o.Uri.parse(`file:///stonecrop-editor-${++De}.${u}`), f = o.editor.createModel(Me(t.value), i, c), d = o.editor.create(n.value, {
|
|
782
797
|
automaticLayout: !0,
|
|
783
798
|
colorDecorators: !0,
|
|
784
799
|
lineHeight: 24,
|
|
785
800
|
scrollBeyondLastLine: !1,
|
|
786
801
|
...e.options,
|
|
787
|
-
|
|
788
|
-
language: i,
|
|
802
|
+
model: f,
|
|
789
803
|
readOnly: e.mode !== "edit"
|
|
790
804
|
});
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
}),
|
|
794
|
-
const
|
|
795
|
-
|
|
796
|
-
}),
|
|
797
|
-
|
|
798
|
-
}), (o, i) => (
|
|
805
|
+
d.onDidChangeModelContent(() => {
|
|
806
|
+
t.value = d.getValue();
|
|
807
|
+
}), r.value = d;
|
|
808
|
+
const k = t.value ?? "";
|
|
809
|
+
k !== d.getValue() && d.setValue(k);
|
|
810
|
+
}), R(() => {
|
|
811
|
+
r.value?.getModel()?.dispose(), r.value?.dispose(), r.value = null;
|
|
812
|
+
}), (o, i) => (V(), z("div", {
|
|
799
813
|
ref: "aCodeEditor",
|
|
800
814
|
class: "a-code-editor",
|
|
801
|
-
style:
|
|
815
|
+
style: H({ height: e.height })
|
|
802
816
|
}, null, 4));
|
|
803
817
|
}
|
|
804
|
-
}),
|
|
805
|
-
const
|
|
806
|
-
for (const [
|
|
807
|
-
r
|
|
808
|
-
return
|
|
809
|
-
}, Be = /* @__PURE__ */
|
|
810
|
-
function
|
|
818
|
+
}), qe = (e, t) => {
|
|
819
|
+
const n = e.__vccOpts || e;
|
|
820
|
+
for (const [r, o] of t)
|
|
821
|
+
n[r] = o;
|
|
822
|
+
return n;
|
|
823
|
+
}, Be = /* @__PURE__ */ qe(Le, [["__scopeId", "data-v-8f53629e"]]);
|
|
824
|
+
function Ve(e) {
|
|
811
825
|
e.component("ACodeEditor", Be);
|
|
812
826
|
}
|
|
813
827
|
export {
|
|
814
828
|
Be as ACodeEditor,
|
|
815
|
-
|
|
829
|
+
Ve as install
|
|
816
830
|
};
|
|
817
831
|
//# sourceMappingURL=code-editor.js.map
|
package/dist/code-editor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-editor.js","sources":["../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.js","../../common/temp/node_modules/.pnpm/state-local@1.0.7/node_modules/state-local/lib/es/state-local.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/config/index.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/utils/curry.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/utils/isObject.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/validators/index.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/utils/compose.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/utils/deepMerge.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/utils/makeCancelable.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/loader/index.js","../src/theme/code_editor/agritheory.ts","../src/utils/language.ts","../src/utils/serialization.ts","../src/components/ACodeEditor.vue","../src/index.ts"],"sourcesContent":["function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nfunction _arrayWithHoles(r) {\n if (Array.isArray(r)) return r;\n}\nfunction _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: true,\n configurable: true,\n writable: true\n }) : e[r] = t, e;\n}\nfunction _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = true,\n o = false;\n try {\n if (i = (t = t.call(r)).next, 0 === l) ; else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = true, n = r;\n } finally {\n try {\n if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), true).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = _objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var n = Object.getOwnPropertySymbols(e);\n for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (-1 !== e.indexOf(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nfunction _slicedToArray(r, e) {\n return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();\n}\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r);\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return _arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;\n }\n}\n\nexport { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _defineProperty as defineProperty, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _slicedToArray as slicedToArray, _toPrimitive as toPrimitive, _toPropertyKey as toPropertyKey, _unsupportedIterableToArray as unsupportedIterableToArray };\n","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n}\n\nfunction curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len3 = arguments.length, nextArgs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n nextArgs[_key3] = arguments[_key3];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nfunction isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nfunction isEmpty(obj) {\n return !Object.keys(obj).length;\n}\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction validateChanges(initial, changes) {\n if (!isObject(changes)) errorHandler('changeType');\n if (Object.keys(changes).some(function (field) {\n return !hasOwnProperty(initial, field);\n })) errorHandler('changeField');\n return changes;\n}\n\nfunction validateSelector(selector) {\n if (!isFunction(selector)) errorHandler('selectorType');\n}\n\nfunction validateHandler(handler) {\n if (!(isFunction(handler) || isObject(handler))) errorHandler('handlerType');\n if (isObject(handler) && Object.values(handler).some(function (_handler) {\n return !isFunction(_handler);\n })) errorHandler('handlersType');\n}\n\nfunction validateInitial(initial) {\n if (!initial) errorHandler('initialIsRequired');\n if (!isObject(initial)) errorHandler('initialType');\n if (isEmpty(initial)) errorHandler('initialContent');\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n initialIsRequired: 'initial state is required',\n initialType: 'initial state should be an object',\n initialContent: 'initial state shouldn\\'t be an empty object',\n handlerType: 'handler should be an object or a function',\n handlersType: 'all handlers should be a functions',\n selectorType: 'selector should be a function',\n changeType: 'provided value of changes should be an object',\n changeField: 'it seams you want to change a field in the state which is not specified in the \"initial\" state',\n \"default\": 'an unknown error accured in `state-local` package'\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n changes: validateChanges,\n selector: validateSelector,\n handler: validateHandler,\n initial: validateInitial\n};\n\nfunction create(initial) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n validators.initial(initial);\n validators.handler(handler);\n var state = {\n current: initial\n };\n var didUpdate = curry(didStateUpdate)(state, handler);\n var update = curry(updateState)(state);\n var validate = curry(validators.changes)(initial);\n var getChanges = curry(extractChanges)(state);\n\n function getState() {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (state) {\n return state;\n };\n validators.selector(selector);\n return selector(state.current);\n }\n\n function setState(causedChanges) {\n compose(didUpdate, update, validate, getChanges)(causedChanges);\n }\n\n return [getState, setState];\n}\n\nfunction extractChanges(state, causedChanges) {\n return isFunction(causedChanges) ? causedChanges(state.current) : causedChanges;\n}\n\nfunction updateState(state, changes) {\n state.current = _objectSpread2(_objectSpread2({}, state.current), changes);\n return changes;\n}\n\nfunction didStateUpdate(state, handler, changes) {\n isFunction(handler) ? handler(state.current) : Object.keys(changes).forEach(function (field) {\n var _handler$field;\n\n return (_handler$field = handler[field]) === null || _handler$field === void 0 ? void 0 : _handler$field.call(handler, state.current[field]);\n });\n return changes;\n}\n\nvar index = {\n create: create\n};\n\nexport default index;\n","var config = {\n paths: {\n vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.55.1/min/vs'\n }\n};\n\nexport { config as default };\n","function curry(fn) {\n return function curried() {\n var _this = this;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len2 = arguments.length, nextArgs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n nextArgs[_key2] = arguments[_key2];\n }\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nexport { curry as default };\n","function isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nexport { isObject as default };\n","import curry from '../utils/curry.js';\nimport isObject from '../utils/isObject.js';\n\n/**\n * validates the configuration object and informs about deprecation\n * @param {Object} config - the configuration object \n * @return {Object} config - the validated configuration object\n */\nfunction validateConfig(config) {\n if (!config) errorHandler('configIsRequired');\n if (!isObject(config)) errorHandler('configType');\n if (config.urls) {\n informAboutDeprecation();\n return {\n paths: {\n vs: config.urls.monacoBase\n }\n };\n }\n return config;\n}\n\n/**\n * logs deprecation message\n */\nfunction informAboutDeprecation() {\n console.warn(errorMessages.deprecation);\n}\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\nvar errorMessages = {\n configIsRequired: 'the configuration object is required',\n configType: 'the configuration object should be an object',\n \"default\": 'an unknown error accured in `@monaco-editor/loader` package',\n deprecation: \"Deprecation warning!\\n You are using deprecated way of configuration.\\n\\n Instead of using\\n monaco.config({ urls: { monacoBase: '...' } })\\n use\\n monaco.config({ paths: { vs: '...' } })\\n\\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\\n \"\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n config: validateConfig\n};\n\nexport { validators as default, errorHandler, errorMessages };\n","var compose = function compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n};\n\nexport { compose as default };\n","import { objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';\n\nfunction merge(target, source) {\n Object.keys(source).forEach(function (key) {\n if (source[key] instanceof Object) {\n if (target[key]) {\n Object.assign(source[key], merge(target[key], source[key]));\n }\n }\n });\n return _objectSpread2(_objectSpread2({}, target), source);\n}\n\nexport { merge as default };\n","// The source (has been changed) is https://github.com/facebook/react/issues/5465#issuecomment-157888325\n\nvar CANCELATION_MESSAGE = {\n type: 'cancelation',\n msg: 'operation is manually canceled'\n};\nfunction makeCancelable(promise) {\n var hasCanceled_ = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise.then(function (val) {\n return hasCanceled_ ? reject(CANCELATION_MESSAGE) : resolve(val);\n });\n promise[\"catch\"](reject);\n });\n return wrappedPromise.cancel = function () {\n return hasCanceled_ = true;\n }, wrappedPromise;\n}\n\nexport { CANCELATION_MESSAGE, makeCancelable as default };\n","import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties } from '../_virtual/_rollupPluginBabelHelpers.js';\nimport state from 'state-local';\nimport config$1 from '../config/index.js';\nimport validators from '../validators/index.js';\nimport compose from '../utils/compose.js';\nimport merge from '../utils/deepMerge.js';\nimport makeCancelable from '../utils/makeCancelable.js';\n\nvar _excluded = [\"monaco\"];\n\n/** the local state of the module */\nvar _state$create = state.create({\n config: config$1,\n isInitialized: false,\n resolve: null,\n reject: null,\n monaco: null\n }),\n _state$create2 = _slicedToArray(_state$create, 2),\n getState = _state$create2[0],\n setState = _state$create2[1];\n\n/**\n * set the loader configuration\n * @param {Object} config - the configuration object\n */\nfunction config(globalConfig) {\n var _validators$config = validators.config(globalConfig),\n monaco = _validators$config.monaco,\n config = _objectWithoutProperties(_validators$config, _excluded);\n setState(function (state) {\n return {\n config: merge(state.config, config),\n monaco: monaco\n };\n });\n}\n\n/**\n * handles the initialization of the monaco-editor\n * @return {Promise} - returns an instance of monaco (with a cancelable promise)\n */\nfunction init() {\n var state = getState(function (_ref) {\n var monaco = _ref.monaco,\n isInitialized = _ref.isInitialized,\n resolve = _ref.resolve;\n return {\n monaco: monaco,\n isInitialized: isInitialized,\n resolve: resolve\n };\n });\n if (!state.isInitialized) {\n setState({\n isInitialized: true\n });\n if (state.monaco) {\n state.resolve(state.monaco);\n return makeCancelable(wrapperPromise);\n }\n if (window.monaco && window.monaco.editor) {\n storeMonacoInstance(window.monaco);\n state.resolve(window.monaco);\n return makeCancelable(wrapperPromise);\n }\n compose(injectScripts, getMonacoLoaderScript)(configureLoader);\n }\n return makeCancelable(wrapperPromise);\n}\n\n/**\n * injects provided scripts into the document.body\n * @param {Object} script - an HTML script element\n * @return {Object} - the injected HTML script element\n */\nfunction injectScripts(script) {\n return document.body.appendChild(script);\n}\n\n/**\n * creates an HTML script element with/without provided src\n * @param {string} [src] - the source path of the script\n * @return {Object} - the created HTML script element\n */\nfunction createScript(src) {\n var script = document.createElement('script');\n return src && (script.src = src), script;\n}\n\n/**\n * creates an HTML script element with the monaco loader src\n * @return {Object} - the created HTML script element\n */\nfunction getMonacoLoaderScript(configureLoader) {\n var state = getState(function (_ref2) {\n var config = _ref2.config,\n reject = _ref2.reject;\n return {\n config: config,\n reject: reject\n };\n });\n var loaderScript = createScript(\"\".concat(state.config.paths.vs, \"/loader.js\"));\n loaderScript.onload = function () {\n return configureLoader();\n };\n loaderScript.onerror = state.reject;\n return loaderScript;\n}\n\n/**\n * configures the monaco loader\n */\nfunction configureLoader() {\n var state = getState(function (_ref3) {\n var config = _ref3.config,\n resolve = _ref3.resolve,\n reject = _ref3.reject;\n return {\n config: config,\n resolve: resolve,\n reject: reject\n };\n });\n var require = window.require;\n require.config(state.config);\n require(['vs/editor/editor.main'], function (loaded) {\n var monaco = loaded.m /* for 0.53 & 0.54 */ || loaded /* for other versions */;\n storeMonacoInstance(monaco);\n state.resolve(monaco);\n }, function (error) {\n state.reject(error);\n });\n}\n\n/**\n * store monaco instance in local state\n */\nfunction storeMonacoInstance(monaco) {\n if (!getState().monaco) {\n setState({\n monaco: monaco\n });\n }\n}\n\n/**\n * internal helper function\n * extracts stored monaco instance\n * @return {Object|null} - the monaco instance\n */\nfunction __getMonacoInstance() {\n return getState(function (_ref4) {\n var monaco = _ref4.monaco;\n return monaco;\n });\n}\nvar wrapperPromise = new Promise(function (resolve, reject) {\n return setState({\n resolve: resolve,\n reject: reject\n });\n});\nvar loader = {\n config: config,\n init: init,\n __getMonacoInstance: __getMonacoInstance\n};\n\nexport { loader as default };\n","import { editor } from 'monaco-editor'\n\n// picked from https://bitwiser.in/monaco-themes/\n// currently set to: Github Light\nexport const theme: editor.IStandaloneThemeData = {\n\tbase: 'vs',\n\tinherit: true,\n\tcolors: {\n\t\t'editor.foreground': '#24292e',\n\t\t'editor.background': '#ffffff',\n\t\t'editor.selectionBackground': '#c8c8fa',\n\t\t'editor.inactiveSelectionBackground': '#fafbfc',\n\t\t'editor.lineHighlightBackground': '#fafbfc',\n\t\t'editorCursor.foreground': '#24292e',\n\t\t'editorWhitespace.foreground': '#959da5',\n\t\t'editorIndentGuide.background': '#959da5',\n\t\t'editorIndentGuide.activeBackground': '#24292e',\n\t\t'editor.selectionHighlightBorder': '#fafbfc',\n\t},\n\trules: [\n\t\t{\n\t\t\tbackground: 'ffffff',\n\t\t\ttoken: '',\n\t\t},\n\t\t{\n\t\t\tforeground: '6a737d',\n\t\t\ttoken: 'comment',\n\t\t},\n\t\t{\n\t\t\tforeground: '6a737d',\n\t\t\ttoken: 'punctuation.definition.comment',\n\t\t},\n\t\t{\n\t\t\tforeground: '6a737d',\n\t\t\ttoken: 'string.comment',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'constant',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'entity.name.constant',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'variable.other.constant',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'variable.language',\n\t\t},\n\t\t{\n\t\t\tforeground: '6f42c1',\n\t\t\ttoken: 'entity',\n\t\t},\n\t\t{\n\t\t\tforeground: '6f42c1',\n\t\t\ttoken: 'entity.name',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'variable.parameter.function',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\ttoken: 'entity.name.tag',\n\t\t},\n\t\t{\n\t\t\tforeground: 'd73a49',\n\t\t\ttoken: 'keyword',\n\t\t},\n\t\t{\n\t\t\tforeground: 'd73a49',\n\t\t\ttoken: 'storage',\n\t\t},\n\t\t{\n\t\t\tforeground: 'd73a49',\n\t\t\ttoken: 'storage.type',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'storage.modifier.package',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'storage.modifier.import',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'storage.type.java',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'punctuation.definition.string',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string punctuation.section.embedded source',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'support',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'meta.property-name',\n\t\t},\n\t\t{\n\t\t\tforeground: 'e36209',\n\t\t\ttoken: 'variable',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'variable.other',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tfontStyle: 'bold italic underline',\n\t\t\ttoken: 'invalid.broken',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tfontStyle: 'bold italic underline',\n\t\t\ttoken: 'invalid.deprecated',\n\t\t},\n\t\t{\n\t\t\tforeground: 'fafbfc',\n\t\t\tbackground: 'b31d28',\n\t\t\tfontStyle: 'italic underline',\n\t\t\ttoken: 'invalid.illegal',\n\t\t},\n\t\t{\n\t\t\tforeground: 'fafbfc',\n\t\t\tbackground: 'd73a49',\n\t\t\tfontStyle: 'italic underline',\n\t\t\ttoken: 'carriage-return',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tfontStyle: 'bold italic underline',\n\t\t\ttoken: 'invalid.unimplemented',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\ttoken: 'message.error',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'string source',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'string variable',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'source.regexp',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string.regexp',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string.regexp.character-class',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string.regexp constant.character.escape',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string.regexp source.ruby.embedded',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string.regexp string.regexp.arbitrary-repitition',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'string.regexp constant.character.escape',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'support.constant',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'support.variable',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'meta.module-reference',\n\t\t},\n\t\t{\n\t\t\tforeground: '735c0f',\n\t\t\ttoken: 'markup.list',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'markup.heading',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'markup.heading entity.name',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\ttoken: 'markup.quote',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\tfontStyle: 'italic',\n\t\t\ttoken: 'markup.italic',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'markup.bold',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'markup.raw',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tbackground: 'ffeef0',\n\t\t\ttoken: 'markup.deleted',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tbackground: 'ffeef0',\n\t\t\ttoken: 'meta.diff.header.from-file',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tbackground: 'ffeef0',\n\t\t\ttoken: 'punctuation.definition.deleted',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\tbackground: 'f0fff4',\n\t\t\ttoken: 'markup.inserted',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\tbackground: 'f0fff4',\n\t\t\ttoken: 'meta.diff.header.to-file',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\tbackground: 'f0fff4',\n\t\t\ttoken: 'punctuation.definition.inserted',\n\t\t},\n\t\t{\n\t\t\tforeground: 'e36209',\n\t\t\tbackground: 'ffebda',\n\t\t\ttoken: 'markup.changed',\n\t\t},\n\t\t{\n\t\t\tforeground: 'e36209',\n\t\t\tbackground: 'ffebda',\n\t\t\ttoken: 'punctuation.definition.changed',\n\t\t},\n\t\t{\n\t\t\tforeground: 'f6f8fa',\n\t\t\tbackground: '005cc5',\n\t\t\ttoken: 'markup.ignored',\n\t\t},\n\t\t{\n\t\t\tforeground: 'f6f8fa',\n\t\t\tbackground: '005cc5',\n\t\t\ttoken: 'markup.untracked',\n\t\t},\n\t\t{\n\t\t\tforeground: '6f42c1',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'meta.diff.range',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'meta.diff.header',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'meta.separator',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'meta.output',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.tag',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.curly',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.round',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.square',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.angle',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.quote',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\ttoken: 'brackethighlighter.unmatched',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\ttoken: 'sublimelinter.mark.error',\n\t\t},\n\t\t{\n\t\t\tforeground: 'e36209',\n\t\t\ttoken: 'sublimelinter.mark.warning',\n\t\t},\n\t\t{\n\t\t\tforeground: '959da5',\n\t\t\ttoken: 'sublimelinter.gutter-mark',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\tfontStyle: 'underline',\n\t\t\ttoken: 'constant.other.reference.link',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\tfontStyle: 'underline',\n\t\t\ttoken: 'string.other.link',\n\t\t},\n\t],\n}\n","/**\n * Resolves the Monaco language identifier from a Stonecrop fieldtype and an\n * optional explicit language override.\n *\n * - JSON fieldtype always maps to 'json' regardless of the explicit language.\n * - Code fieldtype defaults to 'typescript'; the explicit language overrides it.\n * - All other fieldtypes use the explicit language, falling back to 'plaintext'.\n * @public\n */\nexport function detectLanguage(fieldtype?: string, explicitLanguage?: string): string {\n\tif (fieldtype === 'JSON') return 'json'\n\tif (fieldtype === 'Code') return explicitLanguage ?? 'typescript'\n\treturn explicitLanguage ?? 'plaintext'\n}\n","/**\n * Coerces an unknown value to a string suitable for Monaco's initial content.\n * Objects are JSON-stringified with 2-space indentation.\n * Null and undefined become empty string.\n * Strings pass through unchanged.\n * @public\n */\nexport function toEditorString(value: unknown, _fieldtype?: string): string {\n\tif (value === null || value === undefined) return ''\n\tif (typeof value === 'string') return value\n\treturn JSON.stringify(value, null, 2)\n}\n","<template>\n\t<div ref=\"aCodeEditor\" class=\"a-code-editor\" :style=\"{ height }\" />\n</template>\n\n<script setup lang=\"ts\">\nimport loader from '@monaco-editor/loader'\nimport type * as Monaco from 'monaco-editor'\nimport type { editor } from 'monaco-editor'\nimport { onMounted, onUnmounted, shallowRef, watch } from 'vue'\nimport { useTemplateRef } from 'vue'\n\nimport { theme } from '../theme/code_editor/agritheory'\nimport { detectLanguage } from '../utils/language'\nimport { toEditorString } from '../utils/serialization'\n\ntype EditorSchema = { fieldtype?: string; [key: string]: unknown }\n\nconst modelValue = defineModel<string>()\nconst {\n\theight = '300px',\n\tmode = 'edit',\n\tschema = undefined,\n\tlanguage = undefined,\n\toptions = undefined,\n} = defineProps<{\n\theight?: string\n\tmode?: 'edit' | 'read' | 'display'\n\tschema?: EditorSchema\n\tlanguage?: string\n\toptions?: editor.IStandaloneEditorConstructionOptions\n}>()\n\nconst editorRef = useTemplateRef<HTMLDivElement>('aCodeEditor')\nconst editorInstance = shallowRef<editor.IStandaloneCodeEditor | null>(null)\n\nwatch(modelValue, val => {\n\tconst inst = editorInstance.value\n\tif (inst && val !== inst.getValue()) inst.setValue(val ?? '')\n})\n\nwatch(\n\t() => mode,\n\tm => {\n\t\teditorInstance.value?.updateOptions({ readOnly: m !== 'edit' })\n\t}\n)\n\nonMounted(async () => {\n\tconst monacoInstance: typeof Monaco = await loader.init()\n\tconst lang = detectLanguage(schema?.fieldtype, language)\n\n\tmonacoInstance.editor.defineTheme('agritheory', theme)\n\tmonacoInstance.editor.setTheme('agritheory')\n\n\tconst inst = monacoInstance.editor.create(editorRef.value!, {\n\t\tautomaticLayout: true,\n\t\tcolorDecorators: true,\n\t\tlineHeight: 24,\n\t\tscrollBeyondLastLine: false,\n\t\t...options,\n\t\tvalue: toEditorString(modelValue.value, schema?.fieldtype),\n\t\tlanguage: lang,\n\t\treadOnly: mode !== 'edit',\n\t})\n\n\tinst.onDidChangeModelContent(() => {\n\t\tmodelValue.value = inst.getValue()\n\t})\n\n\teditorInstance.value = inst\n\n\t// Sync any modelValue change that arrived during the async CDN load\n\tconst current = modelValue.value ?? ''\n\tif (current !== inst.getValue()) inst.setValue(current)\n})\n\nonUnmounted(() => {\n\teditorInstance.value?.dispose()\n\teditorInstance.value = null\n})\n</script>\n\n<style scoped>\n.a-code-editor {\n\twidth: 100%;\n\toverflow: hidden;\n}\n</style>\n","import { App } from 'vue'\n\nimport ACodeEditor from './components/ACodeEditor.vue'\n\n/**\n * Install all Code Editor components\n * @param app - Vue app instance\n * @public\n */\nfunction install(app: App /* options */) {\n\tapp.component('ACodeEditor', ACodeEditor)\n}\n\nexport { install, ACodeEditor }\n"],"names":["_arrayLikeToArray","r","a","e","n","_arrayWithHoles","_defineProperty","t","_toPropertyKey","_iterableToArrayLimit","l","u","f","o","_nonIterableRest","ownKeys","_objectSpread2","_objectWithoutProperties","i","_objectWithoutPropertiesLoose","_slicedToArray","_unsupportedIterableToArray","_toPrimitive","obj","key","value","object","enumerableOnly","keys","symbols","sym","target","source","compose","_len","fns","_key","x","y","curry","fn","curried","_this","_len2","args","_key2","_len3","nextArgs","_key3","isObject","isEmpty","isFunction","hasOwnProperty","property","validateChanges","initial","changes","errorHandler","field","validateSelector","selector","validateHandler","handler","_handler","validateInitial","throwError","errorMessages","type","validators","create","state","didUpdate","didStateUpdate","update","updateState","validate","getChanges","extractChanges","getState","setState","causedChanges","_handler$field","index","config","validateConfig","informAboutDeprecation","merge","CANCELATION_MESSAGE","makeCancelable","promise","hasCanceled_","wrappedPromise","resolve","reject","val","_excluded","_state$create","config$1","_state$create2","globalConfig","_validators$config","monaco","init","_ref","isInitialized","wrapperPromise","storeMonacoInstance","injectScripts","getMonacoLoaderScript","configureLoader","script","createScript","src","_ref2","loaderScript","_ref3","require","loaded","error","__getMonacoInstance","_ref4","loader","theme","detectLanguage","fieldtype","explicitLanguage","toEditorString","_fieldtype","modelValue","_useModel","__props","editorRef","useTemplateRef","editorInstance","shallowRef","watch","inst","m","onMounted","monacoInstance","lang","current","onUnmounted","_createElementBlock","install","app","ACodeEditor"],"mappings":"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AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,EACR;AAEF;ACtVO,SAASC,GAAeC,GAAoBC,GAAmC;AACrF,SAAID,MAAc,SAAe,SAC7BA,MAAc,SAAeC,KAAoB,eAC9CA,KAAoB;AAC5B;ACNO,SAASC,GAAerG,GAAgBsG,GAA6B;AAC3E,SAAItG,KAAU,OAAoC,KAC9C,OAAOA,KAAU,WAAiBA,IAC/B,KAAK,UAAUA,GAAO,MAAM,CAAC;AACrC;;;;;;;;;;;;;;;;;;ACMA,UAAMuG,IAAaC,EAAmBC,GAAA,YAAC,GAejCC,IAAYC,EAA+B,aAAa,GACxDC,IAAiBC,EAAgD,IAAI;AAE3E,WAAAC,EAAMP,GAAY,CAAAlC,MAAO;AACxB,YAAM0C,IAAOH,EAAe;AAC5B,MAAIG,KAAQ1C,MAAQ0C,EAAK,SAAA,KAAYA,EAAK,SAAS1C,KAAO,EAAE;AAAA,IAC7D,CAAC,GAEDyC;AAAA,MACC,MAAML,EAAA;AAAA,MACN,CAAAO,MAAK;AACJ,QAAAJ,EAAe,OAAO,cAAc,EAAE,UAAUI,MAAM,QAAQ;AAAA,MAC/D;AAAA,IAAA,GAGDC,EAAU,YAAY;AACrB,YAAMC,IAAgC,MAAMlB,GAAO,KAAA,GAC7CmB,IAAOjB,GAAeO,EAAA,QAAQ,WAAWA,EAAA,QAAQ;AAEvD,MAAAS,EAAe,OAAO,YAAY,cAAcjB,EAAK,GACrDiB,EAAe,OAAO,SAAS,YAAY;AAE3C,YAAMH,IAAOG,EAAe,OAAO,OAAOR,EAAU,OAAQ;AAAA,QAC3D,iBAAiB;AAAA,QACjB,iBAAiB;AAAA,QACjB,YAAY;AAAA,QACZ,sBAAsB;AAAA,QACtB,GAAGD,EAAA;AAAA,QACH,OAAOJ,GAAeE,EAAW,OAAOE,EAAA,QAAQ,SAAS;AAAA,QACzD,UAAUU;AAAA,QACV,UAAUV,WAAS;AAAA,MAAA,CACnB;AAED,MAAAM,EAAK,wBAAwB,MAAM;AAClC,QAAAR,EAAW,QAAQQ,EAAK,SAAA;AAAA,MACzB,CAAC,GAEDH,EAAe,QAAQG;AAGvB,YAAMK,IAAUb,EAAW,SAAS;AACpC,MAAIa,MAAYL,EAAK,SAAA,KAAYA,EAAK,SAASK,CAAO;AAAA,IACvD,CAAC,GAEDC,EAAY,MAAM;AACjB,MAAAT,EAAe,OAAO,QAAA,GACtBA,EAAe,QAAQ;AAAA,IACxB,CAAC,mBA9EAU,EAAmE,OAAA;AAAA,MAA9D,KAAI;AAAA,MAAc,OAAM;AAAA,MAAiB,mBAASb,EAAA,QAAM;AAAA,IAAA;;;;;;;;ACQ9D,SAASc,GAAQC,GAAwB;AACxC,EAAAA,EAAI,UAAU,eAAeC,EAAW;AACzC;","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9]}
|
|
1
|
+
{"version":3,"file":"code-editor.js","sources":["../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.js","../../common/temp/node_modules/.pnpm/state-local@1.0.7/node_modules/state-local/lib/es/state-local.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/config/index.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/utils/curry.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/utils/isObject.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/validators/index.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/utils/compose.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/utils/deepMerge.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/utils/makeCancelable.js","../../common/temp/node_modules/.pnpm/@monaco-editor+loader@1.7.0/node_modules/@monaco-editor/loader/lib/es/loader/index.js","../src/theme/code_editor/agritheory.ts","../src/utils/serialization.ts","../src/components/ACodeEditor.vue","../src/index.ts"],"sourcesContent":["function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nfunction _arrayWithHoles(r) {\n if (Array.isArray(r)) return r;\n}\nfunction _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: true,\n configurable: true,\n writable: true\n }) : e[r] = t, e;\n}\nfunction _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = true,\n o = false;\n try {\n if (i = (t = t.call(r)).next, 0 === l) ; else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = true, n = r;\n } finally {\n try {\n if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), true).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = _objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var n = Object.getOwnPropertySymbols(e);\n for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (-1 !== e.indexOf(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nfunction _slicedToArray(r, e) {\n return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();\n}\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r);\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return _arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;\n }\n}\n\nexport { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _defineProperty as defineProperty, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _slicedToArray as slicedToArray, _toPrimitive as toPrimitive, _toPropertyKey as toPropertyKey, _unsupportedIterableToArray as unsupportedIterableToArray };\n","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n}\n\nfunction curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len3 = arguments.length, nextArgs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n nextArgs[_key3] = arguments[_key3];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nfunction isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nfunction isEmpty(obj) {\n return !Object.keys(obj).length;\n}\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction validateChanges(initial, changes) {\n if (!isObject(changes)) errorHandler('changeType');\n if (Object.keys(changes).some(function (field) {\n return !hasOwnProperty(initial, field);\n })) errorHandler('changeField');\n return changes;\n}\n\nfunction validateSelector(selector) {\n if (!isFunction(selector)) errorHandler('selectorType');\n}\n\nfunction validateHandler(handler) {\n if (!(isFunction(handler) || isObject(handler))) errorHandler('handlerType');\n if (isObject(handler) && Object.values(handler).some(function (_handler) {\n return !isFunction(_handler);\n })) errorHandler('handlersType');\n}\n\nfunction validateInitial(initial) {\n if (!initial) errorHandler('initialIsRequired');\n if (!isObject(initial)) errorHandler('initialType');\n if (isEmpty(initial)) errorHandler('initialContent');\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n initialIsRequired: 'initial state is required',\n initialType: 'initial state should be an object',\n initialContent: 'initial state shouldn\\'t be an empty object',\n handlerType: 'handler should be an object or a function',\n handlersType: 'all handlers should be a functions',\n selectorType: 'selector should be a function',\n changeType: 'provided value of changes should be an object',\n changeField: 'it seams you want to change a field in the state which is not specified in the \"initial\" state',\n \"default\": 'an unknown error accured in `state-local` package'\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n changes: validateChanges,\n selector: validateSelector,\n handler: validateHandler,\n initial: validateInitial\n};\n\nfunction create(initial) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n validators.initial(initial);\n validators.handler(handler);\n var state = {\n current: initial\n };\n var didUpdate = curry(didStateUpdate)(state, handler);\n var update = curry(updateState)(state);\n var validate = curry(validators.changes)(initial);\n var getChanges = curry(extractChanges)(state);\n\n function getState() {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (state) {\n return state;\n };\n validators.selector(selector);\n return selector(state.current);\n }\n\n function setState(causedChanges) {\n compose(didUpdate, update, validate, getChanges)(causedChanges);\n }\n\n return [getState, setState];\n}\n\nfunction extractChanges(state, causedChanges) {\n return isFunction(causedChanges) ? causedChanges(state.current) : causedChanges;\n}\n\nfunction updateState(state, changes) {\n state.current = _objectSpread2(_objectSpread2({}, state.current), changes);\n return changes;\n}\n\nfunction didStateUpdate(state, handler, changes) {\n isFunction(handler) ? handler(state.current) : Object.keys(changes).forEach(function (field) {\n var _handler$field;\n\n return (_handler$field = handler[field]) === null || _handler$field === void 0 ? void 0 : _handler$field.call(handler, state.current[field]);\n });\n return changes;\n}\n\nvar index = {\n create: create\n};\n\nexport default index;\n","var config = {\n paths: {\n vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.55.1/min/vs'\n }\n};\n\nexport { config as default };\n","function curry(fn) {\n return function curried() {\n var _this = this;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len2 = arguments.length, nextArgs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n nextArgs[_key2] = arguments[_key2];\n }\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nexport { curry as default };\n","function isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nexport { isObject as default };\n","import curry from '../utils/curry.js';\nimport isObject from '../utils/isObject.js';\n\n/**\n * validates the configuration object and informs about deprecation\n * @param {Object} config - the configuration object \n * @return {Object} config - the validated configuration object\n */\nfunction validateConfig(config) {\n if (!config) errorHandler('configIsRequired');\n if (!isObject(config)) errorHandler('configType');\n if (config.urls) {\n informAboutDeprecation();\n return {\n paths: {\n vs: config.urls.monacoBase\n }\n };\n }\n return config;\n}\n\n/**\n * logs deprecation message\n */\nfunction informAboutDeprecation() {\n console.warn(errorMessages.deprecation);\n}\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\nvar errorMessages = {\n configIsRequired: 'the configuration object is required',\n configType: 'the configuration object should be an object',\n \"default\": 'an unknown error accured in `@monaco-editor/loader` package',\n deprecation: \"Deprecation warning!\\n You are using deprecated way of configuration.\\n\\n Instead of using\\n monaco.config({ urls: { monacoBase: '...' } })\\n use\\n monaco.config({ paths: { vs: '...' } })\\n\\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\\n \"\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n config: validateConfig\n};\n\nexport { validators as default, errorHandler, errorMessages };\n","var compose = function compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n};\n\nexport { compose as default };\n","import { objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';\n\nfunction merge(target, source) {\n Object.keys(source).forEach(function (key) {\n if (source[key] instanceof Object) {\n if (target[key]) {\n Object.assign(source[key], merge(target[key], source[key]));\n }\n }\n });\n return _objectSpread2(_objectSpread2({}, target), source);\n}\n\nexport { merge as default };\n","// The source (has been changed) is https://github.com/facebook/react/issues/5465#issuecomment-157888325\n\nvar CANCELATION_MESSAGE = {\n type: 'cancelation',\n msg: 'operation is manually canceled'\n};\nfunction makeCancelable(promise) {\n var hasCanceled_ = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise.then(function (val) {\n return hasCanceled_ ? reject(CANCELATION_MESSAGE) : resolve(val);\n });\n promise[\"catch\"](reject);\n });\n return wrappedPromise.cancel = function () {\n return hasCanceled_ = true;\n }, wrappedPromise;\n}\n\nexport { CANCELATION_MESSAGE, makeCancelable as default };\n","import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties } from '../_virtual/_rollupPluginBabelHelpers.js';\nimport state from 'state-local';\nimport config$1 from '../config/index.js';\nimport validators from '../validators/index.js';\nimport compose from '../utils/compose.js';\nimport merge from '../utils/deepMerge.js';\nimport makeCancelable from '../utils/makeCancelable.js';\n\nvar _excluded = [\"monaco\"];\n\n/** the local state of the module */\nvar _state$create = state.create({\n config: config$1,\n isInitialized: false,\n resolve: null,\n reject: null,\n monaco: null\n }),\n _state$create2 = _slicedToArray(_state$create, 2),\n getState = _state$create2[0],\n setState = _state$create2[1];\n\n/**\n * set the loader configuration\n * @param {Object} config - the configuration object\n */\nfunction config(globalConfig) {\n var _validators$config = validators.config(globalConfig),\n monaco = _validators$config.monaco,\n config = _objectWithoutProperties(_validators$config, _excluded);\n setState(function (state) {\n return {\n config: merge(state.config, config),\n monaco: monaco\n };\n });\n}\n\n/**\n * handles the initialization of the monaco-editor\n * @return {Promise} - returns an instance of monaco (with a cancelable promise)\n */\nfunction init() {\n var state = getState(function (_ref) {\n var monaco = _ref.monaco,\n isInitialized = _ref.isInitialized,\n resolve = _ref.resolve;\n return {\n monaco: monaco,\n isInitialized: isInitialized,\n resolve: resolve\n };\n });\n if (!state.isInitialized) {\n setState({\n isInitialized: true\n });\n if (state.monaco) {\n state.resolve(state.monaco);\n return makeCancelable(wrapperPromise);\n }\n if (window.monaco && window.monaco.editor) {\n storeMonacoInstance(window.monaco);\n state.resolve(window.monaco);\n return makeCancelable(wrapperPromise);\n }\n compose(injectScripts, getMonacoLoaderScript)(configureLoader);\n }\n return makeCancelable(wrapperPromise);\n}\n\n/**\n * injects provided scripts into the document.body\n * @param {Object} script - an HTML script element\n * @return {Object} - the injected HTML script element\n */\nfunction injectScripts(script) {\n return document.body.appendChild(script);\n}\n\n/**\n * creates an HTML script element with/without provided src\n * @param {string} [src] - the source path of the script\n * @return {Object} - the created HTML script element\n */\nfunction createScript(src) {\n var script = document.createElement('script');\n return src && (script.src = src), script;\n}\n\n/**\n * creates an HTML script element with the monaco loader src\n * @return {Object} - the created HTML script element\n */\nfunction getMonacoLoaderScript(configureLoader) {\n var state = getState(function (_ref2) {\n var config = _ref2.config,\n reject = _ref2.reject;\n return {\n config: config,\n reject: reject\n };\n });\n var loaderScript = createScript(\"\".concat(state.config.paths.vs, \"/loader.js\"));\n loaderScript.onload = function () {\n return configureLoader();\n };\n loaderScript.onerror = state.reject;\n return loaderScript;\n}\n\n/**\n * configures the monaco loader\n */\nfunction configureLoader() {\n var state = getState(function (_ref3) {\n var config = _ref3.config,\n resolve = _ref3.resolve,\n reject = _ref3.reject;\n return {\n config: config,\n resolve: resolve,\n reject: reject\n };\n });\n var require = window.require;\n require.config(state.config);\n require(['vs/editor/editor.main'], function (loaded) {\n var monaco = loaded.m /* for 0.53 & 0.54 */ || loaded /* for other versions */;\n storeMonacoInstance(monaco);\n state.resolve(monaco);\n }, function (error) {\n state.reject(error);\n });\n}\n\n/**\n * store monaco instance in local state\n */\nfunction storeMonacoInstance(monaco) {\n if (!getState().monaco) {\n setState({\n monaco: monaco\n });\n }\n}\n\n/**\n * internal helper function\n * extracts stored monaco instance\n * @return {Object|null} - the monaco instance\n */\nfunction __getMonacoInstance() {\n return getState(function (_ref4) {\n var monaco = _ref4.monaco;\n return monaco;\n });\n}\nvar wrapperPromise = new Promise(function (resolve, reject) {\n return setState({\n resolve: resolve,\n reject: reject\n });\n});\nvar loader = {\n config: config,\n init: init,\n __getMonacoInstance: __getMonacoInstance\n};\n\nexport { loader as default };\n","import { editor } from 'monaco-editor'\n\n// picked from https://bitwiser.in/monaco-themes/\n// currently set to: Github Light\nexport const theme: editor.IStandaloneThemeData = {\n\tbase: 'vs',\n\tinherit: true,\n\tcolors: {\n\t\t'editor.foreground': '#24292e',\n\t\t'editor.background': '#ffffff',\n\t\t'editor.selectionBackground': '#c8c8fa',\n\t\t'editor.inactiveSelectionBackground': '#fafbfc',\n\t\t'editor.lineHighlightBackground': '#fafbfc',\n\t\t'editorCursor.foreground': '#24292e',\n\t\t'editorWhitespace.foreground': '#959da5',\n\t\t'editorIndentGuide.background': '#959da5',\n\t\t'editorIndentGuide.activeBackground': '#24292e',\n\t\t'editor.selectionHighlightBorder': '#fafbfc',\n\t},\n\trules: [\n\t\t{\n\t\t\tbackground: 'ffffff',\n\t\t\ttoken: '',\n\t\t},\n\t\t{\n\t\t\tforeground: '6a737d',\n\t\t\ttoken: 'comment',\n\t\t},\n\t\t{\n\t\t\tforeground: '6a737d',\n\t\t\ttoken: 'punctuation.definition.comment',\n\t\t},\n\t\t{\n\t\t\tforeground: '6a737d',\n\t\t\ttoken: 'string.comment',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'constant',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'entity.name.constant',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'variable.other.constant',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'variable.language',\n\t\t},\n\t\t{\n\t\t\tforeground: '6f42c1',\n\t\t\ttoken: 'entity',\n\t\t},\n\t\t{\n\t\t\tforeground: '6f42c1',\n\t\t\ttoken: 'entity.name',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'variable.parameter.function',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\ttoken: 'entity.name.tag',\n\t\t},\n\t\t{\n\t\t\tforeground: 'd73a49',\n\t\t\ttoken: 'keyword',\n\t\t},\n\t\t{\n\t\t\tforeground: 'd73a49',\n\t\t\ttoken: 'storage',\n\t\t},\n\t\t{\n\t\t\tforeground: 'd73a49',\n\t\t\ttoken: 'storage.type',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'storage.modifier.package',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'storage.modifier.import',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'storage.type.java',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'punctuation.definition.string',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string punctuation.section.embedded source',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'support',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'meta.property-name',\n\t\t},\n\t\t{\n\t\t\tforeground: 'e36209',\n\t\t\ttoken: 'variable',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'variable.other',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tfontStyle: 'bold italic underline',\n\t\t\ttoken: 'invalid.broken',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tfontStyle: 'bold italic underline',\n\t\t\ttoken: 'invalid.deprecated',\n\t\t},\n\t\t{\n\t\t\tforeground: 'fafbfc',\n\t\t\tbackground: 'b31d28',\n\t\t\tfontStyle: 'italic underline',\n\t\t\ttoken: 'invalid.illegal',\n\t\t},\n\t\t{\n\t\t\tforeground: 'fafbfc',\n\t\t\tbackground: 'd73a49',\n\t\t\tfontStyle: 'italic underline',\n\t\t\ttoken: 'carriage-return',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tfontStyle: 'bold italic underline',\n\t\t\ttoken: 'invalid.unimplemented',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\ttoken: 'message.error',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\ttoken: 'string source',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'string variable',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'source.regexp',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string.regexp',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string.regexp.character-class',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string.regexp constant.character.escape',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string.regexp source.ruby.embedded',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\ttoken: 'string.regexp string.regexp.arbitrary-repitition',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'string.regexp constant.character.escape',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'support.constant',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'support.variable',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'meta.module-reference',\n\t\t},\n\t\t{\n\t\t\tforeground: '735c0f',\n\t\t\ttoken: 'markup.list',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'markup.heading',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'markup.heading entity.name',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\ttoken: 'markup.quote',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\tfontStyle: 'italic',\n\t\t\ttoken: 'markup.italic',\n\t\t},\n\t\t{\n\t\t\tforeground: '24292e',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'markup.bold',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'markup.raw',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tbackground: 'ffeef0',\n\t\t\ttoken: 'markup.deleted',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tbackground: 'ffeef0',\n\t\t\ttoken: 'meta.diff.header.from-file',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\tbackground: 'ffeef0',\n\t\t\ttoken: 'punctuation.definition.deleted',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\tbackground: 'f0fff4',\n\t\t\ttoken: 'markup.inserted',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\tbackground: 'f0fff4',\n\t\t\ttoken: 'meta.diff.header.to-file',\n\t\t},\n\t\t{\n\t\t\tforeground: '22863a',\n\t\t\tbackground: 'f0fff4',\n\t\t\ttoken: 'punctuation.definition.inserted',\n\t\t},\n\t\t{\n\t\t\tforeground: 'e36209',\n\t\t\tbackground: 'ffebda',\n\t\t\ttoken: 'markup.changed',\n\t\t},\n\t\t{\n\t\t\tforeground: 'e36209',\n\t\t\tbackground: 'ffebda',\n\t\t\ttoken: 'punctuation.definition.changed',\n\t\t},\n\t\t{\n\t\t\tforeground: 'f6f8fa',\n\t\t\tbackground: '005cc5',\n\t\t\ttoken: 'markup.ignored',\n\t\t},\n\t\t{\n\t\t\tforeground: 'f6f8fa',\n\t\t\tbackground: '005cc5',\n\t\t\ttoken: 'markup.untracked',\n\t\t},\n\t\t{\n\t\t\tforeground: '6f42c1',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'meta.diff.range',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'meta.diff.header',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\tfontStyle: 'bold',\n\t\t\ttoken: 'meta.separator',\n\t\t},\n\t\t{\n\t\t\tforeground: '005cc5',\n\t\t\ttoken: 'meta.output',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.tag',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.curly',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.round',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.square',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.angle',\n\t\t},\n\t\t{\n\t\t\tforeground: '586069',\n\t\t\ttoken: 'brackethighlighter.quote',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\ttoken: 'brackethighlighter.unmatched',\n\t\t},\n\t\t{\n\t\t\tforeground: 'b31d28',\n\t\t\ttoken: 'sublimelinter.mark.error',\n\t\t},\n\t\t{\n\t\t\tforeground: 'e36209',\n\t\t\ttoken: 'sublimelinter.mark.warning',\n\t\t},\n\t\t{\n\t\t\tforeground: '959da5',\n\t\t\ttoken: 'sublimelinter.gutter-mark',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\tfontStyle: 'underline',\n\t\t\ttoken: 'constant.other.reference.link',\n\t\t},\n\t\t{\n\t\t\tforeground: '032f62',\n\t\t\tfontStyle: 'underline',\n\t\t\ttoken: 'string.other.link',\n\t\t},\n\t],\n}\n","/**\n * Coerces an unknown value to a string suitable for Monaco's initial content.\n * Objects are JSON-stringified with 2-space indentation.\n * Null and undefined become empty string.\n * Strings pass through unchanged.\n * @public\n */\nexport function toEditorString(value: unknown): string {\n\tif (value === null || value === undefined) return ''\n\tif (typeof value === 'string') return value\n\treturn JSON.stringify(value, null, 2)\n}\n","<template>\n\t<div ref=\"aCodeEditor\" class=\"a-code-editor\" :style=\"{ height }\" />\n</template>\n\n<script lang=\"ts\">\n// Module-scoped (shared across all instances) so each Monaco model gets a unique URI. This MUST\n// live in a plain <script>, not <script setup>: inside <script setup> it is re-created per instance\n// and always increments to 1, so two editors mounted at once both build\n// `file:///stonecrop-editor-1.js` and the second throws \"ModelService: Cannot add model because it\n// already exists!\" — its mounted hook aborts and only one editor loads.\nlet editorModelCounter = 0\n</script>\n\n<script setup lang=\"ts\">\nimport loader from '@monaco-editor/loader'\nimport type * as Monaco from 'monaco-editor'\nimport type { editor } from 'monaco-editor'\nimport { onMounted, onUnmounted, shallowRef, watch } from 'vue'\nimport { useTemplateRef } from 'vue'\n\nimport { theme } from '../theme/code_editor/agritheory'\nimport { toEditorString } from '../utils/serialization'\n\ntype EditorSchema = { language?: string; [key: string]: unknown }\n\nconst modelValue = defineModel<string>()\nconst {\n\theight = '300px',\n\tmode = 'edit',\n\tschema = undefined,\n\tlanguage = undefined,\n\toptions = undefined,\n\tvsPath = undefined,\n\textraLibs = undefined,\n\tlibs = undefined,\n} = defineProps<{\n\theight?: string\n\tmode?: 'edit' | 'read' | 'display'\n\tschema?: EditorSchema\n\tlanguage?: string\n\toptions?: editor.IStandaloneEditorConstructionOptions\n\t/** Override the Monaco AMD loader path (e.g. for offline/local serving) */\n\tvsPath?: string\n\t/** TypeScript declaration string added as extra libs for JS type checking */\n\textraLibs?: string\n\t/**\n\t * Restrict the JS/TS language service to these lib files (e.g. `['es2020']` to keep\n\t * the JS built-ins but drop the DOM/browser globals from type-checking and autocomplete).\n\t * When omitted, Monaco's default libs apply — which include `dom`.\n\t */\n\tlibs?: string[]\n}>()\n\nconst editorRef = useTemplateRef<HTMLDivElement>('aCodeEditor')\nconst editorInstance = shallowRef<editor.IStandaloneCodeEditor | null>(null)\n\nwatch(modelValue, val => {\n\tconst inst = editorInstance.value\n\tif (inst && val !== inst.getValue()) inst.setValue(val ?? '')\n})\n\nwatch(\n\t() => mode,\n\tm => {\n\t\teditorInstance.value?.updateOptions({ readOnly: m !== 'edit' })\n\t}\n)\n\nonMounted(async () => {\n\tif (vsPath) loader.config({ paths: { vs: vsPath } })\n\n\tconst monacoInstance: typeof Monaco = await loader.init()\n\t// The field declares its own language; without one, highlight nothing rather than guess.\n\tconst lang = schema?.language ?? language ?? 'plaintext'\n\n\t// `monaco.languages.typescript` is deprecated in favour of this top-level namespace; both name\n\t// the same object at runtime, but only this one is typed (the old path is a `{ deprecated: true }`\n\t// tombstone). Needs monaco >= 0.53, so a `vsPath` override must serve a matching version.\n\tconst ts = monacoInstance.typescript\n\tif (extraLibs) {\n\t\tts.javascriptDefaults.addExtraLib(extraLibs, 'ts:stonecrop.d.ts')\n\t}\n\tif (extraLibs || libs) {\n\t\tts.javascriptDefaults.setCompilerOptions({\n\t\t\tcheckJs: true,\n\t\t\tnoImplicitAny: false,\n\t\t\t// `lib` is authoritative — it replaces Monaco's default set, so passing e.g.\n\t\t\t// ['es2020'] retains the JS built-ins (Promise/Array/JSON/…) while removing the\n\t\t\t// DOM/browser globals. `target` is matched so ES2020 syntax isn't flagged.\n\t\t\t...(libs && {\n\t\t\t\ttarget: ts.ScriptTarget.ES2020,\n\t\t\t\tlib: libs,\n\t\t\t}),\n\t\t})\n\t}\n\n\tmonacoInstance.editor.defineTheme('agritheory', theme)\n\tmonacoInstance.editor.setTheme('agritheory')\n\n\t// Give the model a file:// URI so the TS worker recognises it as JS/TS and can\n\t// run getSyntacticDiagnostics without throwing \"Could not find source file\".\n\tconst ext = lang === 'typescript' ? 'ts' : lang === 'json' ? 'json' : lang === 'python' ? 'py' : 'js'\n\tconst modelUri = monacoInstance.Uri.parse(`file:///stonecrop-editor-${++editorModelCounter}.${ext}`)\n\tconst editorModel = monacoInstance.editor.createModel(toEditorString(modelValue.value), lang, modelUri)\n\n\tconst inst = monacoInstance.editor.create(editorRef.value!, {\n\t\tautomaticLayout: true,\n\t\tcolorDecorators: true,\n\t\tlineHeight: 24,\n\t\tscrollBeyondLastLine: false,\n\t\t...options,\n\t\tmodel: editorModel,\n\t\treadOnly: mode !== 'edit',\n\t})\n\n\tinst.onDidChangeModelContent(() => {\n\t\tmodelValue.value = inst.getValue()\n\t})\n\n\teditorInstance.value = inst\n\n\t// Sync any modelValue change that arrived during the async CDN load\n\tconst current = modelValue.value ?? ''\n\tif (current !== inst.getValue()) inst.setValue(current)\n})\n\nonUnmounted(() => {\n\teditorInstance.value?.getModel()?.dispose()\n\teditorInstance.value?.dispose()\n\teditorInstance.value = null\n})\n</script>\n\n<style scoped>\n.a-code-editor {\n\twidth: 100%;\n\toverflow: hidden;\n}\n</style>\n","import { App } from 'vue'\n\nimport ACodeEditor from './components/ACodeEditor.vue'\n\n/**\n * Install all Code Editor components\n * @param app - Vue app instance\n * @public\n */\nfunction install(app: App /* options */) {\n\tapp.component('ACodeEditor', ACodeEditor)\n}\n\nexport { install, ACodeEditor }\n"],"names":["_arrayLikeToArray","r","a","e","n","_arrayWithHoles","_defineProperty","t","_toPropertyKey","_iterableToArrayLimit","l","u","f","o","_nonIterableRest","ownKeys","_objectSpread2","_objectWithoutProperties","i","_objectWithoutPropertiesLoose","_slicedToArray","_unsupportedIterableToArray","_toPrimitive","obj","key","value","object","enumerableOnly","keys","symbols","sym","target","source","compose","_len","fns","_key","x","y","curry","fn","curried","_this","_len2","args","_key2","_len3","nextArgs","_key3","isObject","isEmpty","isFunction","hasOwnProperty","property","validateChanges","initial","changes","errorHandler","field","validateSelector","selector","validateHandler","handler","_handler","validateInitial","throwError","errorMessages","type","validators","create","state","didUpdate","didStateUpdate","update","updateState","validate","getChanges","extractChanges","getState","setState","causedChanges","_handler$field","index","config","validateConfig","informAboutDeprecation","merge","CANCELATION_MESSAGE","makeCancelable","promise","hasCanceled_","wrappedPromise","resolve","reject","val","_excluded","_state$create","config$1","_state$create2","globalConfig","_validators$config","monaco","init","_ref","isInitialized","wrapperPromise","storeMonacoInstance","injectScripts","getMonacoLoaderScript","configureLoader","script","createScript","src","_ref2","loaderScript","_ref3","require","loaded","error","__getMonacoInstance","_ref4","loader","theme","toEditorString","editorModelCounter","modelValue","_useModel","__props","editorRef","useTemplateRef","editorInstance","shallowRef","watch","inst","m","onMounted","monacoInstance","lang","ts","ext","modelUri","editorModel","current","onUnmounted","_createElementBlock","install","app","ACodeEditor"],"mappings":"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AER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,IAAA;AAAA,IAER;AAAA,MACC,YAAY;AAAA,MACZ,OAAO;AAAA,I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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Resolves the Monaco language identifier
|
|
3
|
-
* optional explicit language override.
|
|
2
|
+
* Resolves the Monaco language identifier for a code field.
|
|
4
3
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* A code field declares its language explicitly (`ValueField.language`) — it is the only thing
|
|
5
|
+
* distinguishing a JSON editor from any other code editor, since both render with `ACodeEditor`.
|
|
6
|
+
* A field that declares none gets `plaintext`, which highlights nothing rather than guessing
|
|
7
|
+
* wrong.
|
|
8
8
|
* @public
|
|
9
9
|
*/
|
|
10
|
-
export declare function detectLanguage(
|
|
10
|
+
export declare function detectLanguage(explicitLanguage?: string): string;
|
|
11
11
|
//# sourceMappingURL=language.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"language.d.ts","sourceRoot":"","sources":["../../../src/utils/language.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"language.d.ts","sourceRoot":"","sources":["../../../src/utils/language.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CAEhE"}
|
|
@@ -1,16 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Resolves the Monaco language identifier
|
|
3
|
-
* optional explicit language override.
|
|
2
|
+
* Resolves the Monaco language identifier for a code field.
|
|
4
3
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* A code field declares its language explicitly (`ValueField.language`) — it is the only thing
|
|
5
|
+
* distinguishing a JSON editor from any other code editor, since both render with `ACodeEditor`.
|
|
6
|
+
* A field that declares none gets `plaintext`, which highlights nothing rather than guessing
|
|
7
|
+
* wrong.
|
|
8
8
|
* @public
|
|
9
9
|
*/
|
|
10
|
-
export function detectLanguage(
|
|
11
|
-
if (fieldtype === 'JSON')
|
|
12
|
-
return 'json';
|
|
13
|
-
if (fieldtype === 'Code')
|
|
14
|
-
return explicitLanguage ?? 'typescript';
|
|
10
|
+
export function detectLanguage(explicitLanguage) {
|
|
15
11
|
return explicitLanguage ?? 'plaintext';
|
|
16
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialization.d.ts","sourceRoot":"","sources":["../../../src/utils/serialization.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"serialization.d.ts","sourceRoot":"","sources":["../../../src/utils/serialization.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAIrD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stonecrop/code-editor",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"author": {
|
|
@@ -44,17 +44,18 @@
|
|
|
44
44
|
"@vitejs/plugin-vue": "^6.0.6",
|
|
45
45
|
"@vue/test-utils": "^2.4.10",
|
|
46
46
|
"eslint-config-prettier": "^10.1.8",
|
|
47
|
-
"eslint-plugin-vue": "^10.9.
|
|
48
|
-
"eslint": "^10.
|
|
47
|
+
"eslint-plugin-vue": "^10.9.2",
|
|
48
|
+
"eslint": "^10.6.0",
|
|
49
49
|
"globals": "^17.6.0",
|
|
50
50
|
"jsdom": "^29.1.1",
|
|
51
51
|
"oxlint-tsgolint": "0.23.0",
|
|
52
52
|
"oxlint": "1.67.0",
|
|
53
|
-
"typescript-eslint": "^8.
|
|
53
|
+
"typescript-eslint": "^8.62.1",
|
|
54
54
|
"typescript": "^6.0.3",
|
|
55
55
|
"vite": "^7.3.2",
|
|
56
56
|
"vitest": "^4.1.5",
|
|
57
57
|
"vue-router": "^5.0.6",
|
|
58
|
+
"vue-tsc": "^3.3.6",
|
|
58
59
|
"vue": "^3.5.33",
|
|
59
60
|
"stonecrop-rig": "0.7.0"
|
|
60
61
|
},
|
|
@@ -73,6 +74,7 @@
|
|
|
73
74
|
"lint:fix": "oxlint --fix",
|
|
74
75
|
"preview": "vite preview",
|
|
75
76
|
"test": "vitest run",
|
|
77
|
+
"test:types": "vue-tsc --noEmit",
|
|
76
78
|
"test:watch": "vitest",
|
|
77
79
|
"test:coverage": "vitest run --coverage"
|
|
78
80
|
}
|
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
<div ref="aCodeEditor" class="a-code-editor" :style="{ height }" />
|
|
3
3
|
</template>
|
|
4
4
|
|
|
5
|
+
<script lang="ts">
|
|
6
|
+
// Module-scoped (shared across all instances) so each Monaco model gets a unique URI. This MUST
|
|
7
|
+
// live in a plain <script>, not <script setup>: inside <script setup> it is re-created per instance
|
|
8
|
+
// and always increments to 1, so two editors mounted at once both build
|
|
9
|
+
// `file:///stonecrop-editor-1.js` and the second throws "ModelService: Cannot add model because it
|
|
10
|
+
// already exists!" — its mounted hook aborts and only one editor loads.
|
|
11
|
+
let editorModelCounter = 0
|
|
12
|
+
</script>
|
|
13
|
+
|
|
5
14
|
<script setup lang="ts">
|
|
6
15
|
import loader from '@monaco-editor/loader'
|
|
7
16
|
import type * as Monaco from 'monaco-editor'
|
|
@@ -10,10 +19,9 @@ import { onMounted, onUnmounted, shallowRef, watch } from 'vue'
|
|
|
10
19
|
import { useTemplateRef } from 'vue'
|
|
11
20
|
|
|
12
21
|
import { theme } from '../theme/code_editor/agritheory'
|
|
13
|
-
import { detectLanguage } from '../utils/language'
|
|
14
22
|
import { toEditorString } from '../utils/serialization'
|
|
15
23
|
|
|
16
|
-
type EditorSchema = {
|
|
24
|
+
type EditorSchema = { language?: string; [key: string]: unknown }
|
|
17
25
|
|
|
18
26
|
const modelValue = defineModel<string>()
|
|
19
27
|
const {
|
|
@@ -22,12 +30,25 @@ const {
|
|
|
22
30
|
schema = undefined,
|
|
23
31
|
language = undefined,
|
|
24
32
|
options = undefined,
|
|
33
|
+
vsPath = undefined,
|
|
34
|
+
extraLibs = undefined,
|
|
35
|
+
libs = undefined,
|
|
25
36
|
} = defineProps<{
|
|
26
37
|
height?: string
|
|
27
38
|
mode?: 'edit' | 'read' | 'display'
|
|
28
39
|
schema?: EditorSchema
|
|
29
40
|
language?: string
|
|
30
41
|
options?: editor.IStandaloneEditorConstructionOptions
|
|
42
|
+
/** Override the Monaco AMD loader path (e.g. for offline/local serving) */
|
|
43
|
+
vsPath?: string
|
|
44
|
+
/** TypeScript declaration string added as extra libs for JS type checking */
|
|
45
|
+
extraLibs?: string
|
|
46
|
+
/**
|
|
47
|
+
* Restrict the JS/TS language service to these lib files (e.g. `['es2020']` to keep
|
|
48
|
+
* the JS built-ins but drop the DOM/browser globals from type-checking and autocomplete).
|
|
49
|
+
* When omitted, Monaco's default libs apply — which include `dom`.
|
|
50
|
+
*/
|
|
51
|
+
libs?: string[]
|
|
31
52
|
}>()
|
|
32
53
|
|
|
33
54
|
const editorRef = useTemplateRef<HTMLDivElement>('aCodeEditor')
|
|
@@ -46,20 +67,49 @@ watch(
|
|
|
46
67
|
)
|
|
47
68
|
|
|
48
69
|
onMounted(async () => {
|
|
70
|
+
if (vsPath) loader.config({ paths: { vs: vsPath } })
|
|
71
|
+
|
|
49
72
|
const monacoInstance: typeof Monaco = await loader.init()
|
|
50
|
-
|
|
73
|
+
// The field declares its own language; without one, highlight nothing rather than guess.
|
|
74
|
+
const lang = schema?.language ?? language ?? 'plaintext'
|
|
75
|
+
|
|
76
|
+
// `monaco.languages.typescript` is deprecated in favour of this top-level namespace; both name
|
|
77
|
+
// the same object at runtime, but only this one is typed (the old path is a `{ deprecated: true }`
|
|
78
|
+
// tombstone). Needs monaco >= 0.53, so a `vsPath` override must serve a matching version.
|
|
79
|
+
const ts = monacoInstance.typescript
|
|
80
|
+
if (extraLibs) {
|
|
81
|
+
ts.javascriptDefaults.addExtraLib(extraLibs, 'ts:stonecrop.d.ts')
|
|
82
|
+
}
|
|
83
|
+
if (extraLibs || libs) {
|
|
84
|
+
ts.javascriptDefaults.setCompilerOptions({
|
|
85
|
+
checkJs: true,
|
|
86
|
+
noImplicitAny: false,
|
|
87
|
+
// `lib` is authoritative — it replaces Monaco's default set, so passing e.g.
|
|
88
|
+
// ['es2020'] retains the JS built-ins (Promise/Array/JSON/…) while removing the
|
|
89
|
+
// DOM/browser globals. `target` is matched so ES2020 syntax isn't flagged.
|
|
90
|
+
...(libs && {
|
|
91
|
+
target: ts.ScriptTarget.ES2020,
|
|
92
|
+
lib: libs,
|
|
93
|
+
}),
|
|
94
|
+
})
|
|
95
|
+
}
|
|
51
96
|
|
|
52
97
|
monacoInstance.editor.defineTheme('agritheory', theme)
|
|
53
98
|
monacoInstance.editor.setTheme('agritheory')
|
|
54
99
|
|
|
100
|
+
// Give the model a file:// URI so the TS worker recognises it as JS/TS and can
|
|
101
|
+
// run getSyntacticDiagnostics without throwing "Could not find source file".
|
|
102
|
+
const ext = lang === 'typescript' ? 'ts' : lang === 'json' ? 'json' : lang === 'python' ? 'py' : 'js'
|
|
103
|
+
const modelUri = monacoInstance.Uri.parse(`file:///stonecrop-editor-${++editorModelCounter}.${ext}`)
|
|
104
|
+
const editorModel = monacoInstance.editor.createModel(toEditorString(modelValue.value), lang, modelUri)
|
|
105
|
+
|
|
55
106
|
const inst = monacoInstance.editor.create(editorRef.value!, {
|
|
56
107
|
automaticLayout: true,
|
|
57
108
|
colorDecorators: true,
|
|
58
109
|
lineHeight: 24,
|
|
59
110
|
scrollBeyondLastLine: false,
|
|
60
111
|
...options,
|
|
61
|
-
|
|
62
|
-
language: lang,
|
|
112
|
+
model: editorModel,
|
|
63
113
|
readOnly: mode !== 'edit',
|
|
64
114
|
})
|
|
65
115
|
|
|
@@ -75,6 +125,7 @@ onMounted(async () => {
|
|
|
75
125
|
})
|
|
76
126
|
|
|
77
127
|
onUnmounted(() => {
|
|
128
|
+
editorInstance.value?.getModel()?.dispose()
|
|
78
129
|
editorInstance.value?.dispose()
|
|
79
130
|
editorInstance.value = null
|
|
80
131
|
})
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Strings pass through unchanged.
|
|
6
6
|
* @public
|
|
7
7
|
*/
|
|
8
|
-
export function toEditorString(value: unknown
|
|
8
|
+
export function toEditorString(value: unknown): string {
|
|
9
9
|
if (value === null || value === undefined) return ''
|
|
10
10
|
if (typeof value === 'string') return value
|
|
11
11
|
return JSON.stringify(value, null, 2)
|
package/src/utils/language.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Resolves the Monaco language identifier from a Stonecrop fieldtype and an
|
|
3
|
-
* optional explicit language override.
|
|
4
|
-
*
|
|
5
|
-
* - JSON fieldtype always maps to 'json' regardless of the explicit language.
|
|
6
|
-
* - Code fieldtype defaults to 'typescript'; the explicit language overrides it.
|
|
7
|
-
* - All other fieldtypes use the explicit language, falling back to 'plaintext'.
|
|
8
|
-
* @public
|
|
9
|
-
*/
|
|
10
|
-
export function detectLanguage(fieldtype?: string, explicitLanguage?: string): string {
|
|
11
|
-
if (fieldtype === 'JSON') return 'json'
|
|
12
|
-
if (fieldtype === 'Code') return explicitLanguage ?? 'typescript'
|
|
13
|
-
return explicitLanguage ?? 'plaintext'
|
|
14
|
-
}
|