@buoy-gg/time-machine 7.0.17 → 7.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/lib/commonjs/components/HeaderReloadButton.js +61 -0
  2. package/lib/commonjs/components/HeaderReloadButton.js.map +1 -0
  3. package/lib/commonjs/components/TimeMachineBody.js +343 -127
  4. package/lib/commonjs/components/TimeMachineBody.js.map +1 -1
  5. package/lib/commonjs/components/TimeMachineModal.js +1 -0
  6. package/lib/commonjs/components/TimeMachineModal.js.map +1 -1
  7. package/lib/commonjs/components/preview/ItemDetailScreen.js +189 -0
  8. package/lib/commonjs/components/preview/ItemDetailScreen.js.map +1 -0
  9. package/lib/commonjs/components/preview/RestorePreviewScreen.js +1056 -0
  10. package/lib/commonjs/components/preview/RestorePreviewScreen.js.map +1 -0
  11. package/lib/commonjs/components/preview/verdictMeta.js +58 -0
  12. package/lib/commonjs/components/preview/verdictMeta.js.map +1 -0
  13. package/lib/commonjs/preset.js +11 -2
  14. package/lib/commonjs/preset.js.map +1 -1
  15. package/lib/commonjs/store/snapshotVault.js +19 -0
  16. package/lib/commonjs/store/snapshotVault.js.map +1 -1
  17. package/lib/commonjs/store/timeMachineStore.js +298 -7
  18. package/lib/commonjs/store/timeMachineStore.js.map +1 -1
  19. package/lib/commonjs/sync/timeMachineSyncAdapter.js +62 -2
  20. package/lib/commonjs/sync/timeMachineSyncAdapter.js.map +1 -1
  21. package/lib/module/components/HeaderReloadButton.js +56 -0
  22. package/lib/module/components/HeaderReloadButton.js.map +1 -0
  23. package/lib/module/components/TimeMachineBody.js +345 -129
  24. package/lib/module/components/TimeMachineBody.js.map +1 -1
  25. package/lib/module/components/TimeMachineModal.js +1 -0
  26. package/lib/module/components/TimeMachineModal.js.map +1 -1
  27. package/lib/module/components/preview/ItemDetailScreen.js +184 -0
  28. package/lib/module/components/preview/ItemDetailScreen.js.map +1 -0
  29. package/lib/module/components/preview/RestorePreviewScreen.js +1051 -0
  30. package/lib/module/components/preview/RestorePreviewScreen.js.map +1 -0
  31. package/lib/module/components/preview/verdictMeta.js +53 -0
  32. package/lib/module/components/preview/verdictMeta.js.map +1 -0
  33. package/lib/module/preset.js +11 -2
  34. package/lib/module/preset.js.map +1 -1
  35. package/lib/module/store/snapshotVault.js +18 -0
  36. package/lib/module/store/snapshotVault.js.map +1 -1
  37. package/lib/module/store/timeMachineStore.js +299 -8
  38. package/lib/module/store/timeMachineStore.js.map +1 -1
  39. package/lib/module/sync/timeMachineSyncAdapter.js +62 -2
  40. package/lib/module/sync/timeMachineSyncAdapter.js.map +1 -1
  41. package/lib/typescript/components/HeaderReloadButton.d.ts +2 -0
  42. package/lib/typescript/components/HeaderReloadButton.d.ts.map +1 -0
  43. package/lib/typescript/components/TimeMachineBody.d.ts.map +1 -1
  44. package/lib/typescript/components/TimeMachineModal.d.ts.map +1 -1
  45. package/lib/typescript/components/preview/ItemDetailScreen.d.ts +11 -0
  46. package/lib/typescript/components/preview/ItemDetailScreen.d.ts.map +1 -0
  47. package/lib/typescript/components/preview/RestorePreviewScreen.d.ts +15 -0
  48. package/lib/typescript/components/preview/RestorePreviewScreen.d.ts.map +1 -0
  49. package/lib/typescript/components/preview/verdictMeta.d.ts +10 -0
  50. package/lib/typescript/components/preview/verdictMeta.d.ts.map +1 -0
  51. package/lib/typescript/preset.d.ts +15 -3
  52. package/lib/typescript/preset.d.ts.map +1 -1
  53. package/lib/typescript/store/snapshotVault.d.ts +7 -0
  54. package/lib/typescript/store/snapshotVault.d.ts.map +1 -1
  55. package/lib/typescript/store/timeMachineStore.d.ts +49 -2
  56. package/lib/typescript/store/timeMachineStore.d.ts.map +1 -1
  57. package/lib/typescript/sync/timeMachineSyncAdapter.d.ts +36 -0
  58. package/lib/typescript/sync/timeMachineSyncAdapter.d.ts.map +1 -1
  59. package/package.json +13 -6
  60. package/src/components/HeaderReloadButton.tsx +45 -0
  61. package/src/components/TimeMachineBody.tsx +416 -137
  62. package/src/components/TimeMachineModal.tsx +1 -0
  63. package/src/components/preview/ItemDetailScreen.tsx +172 -0
  64. package/src/components/preview/RestorePreviewScreen.tsx +1089 -0
  65. package/src/components/preview/verdictMeta.ts +40 -0
  66. package/src/preset.tsx +11 -2
  67. package/src/store/snapshotVault.ts +28 -0
  68. package/src/store/timeMachineStore.ts +330 -7
  69. package/src/sync/timeMachineSyncAdapter.ts +63 -3
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_sharedUi","_floatingToolsCore","_core","_timeMachineStore","_verdictMeta","_jsxRuntime","SOURCE_ICONS","storage","StorageIcon","redux","ReduxIcon","zustand","ZustandIcon","jotai","JotaiIcon","query","QueryIcon","SOURCE_NOUNS","cKey","sourceId","itemKey","shortPreview","value","undefined","s","JSON","stringify","String","length","slice","sideName","ref","snapshots","find","id","snapshotId","name","timeAgo","ts","Math","max","round","Date","now","m","h","Checkbox","state","jsxs","View","style","styles","checkbox","checkboxChecked","children","jsx","Text","checkboxGlyph","ItemRow","memo","row","onOpen","onToggle","meta","VERDICT_META","item","verdict","dimmed","applies","excluded","openable","itemRow","TouchableOpacity","onPress","hitSlop","top","bottom","left","right","testID","key","itemBodyTouch","disabled","itemGlyph","color","glyph","itemBody","itemLabel","numberOfLines","label","itemPreview","oldValue","newValue","itemPreviewRemoved","itemExcluded","reason","itemReason","itemChevron","RestorePreviewScreen","preview","busy","onBack","onOpenItem","onRestore","onPickSide","onRefresh","host","useToolHost","hosted","instanceId","localSearch","setLocalSearch","useState","collapsed","setCollapsed","allCollapsed","setAllCollapsed","setExcluded","Set","search","rightMeta","isBaseline","baseline","liveLeft","selectAll","useCallback","selectNone","next","src","sources","items","add","seededScopeFor","useRef","useEffect","scope","building","current","scopeSet","has","saveScope","selected","push","clearing","size","timeMachineStore","setScope","showToast","toggleItem","prev","delete","toggleSource","source","includeState","toggleCollapse","currentlyCollapsed","c","toggleAllCollapsed","Object","fromEntries","map","totals","useMemo","excludedCount","wontApply","perSource","n","toLowerCase","useToolHeader","title","subtitle","searchable","rows","q","trim","out","relevant","some","i","expandable","notes","error","applicable","filter","wontApplyCount","noun","replace","summary","excludedInSource","counts","added","removed","changed","visible","includes","isCollapsed","kind","applicableCount","note","text","renderRow","clean","IconComp","TimeMachineIcon","sourceCard","sourceCardTouch","sourceIconTile","sourceNameBlock","sourceName","sourceSummary","sourceBadges","sourceBadge","buoyColors","success","info","ChevronDown","textMuted","ChevronUp","noteRow","keyExtractor","header","fallbackHeader","HIT","backText","screenTitle","compareCard","compareSide","compareTagRow","stateDot","backgroundColor","compareTag","compareName","compareMetaRow","compareMeta","builtAt","accessibilityLabel","RefreshCw","macOSColors","textSecondary","swapBadge","swapGlyph","compareSideRight","compareNameRight","compareMetaRight","createdAt","changesRow","changesTitleRow","changesTitle","selectLinks","selectLink","selectLinkActive","selectLinkSep","Fragment","ActivityIndicator","primary","changesChip","changesChipText","join","wontApplyLine","searchRow","searchField","Search","TextInput","searchInput","onChangeText","placeholder","placeholderTextColor","autoCorrect","autoCapitalize","collapseAllButton","Filter","ctaDisabled","container","FlatList","data","renderItem","ListHeaderComponent","ListEmptyComponent","emptyText","removeClippedSubviews","initialNumToRender","windowSize","contentContainerStyle","listContent","footer","cta","ctaDanger","Array","from","ctaText","ctaCaption","StyleSheet","create","flex","flexDirection","alignItems","paddingVertical","gap","fontSize","fontWeight","toolbarButton","padding","justifyContent","opacity","paddingHorizontal","paddingTop","paddingBottom","card","borderColor","border","borderWidth","borderRadius","minWidth","width","height","letterSpacing","textAlign","hover","marginTop","maxWidth","warning","marginBottom","lineHeight","fontVariant","paddingLeft","marginLeft","textDecorationLine","fontStyle","borderTopColor","borderTopWidth","base"],"sourceRoot":"../../../../src","sources":["components/preview/RestorePreviewScreen.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.VERDICT_META = void 0;
7
+ var _sharedUi = require("@buoy-gg/shared-ui");
8
+ /**
9
+ * One place for the verdict → glyph/color/label mapping. Color is ALWAYS
10
+ * paired with a distinct glyph (true minus U+2212, approx U+2248) — the
11
+ * repo-wide accessibility convention for diff surfaces.
12
+ */
13
+
14
+ const VERDICT_META = exports.VERDICT_META = {
15
+ added: {
16
+ glyph: "+",
17
+ color: _sharedUi.buoyColors.success,
18
+ label: "added",
19
+ applies: true
20
+ },
21
+ removed: {
22
+ glyph: "−",
23
+ color: _sharedUi.buoyColors.error,
24
+ label: "removed",
25
+ applies: true
26
+ },
27
+ changed: {
28
+ glyph: "≈",
29
+ color: _sharedUi.buoyColors.info,
30
+ label: "changed",
31
+ applies: true
32
+ },
33
+ "too-large": {
34
+ glyph: "≈",
35
+ color: _sharedUi.buoyColors.warning,
36
+ label: "changed (large)",
37
+ applies: true
38
+ },
39
+ unchanged: {
40
+ glyph: "=",
41
+ color: _sharedUi.buoyColors.textMuted,
42
+ label: "unchanged",
43
+ applies: false
44
+ },
45
+ "wont-apply": {
46
+ glyph: "⊘",
47
+ color: _sharedUi.buoyColors.warning,
48
+ label: "won't apply",
49
+ applies: false
50
+ },
51
+ recomputes: {
52
+ glyph: "↻",
53
+ color: _sharedUi.buoyColors.textMuted,
54
+ label: "recomputes",
55
+ applies: false
56
+ }
57
+ };
58
+ //# sourceMappingURL=verdictMeta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_sharedUi","require","VERDICT_META","exports","added","glyph","color","buoyColors","success","label","applies","removed","error","changed","info","warning","unchanged","textMuted","recomputes"],"sourceRoot":"../../../../src","sources":["components/preview/verdictMeta.ts"],"mappings":";;;;;;AAKA,IAAAA,SAAA,GAAAC,OAAA;AALA;AACA;AACA;AACA;AACA;;AAYO,MAAMC,YAA8D,GAAAC,OAAA,CAAAD,YAAA,GAAG;EAC5EE,KAAK,EAAE;IAAEC,KAAK,EAAE,GAAG;IAAEC,KAAK,EAAEC,oBAAU,CAACC,OAAO;IAAEC,KAAK,EAAE,OAAO;IAAEC,OAAO,EAAE;EAAK,CAAC;EAC/EC,OAAO,EAAE;IAAEN,KAAK,EAAE,GAAG;IAAEC,KAAK,EAAEC,oBAAU,CAACK,KAAK;IAAEH,KAAK,EAAE,SAAS;IAAEC,OAAO,EAAE;EAAK,CAAC;EACjFG,OAAO,EAAE;IAAER,KAAK,EAAE,GAAG;IAAEC,KAAK,EAAEC,oBAAU,CAACO,IAAI;IAAEL,KAAK,EAAE,SAAS;IAAEC,OAAO,EAAE;EAAK,CAAC;EAChF,WAAW,EAAE;IACXL,KAAK,EAAE,GAAG;IACVC,KAAK,EAAEC,oBAAU,CAACQ,OAAO;IACzBN,KAAK,EAAE,iBAAiB;IACxBC,OAAO,EAAE;EACX,CAAC;EACDM,SAAS,EAAE;IAAEX,KAAK,EAAE,GAAG;IAAEC,KAAK,EAAEC,oBAAU,CAACU,SAAS;IAAER,KAAK,EAAE,WAAW;IAAEC,OAAO,EAAE;EAAM,CAAC;EAC1F,YAAY,EAAE;IACZL,KAAK,EAAE,GAAG;IACVC,KAAK,EAAEC,oBAAU,CAACQ,OAAO;IACzBN,KAAK,EAAE,aAAa;IACpBC,OAAO,EAAE;EACX,CAAC;EACDQ,UAAU,EAAE;IACVb,KAAK,EAAE,GAAG;IACVC,KAAK,EAAEC,oBAAU,CAACU,SAAS;IAC3BR,KAAK,EAAE,YAAY;IACnBC,OAAO,EAAE;EACX;AACF,CAAC","ignoreList":[]}
@@ -6,7 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.createTimeMachineTool = createTimeMachineTool;
7
7
  exports.timeMachineToolPreset = void 0;
8
8
  var _sharedUi = require("@buoy-gg/shared-ui");
9
- var _TimeMachineModal = require("./components/TimeMachineModal");
9
+ var _TimeMachineBody = require("./components/TimeMachineBody");
10
+ var _HeaderReloadButton = require("./components/HeaderReloadButton");
10
11
  var _jsxRuntime = require("react/jsx-runtime");
11
12
  /**
12
13
  * Pre-configured Time Machine tool for FloatingDevTools.
@@ -31,7 +32,15 @@ const timeMachineToolPreset = exports.timeMachineToolPreset = {
31
32
  size: size,
32
33
  color: color || _sharedUi.TIME_MACHINE_ICON_COLOR
33
34
  }),
34
- component: _TimeMachineModal.TimeMachineModal
35
+ component: _TimeMachineBody.TimeMachineBody,
36
+ // Declarative chrome: core's ToolModalShell provides the JsModal, the
37
+ // managed header (screens override it via useToolHeader) and header search.
38
+ modal: {
39
+ subtitle: "snapshot & restore app state",
40
+ searchable: true,
41
+ searchPlaceholder: "Filter…",
42
+ headerActions: /*#__PURE__*/(0, _jsxRuntime.jsx)(_HeaderReloadButton.HeaderReloadButton, {})
43
+ }
35
44
  };
36
45
 
37
46
  /** Create a custom Time Machine tool configuration. */
@@ -1 +1 @@
1
- {"version":3,"names":["_sharedUi","require","_TimeMachineModal","_jsxRuntime","timeMachineToolPreset","exports","id","name","description","slot","icon","size","color","jsx","TimeMachineIcon","TIME_MACHINE_ICON_COLOR","component","TimeMachineModal","createTimeMachineTool","options"],"sourceRoot":"../../src","sources":["preset.tsx"],"mappings":";;;;;;;AAWA,IAAAA,SAAA,GAAAC,OAAA;AAIA,IAAAC,iBAAA,GAAAD,OAAA;AAAiE,IAAAE,WAAA,GAAAF,OAAA;AAfjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAQO,MAAMG,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,GAAG;EACnCE,EAAE,EAAE,cAAc;EAClBC,IAAI,EAAE,cAAc;EACpBC,WAAW,EAAE,6DAA6D;EAC1EC,IAAI,EAAE,MAAe;EACrBC,IAAI,EAAEA,CAAC;IAAEC,IAAI;IAAEC;EAAwC,CAAC,kBACtD,IAAAT,WAAA,CAAAU,GAAA,EAACb,SAAA,CAAAc,eAAe;IAACH,IAAI,EAAEA,IAAK;IAACC,KAAK,EAAEA,KAAK,IAAIG;EAAwB,CAAE,CACxE;EACDC,SAAS,EAAEC;AACb,CAAC;;AAED;AACO,SAASC,qBAAqBA,CACnCC,OAAgD,GAAG,CAAC,CAAC,EACrD;EACA,OAAO;IACL,GAAGf,qBAAqB;IACxBG,IAAI,EAAEY,OAAO,CAACZ,IAAI,IAAIH,qBAAqB,CAACG,IAAI;IAChDC,WAAW,EAAEW,OAAO,CAACX,WAAW,IAAIJ,qBAAqB,CAACI;EAC5D,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["_sharedUi","require","_TimeMachineBody","_HeaderReloadButton","_jsxRuntime","timeMachineToolPreset","exports","id","name","description","slot","icon","size","color","jsx","TimeMachineIcon","TIME_MACHINE_ICON_COLOR","component","TimeMachineBody","modal","subtitle","searchable","searchPlaceholder","headerActions","HeaderReloadButton","createTimeMachineTool","options"],"sourceRoot":"../../src","sources":["preset.tsx"],"mappings":";;;;;;;AAWA,IAAAA,SAAA,GAAAC,OAAA;AAIA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,mBAAA,GAAAF,OAAA;AAAqE,IAAAG,WAAA,GAAAH,OAAA;AAhBrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AASO,MAAMI,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,GAAG;EACnCE,EAAE,EAAE,cAAc;EAClBC,IAAI,EAAE,cAAc;EACpBC,WAAW,EAAE,6DAA6D;EAC1EC,IAAI,EAAE,MAAe;EACrBC,IAAI,EAAEA,CAAC;IAAEC,IAAI;IAAEC;EAAwC,CAAC,kBACtD,IAAAT,WAAA,CAAAU,GAAA,EAACd,SAAA,CAAAe,eAAe;IAACH,IAAI,EAAEA,IAAK;IAACC,KAAK,EAAEA,KAAK,IAAIG;EAAwB,CAAE,CACxE;EACDC,SAAS,EAAEC,gCAAe;EAC1B;EACA;EACAC,KAAK,EAAE;IACLC,QAAQ,EAAE,8BAA8B;IACxCC,UAAU,EAAE,IAAI;IAChBC,iBAAiB,EAAE,SAAS;IAC5BC,aAAa,eAAE,IAAAnB,WAAA,CAAAU,GAAA,EAACX,mBAAA,CAAAqB,kBAAkB,IAAE;EACtC;AACF,CAAC;;AAED;AACO,SAASC,qBAAqBA,CACnCC,OAAgD,GAAG,CAAC,CAAC,EACrD;EACA,OAAO;IACL,GAAGrB,qBAAqB;IACxBG,IAAI,EAAEkB,OAAO,CAAClB,IAAI,IAAIH,qBAAqB,CAACG,IAAI;IAChDC,WAAW,EAAEiB,OAAO,CAACjB,WAAW,IAAIJ,qBAAqB,CAACI;EAC5D,CAAC;AACH","ignoreList":[]}
@@ -8,6 +8,7 @@ exports.loadIndex = loadIndex;
8
8
  exports.loadSnapshot = loadSnapshot;
9
9
  exports.renameSnapshot = renameSnapshot;
10
10
  exports.saveSnapshot = saveSnapshot;
11
+ exports.setSnapshotScope = setSnapshotScope;
11
12
  var _sharedUi = require("@buoy-gg/shared-ui");
12
13
  /**
13
14
  * Snapshot persistence for Time Machine.
@@ -67,6 +68,24 @@ async function deleteSnapshot(id, metas) {
67
68
  await saveIndex(next);
68
69
  return next;
69
70
  }
71
+ async function setSnapshotScope(id, scope, metas) {
72
+ const apply = m => {
73
+ if (m.id !== id) return m;
74
+ const next = {
75
+ ...m
76
+ };
77
+ if (scope && scope.length > 0) next.scope = scope;else delete next.scope;
78
+ return next;
79
+ };
80
+ const next = metas.map(apply);
81
+ await _sharedUi.persistentStorage.setItem(INDEX_KEY, JSON.stringify(next));
82
+ const stored = await loadSnapshot(id);
83
+ if (stored) {
84
+ stored.meta = apply(stored.meta);
85
+ await _sharedUi.persistentStorage.setItem(SNAP_PREFIX + id, JSON.stringify(stored));
86
+ }
87
+ return next;
88
+ }
70
89
  async function renameSnapshot(id, name, metas) {
71
90
  const next = metas.map(m => m.id === id ? {
72
91
  ...m,
@@ -1 +1 @@
1
- {"version":3,"names":["_sharedUi","require","INDEX_KEY","SNAP_PREFIX","loadIndex","raw","persistentStorage","getItem","parsed","JSON","parse","Array","isArray","saveIndex","metas","setItem","stringify","saveSnapshot","snapshot","serialized","meta","sizeBytes","length","id","next","filter","m","loadSnapshot","deleteSnapshot","removeItem","renameSnapshot","name","map","stored"],"sourceRoot":"../../../src","sources":["store/snapshotVault.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_sharedUi","require","INDEX_KEY","SNAP_PREFIX","loadIndex","raw","persistentStorage","getItem","parsed","JSON","parse","Array","isArray","saveIndex","metas","setItem","stringify","saveSnapshot","snapshot","serialized","meta","sizeBytes","length","id","next","filter","m","loadSnapshot","deleteSnapshot","removeItem","setSnapshotScope","scope","apply","map","stored","renameSnapshot","name"],"sourceRoot":"../../../src","sources":["store/snapshotVault.ts"],"mappings":"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","ignoreList":[]}
@@ -8,6 +8,7 @@ exports.replaceTimeMachineFromSnapshot = replaceTimeMachineFromSnapshot;
8
8
  exports.setRemoteTimeMachineHandler = setRemoteTimeMachineHandler;
9
9
  exports.timeMachineStore = void 0;
10
10
  var _sharedUi = require("@buoy-gg/shared-ui");
11
+ var _dataViewer = require("@buoy-gg/shared-ui/dataViewer");
11
12
  var _snapshotVault = require("./snapshotVault");
12
13
  /**
13
14
  * Time Machine orchestrator — snapshot CRUD + capture/restore across every
@@ -30,6 +31,8 @@ const RESTORE_ORDER = exports.RESTORE_ORDER = ["storage", "redux", "zustand", "j
30
31
 
31
32
  /** Provider capability row as mirrored to a remote dashboard. */
32
33
 
34
+ /** One side of a preview comparison. */
35
+
33
36
  let remoteHandler = null;
34
37
  function skippedResult(reason) {
35
38
  return {
@@ -53,8 +56,12 @@ class TimeMachineStore {
53
56
  hasLoaded: false,
54
57
  busy: null,
55
58
  lastOutcome: null,
59
+ preview: null,
56
60
  remoteProviders: null
57
61
  };
62
+ /** Monotonic token — a preview build checks it after every await and
63
+ * abandons itself when a newer build (or clearPreview) supersedes it. */
64
+ previewRunId = 0;
58
65
  listeners = new Set();
59
66
  loadPromise = null;
60
67
  getState() {
@@ -185,11 +192,18 @@ class TimeMachineStore {
185
192
  });
186
193
  return snapshot.meta;
187
194
  }
188
- async restore(id, mode) {
195
+
196
+ /**
197
+ * `excludeKeys` entries are compound `"sourceId::itemKey"` strings (the
198
+ * itemKey being what previewItems emitted) — split per source before each
199
+ * provider sees only its own keys.
200
+ */
201
+ async restore(id, mode, excludeKeys) {
189
202
  if (remoteHandler) {
190
203
  const outcome = await remoteHandler("restore", {
191
204
  id,
192
- mode
205
+ mode,
206
+ excludeKeys
193
207
  });
194
208
  this.setState({
195
209
  lastOutcome: outcome
@@ -230,10 +244,28 @@ class TimeMachineStore {
230
244
  return outcome;
231
245
  }
232
246
  const sourceIds = [...RESTORE_ORDER.filter(sid => sid in stored.data), ...Object.keys(stored.data).filter(sid => !RESTORE_ORDER.includes(sid))];
247
+ const splitCompound = keys => {
248
+ const bySource = new Map();
249
+ for (const compound of keys) {
250
+ const sep = compound.indexOf("::");
251
+ if (sep <= 0) continue;
252
+ const sid = compound.slice(0, sep);
253
+ const itemKey = compound.slice(sep + 2);
254
+ const list = bySource.get(sid) ?? [];
255
+ list.push(itemKey);
256
+ bySource.set(sid, list);
257
+ }
258
+ return bySource;
259
+ };
260
+ const excludeBySource = splitCompound(excludeKeys ?? []);
261
+ // A saved scope makes this a targeted restore point. An explicit
262
+ // exclusion list from the preview already reflects the scope (the
263
+ // preview seeds its selection from it), so it takes precedence.
264
+ const includeBySource = !excludeKeys && stored.meta.scope?.length ? splitCompound(stored.meta.scope) : null;
233
265
  if (mode === "reload") {
234
266
  // Storage only; everything in-memory rebuilds after the reload.
235
- if (stored.data.storage) {
236
- outcome.results.storage = await this.restoreSource("storage", stored.data.storage);
267
+ if (stored.data.storage && (!includeBySource || includeBySource.has("storage"))) {
268
+ outcome.results.storage = await this.restoreSource("storage", stored.data.storage, excludeBySource.get("storage"), includeBySource?.get("storage"));
237
269
  }
238
270
  outcome.willReload = this.scheduleReload("buoy time-machine restore");
239
271
  this.setState({
@@ -242,7 +274,9 @@ class TimeMachineStore {
242
274
  return outcome;
243
275
  }
244
276
  for (const sid of sourceIds) {
245
- outcome.results[sid] = await this.restoreSource(sid, stored.data[sid]);
277
+ // Sources entirely outside the scope are untouched and unreported.
278
+ if (includeBySource && !includeBySource.has(sid)) continue;
279
+ outcome.results[sid] = await this.restoreSource(sid, stored.data[sid], excludeBySource.get(sid), includeBySource?.get(sid));
246
280
  }
247
281
  this.setState({
248
282
  lastOutcome: outcome
@@ -254,7 +288,7 @@ class TimeMachineStore {
254
288
  });
255
289
  }
256
290
  }
257
- async restoreSource(sourceId, payload) {
291
+ async restoreSource(sourceId, payload, excludeKeys, includeKeys) {
258
292
  const provider = (0, _sharedUi.getStateSnapshotProvider)(sourceId);
259
293
  if (!provider) {
260
294
  return skippedResult("provider not available (package missing or not initialized)");
@@ -264,7 +298,15 @@ class TimeMachineStore {
264
298
  return skippedResult(status.detail ?? "restore unavailable");
265
299
  }
266
300
  try {
267
- return await provider.restore((0, _sharedUi.superJsonDeserialize)(payload));
301
+ const options = excludeKeys?.length || includeKeys?.length ? {
302
+ ...(excludeKeys?.length ? {
303
+ excludeKeys
304
+ } : {}),
305
+ ...(includeKeys?.length ? {
306
+ includeKeys
307
+ } : {})
308
+ } : undefined;
309
+ return await provider.restore((0, _sharedUi.superJsonDeserialize)(payload), options);
268
310
  } catch (e) {
269
311
  return skippedResult(String(e));
270
312
  }
@@ -307,11 +349,260 @@ class TimeMachineStore {
307
349
  snapshots
308
350
  });
309
351
  }
352
+
353
+ /**
354
+ * Save (or clear with null/empty) a snapshot's restore scope — compound
355
+ * "sourceId::itemKey" strings. A scoped restore point only ever touches
356
+ * its scoped items.
357
+ */
358
+ async setScope(id, scope) {
359
+ if (remoteHandler) {
360
+ await remoteHandler("setScope", {
361
+ id,
362
+ scope
363
+ });
364
+ return;
365
+ }
366
+ await this.ensureLoaded();
367
+ const snapshots = await (0, _snapshotVault.setSnapshotScope)(id, scope, this.state.snapshots);
368
+ this.setState({
369
+ snapshots
370
+ });
371
+ }
310
372
  clearLastOutcome() {
311
373
  this.setState({
312
374
  lastOutcome: null
313
375
  });
314
376
  }
377
+
378
+ /**
379
+ * Wipe every clearable source to fresh-install state and reload — the
380
+ * standalone utility behind the home screen's "Wipe all app state" button
381
+ * (no baseline snapshot involved).
382
+ */
383
+ async wipeAll() {
384
+ if (remoteHandler) {
385
+ const outcome = await remoteHandler("wipeAll", {});
386
+ this.setState({
387
+ lastOutcome: outcome
388
+ });
389
+ return outcome;
390
+ }
391
+ this.setState({
392
+ busy: "restore"
393
+ });
394
+ try {
395
+ const outcome = {
396
+ snapshotId: "wipe-all",
397
+ snapshotName: "Wipe all",
398
+ mode: "reload",
399
+ at: Date.now(),
400
+ willReload: false,
401
+ results: {}
402
+ };
403
+ for (const provider of (0, _sharedUi.getStateSnapshotProviders)()) {
404
+ if (provider.clear) {
405
+ try {
406
+ outcome.results[provider.id] = await provider.clear();
407
+ } catch (e) {
408
+ outcome.results[provider.id] = skippedResult(String(e));
409
+ }
410
+ }
411
+ }
412
+ outcome.willReload = this.scheduleReload("buoy time-machine wipe all");
413
+ this.setState({
414
+ lastOutcome: outcome
415
+ });
416
+ return outcome;
417
+ } finally {
418
+ this.setState({
419
+ busy: null
420
+ });
421
+ }
422
+ }
423
+ clearPreview() {
424
+ this.previewRunId += 1;
425
+ this.setState({
426
+ preview: null
427
+ });
428
+ }
429
+
430
+ /**
431
+ * Build (or rebuild) the restore preview: item-level verdicts per source,
432
+ * filled in incrementally with a frame yield between sources so a big app
433
+ * never freezes the JS thread in one go.
434
+ */
435
+ async buildPreview(right, left = "current") {
436
+ if (remoteHandler) {
437
+ // Buoy Desktop: the device builds it; result mirrors into state.
438
+ const runId = ++this.previewRunId;
439
+ this.setState({
440
+ preview: {
441
+ left,
442
+ right,
443
+ building: true,
444
+ builtAt: Date.now(),
445
+ sources: []
446
+ }
447
+ });
448
+ try {
449
+ const result = await remoteHandler("preview", {
450
+ id: right === "current" ? undefined : right.snapshotId,
451
+ compareTo: left === "current" ? undefined : left.snapshotId
452
+ });
453
+ if (runId !== this.previewRunId) return;
454
+ this.setState({
455
+ preview: {
456
+ left,
457
+ right,
458
+ building: false,
459
+ builtAt: Date.now(),
460
+ sources: result.sources ?? []
461
+ }
462
+ });
463
+ } catch (e) {
464
+ if (runId !== this.previewRunId) return;
465
+ this.setState({
466
+ preview: {
467
+ left,
468
+ right,
469
+ building: false,
470
+ builtAt: Date.now(),
471
+ sources: [{
472
+ id: "error",
473
+ label: "Preview",
474
+ items: [],
475
+ notes: [],
476
+ error: String(e)
477
+ }]
478
+ }
479
+ });
480
+ }
481
+ return;
482
+ }
483
+ await this.ensureLoaded();
484
+ const runId = ++this.previewRunId;
485
+ this.setState({
486
+ preview: {
487
+ left,
488
+ right,
489
+ building: true,
490
+ builtAt: Date.now(),
491
+ sources: []
492
+ }
493
+ });
494
+ const loadSide = async ref => {
495
+ if (ref === "current") return null; // providers capture live themselves
496
+ const stored = await (0, _snapshotVault.loadSnapshot)(ref.snapshotId);
497
+ if (!stored) throw new Error(`No snapshot with id "${ref.snapshotId}"`);
498
+ return stored.data;
499
+ };
500
+ try {
501
+ if (right === "current") throw new Error("preview target must be a snapshot");
502
+ const [leftData, rightStored] = await Promise.all([loadSide(left), (0, _snapshotVault.loadSnapshot)(right.snapshotId)]);
503
+ if (runId !== this.previewRunId) return;
504
+ if (!rightStored) {
505
+ throw new Error(`No snapshot with id "${right.snapshotId}"`);
506
+ }
507
+ const rightData = rightStored.data;
508
+
509
+ // Baseline = empty target: preview every clearable source against live,
510
+ // so each live key naturally reads as "removed" — the informed wipe.
511
+ const isBaseline = rightStored.meta.baseline === true;
512
+ const sourceIds = isBaseline ? (0, _sharedUi.getStateSnapshotProviders)().filter(p => p.clear).map(p => p.id) : [...RESTORE_ORDER.filter(sid => sid in rightData), ...Object.keys(rightData).filter(sid => !RESTORE_ORDER.includes(sid))];
513
+ const sources = [];
514
+ for (const sid of sourceIds) {
515
+ // Yield a frame between sources — verdict passes are bounded but a
516
+ // five-source build shouldn't run as one synchronous block.
517
+ await new Promise(r => setTimeout(r, 0));
518
+ if (runId !== this.previewRunId) return;
519
+ const provider = (0, _sharedUi.getStateSnapshotProvider)(sid);
520
+ const label = provider?.label ?? sid;
521
+ try {
522
+ const targetData = isBaseline ? undefined // provider treats an absent target as "empty"
523
+ : (0, _sharedUi.superJsonDeserialize)(rightData[sid]);
524
+ const baseData = leftData === null ? undefined : sid in leftData ? (0, _sharedUi.superJsonDeserialize)(leftData[sid]) : undefined;
525
+ let result;
526
+ if (!provider) {
527
+ result = {
528
+ items: [{
529
+ key: sid,
530
+ label,
531
+ verdict: "wont-apply",
532
+ reason: "tool not installed — restore skips this source"
533
+ }],
534
+ notes: []
535
+ };
536
+ } else if (provider.previewItems) {
537
+ result = await provider.previewItems(targetData, baseData);
538
+ } else {
539
+ // Whole-source fallback for custom providers without previewItems.
540
+ const diff = (0, _dataViewer.objectDiff)(baseData, targetData);
541
+ result = {
542
+ items: [{
543
+ key: sid,
544
+ label,
545
+ verdict: diff.equal ? "unchanged" : "changed",
546
+ oldValue: baseData,
547
+ newValue: targetData
548
+ }],
549
+ notes: diff.truncated ? ["diff truncated (large value)"] : []
550
+ };
551
+ }
552
+ if (runId !== this.previewRunId) return;
553
+ sources.push({
554
+ id: sid,
555
+ label,
556
+ ...result
557
+ });
558
+ } catch (e) {
559
+ sources.push({
560
+ id: sid,
561
+ label,
562
+ items: [],
563
+ notes: [],
564
+ error: String(e)
565
+ });
566
+ }
567
+ this.setState({
568
+ preview: {
569
+ left,
570
+ right,
571
+ building: true,
572
+ builtAt: Date.now(),
573
+ sources: [...sources]
574
+ }
575
+ });
576
+ }
577
+ if (runId !== this.previewRunId) return;
578
+ this.setState({
579
+ preview: {
580
+ left,
581
+ right,
582
+ building: false,
583
+ builtAt: Date.now(),
584
+ sources
585
+ }
586
+ });
587
+ } catch (e) {
588
+ if (runId !== this.previewRunId) return;
589
+ this.setState({
590
+ preview: {
591
+ left,
592
+ right,
593
+ building: false,
594
+ builtAt: Date.now(),
595
+ sources: [{
596
+ id: "error",
597
+ label: "Preview",
598
+ items: [],
599
+ notes: [],
600
+ error: String(e)
601
+ }]
602
+ }
603
+ });
604
+ }
605
+ }
315
606
  }
316
607
  const timeMachineStore = exports.timeMachineStore = new TimeMachineStore();
317
608