@vue/runtime-core 3.3.2 → 3.3.4

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.
@@ -11,7 +11,7 @@ function popWarningContext() {
11
11
  stack.pop();
12
12
  }
13
13
  function warn(msg, ...args) {
14
- if (!process.env.NODE_ENV !== "production")
14
+ if (!!!(process.env.NODE_ENV !== "production"))
15
15
  return;
16
16
  pauseTracking();
17
17
  const instance = stack.length ? stack[stack.length - 1].component : null;
@@ -110,7 +110,7 @@ function formatProp(key, value, raw) {
110
110
  }
111
111
  }
112
112
  function assertNumber(val, type) {
113
- if (!process.env.NODE_ENV !== "production")
113
+ if (!!!(process.env.NODE_ENV !== "production"))
114
114
  return;
115
115
  if (val === void 0) {
116
116
  return;
@@ -182,7 +182,7 @@ function handleError(err, instance, type, throwInDev = true) {
182
182
  if (instance) {
183
183
  let cur = instance.parent;
184
184
  const exposedInstance = instance.proxy;
185
- const errorInfo = process.env.NODE_ENV !== "production" ? ErrorTypeStrings[type] : type;
185
+ const errorInfo = !!(process.env.NODE_ENV !== "production") ? ErrorTypeStrings[type] : type;
186
186
  while (cur) {
187
187
  const errorCapturedHooks = cur.ec;
188
188
  if (errorCapturedHooks) {
@@ -208,7 +208,7 @@ function handleError(err, instance, type, throwInDev = true) {
208
208
  logError(err, type, contextVNode, throwInDev);
209
209
  }
210
210
  function logError(err, type, contextVNode, throwInDev = true) {
211
- if (process.env.NODE_ENV !== "production") {
211
+ if (!!(process.env.NODE_ENV !== "production")) {
212
212
  const info = ErrorTypeStrings[type];
213
213
  if (contextVNode) {
214
214
  pushWarningContext(contextVNode);
@@ -290,13 +290,13 @@ function queuePostFlushCb(cb) {
290
290
  queueFlush();
291
291
  }
292
292
  function flushPreFlushCbs(seen, i = isFlushing ? flushIndex + 1 : 0) {
293
- if (process.env.NODE_ENV !== "production") {
293
+ if (!!(process.env.NODE_ENV !== "production")) {
294
294
  seen = seen || /* @__PURE__ */ new Map();
295
295
  }
296
296
  for (; i < queue.length; i++) {
297
297
  const cb = queue[i];
298
298
  if (cb && cb.pre) {
299
- if (process.env.NODE_ENV !== "production" && checkRecursiveUpdates(seen, cb)) {
299
+ if (!!(process.env.NODE_ENV !== "production") && checkRecursiveUpdates(seen, cb)) {
300
300
  continue;
301
301
  }
302
302
  queue.splice(i, 1);
@@ -314,12 +314,12 @@ function flushPostFlushCbs(seen) {
314
314
  return;
315
315
  }
316
316
  activePostFlushCbs = deduped;
317
- if (process.env.NODE_ENV !== "production") {
317
+ if (!!(process.env.NODE_ENV !== "production")) {
318
318
  seen = seen || /* @__PURE__ */ new Map();
319
319
  }
320
320
  activePostFlushCbs.sort((a, b) => getId(a) - getId(b));
321
321
  for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {
322
- if (process.env.NODE_ENV !== "production" && checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) {
322
+ if (!!(process.env.NODE_ENV !== "production") && checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) {
323
323
  continue;
324
324
  }
325
325
  activePostFlushCbs[postFlushIndex]();
@@ -342,16 +342,16 @@ const comparator = (a, b) => {
342
342
  function flushJobs(seen) {
343
343
  isFlushPending = false;
344
344
  isFlushing = true;
345
- if (process.env.NODE_ENV !== "production") {
345
+ if (!!(process.env.NODE_ENV !== "production")) {
346
346
  seen = seen || /* @__PURE__ */ new Map();
347
347
  }
348
348
  queue.sort(comparator);
349
- const check = process.env.NODE_ENV !== "production" ? (job) => checkRecursiveUpdates(seen, job) : NOOP;
349
+ const check = !!(process.env.NODE_ENV !== "production") ? (job) => checkRecursiveUpdates(seen, job) : NOOP;
350
350
  try {
351
351
  for (flushIndex = 0; flushIndex < queue.length; flushIndex++) {
352
352
  const job = queue[flushIndex];
353
353
  if (job && job.active !== false) {
354
- if (process.env.NODE_ENV !== "production" && check(job)) {
354
+ if (!!(process.env.NODE_ENV !== "production") && check(job)) {
355
355
  continue;
356
356
  }
357
357
  callWithErrorHandling(job, null, 14);
@@ -388,7 +388,7 @@ function checkRecursiveUpdates(seen, fn) {
388
388
 
389
389
  let isHmrUpdating = false;
390
390
  const hmrDirtyComponents = /* @__PURE__ */ new Set();
391
- if (process.env.NODE_ENV !== "production") {
391
+ if (!!(process.env.NODE_ENV !== "production")) {
392
392
  getGlobalThis().__VUE_HMR_RUNTIME__ = {
393
393
  createRecord: tryWrap(createRecord),
394
394
  rerender: tryWrap(rerender),
@@ -602,7 +602,7 @@ function emit(instance, event, ...rawArgs) {
602
602
  if (instance.isUnmounted)
603
603
  return;
604
604
  const props = instance.vnode.props || EMPTY_OBJ;
605
- if (process.env.NODE_ENV !== "production") {
605
+ if (!!(process.env.NODE_ENV !== "production")) {
606
606
  const {
607
607
  emitsOptions,
608
608
  propsOptions: [propsOptions]
@@ -640,10 +640,10 @@ function emit(instance, event, ...rawArgs) {
640
640
  args = rawArgs.map(looseToNumber);
641
641
  }
642
642
  }
643
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
643
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
644
644
  devtoolsComponentEmit(instance, event, args);
645
645
  }
646
- if (process.env.NODE_ENV !== "production") {
646
+ if (!!(process.env.NODE_ENV !== "production")) {
647
647
  const lowerCaseEvent = event.toLowerCase();
648
648
  if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) {
649
649
  warn(
@@ -770,7 +770,7 @@ function withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot) {
770
770
  setBlockTracking(1);
771
771
  }
772
772
  }
773
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
773
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
774
774
  devtoolsComponentUpdated(ctx);
775
775
  }
776
776
  return res;
@@ -806,7 +806,7 @@ function renderComponentRoot(instance) {
806
806
  let result;
807
807
  let fallthroughAttrs;
808
808
  const prev = setCurrentRenderingInstance(instance);
809
- if (process.env.NODE_ENV !== "production") {
809
+ if (!!(process.env.NODE_ENV !== "production")) {
810
810
  accessedAttrs = false;
811
811
  }
812
812
  try {
@@ -826,13 +826,13 @@ function renderComponentRoot(instance) {
826
826
  fallthroughAttrs = attrs;
827
827
  } else {
828
828
  const render2 = Component;
829
- if (process.env.NODE_ENV !== "production" && attrs === props) {
829
+ if (!!(process.env.NODE_ENV !== "production") && attrs === props) {
830
830
  markAttrsAccessed();
831
831
  }
832
832
  result = normalizeVNode(
833
833
  render2.length > 1 ? render2(
834
834
  props,
835
- process.env.NODE_ENV !== "production" ? {
835
+ !!(process.env.NODE_ENV !== "production") ? {
836
836
  get attrs() {
837
837
  markAttrsAccessed();
838
838
  return attrs;
@@ -855,7 +855,7 @@ function renderComponentRoot(instance) {
855
855
  }
856
856
  let root = result;
857
857
  let setRoot = void 0;
858
- if (process.env.NODE_ENV !== "production" && result.patchFlag > 0 && result.patchFlag & 2048) {
858
+ if (!!(process.env.NODE_ENV !== "production") && result.patchFlag > 0 && result.patchFlag & 2048) {
859
859
  [root, setRoot] = getChildRoot(result);
860
860
  }
861
861
  if (fallthroughAttrs && inheritAttrs !== false) {
@@ -870,7 +870,7 @@ function renderComponentRoot(instance) {
870
870
  );
871
871
  }
872
872
  root = cloneVNode(root, fallthroughAttrs);
873
- } else if (process.env.NODE_ENV !== "production" && !accessedAttrs && root.type !== Comment) {
873
+ } else if (!!(process.env.NODE_ENV !== "production") && !accessedAttrs && root.type !== Comment) {
874
874
  const allAttrs = Object.keys(attrs);
875
875
  const eventAttrs = [];
876
876
  const extraAttrs = [];
@@ -898,7 +898,7 @@ function renderComponentRoot(instance) {
898
898
  }
899
899
  }
900
900
  if (vnode.dirs) {
901
- if (process.env.NODE_ENV !== "production" && !isElementRoot(root)) {
901
+ if (!!(process.env.NODE_ENV !== "production") && !isElementRoot(root)) {
902
902
  warn(
903
903
  `Runtime directive used on component with non-element root node. The directives will not function as intended.`
904
904
  );
@@ -907,14 +907,14 @@ function renderComponentRoot(instance) {
907
907
  root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs;
908
908
  }
909
909
  if (vnode.transition) {
910
- if (process.env.NODE_ENV !== "production" && !isElementRoot(root)) {
910
+ if (!!(process.env.NODE_ENV !== "production") && !isElementRoot(root)) {
911
911
  warn(
912
912
  `Component inside <Transition> renders non-element root node that cannot be animated.`
913
913
  );
914
914
  }
915
915
  root.transition = vnode.transition;
916
916
  }
917
- if (process.env.NODE_ENV !== "production" && setRoot) {
917
+ if (!!(process.env.NODE_ENV !== "production") && setRoot) {
918
918
  setRoot(root);
919
919
  } else {
920
920
  result = root;
@@ -986,7 +986,7 @@ function shouldUpdateComponent(prevVNode, nextVNode, optimized) {
986
986
  const { props: prevProps, children: prevChildren, component } = prevVNode;
987
987
  const { props: nextProps, children: nextChildren, patchFlag } = nextVNode;
988
988
  const emits = component.emitsOptions;
989
- if (process.env.NODE_ENV !== "production" && (prevChildren || nextChildren) && isHmrUpdating) {
989
+ if (!!(process.env.NODE_ENV !== "production") && (prevChildren || nextChildren) && isHmrUpdating) {
990
990
  return true;
991
991
  }
992
992
  if (nextVNode.dirs || nextVNode.transition) {
@@ -1298,7 +1298,7 @@ function patchSuspense(n1, n2, container, anchor, parentComponent, isSVG, slotSc
1298
1298
  }
1299
1299
  let hasWarned = false;
1300
1300
  function createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, isSVG, slotScopeIds, optimized, rendererInternals, isHydrating = false) {
1301
- if (process.env.NODE_ENV !== "production" && true && !hasWarned) {
1301
+ if (!!(process.env.NODE_ENV !== "production") && true && !hasWarned) {
1302
1302
  hasWarned = true;
1303
1303
  console[console.info ? "info" : "log"](
1304
1304
  `<Suspense> is an experimental feature and its API will likely change.`
@@ -1320,7 +1320,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
1320
1320
  }
1321
1321
  }
1322
1322
  const timeout = vnode.props ? toNumber(vnode.props.timeout) : void 0;
1323
- if (process.env.NODE_ENV !== "production") {
1323
+ if (!!(process.env.NODE_ENV !== "production")) {
1324
1324
  assertNumber(timeout, `Suspense timeout`);
1325
1325
  }
1326
1326
  const suspense = {
@@ -1341,7 +1341,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
1341
1341
  isUnmounted: false,
1342
1342
  effects: [],
1343
1343
  resolve(resume = false, sync = false) {
1344
- if (process.env.NODE_ENV !== "production") {
1344
+ if (!!(process.env.NODE_ENV !== "production")) {
1345
1345
  if (!resume && !suspense.pendingBranch) {
1346
1346
  throw new Error(
1347
1347
  `suspense.resolve() is called without a pending branch.`
@@ -1472,7 +1472,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
1472
1472
  }
1473
1473
  instance.asyncResolved = true;
1474
1474
  const { vnode: vnode2 } = instance;
1475
- if (process.env.NODE_ENV !== "production") {
1475
+ if (!!(process.env.NODE_ENV !== "production")) {
1476
1476
  pushWarningContext(vnode2);
1477
1477
  }
1478
1478
  handleSetupResult(instance, asyncSetupResult, false);
@@ -1498,7 +1498,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
1498
1498
  remove(placeholder);
1499
1499
  }
1500
1500
  updateHOCHostEl(instance, vnode2.el);
1501
- if (process.env.NODE_ENV !== "production") {
1501
+ if (!!(process.env.NODE_ENV !== "production")) {
1502
1502
  popWarningContext();
1503
1503
  }
1504
1504
  if (isInPendingSuspense && --suspense.deps === 0) {
@@ -1581,7 +1581,7 @@ function normalizeSuspenseSlot(s) {
1581
1581
  }
1582
1582
  if (isArray(s)) {
1583
1583
  const singleChild = filterSingleRoot(s);
1584
- if (process.env.NODE_ENV !== "production" && !singleChild) {
1584
+ if (!!(process.env.NODE_ENV !== "production") && !singleChild) {
1585
1585
  warn(`<Suspense> slots expect a single root node.`);
1586
1586
  }
1587
1587
  s = singleChild;
@@ -1624,19 +1624,19 @@ function watchPostEffect(effect, options) {
1624
1624
  return doWatch(
1625
1625
  effect,
1626
1626
  null,
1627
- process.env.NODE_ENV !== "production" ? extend({}, options, { flush: "post" }) : { flush: "post" }
1627
+ !!(process.env.NODE_ENV !== "production") ? extend({}, options, { flush: "post" }) : { flush: "post" }
1628
1628
  );
1629
1629
  }
1630
1630
  function watchSyncEffect(effect, options) {
1631
1631
  return doWatch(
1632
1632
  effect,
1633
1633
  null,
1634
- process.env.NODE_ENV !== "production" ? extend({}, options, { flush: "sync" }) : { flush: "sync" }
1634
+ !!(process.env.NODE_ENV !== "production") ? extend({}, options, { flush: "sync" }) : { flush: "sync" }
1635
1635
  );
1636
1636
  }
1637
1637
  const INITIAL_WATCHER_VALUE = {};
1638
1638
  function watch(source, cb, options) {
1639
- if (process.env.NODE_ENV !== "production" && !isFunction(cb)) {
1639
+ if (!!(process.env.NODE_ENV !== "production") && !isFunction(cb)) {
1640
1640
  warn(
1641
1641
  `\`watch(fn, options?)\` signature has been moved to a separate API. Use \`watchEffect(fn, options?)\` instead. \`watch\` now only supports \`watch(source, cb, options?) signature.`
1642
1642
  );
@@ -1645,7 +1645,7 @@ function watch(source, cb, options) {
1645
1645
  }
1646
1646
  function doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EMPTY_OBJ) {
1647
1647
  var _a;
1648
- if (process.env.NODE_ENV !== "production" && !cb) {
1648
+ if (!!(process.env.NODE_ENV !== "production") && !cb) {
1649
1649
  if (immediate !== void 0) {
1650
1650
  warn(
1651
1651
  `watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.`
@@ -1685,7 +1685,7 @@ function doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EM
1685
1685
  } else if (isFunction(s)) {
1686
1686
  return callWithErrorHandling(s, instance, 2);
1687
1687
  } else {
1688
- process.env.NODE_ENV !== "production" && warnInvalidSource(s);
1688
+ !!(process.env.NODE_ENV !== "production") && warnInvalidSource(s);
1689
1689
  }
1690
1690
  });
1691
1691
  } else if (isFunction(source)) {
@@ -1709,7 +1709,7 @@ function doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EM
1709
1709
  }
1710
1710
  } else {
1711
1711
  getter = NOOP;
1712
- process.env.NODE_ENV !== "production" && warnInvalidSource(source);
1712
+ !!(process.env.NODE_ENV !== "production") && warnInvalidSource(source);
1713
1713
  }
1714
1714
  if (cb && deep) {
1715
1715
  const baseGetter = getter;
@@ -1778,7 +1778,7 @@ function doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EM
1778
1778
  scheduler = () => queueJob(job);
1779
1779
  }
1780
1780
  const effect = new ReactiveEffect(getter, scheduler);
1781
- if (process.env.NODE_ENV !== "production") {
1781
+ if (!!(process.env.NODE_ENV !== "production")) {
1782
1782
  effect.onTrack = onTrack;
1783
1783
  effect.onTrigger = onTrigger;
1784
1784
  }
@@ -1871,7 +1871,7 @@ function validateDirectiveName(name) {
1871
1871
  function withDirectives(vnode, directives) {
1872
1872
  const internalInstance = currentRenderingInstance;
1873
1873
  if (internalInstance === null) {
1874
- process.env.NODE_ENV !== "production" && warn(`withDirectives can only be used inside render functions.`);
1874
+ !!(process.env.NODE_ENV !== "production") && warn(`withDirectives can only be used inside render functions.`);
1875
1875
  return vnode;
1876
1876
  }
1877
1877
  const instance = getExposeProxy(internalInstance) || internalInstance.proxy;
@@ -1975,7 +1975,7 @@ const BaseTransitionImpl = {
1975
1975
  let hasFound = false;
1976
1976
  for (const c of children) {
1977
1977
  if (c.type !== Comment) {
1978
- if (process.env.NODE_ENV !== "production" && hasFound) {
1978
+ if (!!(process.env.NODE_ENV !== "production") && hasFound) {
1979
1979
  warn(
1980
1980
  "<transition> can only be used on a single element or component. Use <transition-group> for lists."
1981
1981
  );
@@ -1983,14 +1983,14 @@ const BaseTransitionImpl = {
1983
1983
  }
1984
1984
  child = c;
1985
1985
  hasFound = true;
1986
- if (!process.env.NODE_ENV !== "production")
1986
+ if (!!!(process.env.NODE_ENV !== "production"))
1987
1987
  break;
1988
1988
  }
1989
1989
  }
1990
1990
  }
1991
1991
  const rawProps = toRaw(props);
1992
1992
  const { mode } = rawProps;
1993
- if (process.env.NODE_ENV !== "production" && mode && mode !== "in-out" && mode !== "out-in" && mode !== "default") {
1993
+ if (!!(process.env.NODE_ENV !== "production") && mode && mode !== "in-out" && mode !== "out-in" && mode !== "default") {
1994
1994
  warn(`invalid <transition> mode: ${mode}`);
1995
1995
  }
1996
1996
  if (state.isLeaving) {
@@ -2296,7 +2296,7 @@ function defineAsyncComponent(source) {
2296
2296
  if (thisRequest !== pendingRequest && pendingRequest) {
2297
2297
  return pendingRequest;
2298
2298
  }
2299
- if (process.env.NODE_ENV !== "production" && !comp) {
2299
+ if (!!(process.env.NODE_ENV !== "production") && !comp) {
2300
2300
  warn(
2301
2301
  `Async component loader resolved to undefined. If you are using retry(), make sure to return its return value.`
2302
2302
  );
@@ -2304,7 +2304,7 @@ function defineAsyncComponent(source) {
2304
2304
  if (comp && (comp.__esModule || comp[Symbol.toStringTag] === "Module")) {
2305
2305
  comp = comp.default;
2306
2306
  }
2307
- if (process.env.NODE_ENV !== "production" && comp && !isObject(comp) && !isFunction(comp)) {
2307
+ if (!!(process.env.NODE_ENV !== "production") && comp && !isObject(comp) && !isFunction(comp)) {
2308
2308
  throw new Error(`Invalid async component load result: ${comp}`);
2309
2309
  }
2310
2310
  resolvedComp = comp;
@@ -2417,7 +2417,7 @@ const KeepAliveImpl = {
2417
2417
  const cache = /* @__PURE__ */ new Map();
2418
2418
  const keys = /* @__PURE__ */ new Set();
2419
2419
  let current = null;
2420
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
2420
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
2421
2421
  instance.__v_cache = cache;
2422
2422
  }
2423
2423
  const parentSuspense = instance.suspense;
@@ -2454,7 +2454,7 @@ const KeepAliveImpl = {
2454
2454
  invokeVNodeHook(vnodeHook, instance2.parent, vnode);
2455
2455
  }
2456
2456
  }, parentSuspense);
2457
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
2457
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
2458
2458
  devtoolsComponentAdded(instance2);
2459
2459
  }
2460
2460
  };
@@ -2471,7 +2471,7 @@ const KeepAliveImpl = {
2471
2471
  }
2472
2472
  instance2.isDeactivated = true;
2473
2473
  }, parentSuspense);
2474
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
2474
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
2475
2475
  devtoolsComponentAdded(instance2);
2476
2476
  }
2477
2477
  };
@@ -2535,7 +2535,7 @@ const KeepAliveImpl = {
2535
2535
  const children = slots.default();
2536
2536
  const rawVNode = children[0];
2537
2537
  if (children.length > 1) {
2538
- if (process.env.NODE_ENV !== "production") {
2538
+ if (!!(process.env.NODE_ENV !== "production")) {
2539
2539
  warn(`KeepAlive should contain exactly one component child.`);
2540
2540
  }
2541
2541
  current = null;
@@ -2663,7 +2663,7 @@ function injectHook(type, hook, target = currentInstance, prepend = false) {
2663
2663
  hooks.push(wrappedHook);
2664
2664
  }
2665
2665
  return wrappedHook;
2666
- } else if (process.env.NODE_ENV !== "production") {
2666
+ } else if (!!(process.env.NODE_ENV !== "production")) {
2667
2667
  const apiName = toHandlerKey(ErrorTypeStrings[type].replace(/ hook$/, ""));
2668
2668
  warn(
2669
2669
  `${apiName} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup().` + (` If you are using async setup(), make sure to register lifecycle hooks before the first await statement.` )
@@ -2730,13 +2730,13 @@ function resolveAsset(type, name, warnMissing = true, maybeSelfReference = false
2730
2730
  if (!res && maybeSelfReference) {
2731
2731
  return Component;
2732
2732
  }
2733
- if (process.env.NODE_ENV !== "production" && warnMissing && !res) {
2733
+ if (!!(process.env.NODE_ENV !== "production") && warnMissing && !res) {
2734
2734
  const extra = type === COMPONENTS ? `
2735
2735
  If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.` : ``;
2736
2736
  warn(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);
2737
2737
  }
2738
2738
  return res;
2739
- } else if (process.env.NODE_ENV !== "production") {
2739
+ } else if (!!(process.env.NODE_ENV !== "production")) {
2740
2740
  warn(
2741
2741
  `resolve${capitalize(type.slice(0, -1))} can only be used in render() or setup().`
2742
2742
  );
@@ -2755,7 +2755,7 @@ function renderList(source, renderItem, cache, index) {
2755
2755
  ret[i] = renderItem(source[i], i, void 0, cached && cached[i]);
2756
2756
  }
2757
2757
  } else if (typeof source === "number") {
2758
- if (process.env.NODE_ENV !== "production" && !Number.isInteger(source)) {
2758
+ if (!!(process.env.NODE_ENV !== "production") && !Number.isInteger(source)) {
2759
2759
  warn(`The v-for range expect an integer value but got ${source}.`);
2760
2760
  }
2761
2761
  ret = new Array(source);
@@ -2811,7 +2811,7 @@ function renderSlot(slots, name, props = {}, fallback, noSlotted) {
2811
2811
  return createVNode("slot", props, fallback && fallback());
2812
2812
  }
2813
2813
  let slot = slots[name];
2814
- if (process.env.NODE_ENV !== "production" && slot && slot.length > 1) {
2814
+ if (!!(process.env.NODE_ENV !== "production") && slot && slot.length > 1) {
2815
2815
  warn(
2816
2816
  `SSR-optimized slot function detected in a non-SSR-optimized render function. You need to mark this component with $dynamic-slots in the parent template.`
2817
2817
  );
@@ -2854,7 +2854,7 @@ function ensureValidVNode(vnodes) {
2854
2854
 
2855
2855
  function toHandlers(obj, preserveCaseIfNecessary) {
2856
2856
  const ret = {};
2857
- if (process.env.NODE_ENV !== "production" && !isObject(obj)) {
2857
+ if (!!(process.env.NODE_ENV !== "production") && !isObject(obj)) {
2858
2858
  warn(`v-on with no argument expects an object value.`);
2859
2859
  return ret;
2860
2860
  }
@@ -2878,10 +2878,10 @@ const publicPropertiesMap = (
2878
2878
  $: (i) => i,
2879
2879
  $el: (i) => i.vnode.el,
2880
2880
  $data: (i) => i.data,
2881
- $props: (i) => process.env.NODE_ENV !== "production" ? shallowReadonly(i.props) : i.props,
2882
- $attrs: (i) => process.env.NODE_ENV !== "production" ? shallowReadonly(i.attrs) : i.attrs,
2883
- $slots: (i) => process.env.NODE_ENV !== "production" ? shallowReadonly(i.slots) : i.slots,
2884
- $refs: (i) => process.env.NODE_ENV !== "production" ? shallowReadonly(i.refs) : i.refs,
2881
+ $props: (i) => !!(process.env.NODE_ENV !== "production") ? shallowReadonly(i.props) : i.props,
2882
+ $attrs: (i) => !!(process.env.NODE_ENV !== "production") ? shallowReadonly(i.attrs) : i.attrs,
2883
+ $slots: (i) => !!(process.env.NODE_ENV !== "production") ? shallowReadonly(i.slots) : i.slots,
2884
+ $refs: (i) => !!(process.env.NODE_ENV !== "production") ? shallowReadonly(i.refs) : i.refs,
2885
2885
  $parent: (i) => getPublicInstance(i.parent),
2886
2886
  $root: (i) => getPublicInstance(i.root),
2887
2887
  $emit: (i) => i.emit,
@@ -2896,7 +2896,7 @@ const hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScript
2896
2896
  const PublicInstanceProxyHandlers = {
2897
2897
  get({ _: instance }, key) {
2898
2898
  const { ctx, setupState, data, props, accessCache, type, appContext } = instance;
2899
- if (process.env.NODE_ENV !== "production" && key === "__isVue") {
2899
+ if (!!(process.env.NODE_ENV !== "production") && key === "__isVue") {
2900
2900
  return true;
2901
2901
  }
2902
2902
  let normalizedProps;
@@ -2938,8 +2938,8 @@ const PublicInstanceProxyHandlers = {
2938
2938
  if (publicGetter) {
2939
2939
  if (key === "$attrs") {
2940
2940
  track(instance, "get", key);
2941
- process.env.NODE_ENV !== "production" && markAttrsAccessed();
2942
- } else if (process.env.NODE_ENV !== "production" && key === "$slots") {
2941
+ !!(process.env.NODE_ENV !== "production") && markAttrsAccessed();
2942
+ } else if (!!(process.env.NODE_ENV !== "production") && key === "$slots") {
2943
2943
  track(instance, "get", key);
2944
2944
  }
2945
2945
  return publicGetter(instance);
@@ -2958,7 +2958,7 @@ const PublicInstanceProxyHandlers = {
2958
2958
  {
2959
2959
  return globalProperties[key];
2960
2960
  }
2961
- } else if (process.env.NODE_ENV !== "production" && currentRenderingInstance && (!isString(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading
2961
+ } else if (!!(process.env.NODE_ENV !== "production") && currentRenderingInstance && (!isString(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading
2962
2962
  // to infinite warning loop
2963
2963
  key.indexOf("__v") !== 0)) {
2964
2964
  if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) {
@@ -2979,23 +2979,23 @@ const PublicInstanceProxyHandlers = {
2979
2979
  if (hasSetupBinding(setupState, key)) {
2980
2980
  setupState[key] = value;
2981
2981
  return true;
2982
- } else if (process.env.NODE_ENV !== "production" && setupState.__isScriptSetup && hasOwn(setupState, key)) {
2982
+ } else if (!!(process.env.NODE_ENV !== "production") && setupState.__isScriptSetup && hasOwn(setupState, key)) {
2983
2983
  warn(`Cannot mutate <script setup> binding "${key}" from Options API.`);
2984
2984
  return false;
2985
2985
  } else if (data !== EMPTY_OBJ && hasOwn(data, key)) {
2986
2986
  data[key] = value;
2987
2987
  return true;
2988
2988
  } else if (hasOwn(instance.props, key)) {
2989
- process.env.NODE_ENV !== "production" && warn(`Attempting to mutate prop "${key}". Props are readonly.`);
2989
+ !!(process.env.NODE_ENV !== "production") && warn(`Attempting to mutate prop "${key}". Props are readonly.`);
2990
2990
  return false;
2991
2991
  }
2992
2992
  if (key[0] === "$" && key.slice(1) in instance) {
2993
- process.env.NODE_ENV !== "production" && warn(
2993
+ !!(process.env.NODE_ENV !== "production") && warn(
2994
2994
  `Attempting to mutate public property "${key}". Properties starting with $ are reserved and readonly.`
2995
2995
  );
2996
2996
  return false;
2997
2997
  } else {
2998
- if (process.env.NODE_ENV !== "production" && key in instance.appContext.config.globalProperties) {
2998
+ if (!!(process.env.NODE_ENV !== "production") && key in instance.appContext.config.globalProperties) {
2999
2999
  Object.defineProperty(ctx, key, {
3000
3000
  enumerable: true,
3001
3001
  configurable: true,
@@ -3022,7 +3022,7 @@ const PublicInstanceProxyHandlers = {
3022
3022
  return Reflect.defineProperty(target, key, descriptor);
3023
3023
  }
3024
3024
  };
3025
- if (process.env.NODE_ENV !== "production" && true) {
3025
+ if (!!(process.env.NODE_ENV !== "production") && true) {
3026
3026
  PublicInstanceProxyHandlers.ownKeys = (target) => {
3027
3027
  warn(
3028
3028
  `Avoid app logic that relies on enumerating keys on a component instance. The keys will be empty in production mode to avoid performance overhead.`
@@ -3042,7 +3042,7 @@ const RuntimeCompiledPublicInstanceProxyHandlers = /* @__PURE__ */ extend(
3042
3042
  },
3043
3043
  has(_, key) {
3044
3044
  const has = key[0] !== "_" && !isGloballyWhitelisted(key);
3045
- if (process.env.NODE_ENV !== "production" && !has && PublicInstanceProxyHandlers.has(_, key)) {
3045
+ if (!!(process.env.NODE_ENV !== "production") && !has && PublicInstanceProxyHandlers.has(_, key)) {
3046
3046
  warn(
3047
3047
  `Property ${JSON.stringify(
3048
3048
  key
@@ -3114,40 +3114,40 @@ const warnRuntimeUsage = (method) => warn(
3114
3114
  `${method}() is a compiler-hint helper that is only usable inside <script setup> of a single file component. Its arguments should be compiled away and passing it at runtime has no effect.`
3115
3115
  );
3116
3116
  function defineProps() {
3117
- if (process.env.NODE_ENV !== "production") {
3117
+ if (!!(process.env.NODE_ENV !== "production")) {
3118
3118
  warnRuntimeUsage(`defineProps`);
3119
3119
  }
3120
3120
  return null;
3121
3121
  }
3122
3122
  function defineEmits() {
3123
- if (process.env.NODE_ENV !== "production") {
3123
+ if (!!(process.env.NODE_ENV !== "production")) {
3124
3124
  warnRuntimeUsage(`defineEmits`);
3125
3125
  }
3126
3126
  return null;
3127
3127
  }
3128
3128
  function defineExpose(exposed) {
3129
- if (process.env.NODE_ENV !== "production") {
3129
+ if (!!(process.env.NODE_ENV !== "production")) {
3130
3130
  warnRuntimeUsage(`defineExpose`);
3131
3131
  }
3132
3132
  }
3133
3133
  function defineOptions(options) {
3134
- if (process.env.NODE_ENV !== "production") {
3134
+ if (!!(process.env.NODE_ENV !== "production")) {
3135
3135
  warnRuntimeUsage(`defineOptions`);
3136
3136
  }
3137
3137
  }
3138
3138
  function defineSlots() {
3139
- if (process.env.NODE_ENV !== "production") {
3139
+ if (!!(process.env.NODE_ENV !== "production")) {
3140
3140
  warnRuntimeUsage(`defineSlots`);
3141
3141
  }
3142
3142
  return null;
3143
3143
  }
3144
3144
  function defineModel() {
3145
- if (process.env.NODE_ENV !== "production") {
3145
+ if (!!(process.env.NODE_ENV !== "production")) {
3146
3146
  warnRuntimeUsage("defineModel");
3147
3147
  }
3148
3148
  }
3149
3149
  function withDefaults(props, defaults) {
3150
- if (process.env.NODE_ENV !== "production") {
3150
+ if (!!(process.env.NODE_ENV !== "production")) {
3151
3151
  warnRuntimeUsage(`withDefaults`);
3152
3152
  }
3153
3153
  return null;
@@ -3160,11 +3160,11 @@ function useAttrs() {
3160
3160
  }
3161
3161
  function useModel(props, name, options) {
3162
3162
  const i = getCurrentInstance();
3163
- if (process.env.NODE_ENV !== "production" && !i) {
3163
+ if (!!(process.env.NODE_ENV !== "production") && !i) {
3164
3164
  warn(`useModel() called without active instance.`);
3165
3165
  return ref();
3166
3166
  }
3167
- if (process.env.NODE_ENV !== "production" && !i.propsOptions[0][name]) {
3167
+ if (!!(process.env.NODE_ENV !== "production") && !i.propsOptions[0][name]) {
3168
3168
  warn(`useModel() called with prop "${name}" which is not declared.`);
3169
3169
  return ref();
3170
3170
  }
@@ -3194,7 +3194,7 @@ function useModel(props, name, options) {
3194
3194
  }
3195
3195
  function getContext() {
3196
3196
  const i = getCurrentInstance();
3197
- if (process.env.NODE_ENV !== "production" && !i) {
3197
+ if (!!(process.env.NODE_ENV !== "production") && !i) {
3198
3198
  warn(`useContext() called without active instance.`);
3199
3199
  }
3200
3200
  return i.setupContext || (i.setupContext = createSetupContext(i));
@@ -3219,7 +3219,7 @@ function mergeDefaults(raw, defaults) {
3219
3219
  }
3220
3220
  } else if (opt === null) {
3221
3221
  opt = props[key] = { default: defaults[key] };
3222
- } else if (process.env.NODE_ENV !== "production") {
3222
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3223
3223
  warn(`props default key "${key}" has no corresponding declaration.`);
3224
3224
  }
3225
3225
  if (opt && defaults[`__skip_${key}`]) {
@@ -3249,7 +3249,7 @@ function createPropsRestProxy(props, excludedKeys) {
3249
3249
  }
3250
3250
  function withAsyncContext(getAwaitable) {
3251
3251
  const ctx = getCurrentInstance();
3252
- if (process.env.NODE_ENV !== "production" && !ctx) {
3252
+ if (!!(process.env.NODE_ENV !== "production") && !ctx) {
3253
3253
  warn(
3254
3254
  `withAsyncContext called without active current instance. This is likely a bug.`
3255
3255
  );
@@ -3317,8 +3317,8 @@ function applyOptions(instance) {
3317
3317
  directives,
3318
3318
  filters
3319
3319
  } = options;
3320
- const checkDuplicateProperties = process.env.NODE_ENV !== "production" ? createDuplicateChecker() : null;
3321
- if (process.env.NODE_ENV !== "production") {
3320
+ const checkDuplicateProperties = !!(process.env.NODE_ENV !== "production") ? createDuplicateChecker() : null;
3321
+ if (!!(process.env.NODE_ENV !== "production")) {
3322
3322
  const [propsOptions] = instance.propsOptions;
3323
3323
  if (propsOptions) {
3324
3324
  for (const key in propsOptions) {
@@ -3333,7 +3333,7 @@ function applyOptions(instance) {
3333
3333
  for (const key in methods) {
3334
3334
  const methodHandler = methods[key];
3335
3335
  if (isFunction(methodHandler)) {
3336
- if (process.env.NODE_ENV !== "production") {
3336
+ if (!!(process.env.NODE_ENV !== "production")) {
3337
3337
  Object.defineProperty(ctx, key, {
3338
3338
  value: methodHandler.bind(publicThis),
3339
3339
  configurable: true,
@@ -3343,10 +3343,10 @@ function applyOptions(instance) {
3343
3343
  } else {
3344
3344
  ctx[key] = methodHandler.bind(publicThis);
3345
3345
  }
3346
- if (process.env.NODE_ENV !== "production") {
3346
+ if (!!(process.env.NODE_ENV !== "production")) {
3347
3347
  checkDuplicateProperties("Methods" /* METHODS */, key);
3348
3348
  }
3349
- } else if (process.env.NODE_ENV !== "production") {
3349
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3350
3350
  warn(
3351
3351
  `Method "${key}" has type "${typeof methodHandler}" in the component definition. Did you reference the function correctly?`
3352
3352
  );
@@ -3354,22 +3354,22 @@ function applyOptions(instance) {
3354
3354
  }
3355
3355
  }
3356
3356
  if (dataOptions) {
3357
- if (process.env.NODE_ENV !== "production" && !isFunction(dataOptions)) {
3357
+ if (!!(process.env.NODE_ENV !== "production") && !isFunction(dataOptions)) {
3358
3358
  warn(
3359
3359
  `The data option must be a function. Plain object usage is no longer supported.`
3360
3360
  );
3361
3361
  }
3362
3362
  const data = dataOptions.call(publicThis, publicThis);
3363
- if (process.env.NODE_ENV !== "production" && isPromise(data)) {
3363
+ if (!!(process.env.NODE_ENV !== "production") && isPromise(data)) {
3364
3364
  warn(
3365
3365
  `data() returned a Promise - note data() cannot be async; If you intend to perform data fetching before component renders, use async setup() + <Suspense>.`
3366
3366
  );
3367
3367
  }
3368
3368
  if (!isObject(data)) {
3369
- process.env.NODE_ENV !== "production" && warn(`data() should return an object.`);
3369
+ !!(process.env.NODE_ENV !== "production") && warn(`data() should return an object.`);
3370
3370
  } else {
3371
3371
  instance.data = reactive(data);
3372
- if (process.env.NODE_ENV !== "production") {
3372
+ if (!!(process.env.NODE_ENV !== "production")) {
3373
3373
  for (const key in data) {
3374
3374
  checkDuplicateProperties("Data" /* DATA */, key);
3375
3375
  if (!isReservedPrefix(key[0])) {
@@ -3389,10 +3389,10 @@ function applyOptions(instance) {
3389
3389
  for (const key in computedOptions) {
3390
3390
  const opt = computedOptions[key];
3391
3391
  const get = isFunction(opt) ? opt.bind(publicThis, publicThis) : isFunction(opt.get) ? opt.get.bind(publicThis, publicThis) : NOOP;
3392
- if (process.env.NODE_ENV !== "production" && get === NOOP) {
3392
+ if (!!(process.env.NODE_ENV !== "production") && get === NOOP) {
3393
3393
  warn(`Computed property "${key}" has no getter.`);
3394
3394
  }
3395
- const set = !isFunction(opt) && isFunction(opt.set) ? opt.set.bind(publicThis) : process.env.NODE_ENV !== "production" ? () => {
3395
+ const set = !isFunction(opt) && isFunction(opt.set) ? opt.set.bind(publicThis) : !!(process.env.NODE_ENV !== "production") ? () => {
3396
3396
  warn(
3397
3397
  `Write operation failed: computed property "${key}" is readonly.`
3398
3398
  );
@@ -3407,7 +3407,7 @@ function applyOptions(instance) {
3407
3407
  get: () => c.value,
3408
3408
  set: (v) => c.value = v
3409
3409
  });
3410
- if (process.env.NODE_ENV !== "production") {
3410
+ if (!!(process.env.NODE_ENV !== "production")) {
3411
3411
  checkDuplicateProperties("Computed" /* COMPUTED */, key);
3412
3412
  }
3413
3413
  }
@@ -3500,7 +3500,7 @@ function resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP)
3500
3500
  } else {
3501
3501
  ctx[key] = injected;
3502
3502
  }
3503
- if (process.env.NODE_ENV !== "production") {
3503
+ if (!!(process.env.NODE_ENV !== "production")) {
3504
3504
  checkDuplicateProperties("Inject" /* INJECT */, key);
3505
3505
  }
3506
3506
  }
@@ -3518,7 +3518,7 @@ function createWatcher(raw, ctx, publicThis, key) {
3518
3518
  const handler = ctx[raw];
3519
3519
  if (isFunction(handler)) {
3520
3520
  watch(getter, handler);
3521
- } else if (process.env.NODE_ENV !== "production") {
3521
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3522
3522
  warn(`Invalid watch handler specified by key "${raw}"`, handler);
3523
3523
  }
3524
3524
  } else if (isFunction(raw)) {
@@ -3530,11 +3530,11 @@ function createWatcher(raw, ctx, publicThis, key) {
3530
3530
  const handler = isFunction(raw.handler) ? raw.handler.bind(publicThis) : ctx[raw.handler];
3531
3531
  if (isFunction(handler)) {
3532
3532
  watch(getter, handler, raw);
3533
- } else if (process.env.NODE_ENV !== "production") {
3533
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3534
3534
  warn(`Invalid watch handler specified by key "${raw.handler}"`, handler);
3535
3535
  }
3536
3536
  }
3537
- } else if (process.env.NODE_ENV !== "production") {
3537
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3538
3538
  warn(`Invalid watch option: "${key}"`, raw);
3539
3539
  }
3540
3540
  }
@@ -3580,7 +3580,7 @@ function mergeOptions(to, from, strats, asMixin = false) {
3580
3580
  }
3581
3581
  for (const key in from) {
3582
3582
  if (asMixin && key === "expose") {
3583
- process.env.NODE_ENV !== "production" && warn(
3583
+ !!(process.env.NODE_ENV !== "production") && warn(
3584
3584
  `"expose" option is ignored when declared in mixins or extends. It should only be declared in the base component itself.`
3585
3585
  );
3586
3586
  } else {
@@ -3708,11 +3708,11 @@ function createAppAPI(render, hydrate) {
3708
3708
  rootComponent = extend({}, rootComponent);
3709
3709
  }
3710
3710
  if (rootProps != null && !isObject(rootProps)) {
3711
- process.env.NODE_ENV !== "production" && warn(`root props passed to app.mount() must be an object.`);
3711
+ !!(process.env.NODE_ENV !== "production") && warn(`root props passed to app.mount() must be an object.`);
3712
3712
  rootProps = null;
3713
3713
  }
3714
3714
  const context = createAppContext();
3715
- if (process.env.NODE_ENV !== "production") {
3715
+ if (!!(process.env.NODE_ENV !== "production")) {
3716
3716
  Object.defineProperty(context.config, "unwrapInjectedRef", {
3717
3717
  get() {
3718
3718
  return true;
@@ -3738,7 +3738,7 @@ function createAppAPI(render, hydrate) {
3738
3738
  return context.config;
3739
3739
  },
3740
3740
  set config(v) {
3741
- if (process.env.NODE_ENV !== "production") {
3741
+ if (!!(process.env.NODE_ENV !== "production")) {
3742
3742
  warn(
3743
3743
  `app.config cannot be replaced. Modify individual options instead.`
3744
3744
  );
@@ -3746,14 +3746,14 @@ function createAppAPI(render, hydrate) {
3746
3746
  },
3747
3747
  use(plugin, ...options) {
3748
3748
  if (installedPlugins.has(plugin)) {
3749
- process.env.NODE_ENV !== "production" && warn(`Plugin has already been applied to target app.`);
3749
+ !!(process.env.NODE_ENV !== "production") && warn(`Plugin has already been applied to target app.`);
3750
3750
  } else if (plugin && isFunction(plugin.install)) {
3751
3751
  installedPlugins.add(plugin);
3752
3752
  plugin.install(app, ...options);
3753
3753
  } else if (isFunction(plugin)) {
3754
3754
  installedPlugins.add(plugin);
3755
3755
  plugin(app, ...options);
3756
- } else if (process.env.NODE_ENV !== "production") {
3756
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3757
3757
  warn(
3758
3758
  `A plugin must either be a function or an object with an "install" function.`
3759
3759
  );
@@ -3764,37 +3764,37 @@ function createAppAPI(render, hydrate) {
3764
3764
  if (__VUE_OPTIONS_API__) {
3765
3765
  if (!context.mixins.includes(mixin)) {
3766
3766
  context.mixins.push(mixin);
3767
- } else if (process.env.NODE_ENV !== "production") {
3767
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3768
3768
  warn(
3769
3769
  "Mixin has already been applied to target app" + (mixin.name ? `: ${mixin.name}` : "")
3770
3770
  );
3771
3771
  }
3772
- } else if (process.env.NODE_ENV !== "production") {
3772
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3773
3773
  warn("Mixins are only available in builds supporting Options API");
3774
3774
  }
3775
3775
  return app;
3776
3776
  },
3777
3777
  component(name, component) {
3778
- if (process.env.NODE_ENV !== "production") {
3778
+ if (!!(process.env.NODE_ENV !== "production")) {
3779
3779
  validateComponentName(name, context.config);
3780
3780
  }
3781
3781
  if (!component) {
3782
3782
  return context.components[name];
3783
3783
  }
3784
- if (process.env.NODE_ENV !== "production" && context.components[name]) {
3784
+ if (!!(process.env.NODE_ENV !== "production") && context.components[name]) {
3785
3785
  warn(`Component "${name}" has already been registered in target app.`);
3786
3786
  }
3787
3787
  context.components[name] = component;
3788
3788
  return app;
3789
3789
  },
3790
3790
  directive(name, directive) {
3791
- if (process.env.NODE_ENV !== "production") {
3791
+ if (!!(process.env.NODE_ENV !== "production")) {
3792
3792
  validateDirectiveName(name);
3793
3793
  }
3794
3794
  if (!directive) {
3795
3795
  return context.directives[name];
3796
3796
  }
3797
- if (process.env.NODE_ENV !== "production" && context.directives[name]) {
3797
+ if (!!(process.env.NODE_ENV !== "production") && context.directives[name]) {
3798
3798
  warn(`Directive "${name}" has already been registered in target app.`);
3799
3799
  }
3800
3800
  context.directives[name] = directive;
@@ -3802,7 +3802,7 @@ function createAppAPI(render, hydrate) {
3802
3802
  },
3803
3803
  mount(rootContainer, isHydrate, isSVG) {
3804
3804
  if (!isMounted) {
3805
- if (process.env.NODE_ENV !== "production" && rootContainer.__vue_app__) {
3805
+ if (!!(process.env.NODE_ENV !== "production") && rootContainer.__vue_app__) {
3806
3806
  warn(
3807
3807
  `There is already an app instance mounted on the host container.
3808
3808
  If you want to mount another app on the same host container, you need to unmount the previous app by calling \`app.unmount()\` first.`
@@ -3813,7 +3813,7 @@ function createAppAPI(render, hydrate) {
3813
3813
  rootProps
3814
3814
  );
3815
3815
  vnode.appContext = context;
3816
- if (process.env.NODE_ENV !== "production") {
3816
+ if (!!(process.env.NODE_ENV !== "production")) {
3817
3817
  context.reload = () => {
3818
3818
  render(cloneVNode(vnode), rootContainer, isSVG);
3819
3819
  };
@@ -3826,12 +3826,12 @@ function createAppAPI(render, hydrate) {
3826
3826
  isMounted = true;
3827
3827
  app._container = rootContainer;
3828
3828
  rootContainer.__vue_app__ = app;
3829
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
3829
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
3830
3830
  app._instance = vnode.component;
3831
3831
  devtoolsInitApp(app, version);
3832
3832
  }
3833
3833
  return getExposeProxy(vnode.component) || vnode.component.proxy;
3834
- } else if (process.env.NODE_ENV !== "production") {
3834
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3835
3835
  warn(
3836
3836
  `App has already been mounted.
3837
3837
  If you want to remount the same app, move your app creation logic into a factory function and create fresh app instances for each mount - e.g. \`const createMyApp = () => createApp(App)\``
@@ -3841,17 +3841,17 @@ If you want to remount the same app, move your app creation logic into a factory
3841
3841
  unmount() {
3842
3842
  if (isMounted) {
3843
3843
  render(null, app._container);
3844
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
3844
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
3845
3845
  app._instance = null;
3846
3846
  devtoolsUnmountApp(app);
3847
3847
  }
3848
3848
  delete app._container.__vue_app__;
3849
- } else if (process.env.NODE_ENV !== "production") {
3849
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3850
3850
  warn(`Cannot unmount an app that is not mounted.`);
3851
3851
  }
3852
3852
  },
3853
3853
  provide(key, value) {
3854
- if (process.env.NODE_ENV !== "production" && key in context.provides) {
3854
+ if (!!(process.env.NODE_ENV !== "production") && key in context.provides) {
3855
3855
  warn(
3856
3856
  `App already provides property with key "${String(key)}". It will be overwritten with the new value.`
3857
3857
  );
@@ -3875,7 +3875,7 @@ let currentApp = null;
3875
3875
 
3876
3876
  function provide(key, value) {
3877
3877
  if (!currentInstance) {
3878
- if (process.env.NODE_ENV !== "production") {
3878
+ if (!!(process.env.NODE_ENV !== "production")) {
3879
3879
  warn(`provide() can only be used inside setup().`);
3880
3880
  }
3881
3881
  } else {
@@ -3895,10 +3895,10 @@ function inject(key, defaultValue, treatDefaultAsFactory = false) {
3895
3895
  return provides[key];
3896
3896
  } else if (arguments.length > 1) {
3897
3897
  return treatDefaultAsFactory && isFunction(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue;
3898
- } else if (process.env.NODE_ENV !== "production") {
3898
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3899
3899
  warn(`injection "${String(key)}" not found.`);
3900
3900
  }
3901
- } else if (process.env.NODE_ENV !== "production") {
3901
+ } else if (!!(process.env.NODE_ENV !== "production")) {
3902
3902
  warn(`inject() can only be used inside setup() or functional components.`);
3903
3903
  }
3904
3904
  }
@@ -3917,7 +3917,7 @@ function initProps(instance, rawProps, isStateful, isSSR = false) {
3917
3917
  props[key] = void 0;
3918
3918
  }
3919
3919
  }
3920
- if (process.env.NODE_ENV !== "production") {
3920
+ if (!!(process.env.NODE_ENV !== "production")) {
3921
3921
  validateProps(rawProps || {}, props, instance);
3922
3922
  }
3923
3923
  if (isStateful) {
@@ -3951,7 +3951,7 @@ function updateProps(instance, rawProps, rawPrevProps, optimized) {
3951
3951
  // always force full diff in dev
3952
3952
  // - #1942 if hmr is enabled with sfc component
3953
3953
  // - vite#872 non-sfc component used by sfc component
3954
- !(process.env.NODE_ENV !== "production" && isInHmrContext(instance)) && (optimized || patchFlag > 0) && !(patchFlag & 16)
3954
+ !(!!(process.env.NODE_ENV !== "production") && isInHmrContext(instance)) && (optimized || patchFlag > 0) && !(patchFlag & 16)
3955
3955
  ) {
3956
3956
  if (patchFlag & 8) {
3957
3957
  const propsToUpdate = instance.vnode.dynamicProps;
@@ -4028,7 +4028,7 @@ function updateProps(instance, rawProps, rawPrevProps, optimized) {
4028
4028
  if (hasAttrsChanged) {
4029
4029
  trigger(instance, "set", "$attrs");
4030
4030
  }
4031
- if (process.env.NODE_ENV !== "production") {
4031
+ if (!!(process.env.NODE_ENV !== "production")) {
4032
4032
  validateProps(rawProps || {}, props, instance);
4033
4033
  }
4034
4034
  }
@@ -4142,7 +4142,7 @@ function normalizePropsOptions(comp, appContext, asMixin = false) {
4142
4142
  }
4143
4143
  if (isArray(raw)) {
4144
4144
  for (let i = 0; i < raw.length; i++) {
4145
- if (process.env.NODE_ENV !== "production" && !isString(raw[i])) {
4145
+ if (!!(process.env.NODE_ENV !== "production") && !isString(raw[i])) {
4146
4146
  warn(`props must be strings when using array syntax.`, raw[i]);
4147
4147
  }
4148
4148
  const normalizedKey = camelize(raw[i]);
@@ -4151,7 +4151,7 @@ function normalizePropsOptions(comp, appContext, asMixin = false) {
4151
4151
  }
4152
4152
  }
4153
4153
  } else if (raw) {
4154
- if (process.env.NODE_ENV !== "production" && !isObject(raw)) {
4154
+ if (!!(process.env.NODE_ENV !== "production") && !isObject(raw)) {
4155
4155
  warn(`invalid props options`, raw);
4156
4156
  }
4157
4157
  for (const key in raw) {
@@ -4180,7 +4180,7 @@ function normalizePropsOptions(comp, appContext, asMixin = false) {
4180
4180
  function validatePropName(key) {
4181
4181
  if (key[0] !== "$") {
4182
4182
  return true;
4183
- } else if (process.env.NODE_ENV !== "production") {
4183
+ } else if (!!(process.env.NODE_ENV !== "production")) {
4184
4184
  warn(`Invalid prop name: "${key}" is a reserved property.`);
4185
4185
  }
4186
4186
  return false;
@@ -4307,7 +4307,7 @@ const normalizeSlot = (key, rawSlot, ctx) => {
4307
4307
  return rawSlot;
4308
4308
  }
4309
4309
  const normalized = withCtx((...args) => {
4310
- if (process.env.NODE_ENV !== "production" && currentInstance) {
4310
+ if (!!(process.env.NODE_ENV !== "production") && currentInstance) {
4311
4311
  warn(
4312
4312
  `Slot "${key}" invoked outside of the render function: this will not track dependencies used in the slot. Invoke the slot function inside the render function instead.`
4313
4313
  );
@@ -4326,7 +4326,7 @@ const normalizeObjectSlots = (rawSlots, slots, instance) => {
4326
4326
  if (isFunction(value)) {
4327
4327
  slots[key] = normalizeSlot(key, value, ctx);
4328
4328
  } else if (value != null) {
4329
- if (process.env.NODE_ENV !== "production" && true) {
4329
+ if (!!(process.env.NODE_ENV !== "production") && true) {
4330
4330
  warn(
4331
4331
  `Non-function value encountered for slot "${key}". Prefer function slots for better performance.`
4332
4332
  );
@@ -4337,7 +4337,7 @@ const normalizeObjectSlots = (rawSlots, slots, instance) => {
4337
4337
  }
4338
4338
  };
4339
4339
  const normalizeVNodeSlots = (instance, children) => {
4340
- if (process.env.NODE_ENV !== "production" && !isKeepAlive(instance.vnode) && true) {
4340
+ if (!!(process.env.NODE_ENV !== "production") && !isKeepAlive(instance.vnode) && true) {
4341
4341
  warn(
4342
4342
  `Non-function value encountered for default slot. Prefer function slots for better performance.`
4343
4343
  );
@@ -4371,7 +4371,7 @@ const updateSlots = (instance, children, optimized) => {
4371
4371
  if (vnode.shapeFlag & 32) {
4372
4372
  const type = children._;
4373
4373
  if (type) {
4374
- if (process.env.NODE_ENV !== "production" && isHmrUpdating) {
4374
+ if (!!(process.env.NODE_ENV !== "production") && isHmrUpdating) {
4375
4375
  extend(slots, children);
4376
4376
  trigger(instance, "set", "$slots");
4377
4377
  } else if (optimized && type === 1) {
@@ -4419,7 +4419,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4419
4419
  const refValue = vnode.shapeFlag & 4 ? getExposeProxy(vnode.component) || vnode.component.proxy : vnode.el;
4420
4420
  const value = isUnmount ? null : refValue;
4421
4421
  const { i: owner, r: ref } = rawRef;
4422
- if (process.env.NODE_ENV !== "production" && !owner) {
4422
+ if (!!(process.env.NODE_ENV !== "production") && !owner) {
4423
4423
  warn(
4424
4424
  `Missing ref owner context. ref cannot be used on hoisted vnodes. A vnode with ref must be created inside the render function.`
4425
4425
  );
@@ -4474,7 +4474,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4474
4474
  ref.value = value;
4475
4475
  if (rawRef.k)
4476
4476
  refs[rawRef.k] = value;
4477
- } else if (process.env.NODE_ENV !== "production") {
4477
+ } else if (!!(process.env.NODE_ENV !== "production")) {
4478
4478
  warn("Invalid template ref type:", ref, `(${typeof ref})`);
4479
4479
  }
4480
4480
  };
@@ -4484,7 +4484,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4484
4484
  } else {
4485
4485
  doSet();
4486
4486
  }
4487
- } else if (process.env.NODE_ENV !== "production") {
4487
+ } else if (!!(process.env.NODE_ENV !== "production")) {
4488
4488
  warn("Invalid template ref type:", ref, `(${typeof ref})`);
4489
4489
  }
4490
4490
  }
@@ -4509,7 +4509,7 @@ function createHydrationFunctions(rendererInternals) {
4509
4509
  } = rendererInternals;
4510
4510
  const hydrate = (vnode, container) => {
4511
4511
  if (!container.hasChildNodes()) {
4512
- process.env.NODE_ENV !== "production" && warn(
4512
+ !!(process.env.NODE_ENV !== "production") && warn(
4513
4513
  `Attempting to hydrate existing markup but container is empty. Performing full mount instead.`
4514
4514
  );
4515
4515
  patch(null, vnode, container);
@@ -4555,7 +4555,7 @@ function createHydrationFunctions(rendererInternals) {
4555
4555
  } else {
4556
4556
  if (node.data !== vnode.children) {
4557
4557
  hasMismatch = true;
4558
- process.env.NODE_ENV !== "production" && warn(
4558
+ !!(process.env.NODE_ENV !== "production") && warn(
4559
4559
  `Hydration text mismatch:
4560
4560
  - Client: ${JSON.stringify(node.data)}
4561
4561
  - Server: ${JSON.stringify(vnode.children)}`
@@ -4675,7 +4675,7 @@ function createHydrationFunctions(rendererInternals) {
4675
4675
  rendererInternals,
4676
4676
  hydrateNode
4677
4677
  );
4678
- } else if (process.env.NODE_ENV !== "production") {
4678
+ } else if (!!(process.env.NODE_ENV !== "production")) {
4679
4679
  warn("Invalid HostVNode type:", type, `(${typeof type})`);
4680
4680
  }
4681
4681
  }
@@ -4688,7 +4688,7 @@ function createHydrationFunctions(rendererInternals) {
4688
4688
  optimized = optimized || !!vnode.dynamicChildren;
4689
4689
  const { type, props, patchFlag, shapeFlag, dirs } = vnode;
4690
4690
  const forcePatchValue = type === "input" && dirs || type === "option";
4691
- if (process.env.NODE_ENV !== "production" || forcePatchValue || patchFlag !== -1) {
4691
+ if (!!(process.env.NODE_ENV !== "production") || forcePatchValue || patchFlag !== -1) {
4692
4692
  if (dirs) {
4693
4693
  invokeDirectiveHook(vnode, null, parentComponent, "created");
4694
4694
  }
@@ -4746,7 +4746,7 @@ function createHydrationFunctions(rendererInternals) {
4746
4746
  let hasWarned = false;
4747
4747
  while (next) {
4748
4748
  hasMismatch = true;
4749
- if (process.env.NODE_ENV !== "production" && !hasWarned) {
4749
+ if (!!(process.env.NODE_ENV !== "production") && !hasWarned) {
4750
4750
  warn(
4751
4751
  `Hydration children mismatch in <${vnode.type}>: server rendered element contains more child nodes than client vdom.`
4752
4752
  );
@@ -4759,7 +4759,7 @@ function createHydrationFunctions(rendererInternals) {
4759
4759
  } else if (shapeFlag & 8) {
4760
4760
  if (el.textContent !== vnode.children) {
4761
4761
  hasMismatch = true;
4762
- process.env.NODE_ENV !== "production" && warn(
4762
+ !!(process.env.NODE_ENV !== "production") && warn(
4763
4763
  `Hydration text content mismatch in <${vnode.type}>:
4764
4764
  - Client: ${el.textContent}
4765
4765
  - Server: ${vnode.children}`
@@ -4790,7 +4790,7 @@ function createHydrationFunctions(rendererInternals) {
4790
4790
  continue;
4791
4791
  } else {
4792
4792
  hasMismatch = true;
4793
- if (process.env.NODE_ENV !== "production" && !hasWarned) {
4793
+ if (!!(process.env.NODE_ENV !== "production") && !hasWarned) {
4794
4794
  warn(
4795
4795
  `Hydration children mismatch in <${container.tagName.toLowerCase()}>: server rendered element contains fewer child nodes than client vdom.`
4796
4796
  );
@@ -4835,7 +4835,7 @@ function createHydrationFunctions(rendererInternals) {
4835
4835
  };
4836
4836
  const handleMismatch = (node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragment) => {
4837
4837
  hasMismatch = true;
4838
- process.env.NODE_ENV !== "production" && warn(
4838
+ !!(process.env.NODE_ENV !== "production") && warn(
4839
4839
  `Hydration node mismatch:
4840
4840
  - Client vnode:`,
4841
4841
  vnode.type,
@@ -4898,7 +4898,7 @@ function startMeasure(instance, type) {
4898
4898
  if (instance.appContext.config.performance && isSupported()) {
4899
4899
  perf.mark(`vue-${type}-${instance.uid}`);
4900
4900
  }
4901
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
4901
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
4902
4902
  devtoolsPerfStart(instance, type, isSupported() ? perf.now() : Date.now());
4903
4903
  }
4904
4904
  }
@@ -4915,7 +4915,7 @@ function endMeasure(instance, type) {
4915
4915
  perf.clearMarks(startTag);
4916
4916
  perf.clearMarks(endTag);
4917
4917
  }
4918
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
4918
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
4919
4919
  devtoolsPerfEnd(instance, type, isSupported() ? perf.now() : Date.now());
4920
4920
  }
4921
4921
  }
@@ -4935,14 +4935,14 @@ function isSupported() {
4935
4935
  function initFeatureFlags() {
4936
4936
  const needWarn = [];
4937
4937
  if (typeof __VUE_OPTIONS_API__ !== "boolean") {
4938
- process.env.NODE_ENV !== "production" && needWarn.push(`__VUE_OPTIONS_API__`);
4938
+ !!(process.env.NODE_ENV !== "production") && needWarn.push(`__VUE_OPTIONS_API__`);
4939
4939
  getGlobalThis().__VUE_OPTIONS_API__ = true;
4940
4940
  }
4941
4941
  if (typeof __VUE_PROD_DEVTOOLS__ !== "boolean") {
4942
- process.env.NODE_ENV !== "production" && needWarn.push(`__VUE_PROD_DEVTOOLS__`);
4942
+ !!(process.env.NODE_ENV !== "production") && needWarn.push(`__VUE_PROD_DEVTOOLS__`);
4943
4943
  getGlobalThis().__VUE_PROD_DEVTOOLS__ = false;
4944
4944
  }
4945
- if (process.env.NODE_ENV !== "production" && needWarn.length) {
4945
+ if (!!(process.env.NODE_ENV !== "production") && needWarn.length) {
4946
4946
  const multi = needWarn.length > 1;
4947
4947
  console.warn(
4948
4948
  `Feature flag${multi ? `s` : ``} ${needWarn.join(", ")} ${multi ? `are` : `is`} not explicitly defined. You are running the esm-bundler build of Vue, which expects these compile-time feature flags to be globally injected via the bundler config in order to get better tree-shaking in the production bundle.
@@ -4965,7 +4965,7 @@ function baseCreateRenderer(options, createHydrationFns) {
4965
4965
  }
4966
4966
  const target = getGlobalThis();
4967
4967
  target.__VUE__ = true;
4968
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
4968
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
4969
4969
  setDevtoolsHook(target.__VUE_DEVTOOLS_GLOBAL_HOOK__, target);
4970
4970
  }
4971
4971
  const {
@@ -4982,7 +4982,7 @@ function baseCreateRenderer(options, createHydrationFns) {
4982
4982
  setScopeId: hostSetScopeId = NOOP,
4983
4983
  insertStaticContent: hostInsertStaticContent
4984
4984
  } = options;
4985
- const patch = (n1, n2, container, anchor = null, parentComponent = null, parentSuspense = null, isSVG = false, slotScopeIds = null, optimized = process.env.NODE_ENV !== "production" && isHmrUpdating ? false : !!n2.dynamicChildren) => {
4985
+ const patch = (n1, n2, container, anchor = null, parentComponent = null, parentSuspense = null, isSVG = false, slotScopeIds = null, optimized = !!(process.env.NODE_ENV !== "production") && isHmrUpdating ? false : !!n2.dynamicChildren) => {
4986
4986
  if (n1 === n2) {
4987
4987
  return;
4988
4988
  }
@@ -5006,7 +5006,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5006
5006
  case Static:
5007
5007
  if (n1 == null) {
5008
5008
  mountStaticNode(n2, container, anchor, isSVG);
5009
- } else if (process.env.NODE_ENV !== "production") {
5009
+ } else if (!!(process.env.NODE_ENV !== "production")) {
5010
5010
  patchStaticNode(n1, n2, container, isSVG);
5011
5011
  }
5012
5012
  break;
@@ -5074,7 +5074,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5074
5074
  optimized,
5075
5075
  internals
5076
5076
  );
5077
- } else if (process.env.NODE_ENV !== "production") {
5077
+ } else if (!!(process.env.NODE_ENV !== "production")) {
5078
5078
  warn("Invalid VNode type:", type, `(${typeof type})`);
5079
5079
  }
5080
5080
  }
@@ -5226,7 +5226,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5226
5226
  invokeVNodeHook(vnodeHook, parentComponent, vnode);
5227
5227
  }
5228
5228
  }
5229
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
5229
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
5230
5230
  Object.defineProperty(el, "__vnode", {
5231
5231
  value: vnode,
5232
5232
  enumerable: false
@@ -5263,7 +5263,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5263
5263
  }
5264
5264
  if (parentComponent) {
5265
5265
  let subTree = parentComponent.subTree;
5266
- if (process.env.NODE_ENV !== "production" && subTree.patchFlag > 0 && subTree.patchFlag & 2048) {
5266
+ if (!!(process.env.NODE_ENV !== "production") && subTree.patchFlag > 0 && subTree.patchFlag & 2048) {
5267
5267
  subTree = filterSingleRoot(subTree.children) || subTree;
5268
5268
  }
5269
5269
  if (vnode === subTree) {
@@ -5309,7 +5309,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5309
5309
  invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate");
5310
5310
  }
5311
5311
  parentComponent && toggleRecurse(parentComponent, true);
5312
- if (process.env.NODE_ENV !== "production" && isHmrUpdating) {
5312
+ if (!!(process.env.NODE_ENV !== "production") && isHmrUpdating) {
5313
5313
  patchFlag = 0;
5314
5314
  optimized = false;
5315
5315
  dynamicChildren = null;
@@ -5325,7 +5325,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5325
5325
  areChildrenSVG,
5326
5326
  slotScopeIds
5327
5327
  );
5328
- if (process.env.NODE_ENV !== "production") {
5328
+ if (!!(process.env.NODE_ENV !== "production")) {
5329
5329
  traverseStaticChildren(n1, n2);
5330
5330
  }
5331
5331
  } else if (!optimized) {
@@ -5484,7 +5484,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5484
5484
  const fragmentStartAnchor = n2.el = n1 ? n1.el : hostCreateText("");
5485
5485
  const fragmentEndAnchor = n2.anchor = n1 ? n1.anchor : hostCreateText("");
5486
5486
  let { patchFlag, dynamicChildren, slotScopeIds: fragmentSlotScopeIds } = n2;
5487
- if (process.env.NODE_ENV !== "production" && // #5523 dev root fragment may inherit directives
5487
+ if (!!(process.env.NODE_ENV !== "production") && // #5523 dev root fragment may inherit directives
5488
5488
  (isHmrUpdating || patchFlag & 2048)) {
5489
5489
  patchFlag = 0;
5490
5490
  optimized = false;
@@ -5519,7 +5519,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5519
5519
  isSVG,
5520
5520
  slotScopeIds
5521
5521
  );
5522
- if (process.env.NODE_ENV !== "production") {
5522
+ if (!!(process.env.NODE_ENV !== "production")) {
5523
5523
  traverseStaticChildren(n1, n2);
5524
5524
  } else if (
5525
5525
  // #2080 if the stable fragment has a key, it's a <template v-for> that may
@@ -5582,10 +5582,10 @@ function baseCreateRenderer(options, createHydrationFns) {
5582
5582
  parentComponent,
5583
5583
  parentSuspense
5584
5584
  ));
5585
- if (process.env.NODE_ENV !== "production" && instance.type.__hmrId) {
5585
+ if (!!(process.env.NODE_ENV !== "production") && instance.type.__hmrId) {
5586
5586
  registerHMR(instance);
5587
5587
  }
5588
- if (process.env.NODE_ENV !== "production") {
5588
+ if (!!(process.env.NODE_ENV !== "production")) {
5589
5589
  pushWarningContext(initialVNode);
5590
5590
  startMeasure(instance, `mount`);
5591
5591
  }
@@ -5593,11 +5593,11 @@ function baseCreateRenderer(options, createHydrationFns) {
5593
5593
  instance.ctx.renderer = internals;
5594
5594
  }
5595
5595
  {
5596
- if (process.env.NODE_ENV !== "production") {
5596
+ if (!!(process.env.NODE_ENV !== "production")) {
5597
5597
  startMeasure(instance, `init`);
5598
5598
  }
5599
5599
  setupComponent(instance);
5600
- if (process.env.NODE_ENV !== "production") {
5600
+ if (!!(process.env.NODE_ENV !== "production")) {
5601
5601
  endMeasure(instance, `init`);
5602
5602
  }
5603
5603
  }
@@ -5618,7 +5618,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5618
5618
  isSVG,
5619
5619
  optimized
5620
5620
  );
5621
- if (process.env.NODE_ENV !== "production") {
5621
+ if (!!(process.env.NODE_ENV !== "production")) {
5622
5622
  popWarningContext();
5623
5623
  endMeasure(instance, `mount`);
5624
5624
  }
@@ -5627,11 +5627,11 @@ function baseCreateRenderer(options, createHydrationFns) {
5627
5627
  const instance = n2.component = n1.component;
5628
5628
  if (shouldUpdateComponent(n1, n2, optimized)) {
5629
5629
  if (instance.asyncDep && !instance.asyncResolved) {
5630
- if (process.env.NODE_ENV !== "production") {
5630
+ if (!!(process.env.NODE_ENV !== "production")) {
5631
5631
  pushWarningContext(n2);
5632
5632
  }
5633
5633
  updateComponentPreRender(instance, n2, optimized);
5634
- if (process.env.NODE_ENV !== "production") {
5634
+ if (!!(process.env.NODE_ENV !== "production")) {
5635
5635
  popWarningContext();
5636
5636
  }
5637
5637
  return;
@@ -5662,14 +5662,14 @@ function baseCreateRenderer(options, createHydrationFns) {
5662
5662
  toggleRecurse(instance, true);
5663
5663
  if (el && hydrateNode) {
5664
5664
  const hydrateSubTree = () => {
5665
- if (process.env.NODE_ENV !== "production") {
5665
+ if (!!(process.env.NODE_ENV !== "production")) {
5666
5666
  startMeasure(instance, `render`);
5667
5667
  }
5668
5668
  instance.subTree = renderComponentRoot(instance);
5669
- if (process.env.NODE_ENV !== "production") {
5669
+ if (!!(process.env.NODE_ENV !== "production")) {
5670
5670
  endMeasure(instance, `render`);
5671
5671
  }
5672
- if (process.env.NODE_ENV !== "production") {
5672
+ if (!!(process.env.NODE_ENV !== "production")) {
5673
5673
  startMeasure(instance, `hydrate`);
5674
5674
  }
5675
5675
  hydrateNode(
@@ -5679,7 +5679,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5679
5679
  parentSuspense,
5680
5680
  null
5681
5681
  );
5682
- if (process.env.NODE_ENV !== "production") {
5682
+ if (!!(process.env.NODE_ENV !== "production")) {
5683
5683
  endMeasure(instance, `hydrate`);
5684
5684
  }
5685
5685
  };
@@ -5695,14 +5695,14 @@ function baseCreateRenderer(options, createHydrationFns) {
5695
5695
  hydrateSubTree();
5696
5696
  }
5697
5697
  } else {
5698
- if (process.env.NODE_ENV !== "production") {
5698
+ if (!!(process.env.NODE_ENV !== "production")) {
5699
5699
  startMeasure(instance, `render`);
5700
5700
  }
5701
5701
  const subTree = instance.subTree = renderComponentRoot(instance);
5702
- if (process.env.NODE_ENV !== "production") {
5702
+ if (!!(process.env.NODE_ENV !== "production")) {
5703
5703
  endMeasure(instance, `render`);
5704
5704
  }
5705
- if (process.env.NODE_ENV !== "production") {
5705
+ if (!!(process.env.NODE_ENV !== "production")) {
5706
5706
  startMeasure(instance, `patch`);
5707
5707
  }
5708
5708
  patch(
@@ -5714,7 +5714,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5714
5714
  parentSuspense,
5715
5715
  isSVG
5716
5716
  );
5717
- if (process.env.NODE_ENV !== "production") {
5717
+ if (!!(process.env.NODE_ENV !== "production")) {
5718
5718
  endMeasure(instance, `patch`);
5719
5719
  }
5720
5720
  initialVNode.el = subTree.el;
@@ -5733,7 +5733,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5733
5733
  instance.a && queuePostRenderEffect(instance.a, parentSuspense);
5734
5734
  }
5735
5735
  instance.isMounted = true;
5736
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
5736
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
5737
5737
  devtoolsComponentAdded(instance);
5738
5738
  }
5739
5739
  initialVNode = container = anchor = null;
@@ -5741,7 +5741,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5741
5741
  let { next, bu, u, parent, vnode } = instance;
5742
5742
  let originNext = next;
5743
5743
  let vnodeHook;
5744
- if (process.env.NODE_ENV !== "production") {
5744
+ if (!!(process.env.NODE_ENV !== "production")) {
5745
5745
  pushWarningContext(next || instance.vnode);
5746
5746
  }
5747
5747
  toggleRecurse(instance, false);
@@ -5758,16 +5758,16 @@ function baseCreateRenderer(options, createHydrationFns) {
5758
5758
  invokeVNodeHook(vnodeHook, parent, next, vnode);
5759
5759
  }
5760
5760
  toggleRecurse(instance, true);
5761
- if (process.env.NODE_ENV !== "production") {
5761
+ if (!!(process.env.NODE_ENV !== "production")) {
5762
5762
  startMeasure(instance, `render`);
5763
5763
  }
5764
5764
  const nextTree = renderComponentRoot(instance);
5765
- if (process.env.NODE_ENV !== "production") {
5765
+ if (!!(process.env.NODE_ENV !== "production")) {
5766
5766
  endMeasure(instance, `render`);
5767
5767
  }
5768
5768
  const prevTree = instance.subTree;
5769
5769
  instance.subTree = nextTree;
5770
- if (process.env.NODE_ENV !== "production") {
5770
+ if (!!(process.env.NODE_ENV !== "production")) {
5771
5771
  startMeasure(instance, `patch`);
5772
5772
  }
5773
5773
  patch(
@@ -5781,7 +5781,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5781
5781
  parentSuspense,
5782
5782
  isSVG
5783
5783
  );
5784
- if (process.env.NODE_ENV !== "production") {
5784
+ if (!!(process.env.NODE_ENV !== "production")) {
5785
5785
  endMeasure(instance, `patch`);
5786
5786
  }
5787
5787
  next.el = nextTree.el;
@@ -5797,10 +5797,10 @@ function baseCreateRenderer(options, createHydrationFns) {
5797
5797
  parentSuspense
5798
5798
  );
5799
5799
  }
5800
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
5800
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
5801
5801
  devtoolsComponentUpdated(instance);
5802
5802
  }
5803
- if (process.env.NODE_ENV !== "production") {
5803
+ if (!!(process.env.NODE_ENV !== "production")) {
5804
5804
  popWarningContext();
5805
5805
  }
5806
5806
  }
@@ -5814,7 +5814,7 @@ function baseCreateRenderer(options, createHydrationFns) {
5814
5814
  const update = instance.update = () => effect.run();
5815
5815
  update.id = instance.uid;
5816
5816
  toggleRecurse(instance, true);
5817
- if (process.env.NODE_ENV !== "production") {
5817
+ if (!!(process.env.NODE_ENV !== "production")) {
5818
5818
  effect.onTrack = instance.rtc ? (e) => invokeArrayFns(instance.rtc, e) : void 0;
5819
5819
  effect.onTrigger = instance.rtg ? (e) => invokeArrayFns(instance.rtg, e) : void 0;
5820
5820
  update.ownerInstance = instance;
@@ -6030,7 +6030,7 @@ function baseCreateRenderer(options, createHydrationFns) {
6030
6030
  for (i = s2; i <= e2; i++) {
6031
6031
  const nextChild = c2[i] = optimized ? cloneIfMounted(c2[i]) : normalizeVNode(c2[i]);
6032
6032
  if (nextChild.key != null) {
6033
- if (process.env.NODE_ENV !== "production" && keyToNewIndexMap.has(nextChild.key)) {
6033
+ if (!!(process.env.NODE_ENV !== "production") && keyToNewIndexMap.has(nextChild.key)) {
6034
6034
  warn(
6035
6035
  `Duplicate keys found during update:`,
6036
6036
  JSON.stringify(nextChild.key),
@@ -6236,7 +6236,7 @@ function baseCreateRenderer(options, createHydrationFns) {
6236
6236
  const remove = (vnode) => {
6237
6237
  const { type, el, anchor, transition } = vnode;
6238
6238
  if (type === Fragment) {
6239
- if (process.env.NODE_ENV !== "production" && vnode.patchFlag > 0 && vnode.patchFlag & 2048 && transition && !transition.persisted) {
6239
+ if (!!(process.env.NODE_ENV !== "production") && vnode.patchFlag > 0 && vnode.patchFlag & 2048 && transition && !transition.persisted) {
6240
6240
  vnode.children.forEach((child) => {
6241
6241
  if (child.type === Comment) {
6242
6242
  hostRemove(child.el);
@@ -6281,7 +6281,7 @@ function baseCreateRenderer(options, createHydrationFns) {
6281
6281
  hostRemove(end);
6282
6282
  };
6283
6283
  const unmountComponent = (instance, parentSuspense, doRemove) => {
6284
- if (process.env.NODE_ENV !== "production" && instance.type.__hmrId) {
6284
+ if (!!(process.env.NODE_ENV !== "production") && instance.type.__hmrId) {
6285
6285
  unregisterHMR(instance);
6286
6286
  }
6287
6287
  const { bum, scope, update, subTree, um } = instance;
@@ -6305,7 +6305,7 @@ function baseCreateRenderer(options, createHydrationFns) {
6305
6305
  parentSuspense.resolve();
6306
6306
  }
6307
6307
  }
6308
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
6308
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
6309
6309
  devtoolsComponentRemoved(instance);
6310
6310
  }
6311
6311
  };
@@ -6381,7 +6381,7 @@ function traverseStaticChildren(n1, n2, shallow = false) {
6381
6381
  if (c2.type === Text) {
6382
6382
  c2.el = c1.el;
6383
6383
  }
6384
- if (process.env.NODE_ENV !== "production" && c2.type === Comment && !c2.el) {
6384
+ if (!!(process.env.NODE_ENV !== "production") && c2.type === Comment && !c2.el) {
6385
6385
  c2.el = c1.el;
6386
6386
  }
6387
6387
  }
@@ -6435,21 +6435,21 @@ const resolveTarget = (props, select) => {
6435
6435
  const targetSelector = props && props.to;
6436
6436
  if (isString(targetSelector)) {
6437
6437
  if (!select) {
6438
- process.env.NODE_ENV !== "production" && warn(
6438
+ !!(process.env.NODE_ENV !== "production") && warn(
6439
6439
  `Current renderer does not support string target for Teleports. (missing querySelector renderer option)`
6440
6440
  );
6441
6441
  return null;
6442
6442
  } else {
6443
6443
  const target = select(targetSelector);
6444
6444
  if (!target) {
6445
- process.env.NODE_ENV !== "production" && warn(
6445
+ !!(process.env.NODE_ENV !== "production") && warn(
6446
6446
  `Failed to locate Teleport target with selector "${targetSelector}". Note the target element must exist before the component is mounted - i.e. the target cannot be rendered by the component itself, and ideally should be outside of the entire Vue component tree.`
6447
6447
  );
6448
6448
  }
6449
6449
  return target;
6450
6450
  }
6451
6451
  } else {
6452
- if (process.env.NODE_ENV !== "production" && !targetSelector && !isTeleportDisabled(props)) {
6452
+ if (!!(process.env.NODE_ENV !== "production") && !targetSelector && !isTeleportDisabled(props)) {
6453
6453
  warn(`Invalid Teleport target: ${targetSelector}`);
6454
6454
  }
6455
6455
  return targetSelector;
@@ -6466,13 +6466,13 @@ const TeleportImpl = {
6466
6466
  } = internals;
6467
6467
  const disabled = isTeleportDisabled(n2.props);
6468
6468
  let { shapeFlag, children, dynamicChildren } = n2;
6469
- if (process.env.NODE_ENV !== "production" && isHmrUpdating) {
6469
+ if (!!(process.env.NODE_ENV !== "production") && isHmrUpdating) {
6470
6470
  optimized = false;
6471
6471
  dynamicChildren = null;
6472
6472
  }
6473
6473
  if (n1 == null) {
6474
- const placeholder = n2.el = process.env.NODE_ENV !== "production" ? createComment("teleport start") : createText("");
6475
- const mainAnchor = n2.anchor = process.env.NODE_ENV !== "production" ? createComment("teleport end") : createText("");
6474
+ const placeholder = n2.el = !!(process.env.NODE_ENV !== "production") ? createComment("teleport start") : createText("");
6475
+ const mainAnchor = n2.anchor = !!(process.env.NODE_ENV !== "production") ? createComment("teleport end") : createText("");
6476
6476
  insert(placeholder, container, anchor);
6477
6477
  insert(mainAnchor, container, anchor);
6478
6478
  const target = n2.target = resolveTarget(n2.props, querySelector);
@@ -6480,7 +6480,7 @@ const TeleportImpl = {
6480
6480
  if (target) {
6481
6481
  insert(targetAnchor, target);
6482
6482
  isSVG = isSVG || isTargetSVG(target);
6483
- } else if (process.env.NODE_ENV !== "production" && !disabled) {
6483
+ } else if (!!(process.env.NODE_ENV !== "production") && !disabled) {
6484
6484
  warn("Invalid Teleport target on mount:", target, `(${typeof target})`);
6485
6485
  }
6486
6486
  const mount = (container2, anchor2) => {
@@ -6559,7 +6559,7 @@ const TeleportImpl = {
6559
6559
  internals,
6560
6560
  0
6561
6561
  );
6562
- } else if (process.env.NODE_ENV !== "production") {
6562
+ } else if (!!(process.env.NODE_ENV !== "production")) {
6563
6563
  warn(
6564
6564
  "Invalid Teleport target on update:",
6565
6565
  target,
@@ -6745,7 +6745,7 @@ function isVNode(value) {
6745
6745
  return value ? value.__v_isVNode === true : false;
6746
6746
  }
6747
6747
  function isSameVNodeType(n1, n2) {
6748
- if (process.env.NODE_ENV !== "production" && n2.shapeFlag & 6 && hmrDirtyComponents.has(n2.type)) {
6748
+ if (!!(process.env.NODE_ENV !== "production") && n2.shapeFlag & 6 && hmrDirtyComponents.has(n2.type)) {
6749
6749
  n1.shapeFlag &= ~256;
6750
6750
  n2.shapeFlag &= ~512;
6751
6751
  return false;
@@ -6810,7 +6810,7 @@ function createBaseVNode(type, props = null, children = null, patchFlag = 0, dyn
6810
6810
  } else if (children) {
6811
6811
  vnode.shapeFlag |= isString(children) ? 8 : 16;
6812
6812
  }
6813
- if (process.env.NODE_ENV !== "production" && vnode.key !== vnode.key) {
6813
+ if (!!(process.env.NODE_ENV !== "production") && vnode.key !== vnode.key) {
6814
6814
  warn(`VNode created with invalid key (NaN). VNode type:`, vnode.type);
6815
6815
  }
6816
6816
  if (isBlockTreeEnabled > 0 && // avoid a block node from tracking itself
@@ -6826,10 +6826,10 @@ function createBaseVNode(type, props = null, children = null, patchFlag = 0, dyn
6826
6826
  }
6827
6827
  return vnode;
6828
6828
  }
6829
- const createVNode = process.env.NODE_ENV !== "production" ? createVNodeWithArgsTransform : _createVNode;
6829
+ const createVNode = !!(process.env.NODE_ENV !== "production") ? createVNodeWithArgsTransform : _createVNode;
6830
6830
  function _createVNode(type, props = null, children = null, patchFlag = 0, dynamicProps = null, isBlockNode = false) {
6831
6831
  if (!type || type === NULL_DYNAMIC_COMPONENT) {
6832
- if (process.env.NODE_ENV !== "production" && !type) {
6832
+ if (!!(process.env.NODE_ENV !== "production") && !type) {
6833
6833
  warn(`Invalid vnode type when creating vnode: ${type}.`);
6834
6834
  }
6835
6835
  type = Comment;
@@ -6871,7 +6871,7 @@ function _createVNode(type, props = null, children = null, patchFlag = 0, dynami
6871
6871
  }
6872
6872
  }
6873
6873
  const shapeFlag = isString(type) ? 1 : isSuspense(type) ? 128 : isTeleport(type) ? 64 : isObject(type) ? 4 : isFunction(type) ? 2 : 0;
6874
- if (process.env.NODE_ENV !== "production" && shapeFlag & 4 && isProxy(type)) {
6874
+ if (!!(process.env.NODE_ENV !== "production") && shapeFlag & 4 && isProxy(type)) {
6875
6875
  type = toRaw(type);
6876
6876
  warn(
6877
6877
  `Vue received a Component which was made a reactive object. This can lead to unnecessary performance overhead, and should be avoided by marking the component with \`markRaw\` or using \`shallowRef\` instead of \`ref\`.`,
@@ -6913,7 +6913,7 @@ function cloneVNode(vnode, extraProps, mergeRef = false) {
6913
6913
  ) : ref,
6914
6914
  scopeId: vnode.scopeId,
6915
6915
  slotScopeIds: vnode.slotScopeIds,
6916
- children: process.env.NODE_ENV !== "production" && patchFlag === -1 && isArray(children) ? children.map(deepCloneVNode) : children,
6916
+ children: !!(process.env.NODE_ENV !== "production") && patchFlag === -1 && isArray(children) ? children.map(deepCloneVNode) : children,
6917
6917
  target: vnode.target,
6918
6918
  targetAnchor: vnode.targetAnchor,
6919
6919
  staticCount: vnode.staticCount,
@@ -7137,7 +7137,7 @@ function createComponentInstance(vnode, parent, suspense) {
7137
7137
  ec: null,
7138
7138
  sp: null
7139
7139
  };
7140
- if (process.env.NODE_ENV !== "production") {
7140
+ if (!!(process.env.NODE_ENV !== "production")) {
7141
7141
  instance.ctx = createDevRenderContext(instance);
7142
7142
  } else {
7143
7143
  instance.ctx = { _: instance };
@@ -7201,7 +7201,7 @@ function setupComponent(instance, isSSR = false) {
7201
7201
  function setupStatefulComponent(instance, isSSR) {
7202
7202
  var _a;
7203
7203
  const Component = instance.type;
7204
- if (process.env.NODE_ENV !== "production") {
7204
+ if (!!(process.env.NODE_ENV !== "production")) {
7205
7205
  if (Component.name) {
7206
7206
  validateComponentName(Component.name, instance.appContext.config);
7207
7207
  }
@@ -7225,7 +7225,7 @@ function setupStatefulComponent(instance, isSSR) {
7225
7225
  }
7226
7226
  instance.accessCache = /* @__PURE__ */ Object.create(null);
7227
7227
  instance.proxy = markRaw(new Proxy(instance.ctx, PublicInstanceProxyHandlers));
7228
- if (process.env.NODE_ENV !== "production") {
7228
+ if (!!(process.env.NODE_ENV !== "production")) {
7229
7229
  exposePropsOnRenderContext(instance);
7230
7230
  }
7231
7231
  const { setup } = Component;
@@ -7237,7 +7237,7 @@ function setupStatefulComponent(instance, isSSR) {
7237
7237
  setup,
7238
7238
  instance,
7239
7239
  0,
7240
- [process.env.NODE_ENV !== "production" ? shallowReadonly(instance.props) : instance.props, setupContext]
7240
+ [!!(process.env.NODE_ENV !== "production") ? shallowReadonly(instance.props) : instance.props, setupContext]
7241
7241
  );
7242
7242
  resetTracking();
7243
7243
  unsetCurrentInstance();
@@ -7251,7 +7251,7 @@ function setupStatefulComponent(instance, isSSR) {
7251
7251
  });
7252
7252
  } else {
7253
7253
  instance.asyncDep = setupResult;
7254
- if (process.env.NODE_ENV !== "production" && !instance.suspense) {
7254
+ if (!!(process.env.NODE_ENV !== "production") && !instance.suspense) {
7255
7255
  const name = (_a = Component.name) != null ? _a : "Anonymous";
7256
7256
  warn(
7257
7257
  `Component <${name}>: setup function returned a promise, but no <Suspense> boundary was found in the parent component tree. A component with async setup() must be nested in a <Suspense> in order to be rendered.`
@@ -7273,19 +7273,19 @@ function handleSetupResult(instance, setupResult, isSSR) {
7273
7273
  instance.render = setupResult;
7274
7274
  }
7275
7275
  } else if (isObject(setupResult)) {
7276
- if (process.env.NODE_ENV !== "production" && isVNode(setupResult)) {
7276
+ if (!!(process.env.NODE_ENV !== "production") && isVNode(setupResult)) {
7277
7277
  warn(
7278
7278
  `setup() should not return VNodes directly - return a render function instead.`
7279
7279
  );
7280
7280
  }
7281
- if (process.env.NODE_ENV !== "production" || __VUE_PROD_DEVTOOLS__) {
7281
+ if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) {
7282
7282
  instance.devtoolsRawSetupState = setupResult;
7283
7283
  }
7284
7284
  instance.setupState = proxyRefs(setupResult);
7285
- if (process.env.NODE_ENV !== "production") {
7285
+ if (!!(process.env.NODE_ENV !== "production")) {
7286
7286
  exposeSetupStateOnRenderContext(instance);
7287
7287
  }
7288
- } else if (process.env.NODE_ENV !== "production" && setupResult !== void 0) {
7288
+ } else if (!!(process.env.NODE_ENV !== "production") && setupResult !== void 0) {
7289
7289
  warn(
7290
7290
  `setup() should return an object. Received: ${setupResult === null ? "null" : typeof setupResult}`
7291
7291
  );
@@ -7309,7 +7309,7 @@ function finishComponentSetup(instance, isSSR, skipOptions) {
7309
7309
  if (!isSSR && compile && !Component.render) {
7310
7310
  const template = Component.template || resolveMergedOptions(instance).template;
7311
7311
  if (template) {
7312
- if (process.env.NODE_ENV !== "production") {
7312
+ if (!!(process.env.NODE_ENV !== "production")) {
7313
7313
  startMeasure(instance, `compile`);
7314
7314
  }
7315
7315
  const { isCustomElement, compilerOptions } = instance.appContext.config;
@@ -7325,7 +7325,7 @@ function finishComponentSetup(instance, isSSR, skipOptions) {
7325
7325
  componentCompilerOptions
7326
7326
  );
7327
7327
  Component.render = compile(template, finalCompilerOptions);
7328
- if (process.env.NODE_ENV !== "production") {
7328
+ if (!!(process.env.NODE_ENV !== "production")) {
7329
7329
  endMeasure(instance, `compile`);
7330
7330
  }
7331
7331
  }
@@ -7342,7 +7342,7 @@ function finishComponentSetup(instance, isSSR, skipOptions) {
7342
7342
  resetTracking();
7343
7343
  unsetCurrentInstance();
7344
7344
  }
7345
- if (process.env.NODE_ENV !== "production" && !Component.render && instance.render === NOOP && !isSSR) {
7345
+ if (!!(process.env.NODE_ENV !== "production") && !Component.render && instance.render === NOOP && !isSSR) {
7346
7346
  if (!compile && Component.template) {
7347
7347
  warn(
7348
7348
  `Component provided template option but runtime compilation is not supported in this build of Vue.` + (` Configure your bundler to alias "vue" to "vue/dist/vue.esm-bundler.js".` )
@@ -7356,7 +7356,7 @@ function finishComponentSetup(instance, isSSR, skipOptions) {
7356
7356
  function getAttrsProxy(instance) {
7357
7357
  return instance.attrsProxy || (instance.attrsProxy = new Proxy(
7358
7358
  instance.attrs,
7359
- process.env.NODE_ENV !== "production" ? {
7359
+ !!(process.env.NODE_ENV !== "production") ? {
7360
7360
  get(target, key) {
7361
7361
  markAttrsAccessed();
7362
7362
  track(instance, "get", "$attrs");
@@ -7388,7 +7388,7 @@ function getSlotsProxy(instance) {
7388
7388
  }
7389
7389
  function createSetupContext(instance) {
7390
7390
  const expose = (exposed) => {
7391
- if (process.env.NODE_ENV !== "production") {
7391
+ if (!!(process.env.NODE_ENV !== "production")) {
7392
7392
  if (instance.exposed) {
7393
7393
  warn(`expose() should be called only once per setup().`);
7394
7394
  }
@@ -7410,7 +7410,7 @@ function createSetupContext(instance) {
7410
7410
  }
7411
7411
  instance.exposed = exposed || {};
7412
7412
  };
7413
- if (process.env.NODE_ENV !== "production") {
7413
+ if (!!(process.env.NODE_ENV !== "production")) {
7414
7414
  return Object.freeze({
7415
7415
  get attrs() {
7416
7416
  return getAttrsProxy(instance);
@@ -7511,7 +7511,7 @@ const useSSRContext = () => {
7511
7511
  {
7512
7512
  const ctx = inject(ssrContextKey);
7513
7513
  if (!ctx) {
7514
- process.env.NODE_ENV !== "production" && warn(
7514
+ !!(process.env.NODE_ENV !== "production") && warn(
7515
7515
  `Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build.`
7516
7516
  );
7517
7517
  }
@@ -7524,7 +7524,7 @@ function isShallow(value) {
7524
7524
  }
7525
7525
 
7526
7526
  function initCustomFormatter() {
7527
- if (!process.env.NODE_ENV !== "production" || typeof window === "undefined") {
7527
+ if (!!!(process.env.NODE_ENV !== "production") || typeof window === "undefined") {
7528
7528
  return;
7529
7529
  }
7530
7530
  const vueStyle = { style: "color:#3ba776" };
@@ -7724,7 +7724,7 @@ function isMemoSame(cached, memo) {
7724
7724
  return true;
7725
7725
  }
7726
7726
 
7727
- const version = "3.3.2";
7727
+ const version = "3.3.4";
7728
7728
  const _ssrUtils = {
7729
7729
  createComponentInstance,
7730
7730
  setupComponent,