code: function nodeLoadProperties(node: Node, actor) {
    return async ({ dispatch, client, getState }: ThunkArg) => {
      const state = getState();
      const loadedProperties = getLoadedProperties(state);
      if (loadedProperties.has(node.path)) {
        return;
      }
  
      try {
        const properties = await loadItemProperties(
          node,
          client.createObjectClient,
          client.createLongStringClient,
          loadedProperties
        );
  
        dispatch(nodePropertiesLoaded(node, actor, properties));
      } catch (e) {
        console.error(e);
      }
    };
  }
docs: /*
  This action checks if we need to fetch properties, entries, prototype and
  symbols for a given node. If we do, it will call the appropriate ObjectClient
  functions.