yansu 0.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/README.md +1 -0
  2. package/bin.mjs +18 -0
  3. package/dist/cli.d.mts +2 -0
  4. package/dist/cli.mjs +68 -0
  5. package/dist/dirs.d.mts +4 -0
  6. package/dist/dirs.mjs +6 -0
  7. package/dist/index.d.mts +78 -0
  8. package/dist/index.mjs +121 -0
  9. package/dist/nitro.json +15 -0
  10. package/dist/public/_nuxt/BHIHUtPz.js +4 -0
  11. package/dist/public/_nuxt/CCgOhniq.js +1 -0
  12. package/dist/public/_nuxt/CR6vfq1R.js +1 -0
  13. package/dist/public/_nuxt/DmxzK6E8.js +1 -0
  14. package/dist/public/_nuxt/builds/latest.json +1 -0
  15. package/dist/public/_nuxt/builds/meta/e9079134-f314-434b-b3a7-092c4a1e187d.json +1 -0
  16. package/dist/public/_nuxt/entry.DJ3VOi_0.css +1 -0
  17. package/dist/public/_nuxt/error-404.lC6KBLNm.css +1 -0
  18. package/dist/public/_nuxt/error-500.NtBcR2wE.css +1 -0
  19. package/dist/server/chunks/_/error-500.mjs +9 -0
  20. package/dist/server/chunks/build/_plugin-vue_export-helper-DjsbPc54.mjs +29 -0
  21. package/dist/server/chunks/build/client.precomputed.mjs +3 -0
  22. package/dist/server/chunks/build/error-404-Du0ot2hm.mjs +369 -0
  23. package/dist/server/chunks/build/error-500-Y3RUV6n2.mjs +73 -0
  24. package/dist/server/chunks/build/server.mjs +727 -0
  25. package/dist/server/chunks/nitro/nitro.mjs +5176 -0
  26. package/dist/server/chunks/routes/api/metadata.json.mjs +147 -0
  27. package/dist/server/chunks/routes/api/platform.json.mjs +20 -0
  28. package/dist/server/chunks/routes/renderer.mjs +408 -0
  29. package/dist/server/chunks/virtual/_virtual_spa-template.mjs +3 -0
  30. package/dist/server/index.mjs +9 -0
  31. package/dist/server/node_modules/.nitro/@vue/shared@3.5.25/dist/shared.cjs.prod.js +604 -0
  32. package/dist/server/node_modules/.nitro/@vue/shared@3.5.25/package.json +47 -0
  33. package/dist/server/node_modules/.nitro/@vue/shared@3.5.26/dist/shared.cjs.prod.js +604 -0
  34. package/dist/server/node_modules/.nitro/@vue/shared@3.5.26/package.json +47 -0
  35. package/dist/server/node_modules/@babel/parser/lib/index.js +14662 -0
  36. package/dist/server/node_modules/@babel/parser/package.json +50 -0
  37. package/dist/server/node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js +6763 -0
  38. package/dist/server/node_modules/@vue/compiler-core/package.json +58 -0
  39. package/dist/server/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +689 -0
  40. package/dist/server/node_modules/@vue/compiler-dom/package.json +57 -0
  41. package/dist/server/node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js +1413 -0
  42. package/dist/server/node_modules/@vue/compiler-ssr/package.json +34 -0
  43. package/dist/server/node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js +1853 -0
  44. package/dist/server/node_modules/@vue/reactivity/package.json +55 -0
  45. package/dist/server/node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js +6770 -0
  46. package/dist/server/node_modules/@vue/runtime-core/package.json +52 -0
  47. package/dist/server/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.prod.js +1732 -0
  48. package/dist/server/node_modules/@vue/runtime-dom/package.json +60 -0
  49. package/dist/server/node_modules/@vue/server-renderer/dist/server-renderer.cjs.prod.js +879 -0
  50. package/dist/server/node_modules/@vue/server-renderer/package.json +55 -0
  51. package/dist/server/node_modules/ansis/index.cjs +1 -0
  52. package/dist/server/node_modules/ansis/index.mjs +1 -0
  53. package/dist/server/node_modules/ansis/package.json +25 -0
  54. package/dist/server/node_modules/birpc/dist/index.mjs +173 -0
  55. package/dist/server/node_modules/birpc/package.json +56 -0
  56. package/dist/server/node_modules/consola/dist/chunks/prompt.mjs +280 -0
  57. package/dist/server/node_modules/consola/dist/core.mjs +512 -0
  58. package/dist/server/node_modules/consola/dist/index.mjs +651 -0
  59. package/dist/server/node_modules/consola/dist/shared/consola.DRwqZj3T.mjs +72 -0
  60. package/dist/server/node_modules/consola/dist/shared/consola.DXBYu-KD.mjs +288 -0
  61. package/dist/server/node_modules/consola/package.json +136 -0
  62. package/dist/server/node_modules/devalue/index.js +4 -0
  63. package/dist/server/node_modules/devalue/package.json +37 -0
  64. package/dist/server/node_modules/devalue/src/base64.js +110 -0
  65. package/dist/server/node_modules/devalue/src/constants.js +6 -0
  66. package/dist/server/node_modules/devalue/src/parse.js +205 -0
  67. package/dist/server/node_modules/devalue/src/stringify.js +265 -0
  68. package/dist/server/node_modules/devalue/src/uneval.js +407 -0
  69. package/dist/server/node_modules/devalue/src/utils.js +118 -0
  70. package/dist/server/node_modules/entities/dist/commonjs/decode-codepoint.js +77 -0
  71. package/dist/server/node_modules/entities/dist/commonjs/decode.js +568 -0
  72. package/dist/server/node_modules/entities/dist/commonjs/generated/decode-data-html.js +7 -0
  73. package/dist/server/node_modules/entities/dist/commonjs/generated/decode-data-xml.js +7 -0
  74. package/dist/server/node_modules/entities/dist/commonjs/internal/bin-trie-flags.js +21 -0
  75. package/dist/server/node_modules/entities/dist/commonjs/internal/decode-shared.js +31 -0
  76. package/dist/server/node_modules/entities/dist/commonjs/package.json +3 -0
  77. package/dist/server/node_modules/entities/package.json +113 -0
  78. package/dist/server/node_modules/estree-walker/dist/umd/estree-walker.js +344 -0
  79. package/dist/server/node_modules/estree-walker/package.json +37 -0
  80. package/dist/server/node_modules/get-port-please/dist/index.mjs +430 -0
  81. package/dist/server/node_modules/get-port-please/package.json +39 -0
  82. package/dist/server/node_modules/hookable/dist/index.mjs +290 -0
  83. package/dist/server/node_modules/hookable/package.json +49 -0
  84. package/dist/server/node_modules/source-map-js/lib/array-set.js +121 -0
  85. package/dist/server/node_modules/source-map-js/lib/base64-vlq.js +140 -0
  86. package/dist/server/node_modules/source-map-js/lib/base64.js +67 -0
  87. package/dist/server/node_modules/source-map-js/lib/binary-search.js +111 -0
  88. package/dist/server/node_modules/source-map-js/lib/mapping-list.js +79 -0
  89. package/dist/server/node_modules/source-map-js/lib/quick-sort.js +132 -0
  90. package/dist/server/node_modules/source-map-js/lib/source-map-consumer.js +1188 -0
  91. package/dist/server/node_modules/source-map-js/lib/source-map-generator.js +444 -0
  92. package/dist/server/node_modules/source-map-js/lib/source-node.js +413 -0
  93. package/dist/server/node_modules/source-map-js/lib/util.js +594 -0
  94. package/dist/server/node_modules/source-map-js/package.json +71 -0
  95. package/dist/server/node_modules/source-map-js/source-map.js +8 -0
  96. package/dist/server/node_modules/structured-clone-es/dist/index.mjs +285 -0
  97. package/dist/server/node_modules/structured-clone-es/package.json +56 -0
  98. package/dist/server/node_modules/ufo/dist/index.mjs +638 -0
  99. package/dist/server/node_modules/ufo/package.json +47 -0
  100. package/dist/server/node_modules/unhead/dist/index.mjs +9 -0
  101. package/dist/server/node_modules/unhead/dist/parser.mjs +508 -0
  102. package/dist/server/node_modules/unhead/dist/plugins.mjs +101 -0
  103. package/dist/server/node_modules/unhead/dist/scripts.mjs +30 -0
  104. package/dist/server/node_modules/unhead/dist/server.mjs +182 -0
  105. package/dist/server/node_modules/unhead/dist/shared/unhead.B578PsDV.mjs +266 -0
  106. package/dist/server/node_modules/unhead/dist/shared/unhead.BPM0-cfG.mjs +44 -0
  107. package/dist/server/node_modules/unhead/dist/shared/unhead.BYvz9V1x.mjs +43 -0
  108. package/dist/server/node_modules/unhead/dist/shared/unhead.BpRRHAhY.mjs +194 -0
  109. package/dist/server/node_modules/unhead/dist/shared/unhead.CApf5sj3.mjs +148 -0
  110. package/dist/server/node_modules/unhead/dist/shared/unhead.DH45uomy.mjs +180 -0
  111. package/dist/server/node_modules/unhead/dist/shared/unhead.DQc16pHI.mjs +196 -0
  112. package/dist/server/node_modules/unhead/dist/shared/unhead.DZbvapt-.mjs +70 -0
  113. package/dist/server/node_modules/unhead/dist/shared/unhead.Djo8ep_Y.mjs +166 -0
  114. package/dist/server/node_modules/unhead/dist/shared/unhead.yem5I2v_.mjs +38 -0
  115. package/dist/server/node_modules/unhead/dist/utils.mjs +5 -0
  116. package/dist/server/node_modules/unhead/package.json +105 -0
  117. package/dist/server/node_modules/vue/dist/vue.cjs.js +80 -0
  118. package/dist/server/node_modules/vue/dist/vue.cjs.prod.js +66 -0
  119. package/dist/server/node_modules/vue/index.js +7 -0
  120. package/dist/server/node_modules/vue/index.mjs +1 -0
  121. package/dist/server/node_modules/vue/package.json +112 -0
  122. package/dist/server/node_modules/vue/server-renderer/index.mjs +1 -0
  123. package/dist/server/node_modules/vue-bundle-renderer/dist/runtime.mjs +301 -0
  124. package/dist/server/node_modules/vue-bundle-renderer/package.json +55 -0
  125. package/dist/server/node_modules/ws/lib/buffer-util.js +131 -0
  126. package/dist/server/node_modules/ws/lib/constants.js +19 -0
  127. package/dist/server/node_modules/ws/lib/event-target.js +292 -0
  128. package/dist/server/node_modules/ws/lib/extension.js +203 -0
  129. package/dist/server/node_modules/ws/lib/limiter.js +55 -0
  130. package/dist/server/node_modules/ws/lib/permessage-deflate.js +528 -0
  131. package/dist/server/node_modules/ws/lib/receiver.js +706 -0
  132. package/dist/server/node_modules/ws/lib/sender.js +602 -0
  133. package/dist/server/node_modules/ws/lib/stream.js +161 -0
  134. package/dist/server/node_modules/ws/lib/subprotocol.js +62 -0
  135. package/dist/server/node_modules/ws/lib/validation.js +152 -0
  136. package/dist/server/node_modules/ws/lib/websocket-server.js +554 -0
  137. package/dist/server/node_modules/ws/lib/websocket.js +1393 -0
  138. package/dist/server/node_modules/ws/package.json +69 -0
  139. package/dist/server/node_modules/ws/wrapper.mjs +8 -0
  140. package/dist/server/package.json +32 -0
  141. package/dist/shared/yansu.DmdNF4qf.mjs +151 -0
  142. package/package.json +50 -0
@@ -0,0 +1,689 @@
1
+ /**
2
+ * @vue/compiler-dom v3.5.26
3
+ * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
+ * @license MIT
5
+ **/
6
+ 'use strict';
7
+
8
+ Object.defineProperty(exports, '__esModule', { value: true });
9
+
10
+ var compilerCore = require('@vue/compiler-core');
11
+ var shared = require('@vue/shared');
12
+
13
+ const V_MODEL_RADIO = /* @__PURE__ */ Symbol(``);
14
+ const V_MODEL_CHECKBOX = /* @__PURE__ */ Symbol(
15
+ ``
16
+ );
17
+ const V_MODEL_TEXT = /* @__PURE__ */ Symbol(``);
18
+ const V_MODEL_SELECT = /* @__PURE__ */ Symbol(
19
+ ``
20
+ );
21
+ const V_MODEL_DYNAMIC = /* @__PURE__ */ Symbol(
22
+ ``
23
+ );
24
+ const V_ON_WITH_MODIFIERS = /* @__PURE__ */ Symbol(
25
+ ``
26
+ );
27
+ const V_ON_WITH_KEYS = /* @__PURE__ */ Symbol(
28
+ ``
29
+ );
30
+ const V_SHOW = /* @__PURE__ */ Symbol(``);
31
+ const TRANSITION = /* @__PURE__ */ Symbol(``);
32
+ const TRANSITION_GROUP = /* @__PURE__ */ Symbol(
33
+ ``
34
+ );
35
+ compilerCore.registerRuntimeHelpers({
36
+ [V_MODEL_RADIO]: `vModelRadio`,
37
+ [V_MODEL_CHECKBOX]: `vModelCheckbox`,
38
+ [V_MODEL_TEXT]: `vModelText`,
39
+ [V_MODEL_SELECT]: `vModelSelect`,
40
+ [V_MODEL_DYNAMIC]: `vModelDynamic`,
41
+ [V_ON_WITH_MODIFIERS]: `withModifiers`,
42
+ [V_ON_WITH_KEYS]: `withKeys`,
43
+ [V_SHOW]: `vShow`,
44
+ [TRANSITION]: `Transition`,
45
+ [TRANSITION_GROUP]: `TransitionGroup`
46
+ });
47
+
48
+ const parserOptions = {
49
+ parseMode: "html",
50
+ isVoidTag: shared.isVoidTag,
51
+ isNativeTag: (tag) => shared.isHTMLTag(tag) || shared.isSVGTag(tag) || shared.isMathMLTag(tag),
52
+ isPreTag: (tag) => tag === "pre",
53
+ isIgnoreNewlineTag: (tag) => tag === "pre" || tag === "textarea",
54
+ decodeEntities: void 0,
55
+ isBuiltInComponent: (tag) => {
56
+ if (tag === "Transition" || tag === "transition") {
57
+ return TRANSITION;
58
+ } else if (tag === "TransitionGroup" || tag === "transition-group") {
59
+ return TRANSITION_GROUP;
60
+ }
61
+ },
62
+ // https://html.spec.whatwg.org/multipage/parsing.html#tree-construction-dispatcher
63
+ getNamespace(tag, parent, rootNamespace) {
64
+ let ns = parent ? parent.ns : rootNamespace;
65
+ if (parent && ns === 2) {
66
+ if (parent.tag === "annotation-xml") {
67
+ if (tag === "svg") {
68
+ return 1;
69
+ }
70
+ if (parent.props.some(
71
+ (a) => a.type === 6 && a.name === "encoding" && a.value != null && (a.value.content === "text/html" || a.value.content === "application/xhtml+xml")
72
+ )) {
73
+ ns = 0;
74
+ }
75
+ } else if (/^m(?:[ions]|text)$/.test(parent.tag) && tag !== "mglyph" && tag !== "malignmark") {
76
+ ns = 0;
77
+ }
78
+ } else if (parent && ns === 1) {
79
+ if (parent.tag === "foreignObject" || parent.tag === "desc" || parent.tag === "title") {
80
+ ns = 0;
81
+ }
82
+ }
83
+ if (ns === 0) {
84
+ if (tag === "svg") {
85
+ return 1;
86
+ }
87
+ if (tag === "math") {
88
+ return 2;
89
+ }
90
+ }
91
+ return ns;
92
+ }
93
+ };
94
+
95
+ const transformStyle = (node) => {
96
+ if (node.type === 1) {
97
+ node.props.forEach((p, i) => {
98
+ if (p.type === 6 && p.name === "style" && p.value) {
99
+ node.props[i] = {
100
+ type: 7,
101
+ name: `bind`,
102
+ arg: compilerCore.createSimpleExpression(`style`, true, p.loc),
103
+ exp: parseInlineCSS(p.value.content, p.loc),
104
+ modifiers: [],
105
+ loc: p.loc
106
+ };
107
+ }
108
+ });
109
+ }
110
+ };
111
+ const parseInlineCSS = (cssText, loc) => {
112
+ const normalized = shared.parseStringStyle(cssText);
113
+ return compilerCore.createSimpleExpression(
114
+ JSON.stringify(normalized),
115
+ false,
116
+ loc,
117
+ 3
118
+ );
119
+ };
120
+
121
+ function createDOMCompilerError(code, loc) {
122
+ return compilerCore.createCompilerError(
123
+ code,
124
+ loc,
125
+ DOMErrorMessages
126
+ );
127
+ }
128
+ const DOMErrorCodes = {
129
+ "X_V_HTML_NO_EXPRESSION": 54,
130
+ "54": "X_V_HTML_NO_EXPRESSION",
131
+ "X_V_HTML_WITH_CHILDREN": 55,
132
+ "55": "X_V_HTML_WITH_CHILDREN",
133
+ "X_V_TEXT_NO_EXPRESSION": 56,
134
+ "56": "X_V_TEXT_NO_EXPRESSION",
135
+ "X_V_TEXT_WITH_CHILDREN": 57,
136
+ "57": "X_V_TEXT_WITH_CHILDREN",
137
+ "X_V_MODEL_ON_INVALID_ELEMENT": 58,
138
+ "58": "X_V_MODEL_ON_INVALID_ELEMENT",
139
+ "X_V_MODEL_ARG_ON_ELEMENT": 59,
140
+ "59": "X_V_MODEL_ARG_ON_ELEMENT",
141
+ "X_V_MODEL_ON_FILE_INPUT_ELEMENT": 60,
142
+ "60": "X_V_MODEL_ON_FILE_INPUT_ELEMENT",
143
+ "X_V_MODEL_UNNECESSARY_VALUE": 61,
144
+ "61": "X_V_MODEL_UNNECESSARY_VALUE",
145
+ "X_V_SHOW_NO_EXPRESSION": 62,
146
+ "62": "X_V_SHOW_NO_EXPRESSION",
147
+ "X_TRANSITION_INVALID_CHILDREN": 63,
148
+ "63": "X_TRANSITION_INVALID_CHILDREN",
149
+ "X_IGNORED_SIDE_EFFECT_TAG": 64,
150
+ "64": "X_IGNORED_SIDE_EFFECT_TAG",
151
+ "__EXTEND_POINT__": 65,
152
+ "65": "__EXTEND_POINT__"
153
+ };
154
+ const DOMErrorMessages = {
155
+ [54]: `v-html is missing expression.`,
156
+ [55]: `v-html will override element children.`,
157
+ [56]: `v-text is missing expression.`,
158
+ [57]: `v-text will override element children.`,
159
+ [58]: `v-model can only be used on <input>, <textarea> and <select> elements.`,
160
+ [59]: `v-model argument is not supported on plain elements.`,
161
+ [60]: `v-model cannot be used on file inputs since they are read-only. Use a v-on:change listener instead.`,
162
+ [61]: `Unnecessary value binding used alongside v-model. It will interfere with v-model's behavior.`,
163
+ [62]: `v-show is missing expression.`,
164
+ [63]: `<Transition> expects exactly one child element or component.`,
165
+ [64]: `Tags with side effect (<script> and <style>) are ignored in client component templates.`
166
+ };
167
+
168
+ const transformVHtml = (dir, node, context) => {
169
+ const { exp, loc } = dir;
170
+ if (!exp) {
171
+ context.onError(
172
+ createDOMCompilerError(54, loc)
173
+ );
174
+ }
175
+ if (node.children.length) {
176
+ context.onError(
177
+ createDOMCompilerError(55, loc)
178
+ );
179
+ node.children.length = 0;
180
+ }
181
+ return {
182
+ props: [
183
+ compilerCore.createObjectProperty(
184
+ compilerCore.createSimpleExpression(`innerHTML`, true, loc),
185
+ exp || compilerCore.createSimpleExpression("", true)
186
+ )
187
+ ]
188
+ };
189
+ };
190
+
191
+ const transformVText = (dir, node, context) => {
192
+ const { exp, loc } = dir;
193
+ if (!exp) {
194
+ context.onError(
195
+ createDOMCompilerError(56, loc)
196
+ );
197
+ }
198
+ if (node.children.length) {
199
+ context.onError(
200
+ createDOMCompilerError(57, loc)
201
+ );
202
+ node.children.length = 0;
203
+ }
204
+ return {
205
+ props: [
206
+ compilerCore.createObjectProperty(
207
+ compilerCore.createSimpleExpression(`textContent`, true),
208
+ exp ? compilerCore.getConstantType(exp, context) > 0 ? exp : compilerCore.createCallExpression(
209
+ context.helperString(compilerCore.TO_DISPLAY_STRING),
210
+ [exp],
211
+ loc
212
+ ) : compilerCore.createSimpleExpression("", true)
213
+ )
214
+ ]
215
+ };
216
+ };
217
+
218
+ const transformModel = (dir, node, context) => {
219
+ const baseResult = compilerCore.transformModel(dir, node, context);
220
+ if (!baseResult.props.length || node.tagType === 1) {
221
+ return baseResult;
222
+ }
223
+ if (dir.arg) {
224
+ context.onError(
225
+ createDOMCompilerError(
226
+ 59,
227
+ dir.arg.loc
228
+ )
229
+ );
230
+ }
231
+ const { tag } = node;
232
+ const isCustomElement = context.isCustomElement(tag);
233
+ if (tag === "input" || tag === "textarea" || tag === "select" || isCustomElement) {
234
+ let directiveToUse = V_MODEL_TEXT;
235
+ let isInvalidType = false;
236
+ if (tag === "input" || isCustomElement) {
237
+ const type = compilerCore.findProp(node, `type`);
238
+ if (type) {
239
+ if (type.type === 7) {
240
+ directiveToUse = V_MODEL_DYNAMIC;
241
+ } else if (type.value) {
242
+ switch (type.value.content) {
243
+ case "radio":
244
+ directiveToUse = V_MODEL_RADIO;
245
+ break;
246
+ case "checkbox":
247
+ directiveToUse = V_MODEL_CHECKBOX;
248
+ break;
249
+ case "file":
250
+ isInvalidType = true;
251
+ context.onError(
252
+ createDOMCompilerError(
253
+ 60,
254
+ dir.loc
255
+ )
256
+ );
257
+ break;
258
+ }
259
+ }
260
+ } else if (compilerCore.hasDynamicKeyVBind(node)) {
261
+ directiveToUse = V_MODEL_DYNAMIC;
262
+ } else ;
263
+ } else if (tag === "select") {
264
+ directiveToUse = V_MODEL_SELECT;
265
+ } else ;
266
+ if (!isInvalidType) {
267
+ baseResult.needRuntime = context.helper(directiveToUse);
268
+ }
269
+ } else {
270
+ context.onError(
271
+ createDOMCompilerError(
272
+ 58,
273
+ dir.loc
274
+ )
275
+ );
276
+ }
277
+ baseResult.props = baseResult.props.filter(
278
+ (p) => !(p.key.type === 4 && p.key.content === "modelValue")
279
+ );
280
+ return baseResult;
281
+ };
282
+
283
+ const isEventOptionModifier = /* @__PURE__ */ shared.makeMap(`passive,once,capture`);
284
+ const isNonKeyModifier = /* @__PURE__ */ shared.makeMap(
285
+ // event propagation management
286
+ `stop,prevent,self,ctrl,shift,alt,meta,exact,middle`
287
+ );
288
+ const maybeKeyModifier = /* @__PURE__ */ shared.makeMap("left,right");
289
+ const isKeyboardEvent = /* @__PURE__ */ shared.makeMap(`onkeyup,onkeydown,onkeypress`);
290
+ const resolveModifiers = (key, modifiers, context, loc) => {
291
+ const keyModifiers = [];
292
+ const nonKeyModifiers = [];
293
+ const eventOptionModifiers = [];
294
+ for (let i = 0; i < modifiers.length; i++) {
295
+ const modifier = modifiers[i].content;
296
+ if (modifier === "native" && compilerCore.checkCompatEnabled(
297
+ "COMPILER_V_ON_NATIVE",
298
+ context,
299
+ loc
300
+ )) {
301
+ eventOptionModifiers.push(modifier);
302
+ } else if (isEventOptionModifier(modifier)) {
303
+ eventOptionModifiers.push(modifier);
304
+ } else {
305
+ if (maybeKeyModifier(modifier)) {
306
+ if (compilerCore.isStaticExp(key)) {
307
+ if (isKeyboardEvent(key.content.toLowerCase())) {
308
+ keyModifiers.push(modifier);
309
+ } else {
310
+ nonKeyModifiers.push(modifier);
311
+ }
312
+ } else {
313
+ keyModifiers.push(modifier);
314
+ nonKeyModifiers.push(modifier);
315
+ }
316
+ } else {
317
+ if (isNonKeyModifier(modifier)) {
318
+ nonKeyModifiers.push(modifier);
319
+ } else {
320
+ keyModifiers.push(modifier);
321
+ }
322
+ }
323
+ }
324
+ }
325
+ return {
326
+ keyModifiers,
327
+ nonKeyModifiers,
328
+ eventOptionModifiers
329
+ };
330
+ };
331
+ const transformClick = (key, event) => {
332
+ const isStaticClick = compilerCore.isStaticExp(key) && key.content.toLowerCase() === "onclick";
333
+ return isStaticClick ? compilerCore.createSimpleExpression(event, true) : key.type !== 4 ? compilerCore.createCompoundExpression([
334
+ `(`,
335
+ key,
336
+ `) === "onClick" ? "${event}" : (`,
337
+ key,
338
+ `)`
339
+ ]) : key;
340
+ };
341
+ const transformOn = (dir, node, context) => {
342
+ return compilerCore.transformOn(dir, node, context, (baseResult) => {
343
+ const { modifiers } = dir;
344
+ if (!modifiers.length) return baseResult;
345
+ let { key, value: handlerExp } = baseResult.props[0];
346
+ const { keyModifiers, nonKeyModifiers, eventOptionModifiers } = resolveModifiers(key, modifiers, context, dir.loc);
347
+ if (nonKeyModifiers.includes("right")) {
348
+ key = transformClick(key, `onContextmenu`);
349
+ }
350
+ if (nonKeyModifiers.includes("middle")) {
351
+ key = transformClick(key, `onMouseup`);
352
+ }
353
+ if (nonKeyModifiers.length) {
354
+ handlerExp = compilerCore.createCallExpression(context.helper(V_ON_WITH_MODIFIERS), [
355
+ handlerExp,
356
+ JSON.stringify(nonKeyModifiers)
357
+ ]);
358
+ }
359
+ if (keyModifiers.length && // if event name is dynamic, always wrap with keys guard
360
+ (!compilerCore.isStaticExp(key) || isKeyboardEvent(key.content.toLowerCase()))) {
361
+ handlerExp = compilerCore.createCallExpression(context.helper(V_ON_WITH_KEYS), [
362
+ handlerExp,
363
+ JSON.stringify(keyModifiers)
364
+ ]);
365
+ }
366
+ if (eventOptionModifiers.length) {
367
+ const modifierPostfix = eventOptionModifiers.map(shared.capitalize).join("");
368
+ key = compilerCore.isStaticExp(key) ? compilerCore.createSimpleExpression(`${key.content}${modifierPostfix}`, true) : compilerCore.createCompoundExpression([`(`, key, `) + "${modifierPostfix}"`]);
369
+ }
370
+ return {
371
+ props: [compilerCore.createObjectProperty(key, handlerExp)]
372
+ };
373
+ });
374
+ };
375
+
376
+ const transformShow = (dir, node, context) => {
377
+ const { exp, loc } = dir;
378
+ if (!exp) {
379
+ context.onError(
380
+ createDOMCompilerError(62, loc)
381
+ );
382
+ }
383
+ return {
384
+ props: [],
385
+ needRuntime: context.helper(V_SHOW)
386
+ };
387
+ };
388
+
389
+ const expReplaceRE = /__VUE_EXP_START__(.*?)__VUE_EXP_END__/g;
390
+ const stringifyStatic = (children, context, parent) => {
391
+ if (context.scopes.vSlot > 0) {
392
+ return;
393
+ }
394
+ const isParentCached = parent.type === 1 && parent.codegenNode && parent.codegenNode.type === 13 && parent.codegenNode.children && !shared.isArray(parent.codegenNode.children) && parent.codegenNode.children.type === 20;
395
+ let nc = 0;
396
+ let ec = 0;
397
+ const currentChunk = [];
398
+ const stringifyCurrentChunk = (currentIndex) => {
399
+ if (nc >= 20 || ec >= 5) {
400
+ const staticCall = compilerCore.createCallExpression(context.helper(compilerCore.CREATE_STATIC), [
401
+ JSON.stringify(
402
+ currentChunk.map((node) => stringifyNode(node, context)).join("")
403
+ ).replace(expReplaceRE, `" + $1 + "`),
404
+ // the 2nd argument indicates the number of DOM nodes this static vnode
405
+ // will insert / hydrate
406
+ String(currentChunk.length)
407
+ ]);
408
+ const deleteCount = currentChunk.length - 1;
409
+ if (isParentCached) {
410
+ children.splice(
411
+ currentIndex - currentChunk.length,
412
+ currentChunk.length,
413
+ // @ts-expect-error
414
+ staticCall
415
+ );
416
+ } else {
417
+ currentChunk[0].codegenNode.value = staticCall;
418
+ if (currentChunk.length > 1) {
419
+ children.splice(currentIndex - currentChunk.length + 1, deleteCount);
420
+ const cacheIndex = context.cached.indexOf(
421
+ currentChunk[currentChunk.length - 1].codegenNode
422
+ );
423
+ if (cacheIndex > -1) {
424
+ for (let i2 = cacheIndex; i2 < context.cached.length; i2++) {
425
+ const c = context.cached[i2];
426
+ if (c) c.index -= deleteCount;
427
+ }
428
+ context.cached.splice(cacheIndex - deleteCount + 1, deleteCount);
429
+ }
430
+ }
431
+ }
432
+ return deleteCount;
433
+ }
434
+ return 0;
435
+ };
436
+ let i = 0;
437
+ for (; i < children.length; i++) {
438
+ const child = children[i];
439
+ const isCached = isParentCached || getCachedNode(child);
440
+ if (isCached) {
441
+ const result = analyzeNode(child);
442
+ if (result) {
443
+ nc += result[0];
444
+ ec += result[1];
445
+ currentChunk.push(child);
446
+ continue;
447
+ }
448
+ }
449
+ i -= stringifyCurrentChunk(i);
450
+ nc = 0;
451
+ ec = 0;
452
+ currentChunk.length = 0;
453
+ }
454
+ stringifyCurrentChunk(i);
455
+ };
456
+ const getCachedNode = (node) => {
457
+ if ((node.type === 1 && node.tagType === 0 || node.type === 12) && node.codegenNode && node.codegenNode.type === 20) {
458
+ return node.codegenNode;
459
+ }
460
+ };
461
+ const dataAriaRE = /^(?:data|aria)-/;
462
+ const isStringifiableAttr = (name, ns) => {
463
+ return (ns === 0 ? shared.isKnownHtmlAttr(name) : ns === 1 ? shared.isKnownSvgAttr(name) : ns === 2 ? shared.isKnownMathMLAttr(name) : false) || dataAriaRE.test(name);
464
+ };
465
+ const isNonStringifiable = /* @__PURE__ */ shared.makeMap(
466
+ `caption,thead,tr,th,tbody,td,tfoot,colgroup,col`
467
+ );
468
+ function analyzeNode(node) {
469
+ if (node.type === 1 && isNonStringifiable(node.tag)) {
470
+ return false;
471
+ }
472
+ if (node.type === 1 && compilerCore.findDir(node, "once", true)) {
473
+ return false;
474
+ }
475
+ if (node.type === 12) {
476
+ return [1, 0];
477
+ }
478
+ let nc = 1;
479
+ let ec = node.props.length > 0 ? 1 : 0;
480
+ let bailed = false;
481
+ const bail = () => {
482
+ bailed = true;
483
+ return false;
484
+ };
485
+ function walk(node2) {
486
+ const isOptionTag = node2.tag === "option" && node2.ns === 0;
487
+ for (let i = 0; i < node2.props.length; i++) {
488
+ const p = node2.props[i];
489
+ if (p.type === 6 && !isStringifiableAttr(p.name, node2.ns)) {
490
+ return bail();
491
+ }
492
+ if (p.type === 7 && p.name === "bind") {
493
+ if (p.arg && (p.arg.type === 8 || p.arg.isStatic && !isStringifiableAttr(p.arg.content, node2.ns))) {
494
+ return bail();
495
+ }
496
+ if (p.exp && (p.exp.type === 8 || p.exp.constType < 3)) {
497
+ return bail();
498
+ }
499
+ if (isOptionTag && compilerCore.isStaticArgOf(p.arg, "value") && p.exp && !p.exp.isStatic) {
500
+ return bail();
501
+ }
502
+ }
503
+ }
504
+ for (let i = 0; i < node2.children.length; i++) {
505
+ nc++;
506
+ const child = node2.children[i];
507
+ if (child.type === 1) {
508
+ if (child.props.length > 0) {
509
+ ec++;
510
+ }
511
+ walk(child);
512
+ if (bailed) {
513
+ return false;
514
+ }
515
+ }
516
+ }
517
+ return true;
518
+ }
519
+ return walk(node) ? [nc, ec] : false;
520
+ }
521
+ function stringifyNode(node, context) {
522
+ if (shared.isString(node)) {
523
+ return node;
524
+ }
525
+ if (shared.isSymbol(node)) {
526
+ return ``;
527
+ }
528
+ switch (node.type) {
529
+ case 1:
530
+ return stringifyElement(node, context);
531
+ case 2:
532
+ return shared.escapeHtml(node.content);
533
+ case 3:
534
+ return `<!--${shared.escapeHtml(node.content)}-->`;
535
+ case 5:
536
+ return shared.escapeHtml(shared.toDisplayString(evaluateConstant(node.content)));
537
+ case 8:
538
+ return shared.escapeHtml(evaluateConstant(node));
539
+ case 12:
540
+ return stringifyNode(node.content, context);
541
+ default:
542
+ return "";
543
+ }
544
+ }
545
+ function stringifyElement(node, context) {
546
+ let res = `<${node.tag}`;
547
+ let innerHTML = "";
548
+ for (let i = 0; i < node.props.length; i++) {
549
+ const p = node.props[i];
550
+ if (p.type === 6) {
551
+ res += ` ${p.name}`;
552
+ if (p.value) {
553
+ res += `="${shared.escapeHtml(p.value.content)}"`;
554
+ }
555
+ } else if (p.type === 7) {
556
+ if (p.name === "bind") {
557
+ const exp = p.exp;
558
+ if (exp.content[0] === "_") {
559
+ res += ` ${p.arg.content}="__VUE_EXP_START__${exp.content}__VUE_EXP_END__"`;
560
+ continue;
561
+ }
562
+ if (shared.isBooleanAttr(p.arg.content) && exp.content === "false") {
563
+ continue;
564
+ }
565
+ let evaluated = evaluateConstant(exp);
566
+ if (evaluated != null) {
567
+ const arg = p.arg && p.arg.content;
568
+ if (arg === "class") {
569
+ evaluated = shared.normalizeClass(evaluated);
570
+ } else if (arg === "style") {
571
+ evaluated = shared.stringifyStyle(shared.normalizeStyle(evaluated));
572
+ }
573
+ res += ` ${p.arg.content}="${shared.escapeHtml(
574
+ evaluated
575
+ )}"`;
576
+ }
577
+ } else if (p.name === "html") {
578
+ innerHTML = evaluateConstant(p.exp);
579
+ } else if (p.name === "text") {
580
+ innerHTML = shared.escapeHtml(
581
+ shared.toDisplayString(evaluateConstant(p.exp))
582
+ );
583
+ }
584
+ }
585
+ }
586
+ if (context.scopeId) {
587
+ res += ` ${context.scopeId}`;
588
+ }
589
+ res += `>`;
590
+ if (innerHTML) {
591
+ res += innerHTML;
592
+ } else {
593
+ for (let i = 0; i < node.children.length; i++) {
594
+ res += stringifyNode(node.children[i], context);
595
+ }
596
+ }
597
+ if (!shared.isVoidTag(node.tag)) {
598
+ res += `</${node.tag}>`;
599
+ }
600
+ return res;
601
+ }
602
+ function evaluateConstant(exp) {
603
+ if (exp.type === 4) {
604
+ return new Function(`return (${exp.content})`)();
605
+ } else {
606
+ let res = ``;
607
+ exp.children.forEach((c) => {
608
+ if (shared.isString(c) || shared.isSymbol(c)) {
609
+ return;
610
+ }
611
+ if (c.type === 2) {
612
+ res += c.content;
613
+ } else if (c.type === 5) {
614
+ res += shared.toDisplayString(evaluateConstant(c.content));
615
+ } else {
616
+ res += evaluateConstant(c);
617
+ }
618
+ });
619
+ return res;
620
+ }
621
+ }
622
+
623
+ const ignoreSideEffectTags = (node, context) => {
624
+ if (node.type === 1 && node.tagType === 0 && (node.tag === "script" || node.tag === "style")) {
625
+ context.removeNode();
626
+ }
627
+ };
628
+
629
+ const DOMNodeTransforms = [
630
+ transformStyle,
631
+ ...[]
632
+ ];
633
+ const DOMDirectiveTransforms = {
634
+ cloak: compilerCore.noopDirectiveTransform,
635
+ html: transformVHtml,
636
+ text: transformVText,
637
+ model: transformModel,
638
+ // override compiler-core
639
+ on: transformOn,
640
+ // override compiler-core
641
+ show: transformShow
642
+ };
643
+ function compile(src, options = {}) {
644
+ return compilerCore.baseCompile(
645
+ src,
646
+ shared.extend({}, parserOptions, options, {
647
+ nodeTransforms: [
648
+ // ignore <script> and <tag>
649
+ // this is not put inside DOMNodeTransforms because that list is used
650
+ // by compiler-ssr to generate vnode fallback branches
651
+ ignoreSideEffectTags,
652
+ ...DOMNodeTransforms,
653
+ ...options.nodeTransforms || []
654
+ ],
655
+ directiveTransforms: shared.extend(
656
+ {},
657
+ DOMDirectiveTransforms,
658
+ options.directiveTransforms || {}
659
+ ),
660
+ transformHoist: stringifyStatic
661
+ })
662
+ );
663
+ }
664
+ function parse(template, options = {}) {
665
+ return compilerCore.baseParse(template, shared.extend({}, parserOptions, options));
666
+ }
667
+
668
+ exports.DOMDirectiveTransforms = DOMDirectiveTransforms;
669
+ exports.DOMErrorCodes = DOMErrorCodes;
670
+ exports.DOMErrorMessages = DOMErrorMessages;
671
+ exports.DOMNodeTransforms = DOMNodeTransforms;
672
+ exports.TRANSITION = TRANSITION;
673
+ exports.TRANSITION_GROUP = TRANSITION_GROUP;
674
+ exports.V_MODEL_CHECKBOX = V_MODEL_CHECKBOX;
675
+ exports.V_MODEL_DYNAMIC = V_MODEL_DYNAMIC;
676
+ exports.V_MODEL_RADIO = V_MODEL_RADIO;
677
+ exports.V_MODEL_SELECT = V_MODEL_SELECT;
678
+ exports.V_MODEL_TEXT = V_MODEL_TEXT;
679
+ exports.V_ON_WITH_KEYS = V_ON_WITH_KEYS;
680
+ exports.V_ON_WITH_MODIFIERS = V_ON_WITH_MODIFIERS;
681
+ exports.V_SHOW = V_SHOW;
682
+ exports.compile = compile;
683
+ exports.createDOMCompilerError = createDOMCompilerError;
684
+ exports.parse = parse;
685
+ exports.parserOptions = parserOptions;
686
+ exports.transformStyle = transformStyle;
687
+ Object.keys(compilerCore).forEach(function (k) {
688
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) exports[k] = compilerCore[k];
689
+ });