Files snapshot from ui-experiment

./js_templates/branches.ts

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
cea1ef Tucker McKnight
cea1ef Tucker McKnight
cea1ef Tucker McKnight
cea1ef Tucker McKnight
cea1ef Tucker McKnight
cea1ef Tucker McKnight
cea1ef Tucker McKnight
d44a18 Tucker McKnight
cea1ef Tucker McKnight
cea1ef Tucker McKnight
cea1ef Tucker McKnight
cea1ef Tucker McKnight
cea1ef Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
d44a18 Tucker McKnight
import {NavHelper} from './helpers/nav.ts'

export default async (
  eleventyConfig: any,
  data: any,
  nav: ReturnType<typeof NavHelper>
) => {
  const slugify = eleventyConfig.getFilter("slugify")

  return `
    <div class="d-flex flex-wrap">
      ${data.branches.map((branch) => {
        return `
          ${branch.repoName === data.branchInfo.repoName
            ? `
              <div class="card bezel-gray m-2 flex-grow-1" style="flex-basis: 20rem; max-width: 20rem;">
                <div class="card-header">
                  <a class="card-title" href="${data.reposPath}/${slugify(branch.repoName)}/branches/${slugify(branch.branchName)}">${branch.branchName}</a>
                  ${branch.branchName === data.branchInfo.branchName ? '<div class="badge rounded-pill bg-secondary mx-1">current</div>' : ''}
                  ${branch.branchName === data.reposConfig.repos[branch.repoName].defaultBranch ? '<div class="badge rounded-pill bg-info text-dark mx-1">default</div>' : ''}
                </div>
                <div class="card-body">Data about branch goes here</div>
              </div>
            `
            : ''
          }
        `
      }).join('')}
    </div>
  `
}