@buoy-gg/storage 2.1.13 → 2.1.15

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.
@@ -6,7 +6,7 @@
6
6
  * Detail view for storage events using the shared EventHistoryViewer component.
7
7
  */
8
8
 
9
- import { View, Text, StyleSheet, ScrollView } from "react-native";
9
+ import { View, Text, StyleSheet } from "react-native";
10
10
  import { useState, useCallback, useMemo, useEffect, useRef } from "react";
11
11
  import AsyncStorage from "@react-native-async-storage/async-storage";
12
12
  import { formatRelativeTime, macOSColors, buoyColors, parseValue, devToolsStorageKeys, Database, GitBranch, EventStepperFooter, EventHistoryViewer, copyToClipboard, ProUpgradeModal } from "@buoy-gg/shared-ui";
@@ -61,6 +61,15 @@ function formatTimeWithMs(date) {
61
61
  const ms = String(date.getMilliseconds()).padStart(3, "0");
62
62
  return `${h}:${m}:${s}.${ms}`;
63
63
  }
64
+ const SPLIT_VIEW_OPTIONS = {
65
+ hideLineNumbers: false,
66
+ disableWordDiff: false,
67
+ showDiffOnly: false,
68
+ compareMethod: "words",
69
+ contextLines: 3,
70
+ lineOffset: 0
71
+ };
72
+ const SPLIT_VIEW_DIFFERENCES = [];
64
73
  export function StorageEventDetailContent({
65
74
  conversation,
66
75
  selectedEventIndex = 0,
@@ -257,38 +266,30 @@ export function StorageEventDetailContent({
257
266
  });
258
267
  }, [valueToShow, action, actionColor, valueType]);
259
268
 
269
+ // Memoized so the diff viewers don't see new oldValue/newValue refs on every
270
+ // re-render. parseValue runs JSON.parse, which would otherwise produce fresh
271
+ // object identities every time and force expensive recomputations downstream
272
+ // (line diff, tree diff, expansion-state effects, etc.).
273
+ const previousValue = useMemo(() => parseValue(leftEvent?.data?.value ?? null), [leftEvent]);
274
+ const currentValue = useMemo(() => parseValue(rightEvent?.data?.value), [rightEvent]);
275
+
260
276
  // Render diff content
261
277
  const renderDiffContent = useCallback(() => {
262
- const previousValue = parseValue(leftEvent?.data?.value ?? null);
263
- const currentValue = parseValue(rightEvent?.data?.value);
264
278
  if (diffMode === "split") {
265
- return /*#__PURE__*/_jsx(ScrollView, {
266
- style: {
267
- flex: 1
268
- },
269
- showsVerticalScrollIndicator: true,
270
- children: /*#__PURE__*/_jsx(ThemedSplitView, {
271
- oldValue: previousValue,
272
- newValue: currentValue,
273
- differences: [],
274
- theme: diffThemes.devToolsDefault,
275
- options: {
276
- hideLineNumbers: false,
277
- disableWordDiff: false,
278
- showDiffOnly: false,
279
- compareMethod: "words",
280
- contextLines: 3,
281
- lineOffset: 0
282
- },
283
- showThemeName: false
284
- })
279
+ return /*#__PURE__*/_jsx(ThemedSplitView, {
280
+ oldValue: previousValue,
281
+ newValue: currentValue,
282
+ differences: SPLIT_VIEW_DIFFERENCES,
283
+ theme: diffThemes.devToolsDefault,
284
+ options: SPLIT_VIEW_OPTIONS,
285
+ showThemeName: false
285
286
  });
286
287
  }
287
288
  return /*#__PURE__*/_jsx(TreeDiffViewer, {
288
289
  oldValue: previousValue,
289
290
  newValue: currentValue
290
291
  });
291
- }, [leftEvent, rightEvent, diffMode]);
292
+ }, [previousValue, currentValue, diffMode]);
292
293
 
293
294
  // Footer navigation handlers
294
295
  const handleFooterPrevious = useCallback(() => {
@@ -405,9 +405,7 @@ export function StorageModalWithTabs({
405
405
  const END_REACHED_THRESHOLD = 0.8;
406
406
 
407
407
  // keyExtractor for raw event FlatList
408
- const eventKeyExtractor = useCallback((item, index) => {
409
- return `${item.timestamp.getTime()}-${item.data?.key || index}`;
410
- }, []);
408
+ const eventKeyExtractor = useCallback(item => item.id, []);
411
409
 
412
410
  // When a raw event card is pressed, open that key's conversation detail at the matching event
413
411
  const handleRawEventPress = useCallback(item => {
@@ -470,8 +468,9 @@ export function StorageModalWithTabs({
470
468
  const ascSortedEvents = [...selectedHistoryConversation.events].sort((a, b) => a.timestamp.getTime() - b.timestamp.getTime());
471
469
  const newestFirstEvents = [...ascSortedEvents].reverse();
472
470
  return /*#__PURE__*/_jsx(FlatList, {
471
+ style: styles.flexFill,
473
472
  data: newestFirstEvents,
474
- keyExtractor: (item, index) => `${item.timestamp.getTime()}-${index}`,
473
+ keyExtractor: item => item.id,
475
474
  renderItem: ({
476
475
  item
477
476
  }) => {
@@ -493,8 +492,7 @@ export function StorageModalWithTabs({
493
492
  ItemSeparatorComponent: () => /*#__PURE__*/_jsx(View, {
494
493
  style: styles.separator
495
494
  }),
496
- initialNumToRender: 20,
497
- scrollEnabled: false
495
+ initialNumToRender: 20
498
496
  });
499
497
  }
500
498
  return /*#__PURE__*/_jsx(StorageBrowserMode, {
@@ -538,6 +536,7 @@ export function StorageModalWithTabs({
538
536
  });
539
537
  }
540
538
  return /*#__PURE__*/_jsx(FlatList, {
539
+ style: styles.flexFill,
541
540
  data: visibleEvents,
542
541
  renderItem: renderEventItem,
543
542
  keyExtractor: eventKeyExtractor,
@@ -552,8 +551,7 @@ export function StorageModalWithTabs({
552
551
  }) : null,
553
552
  initialNumToRender: 10,
554
553
  maxToRenderPerBatch: 10,
555
- windowSize: 10,
556
- scrollEnabled: false
554
+ windowSize: 10
557
555
  });
558
556
  };
559
557
  const footerNode = selectedConversation ? /*#__PURE__*/_jsx(StorageEventDetailFooter, {
@@ -682,6 +680,7 @@ export function StorageModalWithTabs({
682
680
  styles: {},
683
681
  footer: footerNode,
684
682
  footerHeight: footerNode ? 68 : 0,
683
+ disableScrollWrapper: true,
685
684
  children: renderContent()
686
685
  })
687
686
  });
@@ -690,6 +689,9 @@ const styles = StyleSheet.create({
690
689
  headerSearchContainer: {
691
690
  flex: 1
692
691
  },
692
+ flexFill: {
693
+ flex: 1
694
+ },
693
695
  iconButton: {
694
696
  width: 32,
695
697
  height: 32,
@@ -27,9 +27,17 @@ import { startListening as startAsyncStorageListening, addListener as addAsyncSt
27
27
  import { addMMKVListener } from "../utils/MMKVListener";
28
28
 
29
29
  /**
30
- * Unified storage event type combining AsyncStorage and MMKV events
30
+ * Unified storage event type combining AsyncStorage and MMKV events.
31
+ * `id` is assigned by the store when the event enters — needed because raw
32
+ * events have no unique identifier (rapid same-key writes can share a
33
+ * millisecond timestamp), and React keys must be unique per render.
31
34
  */
32
35
 
36
+ let storageEventIdCounter = 0;
37
+ function nextStorageEventId() {
38
+ return `se-${Date.now()}-${++storageEventIdCounter}`;
39
+ }
40
+
33
41
  /**
34
42
  * Listener callback type for storage events array
35
43
  */
@@ -63,7 +71,8 @@ class StorageEventStore extends BaseEventStore {
63
71
  this.asyncStorageUnsubscribe = addAsyncStorageListener(event => {
64
72
  const storageEvent = {
65
73
  ...event,
66
- storageType: "async"
74
+ storageType: "async",
75
+ id: nextStorageEventId()
67
76
  };
68
77
  this.addEvent(storageEvent);
69
78
  });
@@ -74,7 +83,8 @@ class StorageEventStore extends BaseEventStore {
74
83
  this.mmkvUnsubscribe = addMMKVListener(event => {
75
84
  const storageEvent = {
76
85
  ...event,
77
- storageType: "mmkv"
86
+ storageType: "mmkv",
87
+ id: nextStorageEventId()
78
88
  };
79
89
  this.addEvent(storageEvent);
80
90
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ThemedSplitView.d.ts","sourceRoot":"","sources":["../../../../../../src/storage/components/DiffViewer/modes/ThemedSplitView.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,UAAU,oBAAoB;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,EAAE,CAAC;IACvB,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,OAOC,EACD,aAAqB,GACtB,EAAE,oBAAoB,+BAgStB"}
1
+ {"version":3,"file":"ThemedSplitView.d.ts","sourceRoot":"","sources":["../../../../../../src/storage/components/DiffViewer/modes/ThemedSplitView.tsx"],"names":[],"mappings":"AAyBA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,UAAU,oBAAoB;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,EAAE,CAAC;IACvB,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAaD,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,OAAyB,EACzB,aAAqB,GACtB,EAAE,oBAAoB,+BAgLtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"StorageEventDetailContent.d.ts","sourceRoot":"","sources":["../../../../src/storage/components/StorageEventDetailContent.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AA6BlE,KAAK,SAAS,GAAG;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE;QACL,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,GAAG,CAAC;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH,CAAC;AAEF,KAAK,YAAY,GACb,CAAC,iBAAiB,GAAG;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAC/C,CAAC,SAAS,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAE3C,UAAU,sBAAsB;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EACL,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,MAAM,GACN,WAAW,GACX,QAAQ,GACR,OAAO,CAAC;IACZ,YAAY,CAAC,EAAE,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;CACtC;AAED,UAAU,8BAA8B;IACtC,YAAY,EAAE,sBAAsB,CAAC;IACrC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AA2CD,wBAAgB,yBAAyB,CAAC,EACxC,YAAY,EACZ,kBAAsB,EACtB,kBAA6B,EAC7B,qBAA6B,GAC9B,EAAE,8BAA8B,+BA+YhC;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,YAAY,EACZ,kBAAsB,EACtB,kBAA6B,GAC9B,EAAE;IACD,YAAY,EAAE,sBAAsB,CAAC;IACrC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C,+BAkBA"}
1
+ {"version":3,"file":"StorageEventDetailContent.d.ts","sourceRoot":"","sources":["../../../../src/storage/components/StorageEventDetailContent.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AA6BlE,KAAK,SAAS,GAAG;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE;QACL,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,GAAG,CAAC;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH,CAAC;AAEF,KAAK,YAAY,GACb,CAAC,iBAAiB,GAAG;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAC/C,CAAC,SAAS,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAE3C,UAAU,sBAAsB;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,YAAY,CAAC;IACxB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EACL,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,MAAM,GACN,WAAW,GACX,QAAQ,GACR,OAAO,CAAC;IACZ,YAAY,CAAC,EAAE,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;CACtC;AAED,UAAU,8BAA8B;IACtC,YAAY,EAAE,sBAAsB,CAAC;IACrC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAsDD,wBAAgB,yBAAyB,CAAC,EACxC,YAAY,EACZ,kBAAsB,EACtB,kBAA6B,EAC7B,qBAA6B,GAC9B,EAAE,8BAA8B,+BAgZhC;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,YAAY,EACZ,kBAAsB,EACtB,kBAA6B,GAC9B,EAAE;IACD,YAAY,EAAE,sBAAsB,CAAC;IACrC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C,+BAkBA"}
@@ -1 +1 @@
1
- {"version":3,"file":"StorageModalWithTabs.d.ts","sourceRoot":"","sources":["../../../../src/storage/components/StorageModalWithTabs.tsx"],"names":[],"mappings":"AA4BA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAsB9C,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC,UAAU,yBAAyB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC5C;AAqBD,wBAAgB,oBAAoB,CAAC,EACnC,OAAO,EACP,OAAO,EACP,MAAM,EACN,UAAU,EACV,2BAAmC,EACnC,mBAAwB,GACzB,EAAE,yBAAyB,sCAqyB3B"}
1
+ {"version":3,"file":"StorageModalWithTabs.d.ts","sourceRoot":"","sources":["../../../../src/storage/components/StorageModalWithTabs.tsx"],"names":[],"mappings":"AA4BA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAsB9C,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC,UAAU,yBAAyB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC5C;AAqBD,wBAAgB,oBAAoB,CAAC,EACnC,OAAO,EACP,OAAO,EACP,MAAM,EACN,UAAU,EACV,2BAAmC,EACnC,mBAAwB,GACzB,EAAE,yBAAyB,sCAoyB3B"}
@@ -23,12 +23,17 @@ import { BaseEventStore } from "@buoy-gg/shared-ui";
23
23
  import { type AsyncStorageEvent } from "../utils/AsyncStorageListener";
24
24
  import { type MMKVEvent } from "../utils/MMKVListener";
25
25
  /**
26
- * Unified storage event type combining AsyncStorage and MMKV events
26
+ * Unified storage event type combining AsyncStorage and MMKV events.
27
+ * `id` is assigned by the store when the event enters — needed because raw
28
+ * events have no unique identifier (rapid same-key writes can share a
29
+ * millisecond timestamp), and React keys must be unique per render.
27
30
  */
28
31
  export type StorageEvent = (AsyncStorageEvent & {
29
32
  storageType: "async";
33
+ id: string;
30
34
  }) | (MMKVEvent & {
31
35
  storageType: "mmkv";
36
+ id: string;
32
37
  });
33
38
  /**
34
39
  * Listener callback type for storage events array
@@ -1 +1 @@
1
- {"version":3,"file":"storageEventStore.d.ts","sourceRoot":"","sources":["../../../../src/storage/stores/storageEventStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,KAAK,SAAS,EACf,MAAM,uBAAuB,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,YAAY,GACpB,CAAC,iBAAiB,GAAG;IAAE,WAAW,EAAE,OAAO,CAAA;CAAE,CAAC,GAC9C,CAAC,SAAS,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,IAAI,CAAC;AAEpE;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;AAEjE,cAAM,iBAAkB,SAAQ,cAAc,CAAC,YAAY,CAAC;IAE1D,OAAO,CAAC,uBAAuB,CAA6B;IAC5D,OAAO,CAAC,eAAe,CAA6B;;IASpD;;OAEG;cACa,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB/C;;OAEG;IACH,SAAS,CAAC,aAAa,IAAI,IAAI;IAc/B;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,eAAe,CAAC,WAAW,EAAE,OAAO,GAAG,MAAM,GAAG,YAAY,EAAE;CAG/D;AAGD,eAAO,MAAM,iBAAiB,mBAA0B,CAAC;AAGzD,eAAO,MAAM,wBAAwB,GAAI,UAAU,oBAAoB,eACxB,CAAC;AAChD,eAAO,MAAM,cAAc,GAAI,UAAU,oBAAoB,eACxB,CAAC;AACtC,eAAO,MAAM,gBAAgB,sBAAsC,CAAC;AACpE,eAAO,MAAM,kBAAkB,YAAwC,CAAC;AACxE,eAAO,MAAM,kBAAkB,eAAwC,CAAC"}
1
+ {"version":3,"file":"storageEventStore.d.ts","sourceRoot":"","sources":["../../../../src/storage/stores/storageEventStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,KAAK,SAAS,EACf,MAAM,uBAAuB,CAAC;AAE/B;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GACpB,CAAC,iBAAiB,GAAG;IAAE,WAAW,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC,GAC1D,CAAC,SAAS,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAOtD;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,IAAI,CAAC;AAEpE;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;AAEjE,cAAM,iBAAkB,SAAQ,cAAc,CAAC,YAAY,CAAC;IAE1D,OAAO,CAAC,uBAAuB,CAA6B;IAC5D,OAAO,CAAC,eAAe,CAA6B;;IASpD;;OAEG;cACa,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAiC/C;;OAEG;IACH,SAAS,CAAC,aAAa,IAAI,IAAI;IAc/B;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,eAAe,CAAC,WAAW,EAAE,OAAO,GAAG,MAAM,GAAG,YAAY,EAAE;CAG/D;AAGD,eAAO,MAAM,iBAAiB,mBAA0B,CAAC;AAGzD,eAAO,MAAM,wBAAwB,GAAI,UAAU,oBAAoB,eACxB,CAAC;AAChD,eAAO,MAAM,cAAc,GAAI,UAAU,oBAAoB,eACxB,CAAC;AACtC,eAAO,MAAM,gBAAgB,sBAAsC,CAAC;AACpE,eAAO,MAAM,kBAAkB,YAAwC,CAAC;AACxE,eAAO,MAAM,kBAAkB,eAAwC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@buoy-gg/storage",
3
- "version": "2.1.13",
3
+ "version": "2.1.15",
4
4
  "description": "storage package",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -26,11 +26,11 @@
26
26
  ],
27
27
  "sideEffects": false,
28
28
  "dependencies": {
29
- "@buoy-gg/shared-ui": "2.1.13",
30
- "@buoy-gg/floating-tools-core": "2.1.13"
29
+ "@buoy-gg/shared-ui": "2.1.15",
30
+ "@buoy-gg/floating-tools-core": "2.1.15"
31
31
  },
32
32
  "peerDependencies": {
33
- "@buoy-gg/license": "2.1.13",
33
+ "@buoy-gg/license": "2.1.15",
34
34
  "@react-native-async-storage/async-storage": ">=1.0.0",
35
35
  "react": "*",
36
36
  "react-native": "*"
@@ -40,7 +40,7 @@
40
40
  "@types/react": "^19.1.0",
41
41
  "@types/react-native": "^0.73.0",
42
42
  "typescript": "~5.8.3",
43
- "@buoy-gg/license": "2.1.13"
43
+ "@buoy-gg/license": "2.1.15"
44
44
  },
45
45
  "react-native-builder-bob": {
46
46
  "source": "src",