@mongoosejs/studio 0.2.11 → 0.2.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/backend/index.js CHANGED
@@ -18,7 +18,7 @@ module.exports = function backend(db, studioConnection, options) {
18
18
 
19
19
  let changeStream = null;
20
20
  if (options?.changeStream) {
21
- changeStream = db.watch();
21
+ changeStream = db instanceof mongoose.Mongoose ? db.connection.watch() : db.watch();
22
22
  }
23
23
 
24
24
  const actions = applySpec(Actions, { db, studioConnection, options, changeStream });
@@ -8983,7 +8983,7 @@ __webpack_require__.r(__webpack_exports__);
8983
8983
  /* harmony export */ });
8984
8984
  /* harmony import */ var _vue_shared__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @vue/shared */ "./node_modules/@vue/shared/dist/shared.esm-bundler.js");
8985
8985
  /**
8986
- * @vue/reactivity v3.5.27
8986
+ * @vue/reactivity v3.5.28
8987
8987
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
8988
8988
  * @license MIT
8989
8989
  **/
@@ -8995,6 +8995,7 @@ function warn(msg, ...args) {
8995
8995
 
8996
8996
  let activeEffectScope;
8997
8997
  class EffectScope {
8998
+ // TODO isolatedDeclarations "__v_skip"
8998
8999
  constructor(detached = false) {
8999
9000
  this.detached = detached;
9000
9001
  /**
@@ -9014,6 +9015,7 @@ class EffectScope {
9014
9015
  */
9015
9016
  this.cleanups = [];
9016
9017
  this._isPaused = false;
9018
+ this.__v_skip = true;
9017
9019
  this.parent = activeEffectScope;
9018
9020
  if (!detached && activeEffectScope) {
9019
9021
  this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(
@@ -11121,7 +11123,7 @@ __webpack_require__.r(__webpack_exports__);
11121
11123
  /* harmony import */ var _vue_reactivity__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @vue/reactivity */ "./node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js");
11122
11124
  /* harmony import */ var _vue_shared__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @vue/shared */ "./node_modules/@vue/shared/dist/shared.esm-bundler.js");
11123
11125
  /**
11124
- * @vue/runtime-core v3.5.27
11126
+ * @vue/runtime-core v3.5.28
11125
11127
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
11126
11128
  * @license MIT
11127
11129
  **/
@@ -12326,7 +12328,22 @@ function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }
12326
12328
  function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, {
12327
12329
  o: { nextSibling, parentNode, querySelector, insert, createText }
12328
12330
  }, hydrateChildren) {
12329
- function hydrateDisabledTeleport(node2, vnode2, targetStart, targetAnchor) {
12331
+ function hydrateAnchor(target2, targetNode) {
12332
+ let targetAnchor = targetNode;
12333
+ while (targetAnchor) {
12334
+ if (targetAnchor && targetAnchor.nodeType === 8) {
12335
+ if (targetAnchor.data === "teleport start anchor") {
12336
+ vnode.targetStart = targetAnchor;
12337
+ } else if (targetAnchor.data === "teleport anchor") {
12338
+ vnode.targetAnchor = targetAnchor;
12339
+ target2._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
12340
+ break;
12341
+ }
12342
+ }
12343
+ targetAnchor = nextSibling(targetAnchor);
12344
+ }
12345
+ }
12346
+ function hydrateDisabledTeleport(node2, vnode2) {
12330
12347
  vnode2.anchor = hydrateChildren(
12331
12348
  nextSibling(node2),
12332
12349
  vnode2,
@@ -12336,8 +12353,6 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
12336
12353
  slotScopeIds,
12337
12354
  optimized
12338
12355
  );
12339
- vnode2.targetStart = targetStart;
12340
- vnode2.targetAnchor = targetAnchor;
12341
12356
  }
12342
12357
  const target = vnode.target = resolveTarget(
12343
12358
  vnode.props,
@@ -12348,27 +12363,22 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
12348
12363
  const targetNode = target._lpa || target.firstChild;
12349
12364
  if (vnode.shapeFlag & 16) {
12350
12365
  if (disabled) {
12351
- hydrateDisabledTeleport(
12352
- node,
12353
- vnode,
12354
- targetNode,
12355
- targetNode && nextSibling(targetNode)
12356
- );
12366
+ hydrateDisabledTeleport(node, vnode);
12367
+ hydrateAnchor(target, targetNode);
12368
+ if (!vnode.targetAnchor) {
12369
+ prepareAnchor(
12370
+ target,
12371
+ vnode,
12372
+ createText,
12373
+ insert,
12374
+ // if target is the same as the main view, insert anchors before current node
12375
+ // to avoid hydrating mismatch
12376
+ parentNode(node) === target ? node : null
12377
+ );
12378
+ }
12357
12379
  } else {
12358
12380
  vnode.anchor = nextSibling(node);
12359
- let targetAnchor = targetNode;
12360
- while (targetAnchor) {
12361
- if (targetAnchor && targetAnchor.nodeType === 8) {
12362
- if (targetAnchor.data === "teleport start anchor") {
12363
- vnode.targetStart = targetAnchor;
12364
- } else if (targetAnchor.data === "teleport anchor") {
12365
- vnode.targetAnchor = targetAnchor;
12366
- target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
12367
- break;
12368
- }
12369
- }
12370
- targetAnchor = nextSibling(targetAnchor);
12371
- }
12381
+ hydrateAnchor(target, targetNode);
12372
12382
  if (!vnode.targetAnchor) {
12373
12383
  prepareAnchor(target, vnode, createText, insert);
12374
12384
  }
@@ -12386,7 +12396,9 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
12386
12396
  updateCssVars(vnode, disabled);
12387
12397
  } else if (disabled) {
12388
12398
  if (vnode.shapeFlag & 16) {
12389
- hydrateDisabledTeleport(node, vnode, node, nextSibling(node));
12399
+ hydrateDisabledTeleport(node, vnode);
12400
+ vnode.targetStart = node;
12401
+ vnode.targetAnchor = nextSibling(node);
12390
12402
  }
12391
12403
  }
12392
12404
  return vnode.anchor && nextSibling(vnode.anchor);
@@ -12410,13 +12422,13 @@ function updateCssVars(vnode, isDisabled) {
12410
12422
  ctx.ut();
12411
12423
  }
12412
12424
  }
12413
- function prepareAnchor(target, vnode, createText, insert) {
12425
+ function prepareAnchor(target, vnode, createText, insert, anchor = null) {
12414
12426
  const targetStart = vnode.targetStart = createText("");
12415
12427
  const targetAnchor = vnode.targetAnchor = createText("");
12416
12428
  targetStart[TeleportEndKey] = targetAnchor;
12417
12429
  if (target) {
12418
- insert(targetStart, target);
12419
- insert(targetAnchor, target);
12430
+ insert(targetStart, target, anchor);
12431
+ insert(targetAnchor, target, anchor);
12420
12432
  }
12421
12433
  return targetAnchor;
12422
12434
  }
@@ -12653,7 +12665,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
12653
12665
  }
12654
12666
  }
12655
12667
  let called = false;
12656
- const done = el[enterCbKey] = (cancelled) => {
12668
+ el[enterCbKey] = (cancelled) => {
12657
12669
  if (called) return;
12658
12670
  called = true;
12659
12671
  if (cancelled) {
@@ -12666,6 +12678,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
12666
12678
  }
12667
12679
  el[enterCbKey] = void 0;
12668
12680
  };
12681
+ const done = el[enterCbKey].bind(null, false);
12669
12682
  if (hook) {
12670
12683
  callAsyncHook(hook, [el, done]);
12671
12684
  } else {
@@ -12685,7 +12698,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
12685
12698
  }
12686
12699
  callHook(onBeforeLeave, [el]);
12687
12700
  let called = false;
12688
- const done = el[leaveCbKey] = (cancelled) => {
12701
+ el[leaveCbKey] = (cancelled) => {
12689
12702
  if (called) return;
12690
12703
  called = true;
12691
12704
  remove();
@@ -12699,6 +12712,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
12699
12712
  delete leavingVNodesCache[key2];
12700
12713
  }
12701
12714
  };
12715
+ const done = el[leaveCbKey].bind(null, false);
12702
12716
  leavingVNodesCache[key2] = vnode;
12703
12717
  if (onLeave) {
12704
12718
  callAsyncHook(onLeave, [el, done]);
@@ -12811,8 +12825,7 @@ function useTemplateRef(key) {
12811
12825
  const r = (0,_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__.shallowRef)(null);
12812
12826
  if (i) {
12813
12827
  const refs = i.refs === _vue_shared__WEBPACK_IMPORTED_MODULE_1__.EMPTY_OBJ ? i.refs = {} : i.refs;
12814
- let desc;
12815
- if ( true && (desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable) {
12828
+ if ( true && isTemplateRefKey(refs, key)) {
12816
12829
  warn$1(`useTemplateRef('${key}') already exists.`);
12817
12830
  } else {
12818
12831
  Object.defineProperty(refs, key, {
@@ -12832,6 +12845,10 @@ function useTemplateRef(key) {
12832
12845
  }
12833
12846
  return ret;
12834
12847
  }
12848
+ function isTemplateRefKey(refs, key) {
12849
+ let desc;
12850
+ return !!((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable);
12851
+ }
12835
12852
 
12836
12853
  const pendingSetRefMap = /* @__PURE__ */ new WeakMap();
12837
12854
  function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
@@ -12877,10 +12894,19 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
12877
12894
  return false;
12878
12895
  }
12879
12896
  }
12897
+ if (isTemplateRefKey(refs, key)) {
12898
+ return false;
12899
+ }
12880
12900
  return (0,_vue_shared__WEBPACK_IMPORTED_MODULE_1__.hasOwn)(rawSetupState, key);
12881
12901
  };
12882
- const canSetRef = (ref2) => {
12883
- return false || !knownTemplateRefs.has(ref2);
12902
+ const canSetRef = (ref2, key) => {
12903
+ if ( true && knownTemplateRefs.has(ref2)) {
12904
+ return false;
12905
+ }
12906
+ if (key && isTemplateRefKey(refs, key)) {
12907
+ return false;
12908
+ }
12909
+ return true;
12884
12910
  };
12885
12911
  if (oldRef != null && oldRef !== ref) {
12886
12912
  invalidatePendingSetRef(oldRawRef);
@@ -12890,10 +12916,10 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
12890
12916
  setupState[oldRef] = null;
12891
12917
  }
12892
12918
  } else if ((0,_vue_reactivity__WEBPACK_IMPORTED_MODULE_0__.isRef)(oldRef)) {
12893
- if (canSetRef(oldRef)) {
12919
+ const oldRawRefAtom = oldRawRef;
12920
+ if (canSetRef(oldRef, oldRawRefAtom.k)) {
12894
12921
  oldRef.value = null;
12895
12922
  }
12896
- const oldRawRefAtom = oldRawRef;
12897
12923
  if (oldRawRefAtom.k) refs[oldRawRefAtom.k] = null;
12898
12924
  }
12899
12925
  }
@@ -12917,7 +12943,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
12917
12943
  }
12918
12944
  } else {
12919
12945
  const newVal = [refValue];
12920
- if (canSetRef(ref)) {
12946
+ if (canSetRef(ref, rawRef.k)) {
12921
12947
  ref.value = newVal;
12922
12948
  }
12923
12949
  if (rawRef.k) refs[rawRef.k] = newVal;
@@ -12932,7 +12958,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
12932
12958
  setupState[ref] = value;
12933
12959
  }
12934
12960
  } else if (_isRef) {
12935
- if (canSetRef(ref)) {
12961
+ if (canSetRef(ref, rawRef.k)) {
12936
12962
  ref.value = value;
12937
12963
  }
12938
12964
  if (rawRef.k) refs[rawRef.k] = value;
@@ -15800,7 +15826,7 @@ function shouldUpdateComponent(prevVNode, nextVNode, optimized) {
15800
15826
  const dynamicProps = nextVNode.dynamicProps;
15801
15827
  for (let i = 0; i < dynamicProps.length; i++) {
15802
15828
  const key = dynamicProps[i];
15803
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) {
15829
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emits, key)) {
15804
15830
  return true;
15805
15831
  }
15806
15832
  }
@@ -15831,12 +15857,20 @@ function hasPropsChanged(prevProps, nextProps, emitsOptions) {
15831
15857
  }
15832
15858
  for (let i = 0; i < nextKeys.length; i++) {
15833
15859
  const key = nextKeys[i];
15834
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) {
15860
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emitsOptions, key)) {
15835
15861
  return true;
15836
15862
  }
15837
15863
  }
15838
15864
  return false;
15839
15865
  }
15866
+ function hasPropValueChanged(nextProps, prevProps, key) {
15867
+ const nextProp = nextProps[key];
15868
+ const prevProp = prevProps[key];
15869
+ if (key === "style" && (0,_vue_shared__WEBPACK_IMPORTED_MODULE_1__.isObject)(nextProp) && (0,_vue_shared__WEBPACK_IMPORTED_MODULE_1__.isObject)(prevProp)) {
15870
+ return !(0,_vue_shared__WEBPACK_IMPORTED_MODULE_1__.looseEqual)(nextProp, prevProp);
15871
+ }
15872
+ return nextProp !== prevProp;
15873
+ }
15840
15874
  function updateHOCHostEl({ vnode, parent }, el) {
15841
15875
  while (parent) {
15842
15876
  const root = parent.subTree;
@@ -16567,15 +16601,7 @@ function baseCreateRenderer(options, createHydrationFns) {
16567
16601
  } else {
16568
16602
  const el = n2.el = n1.el;
16569
16603
  if (n2.children !== n1.children) {
16570
- if ( true && isHmrUpdating && n2.patchFlag === -1 && "__elIndex" in n1) {
16571
- const childNodes = container.childNodes;
16572
- const newChild = hostCreateText(n2.children);
16573
- const oldChild = childNodes[n2.__elIndex = n1.__elIndex];
16574
- hostInsert(newChild, container, oldChild);
16575
- hostRemove(oldChild);
16576
- } else {
16577
- hostSetText(el, n2.children);
16578
- }
16604
+ hostSetText(el, n2.children);
16579
16605
  }
16580
16606
  }
16581
16607
  };
@@ -16651,7 +16677,7 @@ function baseCreateRenderer(options, createHydrationFns) {
16651
16677
  optimized
16652
16678
  );
16653
16679
  } else {
16654
- const customElement = !!(n1.el && n1.el._isVueCE) ? n1.el : null;
16680
+ const customElement = n1.el && n1.el._isVueCE ? n1.el : null;
16655
16681
  try {
16656
16682
  if (customElement) {
16657
16683
  customElement._beginPatch();
@@ -17132,8 +17158,7 @@ function baseCreateRenderer(options, createHydrationFns) {
17132
17158
  hydrateSubTree();
17133
17159
  }
17134
17160
  } else {
17135
- if (root.ce && // @ts-expect-error _def is private
17136
- root.ce._def.shadowRoot !== false) {
17161
+ if (root.ce && root.ce._hasShadowRoot()) {
17137
17162
  root.ce._injectChildStyle(type);
17138
17163
  }
17139
17164
  if (true) {
@@ -17188,9 +17213,9 @@ function baseCreateRenderer(options, createHydrationFns) {
17188
17213
  updateComponentPreRender(instance, next, optimized);
17189
17214
  }
17190
17215
  nonHydratedAsyncRoot.asyncDep.then(() => {
17191
- if (!instance.isUnmounted) {
17192
- componentUpdateFn();
17193
- }
17216
+ queuePostRenderEffect(() => {
17217
+ if (!instance.isUnmounted) update();
17218
+ }, parentSuspense);
17194
17219
  });
17195
17220
  return;
17196
17221
  }
@@ -17887,12 +17912,10 @@ function traverseStaticChildren(n1, n2, shallow = false) {
17887
17912
  traverseStaticChildren(c1, c2);
17888
17913
  }
17889
17914
  if (c2.type === Text) {
17890
- if (c2.patchFlag !== -1) {
17891
- c2.el = c1.el;
17892
- } else {
17893
- c2.__elIndex = i + // take fragment start anchor into account
17894
- (n1.type === Fragment ? 1 : 0);
17915
+ if (c2.patchFlag === -1) {
17916
+ c2 = ch2[i] = cloneIfMounted(c2);
17895
17917
  }
17918
+ c2.el = c1.el;
17896
17919
  }
17897
17920
  if (c2.type === Comment && !c2.el) {
17898
17921
  c2.el = c1.el;
@@ -19620,7 +19643,7 @@ function isMemoSame(cached, memo) {
19620
19643
  return true;
19621
19644
  }
19622
19645
 
19623
- const version = "3.5.27";
19646
+ const version = "3.5.28";
19624
19647
  const warn = true ? warn$1 : 0;
19625
19648
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
19626
19649
  const devtools = true ? devtools$1 : 0;
@@ -19831,7 +19854,7 @@ __webpack_require__.r(__webpack_exports__);
19831
19854
  /* harmony import */ var _vue_runtime_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @vue/runtime-core */ "./node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js");
19832
19855
  /* harmony import */ var _vue_runtime_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @vue/shared */ "./node_modules/@vue/shared/dist/shared.esm-bundler.js");
19833
19856
  /**
19834
- * @vue/runtime-dom v3.5.27
19857
+ * @vue/runtime-dom v3.5.28
19835
19858
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
19836
19859
  * @license MIT
19837
19860
  **/
@@ -21091,6 +21114,12 @@ class VueElement extends BaseClass {
21091
21114
  this._update();
21092
21115
  }
21093
21116
  }
21117
+ /**
21118
+ * @internal
21119
+ */
21120
+ _hasShadowRoot() {
21121
+ return this._def.shadowRoot !== false;
21122
+ }
21094
21123
  /**
21095
21124
  * @internal
21096
21125
  */
@@ -21225,10 +21254,7 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
21225
21254
  instance
21226
21255
  )
21227
21256
  );
21228
- positionMap.set(child, {
21229
- left: child.el.offsetLeft,
21230
- top: child.el.offsetTop
21231
- });
21257
+ positionMap.set(child, getPosition(child.el));
21232
21258
  }
21233
21259
  }
21234
21260
  }
@@ -21259,10 +21285,7 @@ function callPendingCbs(c) {
21259
21285
  }
21260
21286
  }
21261
21287
  function recordPosition(c) {
21262
- newPositionMap.set(c, {
21263
- left: c.el.offsetLeft,
21264
- top: c.el.offsetTop
21265
- });
21288
+ newPositionMap.set(c, getPosition(c.el));
21266
21289
  }
21267
21290
  function applyTranslation(c) {
21268
21291
  const oldPos = positionMap.get(c);
@@ -21270,12 +21293,29 @@ function applyTranslation(c) {
21270
21293
  const dx = oldPos.left - newPos.left;
21271
21294
  const dy = oldPos.top - newPos.top;
21272
21295
  if (dx || dy) {
21273
- const s = c.el.style;
21274
- s.transform = s.webkitTransform = `translate(${dx}px,${dy}px)`;
21296
+ const el = c.el;
21297
+ const s = el.style;
21298
+ const rect = el.getBoundingClientRect();
21299
+ let scaleX = 1;
21300
+ let scaleY = 1;
21301
+ if (el.offsetWidth) scaleX = rect.width / el.offsetWidth;
21302
+ if (el.offsetHeight) scaleY = rect.height / el.offsetHeight;
21303
+ if (!Number.isFinite(scaleX) || scaleX === 0) scaleX = 1;
21304
+ if (!Number.isFinite(scaleY) || scaleY === 0) scaleY = 1;
21305
+ if (Math.abs(scaleX - 1) < 0.01) scaleX = 1;
21306
+ if (Math.abs(scaleY - 1) < 0.01) scaleY = 1;
21307
+ s.transform = s.webkitTransform = `translate(${dx / scaleX}px,${dy / scaleY}px)`;
21275
21308
  s.transitionDuration = "0s";
21276
21309
  return c;
21277
21310
  }
21278
21311
  }
21312
+ function getPosition(el) {
21313
+ const rect = el.getBoundingClientRect();
21314
+ return {
21315
+ left: rect.left,
21316
+ top: rect.top
21317
+ };
21318
+ }
21279
21319
  function hasCSSTransform(el, root, moveClass) {
21280
21320
  const clone = el.cloneNode();
21281
21321
  const _vtc = el[vtcKey];
@@ -21586,6 +21626,7 @@ const modifierGuards = {
21586
21626
  exact: (e, modifiers) => systemModifiers.some((m) => e[`${m}Key`] && !modifiers.includes(m))
21587
21627
  };
21588
21628
  const withModifiers = (fn, modifiers) => {
21629
+ if (!fn) return fn;
21589
21630
  const cache = fn._withMods || (fn._withMods = {});
21590
21631
  const cacheKey = modifiers.join(".");
21591
21632
  return cache[cacheKey] || (cache[cacheKey] = ((event, ...args) => {
@@ -21837,7 +21878,7 @@ __webpack_require__.r(__webpack_exports__);
21837
21878
  /* harmony export */ toTypeString: () => (/* binding */ toTypeString)
21838
21879
  /* harmony export */ });
21839
21880
  /**
21840
- * @vue/shared v3.5.27
21881
+ * @vue/shared v3.5.28
21841
21882
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
21842
21883
  * @license MIT
21843
21884
  **/
@@ -23774,7 +23815,7 @@ __webpack_require__.r(__webpack_exports__);
23774
23815
  /* harmony import */ var _vue_runtime_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @vue/runtime-dom */ "./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js");
23775
23816
  /* harmony import */ var _vue_runtime_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @vue/runtime-dom */ "./node_modules/@vue/runtime-dom/dist/runtime-dom.esm-bundler.js");
23776
23817
  /**
23777
- * vue v3.5.27
23818
+ * vue v3.5.28
23778
23819
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
23779
23820
  * @license MIT
23780
23821
  **/
@@ -36902,7 +36943,7 @@ var src_default = VueToastificationPlugin;
36902
36943
  (module) {
36903
36944
 
36904
36945
  "use strict";
36905
- module.exports = /*#__PURE__*/JSON.parse('{"name":"@mongoosejs/studio","version":"0.2.11","description":"A Mongoose-native MongoDB UI with schema-aware autocomplete, AI-assisted queries, and dashboards that understand your models - not just your data.","homepage":"https://mongoosestudio.app/","repository":{"type":"git","url":"https://github.com/mongoosejs/studio"},"license":"Apache-2.0","dependencies":{"@ai-sdk/anthropic":"2.x","@ai-sdk/google":"2.x","@ai-sdk/openai":"2.x","ai":"5.x","archetype":"0.13.1","csv-stringify":"6.3.0","ejson":"^2.2.3","extrovert":"^0.2.0","marked":"15.0.12","node-inspect-extracted":"3.x","tailwindcss":"3.4.0","vue":"3.x","vue-toastification":"^2.0.0-rc.5","webpack":"5.x","xss":"^1.0.15"},"peerDependencies":{"mongoose":"7.x || 8.x || ^9.0.0"},"optionalPeerDependencies":{"@mongoosejs/task":"0.5.x || 0.6.x"},"devDependencies":{"@masteringjs/eslint-config":"0.1.1","axios":"1.2.2","dedent":"^1.6.0","eslint":"9.30.0","express":"4.x","mocha":"10.2.0","mongoose":"9.x","sinon":"^21.0.1"},"scripts":{"lint":"eslint .","tailwind":"tailwindcss -o ./frontend/public/tw.css","tailwind:watch":"tailwindcss -o ./frontend/public/tw.css --watch","test":"mocha test/*.test.js","test:frontend":"mocha test/frontend/*.test.js"}}');
36946
+ module.exports = /*#__PURE__*/JSON.parse('{"name":"@mongoosejs/studio","version":"0.2.12","description":"A Mongoose-native MongoDB UI with schema-aware autocomplete, AI-assisted queries, and dashboards that understand your models - not just your data.","homepage":"https://mongoosestudio.app/","repository":{"type":"git","url":"https://github.com/mongoosejs/studio"},"license":"Apache-2.0","dependencies":{"@ai-sdk/anthropic":"2.x","@ai-sdk/google":"2.x","@ai-sdk/openai":"2.x","ai":"5.x","archetype":"0.13.1","csv-stringify":"6.3.0","ejson":"^2.2.3","extrovert":"^0.2.0","marked":"15.0.12","node-inspect-extracted":"3.x","tailwindcss":"3.4.0","vue":"3.x","vue-toastification":"^2.0.0-rc.5","webpack":"5.x","xss":"^1.0.15"},"peerDependencies":{"mongoose":"7.x || 8.x || ^9.0.0"},"optionalPeerDependencies":{"@mongoosejs/task":"0.5.x || 0.6.x"},"devDependencies":{"@masteringjs/eslint-config":"0.1.1","axios":"1.2.2","dedent":"^1.6.0","eslint":"9.30.0","express":"4.x","mocha":"10.2.0","mongoose":"9.x","sinon":"^21.0.1"},"scripts":{"lint":"eslint .","tailwind":"tailwindcss -o ./frontend/public/tw.css","tailwind:watch":"tailwindcss -o ./frontend/public/tw.css --watch","test":"mocha test/*.test.js","test:frontend":"mocha test/frontend/*.test.js"}}');
36906
36947
 
36907
36948
  /***/ }
36908
36949
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mongoosejs/studio",
3
- "version": "0.2.11",
3
+ "version": "0.2.12",
4
4
  "description": "A Mongoose-native MongoDB UI with schema-aware autocomplete, AI-assisted queries, and dashboards that understand your models - not just your data.",
5
5
  "homepage": "https://mongoosestudio.app/",
6
6
  "repository": {