code: function () {
              var result,
                  extensions = this.props.extensions;
  
              if (extensions && extensions.get("icons")) {
                  var data = this.getDataForExtension();
                  result = extensions.get("icons").map(function (callback) {
                      try {
                          var result = callback(data);
                          if (result && !Preact.isValidElement(result)) {
                              result = Preact.DOM.span({
                                  dangerouslySetInnerHTML: {
                                      __html: $(result)[0].outerHTML
                                  }
                              });
                          }
                          return result;  // by this point, returns either undefined or a Preact object
                      } catch (e) {
                          console.error("Exception thrown in FileTreeView icon provider: " + e, e.stack);
                      }
                  }).filter(isDefined).toArray();
              }
  
              if (!result || result.length === 0) {
                  result = [DOM.ins({
                      className: "jstree-icon"
                  }, " ")];
              }
              return result;
          }
docs: Calls the icon providers to get the collection of icons (most likely just one) for
  the current file or directory.
  
  @return {Array.<PreactComponent>} icon components to render