chunk-S6VK5PVK.js 59 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971
  1. import {
  2. BaseTransition,
  3. BaseTransitionPropsValidators,
  4. Comment,
  5. DeprecationTypes,
  6. EffectScope,
  7. ErrorCodes,
  8. ErrorTypeStrings,
  9. Fragment,
  10. KeepAlive,
  11. ReactiveEffect,
  12. Static,
  13. Suspense,
  14. Teleport,
  15. Text,
  16. TrackOpTypes,
  17. TriggerOpTypes,
  18. assertNumber,
  19. callWithAsyncErrorHandling,
  20. callWithErrorHandling,
  21. cloneVNode,
  22. compatUtils,
  23. computed,
  24. createBaseVNode,
  25. createBlock,
  26. createCommentVNode,
  27. createElementBlock,
  28. createHydrationRenderer,
  29. createPropsRestProxy,
  30. createRenderer,
  31. createSlots,
  32. createStaticVNode,
  33. createTextVNode,
  34. createVNode,
  35. customRef,
  36. defineAsyncComponent,
  37. defineComponent,
  38. defineEmits,
  39. defineExpose,
  40. defineModel,
  41. defineOptions,
  42. defineProps,
  43. defineSlots,
  44. devtools,
  45. effect,
  46. effectScope,
  47. getCurrentInstance,
  48. getCurrentScope,
  49. getTransitionRawChildren,
  50. guardReactiveProps,
  51. h,
  52. handleError,
  53. hasInjectionContext,
  54. initCustomFormatter,
  55. init_runtime_core_esm_bundler,
  56. inject,
  57. isMemoSame,
  58. isProxy,
  59. isReactive,
  60. isReadonly,
  61. isRef,
  62. isRuntimeOnly,
  63. isShallow,
  64. isVNode,
  65. markRaw,
  66. mergeDefaults,
  67. mergeModels,
  68. mergeProps,
  69. nextTick,
  70. onActivated,
  71. onBeforeMount,
  72. onBeforeUnmount,
  73. onBeforeUpdate,
  74. onDeactivated,
  75. onErrorCaptured,
  76. onMounted,
  77. onRenderTracked,
  78. onRenderTriggered,
  79. onScopeDispose,
  80. onServerPrefetch,
  81. onUnmounted,
  82. onUpdated,
  83. openBlock,
  84. popScopeId,
  85. provide,
  86. proxyRefs,
  87. pushScopeId,
  88. queuePostFlushCb,
  89. reactive,
  90. readonly,
  91. ref,
  92. registerRuntimeCompiler,
  93. renderList,
  94. renderSlot,
  95. resolveComponent,
  96. resolveDirective,
  97. resolveDynamicComponent,
  98. resolveFilter,
  99. resolveTransitionHooks,
  100. setBlockTracking,
  101. setDevtoolsHook,
  102. setTransitionHooks,
  103. shallowReactive,
  104. shallowReadonly,
  105. shallowRef,
  106. ssrContextKey,
  107. ssrUtils,
  108. stop,
  109. toHandlers,
  110. toRaw,
  111. toRef,
  112. toRefs,
  113. toValue,
  114. transformVNodeArgs,
  115. triggerRef,
  116. unref,
  117. useAttrs,
  118. useModel,
  119. useSSRContext,
  120. useSlots,
  121. useTransitionState,
  122. version,
  123. warn,
  124. watch,
  125. watchEffect,
  126. watchPostEffect,
  127. watchSyncEffect,
  128. withAsyncContext,
  129. withCtx,
  130. withDefaults,
  131. withDirectives,
  132. withMemo,
  133. withScopeId
  134. } from "./chunk-YVHZHMSQ.js";
  135. import {
  136. EMPTY_OBJ,
  137. NOOP,
  138. camelize,
  139. capitalize,
  140. extend,
  141. hyphenate,
  142. includeBooleanAttr,
  143. init_shared_esm_bundler,
  144. invokeArrayFns,
  145. isArray,
  146. isFunction,
  147. isHTMLTag,
  148. isMathMLTag,
  149. isModelListener,
  150. isObject,
  151. isOn,
  152. isSVGTag,
  153. isSet,
  154. isSpecialBooleanAttr,
  155. isString,
  156. looseEqual,
  157. looseIndexOf,
  158. looseToNumber,
  159. normalizeClass,
  160. normalizeProps,
  161. normalizeStyle,
  162. toDisplayString,
  163. toHandlerKey,
  164. toNumber
  165. } from "./chunk-VNBICN6T.js";
  166. import {
  167. __esm,
  168. __export
  169. } from "./chunk-2LSFTFF7.js";
  170. // node_modules/.pnpm/@vue+runtime-dom@3.4.27/node_modules/@vue/runtime-dom/dist/runtime-dom.esm-bundler.js
  171. var runtime_dom_esm_bundler_exports = {};
  172. __export(runtime_dom_esm_bundler_exports, {
  173. BaseTransition: () => BaseTransition,
  174. BaseTransitionPropsValidators: () => BaseTransitionPropsValidators,
  175. Comment: () => Comment,
  176. DeprecationTypes: () => DeprecationTypes,
  177. EffectScope: () => EffectScope,
  178. ErrorCodes: () => ErrorCodes,
  179. ErrorTypeStrings: () => ErrorTypeStrings,
  180. Fragment: () => Fragment,
  181. KeepAlive: () => KeepAlive,
  182. ReactiveEffect: () => ReactiveEffect,
  183. Static: () => Static,
  184. Suspense: () => Suspense,
  185. Teleport: () => Teleport,
  186. Text: () => Text,
  187. TrackOpTypes: () => TrackOpTypes,
  188. Transition: () => Transition,
  189. TransitionGroup: () => TransitionGroup,
  190. TriggerOpTypes: () => TriggerOpTypes,
  191. VueElement: () => VueElement,
  192. assertNumber: () => assertNumber,
  193. callWithAsyncErrorHandling: () => callWithAsyncErrorHandling,
  194. callWithErrorHandling: () => callWithErrorHandling,
  195. camelize: () => camelize,
  196. capitalize: () => capitalize,
  197. cloneVNode: () => cloneVNode,
  198. compatUtils: () => compatUtils,
  199. computed: () => computed,
  200. createApp: () => createApp,
  201. createBlock: () => createBlock,
  202. createCommentVNode: () => createCommentVNode,
  203. createElementBlock: () => createElementBlock,
  204. createElementVNode: () => createBaseVNode,
  205. createHydrationRenderer: () => createHydrationRenderer,
  206. createPropsRestProxy: () => createPropsRestProxy,
  207. createRenderer: () => createRenderer,
  208. createSSRApp: () => createSSRApp,
  209. createSlots: () => createSlots,
  210. createStaticVNode: () => createStaticVNode,
  211. createTextVNode: () => createTextVNode,
  212. createVNode: () => createVNode,
  213. customRef: () => customRef,
  214. defineAsyncComponent: () => defineAsyncComponent,
  215. defineComponent: () => defineComponent,
  216. defineCustomElement: () => defineCustomElement,
  217. defineEmits: () => defineEmits,
  218. defineExpose: () => defineExpose,
  219. defineModel: () => defineModel,
  220. defineOptions: () => defineOptions,
  221. defineProps: () => defineProps,
  222. defineSSRCustomElement: () => defineSSRCustomElement,
  223. defineSlots: () => defineSlots,
  224. devtools: () => devtools,
  225. effect: () => effect,
  226. effectScope: () => effectScope,
  227. getCurrentInstance: () => getCurrentInstance,
  228. getCurrentScope: () => getCurrentScope,
  229. getTransitionRawChildren: () => getTransitionRawChildren,
  230. guardReactiveProps: () => guardReactiveProps,
  231. h: () => h,
  232. handleError: () => handleError,
  233. hasInjectionContext: () => hasInjectionContext,
  234. hydrate: () => hydrate,
  235. initCustomFormatter: () => initCustomFormatter,
  236. initDirectivesForSSR: () => initDirectivesForSSR,
  237. inject: () => inject,
  238. isMemoSame: () => isMemoSame,
  239. isProxy: () => isProxy,
  240. isReactive: () => isReactive,
  241. isReadonly: () => isReadonly,
  242. isRef: () => isRef,
  243. isRuntimeOnly: () => isRuntimeOnly,
  244. isShallow: () => isShallow,
  245. isVNode: () => isVNode,
  246. markRaw: () => markRaw,
  247. mergeDefaults: () => mergeDefaults,
  248. mergeModels: () => mergeModels,
  249. mergeProps: () => mergeProps,
  250. nextTick: () => nextTick,
  251. normalizeClass: () => normalizeClass,
  252. normalizeProps: () => normalizeProps,
  253. normalizeStyle: () => normalizeStyle,
  254. onActivated: () => onActivated,
  255. onBeforeMount: () => onBeforeMount,
  256. onBeforeUnmount: () => onBeforeUnmount,
  257. onBeforeUpdate: () => onBeforeUpdate,
  258. onDeactivated: () => onDeactivated,
  259. onErrorCaptured: () => onErrorCaptured,
  260. onMounted: () => onMounted,
  261. onRenderTracked: () => onRenderTracked,
  262. onRenderTriggered: () => onRenderTriggered,
  263. onScopeDispose: () => onScopeDispose,
  264. onServerPrefetch: () => onServerPrefetch,
  265. onUnmounted: () => onUnmounted,
  266. onUpdated: () => onUpdated,
  267. openBlock: () => openBlock,
  268. popScopeId: () => popScopeId,
  269. provide: () => provide,
  270. proxyRefs: () => proxyRefs,
  271. pushScopeId: () => pushScopeId,
  272. queuePostFlushCb: () => queuePostFlushCb,
  273. reactive: () => reactive,
  274. readonly: () => readonly,
  275. ref: () => ref,
  276. registerRuntimeCompiler: () => registerRuntimeCompiler,
  277. render: () => render,
  278. renderList: () => renderList,
  279. renderSlot: () => renderSlot,
  280. resolveComponent: () => resolveComponent,
  281. resolveDirective: () => resolveDirective,
  282. resolveDynamicComponent: () => resolveDynamicComponent,
  283. resolveFilter: () => resolveFilter,
  284. resolveTransitionHooks: () => resolveTransitionHooks,
  285. setBlockTracking: () => setBlockTracking,
  286. setDevtoolsHook: () => setDevtoolsHook,
  287. setTransitionHooks: () => setTransitionHooks,
  288. shallowReactive: () => shallowReactive,
  289. shallowReadonly: () => shallowReadonly,
  290. shallowRef: () => shallowRef,
  291. ssrContextKey: () => ssrContextKey,
  292. ssrUtils: () => ssrUtils,
  293. stop: () => stop,
  294. toDisplayString: () => toDisplayString,
  295. toHandlerKey: () => toHandlerKey,
  296. toHandlers: () => toHandlers,
  297. toRaw: () => toRaw,
  298. toRef: () => toRef,
  299. toRefs: () => toRefs,
  300. toValue: () => toValue,
  301. transformVNodeArgs: () => transformVNodeArgs,
  302. triggerRef: () => triggerRef,
  303. unref: () => unref,
  304. useAttrs: () => useAttrs,
  305. useCssModule: () => useCssModule,
  306. useCssVars: () => useCssVars,
  307. useModel: () => useModel,
  308. useSSRContext: () => useSSRContext,
  309. useSlots: () => useSlots,
  310. useTransitionState: () => useTransitionState,
  311. vModelCheckbox: () => vModelCheckbox,
  312. vModelDynamic: () => vModelDynamic,
  313. vModelRadio: () => vModelRadio,
  314. vModelSelect: () => vModelSelect,
  315. vModelText: () => vModelText,
  316. vShow: () => vShow,
  317. version: () => version,
  318. warn: () => warn,
  319. watch: () => watch,
  320. watchEffect: () => watchEffect,
  321. watchPostEffect: () => watchPostEffect,
  322. watchSyncEffect: () => watchSyncEffect,
  323. withAsyncContext: () => withAsyncContext,
  324. withCtx: () => withCtx,
  325. withDefaults: () => withDefaults,
  326. withDirectives: () => withDirectives,
  327. withKeys: () => withKeys,
  328. withMemo: () => withMemo,
  329. withModifiers: () => withModifiers,
  330. withScopeId: () => withScopeId
  331. });
  332. function resolveTransitionProps(rawProps) {
  333. const baseProps = {};
  334. for (const key in rawProps) {
  335. if (!(key in DOMTransitionPropsValidators)) {
  336. baseProps[key] = rawProps[key];
  337. }
  338. }
  339. if (rawProps.css === false) {
  340. return baseProps;
  341. }
  342. const {
  343. name = "v",
  344. type,
  345. duration,
  346. enterFromClass = `${name}-enter-from`,
  347. enterActiveClass = `${name}-enter-active`,
  348. enterToClass = `${name}-enter-to`,
  349. appearFromClass = enterFromClass,
  350. appearActiveClass = enterActiveClass,
  351. appearToClass = enterToClass,
  352. leaveFromClass = `${name}-leave-from`,
  353. leaveActiveClass = `${name}-leave-active`,
  354. leaveToClass = `${name}-leave-to`
  355. } = rawProps;
  356. const durations = normalizeDuration(duration);
  357. const enterDuration = durations && durations[0];
  358. const leaveDuration = durations && durations[1];
  359. const {
  360. onBeforeEnter,
  361. onEnter,
  362. onEnterCancelled,
  363. onLeave,
  364. onLeaveCancelled,
  365. onBeforeAppear = onBeforeEnter,
  366. onAppear = onEnter,
  367. onAppearCancelled = onEnterCancelled
  368. } = baseProps;
  369. const finishEnter = (el, isAppear, done) => {
  370. removeTransitionClass(el, isAppear ? appearToClass : enterToClass);
  371. removeTransitionClass(el, isAppear ? appearActiveClass : enterActiveClass);
  372. done && done();
  373. };
  374. const finishLeave = (el, done) => {
  375. el._isLeaving = false;
  376. removeTransitionClass(el, leaveFromClass);
  377. removeTransitionClass(el, leaveToClass);
  378. removeTransitionClass(el, leaveActiveClass);
  379. done && done();
  380. };
  381. const makeEnterHook = (isAppear) => {
  382. return (el, done) => {
  383. const hook = isAppear ? onAppear : onEnter;
  384. const resolve = () => finishEnter(el, isAppear, done);
  385. callHook(hook, [el, resolve]);
  386. nextFrame(() => {
  387. removeTransitionClass(el, isAppear ? appearFromClass : enterFromClass);
  388. addTransitionClass(el, isAppear ? appearToClass : enterToClass);
  389. if (!hasExplicitCallback(hook)) {
  390. whenTransitionEnds(el, type, enterDuration, resolve);
  391. }
  392. });
  393. };
  394. };
  395. return extend(baseProps, {
  396. onBeforeEnter(el) {
  397. callHook(onBeforeEnter, [el]);
  398. addTransitionClass(el, enterFromClass);
  399. addTransitionClass(el, enterActiveClass);
  400. },
  401. onBeforeAppear(el) {
  402. callHook(onBeforeAppear, [el]);
  403. addTransitionClass(el, appearFromClass);
  404. addTransitionClass(el, appearActiveClass);
  405. },
  406. onEnter: makeEnterHook(false),
  407. onAppear: makeEnterHook(true),
  408. onLeave(el, done) {
  409. el._isLeaving = true;
  410. const resolve = () => finishLeave(el, done);
  411. addTransitionClass(el, leaveFromClass);
  412. addTransitionClass(el, leaveActiveClass);
  413. forceReflow();
  414. nextFrame(() => {
  415. if (!el._isLeaving) {
  416. return;
  417. }
  418. removeTransitionClass(el, leaveFromClass);
  419. addTransitionClass(el, leaveToClass);
  420. if (!hasExplicitCallback(onLeave)) {
  421. whenTransitionEnds(el, type, leaveDuration, resolve);
  422. }
  423. });
  424. callHook(onLeave, [el, resolve]);
  425. },
  426. onEnterCancelled(el) {
  427. finishEnter(el, false);
  428. callHook(onEnterCancelled, [el]);
  429. },
  430. onAppearCancelled(el) {
  431. finishEnter(el, true);
  432. callHook(onAppearCancelled, [el]);
  433. },
  434. onLeaveCancelled(el) {
  435. finishLeave(el);
  436. callHook(onLeaveCancelled, [el]);
  437. }
  438. });
  439. }
  440. function normalizeDuration(duration) {
  441. if (duration == null) {
  442. return null;
  443. } else if (isObject(duration)) {
  444. return [NumberOf(duration.enter), NumberOf(duration.leave)];
  445. } else {
  446. const n = NumberOf(duration);
  447. return [n, n];
  448. }
  449. }
  450. function NumberOf(val) {
  451. const res = toNumber(val);
  452. if (true) {
  453. assertNumber(res, "<transition> explicit duration");
  454. }
  455. return res;
  456. }
  457. function addTransitionClass(el, cls) {
  458. cls.split(/\s+/).forEach((c) => c && el.classList.add(c));
  459. (el[vtcKey] || (el[vtcKey] = /* @__PURE__ */ new Set())).add(cls);
  460. }
  461. function removeTransitionClass(el, cls) {
  462. cls.split(/\s+/).forEach((c) => c && el.classList.remove(c));
  463. const _vtc = el[vtcKey];
  464. if (_vtc) {
  465. _vtc.delete(cls);
  466. if (!_vtc.size) {
  467. el[vtcKey] = void 0;
  468. }
  469. }
  470. }
  471. function nextFrame(cb) {
  472. requestAnimationFrame(() => {
  473. requestAnimationFrame(cb);
  474. });
  475. }
  476. function whenTransitionEnds(el, expectedType, explicitTimeout, resolve) {
  477. const id = el._endId = ++endId;
  478. const resolveIfNotStale = () => {
  479. if (id === el._endId) {
  480. resolve();
  481. }
  482. };
  483. if (explicitTimeout) {
  484. return setTimeout(resolveIfNotStale, explicitTimeout);
  485. }
  486. const { type, timeout, propCount } = getTransitionInfo(el, expectedType);
  487. if (!type) {
  488. return resolve();
  489. }
  490. const endEvent = type + "end";
  491. let ended = 0;
  492. const end = () => {
  493. el.removeEventListener(endEvent, onEnd);
  494. resolveIfNotStale();
  495. };
  496. const onEnd = (e) => {
  497. if (e.target === el && ++ended >= propCount) {
  498. end();
  499. }
  500. };
  501. setTimeout(() => {
  502. if (ended < propCount) {
  503. end();
  504. }
  505. }, timeout + 1);
  506. el.addEventListener(endEvent, onEnd);
  507. }
  508. function getTransitionInfo(el, expectedType) {
  509. const styles = window.getComputedStyle(el);
  510. const getStyleProperties = (key) => (styles[key] || "").split(", ");
  511. const transitionDelays = getStyleProperties(`${TRANSITION}Delay`);
  512. const transitionDurations = getStyleProperties(`${TRANSITION}Duration`);
  513. const transitionTimeout = getTimeout(transitionDelays, transitionDurations);
  514. const animationDelays = getStyleProperties(`${ANIMATION}Delay`);
  515. const animationDurations = getStyleProperties(`${ANIMATION}Duration`);
  516. const animationTimeout = getTimeout(animationDelays, animationDurations);
  517. let type = null;
  518. let timeout = 0;
  519. let propCount = 0;
  520. if (expectedType === TRANSITION) {
  521. if (transitionTimeout > 0) {
  522. type = TRANSITION;
  523. timeout = transitionTimeout;
  524. propCount = transitionDurations.length;
  525. }
  526. } else if (expectedType === ANIMATION) {
  527. if (animationTimeout > 0) {
  528. type = ANIMATION;
  529. timeout = animationTimeout;
  530. propCount = animationDurations.length;
  531. }
  532. } else {
  533. timeout = Math.max(transitionTimeout, animationTimeout);
  534. type = timeout > 0 ? transitionTimeout > animationTimeout ? TRANSITION : ANIMATION : null;
  535. propCount = type ? type === TRANSITION ? transitionDurations.length : animationDurations.length : 0;
  536. }
  537. const hasTransform = type === TRANSITION && /\b(transform|all)(,|$)/.test(
  538. getStyleProperties(`${TRANSITION}Property`).toString()
  539. );
  540. return {
  541. type,
  542. timeout,
  543. propCount,
  544. hasTransform
  545. };
  546. }
  547. function getTimeout(delays, durations) {
  548. while (delays.length < durations.length) {
  549. delays = delays.concat(delays);
  550. }
  551. return Math.max(...durations.map((d, i) => toMs(d) + toMs(delays[i])));
  552. }
  553. function toMs(s) {
  554. if (s === "auto")
  555. return 0;
  556. return Number(s.slice(0, -1).replace(",", ".")) * 1e3;
  557. }
  558. function forceReflow() {
  559. return document.body.offsetHeight;
  560. }
  561. function patchClass(el, value, isSVG) {
  562. const transitionClasses = el[vtcKey];
  563. if (transitionClasses) {
  564. value = (value ? [value, ...transitionClasses] : [...transitionClasses]).join(" ");
  565. }
  566. if (value == null) {
  567. el.removeAttribute("class");
  568. } else if (isSVG) {
  569. el.setAttribute("class", value);
  570. } else {
  571. el.className = value;
  572. }
  573. }
  574. function setDisplay(el, value) {
  575. el.style.display = value ? el[vShowOriginalDisplay] : "none";
  576. el[vShowHidden] = !value;
  577. }
  578. function initVShowForSSR() {
  579. vShow.getSSRProps = ({ value }) => {
  580. if (!value) {
  581. return { style: { display: "none" } };
  582. }
  583. };
  584. }
  585. function useCssVars(getter) {
  586. const instance = getCurrentInstance();
  587. if (!instance) {
  588. warn(`useCssVars is called without current active component instance.`);
  589. return;
  590. }
  591. const updateTeleports = instance.ut = (vars = getter(instance.proxy)) => {
  592. Array.from(
  593. document.querySelectorAll(`[data-v-owner="${instance.uid}"]`)
  594. ).forEach((node) => setVarsOnNode(node, vars));
  595. };
  596. if (true) {
  597. instance.getCssVars = () => getter(instance.proxy);
  598. }
  599. const setVars = () => {
  600. const vars = getter(instance.proxy);
  601. setVarsOnVNode(instance.subTree, vars);
  602. updateTeleports(vars);
  603. };
  604. onMounted(() => {
  605. watchPostEffect(setVars);
  606. const ob = new MutationObserver(setVars);
  607. ob.observe(instance.subTree.el.parentNode, { childList: true });
  608. onUnmounted(() => ob.disconnect());
  609. });
  610. }
  611. function setVarsOnVNode(vnode, vars) {
  612. if (vnode.shapeFlag & 128) {
  613. const suspense = vnode.suspense;
  614. vnode = suspense.activeBranch;
  615. if (suspense.pendingBranch && !suspense.isHydrating) {
  616. suspense.effects.push(() => {
  617. setVarsOnVNode(suspense.activeBranch, vars);
  618. });
  619. }
  620. }
  621. while (vnode.component) {
  622. vnode = vnode.component.subTree;
  623. }
  624. if (vnode.shapeFlag & 1 && vnode.el) {
  625. setVarsOnNode(vnode.el, vars);
  626. } else if (vnode.type === Fragment) {
  627. vnode.children.forEach((c) => setVarsOnVNode(c, vars));
  628. } else if (vnode.type === Static) {
  629. let { el, anchor } = vnode;
  630. while (el) {
  631. setVarsOnNode(el, vars);
  632. if (el === anchor)
  633. break;
  634. el = el.nextSibling;
  635. }
  636. }
  637. }
  638. function setVarsOnNode(el, vars) {
  639. if (el.nodeType === 1) {
  640. const style = el.style;
  641. let cssText = "";
  642. for (const key in vars) {
  643. style.setProperty(`--${key}`, vars[key]);
  644. cssText += `--${key}: ${vars[key]};`;
  645. }
  646. style[CSS_VAR_TEXT] = cssText;
  647. }
  648. }
  649. function patchStyle(el, prev, next) {
  650. const style = el.style;
  651. const isCssString = isString(next);
  652. let hasControlledDisplay = false;
  653. if (next && !isCssString) {
  654. if (prev) {
  655. if (!isString(prev)) {
  656. for (const key in prev) {
  657. if (next[key] == null) {
  658. setStyle(style, key, "");
  659. }
  660. }
  661. } else {
  662. for (const prevStyle of prev.split(";")) {
  663. const key = prevStyle.slice(0, prevStyle.indexOf(":")).trim();
  664. if (next[key] == null) {
  665. setStyle(style, key, "");
  666. }
  667. }
  668. }
  669. }
  670. for (const key in next) {
  671. if (key === "display") {
  672. hasControlledDisplay = true;
  673. }
  674. setStyle(style, key, next[key]);
  675. }
  676. } else {
  677. if (isCssString) {
  678. if (prev !== next) {
  679. const cssVarText = style[CSS_VAR_TEXT];
  680. if (cssVarText) {
  681. next += ";" + cssVarText;
  682. }
  683. style.cssText = next;
  684. hasControlledDisplay = displayRE.test(next);
  685. }
  686. } else if (prev) {
  687. el.removeAttribute("style");
  688. }
  689. }
  690. if (vShowOriginalDisplay in el) {
  691. el[vShowOriginalDisplay] = hasControlledDisplay ? style.display : "";
  692. if (el[vShowHidden]) {
  693. style.display = "none";
  694. }
  695. }
  696. }
  697. function setStyle(style, name, val) {
  698. if (isArray(val)) {
  699. val.forEach((v) => setStyle(style, name, v));
  700. } else {
  701. if (val == null)
  702. val = "";
  703. if (true) {
  704. if (semicolonRE.test(val)) {
  705. warn(
  706. `Unexpected semicolon at the end of '${name}' style value: '${val}'`
  707. );
  708. }
  709. }
  710. if (name.startsWith("--")) {
  711. style.setProperty(name, val);
  712. } else {
  713. const prefixed = autoPrefix(style, name);
  714. if (importantRE.test(val)) {
  715. style.setProperty(
  716. hyphenate(prefixed),
  717. val.replace(importantRE, ""),
  718. "important"
  719. );
  720. } else {
  721. style[prefixed] = val;
  722. }
  723. }
  724. }
  725. }
  726. function autoPrefix(style, rawName) {
  727. const cached = prefixCache[rawName];
  728. if (cached) {
  729. return cached;
  730. }
  731. let name = camelize(rawName);
  732. if (name !== "filter" && name in style) {
  733. return prefixCache[rawName] = name;
  734. }
  735. name = capitalize(name);
  736. for (let i = 0; i < prefixes.length; i++) {
  737. const prefixed = prefixes[i] + name;
  738. if (prefixed in style) {
  739. return prefixCache[rawName] = prefixed;
  740. }
  741. }
  742. return rawName;
  743. }
  744. function patchAttr(el, key, value, isSVG, instance) {
  745. if (isSVG && key.startsWith("xlink:")) {
  746. if (value == null) {
  747. el.removeAttributeNS(xlinkNS, key.slice(6, key.length));
  748. } else {
  749. el.setAttributeNS(xlinkNS, key, value);
  750. }
  751. } else {
  752. const isBoolean = isSpecialBooleanAttr(key);
  753. if (value == null || isBoolean && !includeBooleanAttr(value)) {
  754. el.removeAttribute(key);
  755. } else {
  756. el.setAttribute(key, isBoolean ? "" : value);
  757. }
  758. }
  759. }
  760. function patchDOMProp(el, key, value, prevChildren, parentComponent, parentSuspense, unmountChildren) {
  761. if (key === "innerHTML" || key === "textContent") {
  762. if (prevChildren) {
  763. unmountChildren(prevChildren, parentComponent, parentSuspense);
  764. }
  765. el[key] = value == null ? "" : value;
  766. return;
  767. }
  768. const tag = el.tagName;
  769. if (key === "value" && tag !== "PROGRESS" && // custom elements may use _value internally
  770. !tag.includes("-")) {
  771. const oldValue = tag === "OPTION" ? el.getAttribute("value") || "" : el.value;
  772. const newValue = value == null ? "" : value;
  773. if (oldValue !== newValue || !("_value" in el)) {
  774. el.value = newValue;
  775. }
  776. if (value == null) {
  777. el.removeAttribute(key);
  778. }
  779. el._value = value;
  780. return;
  781. }
  782. let needRemove = false;
  783. if (value === "" || value == null) {
  784. const type = typeof el[key];
  785. if (type === "boolean") {
  786. value = includeBooleanAttr(value);
  787. } else if (value == null && type === "string") {
  788. value = "";
  789. needRemove = true;
  790. } else if (type === "number") {
  791. value = 0;
  792. needRemove = true;
  793. }
  794. }
  795. try {
  796. el[key] = value;
  797. } catch (e) {
  798. if (!needRemove) {
  799. warn(
  800. `Failed setting prop "${key}" on <${tag.toLowerCase()}>: value ${value} is invalid.`,
  801. e
  802. );
  803. }
  804. }
  805. needRemove && el.removeAttribute(key);
  806. }
  807. function addEventListener(el, event, handler, options) {
  808. el.addEventListener(event, handler, options);
  809. }
  810. function removeEventListener(el, event, handler, options) {
  811. el.removeEventListener(event, handler, options);
  812. }
  813. function patchEvent(el, rawName, prevValue, nextValue, instance = null) {
  814. const invokers = el[veiKey] || (el[veiKey] = {});
  815. const existingInvoker = invokers[rawName];
  816. if (nextValue && existingInvoker) {
  817. existingInvoker.value = true ? sanitizeEventValue(nextValue, rawName) : nextValue;
  818. } else {
  819. const [name, options] = parseName(rawName);
  820. if (nextValue) {
  821. const invoker = invokers[rawName] = createInvoker(
  822. true ? sanitizeEventValue(nextValue, rawName) : nextValue,
  823. instance
  824. );
  825. addEventListener(el, name, invoker, options);
  826. } else if (existingInvoker) {
  827. removeEventListener(el, name, existingInvoker, options);
  828. invokers[rawName] = void 0;
  829. }
  830. }
  831. }
  832. function parseName(name) {
  833. let options;
  834. if (optionsModifierRE.test(name)) {
  835. options = {};
  836. let m;
  837. while (m = name.match(optionsModifierRE)) {
  838. name = name.slice(0, name.length - m[0].length);
  839. options[m[0].toLowerCase()] = true;
  840. }
  841. }
  842. const event = name[2] === ":" ? name.slice(3) : hyphenate(name.slice(2));
  843. return [event, options];
  844. }
  845. function createInvoker(initialValue, instance) {
  846. const invoker = (e) => {
  847. if (!e._vts) {
  848. e._vts = Date.now();
  849. } else if (e._vts <= invoker.attached) {
  850. return;
  851. }
  852. callWithAsyncErrorHandling(
  853. patchStopImmediatePropagation(e, invoker.value),
  854. instance,
  855. 5,
  856. [e]
  857. );
  858. };
  859. invoker.value = initialValue;
  860. invoker.attached = getNow();
  861. return invoker;
  862. }
  863. function sanitizeEventValue(value, propName) {
  864. if (isFunction(value) || isArray(value)) {
  865. return value;
  866. }
  867. warn(
  868. `Wrong type passed as event handler to ${propName} - did you forget @ or : in front of your prop?
  869. Expected function or array of functions, received type ${typeof value}.`
  870. );
  871. return NOOP;
  872. }
  873. function patchStopImmediatePropagation(e, value) {
  874. if (isArray(value)) {
  875. const originalStop = e.stopImmediatePropagation;
  876. e.stopImmediatePropagation = () => {
  877. originalStop.call(e);
  878. e._stopped = true;
  879. };
  880. return value.map(
  881. (fn) => (e2) => !e2._stopped && fn && fn(e2)
  882. );
  883. } else {
  884. return value;
  885. }
  886. }
  887. function shouldSetAsProp(el, key, value, isSVG) {
  888. if (isSVG) {
  889. if (key === "innerHTML" || key === "textContent") {
  890. return true;
  891. }
  892. if (key in el && isNativeOn(key) && isFunction(value)) {
  893. return true;
  894. }
  895. return false;
  896. }
  897. if (key === "spellcheck" || key === "draggable" || key === "translate") {
  898. return false;
  899. }
  900. if (key === "form") {
  901. return false;
  902. }
  903. if (key === "list" && el.tagName === "INPUT") {
  904. return false;
  905. }
  906. if (key === "type" && el.tagName === "TEXTAREA") {
  907. return false;
  908. }
  909. if (key === "width" || key === "height") {
  910. const tag = el.tagName;
  911. if (tag === "IMG" || tag === "VIDEO" || tag === "CANVAS" || tag === "SOURCE") {
  912. return false;
  913. }
  914. }
  915. if (isNativeOn(key) && isString(value)) {
  916. return false;
  917. }
  918. return key in el;
  919. }
  920. function defineCustomElement(options, hydrate2) {
  921. const Comp = defineComponent(options);
  922. class VueCustomElement extends VueElement {
  923. constructor(initialProps) {
  924. super(Comp, initialProps, hydrate2);
  925. }
  926. }
  927. VueCustomElement.def = Comp;
  928. return VueCustomElement;
  929. }
  930. function useCssModule(name = "$style") {
  931. {
  932. const instance = getCurrentInstance();
  933. if (!instance) {
  934. warn(`useCssModule must be called inside setup()`);
  935. return EMPTY_OBJ;
  936. }
  937. const modules = instance.type.__cssModules;
  938. if (!modules) {
  939. warn(`Current instance does not have CSS modules injected.`);
  940. return EMPTY_OBJ;
  941. }
  942. const mod = modules[name];
  943. if (!mod) {
  944. warn(`Current instance does not have CSS module named "${name}".`);
  945. return EMPTY_OBJ;
  946. }
  947. return mod;
  948. }
  949. }
  950. function callPendingCbs(c) {
  951. const el = c.el;
  952. if (el[moveCbKey]) {
  953. el[moveCbKey]();
  954. }
  955. if (el[enterCbKey]) {
  956. el[enterCbKey]();
  957. }
  958. }
  959. function recordPosition(c) {
  960. newPositionMap.set(c, c.el.getBoundingClientRect());
  961. }
  962. function applyTranslation(c) {
  963. const oldPos = positionMap.get(c);
  964. const newPos = newPositionMap.get(c);
  965. const dx = oldPos.left - newPos.left;
  966. const dy = oldPos.top - newPos.top;
  967. if (dx || dy) {
  968. const s = c.el.style;
  969. s.transform = s.webkitTransform = `translate(${dx}px,${dy}px)`;
  970. s.transitionDuration = "0s";
  971. return c;
  972. }
  973. }
  974. function hasCSSTransform(el, root, moveClass) {
  975. const clone = el.cloneNode();
  976. const _vtc = el[vtcKey];
  977. if (_vtc) {
  978. _vtc.forEach((cls) => {
  979. cls.split(/\s+/).forEach((c) => c && clone.classList.remove(c));
  980. });
  981. }
  982. moveClass.split(/\s+/).forEach((c) => c && clone.classList.add(c));
  983. clone.style.display = "none";
  984. const container = root.nodeType === 1 ? root : root.parentNode;
  985. container.appendChild(clone);
  986. const { hasTransform } = getTransitionInfo(clone);
  987. container.removeChild(clone);
  988. return hasTransform;
  989. }
  990. function onCompositionStart(e) {
  991. e.target.composing = true;
  992. }
  993. function onCompositionEnd(e) {
  994. const target = e.target;
  995. if (target.composing) {
  996. target.composing = false;
  997. target.dispatchEvent(new Event("input"));
  998. }
  999. }
  1000. function setChecked(el, { value, oldValue }, vnode) {
  1001. el._modelValue = value;
  1002. if (isArray(value)) {
  1003. el.checked = looseIndexOf(value, vnode.props.value) > -1;
  1004. } else if (isSet(value)) {
  1005. el.checked = value.has(vnode.props.value);
  1006. } else if (value !== oldValue) {
  1007. el.checked = looseEqual(value, getCheckboxValue(el, true));
  1008. }
  1009. }
  1010. function setSelected(el, value, number) {
  1011. const isMultiple = el.multiple;
  1012. const isArrayValue = isArray(value);
  1013. if (isMultiple && !isArrayValue && !isSet(value)) {
  1014. warn(
  1015. `<select multiple v-model> expects an Array or Set value for its binding, but got ${Object.prototype.toString.call(value).slice(8, -1)}.`
  1016. );
  1017. return;
  1018. }
  1019. for (let i = 0, l = el.options.length; i < l; i++) {
  1020. const option = el.options[i];
  1021. const optionValue = getValue(option);
  1022. if (isMultiple) {
  1023. if (isArrayValue) {
  1024. const optionType = typeof optionValue;
  1025. if (optionType === "string" || optionType === "number") {
  1026. option.selected = value.some((v) => String(v) === String(optionValue));
  1027. } else {
  1028. option.selected = looseIndexOf(value, optionValue) > -1;
  1029. }
  1030. } else {
  1031. option.selected = value.has(optionValue);
  1032. }
  1033. } else if (looseEqual(getValue(option), value)) {
  1034. if (el.selectedIndex !== i)
  1035. el.selectedIndex = i;
  1036. return;
  1037. }
  1038. }
  1039. if (!isMultiple && el.selectedIndex !== -1) {
  1040. el.selectedIndex = -1;
  1041. }
  1042. }
  1043. function getValue(el) {
  1044. return "_value" in el ? el._value : el.value;
  1045. }
  1046. function getCheckboxValue(el, checked) {
  1047. const key = checked ? "_trueValue" : "_falseValue";
  1048. return key in el ? el[key] : checked;
  1049. }
  1050. function resolveDynamicModel(tagName, type) {
  1051. switch (tagName) {
  1052. case "SELECT":
  1053. return vModelSelect;
  1054. case "TEXTAREA":
  1055. return vModelText;
  1056. default:
  1057. switch (type) {
  1058. case "checkbox":
  1059. return vModelCheckbox;
  1060. case "radio":
  1061. return vModelRadio;
  1062. default:
  1063. return vModelText;
  1064. }
  1065. }
  1066. }
  1067. function callModelHook(el, binding, vnode, prevVNode, hook) {
  1068. const modelToUse = resolveDynamicModel(
  1069. el.tagName,
  1070. vnode.props && vnode.props.type
  1071. );
  1072. const fn = modelToUse[hook];
  1073. fn && fn(el, binding, vnode, prevVNode);
  1074. }
  1075. function initVModelForSSR() {
  1076. vModelText.getSSRProps = ({ value }) => ({ value });
  1077. vModelRadio.getSSRProps = ({ value }, vnode) => {
  1078. if (vnode.props && looseEqual(vnode.props.value, value)) {
  1079. return { checked: true };
  1080. }
  1081. };
  1082. vModelCheckbox.getSSRProps = ({ value }, vnode) => {
  1083. if (isArray(value)) {
  1084. if (vnode.props && looseIndexOf(value, vnode.props.value) > -1) {
  1085. return { checked: true };
  1086. }
  1087. } else if (isSet(value)) {
  1088. if (vnode.props && value.has(vnode.props.value)) {
  1089. return { checked: true };
  1090. }
  1091. } else if (value) {
  1092. return { checked: true };
  1093. }
  1094. };
  1095. vModelDynamic.getSSRProps = (binding, vnode) => {
  1096. if (typeof vnode.type !== "string") {
  1097. return;
  1098. }
  1099. const modelToUse = resolveDynamicModel(
  1100. // resolveDynamicModel expects an uppercase tag name, but vnode.type is lowercase
  1101. vnode.type.toUpperCase(),
  1102. vnode.props && vnode.props.type
  1103. );
  1104. if (modelToUse.getSSRProps) {
  1105. return modelToUse.getSSRProps(binding, vnode);
  1106. }
  1107. };
  1108. }
  1109. function ensureRenderer() {
  1110. return renderer || (renderer = createRenderer(rendererOptions));
  1111. }
  1112. function ensureHydrationRenderer() {
  1113. renderer = enabledHydration ? renderer : createHydrationRenderer(rendererOptions);
  1114. enabledHydration = true;
  1115. return renderer;
  1116. }
  1117. function resolveRootNamespace(container) {
  1118. if (container instanceof SVGElement) {
  1119. return "svg";
  1120. }
  1121. if (typeof MathMLElement === "function" && container instanceof MathMLElement) {
  1122. return "mathml";
  1123. }
  1124. }
  1125. function injectNativeTagCheck(app) {
  1126. Object.defineProperty(app.config, "isNativeTag", {
  1127. value: (tag) => isHTMLTag(tag) || isSVGTag(tag) || isMathMLTag(tag),
  1128. writable: false
  1129. });
  1130. }
  1131. function injectCompilerOptionsCheck(app) {
  1132. if (isRuntimeOnly()) {
  1133. const isCustomElement = app.config.isCustomElement;
  1134. Object.defineProperty(app.config, "isCustomElement", {
  1135. get() {
  1136. return isCustomElement;
  1137. },
  1138. set() {
  1139. warn(
  1140. `The \`isCustomElement\` config option is deprecated. Use \`compilerOptions.isCustomElement\` instead.`
  1141. );
  1142. }
  1143. });
  1144. const compilerOptions = app.config.compilerOptions;
  1145. const msg = `The \`compilerOptions\` config option is only respected when using a build of Vue.js that includes the runtime compiler (aka "full build"). Since you are using the runtime-only build, \`compilerOptions\` must be passed to \`@vue/compiler-dom\` in the build setup instead.
  1146. - For vue-loader: pass it via vue-loader's \`compilerOptions\` loader option.
  1147. - For vue-cli: see https://cli.vuejs.org/guide/webpack.html#modifying-options-of-a-loader
  1148. - For vite: pass it via @vitejs/plugin-vue options. See https://github.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue#example-for-passing-options-to-vuecompiler-sfc`;
  1149. Object.defineProperty(app.config, "compilerOptions", {
  1150. get() {
  1151. warn(msg);
  1152. return compilerOptions;
  1153. },
  1154. set() {
  1155. warn(msg);
  1156. }
  1157. });
  1158. }
  1159. }
  1160. function normalizeContainer(container) {
  1161. if (isString(container)) {
  1162. const res = document.querySelector(container);
  1163. if (!res) {
  1164. warn(
  1165. `Failed to mount app: mount target selector "${container}" returned null.`
  1166. );
  1167. }
  1168. return res;
  1169. }
  1170. if (window.ShadowRoot && container instanceof window.ShadowRoot && container.mode === "closed") {
  1171. warn(
  1172. `mounting on a ShadowRoot with \`{mode: "closed"}\` may lead to unpredictable bugs`
  1173. );
  1174. }
  1175. return container;
  1176. }
  1177. var svgNS, mathmlNS, doc, templateContainer, nodeOps, TRANSITION, ANIMATION, vtcKey, Transition, DOMTransitionPropsValidators, TransitionPropsValidators, callHook, hasExplicitCallback, endId, vShowOriginalDisplay, vShowHidden, vShow, CSS_VAR_TEXT, displayRE, semicolonRE, importantRE, prefixes, prefixCache, xlinkNS, veiKey, optionsModifierRE, cachedNow, p, getNow, isNativeOn, patchProp, defineSSRCustomElement, BaseClass, VueElement, positionMap, newPositionMap, moveCbKey, enterCbKey, TransitionGroupImpl, removeMode, TransitionGroup, getModelAssigner, assignKey, vModelText, vModelCheckbox, vModelRadio, vModelSelect, vModelDynamic, systemModifiers, modifierGuards, withModifiers, keyNames, withKeys, rendererOptions, renderer, enabledHydration, render, hydrate, createApp, createSSRApp, ssrDirectiveInitialized, initDirectivesForSSR;
  1178. var init_runtime_dom_esm_bundler = __esm({
  1179. "node_modules/.pnpm/@vue+runtime-dom@3.4.27/node_modules/@vue/runtime-dom/dist/runtime-dom.esm-bundler.js"() {
  1180. init_runtime_core_esm_bundler();
  1181. init_runtime_core_esm_bundler();
  1182. init_shared_esm_bundler();
  1183. svgNS = "http://www.w3.org/2000/svg";
  1184. mathmlNS = "http://www.w3.org/1998/Math/MathML";
  1185. doc = typeof document !== "undefined" ? document : null;
  1186. templateContainer = doc && doc.createElement("template");
  1187. nodeOps = {
  1188. insert: (child, parent, anchor) => {
  1189. parent.insertBefore(child, anchor || null);
  1190. },
  1191. remove: (child) => {
  1192. const parent = child.parentNode;
  1193. if (parent) {
  1194. parent.removeChild(child);
  1195. }
  1196. },
  1197. createElement: (tag, namespace, is, props) => {
  1198. const el = namespace === "svg" ? doc.createElementNS(svgNS, tag) : namespace === "mathml" ? doc.createElementNS(mathmlNS, tag) : doc.createElement(tag, is ? { is } : void 0);
  1199. if (tag === "select" && props && props.multiple != null) {
  1200. el.setAttribute("multiple", props.multiple);
  1201. }
  1202. return el;
  1203. },
  1204. createText: (text) => doc.createTextNode(text),
  1205. createComment: (text) => doc.createComment(text),
  1206. setText: (node, text) => {
  1207. node.nodeValue = text;
  1208. },
  1209. setElementText: (el, text) => {
  1210. el.textContent = text;
  1211. },
  1212. parentNode: (node) => node.parentNode,
  1213. nextSibling: (node) => node.nextSibling,
  1214. querySelector: (selector) => doc.querySelector(selector),
  1215. setScopeId(el, id) {
  1216. el.setAttribute(id, "");
  1217. },
  1218. // __UNSAFE__
  1219. // Reason: innerHTML.
  1220. // Static content here can only come from compiled templates.
  1221. // As long as the user only uses trusted templates, this is safe.
  1222. insertStaticContent(content, parent, anchor, namespace, start, end) {
  1223. const before = anchor ? anchor.previousSibling : parent.lastChild;
  1224. if (start && (start === end || start.nextSibling)) {
  1225. while (true) {
  1226. parent.insertBefore(start.cloneNode(true), anchor);
  1227. if (start === end || !(start = start.nextSibling))
  1228. break;
  1229. }
  1230. } else {
  1231. templateContainer.innerHTML = namespace === "svg" ? `<svg>${content}</svg>` : namespace === "mathml" ? `<math>${content}</math>` : content;
  1232. const template = templateContainer.content;
  1233. if (namespace === "svg" || namespace === "mathml") {
  1234. const wrapper = template.firstChild;
  1235. while (wrapper.firstChild) {
  1236. template.appendChild(wrapper.firstChild);
  1237. }
  1238. template.removeChild(wrapper);
  1239. }
  1240. parent.insertBefore(template, anchor);
  1241. }
  1242. return [
  1243. // first
  1244. before ? before.nextSibling : parent.firstChild,
  1245. // last
  1246. anchor ? anchor.previousSibling : parent.lastChild
  1247. ];
  1248. }
  1249. };
  1250. TRANSITION = "transition";
  1251. ANIMATION = "animation";
  1252. vtcKey = Symbol("_vtc");
  1253. Transition = (props, { slots }) => h(BaseTransition, resolveTransitionProps(props), slots);
  1254. Transition.displayName = "Transition";
  1255. DOMTransitionPropsValidators = {
  1256. name: String,
  1257. type: String,
  1258. css: {
  1259. type: Boolean,
  1260. default: true
  1261. },
  1262. duration: [String, Number, Object],
  1263. enterFromClass: String,
  1264. enterActiveClass: String,
  1265. enterToClass: String,
  1266. appearFromClass: String,
  1267. appearActiveClass: String,
  1268. appearToClass: String,
  1269. leaveFromClass: String,
  1270. leaveActiveClass: String,
  1271. leaveToClass: String
  1272. };
  1273. TransitionPropsValidators = Transition.props = extend(
  1274. {},
  1275. BaseTransitionPropsValidators,
  1276. DOMTransitionPropsValidators
  1277. );
  1278. callHook = (hook, args = []) => {
  1279. if (isArray(hook)) {
  1280. hook.forEach((h2) => h2(...args));
  1281. } else if (hook) {
  1282. hook(...args);
  1283. }
  1284. };
  1285. hasExplicitCallback = (hook) => {
  1286. return hook ? isArray(hook) ? hook.some((h2) => h2.length > 1) : hook.length > 1 : false;
  1287. };
  1288. endId = 0;
  1289. vShowOriginalDisplay = Symbol("_vod");
  1290. vShowHidden = Symbol("_vsh");
  1291. vShow = {
  1292. beforeMount(el, { value }, { transition }) {
  1293. el[vShowOriginalDisplay] = el.style.display === "none" ? "" : el.style.display;
  1294. if (transition && value) {
  1295. transition.beforeEnter(el);
  1296. } else {
  1297. setDisplay(el, value);
  1298. }
  1299. },
  1300. mounted(el, { value }, { transition }) {
  1301. if (transition && value) {
  1302. transition.enter(el);
  1303. }
  1304. },
  1305. updated(el, { value, oldValue }, { transition }) {
  1306. if (!value === !oldValue)
  1307. return;
  1308. if (transition) {
  1309. if (value) {
  1310. transition.beforeEnter(el);
  1311. setDisplay(el, true);
  1312. transition.enter(el);
  1313. } else {
  1314. transition.leave(el, () => {
  1315. setDisplay(el, false);
  1316. });
  1317. }
  1318. } else {
  1319. setDisplay(el, value);
  1320. }
  1321. },
  1322. beforeUnmount(el, { value }) {
  1323. setDisplay(el, value);
  1324. }
  1325. };
  1326. if (true) {
  1327. vShow.name = "show";
  1328. }
  1329. CSS_VAR_TEXT = Symbol(true ? "CSS_VAR_TEXT" : "");
  1330. displayRE = /(^|;)\s*display\s*:/;
  1331. semicolonRE = /[^\\];\s*$/;
  1332. importantRE = /\s*!important$/;
  1333. prefixes = ["Webkit", "Moz", "ms"];
  1334. prefixCache = {};
  1335. xlinkNS = "http://www.w3.org/1999/xlink";
  1336. veiKey = Symbol("_vei");
  1337. optionsModifierRE = /(?:Once|Passive|Capture)$/;
  1338. cachedNow = 0;
  1339. p = Promise.resolve();
  1340. getNow = () => cachedNow || (p.then(() => cachedNow = 0), cachedNow = Date.now());
  1341. isNativeOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // lowercase letter
  1342. key.charCodeAt(2) > 96 && key.charCodeAt(2) < 123;
  1343. patchProp = (el, key, prevValue, nextValue, namespace, prevChildren, parentComponent, parentSuspense, unmountChildren) => {
  1344. const isSVG = namespace === "svg";
  1345. if (key === "class") {
  1346. patchClass(el, nextValue, isSVG);
  1347. } else if (key === "style") {
  1348. patchStyle(el, prevValue, nextValue);
  1349. } else if (isOn(key)) {
  1350. if (!isModelListener(key)) {
  1351. patchEvent(el, key, prevValue, nextValue, parentComponent);
  1352. }
  1353. } else if (key[0] === "." ? (key = key.slice(1), true) : key[0] === "^" ? (key = key.slice(1), false) : shouldSetAsProp(el, key, nextValue, isSVG)) {
  1354. patchDOMProp(
  1355. el,
  1356. key,
  1357. nextValue,
  1358. prevChildren,
  1359. parentComponent,
  1360. parentSuspense,
  1361. unmountChildren
  1362. );
  1363. } else {
  1364. if (key === "true-value") {
  1365. el._trueValue = nextValue;
  1366. } else if (key === "false-value") {
  1367. el._falseValue = nextValue;
  1368. }
  1369. patchAttr(el, key, nextValue, isSVG);
  1370. }
  1371. };
  1372. defineSSRCustomElement = (options) => {
  1373. return defineCustomElement(options, hydrate);
  1374. };
  1375. BaseClass = typeof HTMLElement !== "undefined" ? HTMLElement : class {
  1376. };
  1377. VueElement = class _VueElement extends BaseClass {
  1378. constructor(_def, _props = {}, hydrate2) {
  1379. super();
  1380. this._def = _def;
  1381. this._props = _props;
  1382. this._instance = null;
  1383. this._connected = false;
  1384. this._resolved = false;
  1385. this._numberProps = null;
  1386. this._ob = null;
  1387. if (this.shadowRoot && hydrate2) {
  1388. hydrate2(this._createVNode(), this.shadowRoot);
  1389. } else {
  1390. if (this.shadowRoot) {
  1391. warn(
  1392. `Custom element has pre-rendered declarative shadow root but is not defined as hydratable. Use \`defineSSRCustomElement\`.`
  1393. );
  1394. }
  1395. this.attachShadow({ mode: "open" });
  1396. if (!this._def.__asyncLoader) {
  1397. this._resolveProps(this._def);
  1398. }
  1399. }
  1400. }
  1401. connectedCallback() {
  1402. this._connected = true;
  1403. if (!this._instance) {
  1404. if (this._resolved) {
  1405. this._update();
  1406. } else {
  1407. this._resolveDef();
  1408. }
  1409. }
  1410. }
  1411. disconnectedCallback() {
  1412. this._connected = false;
  1413. if (this._ob) {
  1414. this._ob.disconnect();
  1415. this._ob = null;
  1416. }
  1417. nextTick(() => {
  1418. if (!this._connected) {
  1419. render(null, this.shadowRoot);
  1420. this._instance = null;
  1421. }
  1422. });
  1423. }
  1424. /**
  1425. * resolve inner component definition (handle possible async component)
  1426. */
  1427. _resolveDef() {
  1428. this._resolved = true;
  1429. for (let i = 0; i < this.attributes.length; i++) {
  1430. this._setAttr(this.attributes[i].name);
  1431. }
  1432. this._ob = new MutationObserver((mutations) => {
  1433. for (const m of mutations) {
  1434. this._setAttr(m.attributeName);
  1435. }
  1436. });
  1437. this._ob.observe(this, { attributes: true });
  1438. const resolve = (def, isAsync = false) => {
  1439. const { props, styles } = def;
  1440. let numberProps;
  1441. if (props && !isArray(props)) {
  1442. for (const key in props) {
  1443. const opt = props[key];
  1444. if (opt === Number || opt && opt.type === Number) {
  1445. if (key in this._props) {
  1446. this._props[key] = toNumber(this._props[key]);
  1447. }
  1448. (numberProps || (numberProps = /* @__PURE__ */ Object.create(null)))[camelize(key)] = true;
  1449. }
  1450. }
  1451. }
  1452. this._numberProps = numberProps;
  1453. if (isAsync) {
  1454. this._resolveProps(def);
  1455. }
  1456. this._applyStyles(styles);
  1457. this._update();
  1458. };
  1459. const asyncDef = this._def.__asyncLoader;
  1460. if (asyncDef) {
  1461. asyncDef().then((def) => resolve(def, true));
  1462. } else {
  1463. resolve(this._def);
  1464. }
  1465. }
  1466. _resolveProps(def) {
  1467. const { props } = def;
  1468. const declaredPropKeys = isArray(props) ? props : Object.keys(props || {});
  1469. for (const key of Object.keys(this)) {
  1470. if (key[0] !== "_" && declaredPropKeys.includes(key)) {
  1471. this._setProp(key, this[key], true, false);
  1472. }
  1473. }
  1474. for (const key of declaredPropKeys.map(camelize)) {
  1475. Object.defineProperty(this, key, {
  1476. get() {
  1477. return this._getProp(key);
  1478. },
  1479. set(val) {
  1480. this._setProp(key, val);
  1481. }
  1482. });
  1483. }
  1484. }
  1485. _setAttr(key) {
  1486. let value = this.hasAttribute(key) ? this.getAttribute(key) : void 0;
  1487. const camelKey = camelize(key);
  1488. if (this._numberProps && this._numberProps[camelKey]) {
  1489. value = toNumber(value);
  1490. }
  1491. this._setProp(camelKey, value, false);
  1492. }
  1493. /**
  1494. * @internal
  1495. */
  1496. _getProp(key) {
  1497. return this._props[key];
  1498. }
  1499. /**
  1500. * @internal
  1501. */
  1502. _setProp(key, val, shouldReflect = true, shouldUpdate = true) {
  1503. if (val !== this._props[key]) {
  1504. this._props[key] = val;
  1505. if (shouldUpdate && this._instance) {
  1506. this._update();
  1507. }
  1508. if (shouldReflect) {
  1509. if (val === true) {
  1510. this.setAttribute(hyphenate(key), "");
  1511. } else if (typeof val === "string" || typeof val === "number") {
  1512. this.setAttribute(hyphenate(key), val + "");
  1513. } else if (!val) {
  1514. this.removeAttribute(hyphenate(key));
  1515. }
  1516. }
  1517. }
  1518. }
  1519. _update() {
  1520. render(this._createVNode(), this.shadowRoot);
  1521. }
  1522. _createVNode() {
  1523. const vnode = createVNode(this._def, extend({}, this._props));
  1524. if (!this._instance) {
  1525. vnode.ce = (instance) => {
  1526. this._instance = instance;
  1527. instance.isCE = true;
  1528. if (true) {
  1529. instance.ceReload = (newStyles) => {
  1530. if (this._styles) {
  1531. this._styles.forEach((s) => this.shadowRoot.removeChild(s));
  1532. this._styles.length = 0;
  1533. }
  1534. this._applyStyles(newStyles);
  1535. this._instance = null;
  1536. this._update();
  1537. };
  1538. }
  1539. const dispatch = (event, args) => {
  1540. this.dispatchEvent(
  1541. new CustomEvent(event, {
  1542. detail: args
  1543. })
  1544. );
  1545. };
  1546. instance.emit = (event, ...args) => {
  1547. dispatch(event, args);
  1548. if (hyphenate(event) !== event) {
  1549. dispatch(hyphenate(event), args);
  1550. }
  1551. };
  1552. let parent = this;
  1553. while (parent = parent && (parent.parentNode || parent.host)) {
  1554. if (parent instanceof _VueElement) {
  1555. instance.parent = parent._instance;
  1556. instance.provides = parent._instance.provides;
  1557. break;
  1558. }
  1559. }
  1560. };
  1561. }
  1562. return vnode;
  1563. }
  1564. _applyStyles(styles) {
  1565. if (styles) {
  1566. styles.forEach((css) => {
  1567. const s = document.createElement("style");
  1568. s.textContent = css;
  1569. this.shadowRoot.appendChild(s);
  1570. if (true) {
  1571. (this._styles || (this._styles = [])).push(s);
  1572. }
  1573. });
  1574. }
  1575. }
  1576. };
  1577. positionMap = /* @__PURE__ */ new WeakMap();
  1578. newPositionMap = /* @__PURE__ */ new WeakMap();
  1579. moveCbKey = Symbol("_moveCb");
  1580. enterCbKey = Symbol("_enterCb");
  1581. TransitionGroupImpl = {
  1582. name: "TransitionGroup",
  1583. props: extend({}, TransitionPropsValidators, {
  1584. tag: String,
  1585. moveClass: String
  1586. }),
  1587. setup(props, { slots }) {
  1588. const instance = getCurrentInstance();
  1589. const state = useTransitionState();
  1590. let prevChildren;
  1591. let children;
  1592. onUpdated(() => {
  1593. if (!prevChildren.length) {
  1594. return;
  1595. }
  1596. const moveClass = props.moveClass || `${props.name || "v"}-move`;
  1597. if (!hasCSSTransform(
  1598. prevChildren[0].el,
  1599. instance.vnode.el,
  1600. moveClass
  1601. )) {
  1602. return;
  1603. }
  1604. prevChildren.forEach(callPendingCbs);
  1605. prevChildren.forEach(recordPosition);
  1606. const movedChildren = prevChildren.filter(applyTranslation);
  1607. forceReflow();
  1608. movedChildren.forEach((c) => {
  1609. const el = c.el;
  1610. const style = el.style;
  1611. addTransitionClass(el, moveClass);
  1612. style.transform = style.webkitTransform = style.transitionDuration = "";
  1613. const cb = el[moveCbKey] = (e) => {
  1614. if (e && e.target !== el) {
  1615. return;
  1616. }
  1617. if (!e || /transform$/.test(e.propertyName)) {
  1618. el.removeEventListener("transitionend", cb);
  1619. el[moveCbKey] = null;
  1620. removeTransitionClass(el, moveClass);
  1621. }
  1622. };
  1623. el.addEventListener("transitionend", cb);
  1624. });
  1625. });
  1626. return () => {
  1627. const rawProps = toRaw(props);
  1628. const cssTransitionProps = resolveTransitionProps(rawProps);
  1629. let tag = rawProps.tag || Fragment;
  1630. prevChildren = [];
  1631. if (children) {
  1632. for (let i = 0; i < children.length; i++) {
  1633. const child = children[i];
  1634. if (child.el && child.el instanceof Element) {
  1635. prevChildren.push(child);
  1636. setTransitionHooks(
  1637. child,
  1638. resolveTransitionHooks(
  1639. child,
  1640. cssTransitionProps,
  1641. state,
  1642. instance
  1643. )
  1644. );
  1645. positionMap.set(
  1646. child,
  1647. child.el.getBoundingClientRect()
  1648. );
  1649. }
  1650. }
  1651. }
  1652. children = slots.default ? getTransitionRawChildren(slots.default()) : [];
  1653. for (let i = 0; i < children.length; i++) {
  1654. const child = children[i];
  1655. if (child.key != null) {
  1656. setTransitionHooks(
  1657. child,
  1658. resolveTransitionHooks(child, cssTransitionProps, state, instance)
  1659. );
  1660. } else if (true) {
  1661. warn(`<TransitionGroup> children must be keyed.`);
  1662. }
  1663. }
  1664. return createVNode(tag, null, children);
  1665. };
  1666. }
  1667. };
  1668. removeMode = (props) => delete props.mode;
  1669. removeMode(TransitionGroupImpl.props);
  1670. TransitionGroup = TransitionGroupImpl;
  1671. getModelAssigner = (vnode) => {
  1672. const fn = vnode.props["onUpdate:modelValue"] || false;
  1673. return isArray(fn) ? (value) => invokeArrayFns(fn, value) : fn;
  1674. };
  1675. assignKey = Symbol("_assign");
  1676. vModelText = {
  1677. created(el, { modifiers: { lazy, trim, number } }, vnode) {
  1678. el[assignKey] = getModelAssigner(vnode);
  1679. const castToNumber = number || vnode.props && vnode.props.type === "number";
  1680. addEventListener(el, lazy ? "change" : "input", (e) => {
  1681. if (e.target.composing)
  1682. return;
  1683. let domValue = el.value;
  1684. if (trim) {
  1685. domValue = domValue.trim();
  1686. }
  1687. if (castToNumber) {
  1688. domValue = looseToNumber(domValue);
  1689. }
  1690. el[assignKey](domValue);
  1691. });
  1692. if (trim) {
  1693. addEventListener(el, "change", () => {
  1694. el.value = el.value.trim();
  1695. });
  1696. }
  1697. if (!lazy) {
  1698. addEventListener(el, "compositionstart", onCompositionStart);
  1699. addEventListener(el, "compositionend", onCompositionEnd);
  1700. addEventListener(el, "change", onCompositionEnd);
  1701. }
  1702. },
  1703. // set value on mounted so it's after min/max for type="range"
  1704. mounted(el, { value }) {
  1705. el.value = value == null ? "" : value;
  1706. },
  1707. beforeUpdate(el, { value, modifiers: { lazy, trim, number } }, vnode) {
  1708. el[assignKey] = getModelAssigner(vnode);
  1709. if (el.composing)
  1710. return;
  1711. const elValue = (number || el.type === "number") && !/^0\d/.test(el.value) ? looseToNumber(el.value) : el.value;
  1712. const newValue = value == null ? "" : value;
  1713. if (elValue === newValue) {
  1714. return;
  1715. }
  1716. if (document.activeElement === el && el.type !== "range") {
  1717. if (lazy) {
  1718. return;
  1719. }
  1720. if (trim && el.value.trim() === newValue) {
  1721. return;
  1722. }
  1723. }
  1724. el.value = newValue;
  1725. }
  1726. };
  1727. vModelCheckbox = {
  1728. // #4096 array checkboxes need to be deep traversed
  1729. deep: true,
  1730. created(el, _, vnode) {
  1731. el[assignKey] = getModelAssigner(vnode);
  1732. addEventListener(el, "change", () => {
  1733. const modelValue = el._modelValue;
  1734. const elementValue = getValue(el);
  1735. const checked = el.checked;
  1736. const assign = el[assignKey];
  1737. if (isArray(modelValue)) {
  1738. const index = looseIndexOf(modelValue, elementValue);
  1739. const found = index !== -1;
  1740. if (checked && !found) {
  1741. assign(modelValue.concat(elementValue));
  1742. } else if (!checked && found) {
  1743. const filtered = [...modelValue];
  1744. filtered.splice(index, 1);
  1745. assign(filtered);
  1746. }
  1747. } else if (isSet(modelValue)) {
  1748. const cloned = new Set(modelValue);
  1749. if (checked) {
  1750. cloned.add(elementValue);
  1751. } else {
  1752. cloned.delete(elementValue);
  1753. }
  1754. assign(cloned);
  1755. } else {
  1756. assign(getCheckboxValue(el, checked));
  1757. }
  1758. });
  1759. },
  1760. // set initial checked on mount to wait for true-value/false-value
  1761. mounted: setChecked,
  1762. beforeUpdate(el, binding, vnode) {
  1763. el[assignKey] = getModelAssigner(vnode);
  1764. setChecked(el, binding, vnode);
  1765. }
  1766. };
  1767. vModelRadio = {
  1768. created(el, { value }, vnode) {
  1769. el.checked = looseEqual(value, vnode.props.value);
  1770. el[assignKey] = getModelAssigner(vnode);
  1771. addEventListener(el, "change", () => {
  1772. el[assignKey](getValue(el));
  1773. });
  1774. },
  1775. beforeUpdate(el, { value, oldValue }, vnode) {
  1776. el[assignKey] = getModelAssigner(vnode);
  1777. if (value !== oldValue) {
  1778. el.checked = looseEqual(value, vnode.props.value);
  1779. }
  1780. }
  1781. };
  1782. vModelSelect = {
  1783. // <select multiple> value need to be deep traversed
  1784. deep: true,
  1785. created(el, { value, modifiers: { number } }, vnode) {
  1786. const isSetModel = isSet(value);
  1787. addEventListener(el, "change", () => {
  1788. const selectedVal = Array.prototype.filter.call(el.options, (o) => o.selected).map(
  1789. (o) => number ? looseToNumber(getValue(o)) : getValue(o)
  1790. );
  1791. el[assignKey](
  1792. el.multiple ? isSetModel ? new Set(selectedVal) : selectedVal : selectedVal[0]
  1793. );
  1794. el._assigning = true;
  1795. nextTick(() => {
  1796. el._assigning = false;
  1797. });
  1798. });
  1799. el[assignKey] = getModelAssigner(vnode);
  1800. },
  1801. // set value in mounted & updated because <select> relies on its children
  1802. // <option>s.
  1803. mounted(el, { value, modifiers: { number } }) {
  1804. setSelected(el, value);
  1805. },
  1806. beforeUpdate(el, _binding, vnode) {
  1807. el[assignKey] = getModelAssigner(vnode);
  1808. },
  1809. updated(el, { value, modifiers: { number } }) {
  1810. if (!el._assigning) {
  1811. setSelected(el, value);
  1812. }
  1813. }
  1814. };
  1815. vModelDynamic = {
  1816. created(el, binding, vnode) {
  1817. callModelHook(el, binding, vnode, null, "created");
  1818. },
  1819. mounted(el, binding, vnode) {
  1820. callModelHook(el, binding, vnode, null, "mounted");
  1821. },
  1822. beforeUpdate(el, binding, vnode, prevVNode) {
  1823. callModelHook(el, binding, vnode, prevVNode, "beforeUpdate");
  1824. },
  1825. updated(el, binding, vnode, prevVNode) {
  1826. callModelHook(el, binding, vnode, prevVNode, "updated");
  1827. }
  1828. };
  1829. systemModifiers = ["ctrl", "shift", "alt", "meta"];
  1830. modifierGuards = {
  1831. stop: (e) => e.stopPropagation(),
  1832. prevent: (e) => e.preventDefault(),
  1833. self: (e) => e.target !== e.currentTarget,
  1834. ctrl: (e) => !e.ctrlKey,
  1835. shift: (e) => !e.shiftKey,
  1836. alt: (e) => !e.altKey,
  1837. meta: (e) => !e.metaKey,
  1838. left: (e) => "button" in e && e.button !== 0,
  1839. middle: (e) => "button" in e && e.button !== 1,
  1840. right: (e) => "button" in e && e.button !== 2,
  1841. exact: (e, modifiers) => systemModifiers.some((m) => e[`${m}Key`] && !modifiers.includes(m))
  1842. };
  1843. withModifiers = (fn, modifiers) => {
  1844. const cache = fn._withMods || (fn._withMods = {});
  1845. const cacheKey = modifiers.join(".");
  1846. return cache[cacheKey] || (cache[cacheKey] = (event, ...args) => {
  1847. for (let i = 0; i < modifiers.length; i++) {
  1848. const guard = modifierGuards[modifiers[i]];
  1849. if (guard && guard(event, modifiers))
  1850. return;
  1851. }
  1852. return fn(event, ...args);
  1853. });
  1854. };
  1855. keyNames = {
  1856. esc: "escape",
  1857. space: " ",
  1858. up: "arrow-up",
  1859. left: "arrow-left",
  1860. right: "arrow-right",
  1861. down: "arrow-down",
  1862. delete: "backspace"
  1863. };
  1864. withKeys = (fn, modifiers) => {
  1865. const cache = fn._withKeys || (fn._withKeys = {});
  1866. const cacheKey = modifiers.join(".");
  1867. return cache[cacheKey] || (cache[cacheKey] = (event) => {
  1868. if (!("key" in event)) {
  1869. return;
  1870. }
  1871. const eventKey = hyphenate(event.key);
  1872. if (modifiers.some((k) => k === eventKey || keyNames[k] === eventKey)) {
  1873. return fn(event);
  1874. }
  1875. });
  1876. };
  1877. rendererOptions = extend({ patchProp }, nodeOps);
  1878. enabledHydration = false;
  1879. render = (...args) => {
  1880. ensureRenderer().render(...args);
  1881. };
  1882. hydrate = (...args) => {
  1883. ensureHydrationRenderer().hydrate(...args);
  1884. };
  1885. createApp = (...args) => {
  1886. const app = ensureRenderer().createApp(...args);
  1887. if (true) {
  1888. injectNativeTagCheck(app);
  1889. injectCompilerOptionsCheck(app);
  1890. }
  1891. const { mount } = app;
  1892. app.mount = (containerOrSelector) => {
  1893. const container = normalizeContainer(containerOrSelector);
  1894. if (!container)
  1895. return;
  1896. const component = app._component;
  1897. if (!isFunction(component) && !component.render && !component.template) {
  1898. component.template = container.innerHTML;
  1899. }
  1900. container.innerHTML = "";
  1901. const proxy = mount(container, false, resolveRootNamespace(container));
  1902. if (container instanceof Element) {
  1903. container.removeAttribute("v-cloak");
  1904. container.setAttribute("data-v-app", "");
  1905. }
  1906. return proxy;
  1907. };
  1908. return app;
  1909. };
  1910. createSSRApp = (...args) => {
  1911. const app = ensureHydrationRenderer().createApp(...args);
  1912. if (true) {
  1913. injectNativeTagCheck(app);
  1914. injectCompilerOptionsCheck(app);
  1915. }
  1916. const { mount } = app;
  1917. app.mount = (containerOrSelector) => {
  1918. const container = normalizeContainer(containerOrSelector);
  1919. if (container) {
  1920. return mount(container, true, resolveRootNamespace(container));
  1921. }
  1922. };
  1923. return app;
  1924. };
  1925. ssrDirectiveInitialized = false;
  1926. initDirectivesForSSR = () => {
  1927. if (!ssrDirectiveInitialized) {
  1928. ssrDirectiveInitialized = true;
  1929. initVModelForSSR();
  1930. initVShowForSSR();
  1931. }
  1932. };
  1933. }
  1934. });
  1935. export {
  1936. Transition,
  1937. vShow,
  1938. useCssVars,
  1939. defineCustomElement,
  1940. defineSSRCustomElement,
  1941. VueElement,
  1942. useCssModule,
  1943. TransitionGroup,
  1944. vModelText,
  1945. vModelCheckbox,
  1946. vModelRadio,
  1947. vModelSelect,
  1948. vModelDynamic,
  1949. withModifiers,
  1950. withKeys,
  1951. render,
  1952. hydrate,
  1953. createApp,
  1954. createSSRApp,
  1955. initDirectivesForSSR,
  1956. runtime_dom_esm_bundler_exports,
  1957. init_runtime_dom_esm_bundler
  1958. };
  1959. /*! Bundled license information:
  1960. @vue/runtime-dom/dist/runtime-dom.esm-bundler.js:
  1961. (**
  1962. * @vue/runtime-dom v3.4.27
  1963. * (c) 2018-present Yuxi (Evan) You and Vue contributors
  1964. * @license MIT
  1965. **)
  1966. (*! #__NO_SIDE_EFFECTS__ *)
  1967. */
  1968. //# sourceMappingURL=chunk-S6VK5PVK.js.map