@buoy-gg/time-machine 7.0.20 → 7.0.22
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/lib/commonjs/components/TimeMachineBody.js +103 -8
- package/lib/commonjs/components/TimeMachineBody.js.map +1 -1
- package/lib/commonjs/index.js +55 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/store/routeRestore.js +188 -0
- package/lib/commonjs/store/routeRestore.js.map +1 -0
- package/lib/commonjs/store/snapshotVault.js.map +1 -1
- package/lib/commonjs/store/timeMachineStore.js +41 -3
- package/lib/commonjs/store/timeMachineStore.js.map +1 -1
- package/lib/commonjs/sync/timeMachineSyncAdapter.js +18 -4
- package/lib/commonjs/sync/timeMachineSyncAdapter.js.map +1 -1
- package/lib/module/components/TimeMachineBody.js +104 -9
- package/lib/module/components/TimeMachineBody.js.map +1 -1
- package/lib/module/index.js +11 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/store/routeRestore.js +176 -0
- package/lib/module/store/routeRestore.js.map +1 -0
- package/lib/module/store/snapshotVault.js.map +1 -1
- package/lib/module/store/timeMachineStore.js +41 -3
- package/lib/module/store/timeMachineStore.js.map +1 -1
- package/lib/module/sync/timeMachineSyncAdapter.js +18 -4
- package/lib/module/sync/timeMachineSyncAdapter.js.map +1 -1
- package/lib/typescript/components/TimeMachineBody.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +2 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/store/routeRestore.d.ts +51 -0
- package/lib/typescript/store/routeRestore.d.ts.map +1 -0
- package/lib/typescript/store/snapshotVault.d.ts +7 -0
- package/lib/typescript/store/snapshotVault.d.ts.map +1 -1
- package/lib/typescript/store/timeMachineStore.d.ts +29 -1
- package/lib/typescript/store/timeMachineStore.d.ts.map +1 -1
- package/lib/typescript/sync/timeMachineSyncAdapter.d.ts +8 -0
- package/lib/typescript/sync/timeMachineSyncAdapter.d.ts.map +1 -1
- package/package.json +12 -8
- package/src/components/TimeMachineBody.tsx +146 -10
- package/src/index.tsx +22 -0
- package/src/store/routeRestore.ts +194 -0
- package/src/store/snapshotVault.ts +7 -0
- package/src/store/timeMachineStore.ts +60 -1
- package/src/sync/timeMachineSyncAdapter.ts +27 -4
|
@@ -10,6 +10,7 @@ exports.timeMachineStore = void 0;
|
|
|
10
10
|
var _sharedUi = require("@buoy-gg/shared-ui");
|
|
11
11
|
var _dataViewer = require("@buoy-gg/shared-ui/dataViewer");
|
|
12
12
|
var _snapshotVault = require("./snapshotVault");
|
|
13
|
+
var _routeRestore = require("./routeRestore");
|
|
13
14
|
/**
|
|
14
15
|
* Time Machine orchestrator — snapshot CRUD + capture/restore across every
|
|
15
16
|
* registered StateSnapshotProvider (storage, redux, zustand, jotai, query,
|
|
@@ -29,10 +30,14 @@ var _snapshotVault = require("./snapshotVault");
|
|
|
29
30
|
|
|
30
31
|
const RESTORE_ORDER = exports.RESTORE_ORDER = ["storage", "redux", "zustand", "jotai", "query"];
|
|
31
32
|
|
|
33
|
+
/** Extra knobs a restore accepts beyond mode + exclusions. */
|
|
34
|
+
|
|
32
35
|
/** Provider capability row as mirrored to a remote dashboard. */
|
|
33
36
|
|
|
34
37
|
/** One side of a preview comparison. */
|
|
35
38
|
|
|
39
|
+
/** Whether this device can capture and return to routes, and where it is now. */
|
|
40
|
+
|
|
36
41
|
let remoteHandler = null;
|
|
37
42
|
function skippedResult(reason) {
|
|
38
43
|
return {
|
|
@@ -57,7 +62,8 @@ class TimeMachineStore {
|
|
|
57
62
|
busy: null,
|
|
58
63
|
lastOutcome: null,
|
|
59
64
|
preview: null,
|
|
60
|
-
remoteProviders: null
|
|
65
|
+
remoteProviders: null,
|
|
66
|
+
remoteRoute: null
|
|
61
67
|
};
|
|
62
68
|
/** Monotonic token — a preview build checks it after every await and
|
|
63
69
|
* abandons itself when a newer build (or clearPreview) supersedes it. */
|
|
@@ -108,6 +114,9 @@ class TimeMachineStore {
|
|
|
108
114
|
busy: payload.busy ?? null,
|
|
109
115
|
lastOutcome: payload.lastOutcome ?? null,
|
|
110
116
|
remoteProviders: payload.providers ?? [],
|
|
117
|
+
remoteRoute: payload.route ?? {
|
|
118
|
+
available: false
|
|
119
|
+
},
|
|
111
120
|
hasLoaded: true
|
|
112
121
|
});
|
|
113
122
|
}
|
|
@@ -142,12 +151,17 @@ class TimeMachineStore {
|
|
|
142
151
|
};
|
|
143
152
|
}
|
|
144
153
|
}
|
|
154
|
+
// Where the app was when this state was true — restoring can return here.
|
|
155
|
+
const route = (0, _routeRestore.captureCurrentRoute)();
|
|
145
156
|
const snapshot = {
|
|
146
157
|
meta: {
|
|
147
158
|
id: nextId(),
|
|
148
159
|
name: name.trim() || "Untitled snapshot",
|
|
149
160
|
createdAt: Date.now(),
|
|
150
161
|
sizeBytes: 0,
|
|
162
|
+
...(route ? {
|
|
163
|
+
route
|
|
164
|
+
} : {}),
|
|
151
165
|
sources
|
|
152
166
|
},
|
|
153
167
|
data
|
|
@@ -198,12 +212,13 @@ class TimeMachineStore {
|
|
|
198
212
|
* itemKey being what previewItems emitted) — split per source before each
|
|
199
213
|
* provider sees only its own keys.
|
|
200
214
|
*/
|
|
201
|
-
async restore(id, mode, excludeKeys) {
|
|
215
|
+
async restore(id, mode, excludeKeys, options) {
|
|
202
216
|
if (remoteHandler) {
|
|
203
217
|
const outcome = await remoteHandler("restore", {
|
|
204
218
|
id,
|
|
205
219
|
mode,
|
|
206
|
-
excludeKeys
|
|
220
|
+
excludeKeys,
|
|
221
|
+
restoreRoute: options?.restoreRoute
|
|
207
222
|
});
|
|
208
223
|
this.setState({
|
|
209
224
|
lastOutcome: outcome
|
|
@@ -262,11 +277,30 @@ class TimeMachineStore {
|
|
|
262
277
|
// exclusion list from the preview already reflects the scope (the
|
|
263
278
|
// preview seeds its selection from it), so it takes precedence.
|
|
264
279
|
const includeBySource = !excludeKeys && stored.meta.scope?.length ? splitCompound(stored.meta.scope) : null;
|
|
280
|
+
const wantsRoute = options?.restoreRoute === true && !!stored.meta.route;
|
|
265
281
|
if (mode === "reload") {
|
|
266
282
|
// Storage only; everything in-memory rebuilds after the reload.
|
|
267
283
|
if (stored.data.storage && (!includeBySource || includeBySource.has("storage"))) {
|
|
268
284
|
outcome.results.storage = await this.restoreSource("storage", stored.data.storage, excludeBySource.get("storage"), includeBySource?.get("storage"));
|
|
269
285
|
}
|
|
286
|
+
// Hand the route to the NEXT boot — this realm is about to die, so the
|
|
287
|
+
// slot must be written before the reload is armed.
|
|
288
|
+
if (wantsRoute) {
|
|
289
|
+
const route = stored.meta.route;
|
|
290
|
+
try {
|
|
291
|
+
await (0, _routeRestore.savePendingRoute)(route, stored.meta.name);
|
|
292
|
+
outcome.route = {
|
|
293
|
+
...route,
|
|
294
|
+
status: "deferred"
|
|
295
|
+
};
|
|
296
|
+
} catch (e) {
|
|
297
|
+
outcome.route = {
|
|
298
|
+
...route,
|
|
299
|
+
status: "failed",
|
|
300
|
+
error: String(e)
|
|
301
|
+
};
|
|
302
|
+
}
|
|
303
|
+
}
|
|
270
304
|
outcome.willReload = this.scheduleReload("buoy time-machine restore");
|
|
271
305
|
this.setState({
|
|
272
306
|
lastOutcome: outcome
|
|
@@ -278,6 +312,10 @@ class TimeMachineStore {
|
|
|
278
312
|
if (includeBySource && !includeBySource.has(sid)) continue;
|
|
279
313
|
outcome.results[sid] = await this.restoreSource(sid, stored.data[sid], excludeBySource.get(sid), includeBySource?.get(sid));
|
|
280
314
|
}
|
|
315
|
+
// Navigate LAST — the screen we land on should read the restored state.
|
|
316
|
+
if (wantsRoute) {
|
|
317
|
+
outcome.route = (0, _routeRestore.navigateToRoute)(stored.meta.route);
|
|
318
|
+
}
|
|
281
319
|
this.setState({
|
|
282
320
|
lastOutcome: outcome
|
|
283
321
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_sharedUi","require","_dataViewer","_snapshotVault","RESTORE_ORDER","exports","remoteHandler","skippedResult","reason","ok","applied","skipped","id","warnings","idCounter","nextId","Date","now","toString","TimeMachineStore","state","snapshots","hasLoaded","busy","lastOutcome","preview","remoteProviders","previewRunId","listeners","Set","loadPromise","getState","subscribe","listener","add","ensureLoaded","delete","setState","patch","forEach","l","Promise","resolve","loadIndex","then","replaceFromSnapshot","payload","providers","capture","name","sourceIds","result","snapshot","getStateSnapshotProviders","filter","p","status","canCapture","includes","data","sources","provider","captured","superJsonSerialize","e","String","meta","trim","createdAt","sizeBytes","saveSnapshot","captureBaseline","baseline","restore","mode","excludeKeys","outcome","stored","loadSnapshot","Error","snapshotId","snapshotName","at","willReload","results","clear","scheduleReload","sid","Object","keys","splitCompound","bySource","Map","compound","sep","indexOf","slice","itemKey","list","get","push","set","excludeBySource","includeBySource","scope","length","storage","has","restoreSource","sourceId","includeKeys","getStateSnapshotProvider","canRestore","detail","options","undefined","superJsonDeserialize","scheduleReloadApp","deleteSnapshot","rename","renameSnapshot","setScope","setSnapshotScope","clearLastOutcome","wipeAll","clearPreview","buildPreview","right","left","runId","building","builtAt","compareTo","label","items","notes","error","loadSide","ref","leftData","rightStored","all","rightData","isBaseline","map","r","setTimeout","targetData","baseData","key","verdict","previewItems","diff","objectDiff","equal","oldValue","newValue","truncated","timeMachineStore","setRemoteTimeMachineHandler","handler","replaceTimeMachineFromSnapshot"],"sourceRoot":"../../../src","sources":["store/timeMachineStore.ts"],"mappings":";;;;;;;;;AAgBA,IAAAA,SAAA,GAAAC,OAAA;AAWA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AA5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAwBO,MAAMG,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC;;AAc9E;;AASA;;AAuCA,IAAIE,aAAmC,GAAG,IAAI;AAE9C,SAASC,aAAaA,CAACC,MAAc,EAA8B;EACjE,OAAO;IAAEC,EAAE,EAAE,KAAK;IAAEC,OAAO,EAAE,CAAC;IAAEC,OAAO,EAAE,CAAC;MAAEC,EAAE,EAAE,GAAG;MAAEJ;IAAO,CAAC,CAAC;IAAEK,QAAQ,EAAE;EAAG,CAAC;AAChF;AAEA,IAAIC,SAAS,GAAG,CAAC;AACjB,SAASC,MAAMA,CAAA,EAAW;EACxBD,SAAS,IAAI,CAAC;EACd,OAAO,QAAQE,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,IAAIJ,SAAS,CAACI,QAAQ,CAAC,EAAE,CAAC,EAAE;AACpE;AAEA,MAAMC,gBAAgB,CAAC;EACbC,KAAK,GAAqB;IAChCC,SAAS,EAAE,EAAE;IACbC,SAAS,EAAE,KAAK;IAChBC,IAAI,EAAE,IAAI;IACVC,WAAW,EAAE,IAAI;IACjBC,OAAO,EAAE,IAAI;IACbC,eAAe,EAAE;EACnB,CAAC;EACD;AACF;EACUC,YAAY,GAAG,CAAC;EAChBC,SAAS,GAAG,IAAIC,GAAG,CAAa,CAAC;EACjCC,WAAW,GAAyB,IAAI;EAEhDC,QAAQA,CAAA,EAAqB;IAC3B,OAAO,IAAI,CAACX,KAAK;EACnB;EAEAY,SAAS,GAAIC,QAAoB,IAAmB;IAClD,IAAI,CAACL,SAAS,CAACM,GAAG,CAACD,QAAQ,CAAC;IAC5B,KAAK,IAAI,CAACE,YAAY,CAAC,CAAC;IACxB,OAAO,MAAM;MACX,IAAI,CAACP,SAAS,CAACQ,MAAM,CAACH,QAAQ,CAAC;IACjC,CAAC;EACH,CAAC;EAEOI,QAAQA,CAACC,KAAgC,EAAE;IACjD,IAAI,CAAClB,KAAK,GAAG;MAAE,GAAG,IAAI,CAACA,KAAK;MAAE,GAAGkB;IAAM,CAAC;IACxC,IAAI,CAACV,SAAS,CAACW,OAAO,CAAEC,CAAC,IAAK;MAC5B,IAAI;QACFA,CAAC,CAAC,CAAC;MACL,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ,CAAC,CAAC;EACJ;EAEAL,YAAYA,CAAA,EAAkB;IAC5B,IAAI7B,aAAa,EAAE,OAAOmC,OAAO,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7C,IAAI,CAAC,IAAI,CAACZ,WAAW,EAAE;MACrB,IAAI,CAACA,WAAW,GAAG,IAAAa,wBAAS,EAAC,CAAC,CAACC,IAAI,CAAEvB,SAAS,IAAK;QACjD,IAAIf,aAAa,EAAE;QACnB,IAAI,CAAC+B,QAAQ,CAAC;UAAEhB,SAAS;UAAEC,SAAS,EAAE;QAAK,CAAC,CAAC;MAC/C,CAAC,CAAC;IACJ;IACA,OAAO,IAAI,CAACQ,WAAW;EACzB;;EAEA;EACAe,mBAAmBA,CAACC,OAKnB,EAAQ;IACP,IAAI,CAACT,QAAQ,CAAC;MACZhB,SAAS,EAAEyB,OAAO,CAACzB,SAAS,IAAI,EAAE;MAClCE,IAAI,EAAEuB,OAAO,CAACvB,IAAI,IAAI,IAAI;MAC1BC,WAAW,EAAEsB,OAAO,CAACtB,WAAW,IAAI,IAAI;MACxCE,eAAe,EAAEoB,OAAO,CAACC,SAAS,IAAI,EAAE;MACxCzB,SAAS,EAAE;IACb,CAAC,CAAC;EACJ;;EAEA;EACA,MAAM0B,OAAOA,CAACC,IAAY,EAAEC,SAAoB,EAAyB;IACvE,IAAI5C,aAAa,EAAE;MACjB,MAAM6C,MAAM,GAAI,MAAM7C,aAAa,CAAC,SAAS,EAAE;QAAE2C,IAAI;QAAEC;MAAU,CAAC,CAEjE;MACD,OAAOC,MAAM,CAACC,QAAQ;IACxB;IACA,MAAM,IAAI,CAACjB,YAAY,CAAC,CAAC;IACzB,IAAI,CAACE,QAAQ,CAAC;MAAEd,IAAI,EAAE;IAAU,CAAC,CAAC;IAClC,IAAI;MACF,MAAMwB,SAAS,GAAG,IAAAM,mCAAyB,EAAC,CAAC,CAACC,MAAM,CACjDC,CAAC,IACAA,CAAC,CAACC,MAAM,CAAC,CAAC,CAACC,UAAU,KAAK,CAACP,SAAS,IAAIA,SAAS,CAACQ,QAAQ,CAACH,CAAC,CAAC3C,EAAE,CAAC,CACpE,CAAC;MACD,MAAM+C,IAAqC,GAAG,CAAC,CAAC;MAChD,MAAMC,OAAgC,GAAG,CAAC,CAAC;MAC3C,KAAK,MAAMC,QAAQ,IAAId,SAAS,EAAE;QAChC,IAAI;UACF,MAAMe,QAAQ,GAAG,MAAMD,QAAQ,CAACb,OAAO,CAAC,CAAC;UACzCW,IAAI,CAACE,QAAQ,CAACjD,EAAE,CAAC,GAAG,IAAAmD,4BAAkB,EAACD,QAAQ,CAACH,IAAI,CAAC;UACrDC,OAAO,CAACC,QAAQ,CAACjD,EAAE,CAAC,GAAG;YAAEC,QAAQ,EAAEiD,QAAQ,CAACjD;UAAS,CAAC;QACxD,CAAC,CAAC,OAAOmD,CAAC,EAAE;UACVJ,OAAO,CAACC,QAAQ,CAACjD,EAAE,CAAC,GAAG;YACrBC,QAAQ,EAAE,CAAC,mBAAmBoD,MAAM,CAACD,CAAC,CAAC,EAAE;UAC3C,CAAC;QACH;MACF;MACA,MAAMZ,QAAwB,GAAG;QAC/Bc,IAAI,EAAE;UACJtD,EAAE,EAAEG,MAAM,CAAC,CAAC;UACZkC,IAAI,EAAEA,IAAI,CAACkB,IAAI,CAAC,CAAC,IAAI,mBAAmB;UACxCC,SAAS,EAAEpD,IAAI,CAACC,GAAG,CAAC,CAAC;UACrBoD,SAAS,EAAE,CAAC;UACZT;QACF,CAAC;QACDD;MACF,CAAC;MACD,MAAMtC,SAAS,GAAG,MAAM,IAAAiD,2BAAY,EAAClB,QAAQ,EAAE,IAAI,CAAChC,KAAK,CAACC,SAAS,CAAC;MACpE,IAAI,CAACgB,QAAQ,CAAC;QAAEhB;MAAU,CAAC,CAAC;MAC5B,OAAO+B,QAAQ,CAACc,IAAI;IACtB,CAAC,SAAS;MACR,IAAI,CAAC7B,QAAQ,CAAC;QAAEd,IAAI,EAAE;MAAK,CAAC,CAAC;IAC/B;EACF;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAMgD,eAAeA,CAAA,EAA0B;IAC7C,IAAIjE,aAAa,EAAE;MACjB,MAAM6C,MAAM,GAAI,MAAM7C,aAAa,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAExD;MACD,OAAO6C,MAAM,CAACC,QAAQ;IACxB;IACA,MAAM,IAAI,CAACjB,YAAY,CAAC,CAAC;IACzB,MAAMiB,QAAwB,GAAG;MAC/Bc,IAAI,EAAE;QACJtD,EAAE,EAAEG,MAAM,CAAC,CAAC;QACZkC,IAAI,EAAE,eAAe;QACrBmB,SAAS,EAAEpD,IAAI,CAACC,GAAG,CAAC,CAAC;QACrBoD,SAAS,EAAE,CAAC;QACZG,QAAQ,EAAE,IAAI;QACdZ,OAAO,EAAE,CAAC;MACZ,CAAC;MACDD,IAAI,EAAE,CAAC;IACT,CAAC;IACD,MAAMtC,SAAS,GAAG,MAAM,IAAAiD,2BAAY,EAAClB,QAAQ,EAAE,IAAI,CAAChC,KAAK,CAACC,SAAS,CAAC;IACpE,IAAI,CAACgB,QAAQ,CAAC;MAAEhB;IAAU,CAAC,CAAC;IAC5B,OAAO+B,QAAQ,CAACc,IAAI;EACtB;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAMO,OAAOA,CACX7D,EAAU,EACV8D,IAAiB,EACjBC,WAA+B,EACN;IACzB,IAAIrE,aAAa,EAAE;MACjB,MAAMsE,OAAO,GAAI,MAAMtE,aAAa,CAAC,SAAS,EAAE;QAC9CM,EAAE;QACF8D,IAAI;QACJC;MACF,CAAC,CAAoB;MACrB,IAAI,CAACtC,QAAQ,CAAC;QAAEb,WAAW,EAAEoD;MAAQ,CAAC,CAAC;MACvC,OAAOA,OAAO;IAChB;IACA,MAAM,IAAI,CAACzC,YAAY,CAAC,CAAC;IACzB,IAAI,CAACE,QAAQ,CAAC;MAAEd,IAAI,EAAE;IAAU,CAAC,CAAC;IAClC,IAAI;MACF,MAAMsD,MAAM,GAAG,MAAM,IAAAC,2BAAY,EAAClE,EAAE,CAAC;MACrC,IAAI,CAACiE,MAAM,EAAE,MAAM,IAAIE,KAAK,CAAC,wBAAwBnE,EAAE,GAAG,CAAC;MAE3D,MAAMgE,OAAuB,GAAG;QAC9BI,UAAU,EAAEpE,EAAE;QACdqE,YAAY,EAAEJ,MAAM,CAACX,IAAI,CAACjB,IAAI;QAC9ByB,IAAI;QACJQ,EAAE,EAAElE,IAAI,CAACC,GAAG,CAAC,CAAC;QACdkE,UAAU,EAAE,KAAK;QACjBC,OAAO,EAAE,CAAC;MACZ,CAAC;MAED,IAAIP,MAAM,CAACX,IAAI,CAACM,QAAQ,EAAE;QACxB;QACA;QACA,KAAK,MAAMX,QAAQ,IAAI,IAAAR,mCAAyB,EAAC,CAAC,EAAE;UAClD,IAAIQ,QAAQ,CAACwB,KAAK,EAAE;YAClB,IAAI;cACFT,OAAO,CAACQ,OAAO,CAACvB,QAAQ,CAACjD,EAAE,CAAC,GAAG,MAAMiD,QAAQ,CAACwB,KAAK,CAAC,CAAC;YACvD,CAAC,CAAC,OAAOrB,CAAC,EAAE;cACVY,OAAO,CAACQ,OAAO,CAACvB,QAAQ,CAACjD,EAAE,CAAC,GAAGL,aAAa,CAAC0D,MAAM,CAACD,CAAC,CAAC,CAAC;YACzD;UACF;QACF;QACAY,OAAO,CAACO,UAAU,GAAG,IAAI,CAACG,cAAc,CAAC,4BAA4B,CAAC;QACtE,IAAI,CAACjD,QAAQ,CAAC;UAAEb,WAAW,EAAEoD;QAAQ,CAAC,CAAC;QACvC,OAAOA,OAAO;MAChB;MAEA,MAAM1B,SAAS,GAAG,CAChB,GAAG9C,aAAa,CAACkD,MAAM,CAAEiC,GAAG,IAAKA,GAAG,IAAIV,MAAM,CAAClB,IAAI,CAAC,EACpD,GAAG6B,MAAM,CAACC,IAAI,CAACZ,MAAM,CAAClB,IAAI,CAAC,CAACL,MAAM,CAAEiC,GAAG,IAAK,CAACnF,aAAa,CAACsD,QAAQ,CAAC6B,GAAG,CAAC,CAAC,CAC1E;MAED,MAAMG,aAAa,GAAID,IAAuB,IAAK;QACjD,MAAME,QAAQ,GAAG,IAAIC,GAAG,CAAmB,CAAC;QAC5C,KAAK,MAAMC,QAAQ,IAAIJ,IAAI,EAAE;UAC3B,MAAMK,GAAG,GAAGD,QAAQ,CAACE,OAAO,CAAC,IAAI,CAAC;UAClC,IAAID,GAAG,IAAI,CAAC,EAAE;UACd,MAAMP,GAAG,GAAGM,QAAQ,CAACG,KAAK,CAAC,CAAC,EAAEF,GAAG,CAAC;UAClC,MAAMG,OAAO,GAAGJ,QAAQ,CAACG,KAAK,CAACF,GAAG,GAAG,CAAC,CAAC;UACvC,MAAMI,IAAI,GAAGP,QAAQ,CAACQ,GAAG,CAACZ,GAAG,CAAC,IAAI,EAAE;UACpCW,IAAI,CAACE,IAAI,CAACH,OAAO,CAAC;UAClBN,QAAQ,CAACU,GAAG,CAACd,GAAG,EAAEW,IAAI,CAAC;QACzB;QACA,OAAOP,QAAQ;MACjB,CAAC;MAED,MAAMW,eAAe,GAAGZ,aAAa,CAACf,WAAW,IAAI,EAAE,CAAC;MACxD;MACA;MACA;MACA,MAAM4B,eAAe,GACnB,CAAC5B,WAAW,IAAIE,MAAM,CAACX,IAAI,CAACsC,KAAK,EAAEC,MAAM,GACrCf,aAAa,CAACb,MAAM,CAACX,IAAI,CAACsC,KAAK,CAAC,GAChC,IAAI;MAEV,IAAI9B,IAAI,KAAK,QAAQ,EAAE;QACrB;QACA,IACEG,MAAM,CAAClB,IAAI,CAAC+C,OAAO,KAClB,CAACH,eAAe,IAAIA,eAAe,CAACI,GAAG,CAAC,SAAS,CAAC,CAAC,EACpD;UACA/B,OAAO,CAACQ,OAAO,CAACsB,OAAO,GAAG,MAAM,IAAI,CAACE,aAAa,CAChD,SAAS,EACT/B,MAAM,CAAClB,IAAI,CAAC+C,OAAO,EACnBJ,eAAe,CAACH,GAAG,CAAC,SAAS,CAAC,EAC9BI,eAAe,EAAEJ,GAAG,CAAC,SAAS,CAChC,CAAC;QACH;QACAvB,OAAO,CAACO,UAAU,GAAG,IAAI,CAACG,cAAc,CAAC,2BAA2B,CAAC;QACrE,IAAI,CAACjD,QAAQ,CAAC;UAAEb,WAAW,EAAEoD;QAAQ,CAAC,CAAC;QACvC,OAAOA,OAAO;MAChB;MAEA,KAAK,MAAMW,GAAG,IAAIrC,SAAS,EAAE;QAC3B;QACA,IAAIqD,eAAe,IAAI,CAACA,eAAe,CAACI,GAAG,CAACpB,GAAG,CAAC,EAAE;QAClDX,OAAO,CAACQ,OAAO,CAACG,GAAG,CAAC,GAAG,MAAM,IAAI,CAACqB,aAAa,CAC7CrB,GAAG,EACHV,MAAM,CAAClB,IAAI,CAAC4B,GAAG,CAAC,EAChBe,eAAe,CAACH,GAAG,CAACZ,GAAG,CAAC,EACxBgB,eAAe,EAAEJ,GAAG,CAACZ,GAAG,CAC1B,CAAC;MACH;MACA,IAAI,CAAClD,QAAQ,CAAC;QAAEb,WAAW,EAAEoD;MAAQ,CAAC,CAAC;MACvC,OAAOA,OAAO;IAChB,CAAC,SAAS;MACR,IAAI,CAACvC,QAAQ,CAAC;QAAEd,IAAI,EAAE;MAAK,CAAC,CAAC;IAC/B;EACF;EAEA,MAAcqF,aAAaA,CACzBC,QAAgB,EAChB/D,OAAwB,EACxB6B,WAA+B,EAC/BmC,WAA+B,EACM;IACrC,MAAMjD,QAAQ,GAAG,IAAAkD,kCAAwB,EAACF,QAAQ,CAAC;IACnD,IAAI,CAAChD,QAAQ,EAAE;MACb,OAAOtD,aAAa,CAAC,6DAA6D,CAAC;IACrF;IACA,MAAMiD,MAAM,GAAGK,QAAQ,CAACL,MAAM,CAAC,CAAC;IAChC,IAAI,CAACA,MAAM,CAACwD,UAAU,EAAE;MACtB,OAAOzG,aAAa,CAACiD,MAAM,CAACyD,MAAM,IAAI,qBAAqB,CAAC;IAC9D;IACA,IAAI;MACF,MAAMC,OAAO,GACXvC,WAAW,EAAE8B,MAAM,IAAIK,WAAW,EAAEL,MAAM,GACtC;QACE,IAAI9B,WAAW,EAAE8B,MAAM,GAAG;UAAE9B;QAAY,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/C,IAAImC,WAAW,EAAEL,MAAM,GAAG;UAAEK;QAAY,CAAC,GAAG,CAAC,CAAC;MAChD,CAAC,GACDK,SAAS;MACf,OAAO,MAAMtD,QAAQ,CAACY,OAAO,CAAC,IAAA2C,8BAAoB,EAACtE,OAAO,CAAC,EAAEoE,OAAO,CAAC;IACvE,CAAC,CAAC,OAAOlD,CAAC,EAAE;MACV,OAAOzD,aAAa,CAAC0D,MAAM,CAACD,CAAC,CAAC,CAAC;IACjC;EACF;EAEQsB,cAAcA,CAAC9E,MAAc,EAAW;IAC9C,IAAI;MACF,IAAA6G,2BAAiB,EAAC;QAAE7G;MAAO,CAAC,CAAC;MAC7B,OAAO,IAAI;IACb,CAAC,CAAC,MAAM;MACN;MACA,OAAO,KAAK;IACd;EACF;EAEA,MAAM4B,MAAMA,CAACxB,EAAU,EAAiB;IACtC,IAAIN,aAAa,EAAE;MACjB,MAAMA,aAAa,CAAC,QAAQ,EAAE;QAAEM;MAAG,CAAC,CAAC;MACrC;IACF;IACA,MAAM,IAAI,CAACuB,YAAY,CAAC,CAAC;IACzB,MAAMd,SAAS,GAAG,MAAM,IAAAiG,6BAAc,EAAC1G,EAAE,EAAE,IAAI,CAACQ,KAAK,CAACC,SAAS,CAAC;IAChE,IAAI,CAACgB,QAAQ,CAAC;MAAEhB;IAAU,CAAC,CAAC;EAC9B;EAEA,MAAMkG,MAAMA,CAAC3G,EAAU,EAAEqC,IAAY,EAAiB;IACpD,IAAI3C,aAAa,EAAE;MACjB,MAAMA,aAAa,CAAC,QAAQ,EAAE;QAAEM,EAAE;QAAEqC;MAAK,CAAC,CAAC;MAC3C;IACF;IACA,MAAM,IAAI,CAACd,YAAY,CAAC,CAAC;IACzB,MAAMd,SAAS,GAAG,MAAM,IAAAmG,6BAAc,EAAC5G,EAAE,EAAEqC,IAAI,EAAE,IAAI,CAAC7B,KAAK,CAACC,SAAS,CAAC;IACtE,IAAI,CAACgB,QAAQ,CAAC;MAAEhB;IAAU,CAAC,CAAC;EAC9B;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAMoG,QAAQA,CAAC7G,EAAU,EAAE4F,KAAsB,EAAiB;IAChE,IAAIlG,aAAa,EAAE;MACjB,MAAMA,aAAa,CAAC,UAAU,EAAE;QAAEM,EAAE;QAAE4F;MAAM,CAAC,CAAC;MAC9C;IACF;IACA,MAAM,IAAI,CAACrE,YAAY,CAAC,CAAC;IACzB,MAAMd,SAAS,GAAG,MAAM,IAAAqG,+BAAgB,EAAC9G,EAAE,EAAE4F,KAAK,EAAE,IAAI,CAACpF,KAAK,CAACC,SAAS,CAAC;IACzE,IAAI,CAACgB,QAAQ,CAAC;MAAEhB;IAAU,CAAC,CAAC;EAC9B;EAEAsG,gBAAgBA,CAAA,EAAS;IACvB,IAAI,CAACtF,QAAQ,CAAC;MAAEb,WAAW,EAAE;IAAK,CAAC,CAAC;EACtC;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAMoG,OAAOA,CAAA,EAA4B;IACvC,IAAItH,aAAa,EAAE;MACjB,MAAMsE,OAAO,GAAI,MAAMtE,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,CAAoB;MACtE,IAAI,CAAC+B,QAAQ,CAAC;QAAEb,WAAW,EAAEoD;MAAQ,CAAC,CAAC;MACvC,OAAOA,OAAO;IAChB;IACA,IAAI,CAACvC,QAAQ,CAAC;MAAEd,IAAI,EAAE;IAAU,CAAC,CAAC;IAClC,IAAI;MACF,MAAMqD,OAAuB,GAAG;QAC9BI,UAAU,EAAE,UAAU;QACtBC,YAAY,EAAE,UAAU;QACxBP,IAAI,EAAE,QAAQ;QACdQ,EAAE,EAAElE,IAAI,CAACC,GAAG,CAAC,CAAC;QACdkE,UAAU,EAAE,KAAK;QACjBC,OAAO,EAAE,CAAC;MACZ,CAAC;MACD,KAAK,MAAMvB,QAAQ,IAAI,IAAAR,mCAAyB,EAAC,CAAC,EAAE;QAClD,IAAIQ,QAAQ,CAACwB,KAAK,EAAE;UAClB,IAAI;YACFT,OAAO,CAACQ,OAAO,CAACvB,QAAQ,CAACjD,EAAE,CAAC,GAAG,MAAMiD,QAAQ,CAACwB,KAAK,CAAC,CAAC;UACvD,CAAC,CAAC,OAAOrB,CAAC,EAAE;YACVY,OAAO,CAACQ,OAAO,CAACvB,QAAQ,CAACjD,EAAE,CAAC,GAAGL,aAAa,CAAC0D,MAAM,CAACD,CAAC,CAAC,CAAC;UACzD;QACF;MACF;MACAY,OAAO,CAACO,UAAU,GAAG,IAAI,CAACG,cAAc,CAAC,4BAA4B,CAAC;MACtE,IAAI,CAACjD,QAAQ,CAAC;QAAEb,WAAW,EAAEoD;MAAQ,CAAC,CAAC;MACvC,OAAOA,OAAO;IAChB,CAAC,SAAS;MACR,IAAI,CAACvC,QAAQ,CAAC;QAAEd,IAAI,EAAE;MAAK,CAAC,CAAC;IAC/B;EACF;EAEAsG,YAAYA,CAAA,EAAS;IACnB,IAAI,CAAClG,YAAY,IAAI,CAAC;IACtB,IAAI,CAACU,QAAQ,CAAC;MAAEZ,OAAO,EAAE;IAAK,CAAC,CAAC;EAClC;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAMqG,YAAYA,CAChBC,KAAqB,EACrBC,IAAoB,GAAG,SAAS,EACjB;IACf,IAAI1H,aAAa,EAAE;MACjB;MACA,MAAM2H,KAAK,GAAG,EAAE,IAAI,CAACtG,YAAY;MACjC,IAAI,CAACU,QAAQ,CAAC;QACZZ,OAAO,EAAE;UAAEuG,IAAI;UAAED,KAAK;UAAEG,QAAQ,EAAE,IAAI;UAAEC,OAAO,EAAEnH,IAAI,CAACC,GAAG,CAAC,CAAC;UAAE2C,OAAO,EAAE;QAAG;MAC3E,CAAC,CAAC;MACF,IAAI;QACF,MAAMT,MAAM,GAAI,MAAM7C,aAAa,CAAC,SAAS,EAAE;UAC7CM,EAAE,EAAEmH,KAAK,KAAK,SAAS,GAAGZ,SAAS,GAAGY,KAAK,CAAC/C,UAAU;UACtDoD,SAAS,EAAEJ,IAAI,KAAK,SAAS,GAAGb,SAAS,GAAGa,IAAI,CAAChD;QACnD,CAAC,CAAkC;QACnC,IAAIiD,KAAK,KAAK,IAAI,CAACtG,YAAY,EAAE;QACjC,IAAI,CAACU,QAAQ,CAAC;UACZZ,OAAO,EAAE;YACPuG,IAAI;YACJD,KAAK;YACLG,QAAQ,EAAE,KAAK;YACfC,OAAO,EAAEnH,IAAI,CAACC,GAAG,CAAC,CAAC;YACnB2C,OAAO,EAAET,MAAM,CAACS,OAAO,IAAI;UAC7B;QACF,CAAC,CAAC;MACJ,CAAC,CAAC,OAAOI,CAAC,EAAE;QACV,IAAIiE,KAAK,KAAK,IAAI,CAACtG,YAAY,EAAE;QACjC,IAAI,CAACU,QAAQ,CAAC;UACZZ,OAAO,EAAE;YACPuG,IAAI;YACJD,KAAK;YACLG,QAAQ,EAAE,KAAK;YACfC,OAAO,EAAEnH,IAAI,CAACC,GAAG,CAAC,CAAC;YACnB2C,OAAO,EAAE,CACP;cAAEhD,EAAE,EAAE,OAAO;cAAEyH,KAAK,EAAE,SAAS;cAAEC,KAAK,EAAE,EAAE;cAAEC,KAAK,EAAE,EAAE;cAAEC,KAAK,EAAEvE,MAAM,CAACD,CAAC;YAAE,CAAC;UAE7E;QACF,CAAC,CAAC;MACJ;MACA;IACF;IAEA,MAAM,IAAI,CAAC7B,YAAY,CAAC,CAAC;IACzB,MAAM8F,KAAK,GAAG,EAAE,IAAI,CAACtG,YAAY;IACjC,IAAI,CAACU,QAAQ,CAAC;MACZZ,OAAO,EAAE;QAAEuG,IAAI;QAAED,KAAK;QAAEG,QAAQ,EAAE,IAAI;QAAEC,OAAO,EAAEnH,IAAI,CAACC,GAAG,CAAC,CAAC;QAAE2C,OAAO,EAAE;MAAG;IAC3E,CAAC,CAAC;IAEF,MAAM6E,QAAQ,GAAG,MACfC,GAAmB,IACiC;MACpD,IAAIA,GAAG,KAAK,SAAS,EAAE,OAAO,IAAI,CAAC,CAAC;MACpC,MAAM7D,MAAM,GAAG,MAAM,IAAAC,2BAAY,EAAC4D,GAAG,CAAC1D,UAAU,CAAC;MACjD,IAAI,CAACH,MAAM,EAAE,MAAM,IAAIE,KAAK,CAAC,wBAAwB2D,GAAG,CAAC1D,UAAU,GAAG,CAAC;MACvE,OAAOH,MAAM,CAAClB,IAAI;IACpB,CAAC;IAED,IAAI;MACF,IAAIoE,KAAK,KAAK,SAAS,EAAE,MAAM,IAAIhD,KAAK,CAAC,mCAAmC,CAAC;MAC7E,MAAM,CAAC4D,QAAQ,EAAEC,WAAW,CAAC,GAAG,MAAMnG,OAAO,CAACoG,GAAG,CAAC,CAChDJ,QAAQ,CAACT,IAAI,CAAC,EACd,IAAAlD,2BAAY,EAACiD,KAAK,CAAC/C,UAAU,CAAC,CAC/B,CAAC;MACF,IAAIiD,KAAK,KAAK,IAAI,CAACtG,YAAY,EAAE;MACjC,IAAI,CAACiH,WAAW,EAAE;QAChB,MAAM,IAAI7D,KAAK,CAAC,wBAAwBgD,KAAK,CAAC/C,UAAU,GAAG,CAAC;MAC9D;MACA,MAAM8D,SAAS,GAAGF,WAAW,CAACjF,IAAI;;MAElC;MACA;MACA,MAAMoF,UAAU,GAAGH,WAAW,CAAC1E,IAAI,CAACM,QAAQ,KAAK,IAAI;MACrD,MAAMtB,SAAS,GAAG6F,UAAU,GACxB,IAAA1F,mCAAyB,EAAC,CAAC,CACxBC,MAAM,CAAEC,CAAC,IAAKA,CAAC,CAAC8B,KAAK,CAAC,CACtB2D,GAAG,CAAEzF,CAAC,IAAKA,CAAC,CAAC3C,EAAE,CAAC,GACnB,CACE,GAAGR,aAAa,CAACkD,MAAM,CAAEiC,GAAG,IAAKA,GAAG,IAAIuD,SAAS,CAAC,EAClD,GAAGtD,MAAM,CAACC,IAAI,CAACqD,SAAS,CAAC,CAACxF,MAAM,CAC7BiC,GAAG,IAAK,CAACnF,aAAa,CAACsD,QAAQ,CAAC6B,GAAG,CACtC,CAAC,CACF;MAEL,MAAM3B,OAAwB,GAAG,EAAE;MACnC,KAAK,MAAM2B,GAAG,IAAIrC,SAAS,EAAE;QAC3B;QACA;QACA,MAAM,IAAIT,OAAO,CAAEwG,CAAC,IAAKC,UAAU,CAACD,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1C,IAAIhB,KAAK,KAAK,IAAI,CAACtG,YAAY,EAAE;QAEjC,MAAMkC,QAAQ,GAAG,IAAAkD,kCAAwB,EAACxB,GAAG,CAAC;QAC9C,MAAM8C,KAAK,GAAGxE,QAAQ,EAAEwE,KAAK,IAAI9C,GAAG;QACpC,IAAI;UACF,MAAM4D,UAAU,GAAGJ,UAAU,GACzB5B,SAAS,CAAC;UAAA,EACV,IAAAC,8BAAoB,EAAC0B,SAAS,CAACvD,GAAG,CAAC,CAAC;UACxC,MAAM6D,QAAQ,GACZT,QAAQ,KAAK,IAAI,GACbxB,SAAS,GACT5B,GAAG,IAAIoD,QAAQ,GACb,IAAAvB,8BAAoB,EAACuB,QAAQ,CAACpD,GAAG,CAAC,CAAC,GACnC4B,SAAS;UACjB,IAAIhE,MAA4B;UAChC,IAAI,CAACU,QAAQ,EAAE;YACbV,MAAM,GAAG;cACPmF,KAAK,EAAE,CACL;gBACEe,GAAG,EAAE9D,GAAG;gBACR8C,KAAK;gBACLiB,OAAO,EAAE,YAAY;gBACrB9I,MAAM,EAAE;cACV,CAAC,CACF;cACD+H,KAAK,EAAE;YACT,CAAC;UACH,CAAC,MAAM,IAAI1E,QAAQ,CAAC0F,YAAY,EAAE;YAChCpG,MAAM,GAAG,MAAMU,QAAQ,CAAC0F,YAAY,CAACJ,UAAU,EAAEC,QAAQ,CAAC;UAC5D,CAAC,MAAM;YACL;YACA,MAAMI,IAAI,GAAG,IAAAC,sBAAU,EAACL,QAAQ,EAAED,UAAU,CAAC;YAC7ChG,MAAM,GAAG;cACPmF,KAAK,EAAE,CACL;gBACEe,GAAG,EAAE9D,GAAG;gBACR8C,KAAK;gBACLiB,OAAO,EAAEE,IAAI,CAACE,KAAK,GAAG,WAAW,GAAG,SAAS;gBAC7CC,QAAQ,EAAEP,QAAQ;gBAClBQ,QAAQ,EAAET;cACZ,CAAC,CACF;cACDZ,KAAK,EAAEiB,IAAI,CAACK,SAAS,GAAG,CAAC,8BAA8B,CAAC,GAAG;YAC7D,CAAC;UACH;UACA,IAAI5B,KAAK,KAAK,IAAI,CAACtG,YAAY,EAAE;UACjCiC,OAAO,CAACwC,IAAI,CAAC;YAAExF,EAAE,EAAE2E,GAAG;YAAE8C,KAAK;YAAE,GAAGlF;UAAO,CAAC,CAAC;QAC7C,CAAC,CAAC,OAAOa,CAAC,EAAE;UACVJ,OAAO,CAACwC,IAAI,CAAC;YAAExF,EAAE,EAAE2E,GAAG;YAAE8C,KAAK;YAAEC,KAAK,EAAE,EAAE;YAAEC,KAAK,EAAE,EAAE;YAAEC,KAAK,EAAEvE,MAAM,CAACD,CAAC;UAAE,CAAC,CAAC;QAC1E;QACA,IAAI,CAAC3B,QAAQ,CAAC;UACZZ,OAAO,EAAE;YACPuG,IAAI;YACJD,KAAK;YACLG,QAAQ,EAAE,IAAI;YACdC,OAAO,EAAEnH,IAAI,CAACC,GAAG,CAAC,CAAC;YACnB2C,OAAO,EAAE,CAAC,GAAGA,OAAO;UACtB;QACF,CAAC,CAAC;MACJ;MACA,IAAIqE,KAAK,KAAK,IAAI,CAACtG,YAAY,EAAE;MACjC,IAAI,CAACU,QAAQ,CAAC;QACZZ,OAAO,EAAE;UACPuG,IAAI;UACJD,KAAK;UACLG,QAAQ,EAAE,KAAK;UACfC,OAAO,EAAEnH,IAAI,CAACC,GAAG,CAAC,CAAC;UACnB2C;QACF;MACF,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOI,CAAC,EAAE;MACV,IAAIiE,KAAK,KAAK,IAAI,CAACtG,YAAY,EAAE;MACjC,IAAI,CAACU,QAAQ,CAAC;QACZZ,OAAO,EAAE;UACPuG,IAAI;UACJD,KAAK;UACLG,QAAQ,EAAE,KAAK;UACfC,OAAO,EAAEnH,IAAI,CAACC,GAAG,CAAC,CAAC;UACnB2C,OAAO,EAAE,CACP;YAAEhD,EAAE,EAAE,OAAO;YAAEyH,KAAK,EAAE,SAAS;YAAEC,KAAK,EAAE,EAAE;YAAEC,KAAK,EAAE,EAAE;YAAEC,KAAK,EAAEvE,MAAM,CAACD,CAAC;UAAE,CAAC;QAE7E;MACF,CAAC,CAAC;IACJ;EACF;AACF;AAEO,MAAM8F,gBAAgB,GAAAzJ,OAAA,CAAAyJ,gBAAA,GAAG,IAAI3I,gBAAgB,CAAC,CAAC;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACO,SAAS4I,2BAA2BA,CAACC,OAA6B,EAAQ;EAC/E1J,aAAa,GAAG0J,OAAO;EACvB,IAAI,CAACA,OAAO,EAAE;IACZF,gBAAgB,CAACjH,mBAAmB,CAAC,CAAC,CAAC,CAAC;EAC1C;AACF;;AAEA;AACO,SAASoH,8BAA8BA,CAACnH,OAK9C,EAAQ;EACPgH,gBAAgB,CAACjH,mBAAmB,CAACC,OAAO,CAAC;AAC/C","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_sharedUi","require","_dataViewer","_snapshotVault","_routeRestore","RESTORE_ORDER","exports","remoteHandler","skippedResult","reason","ok","applied","skipped","id","warnings","idCounter","nextId","Date","now","toString","TimeMachineStore","state","snapshots","hasLoaded","busy","lastOutcome","preview","remoteProviders","remoteRoute","previewRunId","listeners","Set","loadPromise","getState","subscribe","listener","add","ensureLoaded","delete","setState","patch","forEach","l","Promise","resolve","loadIndex","then","replaceFromSnapshot","payload","providers","route","available","capture","name","sourceIds","result","snapshot","getStateSnapshotProviders","filter","p","status","canCapture","includes","data","sources","provider","captured","superJsonSerialize","e","String","captureCurrentRoute","meta","trim","createdAt","sizeBytes","saveSnapshot","captureBaseline","baseline","restore","mode","excludeKeys","options","outcome","restoreRoute","stored","loadSnapshot","Error","snapshotId","snapshotName","at","willReload","results","clear","scheduleReload","sid","Object","keys","splitCompound","bySource","Map","compound","sep","indexOf","slice","itemKey","list","get","push","set","excludeBySource","includeBySource","scope","length","wantsRoute","storage","has","restoreSource","savePendingRoute","error","navigateToRoute","sourceId","includeKeys","getStateSnapshotProvider","canRestore","detail","undefined","superJsonDeserialize","scheduleReloadApp","deleteSnapshot","rename","renameSnapshot","setScope","setSnapshotScope","clearLastOutcome","wipeAll","clearPreview","buildPreview","right","left","runId","building","builtAt","compareTo","label","items","notes","loadSide","ref","leftData","rightStored","all","rightData","isBaseline","map","r","setTimeout","targetData","baseData","key","verdict","previewItems","diff","objectDiff","equal","oldValue","newValue","truncated","timeMachineStore","setRemoteTimeMachineHandler","handler","replaceTimeMachineFromSnapshot"],"sourceRoot":"../../../src","sources":["store/timeMachineStore.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,6 +8,7 @@ var _sharedUi = require("@buoy-gg/shared-ui");
|
|
|
8
8
|
var _dataViewer = require("@buoy-gg/shared-ui/dataViewer");
|
|
9
9
|
var _timeMachineStore = require("../store/timeMachineStore");
|
|
10
10
|
var _snapshotVault = require("../store/snapshotVault");
|
|
11
|
+
var _routeRestore = require("../store/routeRestore");
|
|
11
12
|
/**
|
|
12
13
|
* Sync adapter for the Time Machine tool, consumed by @buoy-gg/external-sync's
|
|
13
14
|
* `useExternalSync` (structurally matches its ToolSyncAdapter interface so
|
|
@@ -40,15 +41,25 @@ function metadata() {
|
|
|
40
41
|
busy,
|
|
41
42
|
lastOutcome
|
|
42
43
|
} = _timeMachineStore.timeMachineStore.getState();
|
|
44
|
+
const current = (0, _routeRestore.currentRoute)();
|
|
43
45
|
return {
|
|
44
46
|
snapshots,
|
|
45
47
|
busy,
|
|
46
48
|
lastOutcome,
|
|
47
|
-
providers: providerStatuses()
|
|
49
|
+
providers: providerStatuses(),
|
|
50
|
+
// Route capture/restore is a device capability, not a snapshot provider —
|
|
51
|
+
// a dashboard has no router of its own to probe, so it's mirrored here.
|
|
52
|
+
route: {
|
|
53
|
+
available: (0, _routeRestore.canNavigate)(),
|
|
54
|
+
...(current ? {
|
|
55
|
+
current: current.href
|
|
56
|
+
} : {})
|
|
57
|
+
}
|
|
48
58
|
};
|
|
49
59
|
}
|
|
50
60
|
const timeMachineSyncAdapter = exports.timeMachineSyncAdapter = {
|
|
51
|
-
|
|
61
|
+
// v2 adds `route` (device route capability) and `snapshots[].route`.
|
|
62
|
+
version: 2,
|
|
52
63
|
getSnapshot: () => metadata(),
|
|
53
64
|
subscribe: onChange => {
|
|
54
65
|
const unsubStore = _timeMachineStore.timeMachineStore.subscribe(onChange);
|
|
@@ -87,10 +98,13 @@ const timeMachineSyncAdapter = exports.timeMachineSyncAdapter = {
|
|
|
87
98
|
const {
|
|
88
99
|
id,
|
|
89
100
|
mode = "live",
|
|
90
|
-
excludeKeys
|
|
101
|
+
excludeKeys,
|
|
102
|
+
restoreRoute
|
|
91
103
|
} = params ?? {};
|
|
92
104
|
if (!id) throw new Error("restore requires a snapshot `id`");
|
|
93
|
-
return await _timeMachineStore.timeMachineStore.restore(id, mode, excludeKeys
|
|
105
|
+
return await _timeMachineStore.timeMachineStore.restore(id, mode, excludeKeys, {
|
|
106
|
+
restoreRoute
|
|
107
|
+
});
|
|
94
108
|
},
|
|
95
109
|
delete: async params => {
|
|
96
110
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_sharedUi","require","_dataViewer","_timeMachineStore","_snapshotVault","providerStatuses","getStateSnapshotProviders","map","p","s","status","id","label","canCapture","canRestore","detail","metadata","snapshots","busy","lastOutcome","timeMachineStore","getState","providers","timeMachineSyncAdapter","exports","version","getSnapshot","subscribe","onChange","unsubStore","unsubProviders","subscribeToStateSnapshotProviders","actions","list","capture","params","name","sourceIds","meta","captured","snapshot","captureBaseline","wipeAll","restore","mode","excludeKeys","Error","delete","deleted","rename","renamed","setScope","scope","scoped","count","length","preview","compareTo","right","snapshotId","left","buildPreview","VALUE_BUDGET","builtAt","sources","src","items","item","oldBig","oldValue","undefined","jsonLikelyLargerThan","newBig","newValue","valueOmitted","inspect","sourceId","stored","loadSnapshot","payload","data","warnings","superJsonDeserialize"],"sourceRoot":"../../../src","sources":["sync/timeMachineSyncAdapter.ts"],"mappings":";;;;;;AAaA,IAAAA,SAAA,GAAAC,OAAA;AAKA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAKA,IAAAG,cAAA,GAAAH,OAAA;
|
|
1
|
+
{"version":3,"names":["_sharedUi","require","_dataViewer","_timeMachineStore","_snapshotVault","_routeRestore","providerStatuses","getStateSnapshotProviders","map","p","s","status","id","label","canCapture","canRestore","detail","metadata","snapshots","busy","lastOutcome","timeMachineStore","getState","current","currentRoute","providers","route","available","canNavigate","href","timeMachineSyncAdapter","exports","version","getSnapshot","subscribe","onChange","unsubStore","unsubProviders","subscribeToStateSnapshotProviders","actions","list","capture","params","name","sourceIds","meta","captured","snapshot","captureBaseline","wipeAll","restore","mode","excludeKeys","restoreRoute","Error","delete","deleted","rename","renamed","setScope","scope","scoped","count","length","preview","compareTo","right","snapshotId","left","buildPreview","VALUE_BUDGET","builtAt","sources","src","items","item","oldBig","oldValue","undefined","jsonLikelyLargerThan","newBig","newValue","valueOmitted","inspect","sourceId","stored","loadSnapshot","payload","data","warnings","superJsonDeserialize"],"sourceRoot":"../../../src","sources":["sync/timeMachineSyncAdapter.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,11 +12,12 @@
|
|
|
12
12
|
import { useState } from "react";
|
|
13
13
|
import { Alert, Platform, ScrollView, StyleSheet, Text, TextInput, TouchableOpacity, View } from "react-native";
|
|
14
14
|
import { Plus, EventPickerModal, Home, Trash2, buoyColors } from "@buoy-gg/shared-ui";
|
|
15
|
-
import { JotaiIcon, QueryIcon, ReduxIcon, StorageIcon, TimeMachineIcon, ZustandIcon } from "@buoy-gg/floating-tools-core";
|
|
15
|
+
import { JotaiIcon, QueryIcon, ReduxIcon, RoutesIcon, StorageIcon, TimeMachineIcon, ZustandIcon } from "@buoy-gg/floating-tools-core";
|
|
16
16
|
import { useToolHost } from "@buoy-gg/core";
|
|
17
17
|
import { useIsPro } from "@buoy-gg/license";
|
|
18
18
|
import { useSnapshotProviders, useTimeMachineState } from "../hooks/useTimeMachine";
|
|
19
19
|
import { timeMachineStore } from "../store/timeMachineStore";
|
|
20
|
+
import { canNavigate, currentRoute } from "../store/routeRestore";
|
|
20
21
|
import { RestorePreviewScreen } from "./preview/RestorePreviewScreen";
|
|
21
22
|
import { ItemDetailScreen } from "./preview/ItemDetailScreen";
|
|
22
23
|
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -26,8 +27,12 @@ const SOURCE_ICONS = {
|
|
|
26
27
|
redux: ReduxIcon,
|
|
27
28
|
zustand: ZustandIcon,
|
|
28
29
|
jotai: JotaiIcon,
|
|
29
|
-
query: QueryIcon
|
|
30
|
+
query: QueryIcon,
|
|
31
|
+
route: RoutesIcon
|
|
30
32
|
};
|
|
33
|
+
|
|
34
|
+
/** Id of the route tile — a device capability, not a snapshot provider. */
|
|
35
|
+
const ROUTE_SOURCE_ID = "route";
|
|
31
36
|
function timeAgo(ts) {
|
|
32
37
|
const s = Math.max(0, Math.round((Date.now() - ts) / 1000));
|
|
33
38
|
if (s < 60) return `${s}s ago`;
|
|
@@ -62,6 +67,53 @@ function confirmDestructive(title, message, confirmLabel, onConfirm) {
|
|
|
62
67
|
onPress: onConfirm
|
|
63
68
|
}]);
|
|
64
69
|
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* "Also go back to the screen this was captured on?"
|
|
73
|
+
*
|
|
74
|
+
* Asked BEFORE the restore runs, because a reload-mode restore has to park the
|
|
75
|
+
* route in storage before the JS realm dies — there is no "after" to ask in.
|
|
76
|
+
* `onChoose(withRoute)` runs the restore; dismissing cancels it entirely.
|
|
77
|
+
*
|
|
78
|
+
* RN-web's Alert renders no buttons, so the web (Buoy Desktop) path uses the
|
|
79
|
+
* browser dialog: OK = state + route, Cancel = state only.
|
|
80
|
+
*/
|
|
81
|
+
function confirmRestoreRoute(snapshotName, href, onChoose) {
|
|
82
|
+
const message = `“${snapshotName}” was captured on ${href}. Go back to that screen too, or restore state only?`;
|
|
83
|
+
if (Platform.OS === "web") {
|
|
84
|
+
const confirmFn = globalThis.confirm;
|
|
85
|
+
onChoose(confirmFn ? confirmFn(`Also return to ${href}?\n\n${message}`) : false);
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
Alert.alert("Restore route too?", message, [{
|
|
89
|
+
text: "Cancel",
|
|
90
|
+
style: "cancel"
|
|
91
|
+
}, {
|
|
92
|
+
text: "State only",
|
|
93
|
+
onPress: () => onChoose(false)
|
|
94
|
+
}, {
|
|
95
|
+
text: `Go to ${href}`,
|
|
96
|
+
onPress: () => onChoose(true)
|
|
97
|
+
}]);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Route leg of a restore: prompt when the snapshot has a captured route we
|
|
102
|
+
* aren't already sitting on, otherwise restore straight away. On Buoy Desktop
|
|
103
|
+
* the device's live route is unknown (no local router), so we always ask.
|
|
104
|
+
*/
|
|
105
|
+
function restoreWithRoutePrompt(meta, run) {
|
|
106
|
+
const route = meta.route;
|
|
107
|
+
if (!route) {
|
|
108
|
+
run(false);
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
if (currentRoute()?.href === route.href) {
|
|
112
|
+
run(false); // already on that screen — nothing to ask
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
confirmRestoreRoute(meta.name, route.href, run);
|
|
116
|
+
}
|
|
65
117
|
function OutcomePanel({
|
|
66
118
|
outcome
|
|
67
119
|
}) {
|
|
@@ -89,6 +141,9 @@ function OutcomePanel({
|
|
|
89
141
|
}), entries.length === 0 && /*#__PURE__*/_jsx(Text, {
|
|
90
142
|
style: styles.outcomeLine,
|
|
91
143
|
children: "no sources restored"
|
|
144
|
+
}), outcome.route && /*#__PURE__*/_jsx(Text, {
|
|
145
|
+
style: [styles.outcomeLine, (outcome.route.status === "failed" || outcome.route.status === "unavailable") && styles.outcomeLineBad],
|
|
146
|
+
children: outcome.route.status === "navigated" ? `✓ route — ${outcome.route.href}` : outcome.route.status === "deferred" ? `↻ route — ${outcome.route.href} after reload` : `✕ route — ${outcome.route.error ?? outcome.route.status}`
|
|
92
147
|
}), entries.map(([sourceId, r]) => /*#__PURE__*/_jsxs(View, {
|
|
93
148
|
style: styles.outcomeSource,
|
|
94
149
|
children: [/*#__PURE__*/_jsxs(Text, {
|
|
@@ -111,7 +166,8 @@ export function TimeMachineBody() {
|
|
|
111
166
|
busy,
|
|
112
167
|
lastOutcome,
|
|
113
168
|
preview,
|
|
114
|
-
remoteProviders
|
|
169
|
+
remoteProviders,
|
|
170
|
+
remoteRoute
|
|
115
171
|
} = useTimeMachineState();
|
|
116
172
|
const localProviders = useSnapshotProviders();
|
|
117
173
|
const isPro = useIsPro();
|
|
@@ -133,6 +189,23 @@ export function TimeMachineBody() {
|
|
|
133
189
|
label: p.label,
|
|
134
190
|
...p.status()
|
|
135
191
|
}));
|
|
192
|
+
|
|
193
|
+
// Route sits in the same strip as the state sources so its availability is
|
|
194
|
+
// visible before you ever open a restore point — but it's a device
|
|
195
|
+
// capability, not a registered provider, so it's derived separately (from
|
|
196
|
+
// the live router here, from the device's payload on Buoy Desktop).
|
|
197
|
+
const routeAvailable = remoteProviders ? remoteRoute?.available === true : canNavigate();
|
|
198
|
+
const routeSource = {
|
|
199
|
+
id: ROUTE_SOURCE_ID,
|
|
200
|
+
label: "Route",
|
|
201
|
+
canCapture: routeAvailable,
|
|
202
|
+
canRestore: routeAvailable,
|
|
203
|
+
// No live route in the caption: this screen only re-renders on store
|
|
204
|
+
// changes, so a pathname printed here goes stale the moment you navigate
|
|
205
|
+
// with the tool still open. Each restore point shows the route it holds.
|
|
206
|
+
detail: routeAvailable ? "recorded with every snapshot — restore can take you back" : "no Expo Router detected — snapshots record no route"
|
|
207
|
+
};
|
|
208
|
+
const sourceTiles = [...providers, routeSource];
|
|
136
209
|
const atFreeLimit = !isPro && snapshots.length >= FREE_SNAPSHOT_LIMIT;
|
|
137
210
|
const captureDisabled = busy !== null || atFreeLimit;
|
|
138
211
|
const capture = () => {
|
|
@@ -146,7 +219,11 @@ export function TimeMachineBody() {
|
|
|
146
219
|
confirmDestructive("Restore fresh install?", "This wipes all app storage and reloads the app.", "Wipe & reload", () => void timeMachineStore.restore(meta.id, "reload"));
|
|
147
220
|
return;
|
|
148
221
|
}
|
|
149
|
-
|
|
222
|
+
restoreWithRoutePrompt(meta, restoreRoute => {
|
|
223
|
+
void timeMachineStore.restore(meta.id, mode, excludeKeys, {
|
|
224
|
+
restoreRoute
|
|
225
|
+
});
|
|
226
|
+
});
|
|
150
227
|
};
|
|
151
228
|
const remove = meta => {
|
|
152
229
|
confirmDestructive("Delete snapshot?", `“${meta.name}” cannot be recovered.`, "Delete", () => void timeMachineStore.delete(meta.id));
|
|
@@ -253,7 +330,11 @@ export function TimeMachineBody() {
|
|
|
253
330
|
}
|
|
254
331
|
// Land back on the list, where the outcome panel reports the
|
|
255
332
|
// results — the preview's diff is stale the moment restore runs.
|
|
256
|
-
|
|
333
|
+
restoreWithRoutePrompt(rightMeta, restoreRoute => {
|
|
334
|
+
void timeMachineStore.restore(rightMeta.id, mode, excludeKeys, {
|
|
335
|
+
restoreRoute
|
|
336
|
+
}).then(() => closePreview());
|
|
337
|
+
});
|
|
257
338
|
},
|
|
258
339
|
onPickSide: setPicker,
|
|
259
340
|
onRefresh: () => void timeMachineStore.buildPreview(preview.right, preview.left)
|
|
@@ -269,7 +350,7 @@ export function TimeMachineBody() {
|
|
|
269
350
|
}
|
|
270
351
|
|
|
271
352
|
// ── List screen ──
|
|
272
|
-
const unavailable =
|
|
353
|
+
const unavailable = sourceTiles.filter(p => p.detail && (!p.canCapture || !p.canRestore));
|
|
273
354
|
return /*#__PURE__*/_jsxs(ScrollView, {
|
|
274
355
|
style: styles.screenFill,
|
|
275
356
|
contentContainerStyle: styles.container,
|
|
@@ -313,11 +394,13 @@ export function TimeMachineBody() {
|
|
|
313
394
|
children: "Sources"
|
|
314
395
|
}), /*#__PURE__*/_jsxs(View, {
|
|
315
396
|
style: styles.sourceTiles,
|
|
316
|
-
children: [
|
|
397
|
+
children: [sourceTiles.map(p => {
|
|
317
398
|
const IconComp = SOURCE_ICONS[p.id] ?? TimeMachineIcon;
|
|
318
399
|
const dotColor = !p.canCapture ? buoyColors.textMuted : p.canRestore ? buoyColors.success : buoyColors.warning;
|
|
319
400
|
return /*#__PURE__*/_jsxs(View, {
|
|
320
401
|
style: styles.sourceTile,
|
|
402
|
+
testID: `time-machine-source-${p.id}`,
|
|
403
|
+
accessibilityLabel: `${p.label}: ${p.canCapture ? p.canRestore ? "capture and restore" : "capture only" : "unavailable"}`,
|
|
321
404
|
children: [/*#__PURE__*/_jsx(IconComp, {
|
|
322
405
|
size: 16
|
|
323
406
|
}), /*#__PURE__*/_jsx(View, {
|
|
@@ -326,7 +409,7 @@ export function TimeMachineBody() {
|
|
|
326
409
|
}]
|
|
327
410
|
})]
|
|
328
411
|
}, p.id);
|
|
329
|
-
}), providers.length === 0 && /*#__PURE__*/_jsx(Text, {
|
|
412
|
+
}), providers.length === 0 && !routeAvailable && /*#__PURE__*/_jsx(Text, {
|
|
330
413
|
style: styles.emptyText,
|
|
331
414
|
children: "none registered"
|
|
332
415
|
})]
|
|
@@ -334,7 +417,11 @@ export function TimeMachineBody() {
|
|
|
334
417
|
}), unavailable.map(p => /*#__PURE__*/_jsxs(Text, {
|
|
335
418
|
style: styles.providerDetail,
|
|
336
419
|
children: [p.label, ": ", p.detail]
|
|
337
|
-
}, p.id)), /*#__PURE__*/
|
|
420
|
+
}, p.id)), routeAvailable && /*#__PURE__*/_jsxs(Text, {
|
|
421
|
+
style: styles.providerDetail,
|
|
422
|
+
numberOfLines: 1,
|
|
423
|
+
children: [routeSource.label, ": ", routeSource.detail]
|
|
424
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
338
425
|
style: [styles.sectionTitle, styles.sectionSpacing],
|
|
339
426
|
children: "Restore points"
|
|
340
427
|
}), hasLoaded && snapshots.length === 0 && /*#__PURE__*/_jsx(Text, {
|
|
@@ -364,6 +451,10 @@ export function TimeMachineBody() {
|
|
|
364
451
|
style: styles.snapshotMeta,
|
|
365
452
|
numberOfLines: 1,
|
|
366
453
|
children: [meta.baseline ? "wipes to fresh install" : `${timeAgo(meta.createdAt)} · ${formatBytes(meta.sizeBytes)} · ${Object.keys(meta.sources).length} sources`, meta.scope?.length ? ` · scoped (${meta.scope.length})` : "", warnings > 0 ? ` · ⚠ ${warnings}` : ""]
|
|
454
|
+
}), !meta.baseline && meta.route && /*#__PURE__*/_jsxs(Text, {
|
|
455
|
+
style: styles.snapshotRoute,
|
|
456
|
+
numberOfLines: 1,
|
|
457
|
+
children: ["\u2316 ", meta.route.href]
|
|
367
458
|
})]
|
|
368
459
|
}), !meta.baseline ? /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
369
460
|
style: [styles.rowAction, busy && styles.buttonDisabled],
|
|
@@ -552,6 +643,10 @@ const styles = StyleSheet.create({
|
|
|
552
643
|
fontSize: 10,
|
|
553
644
|
fontVariant: ["tabular-nums"]
|
|
554
645
|
},
|
|
646
|
+
snapshotRoute: {
|
|
647
|
+
color: buoyColors.textSecondary,
|
|
648
|
+
fontSize: 10
|
|
649
|
+
},
|
|
555
650
|
rowAction: {
|
|
556
651
|
padding: 4,
|
|
557
652
|
justifyContent: "center",
|