How to use the netlify-cms-lib-util.getCollectionDepth function in netlify-cms-lib-util

To help you get started, we’ve selected a few netlify-cms-lib-util examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github netlify / netlify-cms / packages / netlify-cms-backend-test / src / implementation.js View on Github external
const newIndex = (() => {
      if (action === 'next') {
        return index + 1;
      }
      if (action === 'prev') {
        return index - 1;
      }
      if (action === 'first') {
        return 0;
      }
      if (action === 'last') {
        return pageCount;
      }
    })();
    // TODO: stop assuming cursors are for collections
    const depth = getCollectionDepth(collection);
    const allEntries = getFolderEntries(
      window.repoFiles,
      collection.get('folder'),
      extension,
      depth,
    );
    const entries = allEntries.slice(newIndex * pageSize, newIndex * pageSize + pageSize);
    const newCursor = getCursor(collection, extension, allEntries, newIndex);
    return Promise.resolve({ entries, cursor: newCursor });
  }
github netlify / netlify-cms / packages / netlify-cms-backend-test / src / implementation.js View on Github external
entriesByFolder(collection, extension) {
    const folder = collection.get('folder');
    const depth = getCollectionDepth(collection);
    const entries = folder ? getFolderEntries(window.repoFiles, folder, extension, depth) : [];
    const cursor = getCursor(collection, extension, entries, 0);
    const ret = take(entries, pageSize);
    ret[CURSOR_COMPATIBILITY_SYMBOL] = cursor;
    return Promise.resolve(ret);
  }
github netlify / netlify-cms / packages / netlify-cms-backend-github / src / implementation.js View on Github external
async entriesByFolder(collection, extension) {
    const repoURL = this.useOpenAuthoring ? this.api.originRepoURL : this.api.repoURL;
    const files = await this.api.listFiles(collection.get('folder'), {
      repoURL,
      depth: getCollectionDepth(collection),
    });
    const filteredFiles = files.filter(file => file.name.endsWith('.' + extension));
    return this.fetchFiles(filteredFiles, { repoURL });
  }
github netlify / netlify-cms / packages / netlify-cms-backend-bitbucket / src / implementation.js View on Github external
entriesByFolder(collection, extension) {
    const listPromise = this.api.listFiles(
      collection.get('folder'),
      getCollectionDepth(collection),
    );
    return resolvePromiseProperties({
      files: listPromise
        .then(({ entries }) => entries)
        .then(filterByPropExtension(extension, 'path'))
        .then(this.fetchFiles),
      cursor: listPromise.then(({ cursor }) => cursor),
    }).then(({ files, cursor }) => {
      files[CURSOR_COMPATIBILITY_SYMBOL] = cursor;
      return files;
    });
  }
github netlify / netlify-cms / packages / netlify-cms-backend-bitbucket / src / implementation.js View on Github external
allEntriesByFolder(collection, extension) {
    return this.api
      .listAllFiles(collection.get('folder'), getCollectionDepth(collection))
      .then(filterByPropExtension(extension, 'path'))
      .then(this.fetchFiles);
  }
github netlify / netlify-cms / packages / netlify-cms-backend-gitlab / src / implementation.js View on Github external
entriesByFolder(collection, extension) {
    const depth = getCollectionDepth(collection);
    const folder = collection.get('folder');
    return this.api.listFiles(folder, depth > 1).then(({ files, cursor }) =>
      this.fetchFiles(files.filter(file => this.filterFile(folder, file, extension, depth))).then(
        fetchedFiles => {
          const returnedFiles = fetchedFiles;
          returnedFiles[CURSOR_COMPATIBILITY_SYMBOL] = cursor;
          return returnedFiles;
        },
      ),
    );
  }
github netlify / netlify-cms / packages / netlify-cms-backend-gitlab / src / implementation.js View on Github external
allEntriesByFolder(collection, extension) {
    const depth = getCollectionDepth(collection);
    const folder = collection.get('folder');
    return this.api
      .listAllFiles(folder, depth > 1)
      .then(files =>
        this.fetchFiles(files.filter(file => this.filterFile(folder, file, extension, depth))),
      );
  }