diff --git a/.github/workflows/build-search.yaml b/.github/workflows/build-search.yaml
new file mode 100644
index 0000000..505ed30
--- /dev/null
+++ b/.github/workflows/build-search.yaml
@@ -0,0 +1,57 @@
+name: build-search-indices
+
+on:
+ pull_request:
+ types: [closed]
+ branches:
+ - main
+
+# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
+permissions:
+ contents: write
+ pages: write
+ pull-requests: write
+ id-token: write
+
+# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
+# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
+concurrency:
+ group: "pages"
+ cancel-in-progress: false
+
+jobs:
+ buildSearch:
+ runs-on: ubuntu-latest
+ if: ${{ ! contains(github.event.head_commit.message, 'Automate update') }}
+ steps:
+ - uses: actions/checkout@v4
+ # Uses the private access token from above link
+ with:
+ fetch-depth: 0
+ token: ${{ secrets.GH_SUBMODULE_SECRET }}
+
+ - name: Restore timestamps
+ uses: chetan/git-restore-mtime-action@v1
+
+ - name: Pull latest changes
+ run: git pull origin main -X theirs
+
+ - name: Setup Node.js
+ uses: actions/setup-node@v4
+ with:
+ node-version: '20'
+
+ - name: Install dependencies
+ run: npm ci
+
+ - name: Build search
+ run: npm run search
+
+ - name: Commit & push changes
+ run: |
+ git config --global user.email "actions@github.com"
+ git config --global user.name "GitHub Actions - build search index"
+ git status
+ git add .
+ git commit -m "Automate update site-search-data.json"
+ git push origin main
\ No newline at end of file
diff --git a/docs/404.html b/docs/404.html
index e6d1bca..ae35c7e 100644
--- a/docs/404.html
+++ b/docs/404.html
@@ -36,6 +36,13 @@
diff --git a/docs/_includes/headers/_layout.html b/docs/_includes/headers/_layout.html
index 5b8261e..e7bf387 100644
--- a/docs/_includes/headers/_layout.html
+++ b/docs/_includes/headers/_layout.html
@@ -5,6 +5,13 @@
\ No newline at end of file
diff --git a/docs/css/main.css b/docs/css/main.css
index 103905e..1f1db45 100644
--- a/docs/css/main.css
+++ b/docs/css/main.css
@@ -2,6 +2,6 @@
* hubmapdocs -
* @version v0.1.0
* @link https://docs.hubmapconsortium.org/
- * @date Wed Nov 12 2025 11:00:22 GMT-0500 (Eastern Standard Time)
+ * @date Fri Jan 16 2026 11:25:18 GMT-0500 (Eastern Standard Time)
*/
-.h1{font-size:2.13rem;line-height:1.294117647058824}.h2{font-size:1.63rem;line-height:1.615384615384615}.h3{font-size:1.5rem;line-height:1.666666666666667}.h4{font-size:1.38rem;line-height:1.727272727272727}.p1{font-size:1.5rem;line-height:1.416666666666667}.p2{font-size:1.32rem;line-height:1.476190476190476}.p3{font-size:1.13rem;line-height:1.555555555555556}.p4{font-size:1rem;line-height:1.625}.p5{font-size:.88rem;line-height:1.714285714285714}.p6{font-size:.75rem;line-height:1.833333333333333}pre{box-shadow:0 0 10px rgba(0,0,0,0.1);color:#333;background-color:#fff;font-family:Monaco,"Bitstream Vera Sans Mono","Lucida Console",Terminal,monospace;font-size:14px;border-radius:2px;padding:10px;overflow:auto}code{background-color:#fcfcfc;color:#0f5b30}.clear{clear:both}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;line-height:24px;font-weight:340;background:#f2f2f2}html,body{height:100%}body{font-size:1rem;line-height:1.625;position:relative;line-height:1.5;text-size-adjust:none;font-family:Inter Variable,Helvetica,Arial,sans-serif}li{list-style-position:inside}a,a:visited{color:#2a6fb8;text-decoration:none;font-weight:bolder}a:hover{text-decoration:underline}.hide{display:none}details{margin-top:1em}ul ~ h1,ul ~ h2,ul ~ h3,ul ~ h4,ul ~ h5,ul ~ h6,table ~ h2,table ~ h3{margin-top:1rem}[tabindex="0"]:active,[tabindex="0"]:focus,[tabindex="1"]:active,[tabindex="1"]:focus,a:active,a:focus,button:active,button:focus,input:active,input:focus,select:active,select:focus,textarea:active,textarea:focus{outline:1px dotted #2a6fb8}table{width:auto;box-shadow:0 0 10px rgba(0,0,0,0.1);border-collapse:collapse;background:#fff}table tr{border:1px solid #ddd}table td,table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6;background-color:#fff !important}table th{font-weight:bold}.txt--highlight{background-color:#7fffd4;padding:.2em .3em}.c-documentation ul,.c-documentation ol{margin:0 0 15px 30px}.c-documentation h3,.c-documentation h4,.c-documentation h5{margin-top:1em}.c-documentation summary{background-color:#265a92;color:#fff;padding:7px;margin-top:5px;margin-bottom:5px}.c-documentation--dsg ol{box-sizing:border-box;list-style:decimal}.c-documentation--dsg li{list-style-position:outside}.c-breadcrumbs{margin-bottom:2em}@media (max-width:1024px){.c-breadcrumbs{margin-top:60px}}.c-breadcrumbs li{position:relative;list-style:none;display:inline-block;margin:0 10px}.c-breadcrumbs li.is-active a{color:#1e4879}.c-breadcrumbs li:last-child:after{content:none}.c-breadcrumbs li:first-child{margin-left:0}.c-breadcrumbs li:after{font-family:'FontAwesome';position:absolute;font-size:.57rem;content:'\f054';display:inline-block;margin-left:5px;top:5px}.c-code{box-shadow:0 0 10px rgba(0,0,0,0.1);color:#333;background-color:#fff;font-family:Monaco,"Bitstream Vera Sans Mono","Lucida Console",Terminal,monospace;font-size:14px;border-radius:2px;padding:10px;overflow:auto}.c-container{max-width:1000px;margin:auto;color:#333;margin:40px auto;margin-bottom:6em;min-height:calc(100vh - 100px)}@media (max-width:1024px){.c-container{padding:0 1em}}@media (max-width:1024px){.c-container{padding:0 2em}}.c-container section{margin:1em 0}.c-container p{margin:1em 0}.c-container .c-documentation--dsg img{width:inherit}@media (max-width:767px){.c-container img:not(.w-fixed){width:100% !important}}.c-fileMeta{font-size:.75rem;line-height:1.833333333333333;color:#807e7e;margin:1em 0}.c-fileMeta__label{display:none}.c-fileMeta__label.is-active{display:inline-block}.c-footer{position:inherit;color:#6c757d}.c-footer__main{font-weight:bold;text-align:right;padding:30px;border-top:solid 1px #ccc;background-color:#444a65;color:#fff}.c-footer__wrap{max-width:1000px;margin:auto}@media (max-width:1024px){.c-footer__wrap{padding:0 1em}}.c-footer__meta{max-width:1000px;margin:auto}@media (max-width:1024px){.c-footer__meta{padding:0 1em}}.c-header{position:relative;background-color:#444a65;border:none;padding-top:6px}@media (max-width:1024px){.c-header .lg{display:none}}@media (min-width:992px){.c-header{height:90px}}@media (max-width:1024px){.c-header{padding:15px 0}}.c-header > .c-header__main{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.c-header__sm{margin-left:60px;color:#fff}@media (min-width:992px){.c-header__sm{display:none}}.c-header__main{width:90%;margin:auto}@media (min-width:992px){.c-header__main{position:relative;max-width:1000px;margin:auto}}@media (min-width:992px) and (max-width:1024px){.c-header__main{padding:0 1em}}@media (max-width:1024px){.c-header__menu{margin-top:20px}}@media (min-width:992px){.c-header__menu{position:relative;margin-left:20%}}.c-header__logo{margin-right:50px;padding-top:0}.c-header__logo img{position:absolute;height:40px;top:-5px}@media (max-width:1024px){.c-header__logo img{top:15px}}.c-header li{font-size:1.5rem;line-height:1.416666666666667;color:#fff}@media (max-width:1024px){.c-header li{font-size:1.13rem;line-height:1.555555555555556}}.c-header li.h2{font-size:1.63rem;font-weight:bold}.c-header li.extra--right{position:absolute;right:5%;font-size:1rem}.c-header li a{color:#fff;text-decoration:none}.c-header li a:hover{color:#fff}@media (min-width:992px){.c-header li{font-size:1.5rem;line-height:1.416666666666667;list-style:none;display:inline-block;margin-left:15px;margin-right:15px;color:#fff}.c-header li a:hover{text-decoration:underline}.c-header li:first-child{margin-left:0}}.c-sidebar{position:relative}.c-sidebar .has-collapser{position:relative}.c-sidebar .has-collapser.is-open:after{content:'\f147'}.c-sidebar .has-collapser > ul{display:none}.c-sidebar .has-collapser > ul.is-visible{display:block}.c-sidebar .has-collapser:after{font-family:'FontAwesome';position:absolute;content:'\f196';width:24px;height:24px;top:15px;right:0;cursor:pointer}@media (min-width:1025px) and (max-width:1700px){.c-sidebar ~ .c-container{max-width:60%;margin-left:30%}}.c-sidebar.is-active .c-sidebar__main{position:fixed}.c-sidebar.is-static .c-sidebar__main{position:relative}.c-sidebar__wrap{position:absolute;width:20%}@media (max-width:1700px){.c-sidebar__wrap{width:25%}}@media (max-width:1024px){.c-sidebar__wrap{position:relative}}@media (max-width:1025px){.c-sidebar__wrap{width:100%}}.c-sidebar__main{position:relative;top:30px;padding-left:30px;padding-right:30px;height:80vh}@media (max-width:1024px){.c-sidebar__main{height:auto}}.c-sidebar__main > h2{margin-bottom:.8em}.c-sidebar__list{background:#fff;overflow-y:auto;border-bottom:solid 1px #eee}.c-sidebar__list > ul{border:solid 1px #eee;padding:1em}.c-sidebar__list > ul > li:first-child{border-top:none}.c-sidebar__list li{list-style:none;padding:.5em 0;border-top:solid 1px #eee}.c-sidebar__list li.has-children{font-size:1rem;line-height:1.625}.c-sidebar__list li.c-sidebar__level--2 a{font-weight:bold}.c-sidebar__list li.c-sidebar__level--3 a{padding-left:.8em;font-weight:normal}.c-sidebar__list ul li > ul a{font-size:.88rem;line-height:1.714285714285714;color:#333;padding-left:.4em}.c-sidebar__list ul li > ul a:before{font-family:'FontAwesome';content:'-';display:inline-block;margin-right:.5em}.c-sidebar__list ul.c-sidebar__level--1 li{padding-bottom:.2em}.c-sidebar__list ul.has-parent{margin-top:.5em}smuted,smuted a{font-size:13px;color:#6c757d !important}extlnk{display:inline-flex !important;align-items:center}extlnk:after{font-family:'FontAwesome';content:'\f08e';margin-left:.15rem;font-size:12px;color:#2a6fb8}
\ No newline at end of file
+.h1{font-size:2.13rem;line-height:1.294117647058824}.h2{font-size:1.63rem;line-height:1.615384615384615}.h3{font-size:1.5rem;line-height:1.666666666666667}.h4{font-size:1.38rem;line-height:1.727272727272727}.p1{font-size:1.5rem;line-height:1.416666666666667}.p2{font-size:1.32rem;line-height:1.476190476190476}.p3{font-size:1.13rem;line-height:1.555555555555556}.p4{font-size:1rem;line-height:1.625}.p5{font-size:.88rem;line-height:1.714285714285714}.p6{font-size:.75rem;line-height:1.833333333333333}pre{box-shadow:0 0 10px rgba(0,0,0,0.1);color:#333;background-color:#fff;font-family:Monaco,"Bitstream Vera Sans Mono","Lucida Console",Terminal,monospace;font-size:14px;border-radius:2px;padding:10px;overflow:auto}code{background-color:#fcfcfc;color:#0f5b30}.clear{clear:both}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;line-height:24px;font-weight:340;background:#f2f2f2}html,body{height:100%}body{font-size:1rem;line-height:1.625;position:relative;line-height:1.5;text-size-adjust:none;font-family:Inter Variable,Helvetica,Arial,sans-serif}li{list-style-position:inside}a,a:visited{color:#2a6fb8;text-decoration:none;font-weight:bolder}a:hover{text-decoration:underline}.hide{display:none}details{margin-top:1em}ul ~ h1,ul ~ h2,ul ~ h3,ul ~ h4,ul ~ h5,ul ~ h6,table ~ h2,table ~ h3{margin-top:1rem}[tabindex="0"]:active,[tabindex="0"]:focus,[tabindex="1"]:active,[tabindex="1"]:focus,a:active,a:focus,button:active,button:focus,input:active,input:focus,select:active,select:focus,textarea:active,textarea:focus{outline:1px dotted #2a6fb8}table{width:auto;box-shadow:0 0 10px rgba(0,0,0,0.1);border-collapse:collapse;background:#fff}table tr{border:1px solid #ddd}table td,table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6;background-color:#fff !important}table th{font-weight:bold}.txt--highlight{background-color:#7fffd4;padding:.2em .3em}.c-documentation ul,.c-documentation ol{margin:0 0 15px 30px}.c-documentation h3,.c-documentation h4,.c-documentation h5{margin-top:1em}.c-documentation summary{background-color:#265a92;color:#fff;padding:7px;margin-top:5px;margin-bottom:5px}.c-documentation--dsg ol{box-sizing:border-box;list-style:decimal}.c-documentation--dsg li{list-style-position:outside}.c-breadcrumbs{margin-bottom:2em}@media (max-width:1024px){.c-breadcrumbs{margin-top:60px}}.c-breadcrumbs li{position:relative;list-style:none;display:inline-block;margin:0 10px}.c-breadcrumbs li.is-active a{color:#1e4879}.c-breadcrumbs li:last-child:after{content:none}.c-breadcrumbs li:first-child{margin-left:0}.c-breadcrumbs li:after{font-family:'FontAwesome';position:absolute;font-size:.57rem;content:'\f054';display:inline-block;margin-left:5px;top:5px}.c-code{box-shadow:0 0 10px rgba(0,0,0,0.1);color:#333;background-color:#fff;font-family:Monaco,"Bitstream Vera Sans Mono","Lucida Console",Terminal,monospace;font-size:14px;border-radius:2px;padding:10px;overflow:auto}.c-container{max-width:1000px;margin:auto;color:#333;margin:40px auto;margin-bottom:6em;min-height:calc(100vh - 100px)}@media (max-width:1024px){.c-container{padding:0 1em}}@media (max-width:1024px){.c-container{padding:0 2em}}.c-container section{margin:1em 0}.c-container p{margin:1em 0}.c-container .c-documentation--dsg img{width:inherit}@media (max-width:767px){.c-container img:not(.w-fixed){width:100% !important}}.c-fileMeta{font-size:.75rem;line-height:1.833333333333333;color:#807e7e;margin:1em 0}.c-fileMeta__label{display:none}.c-fileMeta__label.is-active{display:inline-block}.c-footer{position:inherit;color:#6c757d}.c-footer__main{font-weight:bold;text-align:right;padding:30px;border-top:solid 1px #ccc;background-color:#444a65;color:#fff}.c-footer__wrap{max-width:1000px;margin:auto}@media (max-width:1024px){.c-footer__wrap{padding:0 1em}}.c-footer__meta{max-width:1000px;margin:auto}@media (max-width:1024px){.c-footer__meta{padding:0 1em}}.c-header{position:relative;background-color:#444a65;border:none;padding-top:6px}@media (max-width:1024px){.c-header .lg{display:none}}@media (min-width:992px){.c-header{height:90px}}@media (max-width:1024px){.c-header{padding:15px 0}}.c-header > .c-header__main{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.c-header__sm{margin-left:60px;color:#fff}@media (min-width:992px){.c-header__sm{display:none}}.c-header__main{width:90%;margin:auto}@media (min-width:992px){.c-header__main{position:relative;max-width:1000px;margin:auto}}@media (min-width:992px) and (max-width:1024px){.c-header__main{padding:0 1em}}@media (max-width:1024px){.c-header__menu{margin-top:20px}}@media (min-width:992px){.c-header__menu{position:relative;margin-left:20%}}.c-header__logo{margin-right:50px;padding-top:0}.c-header__logo img{position:absolute;height:40px;top:-5px}@media (max-width:1024px){.c-header__logo img{top:15px}}@media (min-width:1025px){.c-header__search{position:absolute;right:-50px}}.c-header__search input{padding:7px 10px;width:auto;transition:all .5s ease;opacity:1}.c-header__search input.is-hidden{width:0;opacity:0;border:0;padding:0}.c-header__search .list-group{position:absolute;z-index:1000;background-color:#fff;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;width:300px;max-height:400px;overflow-y:auto;overflow-x:hidden;border-radius:3px;width:0;opacity:0;transition:.5s ease opacity}.c-header__search .list-group.is-active{border:solid 1px #eee;width:300px;opacity:1}.c-header__search .list-group li{margin:0;border-bottom:solid 1px #eee}.c-header__search .list-group li::marker{display:none}.c-header__search .list-group a,.c-header__search .list-group span{font-weight:normal;max-width:280px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;color:#333;padding:5px 10px;display:block}.c-header__search .list-group a:hover,.c-header__search .list-group span:hover{color:#2a6fb8}.c-header li{font-size:1.5rem;line-height:1.416666666666667;color:#fff}@media (max-width:1024px){.c-header li{font-size:1.13rem;line-height:1.555555555555556}}.c-header li.h2{font-size:1.63rem;font-weight:bold}.c-header li.extra--right{position:absolute;right:5%;font-size:1rem;margin-top:5px}.c-header li a{color:#fff;text-decoration:none}.c-header li a:hover{color:#fff}@media (min-width:992px){.c-header li{font-size:1.5rem;line-height:1.416666666666667;list-style:none;display:inline-block;margin-left:15px;margin-right:15px;color:#fff}.c-header li a:hover{text-decoration:underline}.c-header li:first-child{margin-left:0}}.c-sidebar{position:relative}.c-sidebar .has-collapser{position:relative}.c-sidebar .has-collapser.is-open:after{content:'\f147'}.c-sidebar .has-collapser > ul{display:none}.c-sidebar .has-collapser > ul.is-visible{display:block}.c-sidebar .has-collapser:after{font-family:'FontAwesome';position:absolute;content:'\f196';width:24px;height:24px;top:15px;right:0;cursor:pointer}@media (min-width:1025px) and (max-width:1700px){.c-sidebar ~ .c-container{max-width:60%;margin-left:30%}}.c-sidebar.is-active .c-sidebar__main{position:fixed}.c-sidebar.is-static .c-sidebar__main{position:relative}.c-sidebar__wrap{position:absolute;width:20%}@media (max-width:1700px){.c-sidebar__wrap{width:25%}}@media (max-width:1024px){.c-sidebar__wrap{position:relative}}@media (max-width:1025px){.c-sidebar__wrap{width:100%}}.c-sidebar__main{position:relative;top:30px;padding-left:30px;padding-right:30px;height:80vh}@media (max-width:1024px){.c-sidebar__main{height:auto}}.c-sidebar__main > h2{margin-bottom:.8em}.c-sidebar__list{background:#fff;overflow-y:auto;border-bottom:solid 1px #eee}.c-sidebar__list > ul{border:solid 1px #eee;padding:1em}.c-sidebar__list > ul > li:first-child{border-top:none}.c-sidebar__list li{list-style:none;padding:.5em 0;border-top:solid 1px #eee}.c-sidebar__list li.has-children{font-size:1rem;line-height:1.625}.c-sidebar__list li.c-sidebar__level--2 a{font-weight:bold}.c-sidebar__list li.c-sidebar__level--3 a{padding-left:.8em;font-weight:normal}.c-sidebar__list ul li > ul a{font-size:.88rem;line-height:1.714285714285714;color:#333;padding-left:.4em}.c-sidebar__list ul li > ul a:before{font-family:'FontAwesome';content:'-';display:inline-block;margin-right:.5em}.c-sidebar__list ul.c-sidebar__level--1 li{padding-bottom:.2em}.c-sidebar__list ul.has-parent{margin-top:.5em}.c-table--scrollable{overflow:auto scroll}smuted,smuted a{font-size:13px;color:#6c757d !important}extlnk{display:inline-flex !important;align-items:center}extlnk:after{font-family:'FontAwesome';content:'\f08e';margin-left:.15rem;font-size:12px;color:#2a6fb8}
\ No newline at end of file
diff --git a/docs/js/main.js b/docs/js/main.js
index f83e755..36137de 100644
--- a/docs/js/main.js
+++ b/docs/js/main.js
@@ -2,9 +2,12 @@
* hubmapdocs -
* @version v0.1.0
* @link https://docs.hubmapconsortium.org/
- * @date Fri Nov 07 2025 10:36:09 GMT-0500 (Eastern Standard Time)
+ * @date Fri Jan 16 2026 11:09:38 GMT-0500 (Eastern Standard Time)
*/
-var _this9 = this;
+var _this11 = this;
+function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
+function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
+function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
@@ -15,9 +18,6 @@ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) ===
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
-function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
-function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
-function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
@@ -9259,21 +9259,6 @@ var App = /*#__PURE__*/function () {
value: function _t(msg) {
return this.msgs[msg] || msg;
}
- }, {
- key: "autoBlobDownloader",
- value: function autoBlobDownloader(data, filename) {
- var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'text/plain';
- var a = document.createElement('a');
- var url = window.URL.createObjectURL(new Blob(data, {
- type: type
- }));
- a.href = url;
- a.download = filename;
- document.body.append(a);
- a.click();
- a.remove();
- window.URL.revokeObjectURL(url);
- }
}, {
key: "log",
value: function log(title, msg) {
@@ -9309,18 +9294,32 @@ var App = /*#__PURE__*/function () {
return res.json();
case 8:
window.apps.locale = _context.sent;
- _context.next = 14;
- break;
+ _context.next = 11;
+ return Rest.get('/js/site-search-data.json');
case 11:
- _context.prev = 11;
+ res = _context.sent;
+ if (!res.ok) {
+ _context.next = 17;
+ break;
+ }
+ _context.next = 15;
+ return res.json();
+ case 15:
+ window.apps.searchData = _context.sent;
+ window.apps.searchData.pop();
+ case 17:
+ _context.next = 22;
+ break;
+ case 19:
+ _context.prev = 19;
_context.t0 = _context["catch"](0);
console.error(_context.t0);
- case 14:
+ case 22:
case "end":
return _context.stop();
}
}
- }, _callee, null, [[0, 11]]);
+ }, _callee, null, [[0, 19]]);
}));
function loadLanguageFile() {
return _loadLanguageFile.apply(this, arguments);
@@ -9372,27 +9371,11 @@ var App = /*#__PURE__*/function () {
}, {
key: "applyStyles",
value: function applyStyles(args) {
- var css = '';
- $('img').each(function (i) {
- var width = $(this).attr('width');
- if (width && parseInt(width) > 0 && !$(this).hasClass('w-fixed')) {
- var cls = "imgw--".concat(i);
- $(this).addClass("".concat(cls));
- width = parseInt(width).toString() === width ? width + 'px' : width;
- css += ".".concat(cls, " {max-width: ").concat(width, ";}");
+ $('table').each(function (i) {
+ if (!$(this).parent().hasClass('c-table--scrollable')) {
+ $(this).wrap('');
}
});
- if (css.length) {
- $('body').append(""));
- }
- new CodeCopy(document, _objectSpread({
- app: 'codeCopy'
- }, args));
- $('pre').each(function (i) {
- new Pre(this, _objectSpread({
- app: ''
- }, args));
- });
}
}, {
key: "applyTheme",
@@ -9491,10 +9474,18 @@ var FileMeta = /*#__PURE__*/function (_App2) {
return _this3;
}
_createClass(FileMeta, [{
+ key: "toDate",
+ value: function toDate(lastMod) {
+ var date = new Date(lastMod);
+ var formattedDate = date.toLocaleDateString('en-US');
+ var formattedTime = date.toLocaleTimeString('en-US');
+ this.$.date.html(formattedDate + ' @ ' + formattedTime);
+ }
+ }, {
key: "addDate",
value: function () {
var _addDate = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
- var lastMod, path, paths, _i, _paths, p, r, date, formattedDate, formattedTime;
+ var lastMod, path, p, _iterator, _step, d, paths, _i, _paths, _p, r;
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
@@ -9511,33 +9502,64 @@ var FileMeta = /*#__PURE__*/function (_App2) {
}
return _context3.abrupt("return");
case 6:
+ // Find file stat from search indicies
+ p = path;
+ _iterator = _createForOfIteratorHelper(window.apps.searchData);
+ _context3.prev = 8;
+ _iterator.s();
+ case 10:
+ if ((_step = _iterator.n()).done) {
+ _context3.next = 18;
+ break;
+ }
+ d = _step.value;
+ if (!(p.toLowerCase() == d.path.toLowerCase() && d.mod.length)) {
+ _context3.next = 16;
+ break;
+ }
+ this.toDate(d.mod);
+ this.$.label.addClass(this.classNames.active);
+ return _context3.abrupt("return");
+ case 16:
+ _context3.next = 10;
+ break;
+ case 18:
+ _context3.next = 23;
+ break;
+ case 20:
+ _context3.prev = 20;
+ _context3.t0 = _context3["catch"](8);
+ _iterator.e(_context3.t0);
+ case 23:
+ _context3.prev = 23;
+ _iterator.f();
+ return _context3.finish(23);
+ case 26:
+ // If not found, use the meta from the server
paths = [];
if (path.split('.').pop() === path) {
paths = ["".concat(path, ".html"), "".concat(path, ".md")];
}
_i = 0, _paths = paths;
- case 9:
+ case 29:
if (!(_i < _paths.length)) {
- _context3.next = 20;
+ _context3.next = 40;
break;
}
- p = _paths[_i];
+ _p = _paths[_i];
if (!(this.$.date.html() && this.$.date.html().length)) {
- _context3.next = 13;
+ _context3.next = 33;
break;
}
return _context3.abrupt("return");
- case 13:
- _context3.next = 15;
- return Rest.get(p, 'text/plain');
- case 15:
+ case 33:
+ _context3.next = 35;
+ return Rest.get(_p, 'text/plain');
+ case 35:
r = _context3.sent;
if (r.ok) {
lastMod = r.headers.get('last-modified');
- date = new Date(lastMod);
- formattedDate = date.toLocaleDateString('en-US');
- formattedTime = date.toLocaleTimeString('en-US');
- this.$.date.html(formattedDate + ' @ ' + formattedTime);
+ this.toDate(lastMod);
this.$.label.addClass(this.classNames.active);
} else {
this.$.label.removeClass(this.classNames.active);
@@ -9545,25 +9567,25 @@ var FileMeta = /*#__PURE__*/function (_App2) {
error: true
});
}
- case 17:
+ case 37:
_i++;
- _context3.next = 9;
+ _context3.next = 29;
break;
- case 20:
- _context3.next = 25;
+ case 40:
+ _context3.next = 45;
break;
- case 22:
- _context3.prev = 22;
- _context3.t0 = _context3["catch"](1);
- App.log(this.app, _context3.t0, {
+ case 42:
+ _context3.prev = 42;
+ _context3.t1 = _context3["catch"](1);
+ App.log(this.app, _context3.t1, {
error: true
});
- case 25:
+ case 45:
case "end":
return _context3.stop();
}
}
- }, _callee3, this, [[1, 22]]);
+ }, _callee3, this, [[1, 42], [8, 20, 23, 26]]);
}));
function addDate() {
return _addDate.apply(this, arguments);
@@ -9778,31 +9800,127 @@ var Rest = /*#__PURE__*/function () {
}]);
return Rest;
}();
-var Sidebar = /*#__PURE__*/function (_App5) {
- _inherits(Sidebar, _App5);
- var _super5 = _createSuper(Sidebar);
- function Sidebar(el, args) {
+var Search = /*#__PURE__*/function (_App5) {
+ _inherits(Search, _App5);
+ var _super5 = _createSuper(Search);
+ function Search(el, args) {
var _this6;
- _classCallCheck(this, Sidebar);
+ _classCallCheck(this, Search);
_this6 = _super5.call(this, el, args);
+ _this6.data = [];
_this6.$ = {
- wrap: _this6.el.find('.js-sidebar__wrap'),
- main: _this6.el.find('.js-sidebar__main'),
- list: _this6.el.find('.js-sidebar__list'),
- hs: $('.c-documentation').find('h1, h2, h3, h4, h5, h6')
+ btn: _this6.el.find('button'),
+ io: _this6.el.find('input'),
+ list: _this6.el.find('.list-group')
};
- _this6.sizeSideBar();
- _this6.pathBase = '/';
- _this6.classNames.root = 'is-root';
- _this6.classNames["static"] = 'is-static';
- _this6.headerHeight = 90;
+ _this6.getData();
_this6.events();
- _this6.determineContentBuilder();
- _this6.sizeSideBarHeight();
- _this6.togglePositioning();
- _this6.addPageId();
return _this6;
}
+ _createClass(Search, [{
+ key: "getData",
+ value: function getData() {
+ this.data = window.apps.searchData;
+ }
+ }, {
+ key: "searchSite",
+ value: function searchSite(val) {
+ var found = [];
+ var dict = {};
+ var _iterator2 = _createForOfIteratorHelper(this.data),
+ _step2;
+ try {
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
+ var _d = _step2.value;
+ if ((_d === null || _d === void 0 ? void 0 : _d.title.toLowerCase().indexOf(val.toLowerCase())) > -1 && !dict[_d.path]) {
+ found.push(_d);
+ dict[_d.path] = true;
+ }
+ }
+ } catch (err) {
+ _iterator2.e(err);
+ } finally {
+ _iterator2.f();
+ }
+ var html = '';
+ for (var _i2 = 0, _found = found; _i2 < _found.length; _i2++) {
+ var d = _found[_i2];
+ html += "").concat(d.title, " ").concat(d.path, "");
+ }
+ this.$.list.addClass('is-active');
+ if (!found.length) {
+ html = 'No results';
+ }
+ this.$.list.html(html);
+ }
+ }, {
+ key: "clearResults",
+ value: function clearResults() {
+ this.$.list.removeClass('is-active');
+ this.$.list.html('');
+ }
+ }, {
+ key: "closeSearch",
+ value: function closeSearch() {
+ this.$.io.val('');
+ this.clearResults();
+ this.$.io.addClass('is-hidden');
+ }
+ }, {
+ key: "events",
+ value: function events() {
+ var _this7 = this;
+ this.$.btn.on('click', function (e) {
+ e.preventDefault();
+ _this7.clearResults();
+ if (_this7.$.io.val().length && !_this7.$.io.hasClass('is-hidden')) {
+ _this7.searchSite(_this7.$.io.val());
+ } else {
+ _this7.$.io.val('');
+ _this7.$.io.toggleClass('is-hidden');
+ if (!_this7.$.io.hasClass('is-hidden')) {
+ _this7.$.io.focus();
+ }
+ }
+ }.bind(this));
+ $(window).on('keydown', function (e) {
+ if (_this7.isEsc(e)) {
+ _this7.closeSearch();
+ }
+ }.bind(this));
+ $('[role="main"]').on('click', function (e) {
+ e.stopPropagation();
+ _this7.closeSearch();
+ }.bind(this));
+ }
+ }]);
+ return Search;
+}(App);
+var Sidebar = /*#__PURE__*/function (_App6) {
+ _inherits(Sidebar, _App6);
+ var _super6 = _createSuper(Sidebar);
+ function Sidebar(el, args) {
+ var _this8;
+ _classCallCheck(this, Sidebar);
+ _this8 = _super6.call(this, el, args);
+ _this8.$ = {
+ wrap: _this8.el.find('.js-sidebar__wrap'),
+ main: _this8.el.find('.js-sidebar__main'),
+ list: _this8.el.find('.js-sidebar__list'),
+ hs: $('.c-documentation').find('h1, h2, h3, h4, h5, h6')
+ };
+ _this8.sizeSideBar();
+ _this8.pathBase = '/';
+ _this8.classNames.root = 'is-root';
+ _this8.classNames["static"] = 'is-static';
+ _this8.headerHeight = 90;
+ _this8.events();
+ _this8.determineContentBuilder();
+ _this8.sizeSideBarHeight();
+ _this8.togglePositioning();
+ _this8.addPageId();
+ return _this8;
+ }
_createClass(Sidebar, [{
key: "addPageId",
value: function addPageId() {
@@ -9836,18 +9954,18 @@ var Sidebar = /*#__PURE__*/function (_App5) {
}, {
key: "events",
value: function events() {
- var _this7 = this;
+ var _this9 = this;
$(document).on('scroll', function (e) {
var st = $(document).scrollTop();
- if (st > _this7.headerHeight && !_this7.isMobile()) {
- _this7.el.addClass(_this7.classNames.active);
+ if (st > _this9.headerHeight && !_this9.isMobile()) {
+ _this9.el.addClass(_this9.classNames.active);
} else {
- _this7.el.removeClass(_this7.classNames.active);
+ _this9.el.removeClass(_this9.classNames.active);
}
}.bind(this));
$(window).on('resize', function (e) {
- _this7.sizeSideBar();
- _this7.togglePositioning();
+ _this9.sizeSideBar();
+ _this9.togglePositioning();
}.bind(this));
$('body').on('click', '.has-collapser', function (e) {
e.stopPropagation();
@@ -9880,7 +9998,7 @@ var Sidebar = /*#__PURE__*/function (_App5) {
}, {
key: "buildTableOfContents",
value: function buildTableOfContents() {
- var _this8 = this;
+ var _this10 = this;
var rootChildren = [];
var root = {
tag: 'h0',
@@ -9895,7 +10013,7 @@ var Sidebar = /*#__PURE__*/function (_App5) {
var n1 = Number(node[1]);
var n2 = Number(top.tag[1]);
var label = $(el).text();
- var id = $(el).attr('id') || _this8.toId(label);
+ var id = $(el).attr('id') || _this10.toId(label);
var pack = {
tag: node,
id: id,
@@ -9973,17 +10091,17 @@ var Sidebar = /*#__PURE__*/function (_App5) {
html += "").concat(name, "");
if (this.hasChildren(n)) {
html += "");
- var _iterator = _createForOfIteratorHelper(this.getChildren(n)),
- _step;
+ var _iterator3 = _createForOfIteratorHelper(this.getChildren(n)),
+ _step3;
try {
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
- var c = _step.value;
+ for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
+ var c = _step3.value;
html = this.getList(c, html, level + 1);
}
} catch (err) {
- _iterator.e(err);
+ _iterator3.e(err);
} finally {
- _iterator.f();
+ _iterator3.f();
}
html += "
";
}
@@ -10012,10 +10130,12 @@ function ZIndex(source) {
breadcrumbs: Breadcrumbs,
footer: Footer,
fileMeta: FileMeta,
- gtm: GTM
+ gtm: GTM,
+ search: Search
};
args = args || window.apps.init;
try {
+ App.applyStyles(args);
var _loop = function _loop(app) {
document.querySelectorAll("[class*='js-app--".concat(app, "'], [data-js-").concat(app, "]")).forEach(function (el) {
new apps[app](el, _objectSpread({
@@ -10039,5 +10159,5 @@ window.addEventListener('load', function (event) {
App.loadThemeConfig().then(function () {
ZIndex('init');
});
- }.bind(_this9));
+ }.bind(_this11));
});
\ No newline at end of file
diff --git a/docs/js/site-search-data.json b/docs/js/site-search-data.json
new file mode 100644
index 0000000..edf9741
--- /dev/null
+++ b/docs/js/site-search-data.json
@@ -0,0 +1,5119 @@
+[{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section10"
+ },{
+ "title": "Section 10 - Data Processing",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section10"
+ },{
+ "title": "Ingestion Statuses",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section10"
+ },{
+ "title": "Dataset Statuses",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section10"
+ },{
+ "title": "Data Upload Flow Diagram",
+ "mod": "",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/data-submission/Section10"
+ },{
+ "title": "Dataset Flow Diagram",
+ "mod": "",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/data-submission/Section10"
+ },{
+ "title": "Donor Bulk Registration",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/bulk-registration/donor-bulk-reg"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/bulk-registration/donor-bulk-reg"
+ },{
+ "title": "Donor Registration Fields",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/bulk-registration/donor-bulk-reg"
+ },{
+ "title": "Donor metadata submission",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/bulk-registration/donor-bulk-reg"
+ },{
+ "title": "HuBMAP RNAseq",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Overview",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Description",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Definitions",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "HuBMAP RNA-Seq Data States",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "HuBMAP Metadata",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "HuBMAP Single-cell Sequence Raw File Structure",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "HuBMAP QA/QC of raw (state0) data files",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "For Additional Help",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Processing",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Last Updated 6/23/2020",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Bulk RNAseq",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "10x Genomics single cell RNASeq",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "SNARE-Seq",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "sci-RNASeq",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Definition of Metadata Levels",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Single Cell - specific Metadata Fields",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Bulk RNA seq - specific Metadata Fields",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Definition",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "GC content: Percentage of bases that are either guanine (G) or cytosine (C)",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "K-mer overrepresentation",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Library-level Alignment QC",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Uniquely mapping % –",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Duplicated reads % -",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "Post-alignment processing QC:",
+ "mod": "Wed Apr 27 10:55:32 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/rnaseq"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Jun 27 14:35:07 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/clt/install-hubmap-clt"
+ },{
+ "title": "Installing and Getting Started with the HuBMAP Command Line Transfer",
+ "mod": "Thu Jun 27 14:35:07 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/clt/install-hubmap-clt"
+ },{
+ "title": "Globus Prerequisites",
+ "mod": "Thu Jun 27 14:35:07 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/install-hubmap-clt"
+ },{
+ "title": "IMPORTANT NOTE ABOUT GLOBUS CONNECT PERSONAL",
+ "mod": "Thu Jun 27 14:35:07 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/install-hubmap-clt"
+ },{
+ "title": "Installing the HuBMAP CLT",
+ "mod": "Thu Jun 27 14:35:07 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/install-hubmap-clt"
+ },{
+ "title": "Using the HuBMAP CLT",
+ "mod": "Thu Jun 27 14:35:07 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/install-hubmap-clt"
+ },{
+ "title": "MERFISH",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/MERFISH"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MERFISH"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MERFISH"
+ },{
+ "title": "IMC-2D",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/IMC"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/IMC"
+ },{
+ "title": "2D IMC Version 2 (Latest)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/IMC"
+ },{
+ "title": "2D IMC Version 1",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/IMC"
+ },{
+ "title": "2D IMC Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/IMC"
+ },{
+ "title": "3D IMC Version 1 (no longer accepting data)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/IMC"
+ },{
+ "title": "3D IMC Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/IMC"
+ },{
+ "title": "Seq-Scope",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/Seq-Scope"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Seq-Scope"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Seq-Scope"
+ },{
+ "title": "Auto-fluorescence",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/AutoFluorescence"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/AutoFluorescence"
+ },{
+ "title": "Version 2 (Latest)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/AutoFluorescence"
+ },{
+ "title": "Version 1",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/AutoFluorescence"
+ },{
+ "title": "Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/AutoFluorescence"
+ },{
+ "title": "HuBMAP Light Sheet Fluorescence Microscopy (UF-TMC)",
+ "mod": "Wed Mar 30 13:00:54 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/lightsheet"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Mar 30 13:00:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lightsheet"
+ },{
+ "title": "Overview:",
+ "mod": "Wed Mar 30 13:00:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lightsheet"
+ },{
+ "title": "Description:",
+ "mod": "Wed Mar 30 13:00:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lightsheet"
+ },{
+ "title": "Defintions:",
+ "mod": "Wed Mar 30 13:00:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lightsheet"
+ },{
+ "title": "HuBMAP Lightsheet Data States (Levels):",
+ "mod": "Wed Mar 30 13:00:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lightsheet"
+ },{
+ "title": "Metadata:",
+ "mod": "Wed Mar 30 13:00:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lightsheet"
+ },{
+ "title": "LSFM General File Strcuture:",
+ "mod": "Wed Mar 30 13:00:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lightsheet"
+ },{
+ "title": "LSFM Data Processing by the HIVE",
+ "mod": "Wed Mar 30 13:00:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lightsheet"
+ },{
+ "title": "For Additional Help:",
+ "mod": "Wed Mar 30 13:00:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lightsheet"
+ },{
+ "title": "Last Updated: 1/26/2021",
+ "mod": "Wed Mar 30 13:00:54 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/lightsheet"
+ },{
+ "title": "seqFISH",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/seqFISH"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/seqFISH"
+ },{
+ "title": "Version 1 (no longer accepting data)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/seqFISH"
+ },{
+ "title": "Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/seqFISH"
+ },{
+ "title": "Visium-(with-probes)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/VisiumWithProbes"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/VisiumWithProbes"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/VisiumWithProbes"
+ },{
+ "title": "Visium-(no-probes)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/VisiumNoProbes"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/VisiumNoProbes"
+ },{
+ "title": "Version 3",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/VisiumNoProbes"
+ },{
+ "title": "Version 2",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/VisiumNoProbes"
+ },{
+ "title": "SnareSeq2",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/SnareSeq2"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/SnareSeq2"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/SnareSeq2"
+ },{
+ "title": "Thick-Section-Multiphoton-MxIF",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/ThickSectionMultiphotonMxIF"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/ThickSectionMultiphotonMxIF"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/ThickSectionMultiphotonMxIF"
+ },{
+ "title": "SnareSeq2",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/Slide-seq"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Slide-seq"
+ },{
+ "title": "Version 1 (no longer accepting data)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Slide-seq"
+ },{
+ "title": "Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Slide-seq"
+ },{
+ "title": "STARmap",
+ "mod": "Tue Jan 6 16:37:37 2026 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/STARmap"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Jan 6 16:37:37 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/STARmap"
+ },{
+ "title": "Version 2.0 (use this one)",
+ "mod": "Tue Jan 6 16:37:37 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/STARmap"
+ },{
+ "title": "Pixel-seqV2",
+ "mod": "Tue Sep 16 14:26:33 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/Pixel-seqV2"
+ },{
+ "title": "Second-Harmonic-Generation",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/SecondHarmonicGeneration"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Sep 16 14:26:33 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Pixel-seqV2"
+ },{
+ "title": "Version 2.0 (use this one)",
+ "mod": "Tue Sep 16 14:26:33 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Pixel-seqV2"
+ },{
+ "title": "Light-Sheet",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/LightSheet"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/LightSheet"
+ },{
+ "title": "Version 3 (latest)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/LightSheet"
+ },{
+ "title": "Version 2",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/LightSheet"
+ },{
+ "title": "Version 1",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/LightSheet"
+ },{
+ "title": "Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/LightSheet"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/DESI"
+ },{
+ "title": "Version 2 (Latest)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/DESI"
+ },{
+ "title": "10X-Multiome",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/10XMultiome"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/10XMultiome"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/10XMultiome"
+ },{
+ "title": "HuBMAP EPICs Overview",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "DESI",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/DESI"
+ },{
+ "title": "Segmentation Mask: Published",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "Object by Analyte: Published",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "3D Reconstruction: Draft",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "layout: default",
+ "mod": "Mon May 19 09:53:59 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Overview"
+ },{
+ "title": "What is an EPIC?",
+ "mod": "Mon May 19 09:53:59 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Overview"
+ },{
+ "title": "Types of EPICs",
+ "mod": "Mon May 19 09:53:59 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Overview"
+ },{
+ "title": "layout: default",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "What is an EPIC?",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "Types of EPICs",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "EPIC Example Type 1",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "EPIC Example Type 2",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "EPIC Example Type 3",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "Cell Type Annotations",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "Uploading EPICs",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "Minimum Upload Requirements",
+ "mod": "Tue Nov 11 11:25:20 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/"
+ },{
+ "title": "HuBMAP EPICs Overview",
+ "mod": "Mon May 19 09:53:59 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/EPICs/Overview"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/SecondHarmonicGeneration"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/SecondHarmonicGeneration"
+ },{
+ "title": "layout: default",
+ "mod": "Mon May 19 12:51:41 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Upload_reqs"
+ },{
+ "title": "Minimum Requirements for an EPIC Upload",
+ "mod": "Mon May 19 12:51:41 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Upload_reqs"
+ },{
+ "title": "layout: default",
+ "mod": "Mon May 19 11:43:06 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Example3"
+ },{
+ "title": "EPIC Example Type 3",
+ "mod": "Mon May 19 11:43:06 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Example3"
+ },{
+ "title": "Object by Analyte: Draft",
+ "mod": "Mon May 19 11:38:51 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/EPICs/Example2"
+ },{
+ "title": "layout: default",
+ "mod": "Mon May 19 11:38:51 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Example2"
+ },{
+ "title": "EPIC Example Type 2",
+ "mod": "Mon May 19 11:38:51 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Example2"
+ },{
+ "title": "3D Reconstruction: Draft",
+ "mod": "Mon May 19 11:43:06 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/EPICs/Example3"
+ },{
+ "title": "layout: default",
+ "mod": "Mon May 19 11:27:48 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Example1"
+ },{
+ "title": "EPIC Example Type 1",
+ "mod": "Mon May 19 11:27:48 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Example1"
+ },{
+ "title": "Segmentation Mask: Published",
+ "mod": "Mon May 19 11:27:48 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/EPICs/Example1"
+ },{
+ "title": "4i (Iterative Indirect Immunofluorescence Imaging)",
+ "mod": "",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/4i-(Iterative-Indirect-Immunofluorescence-Imaging)"
+ },{
+ "title": "layout: page",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/4i-(Iterative-Indirect-Immunofluorescence-Imaging)"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/4i-(Iterative-Indirect-Immunofluorescence-Imaging)"
+ },{
+ "title": "HuBMAP Person schema",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/param-search/schema-person"
+ },{
+ "title": "FACS",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/FACS"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/FACS"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/FACS"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-person"
+ },{
+ "title": "Overview:",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-person"
+ },{
+ "title": "Person Schema",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-person"
+ },{
+ "title": "CyTOF",
+ "mod": "Mon May 5 16:29:21 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/CyTOF"
+ },{
+ "title": "layout: page",
+ "mod": "Mon May 5 16:29:21 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/CyTOF"
+ },{
+ "title": "Version 2 (Latest)",
+ "mod": "Mon May 5 16:29:21 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/CyTOF"
+ },{
+ "title": "layout: page",
+ "mod": "Fri Sep 13 13:48:29 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/ATACseq"
+ },{
+ "title": "ATACseq",
+ "mod": "Fri Sep 13 13:48:29 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/ATACseq"
+ },{
+ "title": "MUSIC",
+ "mod": "Mon Aug 26 15:50:07 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/MUSIC"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:50:07 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MUSIC"
+ },{
+ "title": "Current Metadata Attributes",
+ "mod": "Mon Aug 26 15:50:07 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MUSIC"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/bulk-registration/comined-bulk-reg"
+ },{
+ "title": "Combined Bulk Registration",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/bulk-registration/comined-bulk-reg"
+ },{
+ "title": "Donor Registration Fields",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/bulk-registration/comined-bulk-reg"
+ },{
+ "title": "Validation",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/bulk-registration/comined-bulk-reg"
+ },{
+ "title": "Donor metadata submission",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/bulk-registration/comined-bulk-reg"
+ },{
+ "title": "Sample Metadata Submission",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/bulk-registration/comined-bulk-reg"
+ },{
+ "title": "Entity SDK",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Status",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Ancestor Organs",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Entity by ID",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Entity Provenance",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Entity Types",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Collection",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Collections",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Create Multiple Samples",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Create Entity",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Update Entity",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Ancestors",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Descendants",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Parents",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Children",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Previous Revisions",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Next Revisions",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Add Datasets To Collection",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Globus Url",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Dataset Latest Revision",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Dataset Revision Number",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Retract Dataset",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Revisions List",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Associated Organs",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Prov Info",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Get Prov Info By Id",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "MPLEx",
+ "mod": "Tue Sep 16 14:26:33 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/MPLEx"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Sep 16 14:26:33 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MPLEx"
+ },{
+ "title": "Version 2.0 (use this one)",
+ "mod": "Tue Sep 16 14:26:33 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MPLEx"
+ },{
+ "title": "CODEX",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/CODEX"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/CODEX"
+ },{
+ "title": "Version 2",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/CODEX"
+ },{
+ "title": "Version 1",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/CODEX"
+ },{
+ "title": "Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/CODEX"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Feb 21 14:44:49 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/sdk/hubmapsdk"
+ },{
+ "title": "Getting Started",
+ "mod": "Mon Feb 21 14:44:49 2022 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/sdk/hubmapsdk"
+ },{
+ "title": "Requirements",
+ "mod": "Mon Feb 21 14:44:49 2022 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/sdk/hubmapsdk"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Entity SDK Overview",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "Entity Sdk Methods",
+ "mod": "Tue Dec 20 09:09:38 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/sdk/entitysdk"
+ },{
+ "title": "SDK Overview",
+ "mod": "Mon Feb 21 14:44:49 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/hubmapsdk"
+ },{
+ "title": "Modules",
+ "mod": "Mon Feb 21 14:44:49 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/hubmapsdk"
+ },{
+ "title": "Demo the HuBMAP SDK with Jupyter Notebook",
+ "mod": "Mon Feb 21 14:44:49 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/hubmapsdk"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/HiFi-Slide"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/HiFi-Slide"
+ },{
+ "title": "HuBMAP seqFISH",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "Overview",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "Description",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "Definitions",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "HuBMAP seqFISH Data States (Levels)",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "HuBMAP Metadata",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "Associated JSON Files",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "HuBMAP seqFISH Raw File Structure",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "HuBMAP QA/QC of raw (state0) data files",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "seqFISH Data Processing by the HIVE",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "Terms defined in this document",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "For Additional Help",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "Last Updated 6/16/2020",
+ "mod": "Tue Feb 22 12:00:21 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/seqfish"
+ },{
+ "title": "HiFi-Slide",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/HiFi-Slide"
+ },{
+ "title": "HuBMAP APIs",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "Human Reference Atlas (HRA) APIs",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "Identifiers used in HuBMAP and the APIs",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "Ingest API",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "UUID API",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "Search & Index API",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "Ontology/UBKG API",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "Entity API",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "CCF API",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "HRA via SPARQL",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "HuBMAP ID",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "UUID",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "DOI",
+ "mod": "Tue Jan 7 11:51:46 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/apis"
+ },{
+ "title": "RNAseq",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseq"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseq"
+ },{
+ "title": "RNAseq Version 5 (current)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseq"
+ },{
+ "title": "RNAseq Version 2",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseq"
+ },{
+ "title": "bulk-RNA Version 1",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseq"
+ },{
+ "title": "bulk-RNA Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseq"
+ },{
+ "title": "scRNAseq Version 3",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseq"
+ },{
+ "title": "scRNAseq Version 2",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseq"
+ },{
+ "title": "scRNAseq Version 1",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseq"
+ },{
+ "title": "scRNAseq Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseq"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/LC-MS"
+ },{
+ "title": "Version 4 (Latest)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/LC-MS"
+ },{
+ "title": "Version 3",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/LC-MS"
+ },{
+ "title": "Version 2",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/LC-MS"
+ },{
+ "title": "Version 1",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/LC-MS"
+ },{
+ "title": "Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/LC-MS"
+ },{
+ "title": "LC-MS",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/LC-MS"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section2"
+ },{
+ "title": "Section 2 - Register Data Sources",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section2"
+ },{
+ "title": "Register a donor or source",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section2"
+ },{
+ "title": "Register an organ or sample",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section2"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:50:07 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/SIMS"
+ },{
+ "title": "Version 2 (latest)",
+ "mod": "Mon Aug 26 15:50:07 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/SIMS"
+ },{
+ "title": "HuBMAP Sample schema",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "Overview:",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "Description:",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "SIMS",
+ "mod": "Mon Aug 26 15:50:07 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/SIMS"
+ },{
+ "title": "Sample Metadata Schema",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "data_access_level attribute values",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "sample_category attribute values",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "organ attribute values",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "vital_state attribute values",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "health_status attribute values",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "organ_condition attribute values",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "perfusion_solution attribute values",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "File Schema",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-sample"
+ },{
+ "title": "HuBMAP Documentation",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/technical"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/technical"
+ },{
+ "title": "Histology",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/Histology"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Histology"
+ },{
+ "title": "Version 2 (Latest)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Histology"
+ },{
+ "title": "Image Mass Cytometry (IMC)",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "Overview",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "Description",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "Definitions",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "HuBMAP IMC Data States (Levels)",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "HuBMAP Metadata:",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "HuBMAP IMC Raw File Structure",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "HuBMAP QA/QC of raw (state0) data files",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "IMC Data Processing by the Bodenmiller IMC Lab",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "For Additional Help",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "Last Updated 6/22/2020",
+ "mod": "Wed Mar 30 12:56:48 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/imc"
+ },{
+ "title": "Validation procedure",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section3"
+ },{
+ "title": "layout: page",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "Autofluorescence Microscopy",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "Assay for Transposase-Accessible Chromatin (ATACseq)",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "Co-detection by indexing (CODEX)",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "Image Mass Cytometry (IMC)",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "Lightsheet",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "Liquid Chromatography Mass Spectrometry (LC-MS)",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "Matrix Assisted Laser Desorption/Ionization Imaging Mass Spectrometry (MALDI-IMS)",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "Multiplexed Immunofluorescence (MxIF)",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "RNA Sequencing (RNAseq)",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "Sequencing by Fluorescence In-Situ Hybridization (seqFISH)",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "Stained Microscopy",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "Whole Genome Sequencing (WGS)",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "HuBMAP Assays",
+ "mod": "Fri Feb 24 15:50:27 2023 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section3"
+ },{
+ "title": "Section 3 - Validating Metadata",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section3"
+ },{
+ "title": "MALDI",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/MALDI"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MALDI"
+ },{
+ "title": "Maldi Version 2 (latest)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MALDI"
+ },{
+ "title": "IMS Version 2",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MALDI"
+ },{
+ "title": "IMS Version 1",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MALDI"
+ },{
+ "title": "IMS Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MALDI"
+ },{
+ "title": "GeoMx",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/GeoMx"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/GeoMx"
+ },{
+ "title": "NGS Version 2 (current)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/GeoMx"
+ },{
+ "title": "nCounter Version 2 (current)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/GeoMx"
+ },{
+ "title": "HuBMAP Dataset schema",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/param-search/schema-dataset"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-dataset"
+ },{
+ "title": "Overview:",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-dataset"
+ },{
+ "title": "Description:",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-dataset"
+ },{
+ "title": "Dataset Attributes",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-dataset"
+ },{
+ "title": "data_access_level attribute values",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-dataset"
+ },{
+ "title": "status attribute values",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-dataset"
+ },{
+ "title": "dataset_type allowable values",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-dataset"
+ },{
+ "title": "HuBMAP File Indices",
+ "mod": "Wed Mar 20 10:13:01 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/search-indices/files"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Mar 20 10:13:01 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/search-indices/files"
+ },{
+ "title": "Overview:",
+ "mod": "Wed Mar 20 10:13:01 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/search-indices/files"
+ },{
+ "title": "Description:",
+ "mod": "Wed Mar 20 10:13:01 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/search-indices/files"
+ },{
+ "title": "Limitations:",
+ "mod": "Wed Mar 20 10:13:01 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/search-indices/files"
+ },{
+ "title": "Document elements:",
+ "mod": "Wed Mar 20 10:13:01 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/search-indices/files"
+ },{
+ "title": "Last Updated: 2024-03-20",
+ "mod": "Wed Mar 20 10:13:01 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/search-indices/files"
+ },{
+ "title": "samples Array Elements:",
+ "mod": "Wed Mar 20 10:13:01 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/search-indices/files"
+ },{
+ "title": "organs Array Elements:",
+ "mod": "Wed Mar 20 10:13:01 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/search-indices/files"
+ },{
+ "title": "donors Array Elements:",
+ "mod": "Wed Mar 20 10:13:01 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/search-indices/files"
+ },{
+ "title": "CyCIF",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/CyCIF"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/CyCIF"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/CyCIF"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/WGS"
+ },{
+ "title": "Version 1 (no longer accepting data)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/WGS"
+ },{
+ "title": "Version 0",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/WGS"
+ },{
+ "title": "WGS",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/WGS"
+ },{
+ "title": "Data Submission Guide",
+ "mod": "",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/data-submission/"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/"
+ },{
+ "title": "Information on EPICs and EPIC upload requirements",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/"
+ },{
+ "title": "Information on Pass Through Dataset Types",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/"
+ },{
+ "title": "MIBI",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/MIBI"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MIBI"
+ },{
+ "title": "Version 2 (latest)",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MIBI"
+ },{
+ "title": "Version 1",
+ "mod": "Tue Aug 27 14:43:44 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/MIBI"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "Overview",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "Description",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "Definitions",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "HuBMAP CODEX Data States (Levels)",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "HuBMAP Metadata",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "Associated JSON Files",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "HuBMAP CODEX Raw File Structure",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "HuBMAP QA/QC of raw (state0) data files",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "Terms defined in this document",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "For Additional Help",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "Last Updated: 6/1/2020",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "Antibody Metadata",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "How to read channelnames",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "How to read channelnames_report",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "How to evaluate the channels to create the QA/QC channelnames_report.cvs file",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "HuBMAP CODEX Data",
+ "mod": "Wed Mar 30 12:50:28 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/codex"
+ },{
+ "title": "HuBMAP Antibody Validation Report Repository: Uploading new reports",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/avr/avr-upload-v2"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/avr/avr-upload-v2"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section7"
+ },{
+ "title": "Section 7 - Local Validation",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section7"
+ },{
+ "title": "Metadata",
+ "mod": "Tue Dec 16 12:46:36 2025 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/metadata"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Dec 16 12:46:36 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/metadata"
+ },{
+ "title": "Donor",
+ "mod": "Tue Dec 16 12:46:36 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/metadata"
+ },{
+ "title": "Sample",
+ "mod": "Tue Dec 16 12:46:36 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/metadata"
+ },{
+ "title": "Assay",
+ "mod": "Tue Dec 16 12:46:36 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/metadata"
+ },{
+ "title": "EPICs",
+ "mod": "Tue Dec 16 12:46:36 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/metadata"
+ },{
+ "title": "Other",
+ "mod": "Tue Dec 16 12:46:36 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/metadata"
+ },{
+ "title": "Sample Block",
+ "mod": "Tue Dec 16 12:46:36 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/metadata"
+ },{
+ "title": "Sample Section",
+ "mod": "Tue Dec 16 12:46:36 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/metadata"
+ },{
+ "title": "Sample Suspension",
+ "mod": "Tue Dec 16 12:46:36 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/metadata"
+ },{
+ "title": "HuBMAP Liquid Chromatography Mass Spectrometry (LCMS)",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "Overview",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "Description",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "HuBMAP Data States (Levels)",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "HuBMAP Metadata",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "Associated Files",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "HuBMAP QA/QC of raw (state0) data files",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "QC for Lipidomics & Metabolomics",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "Terms defined in this document",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "For Additional Help",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "Last Updated 6/22/2020",
+ "mod": "Wed Mar 30 13:03:54 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/lcms"
+ },{
+ "title": "User Feedback",
+ "mod": "Mon Jun 3 13:11:38 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/feedback"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Jun 3 13:11:38 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/feedback"
+ },{
+ "title": "Process",
+ "mod": "Mon Jun 3 13:11:38 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/feedback"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseqWithProbes"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseqWithProbes"
+ },{
+ "title": "RNAseq-(with-probes)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/RNAseqWithProbes"
+ },{
+ "title": "layout: page",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/datasets"
+ },{
+ "title": "Datasets: Level of Access",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/datasets"
+ },{
+ "title": "Status:",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/datasets"
+ },{
+ "title": "Access Level:",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/datasets"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Nov 7 10:16:12 2024 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/clt/"
+ },{
+ "title": "Using the HuBMAP CLT",
+ "mod": "Thu Nov 7 10:16:12 2024 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/clt/"
+ },{
+ "title": "Manifest Files",
+ "mod": "Thu Nov 7 10:16:12 2024 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/"
+ },{
+ "title": "Login",
+ "mod": "Thu Nov 7 10:16:12 2024 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/"
+ },{
+ "title": "Example of usage",
+ "mod": "Thu Nov 7 10:16:12 2024 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/"
+ },{
+ "title": "Note about Globus Connect Personal",
+ "mod": "Thu Nov 7 10:16:12 2024 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/"
+ },{
+ "title": "Manifest File Examples",
+ "mod": "Thu Nov 7 10:16:12 2024 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/"
+ },{
+ "title": "Checking the Status of a Transfer",
+ "mod": "Thu Nov 7 10:16:12 2024 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/"
+ },{
+ "title": "HuBMAP single cell & bulk ATAC Sequence Data",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Overview",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Description",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Definitions",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "HuBMAP ATAC Sequence Data States (Levels)",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "HuBMAP Metadata",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "HuBMAP QA/QC of raw (state0) data files",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Terms defined in this document",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "For Additional Help",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Last Updated: 6/23/2020",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Pre-alignment QC:",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Library-level Alignment QC",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Post-alignment processing QC (see Per cell QC metrics table below)",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Peak calling QC",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Final Step(s)",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Nucleosome signal",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Blacklist region fragment ratio",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Transcriptional start site (TSS) enrichment score",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Single-cell ATAC R implementation",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Bulk ATAC python implementation",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Fraction of fragments in peaks",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Total number of fragments",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Total number of fragments in peaks",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Mitochondrial fragment ratio",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Software & Documentation",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section5"
+ },{
+ "title": "Section 5 - Submissions Directory Preparation",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section5"
+ },{
+ "title": "Cellranger-atac",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Signac package",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "CRAN",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Sinto package",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "PyPI",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "Snap",
+ "mod": "Wed Mar 30 12:50:57 2022 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/assays/atacseq"
+ },{
+ "title": "HuBMAP Fast Track Projects",
+ "mod": "Wed Jun 4 11:44:20 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/fast-track-landing-page"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Jun 4 11:44:20 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/fast-track-landing-page"
+ },{
+ "title": "Frequently Asked Questions (FAQ) for Antibody Validation Reports (AVRs)",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "General AVR Questions",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "Submitting AVRs",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "What is an antibody validation report?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "How are antibodies validated within HuBMAP?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "How can I access, search and browse existing AVRs?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "Who should submit an AVR?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "Can I contribute an AVR if I am not a HuBMAP member?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "Can I add to or make changes to an existing AVR?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "Do AVRs capture species cross-reactivity?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "Is there a working group that I may join to support authoring an Organ Mapping Antibody Panel and submitting AVRs?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "How do I cite an AVR?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "How do I complete an AVR?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "How do I upload AVRs?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "Should every antibody in an OMAP have a corresponding AVR?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "Should I fill out an AVR for antibodies that work but are not included in an OMAP?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "Should I fill out an AVR for antibodies that do not work for an imaging platform or tissue?",
+ "mod": "Mon Jan 12 13:38:37 2026 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/avr/avr-faq"
+ },{
+ "title": "Developers",
+ "mod": "Thu Nov 6 15:51:45 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/_includes/sidebars/internal-toc.block"
+ },{
+ "title": "HuBMAP Developer Tools",
+ "mod": "Thu Nov 6 15:51:45 2025 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/_includes/sidebars/internal-toc.block"
+ },{
+ "title": "API 'Apps'",
+ "mod": "Thu Nov 6 15:51:45 2025 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/_includes/sidebars/internal-toc.block"
+ },{
+ "title": "Data Submitters",
+ "mod": "Thu Nov 6 15:51:45 2025 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/_includes/sidebars/internal-toc.block"
+ },{
+ "title": "General Links",
+ "mod": "Thu Nov 6 15:51:45 2025 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/_includes/sidebars/internal-toc.block"
+ },{
+ "title": "Commentary:",
+ "mod": "Tue Jan 6 16:44:34 2026 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/assays/metadata/new-metadata-test"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Jan 6 16:44:34 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/new-metadata-test"
+ },{
+ "title": "HuBMAP Metadata by Dataset Type",
+ "mod": "Tue Jan 6 16:44:34 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/new-metadata-test"
+ },{
+ "title": "layout: default",
+ "mod": "Mon May 19 12:31:18 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Uploading"
+ },{
+ "title": "Cell Type Annotations",
+ "mod": "Mon May 19 12:31:18 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Uploading"
+ },{
+ "title": "Uploading EPICs",
+ "mod": "Mon May 19 12:31:18 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/EPICs/Uploading"
+ },{
+ "title": "Issues with HuBMAP FAQ",
+ "mod": "Fri Feb 23 13:32:45 2024 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/FAQ-issues-ReadMe"
+ },{
+ "title": "Plan to Fix FAQ",
+ "mod": "Fri Feb 23 13:32:45 2024 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/FAQ-issues-ReadMe"
+ },{
+ "title": "Overall approach:",
+ "mod": "Fri Feb 23 13:32:45 2024 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/FAQ-issues-ReadMe"
+ },{
+ "title": "Specific fixes for issues detailed above:",
+ "mod": "Fri Feb 23 13:32:45 2024 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/FAQ-issues-ReadMe"
+ },{
+ "title": "Consumer-focused section",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Provider-focused section",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Assay Description",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Directories and Files",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Metadata",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Assay-level categorical field values",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Technology Overview",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Key Definitions",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Directory structure",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Files Included",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Sample-level",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Assay-level",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Antibody",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "HIVE data processing pipeline",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "Lab data processing pipeline",
+ "mod": "Wed Oct 12 09:13:02 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/template"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Sep 11 10:24:05 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/data-provider-groups"
+ },{
+ "title": "HuBMAP Data Provider Groups",
+ "mod": "Wed Sep 11 10:24:05 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/data-provider-groups"
+ },{
+ "title": "What are they?",
+ "mod": "Tue Jun 17 12:08:37 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/pass-thrus/"
+ },{
+ "title": "Current examples",
+ "mod": "Tue Jun 17 12:08:37 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/pass-thrus/"
+ },{
+ "title": "Pass Through Dataset Types",
+ "mod": "Tue Jun 17 12:08:37 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/pass-thrus/"
+ },{
+ "title": "Publishing a Pass Through Dataset Type",
+ "mod": "Tue Jun 17 12:08:37 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/pass-thrus/"
+ },{
+ "title": "HuBMAP Antibody Validation Report Repository: Uploading new reports",
+ "mod": "Wed Mar 16 15:32:03 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/avr/avr-upload"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Mar 16 15:32:03 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/avr/avr-upload"
+ },{
+ "title": "Creating a Manifest",
+ "mod": "Mon Jul 15 17:31:14 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/generate-manifest"
+ },{
+ "title": "Limitations",
+ "mod": "Mon Jul 15 17:31:14 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/generate-manifest"
+ },{
+ "title": "Example query and Manifest",
+ "mod": "Mon Jul 15 17:31:14 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/generate-manifest"
+ },{
+ "title": "Using the Generated Manifest",
+ "mod": "Mon Jul 15 17:31:14 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/clt/generate-manifest"
+ },{
+ "title": "Generating a Manifest File from SearchAPI for use with the Command Line Transfer",
+ "mod": "Mon Jul 15 17:31:14 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/clt/generate-manifest"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Jul 15 17:31:14 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/clt/generate-manifest"
+ },{
+ "title": "Visium-HD",
+ "mod": "Tue Sep 16 14:26:33 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/Visium-HD"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Sep 16 14:26:33 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Visium-HD"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Tue Sep 16 14:26:33 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Visium-HD"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Oct 30 15:53:39 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/CosMx-Proteomics"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Thu Oct 30 15:53:39 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/CosMx-Proteomics"
+ },{
+ "title": "CosMx Proteomics",
+ "mod": "Thu Oct 30 15:53:39 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/CosMx-Proteomics"
+ },{
+ "title": "Search SDK",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "Search SDK Overview",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "Search SDK Methods",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "Antibody Validation Report Repository",
+ "mod": "Mon Jan 12 12:07:29 2026 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/avr/"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Jan 12 12:07:29 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/avr/"
+ },{
+ "title": "Indices",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "Search",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "Search by Index",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "Count",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "Count by Index",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "Status",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "Reindex",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "Reindex All",
+ "mod": "Thu Feb 20 10:51:35 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/sdk/searchsdk"
+ },{
+ "title": "Raman-Imaging",
+ "mod": "Tue Jan 6 16:37:37 2026 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/Raman-Imaging"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Jan 6 16:37:37 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Raman-Imaging"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Tue Jan 6 16:37:37 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Raman-Imaging"
+ },{
+ "title": "How can I Access and Download Data?",
+ "mod": "Thu Oct 31 14:43:21 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/how-to-access-data"
+ },{
+ "title": "Sequencing (Raw Genetic) vs. Other Datasets",
+ "mod": "Thu Oct 31 14:43:21 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/how-to-access-data"
+ },{
+ "title": "Access & Download HuBMAP Data",
+ "mod": "Thu Oct 31 14:43:21 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/how-to-access-data"
+ },{
+ "title": "HuBMAP Antibody Validation Report Structure",
+ "mod": "Mon Jan 12 12:07:29 2026 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/avr/tsv-format-v2"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Jan 12 12:07:29 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/avr/tsv-format-v2"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section12"
+ },{
+ "title": "Section 12 - dbGap Submission",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section12"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-antibody"
+ },{
+ "title": "Overview:",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-antibody"
+ },{
+ "title": "HuBMAP Antibody schema",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/param-search/schema-antibody"
+ },{
+ "title": "Antibody Attributes",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-antibody"
+ },{
+ "title": "layout: page",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/pipelines"
+ },{
+ "title": "HuBMAP Pipelines",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/pipelines"
+ },{
+ "title": "CODEX",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/pipelines"
+ },{
+ "title": "SPRM – Spatial Process & Relationship Modeling",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/pipelines"
+ },{
+ "title": "Single-cell RNA sequencing",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/pipelines"
+ },{
+ "title": "Single-cell ATAC-seq",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/pipelines"
+ },{
+ "title": "Bulk RNA sequencing",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/pipelines"
+ },{
+ "title": "Bulk ATAC-seq",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/pipelines"
+ },{
+ "title": "PhenoCycler",
+ "mod": "Mon Aug 26 15:50:07 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/PhenoCycler"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:50:07 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/PhenoCycler"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 26 15:50:07 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/PhenoCycler"
+ },{
+ "title": "Example Data Query and Download",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/param-search/data-query-download-example"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/data-query-download-example"
+ },{
+ "title": "Overview",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/data-query-download-example"
+ },{
+ "title": "Description",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/data-query-download-example"
+ },{
+ "title": "Example Query and Download",
+ "mod": "Mon Apr 14 14:55:55 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/data-query-download-example"
+ },{
+ "title": "Publication Page Upload Workflow",
+ "mod": "Wed Jul 2 14:05:35 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/Publications/"
+ },{
+ "title": "layout: default",
+ "mod": "Wed Jul 2 14:05:35 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/Publications/"
+ },{
+ "title": "Introduction",
+ "mod": "Wed Jul 2 14:05:35 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/Publications/"
+ },{
+ "title": "Prerequisites",
+ "mod": "Wed Jul 2 14:05:35 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/Publications/"
+ },{
+ "title": "Contacts",
+ "mod": "Wed Jul 2 14:05:35 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/Publications/"
+ },{
+ "title": "Viewing The Current Globus Download Directory",
+ "mod": "Mon Jul 1 03:17:47 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/clt/view-globus-download-location"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Jul 1 03:17:47 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/clt/view-globus-download-location"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section6"
+ },{
+ "title": "Section 6 - Preparing Metadata",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section6"
+ },{
+ "title": "Data Submission Guide",
+ "mod": "",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/data-submission/README"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "Overview",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "Description",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "HuBMAP Whole Genome Sequencing Data States (Levels)",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "HuBMAP Metadata:",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "Values to be produced by HIVE Pipeline",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "HuBMAP WGS Sequence Raw File Structure",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "HuBMAP QA/QC of raw (state0) data files",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "Terms defined in this document",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "For Additional Help",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "HuBMAP Whole Genome Sequencing (WGS)",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "Last Updated 6/23/2020",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "Pre-alignment QC with FastQC",
+ "mod": "Thu Mar 3 15:14:08 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/wgs"
+ },{
+ "title": "layout: external-TOC2",
+ "mod": "Thu Oct 17 10:31:30 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/doc-sitemap-external"
+ },{
+ "title": "HuBMAP Data",
+ "mod": "Thu Oct 17 10:31:30 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/doc-sitemap-external"
+ },{
+ "title": "HuBMAP Tools",
+ "mod": "Thu Oct 17 10:31:30 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/doc-sitemap-external"
+ },{
+ "title": "Search APIs",
+ "mod": "Thu Oct 17 10:31:30 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/doc-sitemap-external"
+ },{
+ "title": "Getting Data",
+ "mod": "Thu Oct 17 10:31:30 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/doc-sitemap-external"
+ },{
+ "title": "HuBMAP Documentation",
+ "mod": "Thu Oct 17 10:31:30 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/doc-sitemap-external"
+ },{
+ "title": "Developers",
+ "mod": "Thu Oct 17 10:31:30 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/doc-sitemap-external"
+ },{
+ "title": "Other Stakeholders",
+ "mod": "Thu Oct 17 10:31:30 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/doc-sitemap-external"
+ },{
+ "title": "HuBMAP Cell DIVE Data (GE Research)",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "Last Updated: 12/18/2020",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "Description:",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "Definitions:",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "Terms defined in this document:",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "HuBMAP Cell DIVE Data States (Levels):",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "HuBMAP Metadata",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "Associated Metadata Content:",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "HuBMAP Cell DIVE Raw File Structure:",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "Cell DIVE Processing by the HIVE:",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "QA/QC of processed microscopy data (state 1):",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "For Additional Help:",
+ "mod": "Thu Mar 3 13:14:47 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/celldive"
+ },{
+ "title": "HuBMAP Donor schema",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/param-search/schema-donor"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-donor"
+ },{
+ "title": "Overview:",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-donor"
+ },{
+ "title": "Description:",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/schema-donor"
+ },{
+ "title": "Dataset Attributes",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-donor"
+ },{
+ "title": "Donor Metadata Schema",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-donor"
+ },{
+ "title": "data_access_level attribute values",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/schema-donor"
+ },{
+ "title": "About",
+ "mod": "Fri Feb 11 11:33:54 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/about"
+ },{
+ "title": "layout: page",
+ "mod": "Fri Feb 11 11:33:54 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/about"
+ },{
+ "title": "HuBMAP Consortium",
+ "mod": "Fri Feb 11 11:33:54 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/about"
+ },{
+ "title": "Consortium Data Access Policies & Procedures",
+ "mod": "Fri Feb 11 11:33:54 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/about"
+ },{
+ "title": "Consortium Data Use Agreement (DUA)",
+ "mod": "Fri Feb 11 11:33:54 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/about"
+ },{
+ "title": "Protected Data & Access via dbGaP",
+ "mod": "Fri Feb 11 11:33:54 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/about"
+ },{
+ "title": "Citation",
+ "mod": "Fri Feb 11 11:33:54 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/about"
+ },{
+ "title": "Funding",
+ "mod": "Fri Feb 11 11:33:54 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/about"
+ },{
+ "title": "Contact",
+ "mod": "Fri Feb 11 11:33:54 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/about"
+ },{
+ "title": "Team",
+ "mod": "Fri Feb 11 11:33:54 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/about"
+ },{
+ "title": "Software",
+ "mod": "Fri Feb 11 11:33:54 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/about"
+ },{
+ "title": "HuBMAP Autofluorescence Microscopy (AF)",
+ "mod": "Thu Mar 3 13:01:59 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/af"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Mar 3 13:01:59 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/af"
+ },{
+ "title": "Overview:",
+ "mod": "Thu Mar 3 13:01:59 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/af"
+ },{
+ "title": "Description:",
+ "mod": "Thu Mar 3 13:01:59 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/af"
+ },{
+ "title": "Definitions:",
+ "mod": "Thu Mar 3 13:01:59 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/af"
+ },{
+ "title": "HuBMAP AF Data States (Levels):",
+ "mod": "Thu Mar 3 13:01:59 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/af"
+ },{
+ "title": "HuBMAP Metadata:",
+ "mod": "Thu Mar 3 13:01:59 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/af"
+ },{
+ "title": "Associated Metadata files:",
+ "mod": "Thu Mar 3 13:01:59 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/af"
+ },{
+ "title": "Terms defined in this document:",
+ "mod": "Thu Mar 3 13:01:59 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/af"
+ },{
+ "title": "For Additional Help:",
+ "mod": "Thu Mar 3 13:01:59 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/af"
+ },{
+ "title": "Last Updated: 6/15/2020",
+ "mod": "Thu Mar 3 13:01:59 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/af"
+ },{
+ "title": "HuBMAP PAS Stained Microscopy",
+ "mod": "Thu Mar 3 12:46:25 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/pas"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Mar 3 12:46:25 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/pas"
+ },{
+ "title": "Overview",
+ "mod": "Thu Mar 3 12:46:25 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/pas"
+ },{
+ "title": "Description",
+ "mod": "Thu Mar 3 12:46:25 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/pas"
+ },{
+ "title": "Definitions",
+ "mod": "Thu Mar 3 12:46:25 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/pas"
+ },{
+ "title": "HuBMAP Stained Microscopy Data States (Levels)",
+ "mod": "Thu Mar 3 12:46:25 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/pas"
+ },{
+ "title": "HuBMAP Metadata",
+ "mod": "Thu Mar 3 12:46:25 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/pas"
+ },{
+ "title": "Associated Metadata files",
+ "mod": "Thu Mar 3 12:46:25 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/pas"
+ },{
+ "title": "Terms defined in this document",
+ "mod": "Thu Mar 3 12:46:25 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/pas"
+ },{
+ "title": "For Additional Help",
+ "mod": "Thu Mar 3 12:46:25 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/pas"
+ },{
+ "title": "Last Updated 6/15/2020",
+ "mod": "Thu Mar 3 12:46:25 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/pas"
+ },{
+ "title": "HuBMAP Parameterized Search",
+ "mod": "Wed Sep 11 10:24:05 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/param-search/"
+ },{
+ "title": "Inputs",
+ "mod": "Wed Sep 11 10:24:05 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/"
+ },{
+ "title": "Response",
+ "mod": "Wed Sep 11 10:24:05 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/param-search/"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Sep 11 10:24:05 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/"
+ },{
+ "title": "Overview:",
+ "mod": "Wed Sep 11 10:24:05 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/"
+ },{
+ "title": "Description:",
+ "mod": "Wed Sep 11 10:24:05 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/"
+ },{
+ "title": "Examples:",
+ "mod": "Wed Sep 11 10:24:05 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/"
+ },{
+ "title": "Common document elements:",
+ "mod": "Wed Sep 11 10:24:05 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/param-search/"
+ },{
+ "title": "Microscopy Metadata Captured to date... (as of 11-06-2023)",
+ "mod": "Wed Feb 26 15:27:43 2025 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/microscopy-metadata-links"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Feb 26 15:27:43 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/microscopy-metadata-links"
+ },{
+ "title": "How to Use this Table (above...)",
+ "mod": "Wed Feb 26 15:27:43 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/microscopy-metadata-links"
+ },{
+ "title": "Some Helpful Links related to Microscopy Metadata",
+ "mod": "Wed Feb 26 15:27:43 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/microscopy-metadata-links"
+ },{
+ "title": "Acknowledgements",
+ "mod": "Wed Feb 26 15:27:43 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/microscopy-metadata-links"
+ },{
+ "title": "HuBMAP Antibody Validation Report CSV Structure",
+ "mod": "Tue Mar 22 14:31:39 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/avr/csv-format"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Mar 22 14:31:39 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/avr/csv-format"
+ },{
+ "title": "Enhanced-SRS",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/EnhancedSRS"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/EnhancedSRS"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 26 15:19:00 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/EnhancedSRS"
+ },{
+ "title": "Tissue Placement",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section4"
+ },{
+ "title": "Tissue Registration Issues",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section4"
+ },{
+ "title": "Best Practices",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section4"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section4"
+ },{
+ "title": "Section 4 - RUI Tissue Blocks",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section4"
+ },{
+ "title": "Assay Description",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Directories and Files",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Metadata",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Consumer-focused section",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Provider-focused section",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Assay-level categorical field values",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Technology Overview",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Key Definitions",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Directory structure",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Files Included",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Sample-level",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Assay-level",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Antibody",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "HIVE data processing pipeline",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "Lab data processing pipeline",
+ "mod": "Wed Oct 12 12:43:48 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/example"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section1"
+ },{
+ "title": "Section 1 - Prerequisites",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section1"
+ },{
+ "title": "Different ways to create a New Protocol",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section1"
+ },{
+ "title": "Creating an entirely new protocol (from 'scratch'):",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "Create-New-Protocol",
+ "path": "/data-submission/Section1"
+ },{
+ "title": "Publishing your new protocol:",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section1"
+ },{
+ "title": "Revise a Protocol you created previously",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section1"
+ },{
+ "title": "Create a new protocol based on someone else's Protocol",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section1"
+ },{
+ "title": "HuBMAP Matrix Assisted Laser Desorption/Ionization (MALDI) Imaging Mass Spectrometry (IMS)",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "layout: page",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "Overview",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "Description",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "Definitions",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "HuBMAP Data States (Levels)",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "HuBMAP Metadata",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "Associated JSON Files",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "HuBMAP MALDI-IMS File Structure",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "HuBMAP QC/QA for Level 1 MALDI IMS Data",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "Terms defined in this document",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "For Additional Help",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "Last updated: 6/12/2020",
+ "mod": "Wed Mar 30 13:14:58 2022 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/maldi-ims"
+ },{
+ "title": "HuBMAP Data",
+ "mod": "Thu Nov 6 14:51:23 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/_includes/sidebars/external-toc.block"
+ },{
+ "title": "HuBMAP Tools",
+ "mod": "Thu Nov 6 14:51:23 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/_includes/sidebars/external-toc.block"
+ },{
+ "title": "Developers",
+ "mod": "Thu Nov 6 14:51:23 2025 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/_includes/sidebars/external-toc.block"
+ },{
+ "title": "Other Stakeholders",
+ "mod": "Thu Nov 6 14:51:23 2025 -0500",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/_includes/sidebars/external-toc.block"
+ },{
+ "title": "HuBMAP Data Consent",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/consent"
+ },{
+ "title": "layout: page",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/consent"
+ },{
+ "title": "Genomic Data Sharing",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/consent"
+ },{
+ "title": "Context:",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/consent"
+ },{
+ "title": "Additional Information:",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/consent"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "General Questions",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "Introduction to HuBMAP resources",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "Getting Started with the HuBMAP Data Portal",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "HuBMAP Data and Metadata Questions",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "API (Application Programming Interface) Questions",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "Experimental Design & Data Analysis Questions",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "Human Reference Atlas (HRA) APIs",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "University of Florida:",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "Vanderbilt University:",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "UCSD:",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h4",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "HuBMAP Frequently Asked Questions (FAQ)",
+ "mod": "Thu Jun 13 16:14:14 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/faq"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Jan 6 16:37:37 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/"
+ },{
+ "title": "HuBMAP Metadata Attributes by Dataset Type",
+ "mod": "Tue Jan 6 16:37:37 2026 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/"
+ },{
+ "title": "Acknowledgment of Manufacturers in Compliance with NBO-Q",
+ "mod": "Wed Oct 23 14:59:26 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/microscopy-manufacturer-credit"
+ },{
+ "title": "Text for use with Assay Descriptions using Compliant Instruments",
+ "mod": "Wed Oct 23 14:59:26 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/microscopy-manufacturer-credit"
+ },{
+ "title": "Text for Social Media",
+ "mod": "Wed Oct 23 14:59:26 2024 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/microscopy-manufacturer-credit"
+ },{
+ "title": "Last Updated 6/15/2020",
+ "mod": "Thu Mar 3 14:32:05 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/mxif"
+ },{
+ "title": "HuBMAP Multiplexed Immunofluorescence (MxIF)",
+ "mod": "Thu Mar 3 14:32:05 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/mxif"
+ },{
+ "title": "layout: page",
+ "mod": "Thu Mar 3 14:32:05 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/mxif"
+ },{
+ "title": "Overview",
+ "mod": "Thu Mar 3 14:32:05 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/mxif"
+ },{
+ "title": "Description",
+ "mod": "Thu Mar 3 14:32:05 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/mxif"
+ },{
+ "title": "Definitions",
+ "mod": "Thu Mar 3 14:32:05 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/mxif"
+ },{
+ "title": "HuBMAP CODEX Data States (Levels)",
+ "mod": "Thu Mar 3 14:32:05 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/mxif"
+ },{
+ "title": "HuBMAP Metadata",
+ "mod": "Thu Mar 3 14:32:05 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/mxif"
+ },{
+ "title": "Associated Metadata Files",
+ "mod": "Thu Mar 3 14:32:05 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/mxif"
+ },{
+ "title": "Terms defined in this document",
+ "mod": "Thu Mar 3 14:32:05 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/mxif"
+ },{
+ "title": "For Additional Help",
+ "mod": "Thu Mar 3 14:32:05 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/mxif"
+ },{
+ "title": "EPICs",
+ "mod": "",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/data-submission/Section8"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section8"
+ },{
+ "title": "Section 8 - Creating an Upload Directory",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section8"
+ },{
+ "title": "Access",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/release-summer-2020"
+ },{
+ "title": "Search & View",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/release-summer-2020"
+ },{
+ "title": "Analysis & Infrastructure",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/release-summer-2020"
+ },{
+ "title": "HuBMAP Portal Release - Summer 2020",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/release-summer-2020"
+ },{
+ "title": "layout: page",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/release-summer-2020"
+ },{
+ "title": "Key Features",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/release-summer-2020"
+ },{
+ "title": "Future Releases",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/release-summer-2020"
+ },{
+ "title": "layout: page",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Olink"
+ },{
+ "title": "Version 2 (current)",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/metadata/Olink"
+ },{
+ "title": "Olink",
+ "mod": "Mon Aug 11 12:33:39 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/metadata/Olink"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section11"
+ },{
+ "title": "Section 11 - Data Review",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section11"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/prov-graph"
+ },{
+ "title": "Overview:",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/prov-graph"
+ },{
+ "title": "Description:",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/prov-graph"
+ },{
+ "title": "HuBMAP Provenance Graph",
+ "mod": "Tue Aug 27 14:21:02 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/prov-graph"
+ },{
+ "title": "layout: page",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "Description:",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "Definitions:",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "HuBMAP nano/micro-DESI Data States (Levels):",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "HuBMAP Metadata:",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "Associated Metadata Files:",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "Additional Tags and Definitions:",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "QC/QA for Level 1 nano-DESI HuBMAP Data",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "For Additional Help:",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "HuBMAP Nano-DESI (Desorption Electrospray Ionization) & nanoPOTS (Processing in One Pot for Trace Samples )",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "Last Updated: 12/18/2020",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "HuBMAP nano-DESI & nano-POTS File Structure:",
+ "mod": "Fri Feb 11 12:35:10 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/assays/nano"
+ },{
+ "title": "Sample Bulk Registration",
+ "mod": "Mon May 12 10:01:12 2025 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/bulk-registration/sample-bulk-reg"
+ },{
+ "title": "layout: page",
+ "mod": "Mon May 12 10:01:12 2025 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/bulk-registration/sample-bulk-reg"
+ },{
+ "title": "layout: external-TOC2",
+ "mod": "Thu Oct 31 15:24:21 2024 -0400",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/about-docs"
+ },{
+ "title": "Sample Bulk Registration TSV Fields",
+ "mod": "Mon May 12 10:01:12 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/bulk-registration/sample-bulk-reg"
+ },{
+ "title": "Sample Metadata Submission",
+ "mod": "Mon May 12 10:01:12 2025 -0400",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/bulk-registration/sample-bulk-reg"
+ },{
+ "title": "HuBMAP - The Human BioMolecular Atlas Program",
+ "mod": "Thu Oct 31 15:24:21 2024 -0400",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/about-docs"
+ },{
+ "title": "HuBMAP Infrastructure",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/infrastructure"
+ },{
+ "title": "layout: page",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/infrastructure"
+ },{
+ "title": "Hybrid Deployment",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/infrastructure"
+ },{
+ "title": "Microservices Architecture",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/infrastructure"
+ },{
+ "title": "layout: page",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "Format",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "Content",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "Donor Metadata",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "Data Source",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "Data Extraction and Transformation",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "donor_id",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "source_name",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "start_datetime",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "end_datetime",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "graph_version",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "concept_id",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "code",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "sab",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "data_type",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "data_value",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "numeric_operator",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "units",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "preferred_term",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "grouping_concept",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "grouping_concept_preferred_term",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "grouping_code",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "grouping_sab",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "basic_demographics",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "more",
+ "mod": "Tue Dec 6 11:36:06 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/donor"
+ },{
+ "title": "HuBMAP Data Submission",
+ "mod": "Fri Nov 7 10:03:18 2025 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/"
+ },{
+ "title": "HuBMAP Software Documentation",
+ "mod": "Fri Nov 7 10:03:18 2025 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/"
+ },{
+ "title": "layout: page-secondary",
+ "mod": "Fri Nov 7 10:03:18 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/"
+ },{
+ "title": "APIs",
+ "mod": "Fri Nov 7 10:03:18 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/"
+ },{
+ "title": "SDK",
+ "mod": "Fri Nov 7 10:03:18 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/"
+ },{
+ "title": "HuBMAP Command Line Transfer Tool",
+ "mod": "Fri Nov 7 10:03:18 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/"
+ },{
+ "title": "The HuBMAP Microservice Architecture",
+ "mod": "Fri Nov 7 10:03:18 2025 -0500",
+ "tag": "h3",
+ "tagId": "the-hubmap-microservice-architecture",
+ "path": "/"
+ },{
+ "title": "layout: default",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section9"
+ },{
+ "title": "Section 9 - Clinical Human Metadata",
+ "mod": "",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-submission/Section9"
+ },{
+ "title": "layout: page",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Description:",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Infratructure/ Base Product",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Tissue/ sample prep/ core data",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Spatial registration and semantic annotation (via 3D collision detection)",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Data & Metadata",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Pipeline",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Reference Mapping",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "QA",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Search & Download",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Visualization",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Operations",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Last Updaed: 2/19/2021",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "HuBMAP Product Offerings: Project Management, Communication, Tracking, & Reporting",
+ "mod": "Fri Jan 7 16:10:55 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/software"
+ },{
+ "title": "Not Found",
+ "mod": "Mon Nov 10 15:23:37 2025 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/404"
+ },{
+ "title": "Data and Code Availability",
+ "mod": "Mon Nov 10 15:05:52 2025 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/alpha-index-tools"
+ },{
+ "title": "Relevant GitHub Repositories",
+ "mod": "Mon Nov 10 15:05:52 2025 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/alpha-index-tools"
+ },{
+ "title": "Alphabetical Index of HuBMAP Tools",
+ "mod": "Mon Nov 10 15:05:52 2025 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/alpha-index-tools"
+ },{
+ "title": "Developer Tools",
+ "mod": "Tue Nov 12 16:52:24 2024 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/doc-sitemap-internal"
+ },{
+ "title": "Application-specific APIs",
+ "mod": "Tue Nov 12 16:52:24 2024 -0500",
+ "tag": "h3",
+ "tagId": "",
+ "path": "/doc-sitemap-internal"
+ },{
+ "title": "HuBMAP Documentation",
+ "mod": "Tue Nov 12 16:52:24 2024 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/doc-sitemap-internal"
+ },{
+ "title": "layout: internal-TOC2",
+ "mod": "Tue Nov 12 16:52:24 2024 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/doc-sitemap-internal"
+ },{
+ "title": "Developers",
+ "mod": "Tue Nov 12 16:52:24 2024 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/doc-sitemap-internal"
+ },{
+ "title": "Data Submitters",
+ "mod": "Tue Nov 12 16:52:24 2024 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/doc-sitemap-internal"
+ },{
+ "title": "General Links",
+ "mod": "Tue Nov 12 16:52:24 2024 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/doc-sitemap-internal"
+ },{
+ "title": "HuBMAP Data & Metadata States",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/data-states"
+ },{
+ "title": "Metadata",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/data-states"
+ },{
+ "title": "Data",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/data-states"
+ },{
+ "title": "Dataset",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h1",
+ "tagId": "",
+ "path": "/data-states"
+ },{
+ "title": "layout: page",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-states"
+ },{
+ "title": "Donor Metadata Status",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-states"
+ },{
+ "title": "Sample Metadata Status",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-states"
+ },{
+ "title": "Assay Metadata Status",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-states"
+ },{
+ "title": "Quality Metric Availability",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-states"
+ },{
+ "title": "Processing Level",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-states"
+ },{
+ "title": "Sign-Off Status",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-states"
+ },{
+ "title": "Dataset Staging",
+ "mod": "Fri Feb 11 12:21:44 2022 -0500",
+ "tag": "h2",
+ "tagId": "",
+ "path": "/data-states"
+ },{}]
\ No newline at end of file
diff --git a/gulpfile.js b/gulpfile.js
index 268640e..99dc0ca 100644
--- a/gulpfile.js
+++ b/gulpfile.js
@@ -108,3 +108,117 @@ exports.default = function () {
gulp.watch('src/js/*.js', js)
gulp.watch('src/styles/**/*.styl', touch)
}
+
+
+// Site search
+const fs = require('fs');
+const path = require('path');
+const { DOMParser } = require('xmldom')
+let marked = {}
+let searchDict = {}
+
+function writeToFile(content, method = 'appendFile') {
+ fs[method]('./docs/js/site-search-data.json', content, (err) => {
+ if (err) {
+ console.error('Error writing file:', err);
+ return;
+ }
+ })
+}
+
+function createIndex(path, statsSync) {
+ const urlPath = path.replace('docs/', '')
+ console.log(path)
+ fs.readFile(path, 'utf8', (err, data) => {
+ try {
+ let htmlString = data
+ if (path.indexOf('.md') > -1) {
+ htmlString = marked.parse(data)
+ }
+
+ const parser = new DOMParser();
+ const doc = parser.parseFromString(htmlString, 'text/html');
+
+ const headerTags = ['h1', 'h2', 'h3', 'h4']
+ for (let tag of headerTags) {
+ const headerCollection = doc.getElementsByTagName(tag)
+ const headers = Array.from(headerCollection);
+ if (headers.length) {
+ let content = ''
+ for (let h of headers) {
+ let title = h.textContent.replaceAll('"', "'").trim()
+ if (h.textContent != 'Table of Contents' && !searchDict[title+urlPath]) {
+ content += `{
+ "title": "${title}",
+ "mod": "${statsSync.trim()}",
+ "tag": "${tag}",
+ "tagId": "${h.getAttribute('id')}",
+ "path": "/${urlPath.replace(new RegExp(/(index\.(html|md)|\.(html|md))/), '')}"
+ },`
+ searchDict[title+urlPath] = true
+ }
+
+ }
+ writeToFile(content)
+ }
+ }
+ } catch(e) {
+ console.error('Index error: ', path, e)
+ }
+ });
+}
+
+function getAllFilesRecursively(directoryPath) {
+ let filePaths = [];
+ const filesAndFolders = fs.readdirSync(directoryPath);
+ const excludedNames = ['_site', '_layouts', '.sass-cache', 'js', ];
+ const filteredContents = filesAndFolders.filter(item => !excludedNames.includes(item));
+
+ for (const item of filteredContents) {
+ const fullPath = path.join(directoryPath, item);
+ const stats = fs.statSync(fullPath);
+
+ if (stats.isFile()) {
+ filePaths.push(fullPath);
+ } else if (stats.isDirectory()) {
+ filePaths = filePaths.concat(getAllFilesRecursively(fullPath));
+ }
+ }
+
+ for (let f of filePaths) {
+ if ( f.indexOf('.html') > -1 || f.indexOf('.md') > -1 ) {
+ try {
+ exec('git log -1 --format="%ad" -- '+f, (error, stdout, stderr) => {
+ createIndex(f, stdout)
+ })
+ }
+ catch (err) {
+ console.error('Error getting file stats synchronously:', err);
+ }
+ }
+ }
+
+ return filePaths;
+}
+
+function buildSearchIndicies(done) {
+
+ import('marked')
+ .then(module => {
+ marked = module
+ writeToFile('[', 'writeFile')
+ getAllFilesRecursively('./docs')
+ done()
+ })
+ .catch(error => {
+ console.error('Failed to load module:', error);
+ })
+}
+
+function endBuildSearchIndicies(done) {
+ writeToFile('{}]')
+ done()
+}
+
+gulp.task('search', buildSearchIndicies)
+gulp.task('searchEnd', endBuildSearchIndicies)
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index bc4755a..717d6ec 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9,7 +9,9 @@
"version": "0.1.0",
"dependencies": {
"gulp-header": "^2.0.9",
- "gulp-stylus": "^3.0.0"
+ "gulp-stylus": "^3.0.0",
+ "marked": "^17.0.1",
+ "xmldom": "^0.6.0"
},
"devDependencies": {
"@babel/cli": "^7.19.3",
@@ -6214,6 +6216,17 @@
"node": ">=0.10.0"
}
},
+ "node_modules/marked": {
+ "version": "17.0.1",
+ "resolved": "https://registry.npmjs.org/marked/-/marked-17.0.1.tgz",
+ "integrity": "sha512-boeBdiS0ghpWcSwoNm/jJBwdpFaMnZWRzjA6SkUMYb40SVaN1x7mmfGKp0jvexGcx+7y2La5zRZsYFZI6Qpypg==",
+ "bin": {
+ "marked": "bin/marked.js"
+ },
+ "engines": {
+ "node": ">= 20"
+ }
+ },
"node_modules/matchdep": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz",
@@ -9262,6 +9275,14 @@
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
},
+ "node_modules/xmldom": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.6.0.tgz",
+ "integrity": "sha512-iAcin401y58LckRZ0TkI4k0VSM1Qg0KGSc3i8rU+xrxe19A/BN1zHyVSJY7uoutVlaTSzYyk/v5AmkewAP7jtg==",
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
"node_modules/xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
@@ -14132,6 +14153,11 @@
"object-visit": "^1.0.0"
}
},
+ "marked": {
+ "version": "17.0.1",
+ "resolved": "https://registry.npmjs.org/marked/-/marked-17.0.1.tgz",
+ "integrity": "sha512-boeBdiS0ghpWcSwoNm/jJBwdpFaMnZWRzjA6SkUMYb40SVaN1x7mmfGKp0jvexGcx+7y2La5zRZsYFZI6Qpypg=="
+ },
"matchdep": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz",
@@ -16617,6 +16643,11 @@
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
},
+ "xmldom": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.6.0.tgz",
+ "integrity": "sha512-iAcin401y58LckRZ0TkI4k0VSM1Qg0KGSc3i8rU+xrxe19A/BN1zHyVSJY7uoutVlaTSzYyk/v5AmkewAP7jtg=="
+ },
"xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
diff --git a/package.json b/package.json
index d7e2d05..d871326 100644
--- a/package.json
+++ b/package.json
@@ -25,7 +25,8 @@
"html": "concurrently \"gulp html-layouts\" \"gulp html-pages\" ",
"css": "gulp css && cp docs/css/main.css docs/_site/css/main.css",
"start": "concurrently \"serve -l 3005 ./docs\" \"gulp\"",
- "build": "concurrently \"npm:js\" \"npm:css\" \"npm:html\""
+ "search": "gulp search && gulp searchEnd",
+ "build": "concurrently \"npm:js\" \"npm:css\" \"npm:html\" \"npm:search\""
},
"prettier": {
"singleQuote": true,
@@ -36,6 +37,8 @@
},
"dependencies": {
"gulp-header": "^2.0.9",
- "gulp-stylus": "^3.0.0"
+ "gulp-stylus": "^3.0.0",
+ "marked": "^17.0.1",
+ "xmldom": "^0.6.0"
}
}
diff --git a/src/js/App.js b/src/js/App.js
index 3c41baa..b76c977 100644
--- a/src/js/App.js
+++ b/src/js/App.js
@@ -94,8 +94,14 @@ class App {
static async loadLanguageFile() {
try {
if (window.apps.locale) return true
- const res = await Rest.get(`/lang/${LocalStore.getLanguage()}.json`)
+ let res = await Rest.get(`/lang/${LocalStore.getLanguage()}.json`)
window.apps.locale = await res.json()
+
+ res = await Rest.get('/js/site-search-data.json')
+ if (res.ok) {
+ window.apps.searchData = await res.json()
+ window.apps.searchData.pop()
+ }
} catch (e) {
console.error(e)
}
@@ -112,27 +118,11 @@ class App {
}
static applyStyles(args) {
- let css = ''
- $('img').each(function( i ) {
- let width = $(this).attr('width')
- if (width && parseInt(width) > 0 && !$(this).hasClass('w-fixed')) {
- let cls = `imgw--${i}`
- $(this).addClass(`${cls}`)
- width = parseInt(width).toString() === width ? width + 'px' : width
- css += `.${cls} {max-width: ${width};}`
+ $('table').each(function( i ) {
+ if (!$(this).parent().hasClass('c-table--scrollable')) {
+ $(this).wrap('')
}
})
- if (css.length) {
- $('body').append(``)
- }
-
- new CodeCopy(document, {app: 'codeCopy', ...args})
-
- $('pre').each(function( i ) {
- new Pre(this, {app: '', ...args})
- })
-
-
}
static applyTheme() {
diff --git a/src/js/FileMeta.js b/src/js/FileMeta.js
index 4355bd9..6e41cd2 100644
--- a/src/js/FileMeta.js
+++ b/src/js/FileMeta.js
@@ -8,6 +8,14 @@ class FileMeta extends App {
this.addDate()
}
+ toDate(lastMod) {
+ let date = new Date(lastMod)
+ let formattedDate = date.toLocaleDateString('en-US')
+ let formattedTime = date.toLocaleTimeString('en-US')
+
+ this.$.date.html(formattedDate + ' @ ' + formattedTime)
+ }
+
async addDate() {
let lastMod = null
try {
@@ -16,21 +24,29 @@ class FileMeta extends App {
path += 'index'
}
if (!path) return
+
+ // Find file stat from search indicies
+ let p = path
+
+ for (let d of window.apps.searchData) {
+ if (p.toLowerCase() == d.path.toLowerCase() && d.mod.length) {
+ this.toDate(d.mod)
+ this.$.label.addClass(this.classNames.active)
+ return
+ }
+ }
+
+ // If not found, use the meta from the server
let paths = []
if (path.split('.').pop() === path) {
paths = [`${path}.html`, `${path}.md`]
}
for (let p of paths) {
if (this.$.date.html() && this.$.date.html().length) return
-
let r = await Rest.get(p, 'text/plain')
if (r.ok) {
lastMod = r.headers.get('last-modified')
- let date = new Date(lastMod)
- let formattedDate = date.toLocaleDateString('en-US')
- let formattedTime = date.toLocaleTimeString('en-US')
-
- this.$.date.html(formattedDate + ' @ ' + formattedTime)
+ this.toDate(lastMod)
this.$.label.addClass(this.classNames.active)
} else {
this.$.label.removeClass(this.classNames.active)
diff --git a/src/js/Search.js b/src/js/Search.js
new file mode 100644
index 0000000..733a232
--- /dev/null
+++ b/src/js/Search.js
@@ -0,0 +1,83 @@
+class Search extends App {
+ constructor(el, args) {
+ super(el, args)
+ this.data = []
+ this.$ = {
+ btn: this.el.find('button'),
+ io: this.el.find('input'),
+ list: this.el.find('.list-group')
+ }
+
+ this.getData()
+ this.events()
+ }
+
+ getData() {
+ this.data = window.apps.searchData
+ }
+
+ searchSite(val) {
+ let found = []
+ let dict = {}
+ for (let d of this.data) {
+ if (d?.title.toLowerCase().indexOf(val.toLowerCase()) > -1 && !dict[d.path]) {
+ found.push(d)
+ dict[d.path] = true
+ }
+ }
+ let html = ''
+ for (let d of found) {
+ html += `${d.title} ${d.path}`
+ }
+ this.$.list.addClass('is-active')
+ if (!found.length) {
+ html = 'No results'
+ }
+ this.$.list.html(html)
+
+
+ }
+
+ clearResults() {
+ this.$.list.removeClass('is-active')
+ this.$.list.html('')
+ }
+
+ closeSearch() {
+ this.$.io.val('')
+ this.clearResults()
+ this.$.io.addClass('is-hidden')
+ }
+
+ events() {
+ this.$.btn.on('click', ((e)=> {
+ e.preventDefault()
+ this.clearResults()
+ if (this.$.io.val().length && !this.$.io.hasClass('is-hidden')) {
+ this.searchSite(this.$.io.val())
+ } else {
+ this.$.io.val('')
+ this.$.io.toggleClass('is-hidden')
+ if (!this.$.io.hasClass('is-hidden')) {
+ this.$.io.focus()
+ }
+ }
+
+
+
+ }).bind(this))
+
+ $(window).on('keydown', ((e) => {
+ if (this.isEsc(e)) {
+ this.closeSearch()
+ }
+ }).bind(this));
+
+ $('[role="main"]').on('click', ((e) => {
+ e.stopPropagation()
+ this.closeSearch()
+ }).bind(this));
+ }
+
+
+}
\ No newline at end of file
diff --git a/src/js/ZIndex.js b/src/js/ZIndex.js
index 056bf69..6455ca7 100644
--- a/src/js/ZIndex.js
+++ b/src/js/ZIndex.js
@@ -20,11 +20,13 @@ function ZIndex(source, args = null) {
breadcrumbs: Breadcrumbs,
footer: Footer,
fileMeta: FileMeta,
- gtm: GTM
+ gtm: GTM,
+ search: Search
}
args = args || window.apps.init
try {
+ App.applyStyles(args)
for (let app in apps) {
document
.querySelectorAll(`[class*='js-app--${app}'], [data-js-${app}]`)
diff --git a/src/pug/components/layout/header.pug b/src/pug/components/layout/header.pug
index be3c3b5..ac5a0b1 100644
--- a/src/pug/components/layout/header.pug
+++ b/src/pug/components/layout/header.pug
@@ -14,4 +14,11 @@ header.c-header.navbar.navbar-expand-lg(role='navigation')
span.navbar-toggler-icon
.c-header__menu#js-header__menu.collapse.navbar-collapse
ul.navbar-nav.mr-auto
- | {% include {{ include.content_to_render }} %}
\ No newline at end of file
+ | {% include {{ include.content_to_render }} %}
+
+ .c-header__search.js-app--search
+ form
+ input.is-hidden#js-searchInput(type='search' placeholder='Search' aria-label='Search')
+ button.btn.btn-outline-success.my-2.my-sm-0(type='submit' aria-label="Search" aria-controls='js-searchInput')
+ i.fa.fa-search(aria-hidden='true')
+ .list-group
\ No newline at end of file
diff --git a/src/styles/components/_header.styl b/src/styles/components/_header.styl
index c0c7a55..588f1c7 100644
--- a/src/styles/components/_header.styl
+++ b/src/styles/components/_header.styl
@@ -50,6 +50,58 @@
+md-max()
top 15px
+ &__search
+ +lg()
+ pos-abs()
+ right -50px
+ input
+ padding 7px 10px
+ width auto
+ transition all .5s ease
+ opacity 1
+ &.is-hidden
+ width 0
+ opacity 0
+ border 0
+ padding 0
+ .list-group
+ pos-abs()
+ z-index 1000
+ background-color white
+ display flex
+ flex-direction column
+ padding-left 0
+ margin-bottom 0
+ width 300px
+ max-height 400px
+ overflow-y auto
+ overflow-x hidden
+ border-radius 3px
+ width 0
+ opacity 0
+ transition .5s ease opacity
+ &.is-active
+ border solid 1px $col-lgt-grey
+ width 300px
+ opacity 1
+ li
+ margin 0
+ border-bottom solid 1px $col-lgt-grey
+ &::marker
+ content ''
+ a,span
+ font-weight normal
+ max-width 280px
+ white-space nowrap
+ overflow hidden
+ text-overflow ellipsis
+ font-size 14px
+ color $col-dk-grey
+ padding 5px 10px
+ display block
+ &:hover
+ color $col-primary-blue
+
li
p1()
color white
@@ -64,6 +116,7 @@
pos-abs()
right 5%
font-size 1rem
+ margin-top 5px
a
color white
diff --git a/src/styles/components/_table.styl b/src/styles/components/_table.styl
new file mode 100644
index 0000000..f777008
--- /dev/null
+++ b/src/styles/components/_table.styl
@@ -0,0 +1,3 @@
+.c-table
+ &--scrollable
+ overflow auto scroll
\ No newline at end of file