code: function (opts) {
              var self = this;
              opts.meta.files = [];
              Y.each(this.data.files, function (v) {
                  if (v.external) {
                      return;
                  }
                  opts.meta.files.push({
                      displayName: v.name,
                      name: self.filterFileName(v.name),
                      path: v.path || v.name
                  });
              });
  
              var tree = {};
              var files = [];
              Y.each(this.data.files, function (v) {
                  if (v.external) {
                      return;
                  }
                  files.push(v.name);
              });
              files.sort();
              Y.each(files, function (v) {
                  var p = v.split('/'),
                      par;
                  p.forEach(function (i, k) {
                      if (!par) {
                          if (!tree[i]) {
                              tree[i] = {};
                          }
                          par = tree[i];
                      } else {
                          if (!par[i]) {
                              par[i] = {};
                          }
                          if (k + 1 === p.length) {
                              par[i] = {
                                  path: v,
                                  name: self.filterFileName(v)
                              };
                          }
                          par = par[i];
                      }
                  });
              });
  
              opts.meta.fileTree = tree;
  
              return opts;
          }
docs: Populate the meta data for files
  @method populateFiles
  @param {Object} opts The original options
  @return {Object} The modified options