_getMetaData() {
    if (!('meta' in this.shape && !isPlainObject(this.shape.meta))) {
      return {};
    }

    const metaFile = isString(this.shape.meta) ? path.resolve(this.shape.meta) : null;
    let meta = metaFile;
    let stat = meta ? fs.lstatSync(meta) : null;

    if (!stat) {
      return {};
    }

    if (stat.isSymbolicLink()) {
      meta = fs.readlinkSync(meta);
      stat = fs.statSync(meta);
    }

    meta = stat.isFile() ? fs.readFileSync(meta, 'utf8') : null;
    meta = meta ? yaml.load(meta) : {};

    const result = {};

    for (const [m, value] of Object.entries(meta)) {
      if (isPlainObject(value)) {
        const { title, description } = value;
        const file = path.join(path.dirname(m), path.basename(m, '.svg'));
        result[file] = { title, description };
      }
    }

    this.log.debug('Processed meta data file "%s"', path.basename(metaFile));

    return result;
  }
Creating meta data

@returns {object} updated meta data
@private