Skip to content

Commit e5539f4

Browse files
fix(overmind-devtools-client): properly show lazy derived
1 parent 84fdb00 commit e5539f4

File tree

7 files changed

+19
-6
lines changed

7 files changed

+19
-6
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ lib
1212
.cache
1313
.DS_Store
1414
devtoolsDist
15+
packages/overmind-website
1516

1617
# Runtime data
1718
pids

packages/node_modules/overmind-devtools-client/src/components/Console/styles.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ import { css } from 'emotion'
22

33
export const wrapper = css({
44
overflowY: 'scroll',
5-
height: '100%',
5+
height: '100vh',
66
})

packages/node_modules/overmind-devtools-client/src/overmind/actions.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ export const setAppDataFromStorage: AsyncAction<{
235235
effects.storage.get<string>(`${appName}.selectedActionQuery`),
236236
effects.storage.get<string>(`${appName}.actionQueryPayload`),
237237
effects.storage.get<Tab>(`${appName}.currentTab`),
238-
]).then(([selectedActionQuery, actionQueryPayload, tab]) => {
238+
]).then(([selectedActionQuery, actionQueryPayload, tab]: [string, string, Tab]) => {
239239
const actionQuery =
240240
selectedActionQuery && actions.includes(selectedActionQuery)
241241
? selectedActionQuery

packages/node_modules/overmind-devtools-client/src/overmind/operators.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -154,12 +154,14 @@ export const removeComponent: () => Operator<RemoveComponentMessage> = () =>
154154
export const updateDerived: () => Operator<DerivedMessage> = () =>
155155
mutate(({ state }, message) => {
156156
const appState = state.apps[message.appName].state
157-
const path = message.data.path.split('.')
157+
const path = message.data.path.slice()
158158
const key = path.pop()
159159
const target = path.reduce((aggr, pathKey) => aggr[pathKey], appState)
160160
target[key] = message.data.value
161161

162-
state.apps[message.appName].derived[message.data.path] = message.data
162+
state.apps[message.appName].derived[message.data.path.join('.')] = message.data
163+
164+
console.log(state.apps[message.appName].derived)
163165
})
164166

165167
export const updateFlushWithDerived: () => Operator<DirtyDerivedMessage> = () =>

packages/node_modules/overmind-devtools-client/src/overmind/types.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,7 @@ export type UpdateComponentMessage = AppMessage<{
273273
export type RemoveComponentMessage = AddComponentMessage
274274

275275
export type DerivedMessage = AppMessage<{
276-
path: string
276+
path: string[]
277277
paths: string[]
278278
updateCount: number
279279
value: any

packages/node_modules/overmind/src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ export const derived = <D extends IDerive<any, any, any>>(cb: D): D extends IDer
7979
* typing and then they can import `Action`, `Operation` etc. directly from
8080
* overmind.
8181
*/
82-
export interface Config extends IConfiguration {}
82+
export interface Config {}
8383

8484
export interface Context extends IContext<Config> {}
8585

packages/node_modules/proxy-state-tree/src/Proxyfier.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -341,6 +341,16 @@ export class Proxifier {
341341
const mutationTree = proxifier.getMutationTree()
342342
const existingValue = target[prop]
343343

344+
if (typeof value === 'function' && proxifier.tree.master.options.onFunction) {
345+
const result = proxifier.tree.master.options.onFunction(
346+
proxifier.tree,
347+
nestedPath,
348+
value
349+
)
350+
351+
value = result.func
352+
}
353+
344354
mutationTree.addMutation(
345355
{
346356
method: 'set',

0 commit comments

Comments
 (0)