@foldkit/devtools 0.135.0 → 0.137.0
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/dist/overlay.d.ts +3 -3
- package/dist/overlay.d.ts.map +1 -1
- package/dist/overlay.js +129 -99
- package/package.json +3 -3
package/dist/overlay.d.ts
CHANGED
|
@@ -26,10 +26,10 @@ declare const ShadowRootService_base: Context.ServiceClass<ShadowRootService, "f
|
|
|
26
26
|
declare class ShadowRootService extends ShadowRootService_base {
|
|
27
27
|
}
|
|
28
28
|
export declare const LockScroll: Command.CommandDefinitionNoArgs<"LockScroll", Effect.Effect<{
|
|
29
|
-
readonly _tag: "
|
|
29
|
+
readonly _tag: "CompletedLockScroll";
|
|
30
30
|
}, never, never>>;
|
|
31
31
|
export declare const UnlockScroll: Command.CommandDefinitionNoArgs<"UnlockScroll", Effect.Effect<{
|
|
32
|
-
readonly _tag: "
|
|
32
|
+
readonly _tag: "CompletedUnlockScroll";
|
|
33
33
|
}, never, never>>;
|
|
34
34
|
export declare const PersistDevToolsState: Command.CommandDefinitionWithArgs<"PersistDevToolsState", {
|
|
35
35
|
isOpen: S.Boolean;
|
|
@@ -69,7 +69,7 @@ export declare const Clear: Command.CommandDefinitionNoArgs<"Clear", Effect.Effe
|
|
|
69
69
|
readonly _tag: "CompletedClear";
|
|
70
70
|
}, never, StoreService>>;
|
|
71
71
|
export declare const ScrollToTop: Command.CommandDefinitionNoArgs<"ScrollToTop", Effect.Effect<{
|
|
72
|
-
readonly _tag: "
|
|
72
|
+
readonly _tag: "CompletedScrollToTop";
|
|
73
73
|
}, never, ShadowRootService>>;
|
|
74
74
|
export declare const createOverlay: (store: DevToolsStore, position: DevToolsPosition, mode: DevToolsMode, maybeBanner: Option.Option<string>) => Effect.Effect<void, never, import("effect/Scope").Scope>;
|
|
75
75
|
export {};
|
package/dist/overlay.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../src/overlay.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,OAAO,EACP,MAAM,EAEN,OAAO,EAGP,MAAM,EAKN,MAAM,IAAI,CAAC,EAGX,eAAe,EAEhB,MAAM,QAAQ,CAAA;AAEf,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EACL,KAAK,aAAa,EAElB,KAAK,aAAa,EAGlB,KAAK,WAAW,EAChB,KAAK,UAAU,EAKhB,MAAM,uBAAuB,CAAA;AAU9B,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;;oFAsDR,CAAC;;;;;;;;;;;;;;;;;AAkQ9D,cAAM,YAAa,SAAQ,iBAE1B;CAAG;;AAEJ,cAAM,iBAAkB,SAAQ,sBAGC;CAAG;AAEpC,eAAO,MAAM,UAAU;;
|
|
1
|
+
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../src/overlay.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,OAAO,EACP,MAAM,EAEN,OAAO,EAGP,MAAM,EAKN,MAAM,IAAI,CAAC,EAGX,eAAe,EAEhB,MAAM,QAAQ,CAAA;AAEf,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EACL,KAAK,aAAa,EAElB,KAAK,aAAa,EAGlB,KAAK,WAAW,EAChB,KAAK,UAAU,EAKhB,MAAM,uBAAuB,CAAA;AAU9B,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;;oFAsDR,CAAC;;;;;;;;;;;;;;;;;AAkQ9D,cAAM,YAAa,SAAQ,iBAE1B;CAAG;;AAEJ,cAAM,iBAAkB,SAAQ,sBAGC;CAAG;AAEpC,eAAO,MAAM,UAAU;;iBAGrB,CAAA;AAEF,eAAO,MAAM,YAAY;;iBAGvB,CAAA;AAgCF,eAAO,MAAM,oBAAoB;;;;;iBAgB/B,CAAA;AAuBF,eAAO,MAAM,gBAAgB;;;;;;;;wBAS3B,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;;;wBAIvB,CAAA;AAEF,eAAO,MAAM,aAAa;;;;;;wBAOxB,CAAA;AAEF,eAAO,MAAM,MAAM;;wBAOjB,CAAA;AAEF,eAAO,MAAM,KAAK;;wBAOhB,CAAA;AAEF,eAAO,MAAM,WAAW;;6BAUtB,CAAA;AAu9DF,eAAO,MAAM,aAAa,GACxB,OAAO,aAAa,EACpB,UAAU,gBAAgB,EAC1B,MAAM,YAAY,EAClB,aAAa,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,6DAkFhC,CAAA"}
|
package/dist/overlay.js
CHANGED
|
@@ -118,9 +118,9 @@ const ClickedFollowLatest = m('ClickedFollowLatest');
|
|
|
118
118
|
const ClickedScrollToTopPill = m('ClickedScrollToTopPill');
|
|
119
119
|
const ScrolledMessageList = m('ScrolledMessageList', { scrollTop: S.Number });
|
|
120
120
|
const CompletedClear = m('CompletedClear');
|
|
121
|
-
const
|
|
122
|
-
const
|
|
123
|
-
const
|
|
121
|
+
const CompletedLockScroll = m('CompletedLockScroll');
|
|
122
|
+
const CompletedUnlockScroll = m('CompletedUnlockScroll');
|
|
123
|
+
const CompletedScrollToTop = m('CompletedScrollToTop');
|
|
124
124
|
const CrossedMobileBreakpoint = m('CrossedMobileBreakpoint', {
|
|
125
125
|
isMobile: S.Boolean,
|
|
126
126
|
});
|
|
@@ -163,9 +163,9 @@ const Message = S.Union([
|
|
|
163
163
|
ScrolledMessageList,
|
|
164
164
|
CompletedResume,
|
|
165
165
|
CompletedClear,
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
166
|
+
CompletedLockScroll,
|
|
167
|
+
CompletedUnlockScroll,
|
|
168
|
+
CompletedScrollToTop,
|
|
169
169
|
CrossedMobileBreakpoint,
|
|
170
170
|
ReceivedInspectedState,
|
|
171
171
|
ToggledTreeNode,
|
|
@@ -241,8 +241,14 @@ class StoreService extends Context.Service()('foldkit/DevToolsStore') {
|
|
|
241
241
|
}
|
|
242
242
|
class ShadowRootService extends Context.Service()('foldkit/DevToolsShadowRoot') {
|
|
243
243
|
}
|
|
244
|
-
export const LockScroll = Command.define('LockScroll',
|
|
245
|
-
|
|
244
|
+
export const LockScroll = Command.define('LockScroll', {
|
|
245
|
+
messages: [CompletedLockScroll],
|
|
246
|
+
execute: lockScroll.pipe(Effect.as(CompletedLockScroll())),
|
|
247
|
+
});
|
|
248
|
+
export const UnlockScroll = Command.define('UnlockScroll', {
|
|
249
|
+
messages: [CompletedUnlockScroll],
|
|
250
|
+
execute: unlockScroll.pipe(Effect.as(CompletedUnlockScroll())),
|
|
251
|
+
});
|
|
246
252
|
const maybeToggleScrollLock = (isEnabled, shouldLock) => __foldkitBrandViewResult((OptionExt.when(isEnabled, shouldLock ? LockScroll() : UnlockScroll())), "@foldkit/devtools/overlay.js#maybeToggleScrollLock");
|
|
247
253
|
const maybeLockScroll = (isOpen, isMobile) => __foldkitBrandViewResult((OptionExt.when(isOpen && isMobile, LockScroll())), "@foldkit/devtools/overlay.js#maybeLockScroll");
|
|
248
254
|
const DevToolsPersistedState = S.Struct({
|
|
@@ -259,25 +265,29 @@ const readPersistedState = Effect.gen(function* () {
|
|
|
259
265
|
const json = yield* Effect.fromOption(Option.fromNullishOr(yield* store.get(DEVTOOLS_STORAGE_KEY)));
|
|
260
266
|
return __foldkitBrandViewResult((yield* S.decodeEffect(DevToolsPersistedStateJson)(json)), "@foldkit/devtools/overlay.js#anonymous~13");
|
|
261
267
|
}).pipe(Effect.catch(() => __foldkitBrandViewResult((Effect.succeed(DEFAULT_PERSISTED_STATE)), "@foldkit/devtools/overlay.js#anonymous~14")), Effect.provide(BrowserKeyValueStore.layerLocalStorage));
|
|
262
|
-
export const PersistDevToolsState = Command.define('PersistDevToolsState', {
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
})
|
|
268
|
+
export const PersistDevToolsState = Command.define('PersistDevToolsState', {
|
|
269
|
+
args: { isOpen: S.Boolean, isFlattened: S.Boolean },
|
|
270
|
+
messages: [CompletedPersistDevToolsState],
|
|
271
|
+
execute: ({ isOpen, isFlattened }) => __foldkitBrandViewResult((Effect.gen(function* () {
|
|
272
|
+
const store = yield* KeyValueStore.KeyValueStore;
|
|
273
|
+
const json = yield* S.encodeEffect(DevToolsPersistedStateJson)({
|
|
274
|
+
isOpen,
|
|
275
|
+
isFlattened,
|
|
276
|
+
});
|
|
277
|
+
yield* store.set(DEVTOOLS_STORAGE_KEY, json);
|
|
278
|
+
return __foldkitBrandViewResult((CompletedPersistDevToolsState()), "@foldkit/devtools/overlay.js#anonymous~15");
|
|
279
|
+
}).pipe(Effect.catch(() => __foldkitBrandViewResult((Effect.succeed(CompletedPersistDevToolsState())), "@foldkit/devtools/overlay.js#anonymous~16")), Effect.provide(BrowserKeyValueStore.layerLocalStorage))), "@foldkit/devtools/overlay.js#execute"),
|
|
280
|
+
});
|
|
271
281
|
const buildInspectionFromModel = (index, model) => __foldkitBrandViewResult((Effect.gen(function* () {
|
|
272
282
|
const store = yield* StoreService;
|
|
273
283
|
const maybeMessage = yield* store.getMessageAtIndex(index);
|
|
274
284
|
const diff = yield* store.getDiffAtIndex(index);
|
|
275
|
-
return __foldkitBrandViewResult((ReceivedInspectedState({ model, maybeMessage, ...diff })), "@foldkit/devtools/overlay.js#anonymous~
|
|
285
|
+
return __foldkitBrandViewResult((ReceivedInspectedState({ model, maybeMessage, ...diff })), "@foldkit/devtools/overlay.js#anonymous~17");
|
|
276
286
|
})), "@foldkit/devtools/overlay.js#buildInspectionFromModel");
|
|
277
287
|
const buildInspectionEffect = (index) => __foldkitBrandViewResult((Effect.gen(function* () {
|
|
278
288
|
const store = yield* StoreService;
|
|
279
289
|
const model = yield* store.getModelAtIndex(index);
|
|
280
|
-
return __foldkitBrandViewResult((yield* buildInspectionFromModel(index, model)), "@foldkit/devtools/overlay.js#anonymous~
|
|
290
|
+
return __foldkitBrandViewResult((yield* buildInspectionFromModel(index, model)), "@foldkit/devtools/overlay.js#anonymous~18");
|
|
281
291
|
})), "@foldkit/devtools/overlay.js#buildInspectionEffect");
|
|
282
292
|
// NOTE: jump and inspect both need the model at `index`. Resolving it twice
|
|
283
293
|
// (once to render the host, once to feed the inspector) replays the segment
|
|
@@ -285,35 +295,55 @@ const buildInspectionEffect = (index) => __foldkitBrandViewResult((Effect.gen(fu
|
|
|
285
295
|
// returns the model it resolved so the inspector reuses that single
|
|
286
296
|
// resolution. Inspect-only navigation (no host pause) still uses
|
|
287
297
|
// `InspectState`, which resolves once on its own.
|
|
288
|
-
export const JumpToAndInspect = Command.define('JumpToAndInspect', {
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
}
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
})
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
})
|
|
298
|
+
export const JumpToAndInspect = Command.define('JumpToAndInspect', {
|
|
299
|
+
args: { index: S.Number },
|
|
300
|
+
messages: [ReceivedInspectedState],
|
|
301
|
+
execute: ({ index }) => __foldkitBrandViewResult((Effect.gen(function* () {
|
|
302
|
+
const store = yield* StoreService;
|
|
303
|
+
const model = yield* store.jumpTo(index);
|
|
304
|
+
return __foldkitBrandViewResult((yield* buildInspectionFromModel(index, model)), "@foldkit/devtools/overlay.js#anonymous~19");
|
|
305
|
+
})), "@foldkit/devtools/overlay.js#execute~2"),
|
|
306
|
+
});
|
|
307
|
+
export const InspectState = Command.define('InspectState', {
|
|
308
|
+
args: { index: S.Number },
|
|
309
|
+
messages: [ReceivedInspectedState],
|
|
310
|
+
execute: ({ index }) => __foldkitBrandViewResult((buildInspectionEffect(index)), "@foldkit/devtools/overlay.js#execute~3"),
|
|
311
|
+
});
|
|
312
|
+
export const InspectLatest = Command.define('InspectLatest', {
|
|
313
|
+
messages: [ReceivedInspectedState],
|
|
314
|
+
execute: Effect.gen(function* () {
|
|
315
|
+
const store = yield* StoreService;
|
|
316
|
+
const state = yield* SubscriptionRef.get(store.stateRef);
|
|
317
|
+
return __foldkitBrandViewResult((yield* buildInspectionEffect(latestEntryIndex(state))), "@foldkit/devtools/overlay.js#anonymous~20");
|
|
318
|
+
}),
|
|
319
|
+
});
|
|
320
|
+
export const Resume = Command.define('Resume', {
|
|
321
|
+
messages: [CompletedResume],
|
|
322
|
+
execute: Effect.gen(function* () {
|
|
323
|
+
const store = yield* StoreService;
|
|
324
|
+
yield* store.resume;
|
|
325
|
+
return __foldkitBrandViewResult((CompletedResume()), "@foldkit/devtools/overlay.js#anonymous~21");
|
|
326
|
+
}),
|
|
327
|
+
});
|
|
328
|
+
export const Clear = Command.define('Clear', {
|
|
329
|
+
messages: [CompletedClear],
|
|
330
|
+
execute: Effect.gen(function* () {
|
|
331
|
+
const store = yield* StoreService;
|
|
332
|
+
yield* store.clear;
|
|
333
|
+
return __foldkitBrandViewResult((CompletedClear()), "@foldkit/devtools/overlay.js#anonymous~22");
|
|
334
|
+
}),
|
|
335
|
+
});
|
|
336
|
+
export const ScrollToTop = Command.define('ScrollToTop', {
|
|
337
|
+
messages: [CompletedScrollToTop],
|
|
338
|
+
execute: Effect.gen(function* () {
|
|
339
|
+
const shadow = yield* ShadowRootService;
|
|
340
|
+
const messageList = shadow.querySelector(MESSAGE_LIST_SELECTOR);
|
|
341
|
+
if (messageList instanceof HTMLElement) {
|
|
342
|
+
messageList.scrollTop = 0;
|
|
343
|
+
}
|
|
344
|
+
return __foldkitBrandViewResult((CompletedScrollToTop()), "@foldkit/devtools/overlay.js#anonymous~23");
|
|
345
|
+
}),
|
|
346
|
+
});
|
|
317
347
|
const makeUpdate = (store, shadow, mode) => {
|
|
318
348
|
const provideContext = (effect) => __foldkitBrandViewResult((effect.pipe(Effect.provideService(StoreService, store), Effect.provideService(ShadowRootService, shadow))), "@foldkit/devtools/overlay.js#provideContext");
|
|
319
349
|
const inspectLatest = Command.mapEffect(InspectLatest(), provideContext);
|
|
@@ -338,7 +368,7 @@ const makeUpdate = (store, shadow, mode) => {
|
|
|
338
368
|
},
|
|
339
369
|
ClickedSettingsToggle: () => __foldkitBrandViewResult(([
|
|
340
370
|
evo(model, {
|
|
341
|
-
screen: currentScreen => __foldkitBrandViewResult((M.value(currentScreen).pipe(M.withReturnType(), M.when('Messages', () => __foldkitBrandViewResult(('Settings'), "@foldkit/devtools/overlay.js#anonymous~
|
|
371
|
+
screen: currentScreen => __foldkitBrandViewResult((M.value(currentScreen).pipe(M.withReturnType(), M.when('Messages', () => __foldkitBrandViewResult(('Settings'), "@foldkit/devtools/overlay.js#anonymous~25")), M.when('Settings', () => __foldkitBrandViewResult(('Messages'), "@foldkit/devtools/overlay.js#anonymous~26")), M.exhaustive)), "@foldkit/devtools/overlay.js#screen"),
|
|
342
372
|
}),
|
|
343
373
|
[],
|
|
344
374
|
]), "@foldkit/devtools/overlay.js#ClickedSettingsToggle"),
|
|
@@ -350,13 +380,13 @@ const makeUpdate = (store, shadow, mode) => {
|
|
|
350
380
|
evo(model, { isMobile: () => __foldkitBrandViewResult((isMobile), "@foldkit/devtools/overlay.js#isMobile") }),
|
|
351
381
|
Option.toArray(maybeToggleScrollLock(model.isOpen, isMobile)),
|
|
352
382
|
]), "@foldkit/devtools/overlay.js#CrossedMobileBreakpoint"),
|
|
353
|
-
ClickedRow: ({ index }) => __foldkitBrandViewResult((M.value(mode).pipe(M.withReturnType(), M.when('TimeTravel', () => __foldkitBrandViewResult(([model, [jumpToAndInspect(index)]]), "@foldkit/devtools/overlay.js#anonymous~
|
|
383
|
+
ClickedRow: ({ index }) => __foldkitBrandViewResult((M.value(mode).pipe(M.withReturnType(), M.when('TimeTravel', () => __foldkitBrandViewResult(([model, [jumpToAndInspect(index)]]), "@foldkit/devtools/overlay.js#anonymous~27")), M.when('Inspect', () => __foldkitBrandViewResult(([
|
|
354
384
|
evo(model, {
|
|
355
385
|
selectedIndex: () => __foldkitBrandViewResult((index), "@foldkit/devtools/overlay.js#selectedIndex"),
|
|
356
386
|
isFollowingLatest: () => __foldkitBrandViewResult((false), "@foldkit/devtools/overlay.js#isFollowingLatest"),
|
|
357
387
|
}),
|
|
358
388
|
[inspectState(index)],
|
|
359
|
-
]), "@foldkit/devtools/overlay.js#anonymous~
|
|
389
|
+
]), "@foldkit/devtools/overlay.js#anonymous~28")), M.exhaustive)), "@foldkit/devtools/overlay.js#ClickedRow"),
|
|
360
390
|
ClickedResume: () => __foldkitBrandViewResult(([
|
|
361
391
|
evo(model, {
|
|
362
392
|
isFollowingTop: () => __foldkitBrandViewResult((true), "@foldkit/devtools/overlay.js#isFollowingTop"),
|
|
@@ -429,7 +459,7 @@ const makeUpdate = (store, shadow, mode) => {
|
|
|
429
459
|
inspectorTabs: () => __foldkitBrandViewResult((nextTabsModel), "@foldkit/devtools/overlay.js#inspectorTabs"),
|
|
430
460
|
activeInspectorTab: () => __foldkitBrandViewResult((nextActiveInspectorTab), "@foldkit/devtools/overlay.js#activeInspectorTab"),
|
|
431
461
|
}),
|
|
432
|
-
Command.mapMessages(tabsCommands, message => __foldkitBrandViewResult((GotInspectorTabsMessage({ message })), "@foldkit/devtools/overlay.js#anonymous~
|
|
462
|
+
Command.mapMessages(tabsCommands, message => __foldkitBrandViewResult((GotInspectorTabsMessage({ message })), "@foldkit/devtools/overlay.js#anonymous~29")),
|
|
433
463
|
]), "@foldkit/devtools/overlay.js#GotInspectorTabsMessage");
|
|
434
464
|
},
|
|
435
465
|
ToggledTreeNode: ({ path }) => __foldkitBrandViewResult(([
|
|
@@ -441,14 +471,14 @@ const makeUpdate = (store, shadow, mode) => {
|
|
|
441
471
|
[],
|
|
442
472
|
]), "@foldkit/devtools/overlay.js#ToggledTreeNode"),
|
|
443
473
|
ReceivedStoreUpdate: ({ entries, initCommands, initMountStarts, startIndex, isPaused, pausedAtIndex, }) => {
|
|
444
|
-
const shouldFollowSelection = M.value(mode).pipe(M.when('TimeTravel', () => __foldkitBrandViewResult((!isPaused), "@foldkit/devtools/overlay.js#anonymous~
|
|
445
|
-
const shouldFollowScroll = M.value(mode).pipe(M.when('TimeTravel', () => __foldkitBrandViewResult((!isPaused && model.isFollowingTop), "@foldkit/devtools/overlay.js#anonymous~
|
|
474
|
+
const shouldFollowSelection = M.value(mode).pipe(M.when('TimeTravel', () => __foldkitBrandViewResult((!isPaused), "@foldkit/devtools/overlay.js#anonymous~30")), M.when('Inspect', () => __foldkitBrandViewResult((model.isFollowingLatest), "@foldkit/devtools/overlay.js#anonymous~31")), M.exhaustive);
|
|
475
|
+
const shouldFollowScroll = M.value(mode).pipe(M.when('TimeTravel', () => __foldkitBrandViewResult((!isPaused && model.isFollowingTop), "@foldkit/devtools/overlay.js#anonymous~32")), M.when('Inspect', () => __foldkitBrandViewResult((model.isFollowingTop), "@foldkit/devtools/overlay.js#anonymous~33")), M.exhaustive);
|
|
446
476
|
const latestIndex = Array_.match(entries, {
|
|
447
477
|
onEmpty: () => __foldkitBrandViewResult((INIT_INDEX), "@foldkit/devtools/overlay.js#onEmpty~3"),
|
|
448
478
|
onNonEmpty: () => __foldkitBrandViewResult((startIndex + entries.length - 1), "@foldkit/devtools/overlay.js#onNonEmpty~3"),
|
|
449
479
|
});
|
|
450
480
|
const nextSubmodelTags = computeSubmodelTags(entries);
|
|
451
|
-
const isFilterStale = Option.exists(model.maybeSubmodelFilter, filterTag => __foldkitBrandViewResult((!Array_.contains(nextSubmodelTags, filterTag)), "@foldkit/devtools/overlay.js#anonymous~
|
|
481
|
+
const isFilterStale = Option.exists(model.maybeSubmodelFilter, filterTag => __foldkitBrandViewResult((!Array_.contains(nextSubmodelTags, filterTag)), "@foldkit/devtools/overlay.js#anonymous~34"));
|
|
452
482
|
const sliderMax = entries.length;
|
|
453
483
|
const targetSliderValue = isPaused
|
|
454
484
|
? hostIndexToSliderValue(pausedAtIndex, startIndex)
|
|
@@ -465,7 +495,7 @@ const makeUpdate = (store, shadow, mode) => {
|
|
|
465
495
|
maybeSubmodelFilter: current => __foldkitBrandViewResult((isFilterStale ? Option.none() : current), "@foldkit/devtools/overlay.js#maybeSubmodelFilter~2"),
|
|
466
496
|
selectedIndex: current => __foldkitBrandViewResult((shouldFollowSelection ? latestIndex : current), "@foldkit/devtools/overlay.js#selectedIndex~4"),
|
|
467
497
|
scrubberSlider: current => __foldkitBrandViewResult((Slider.reflectRange(current, { min: 0, max: sliderMax })), "@foldkit/devtools/overlay.js#scrubberSlider"),
|
|
468
|
-
scrubberValue: current => __foldkitBrandViewResult((M.value(model.scrubberSlider.dragState).pipe(M.tag('Dragging', () => __foldkitBrandViewResult((Slider.snapAndClamp(current, 0, sliderMax, 1)), "@foldkit/devtools/overlay.js#anonymous~
|
|
498
|
+
scrubberValue: current => __foldkitBrandViewResult((M.value(model.scrubberSlider.dragState).pipe(M.tag('Dragging', () => __foldkitBrandViewResult((Slider.snapAndClamp(current, 0, sliderMax, 1)), "@foldkit/devtools/overlay.js#anonymous~35")), M.orElse(() => __foldkitBrandViewResult((Slider.snapAndClamp(targetSliderValue, 0, sliderMax, 1)), "@foldkit/devtools/overlay.js#anonymous~36")))), "@foldkit/devtools/overlay.js#scrubberValue"),
|
|
469
499
|
}),
|
|
470
500
|
[
|
|
471
501
|
...(shouldFollowSelection ? [inspectLatest] : []),
|
|
@@ -475,7 +505,7 @@ const makeUpdate = (store, shadow, mode) => {
|
|
|
475
505
|
},
|
|
476
506
|
GotSubmodelFilterMessage: ({ message: listboxMessage }) => {
|
|
477
507
|
const [nextListboxModel, listboxCommands, maybeOutMessage] = SubmodelFilterListbox.update(model.submodelFilterListbox, listboxMessage);
|
|
478
|
-
const mappedCommands = Command.mapMessages(listboxCommands, message => __foldkitBrandViewResult((GotSubmodelFilterMessage({ message })), "@foldkit/devtools/overlay.js#anonymous~
|
|
508
|
+
const mappedCommands = Command.mapMessages(listboxCommands, message => __foldkitBrandViewResult((GotSubmodelFilterMessage({ message })), "@foldkit/devtools/overlay.js#anonymous~37"));
|
|
479
509
|
return __foldkitBrandViewResult((Option.match(maybeOutMessage, {
|
|
480
510
|
onNone: () => __foldkitBrandViewResult(([
|
|
481
511
|
evo(model, { submodelFilterListbox: () => __foldkitBrandViewResult((nextListboxModel), "@foldkit/devtools/overlay.js#submodelFilterListbox") }),
|
|
@@ -494,7 +524,7 @@ const makeUpdate = (store, shadow, mode) => {
|
|
|
494
524
|
},
|
|
495
525
|
GotScrubberSliderMessage: ({ message: sliderMessage }) => {
|
|
496
526
|
const [nextSlider, sliderCommands, maybeOutMessage] = Slider.update(model.scrubberSlider, sliderMessage);
|
|
497
|
-
const mappedSliderCommands = Command.mapMessages(sliderCommands, message => __foldkitBrandViewResult((GotScrubberSliderMessage({ message })), "@foldkit/devtools/overlay.js#anonymous~
|
|
527
|
+
const mappedSliderCommands = Command.mapMessages(sliderCommands, message => __foldkitBrandViewResult((GotScrubberSliderMessage({ message })), "@foldkit/devtools/overlay.js#anonymous~38"));
|
|
498
528
|
// NOTE: the thumb tracks every pointermove (cheap, model-only via
|
|
499
529
|
// `nextSlider`), but the heavy jump-plus-inspect is coalesced to one
|
|
500
530
|
// navigation per animation frame. Each `ChangedValue` overwrites the
|
|
@@ -529,11 +559,11 @@ const makeUpdate = (store, shadow, mode) => {
|
|
|
529
559
|
[jumpToAndInspect(hostIndex)],
|
|
530
560
|
]), "@foldkit/devtools/overlay.js#onSome"),
|
|
531
561
|
})), "@foldkit/devtools/overlay.js#TickedScrubFrame"),
|
|
532
|
-
}), M.tag('CompletedResume', 'CompletedClear', 'CompletedPersistDevToolsState', '
|
|
562
|
+
}), M.tag('CompletedResume', 'CompletedClear', 'CompletedPersistDevToolsState', 'CompletedLockScroll', 'CompletedUnlockScroll', 'CompletedScrollToTop', () => __foldkitBrandViewResult(([model, []]), "@foldkit/devtools/overlay.js#anonymous~39")), M.exhaustive)), "@foldkit/devtools/overlay.js#anonymous~24")), "@foldkit/devtools/overlay.js#makeUpdate");
|
|
533
563
|
};
|
|
534
564
|
// SUBSCRIPTION
|
|
535
565
|
const makeOverlaySubscriptions = (store, shadow) => {
|
|
536
|
-
const sliderSubscriptions = Slider.subscriptionsForRoot(() => __foldkitBrandViewResult((shadow), "@foldkit/devtools/overlay.js#anonymous~
|
|
566
|
+
const sliderSubscriptions = Slider.subscriptionsForRoot(() => __foldkitBrandViewResult((shadow), "@foldkit/devtools/overlay.js#anonymous~40"));
|
|
537
567
|
const scrubberSubscriptions = Subscription.lift({
|
|
538
568
|
scrubberPointer: sliderSubscriptions.dragPointer,
|
|
539
569
|
scrubberEscape: sliderSubscriptions.dragEscape,
|
|
@@ -546,16 +576,16 @@ const makeOverlaySubscriptions = (store, shadow) => {
|
|
|
546
576
|
isActive: model => __foldkitBrandViewResult((Option.isSome(model.maybePendingScrubIndex)), "@foldkit/devtools/overlay.js#isActive"),
|
|
547
577
|
toMessage: () => __foldkitBrandViewResult((TickedScrubFrame()), "@foldkit/devtools/overlay.js#toMessage"),
|
|
548
578
|
}),
|
|
549
|
-
storeUpdates: Subscription.persistent(Stream.concat(Stream.fromEffect(SubscriptionRef.get(store.stateRef).pipe(Effect.map(state => __foldkitBrandViewResult((ReceivedStoreUpdate(toDisplayState(state))), "@foldkit/devtools/overlay.js#anonymous~
|
|
579
|
+
storeUpdates: Subscription.persistent(Stream.concat(Stream.fromEffect(SubscriptionRef.get(store.stateRef).pipe(Effect.map(state => __foldkitBrandViewResult((ReceivedStoreUpdate(toDisplayState(state))), "@foldkit/devtools/overlay.js#anonymous~42")))), Stream.map(SubscriptionRef.changes(store.stateRef), state => __foldkitBrandViewResult((ReceivedStoreUpdate(toDisplayState(state))), "@foldkit/devtools/overlay.js#anonymous~43")))),
|
|
550
580
|
mobileBreakpoint: Subscription.persistent(Stream.callback(queue => __foldkitBrandViewResult((Effect.acquireRelease(Effect.sync(() => {
|
|
551
581
|
const mediaQuery = window.matchMedia(MOBILE_BREAKPOINT_QUERY);
|
|
552
582
|
const handler = (event) => {
|
|
553
583
|
Queue.offerUnsafe(queue, CrossedMobileBreakpoint({ isMobile: event.matches }));
|
|
554
584
|
};
|
|
555
585
|
mediaQuery.addEventListener('change', handler);
|
|
556
|
-
return __foldkitBrandViewResult(({ mediaQuery, handler }), "@foldkit/devtools/overlay.js#anonymous~
|
|
557
|
-
}), ({ mediaQuery, handler }) => __foldkitBrandViewResult((Effect.sync(() => __foldkitBrandViewResult((mediaQuery.removeEventListener('change', handler)), "@foldkit/devtools/overlay.js#anonymous~
|
|
558
|
-
}), "@foldkit/devtools/overlay.js#anonymous~
|
|
586
|
+
return __foldkitBrandViewResult(({ mediaQuery, handler }), "@foldkit/devtools/overlay.js#anonymous~45");
|
|
587
|
+
}), ({ mediaQuery, handler }) => __foldkitBrandViewResult((Effect.sync(() => __foldkitBrandViewResult((mediaQuery.removeEventListener('change', handler)), "@foldkit/devtools/overlay.js#anonymous~47"))), "@foldkit/devtools/overlay.js#anonymous~46")).pipe(Effect.flatMap(() => __foldkitBrandViewResult((Effect.never), "@foldkit/devtools/overlay.js#anonymous~48")))), "@foldkit/devtools/overlay.js#anonymous~44"))),
|
|
588
|
+
}), "@foldkit/devtools/overlay.js#anonymous~41")));
|
|
559
589
|
return __foldkitBrandViewResult((Subscription.aggregate()(ownSubscriptions, scrubberSubscriptions)), "@foldkit/devtools/overlay.js#makeOverlaySubscriptions");
|
|
560
590
|
};
|
|
561
591
|
// VIEW
|
|
@@ -589,7 +619,7 @@ const makeView = (position, mode, shadow, maybeBanner) => {
|
|
|
589
619
|
let viewWithBuilder;
|
|
590
620
|
return __foldkitBrandViewResult(((model, h) => {
|
|
591
621
|
viewWithBuilder ??= buildOverlayView(position, mode, shadow, maybeBanner, h);
|
|
592
|
-
return __foldkitBrandViewResult((viewWithBuilder(model)), "@foldkit/devtools/overlay.js#anonymous~
|
|
622
|
+
return __foldkitBrandViewResult((viewWithBuilder(model)), "@foldkit/devtools/overlay.js#anonymous~49");
|
|
593
623
|
}), "@foldkit/devtools/overlay.js#makeView");
|
|
594
624
|
};
|
|
595
625
|
const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
@@ -599,7 +629,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
599
629
|
const lazyMessageList = createLazy();
|
|
600
630
|
// JSON TREE
|
|
601
631
|
const leafSpan = (className, text) => __foldkitBrandViewResult((h.span([h.Class(className)], [text])), "@foldkit/devtools/overlay.js#leafSpan");
|
|
602
|
-
const leafValueView = (value) => __foldkitBrandViewResult((M.value(value).pipe(M.when(Predicate.isNull, () => __foldkitBrandViewResult((leafSpan('json-null italic', 'null')), "@foldkit/devtools/overlay.js#anonymous~
|
|
632
|
+
const leafValueView = (value) => __foldkitBrandViewResult((M.value(value).pipe(M.when(Predicate.isNull, () => __foldkitBrandViewResult((leafSpan('json-null italic', 'null')), "@foldkit/devtools/overlay.js#anonymous~50")), M.when(Predicate.isUndefined, () => __foldkitBrandViewResult((leafSpan('json-null italic', 'undefined')), "@foldkit/devtools/overlay.js#anonymous~51")), M.when(Predicate.isString, stringValue => __foldkitBrandViewResult((leafSpan('json-string', `"${stringValue}"`)), "@foldkit/devtools/overlay.js#anonymous~52")), M.when(Predicate.isNumber, numberValue => __foldkitBrandViewResult((leafSpan('json-number', String(numberValue))), "@foldkit/devtools/overlay.js#anonymous~53")), M.when(Predicate.isBoolean, booleanValue => __foldkitBrandViewResult((leafSpan('json-boolean', String(booleanValue))), "@foldkit/devtools/overlay.js#anonymous~54")), M.orElse(unknownValue => __foldkitBrandViewResult((leafSpan('json-null', String(unknownValue))), "@foldkit/devtools/overlay.js#anonymous~55")))), "@foldkit/devtools/overlay.js#leafValueView");
|
|
603
633
|
const keyView = (key) => __foldkitBrandViewResult((h.span([h.Class('json-key')], [`${key}:\u00a0`])), "@foldkit/devtools/overlay.js#keyView");
|
|
604
634
|
const CHEVRON_RIGHT = 'M8.25 4.5l7.5 7.5-7.5 7.5';
|
|
605
635
|
const CHEVRON_DOWN = 'M19.5 8.25l-7.5 7.5-7.5-7.5';
|
|
@@ -673,16 +703,16 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
673
703
|
treePath: `${treePath}.${arrayIndex}`,
|
|
674
704
|
depth: childDepth,
|
|
675
705
|
key: String(arrayIndex),
|
|
676
|
-
})), "@foldkit/devtools/overlay.js#anonymous~
|
|
706
|
+
})), "@foldkit/devtools/overlay.js#anonymous~56"));
|
|
677
707
|
}
|
|
678
708
|
else if (Predicate.isObject(value)) {
|
|
679
|
-
pipe(value, Record.toEntries, Array_.filter(([entryKey]) => __foldkitBrandViewResult((entryKey !== '_tag'), "@foldkit/devtools/overlay.js#anonymous~
|
|
709
|
+
pipe(value, Record.toEntries, Array_.filter(([entryKey]) => __foldkitBrandViewResult((entryKey !== '_tag'), "@foldkit/devtools/overlay.js#anonymous~57")), Array_.forEach(([entryKey, childValue]) => __foldkitBrandViewResult((flattenTree({
|
|
680
710
|
...shared,
|
|
681
711
|
value: childValue,
|
|
682
712
|
treePath: `${treePath}.${entryKey}`,
|
|
683
713
|
depth: childDepth,
|
|
684
714
|
key: entryKey,
|
|
685
|
-
})), "@foldkit/devtools/overlay.js#anonymous~
|
|
715
|
+
})), "@foldkit/devtools/overlay.js#anonymous~58")));
|
|
686
716
|
}
|
|
687
717
|
};
|
|
688
718
|
const flatNodeView = (value, treePath, depth, key, nodeIsExpandable, isExpanded, isChanged, isAffected, isRoot, tag) => {
|
|
@@ -700,7 +730,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
700
730
|
'diff-changed': isChanged,
|
|
701
731
|
})),
|
|
702
732
|
indent,
|
|
703
|
-
], rowSegments.map(segment => __foldkitBrandViewResult((h.keyed('li')(segment._tag, [h.Class('contents')], [rowSegmentView(segment)])), "@foldkit/devtools/overlay.js#anonymous~
|
|
733
|
+
], rowSegments.map(segment => __foldkitBrandViewResult((h.keyed('li')(segment._tag, [h.Class('contents')], [rowSegmentView(segment)])), "@foldkit/devtools/overlay.js#anonymous~59")))), "@foldkit/devtools/overlay.js#flatNodeView");
|
|
704
734
|
}
|
|
705
735
|
const preview = isExpanded
|
|
706
736
|
? Array.isArray(value)
|
|
@@ -722,7 +752,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
722
752
|
})),
|
|
723
753
|
indent,
|
|
724
754
|
...(isRoot ? [] : [h.OnClick(ToggledTreeNode({ path: treePath }))]),
|
|
725
|
-
], rowSegments.map(segment => __foldkitBrandViewResult((h.keyed('li')(segment._tag, [h.Class('contents')], [rowSegmentView(segment)])), "@foldkit/devtools/overlay.js#anonymous~
|
|
755
|
+
], rowSegments.map(segment => __foldkitBrandViewResult((h.keyed('li')(segment._tag, [h.Class('contents')], [rowSegmentView(segment)])), "@foldkit/devtools/overlay.js#anonymous~60")))), "@foldkit/devtools/overlay.js#flatNodeView");
|
|
726
756
|
};
|
|
727
757
|
const renderFlatNode = (node) => __foldkitBrandViewResult((lazyTreeNode(node.treePath, flatNodeView, [
|
|
728
758
|
node.value,
|
|
@@ -746,7 +776,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
746
776
|
changedPaths,
|
|
747
777
|
affectedPaths,
|
|
748
778
|
depth: 0,
|
|
749
|
-
key: Option.getOrElse(maybeRootLabel, () => __foldkitBrandViewResult((''), "@foldkit/devtools/overlay.js#anonymous~
|
|
779
|
+
key: Option.getOrElse(maybeRootLabel, () => __foldkitBrandViewResult((''), "@foldkit/devtools/overlay.js#anonymous~61")),
|
|
750
780
|
accumulator: nodes,
|
|
751
781
|
indentRootChildren,
|
|
752
782
|
});
|
|
@@ -769,8 +799,8 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
769
799
|
const remainingMs = delta % MILLIS_PER_SECOND;
|
|
770
800
|
return __foldkitBrandViewResult((seconds > 0
|
|
771
801
|
? `+${seconds}s ${remainingMs.toFixed(1)}ms`
|
|
772
|
-
: `+${remainingMs.toFixed(1)}ms`), "@foldkit/devtools/overlay.js#anonymous~
|
|
773
|
-
}), Option.getOrElse(() => __foldkitBrandViewResult((''), "@foldkit/devtools/overlay.js#anonymous~
|
|
802
|
+
: `+${remainingMs.toFixed(1)}ms`), "@foldkit/devtools/overlay.js#anonymous~62");
|
|
803
|
+
}), Option.getOrElse(() => __foldkitBrandViewResult((''), "@foldkit/devtools/overlay.js#anonymous~63")))), "@foldkit/devtools/overlay.js#inspectedTimestamp");
|
|
774
804
|
};
|
|
775
805
|
const emptyInspectorView = h.div([
|
|
776
806
|
h.Class('flex-1 flex items-center justify-center text-dt-muted text-2xs font-mono min-w-0'),
|
|
@@ -834,7 +864,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
834
864
|
onEmpty: () => __foldkitBrandViewResult((INIT_INDEX), "@foldkit/devtools/overlay.js#onEmpty~4"),
|
|
835
865
|
onNonEmpty: () => __foldkitBrandViewResult((model.startIndex + model.entries.length - 1), "@foldkit/devtools/overlay.js#onNonEmpty~4"),
|
|
836
866
|
});
|
|
837
|
-
return __foldkitBrandViewResult((M.value(mode).pipe(M.when('TimeTravel', () => __foldkitBrandViewResult((model.isPaused ? model.pausedAtIndex : lastIndex), "@foldkit/devtools/overlay.js#anonymous~
|
|
867
|
+
return __foldkitBrandViewResult((M.value(mode).pipe(M.when('TimeTravel', () => __foldkitBrandViewResult((model.isPaused ? model.pausedAtIndex : lastIndex), "@foldkit/devtools/overlay.js#anonymous~64")), M.when('Inspect', () => __foldkitBrandViewResult((model.selectedIndex), "@foldkit/devtools/overlay.js#anonymous~65")), M.exhaustive)), "@foldkit/devtools/overlay.js#selectedHistoryIndex");
|
|
838
868
|
};
|
|
839
869
|
const selectedCommands = (model) => {
|
|
840
870
|
const selectedIndex = selectedHistoryIndex(model);
|
|
@@ -842,7 +872,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
842
872
|
return __foldkitBrandViewResult((model.initCommands), "@foldkit/devtools/overlay.js#selectedCommands");
|
|
843
873
|
}
|
|
844
874
|
else {
|
|
845
|
-
return __foldkitBrandViewResult((pipe(model.entries, Array_.get(selectedIndex - model.startIndex), Option.map(entry => __foldkitBrandViewResult((entry.commands), "@foldkit/devtools/overlay.js#anonymous~
|
|
875
|
+
return __foldkitBrandViewResult((pipe(model.entries, Array_.get(selectedIndex - model.startIndex), Option.map(entry => __foldkitBrandViewResult((entry.commands), "@foldkit/devtools/overlay.js#anonymous~66")), Option.getOrElse(() => __foldkitBrandViewResult((NO_COMMANDS), "@foldkit/devtools/overlay.js#anonymous~67")))), "@foldkit/devtools/overlay.js#selectedCommands");
|
|
846
876
|
}
|
|
847
877
|
};
|
|
848
878
|
const flattenCommand = (command, index, expandedPaths) => {
|
|
@@ -875,7 +905,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
875
905
|
], Array_.map(commandList, (command, index) => __foldkitBrandViewResult((h.div([h.Class('flex items-start px-2 py-1 border-b gap-1.5')], [
|
|
876
906
|
h.span([h.Class(indexClass)], [String(index + 1)]),
|
|
877
907
|
h.div([h.Class('flex flex-col flex-1 min-w-0')], Array_.map(flattenCommand(command, index, expandedPaths), renderFlatNode)),
|
|
878
|
-
])), "@foldkit/devtools/overlay.js#anonymous~
|
|
908
|
+
])), "@foldkit/devtools/overlay.js#anonymous~68")))), "@foldkit/devtools/overlay.js#onNonEmpty~5"),
|
|
879
909
|
})), "@foldkit/devtools/overlay.js#commandsTabContent");
|
|
880
910
|
const selectedMountActivity = (model) => {
|
|
881
911
|
const selectedIndex = selectedHistoryIndex(model);
|
|
@@ -920,7 +950,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
920
950
|
...Array_.map(mounts, (mount, index) => __foldkitBrandViewResult((h.div([h.Class('flex items-start px-2 py-1 border-b gap-1.5')], [
|
|
921
951
|
h.span([h.Class(indexClass)], [String(index + 1)]),
|
|
922
952
|
h.div([h.Class('flex flex-col flex-1 min-w-0')], Array_.map(flattenMount(mount, label, index, expandedPaths), renderFlatNode)),
|
|
923
|
-
])), "@foldkit/devtools/overlay.js#anonymous~
|
|
953
|
+
])), "@foldkit/devtools/overlay.js#anonymous~69")),
|
|
924
954
|
])), "@foldkit/devtools/overlay.js#mountListSection");
|
|
925
955
|
const mountsTabContent = (starts, ends, expandedPaths) => {
|
|
926
956
|
const hasAny = Array_.isReadonlyArrayNonEmpty(starts) ||
|
|
@@ -946,22 +976,22 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
946
976
|
model.expandedPaths,
|
|
947
977
|
model.changedPaths,
|
|
948
978
|
model.affectedPaths,
|
|
949
|
-
])), "@foldkit/devtools/overlay.js#anonymous~
|
|
979
|
+
])), "@foldkit/devtools/overlay.js#anonymous~70")), M.when('Message', () => __foldkitBrandViewResult((lazyTabContent('Message', messageTabContent, [
|
|
950
980
|
model.maybeInspectedMessage,
|
|
951
981
|
model.maybeSubmodelFilter,
|
|
952
982
|
model.isFlattened,
|
|
953
983
|
model.expandedPaths,
|
|
954
984
|
inspectedTimestamp(model),
|
|
955
|
-
])), "@foldkit/devtools/overlay.js#anonymous~
|
|
985
|
+
])), "@foldkit/devtools/overlay.js#anonymous~71")), M.when('Commands', () => __foldkitBrandViewResult((lazyTabContent('Commands', commandsTabContent, [
|
|
956
986
|
selectedCommands(model),
|
|
957
987
|
model.expandedPaths,
|
|
958
|
-
])), "@foldkit/devtools/overlay.js#anonymous~
|
|
988
|
+
])), "@foldkit/devtools/overlay.js#anonymous~72")), M.when('Mounts', () => {
|
|
959
989
|
const { starts, ends } = selectedMountActivity(model);
|
|
960
990
|
return __foldkitBrandViewResult((lazyTabContent('Mounts', mountsTabContent, [
|
|
961
991
|
starts,
|
|
962
992
|
ends,
|
|
963
993
|
model.expandedPaths,
|
|
964
|
-
])), "@foldkit/devtools/overlay.js#anonymous~
|
|
994
|
+
])), "@foldkit/devtools/overlay.js#anonymous~73");
|
|
965
995
|
}), M.exhaustive)), "@foldkit/devtools/overlay.js#inspectorTabContent");
|
|
966
996
|
const inspectorPaneView = (model) => __foldkitBrandViewResult((h.div([
|
|
967
997
|
h.Class('flex flex-col border-l min-w-0 min-h-0 flex-1 dt-inspector-pane'),
|
|
@@ -980,7 +1010,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
980
1010
|
h.Class(clsx('dt-tab-button cursor-pointer text-base font-mono px-3 py-1', tab.isActive
|
|
981
1011
|
? 'text-dt dt-tab-active'
|
|
982
1012
|
: 'text-dt-muted')),
|
|
983
|
-
], [h.span([], [tab.value])])), "@foldkit/devtools/overlay.js#anonymous~
|
|
1013
|
+
], [h.span([], [tab.value])])), "@foldkit/devtools/overlay.js#anonymous~74"))),
|
|
984
1014
|
...tabs.map(tab => __foldkitBrandViewResult((h.div([
|
|
985
1015
|
...tab.panel,
|
|
986
1016
|
h.Class('flex flex-col flex-1 min-h-0 min-w-0'),
|
|
@@ -993,7 +1023,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
993
1023
|
onNone: () => __foldkitBrandViewResult((emptyInspectorView), "@foldkit/devtools/overlay.js#onNone~10"),
|
|
994
1024
|
onSome: inspectedModel => __foldkitBrandViewResult((inspectorTabContent(model, tab.value, inspectedModel)), "@foldkit/devtools/overlay.js#onSome~7"),
|
|
995
1025
|
}),
|
|
996
|
-
])), "@foldkit/devtools/overlay.js#anonymous~
|
|
1026
|
+
])), "@foldkit/devtools/overlay.js#anonymous~75")),
|
|
997
1027
|
])), "@foldkit/devtools/overlay.js#toView"),
|
|
998
1028
|
},
|
|
999
1029
|
toParentMessage: message => __foldkitBrandViewResult((GotInspectorTabsMessage({ message })), "@foldkit/devtools/overlay.js#toParentMessage~2"),
|
|
@@ -1070,7 +1100,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
1070
1100
|
view: SubmodelFilterListbox.view,
|
|
1071
1101
|
viewInputs: {
|
|
1072
1102
|
items: [ALL_MESSAGES_VALUE, ...model.submodelTags],
|
|
1073
|
-
maybeSelectedValue: Option.orElseSome(model.maybeSubmodelFilter, () => __foldkitBrandViewResult((ALL_MESSAGES_VALUE), "@foldkit/devtools/overlay.js#anonymous~
|
|
1103
|
+
maybeSelectedValue: Option.orElseSome(model.maybeSubmodelFilter, () => __foldkitBrandViewResult((ALL_MESSAGES_VALUE), "@foldkit/devtools/overlay.js#anonymous~76")),
|
|
1074
1104
|
itemToConfig: item => (__foldkitBrandViewResult(({
|
|
1075
1105
|
className: 'dt-filter-item',
|
|
1076
1106
|
content: h.div([h.Class('flex items-center gap-2')], [checkIconView, h.span([], [filterItemLabel(item)])]),
|
|
@@ -1136,14 +1166,14 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
1136
1166
|
: {
|
|
1137
1167
|
status: h.span([h.Class(`${statusClass} text-dt-live font-medium`)], ['Live']),
|
|
1138
1168
|
maybeAction: Option.none(),
|
|
1139
|
-
}), "@foldkit/devtools/overlay.js#anonymous~
|
|
1169
|
+
}), "@foldkit/devtools/overlay.js#anonymous~77")), M.when('Inspect', () => (__foldkitBrandViewResult(({
|
|
1140
1170
|
status: h.span([h.Class(`${statusClass} text-dt-accent`)], [
|
|
1141
1171
|
model.selectedIndex === INIT_INDEX
|
|
1142
1172
|
? 'Inspecting (init)'
|
|
1143
1173
|
: `Inspecting (${model.selectedIndex + 1})`,
|
|
1144
1174
|
]),
|
|
1145
1175
|
maybeAction: OptionExt.when(!model.isFollowingLatest, h.button([h.Class(actionButtonClass), h.OnClick(ClickedFollowLatest())], ['Follow Latest →'])),
|
|
1146
|
-
}), "@foldkit/devtools/overlay.js#anonymous~
|
|
1176
|
+
}), "@foldkit/devtools/overlay.js#anonymous~78"))), M.exhaustive);
|
|
1147
1177
|
const maybeClearHistoryButton = OptionExt.when(!model.isPaused, clearHistoryButton());
|
|
1148
1178
|
return __foldkitBrandViewResult((h.header([h.Class(headerClass)], [
|
|
1149
1179
|
status,
|
|
@@ -1194,7 +1224,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
1194
1224
|
}));
|
|
1195
1225
|
const isInitSelected = selectedIndex === INIT_INDEX;
|
|
1196
1226
|
const isFiltered = Option.isSome(maybeFilterTag);
|
|
1197
|
-
const leafOrTag = (entry) => __foldkitBrandViewResult((Option.getOrElse(entry.maybeLeafTag, () => __foldkitBrandViewResult((entry.tag), "@foldkit/devtools/overlay.js#anonymous~
|
|
1227
|
+
const leafOrTag = (entry) => __foldkitBrandViewResult((Option.getOrElse(entry.maybeLeafTag, () => __foldkitBrandViewResult((entry.tag), "@foldkit/devtools/overlay.js#anonymous~79"))), "@foldkit/devtools/overlay.js#leafOrTag");
|
|
1198
1228
|
const displayTagFor = (entry) => {
|
|
1199
1229
|
if (isFlattened) {
|
|
1200
1230
|
return __foldkitBrandViewResult((leafOrTag(entry)), "@foldkit/devtools/overlay.js#displayTagFor");
|
|
@@ -1202,15 +1232,15 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
1202
1232
|
else {
|
|
1203
1233
|
return __foldkitBrandViewResult((Option.match(maybeFilterTag, {
|
|
1204
1234
|
onNone: () => __foldkitBrandViewResult((entry.tag), "@foldkit/devtools/overlay.js#onNone~13"),
|
|
1205
|
-
onSome: filterTag => __foldkitBrandViewResult((pipe(entry.submodelPath, Array_.findFirstIndex(pathTag => __foldkitBrandViewResult((pathTag === filterTag), "@foldkit/devtools/overlay.js#anonymous~
|
|
1235
|
+
onSome: filterTag => __foldkitBrandViewResult((pipe(entry.submodelPath, Array_.findFirstIndex(pathTag => __foldkitBrandViewResult((pathTag === filterTag), "@foldkit/devtools/overlay.js#anonymous~80")), Option.flatMap(filterIndex => __foldkitBrandViewResult((Array_.get(entry.submodelPath, Number_.increment(filterIndex))), "@foldkit/devtools/overlay.js#anonymous~81")), Option.orElse(() => __foldkitBrandViewResult((entry.maybeLeafTag), "@foldkit/devtools/overlay.js#anonymous~82")), Option.getOrElse(() => __foldkitBrandViewResult((entry.tag), "@foldkit/devtools/overlay.js#anonymous~83")))), "@foldkit/devtools/overlay.js#onSome~9"),
|
|
1206
1236
|
})), "@foldkit/devtools/overlay.js#displayTagFor");
|
|
1207
1237
|
}
|
|
1208
1238
|
};
|
|
1209
1239
|
const indexedEntries = pipe(entries, Array_.map((entry, arrayIndex) => (__foldkitBrandViewResult(({
|
|
1210
1240
|
entry,
|
|
1211
1241
|
absoluteIndex: startIndex + arrayIndex,
|
|
1212
|
-
}), "@foldkit/devtools/overlay.js#anonymous~
|
|
1213
|
-
? Array_.filter(({ entry }) => __foldkitBrandViewResult((Array_.contains(entry.submodelPath, maybeFilterTag.value)), "@foldkit/devtools/overlay.js#anonymous~
|
|
1242
|
+
}), "@foldkit/devtools/overlay.js#anonymous~84"))), isFiltered
|
|
1243
|
+
? Array_.filter(({ entry }) => __foldkitBrandViewResult((Array_.contains(entry.submodelPath, maybeFilterTag.value)), "@foldkit/devtools/overlay.js#anonymous~85"))
|
|
1214
1244
|
: Function.identity);
|
|
1215
1245
|
const messageRows = pipe(indexedEntries, Array_.map(({ entry, absoluteIndex }) => {
|
|
1216
1246
|
const isSelected = selectedIndex === absoluteIndex;
|
|
@@ -1223,11 +1253,11 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
1223
1253
|
isPausedHere,
|
|
1224
1254
|
entry.timestamp - baseTimestamp,
|
|
1225
1255
|
entry.isModelChanged,
|
|
1226
|
-
])), "@foldkit/devtools/overlay.js#anonymous~
|
|
1256
|
+
])), "@foldkit/devtools/overlay.js#anonymous~86");
|
|
1227
1257
|
}), Array_.reverse);
|
|
1228
1258
|
return __foldkitBrandViewResult((h.ul([
|
|
1229
1259
|
h.Class('message-list flex-1 overflow-y-auto min-h-0 overscroll-none'),
|
|
1230
|
-
h.OnScroll(scrollTop => __foldkitBrandViewResult((ScrolledMessageList({ scrollTop })), "@foldkit/devtools/overlay.js#anonymous~
|
|
1260
|
+
h.OnScroll(scrollTop => __foldkitBrandViewResult((ScrolledMessageList({ scrollTop })), "@foldkit/devtools/overlay.js#anonymous~87")),
|
|
1231
1261
|
], isFiltered
|
|
1232
1262
|
? messageRows
|
|
1233
1263
|
: [
|
|
@@ -1340,13 +1370,13 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
1340
1370
|
inspectorPaneView(model),
|
|
1341
1371
|
])), "@foldkit/devtools/overlay.js#messagesScreenView");
|
|
1342
1372
|
};
|
|
1343
|
-
const contentView = (model) => __foldkitBrandViewResult((M.value(model.screen).pipe(M.withReturnType(), M.when('Messages', () => __foldkitBrandViewResult((messagesScreenView(model)), "@foldkit/devtools/overlay.js#anonymous~
|
|
1373
|
+
const contentView = (model) => __foldkitBrandViewResult((M.value(model.screen).pipe(M.withReturnType(), M.when('Messages', () => __foldkitBrandViewResult((messagesScreenView(model)), "@foldkit/devtools/overlay.js#anonymous~88")), M.when('Settings', () => __foldkitBrandViewResult((settingsScreenView(model)), "@foldkit/devtools/overlay.js#anonymous~89")), M.exhaustive)), "@foldkit/devtools/overlay.js#contentView");
|
|
1344
1374
|
const panelView = (model) => __foldkitBrandViewResult((h.div([
|
|
1345
1375
|
h.Class(clsx('fixed dt-panel dt-panel-wide bg-dt-bg border rounded-lg flex flex-col overflow-hidden font-mono text-dt', PANEL_POSITION_CLASS[position])),
|
|
1346
1376
|
], [
|
|
1347
1377
|
...Option.map(maybeBanner, banner => __foldkitBrandViewResult((h.div([
|
|
1348
1378
|
h.Class('px-3 py-2 border-b text-sm text-dt-muted font-mono shrink-0 leading-snug'),
|
|
1349
|
-
], [banner])), "@foldkit/devtools/overlay.js#anonymous~
|
|
1379
|
+
], [banner])), "@foldkit/devtools/overlay.js#anonymous~90")).pipe(Option.toArray),
|
|
1350
1380
|
headerView(model),
|
|
1351
1381
|
contentView(model),
|
|
1352
1382
|
footerView(model),
|
|
@@ -1356,7 +1386,7 @@ const buildOverlayView = (position, mode, shadow, maybeBanner, h) => {
|
|
|
1356
1386
|
...OptionExt.when(model.isPaused && mode === 'TimeTravel', interactionBlocker()).pipe(Option.toArray),
|
|
1357
1387
|
...OptionExt.when(model.isOpen, panelView(model)).pipe(Option.toArray),
|
|
1358
1388
|
badgeView(model),
|
|
1359
|
-
])), "@foldkit/devtools/overlay.js#anonymous~
|
|
1389
|
+
])), "@foldkit/devtools/overlay.js#anonymous~91")), "@foldkit/devtools/overlay.js#buildOverlayView");
|
|
1360
1390
|
};
|
|
1361
1391
|
// CREATE
|
|
1362
1392
|
const createShadowContainer = () => {
|
|
@@ -1384,9 +1414,9 @@ const createShadowContainer = () => {
|
|
|
1384
1414
|
return __foldkitBrandViewResult(({ container, shadow }), "@foldkit/devtools/overlay.js#createShadowContainer");
|
|
1385
1415
|
};
|
|
1386
1416
|
export const createOverlay = (store, position, mode, maybeBanner) => __foldkitBrandViewResult((Effect.gen(function* () {
|
|
1387
|
-
const { container, shadow } = yield* Effect.acquireRelease(Effect.sync(() => __foldkitBrandViewResult((createShadowContainer()), "@foldkit/devtools/overlay.js#anonymous~
|
|
1417
|
+
const { container, shadow } = yield* Effect.acquireRelease(Effect.sync(() => __foldkitBrandViewResult((createShadowContainer()), "@foldkit/devtools/overlay.js#anonymous~94")), createdShadowContainer => __foldkitBrandViewResult((Effect.sync(() => {
|
|
1388
1418
|
createdShadowContainer.shadow.host.remove();
|
|
1389
|
-
})), "@foldkit/devtools/overlay.js#anonymous~
|
|
1419
|
+
})), "@foldkit/devtools/overlay.js#anonymous~95"));
|
|
1390
1420
|
container.id = '__foldkit_devtools_overlay__';
|
|
1391
1421
|
const flags = Effect.gen(function* () {
|
|
1392
1422
|
const storeState = yield* SubscriptionRef.get(store.stateRef);
|
|
@@ -1396,7 +1426,7 @@ export const createOverlay = (store, position, mode, maybeBanner) => __foldkitBr
|
|
|
1396
1426
|
isMobile: window.matchMedia(MOBILE_BREAKPOINT_QUERY).matches,
|
|
1397
1427
|
isFlattened,
|
|
1398
1428
|
...toDisplayState(storeState),
|
|
1399
|
-
}), "@foldkit/devtools/overlay.js#anonymous~
|
|
1429
|
+
}), "@foldkit/devtools/overlay.js#anonymous~97");
|
|
1400
1430
|
});
|
|
1401
1431
|
const init = (flags) => {
|
|
1402
1432
|
const { isFlattened, ...displayFlags } = flags;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@foldkit/devtools",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.137.0",
|
|
4
4
|
"description": "In-browser DevTools overlay for Foldkit applications",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -31,9 +31,9 @@
|
|
|
31
31
|
"rimraf": "^6.1.3",
|
|
32
32
|
"typescript": "^6.0.3",
|
|
33
33
|
"vitest": "^4.1.9",
|
|
34
|
-
"@foldkit/ui": "0.
|
|
34
|
+
"@foldkit/ui": "0.137.0",
|
|
35
35
|
"@foldkit/vite-plugin": "0.11.3",
|
|
36
|
-
"foldkit": "0.
|
|
36
|
+
"foldkit": "0.137.0"
|
|
37
37
|
},
|
|
38
38
|
"keywords": [
|
|
39
39
|
"foldkit",
|