diff --git a/.github/workflows/regen-gh-pages.yml b/.github/workflows/regen-gh-pages.yml
index 697580dc..ac986130 100644
--- a/.github/workflows/regen-gh-pages.yml
+++ b/.github/workflows/regen-gh-pages.yml
@@ -21,7 +21,23 @@ jobs:
uses: peaceiris/actions-hugo@v2
with:
hugo-version: 'latest'
+ extended: true # Use extended Hugo
+ - name: Setup Node
+ uses: actions/setup-node@v2
+ with:
+ node-version: '14'
+
+ - name: Cache dependencies
+ uses: actions/cache@v1
+ with:
+ path: ~/.npm
+ key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
+ restore-keys: |
+ ${{ runner.os }}-node-
+ - name: Prepare postcss-cli
+ run: npm ci
+
- name: Build
run: hugo --minify
diff --git a/.gitignore b/.gitignore
index 364fdec1..f551fe7e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,7 @@
public/
+/node_modules/
+/resources/_gen/
+
+## Locking files for when working with local servers
+.hugo_build.lock
+package-lock.json
diff --git a/.gitmodules b/.gitmodules
index c2927ad0..b76244d3 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,3 @@
-[submodule "themes/relearn"]
- path = themes/relearn
- url = https://github.com/McShelby/hugo-theme-relearn.git
+[submodule "themes/docsy"]
+ path = themes/docsy
+ url = https://github.com/google/docsy.git
diff --git a/README.md b/README.md
index 96fd8c12..3e15c226 100644
--- a/README.md
+++ b/README.md
@@ -1,9 +1,29 @@
+# alguidelines.dev Site Source Repo
+
+This is the source for the [alguidelines.dev](https://alguidelines.dev)
+website.
# Business Central Design Patterns & Best Practices
This site is meant to house some of the community's knowledge about Microsoft Dynamics 365 Business Central AL Development best practices, particularly around hosting Design Patterns.
Please see the [ALGuidelines.dev](https://alguidelines.dev/) site for the full information about this project.
+## Repo organization
+
+This is a [hugo](https://gohugo.io) statically-generated site, hosted
+on [GitHub Pages](https://https://pages.github.com). The site is automatically built by
+GitHub Actions (see regen-gh-pages.yml).
+
+All site content is stored in the `content` directory in markdown format.
+
+```text
+content/en
+├── _index.html # Landing page
+├── author # Info about blog authors
+├── blog # Blog posts
+├── docs # Documentation pages
+└── search.md
+```
## Contributing
This project welcomes contributions and suggestions. Most contributions require you to agree to a
@@ -18,6 +38,32 @@ This project has adopted the [Microsoft Open Source Code of Conduct](https://ope
For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or
contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.
+### Setup
+
+1. Clone and setup
+```sh
+# Clone all submodules
+git submodule update --init --recursive --depth 1
+# Install NPM dependencies
+npm install
+```
+2. Run Hugo server
+```
+$ hugo server
+Web Server is available at http://localhost:1313/ (bind address 127.0.0.1)
+Press Ctrl+C to stop
+```
+You can visit [localhost:1313](http://localhost:1313/) in browser to preview website.
+
+### Making changes
+
+1. Create a new branch
+2. Make your changes
+3. Verify your changes locally with Hugo server
+4. Commit and push your changes to the branch
+5. Raise a PR to main branch
+6. Once PR is merged, your changes would be live on the site
+
## Trademarks
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft
diff --git a/assets/icons/SiteLogo.png b/assets/icons/SiteLogo.png
new file mode 100644
index 00000000..0fbe057a
Binary files /dev/null and b/assets/icons/SiteLogo.png differ
diff --git a/assets/icons/favicon.ico b/assets/icons/favicon.ico
new file mode 100644
index 00000000..591e901a
Binary files /dev/null and b/assets/icons/favicon.ico differ
diff --git a/assets/icons/logo.png b/assets/icons/logo.png
new file mode 100644
index 00000000..92fced3e
Binary files /dev/null and b/assets/icons/logo.png differ
diff --git a/assets/icons/logo.svg b/assets/icons/logo.svg
new file mode 100644
index 00000000..3b76e50c
--- /dev/null
+++ b/assets/icons/logo.svg
@@ -0,0 +1 @@
+AL logo_VS_smallest version_v3
\ No newline at end of file
diff --git a/assets/scss/_nav.scss b/assets/scss/_nav.scss
new file mode 100644
index 00000000..6a0428b6
--- /dev/null
+++ b/assets/scss/_nav.scss
@@ -0,0 +1,218 @@
+//
+// Main navbar
+//
+
+.td-navbar-cover {
+ background: $primary;
+
+ @include media-breakpoint-up(md) {
+ background: transparent !important;
+
+ .nav-link {
+ text-shadow: 1px 1px 2px $dark;
+ }
+
+ }
+
+ &.navbar-bg-onscroll .nav-link {
+ text-shadow: none;
+ }
+}
+
+.navbar-bg-onscroll {
+ background: $primary !important;
+ opacity: inherit;
+}
+
+.td-navbar {
+ background: #212121;
+ min-height: 4rem;
+ margin: 0;
+ z-index: 32;
+
+ @include media-breakpoint-up(md) {
+ position: fixed;
+ top: 0;
+ width: 100%;
+ }
+
+
+ .navbar-brand {
+ text-transform: none;
+ text-align: middle;
+
+ .nav-link {
+ display: inline-block;
+ margin-right: -30px;
+ }
+
+ svg {
+ display: inline-block;
+ margin: 0 10px;
+ height: 30px;
+ }
+ }
+
+ .nav-link {
+ text-transform: none;
+ font-weight: $font-weight-bold;
+ }
+
+ .td-search-input {
+ border: none;
+ color: $navbar-dark-color;
+ @include placeholder {
+ color: $navbar-dark-color;
+ }
+ }
+
+ .dropdown {
+ min-width: 100px;
+ }
+
+ @include media-breakpoint-down(md) {
+ padding-right: .5rem;
+ padding-left: .75rem;
+
+ .td-navbar-nav-scroll {
+ max-width: 100%;
+ height: 2.5rem;
+ margin-top: .25rem;
+ overflow: hidden;
+ font-size: .875rem;
+
+ .nav-link {
+ padding-right: .25rem;
+ padding-left: 0;
+ }
+
+ .navbar-nav {
+ padding-bottom: 2rem;
+ overflow-x: auto;
+ white-space: nowrap;
+ -webkit-overflow-scrolling: touch;
+
+ }
+ }
+ }
+}
+
+// Icons
+#main_navbar {
+ li i {
+ padding-right: 0.5em;
+
+ &:before {
+ display: inline-block;
+ text-align: center;
+ min-width: 1em;
+ }
+ }
+ .alert {
+ background-color: inherit;
+ padding:0;
+ color: $secondary;
+ border: 0;
+ font-weight: inherit;
+
+ &:before {
+ display: inline-block;
+ font-style: normal;
+ font-variant: normal;
+ text-rendering: auto;
+ -webkit-font-smoothing: antialiased;
+ font-family: "Font Awesome 5 Free";
+ font-weight: 900;
+ content: "\f0d9";
+ padding-left: 0.5em;
+ padding-right: 0.5em;
+ }
+ }
+}
+
+// Foldable sidebar menu
+nav.foldable-nav {
+
+ td-section-nav {
+ position: relative;
+ }
+
+ td-section-nav label {
+ margin-bottom: 0;
+ width: 100%;
+ }
+
+ .td-sidebar-nav__section, .with-child ul {
+ list-style: none;
+ padding: 0;
+ margin: 0;
+ }
+
+ .ul-1 > li {
+ padding-left: 1.5em;
+ }
+
+ ul.foldable {
+ max-height: 0;
+ overflow: hidden;
+ transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
+ }
+
+ input:checked ~ ul.foldable {
+ max-height: 100000vmax;
+ transition: max-height 1s ease-in-out;
+ }
+
+ input[type=checkbox] { display: none; }
+
+ .with-child, .without-child {
+ position: relative;
+ padding-left: 1.5em;
+ }
+
+ .ul-1 .with-child > label:before {
+ display: inline-block;
+ font-style: normal;
+ font-variant: normal;
+ text-rendering: auto;
+ -webkit-font-smoothing: antialiased;
+ font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f0da";
+ position: absolute;
+ left: 0.1em;
+ padding-left: 0.4em;
+ padding-right: 0.4em;
+ font-size: 1em;
+ color: $gray-900;
+ transition: all 0.5s;
+ &:hover{
+ transform: rotate(90deg);
+ }
+ }
+
+ .ul-1 .with-child > input:checked ~ label:before {
+ color: $primary;
+ transform: rotate(90deg);
+ transition: transform 0.5s;
+ }
+
+ .with-child ul { margin-top: 0.1em; }
+
+}
+
+@media (hover: hover) and (pointer: fine) {
+
+ nav.foldable-nav {
+
+ .ul-1 .with-child > label:hover:before {
+ color: $primary;
+ transform: rotate(30deg);
+ transition: transform 0.5s;
+ }
+
+ .ul-1 .with-child > input:checked ~ label:hover:before {
+ color: $primary;
+ transform: rotate(60deg) !important;
+ transition: transform 0.5s;
+ }
+ }
+}
diff --git a/assets/scss/_sidebar-toc.scss b/assets/scss/_sidebar-toc.scss
new file mode 100644
index 00000000..ff6fc52c
--- /dev/null
+++ b/assets/scss/_sidebar-toc.scss
@@ -0,0 +1,65 @@
+//
+// Right side toc
+//
+.td-sidebar-toc {
+ border-left: 1px solid $border-color;
+
+ @supports (position: sticky) {
+ position: sticky;
+ top: 4rem;
+ height: calc(100vh - 4rem);
+ overflow-y: auto;
+ }
+
+ order: 2;
+ padding-top: 0.75rem;
+ padding-bottom: 1.5rem;
+ vertical-align: top;
+
+}
+
+.td-page-meta {
+ a {
+ display: block;
+ font-weight: $font-weight-medium;
+ }
+}
+
+.td-toc {
+ padding-top: 5px;
+ margin-top: 10px;
+ border-top: 1px solid $black;
+
+ a {
+ display: block;
+ font-weight: $font-weight-medium;
+ padding-bottom: .25rem;
+ }
+
+ li {
+ list-style: none;
+ display: block;
+ }
+
+ li li {
+ margin-left: 0.5rem;
+ }
+
+ #TableOfContents {
+ // Hugo's ToC is a mouthful, this can be used to style the top level h2 entries.
+ > ul > li > ul > li > a {}
+
+ a {
+ color: $gray-600;
+
+ &:hover {
+ color: $blue;
+ text-decoration: none;
+ }
+ }
+ }
+
+ ul {
+ padding-left: 0;
+ }
+}
diff --git a/assets/scss/_styles_project.scss b/assets/scss/_styles_project.scss
new file mode 100644
index 00000000..78520674
--- /dev/null
+++ b/assets/scss/_styles_project.scss
@@ -0,0 +1,2 @@
+.td-page-meta--child { display: none !important; }
+.td-page-meta--project-issue { display: none !important; }
\ No newline at end of file
diff --git a/assets/scss/_variables_project.scss b/assets/scss/_variables_project.scss
new file mode 100644
index 00000000..de6c519b
--- /dev/null
+++ b/assets/scss/_variables_project.scss
@@ -0,0 +1,720 @@
+/*
+
+Add styles or override variables from the theme here.
+
+*/
+
+@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&display=swap');
+
+body {
+ font-family: "Segoe UI", Frutiger, "Frutiger Linotype", "Dejavu Sans", "Helvetica Neue", Arial, sans-serif !important;
+ font-weight:500 !important;
+}
+
+$display1-weight: 500 !default;
+$display2-weight: 100 !default;
+
+$primary: #1f2a43 !default;
+$primary-light: lighten($primary, 90%) !default;
+$secondary: #2d70de !default;
+$light: rgb(255, 255, 255) !default;
+$grey: #888 !default;
+$orange: $secondary;
+
+ul, ol {
+ padding-left: 2em;
+}
+
+.navbar-logo {
+ height: 2em;
+}
+
+.nav-shadow {
+ box-shadow: 0 2px 2px -2px rgba(0,0,0,.2);
+}
+
+.navbar-brand {
+ color: #008489 !important
+}
+
+.navbar-bg-onscroll {
+ box-shadow: 0 2px 2px -2px rgba(0,0,0,.2);
+ #docsy-top {
+ display: block !important;
+ }
+}
+
+.control-bar {
+ display: none;
+}
+
+.td-content pre {
+ word-wrap: normal;
+ background-color: #f8f9fa;
+ padding: 1rem;
+ min-width: 0;
+ word-wrap: break-word;
+ background-color: #fff;
+ background-clip: border-box;
+ border: 1px solid rgba(0, 0, 0, 0.125);
+ border-radius: 0.25rem;
+}
+
+.highlight > pre {
+ border: 0px;
+}
+
+.td-content blockquote {
+ border-radius: .15rem;
+}
+
+.notice.info {
+ border-left-color: #6bf;
+ background-color: rgba(102,187,255,.1);
+}
+
+.notice.warning {
+ border-left-color: #fd6;
+ background-color: rgba(255,221,102,.1);
+}
+
+.notice.danger {
+ border-left-color: #f66;
+ background-color: rgba(255,102,102,.1);
+}
+
+.notice > ul {
+ margin-bottom: 0em;
+}
+
+#docsy-search {
+ background: rgba(190, 185, 185, 0.3);
+}
+input[type="search"]::placeholder {
+ color: #9B9595 !important;
+}
+
+.td-box--secondary p > a:hover {
+ color: #121314 !important;
+}
+
+#community a {
+ color: #121314 !important;
+}
+
+.showcase img {
+ margin: 0 30px;
+}
+
+.td-content > h1 { font-weight: 700; }
+.td-content > h2 { font-weight: 700; }
+.td-content > h3 { font-weight: 700; }
+.td-content > h4 { font-weight: 700; }
+.td-content > h5 { font-weight: 700; }
+.td-content > h6 { font-weight: 700; }
+.td-content > h7 { font-weight: 700; }
+
+// Custom CSS for homepage
+
+.hero {
+ padding: 20px 0px 25px 0px;
+ color: white;
+ background: rgb(65, 127, 143);
+ background: linear-gradient(130deg, #4487a1 50%, #0188a3 70%);
+ margin-left: -15px;
+ margin-right: -15px;
+ position: relative;
+ overflow: hidden;
+
+ .container {
+ position: relative;
+ z-index: 2;
+ }
+}
+
+@media (min-width: 992px) {
+ .hero {
+ padding: 130px 0 100px;
+ }
+
+ .hero-banner {
+ transform: scale(1.4) translateY(10%);
+ }
+
+}
+
+@media (min-width: 1170px) {
+ .hero {
+ &:before {
+ content: '';
+ width: 60vw;
+ height: 60vw;
+ display: block;
+ background: linear-gradient(90deg, rgb(0, 129, 155) 59%, rgba(0,145,193,1) 70%);
+ position: absolute;
+ left: -20vw;
+ top: -20vw;
+ transform: rotate(45deg);
+ border-radius: 10%;
+ }
+
+ &:after {
+ content: '';
+ width: 20vw;
+ height: 100vw;
+ display: block;
+ background: linear-gradient(-74deg, #007e97 50%, #0091c1 70%);
+ position: absolute;
+ left: 55vw;
+ bottom: -40vw;
+ z-index: 1;
+ transform: rotate(45deg);
+ }
+
+ .container {
+ position: relative;
+ z-index: 2;
+ }
+ }
+}
+
+.hero-title {
+ font-family: "Segoe UI", Frutiger, "Frutiger Linotype", "Dejavu Sans", "Helvetica Neue", Arial, sans-serif !important;
+ font-weight: 700 !important;
+ // margin-top: 80px;
+ font-size: 56px;
+}
+
+// .hero-banner {
+// margin-top: 80px;
+// }
+
+.hero-big {
+ background: rgb(0,145,193);
+ background: linear-gradient(
+ 140deg,
+ rgba(0,145,193, 1) 0%,
+ rgba(0,94,113, 1) 100%
+ );
+ padding: 12px 38px;
+ border: none;
+ border-radius: 4px;
+
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+
+ font-size: 22px;
+ font-weight: 600;
+ color: white;
+ margin: 10px 0px 40px 0px;
+}
+
+.hero-mid {
+ background: rgb(0,145,193);
+ background: linear-gradient(140deg,rgba(0,145,193, 1) 0%, rgba(0,94,113, 1) 100%);
+ padding: 16px 30px;
+ border-radius: 4px;
+ border: none;
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+ font-size: 18px;
+ font-weight: 600;
+ color: white;
+ margin: 30px 0px 10px 0px;
+ &:hover {
+ box-shadow: 0 3px 7px #b7b7b7;
+ }
+}
+
+.body-container {
+ margin-left: -15px;
+ margin-right: -15px;
+}
+
+.body-container .row {
+ padding: 30px 0px;
+ margin: 20px auto;
+}
+
+.td-navbar {
+ .nav-link {
+ font-weight: normal !important;
+ color: #f4f4f4 !important;
+ border-bottom: 1px solid transparent;
+ &:hover {
+ color: #fff !important;
+ border-bottom: 1px solid #00b1f7;
+ }
+ }
+}
+
+.td-search-input::placeholder {
+ color: #fff !important;
+}
+
+.section-title {
+ color: #3b3c4c;
+ font-weight: 700;
+ font-size: 46px;
+ margin: 12px 0px;
+}
+
+.section-text-bold {
+ color: #3b3c4c;
+ font-weight: 700;
+ margin: 12px 0px;
+ font-size: 18px;
+ line-height: 1.2;
+}
+
+.section-text {
+ color: #5a5b75;
+ font-weight: 600;
+ margin: 12px 0px;
+ font-size: 18px;
+}
+
+.wide-image {
+ // width: 100%;
+ margin-left: -15px;
+ margin-right: -15px;
+}
+.big-waves {
+ width: 100% !important;
+ position: relative;
+ top: -40px;
+}
+
+.push-up {
+ margin-top: -50px;
+}
+
+.center-text {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+}
+
+.push-up .col-lg-4, .whats-new .col-lg-4,
+.community-cards .card-shadow, .community-cards.show-desktop .col-lg-6{
+ margin-bottom: 20px;
+}
+
+.card-shadow {
+ padding: 35px 30px 30px 30px;
+ text-align: center;
+ box-shadow: 0 5px 10px 0 rgba(41,26,204,0.12);
+ border: none;
+ border-radius: 6px;
+ height: 100%;
+}
+
+.card-shadow .section-text-bold {
+ font-size: 22px;
+}
+
+.card-shadow img {
+ margin: 2px auto;
+}
+
+.card-shadow .section-text {
+ color: #5a5b75;
+ font-size: 16px;
+ line-height: 1.5;
+}
+
+.feature-card {
+ padding: 20px;
+ border-radius: 0;
+ height: 100%;
+ border: 1px solid #E8E8E8;
+ background-color: #FFFFFF;
+}
+
+.feature-card .card-header-custom .section-text-bold {
+ font-size: 20px;
+ margin: 4px 0 0;
+}
+
+.feature-card p.section-text {
+ font-size: 15px;
+}
+
+.feature-card p:last-child {
+ margin-bottom: 0;
+}
+
+.card-header-custom {
+ display: flex;
+ flex-direction: row;
+ align-items: flex-start;
+ min-height: 58px;
+}
+
+.card-header-custom img {
+ margin-right: 16px;
+}
+
+.card-header-custom .section-text-bold {
+ font-size: 18px;
+ color: #3b3c4c;
+}
+
+.card .section-text {
+ font-size: 14px;
+ color: #5a5b75;
+}
+
+.info-card {
+ text-align: center;
+ margin: 0px auto 30px auto;
+}
+
+.info-card .section-text-bold {
+ font-size: 22px;
+}
+
+.info-card .section-text {
+ font-size: 17px;
+}
+
+.info-card img {
+ margin: 10px auto;
+}
+
+.whats-new {
+ background: url("/images/whats-new-bg.webp") no-repeat;
+ background-size: cover;
+ background-position: 0 -150px;
+}
+
+.whats-new .card-shadow {
+ height: 100%;
+}
+
+.whats-new .section-title {
+ color: white;
+ margin-bottom: 5px;
+ margin-top: 4rem
+}
+
+.whats-new .card-shadow {
+ background: white;
+ padding: 25px 15px 15px 15px;
+ min-height: unset;
+ box-shadow: 0 5px 10px 0 rgba(41,26,204,0.12);
+}
+
+.whats-new .card-shadow:hover {
+ box-shadow: 5px 10px 30px 0 rgba(41,26,204,0.12);
+}
+
+.whats-new .card-shadow-content {
+ padding: 0px 12px;
+}
+
+.whats-new .card-shadow button {
+ padding: 12px 22px !important;
+}
+
+@media (min-width: 992px) {
+ .whats-new .card-shadow .section-text-bold {
+ min-height: 80px;
+ }
+
+ .whats-new .card-shadow .section-text {
+ min-height: 122px;
+ }
+}
+
+
+
+
+.card-badge {
+ background: #f2f0fb;
+ padding: 6px 15px;
+ text-transform: uppercase;
+ border-radius: 5px;
+ color: #5a5b75;
+ font-weight: 600;
+ font-size: 16px;
+}
+
+.card-shadow .hero-mid {
+ width: 100%;
+ position: relative;
+ bottom: 0px;
+}
+
+.card-shadow .hero-mid-2 {
+ width: 100%;
+ position: relative;
+ bottom: 0px;
+}
+
+.hero-mid-2 {
+ background: white;
+ padding: 12px 22px;
+ border-radius: 4px;
+ border: 1px solid #00b1f7;
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+ font-size: 18px;
+ font-weight: 600;
+ color: #00b1f7;
+ margin: 30px 0px 10px 0px;
+ font-weight: 700;
+
+ &:hover {
+ background: #55d7ff;
+ background: linear-gradient(140deg, #55d7ff 0%, #3d98b4 100%);
+ color: #fff;
+ box-shadow: 0 3px 7px #b7b7b7;
+ }
+}
+
+.community-cards {
+ background: url("/images/color-bg.webp") no-repeat center;
+ background-size: contain;
+}
+
+.community-cards .card-shadow {
+ background: white;
+ min-height: 150px;
+ padding: 16px 22px;
+}
+
+.community-cards .card-header-custom {
+ margin-right: auto;
+ display: flex;
+ align-items: center;
+}
+
+.community-cards .card-header-custom p.section-text-bold {
+ margin: 0;
+}
+
+.community-cards .card-shadow img {
+ margin-left: unset;
+}
+
+.community-cards .card-shadow .section-text {
+ text-align: left;
+ font-size: 14px;
+ margin-top: 4px;
+}
+
+.community-cards a:hover .card-shadow {
+ box-shadow: 0 10px 11px rgba(41, 26, 204, .12);
+}
+
+.text-highlight {
+ color: #00b1f7;
+}
+
+.community-cards .row {
+ padding: 30px 0px;
+ margin: 20px 2px;
+}
+
+.twitter-card-desktop {
+ position: relative;
+ left: 150px;
+ top: 10px;
+}
+
+.show-mobile {
+ display: none;
+}
+
+@media (max-width: 1299px) {
+ .hero {
+ background: url("/images/hero-bg.webp") no-repeat;
+ background-size: cover;
+ }
+}
+
+@media (max-width: 575px) {
+ .row {
+ display: inherit;
+ }
+}
+
+@media (min-width: 320px) and (max-width: 990px) {
+ .show-desktop {
+ display: none;
+ }
+
+ .show-mobile {
+ display: block;
+ }
+
+ .hero {
+ background: url("/images/hero-bg.webp") no-repeat;
+ background-size: cover;
+ }
+
+ .hero-section-mobile .hero-title {
+ font-size: 39px;
+ }
+
+ .show-mobile-margin {
+ margin-top: 30px;
+ }
+
+ .card {
+ min-height: unset;
+ padding-bottom: 25px;
+ }
+
+ .card-shadow {
+ min-height: unset;
+ padding-bottom: 25px;
+ }
+
+ .whats-new {
+ background: url("/images/whats-new-bg.webp") no-repeat;
+ background-size: cover;
+ }
+
+ .community-cards {
+ background: unset;
+ }
+}
+
+.feature-section .card {
+ margin-bottom: 26px;
+}
+
+.feature-section .col-lg-4{
+ margin-bottom: 25px;
+}
+
+@media (max-width: 480px) {
+ .body-container .row {
+ padding: 30px 8px;
+ }
+
+ .community-cards {
+ background: unset;
+ }
+}
+
+.show-mobile-big {
+ display: none;
+}
+
+@media (max-width: 767px) {
+ .show-mobile-big {
+ display: block;
+ }
+
+ .show-desktop-big {
+ display: none;
+ }
+
+ .hero-section-mobile {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ text-align: center;
+ }
+}
+
+.hero-section-mobile .show-mobile-big {
+ margin-top: 10px;
+}
+
+// {{< tabs >}}
+// from https://github.com/alex-shpak/hugo-book
+.hidden {
+ display: none;
+}
+
+.book-tabs {
+margin-top: 1rem;
+margin-bottom: 1rem;
+
+border: 1px solid rgba(0, 0, 0, 0.125);
+border-radius:.15rem;
+
+overflow: hidden;
+
+display: flex;
+flex-wrap: wrap;
+
+label {
+ display: inline-block;
+ padding: 0.5rem 1rem;
+ border-bottom: 1px transparent;
+ cursor: pointer;
+}
+
+.book-tabs-content {
+ order: 999;
+ width: 100%;
+ border-top: 1px solid #f8f9fa;
+ padding: 1rem;
+ display: none;
+}
+
+input[type="radio"]:checked + label {
+ border-bottom: 2px solid #05b;
+}
+input[type="radio"]:checked + label + .book-tabs-content {
+ display: block;
+}
+
+.book-tabs-content > .highlight {
+ margin: 0;
+}
+
+.book-tabs-content > blockquote.notice {
+ padding: 1.2em 0em 1.2em 1em;
+ margin-bottom: 1rem;
+ color: #616161;
+ border-left: 6px solid #2D70DE;
+}
+
+.book-tabs-content > blockquote.notice.notice.info { border-left-color: #6bf; }
+.book-tabs-content > blockquote.notice.notice.warning { border-left-color: #fd6; }
+.book-tabs-content > blockquote.notice.notice.danger { border-left-color: #f66; }
+}
+
+a {
+ text-decoration: inherit;
+}
+
+.post-img {
+ display: block;
+
+ > p {
+ text-align: center;
+ font-style: italic;
+ }
+}
+
+
+.DocSearch-Hit-title mark {
+ padding: 0;
+}
+
+.DocSearch-Hit-icon svg {
+ vertical-align: top;
+}
+
+.DocSearch-Hits mark {
+ padding: 0;
+}
+
+.DocSearch-Hit-content-wrapper {
+ overflow-y: hidden;
+}
diff --git a/config.toml b/config.toml
index 6d2a42b4..89d62ede 100644
--- a/config.toml
+++ b/config.toml
@@ -1,36 +1,216 @@
baseURL = 'https://alguidelines.dev/'
+enableRobotsTXT = true
languageCode = 'en-us'
title = 'AL Guidelines'
-# Change the default theme to be use when building the site with Hugo
-theme = "relearn"
+# Hugo allows theme composition (and inheritance). The precedence is from left to right.
+theme = ["docsy"]
-# For search functionality
-[outputs]
-home = [ "HTML", "RSS", "JSON"]
+# Will give values to .Lastmod etc.
+enableGitInfo = true
+
+# Comment out to disable taxonomies in Docsy
+# disableKinds = ["taxonomy", "taxonomyTerm"]
+
+# You can add your own taxonomies
+[taxonomies]
+author = "author"
+category = "categories"
+tag = "tags"
+
+[params.taxonomy]
+# set taxonomyCloud = [] to hide taxonomy clouds
+taxonomyCloud = ["tags", "categories"]
+
+# If used, must have same lang as taxonomyCloud
+taxonomyCloudTitle = ["Tag Cloud", "Categories", "Authors"]
+
+# set taxonomyPageHeader = [] to hide taxonomies on the page headers
+taxonomyPageHeader = ["tags", "categories", "authors"]
+
+# Highlighting config
+pygmentsCodeFences = true
+pygmentsUseClasses = false
+# Use the new Chroma Go highlighter in Hugo.
+pygmentsUseClassic = false
+#pygmentsOptions = "linenos=table"
+# See https://help.farbox.com/pygments.html
+pygmentsStyle = "tango"
+
+# First one is picked as the Twitter card image if not set on page.
+#images = ["images/project-illustration.png"]
+
+# Configure how URLs look like per section.
+[permalinks]
+blog = "/blog/:slug/"
+
+[markup.goldmark.renderer]
+unsafe = true
+
+[markup.highlight]
+style = "tango"
+
+## Configuration for BlackFriday markdown parser: https://github.com/russross/blackfriday
+[blackfriday]
+angledQuotes = false
+hrefTargetBlank = false
+latexDashes = true
+plainIDAnchors = true
+
+# Image processing configuration.
+[imaging]
+anchor = "smart"
+quality = 75
+resampleFilter = "CatmullRom"
+
+[services]
+[services.googleAnalytics]
+# Comment out the next line to disable GA tracking. Also disables the feature described in [params.ui.feedback].
+id = ""
+
+# Language configuration
+
+[languages]
+[languages.en]
+description = "Guidelines for when Developing AL for Microsoft Dynamics 365 Business Central"
+languageName = "English"
+title = "alguidelines.dev - Business Central Design Patterns"
+# Weight used for sorting.
+weight = 1
+
+# Everything below this are Site Params
[params]
- # Change default color scheme with a variant one. Can be empty, "red", "blue", "green".
- themeVariant = "blue"
- # If set to false, a Home button will appear below the search bar on the menu.
- # It is redirecting to the landing page of the current language if specified. (Default is "/")
- disableLandingPageButton = true
- # Enable GitHub editing
- editURL = "https://github.com/microsoft/alguidelines/edit/main/content/"
- # This controls whether submenus will be expanded (true), or collapsed (false) in the
- # menu; if no setting is given, the first menu level is set to false, all others to true;
- # this can be overridden in the pages frontmatter
- alwaysopen = false
+copyright = "alguidelines.dev Project"
+github_repo = "https://github.com/microsoft/alguidelines"
+github_project_repo = "https://github.com/microsoft/alguidelines"
+privacy_policy = ""
-# Additional menu (left sidebar) area links
-[[menu.shortcuts]]
-name = " GitHub repo"
-identifier = "gh"
+# Google Custom Search Engine ID. Remove or comment out to disable search.
+# gcs_engine_id = "c632b781ffe71b197"
+#algolia_docsearch = true
+
+# current release branch - could be rc
+release_branch = "master"
+# the main version. Never is rc.
+release_version = "v1.15.1"
+
+slackurl = ""
+
+installurl = ''
+learnmoreurl = ''
+#twitterurl = ''
+
+notoc = true
+
+# First one is picked as the Twitter card image if not set on page.
+images = ["images/og-image-fission.png"]
+
+[params.social]
+#github = ''
+#slackurl = ""
+#twitter = ''
+
+[[params.whatsnew]]
+badge = 'FISSION DZONE REFCARD'
+body = 'Get started with Serverless on Kubernetes in 5 minutes! Learn how to set up Fission, its key concepts, how to create and invoke a function, monitor its performance, and more.'
+heading = 'New! Download the Fission.io Refcard'
+[params.whatsnew.button]
+hero_class = 'mid'
+text = 'Download Now!'
+url = 'https://platform9.com/wp-content/uploads/2019/03/dzone-refcard-fissionio.pdf'
+
+[[params.whatsnew]]
+badge = 'BLOG'
+body = 'Learn how to use Fission functions with PostgreSQL database.'
+heading = 'Fission Functions with PostgreSQL Sample'
+[params.whatsnew.button]
+hero_class = 'mid-2'
+text = 'Read More'
+url = '/blog/how-to-use-postgresql-database-with-fission-functions/'
+
+[[params.whatsnew]]
+badge = 'BLOG'
+body = 'Tutorial to deploy Next.js applications with Fission.'
+heading = 'Next.js Application with Fission'
+[params.whatsnew.button]
+hero_class = 'mid-2'
+text = 'REad More'
+url = '/blog/serverless-next.js-example-blog-with-fission/'
+
+# User interface configuration
+[params.ui]
+# Set to true to disable breadcrumb navigation.
+breadcrumb_disable = false
+# Set to true to disable the About link in the site footer
+footer_about_disable = false
+# Set to false if you don't want to display a logo (/assets/icons/logo.svg) in the top navbar
+navbar_logo = true
+# Set to true if you don't want the top navbar to be translucent when over a `block/cover`, like on the homepage.
+navbar_translucent_over_cover_disable = false
+# Enable to show the side bar menu in its compact state.
+sidebar_menu_compact = true
+# Set to true to hide the sidebar search box (the top nav search box will still be displayed if search is enabled)
+sidebar_search_disable = true
+
+# Adds a H2 section titled "Feedback" to the bottom of each doc. The responses are sent to Google Analytics as events.
+# This feature depends on [services.googleAnalytics] and will be disabled if "services.googleAnalytics.id" is not set.
+# If you want this feature, but occasionally need to remove the "Feedback" section from a single page,
+# add "hide_feedback: true" to the page's front matter.
+[params.ui.feedback]
+enable = true
+# The responses that the user sees after clicking "yes" (the page was helpful) or "no" (the page was not helpful).
+no = 'Sorry to hear that. Please tell us how we can improve .'
+yes = 'Glad to hear it! Please tell us how we can improve .'
+
+# Adds a reading time to the top of each doc.
+# If you want this feature, but occasionally need to remove the Reading time from a single page,
+# add "hide_readingtime: true" to the page's front matter
+[params.ui.readingtime]
+enable = false
+
+[[params.links.user]]
+desc = "Development takes place here!"
+icon = "fab fa-github"
+name = "GitHub"
url = "https://github.com/microsoft/alguidelines"
-weight = 10
-
-[[menu.shortcuts]]
-name = " BC Discord"
-identifier = "ds"
+[params.links]
+[[params.links.user]]
+desc = "Follow us on Twitter to get the latest news!"
+icon = "fab fa-twitter"
+name = "Twitter"
+url = "https://twitter.com/search?q=%23bcalhelp"
+[[params.links.user]]
+desc = "Chat with other project users in #users"
+icon = "fab fa-discord"
+name = "Discord"
url = "https://discord.gg/4wbfNv3"
+# End user relevant links. These will show up on left side of footer and in the community page if you have one.
+
+
+[sitemap]
+changefreq = "monthly"
+filename = "sitemap.xml"
+priority = 0.5
+
+[menu]
+[[menu.main]]
+name = "Docs"
+url = "/docs/"
+pre = " "
weight = 10
+[[menu.main]]
+name = "Discussions"
+url = "https://github.com/microsoft/alguidelines/discussions/"
+pre = ""
+weight = 11
+[[menu.main]]
+name = "GitHub"
+pre = " "
+url = "https://github.com/microsoft/alguidelines"
+weight = 13
+[[menu.main]]
+name = "Discord"
+pre = " "
+url = "https://discord.gg/4wbfNv3"
+weight = 14
\ No newline at end of file
diff --git a/content/BCBestPractices/Performance/_index.md b/content/BCBestPractices/Performance/_index.md
deleted file mode 100644
index 61c558fe..00000000
--- a/content/BCBestPractices/Performance/_index.md
+++ /dev/null
@@ -1,9 +0,0 @@
-+++
-title = "Performance"
-weight = 980
-+++
-## AL Coding Guidelines
-
-## **Performance**
-
-Some guidelines are simply better for performance considerations rather than readability or anything else. In this section, let's look into some..
\ No newline at end of file
diff --git a/content/BCBestPractices/Readability/_index.md b/content/BCBestPractices/Readability/_index.md
deleted file mode 100644
index f2c4c118..00000000
--- a/content/BCBestPractices/Readability/_index.md
+++ /dev/null
@@ -1,11 +0,0 @@
-+++
-title = "Readability"
-weight = 980
-+++
-## AL Coding Guidelines
-
-## **Readability**
-
-Generally, all readability rules are Microsoft style choices only. You can use them to keep consistency with the existing code.
-
-Find the AL guidelines by expanding the menu in the left.
diff --git a/content/BCBestPractices/_index.md b/content/BCBestPractices/_index.md
deleted file mode 100644
index 37145066..00000000
--- a/content/BCBestPractices/_index.md
+++ /dev/null
@@ -1,15 +0,0 @@
-+++
-chapter = true
-pre = " "
-title = "BC Dev. Best Practices"
-weight = 15
-+++
-
-# Business Central Best Practices
-
-## Coming soon!
-
-This section will be cover things that aren't as simple as Design Patterns, but will help make sure your development is:
-- high-performance
-- complies with good designs
-- has high maintainability
\ No newline at end of file
diff --git a/content/BCPatterns/_index.md b/content/BCPatterns/_index.md
deleted file mode 100644
index 8df66f01..00000000
--- a/content/BCPatterns/_index.md
+++ /dev/null
@@ -1,12 +0,0 @@
-+++
-chapter = true
-pre = " "
-title = "BC Patterns"
-weight = 10
-+++
-
-# Business Central Design Patterns
-
-## Coming soon!
-
-This section will be all about the Design Patterns for BC and AL.
\ No newline at end of file
diff --git a/content/NAVPatterns/1-patterns/_index.md b/content/NAVPatterns/1-patterns/_index.md
deleted file mode 100644
index 2f1d1b16..00000000
--- a/content/NAVPatterns/1-patterns/_index.md
+++ /dev/null
@@ -1,9 +0,0 @@
-+++
-chapter = true
-title = "1. Patterns"
-weight = 110
-+++
-## Browse design patterns by tags
-
-_Originally, this page was categorized set of links to subpages, but that is not necessary now with the menu system to the left._
-
diff --git a/content/_index.md b/content/_index.md
index 84fd0c79..1f0e8a85 100644
--- a/content/_index.md
+++ b/content/_index.md
@@ -1,39 +1,278 @@
-+++
-title = "Home"
-+++
+---
+title: "ALGuidelines.dev"
+linkTitle: "ALGuidelines.dev"
+description: "Design Patterns and Guidelines for AL development for Microsoft Dynamics 365 Business Central"
+images: ["images/og-image-fission.png"]
+---
-## Business Central Design Patterns & Best Practices
+
+
+
+
+
+ Guidelines and Patterns
+ for Development for
+ Microsoft Dynamics 365 Business Central
+
+
+
+
+ Watch the Launch
+
+
-This site is meant to house some of the community's knowledge about Microsoft Dynamics 365 Business Central AL Development best practices, particularly around hosting Design Patterns.
+
+
+
+
+
+
-### What are Design Patterns?
+
+
+
+
+
+
Design Patterns?
+
+ A "Design Pattern" is a software design template to solve common development needs.
+
+
+ This site is community run and Microsoft endorsed.
+
+
Learn More
+
-To quote the original NAV Team blog post about the NAV Design Patterns:
+
+
+
+
+
+
-> A team of people interested in NAV application design has come together to work on naming and surfacing design solutions to common NAV business needs. When those solutions are generic enough to be applied in various places of the NAV application, with slight variations on implementation but mainly respecting the same base concepts, we can describe them as NAV design patterns.
+
+
+
-A design pattern is a repeatable template of how to solve a common development challenge.
+
+
+
+
+
Benefits
+
-### What are Development Best Practices?
+
+
+
+
Repeatability
+
+ By using consistent patterns and best practices, code is far more reusable across diverse projects.
+
+
+
+
+
+
+
Teamwork
+
+ If all code uses design patterns and best practices, it's simpler for new team members to ensure
+ that code is correct, as well as making it easier to jump into a project.
+
+
+
+
+
+
+
Performance
+
+ Many design patterns and best practices are also heavily focused on ensuring compliance with
+ the latest performance recommendations to get the most out of every system.
+
+
+
+
+
+
+
-(more text coming soon)
+
+
+
-### History of "NAV Design Patterns"
+
+
+
+
+
What's New
+
+
+
+
PATTERN
+
+ Event Bridge
+
+
+
+ In the world of interfaces, it is important to preserve (certain) events over multiple implementation of the interface.
+
+
+ Read Now
+
+
+
+
-In 2013, Microsoft NAV Dev Team and prominent members of the community collaborated on a Community and Microsoft collection of commonly needed / used Design Patterns.
+
+
+
BEST PRACTICE
+
+ CASE Action on next line
+
+
+
+ A CASE action should start on a line after the possibility.
+
+
Read Now
+
+
+
-For some history on this, waldo's posts [Code is Poetry](https://www.waldo.be/2013/06/14/code-is-poetry/) and [Design is Philosophy](https://www.waldo.be/2013/08/28/design-is-philosophy-2/) are a great read.
+
+
+
PATTERN
+
+ Façade
+
+
+
+ The intent of this pattern is to provide a unified API to a single or a collection of potentially complex subsystems.
+
+
Read Now
+
+
+
+
+
+
+
+
+
+
+
+
+
Join the Community
+
-#### Behind This Project
+
+
+
+
-#### Contributing
-
-To find out more about contributing, read up here:
-[Contributing](/contributing/)
\ No newline at end of file
+
+
+
+
\ No newline at end of file
diff --git a/content/blog/_index.md b/content/blog/_index.md
new file mode 100644
index 00000000..a4d08959
--- /dev/null
+++ b/content/blog/_index.md
@@ -0,0 +1,5 @@
+---
+title: "AL Guidelines Blog"
+linkTitle: "Blog"
+type: "blog"
+---
\ No newline at end of file
diff --git a/content/BCBestPractices/Performance/DeleteAll/index.md b/content/docs/BestPractices/DeleteAll/index.md
similarity index 92%
rename from content/BCBestPractices/Performance/DeleteAll/index.md
rename to content/docs/BestPractices/DeleteAll/index.md
index bf159354..802d1e2d 100644
--- a/content/BCBestPractices/Performance/DeleteAll/index.md
+++ b/content/docs/BestPractices/DeleteAll/index.md
@@ -1,7 +1,8 @@
-+++
-title = "DeleteAll"
-weight = 1180
-+++
+---
+title: "DeleteAll"
+tags: ["Performance"]
+categories: ["Best Practice"]
+---
<_Created by waldo, Described by waldo_\>
diff --git a/content/BCBestPractices/Performance/SubscriberCodeunits/index.md b/content/docs/BestPractices/SubscriberCodeunits/index.md
similarity index 98%
rename from content/BCBestPractices/Performance/SubscriberCodeunits/index.md
rename to content/docs/BestPractices/SubscriberCodeunits/index.md
index 9839458f..2aadfa54 100644
--- a/content/BCBestPractices/Performance/SubscriberCodeunits/index.md
+++ b/content/docs/BestPractices/SubscriberCodeunits/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Subscriber Codeunits"
-weight = 1180
-+++
+---
+title: "Subscriber Codeunits"
+tags: ["Performance"]
+categories: ["Best Practice"]
+---
-<_Created by waldo, Described by waldo_\>
+_Created by waldo, Described by waldo_
## Description
diff --git a/content/docs/BestPractices/_index.md b/content/docs/BestPractices/_index.md
new file mode 100644
index 00000000..174f7d91
--- /dev/null
+++ b/content/docs/BestPractices/_index.md
@@ -0,0 +1,21 @@
+---
+title: "Best Practices"
+weight: 3
+description: >
+ AL Code Best Practices
+---
+
+# Business Central Best Practices
+
+This section will be cover things that aren't as simple as Design Patterns, but will help make sure your development is:
+- high-performance
+- complies with good designs
+- has high maintainability
+
+## Readability
+
+Generally, all readability rules are Microsoft style choices only. You can use them to keep consistency with the existing code.
+
+## Performance
+
+Some guidelines are simply better for performance considerations rather than readability or anything else. In this section, let's look into some..
\ No newline at end of file
diff --git a/content/BCBestPractices/Readability/begin-as-an-afterword/index.md b/content/docs/BestPractices/begin-as-an-afterword/index.md
similarity index 85%
rename from content/BCBestPractices/Readability/begin-as-an-afterword/index.md
rename to content/docs/BestPractices/begin-as-an-afterword/index.md
index 6de42784..190bae4f 100644
--- a/content/BCBestPractices/Readability/begin-as-an-afterword/index.md
+++ b/content/docs/BestPractices/begin-as-an-afterword/index.md
@@ -1,9 +1,10 @@
-+++
-title = "begin as an 'After Word'"
-weight = 230
-+++
+---
+title: "begin as an afterword"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
diff --git a/content/BCBestPractices/Readability/begin-end/index.md b/content/docs/BestPractices/begin-end/index.md
similarity index 89%
rename from content/BCBestPractices/Readability/begin-end/index.md
rename to content/docs/BestPractices/begin-end/index.md
index 50f1af12..22433d65 100644
--- a/content/BCBestPractices/Readability/begin-end/index.md
+++ b/content/docs/BestPractices/begin-end/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Begin-End - Compound Only"
-weight = 240
-+++
+---
+title: "Begin-End - Compound Only"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
Only use begin..end to enclose [compound statements](https://docs.microsoft.com/en-us/cpp/c-language/compound-statement-c?view=msvc-170#:~:text=A%20compound%20statement%20%28also%20called%20a%20%22block%22%29%20typically,appear%20at%20the%20head%20of%20a%20compound%20statement.).
diff --git a/content/BCBestPractices/Readability/binary-operator-line-start/index.md b/content/docs/BestPractices/binary-operator-line-start/index.md
similarity index 82%
rename from content/BCBestPractices/Readability/binary-operator-line-start/index.md
rename to content/docs/BestPractices/binary-operator-line-start/index.md
index 4318f5ee..7408ef63 100644
--- a/content/BCBestPractices/Readability/binary-operator-line-start/index.md
+++ b/content/docs/BestPractices/binary-operator-line-start/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Binary Operator to Start Line"
-weight = 250
-+++
+---
+title: "Binary Operator to Start Line"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
diff --git a/content/BCBestPractices/Readability/case-actions/index.md b/content/docs/BestPractices/case-actions/index.md
similarity index 84%
rename from content/BCBestPractices/Readability/case-actions/index.md
rename to content/docs/BestPractices/case-actions/index.md
index 4aa42517..fb041368 100644
--- a/content/BCBestPractices/Readability/case-actions/index.md
+++ b/content/docs/BestPractices/case-actions/index.md
@@ -1,9 +1,10 @@
-+++
-title = "CASE Action on next line"
-weight = 310
-+++
+---
+title: "CASE Action on next line"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
diff --git a/content/BCBestPractices/Readability/comments-spacing/index.md b/content/docs/BestPractices/comments-spacing/index.md
similarity index 83%
rename from content/BCBestPractices/Readability/comments-spacing/index.md
rename to content/docs/BestPractices/comments-spacing/index.md
index 0a7e9f15..e8e2c07f 100644
--- a/content/BCBestPractices/Readability/comments-spacing/index.md
+++ b/content/docs/BestPractices/comments-spacing/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Comment Spacing"
-weight = 360
-+++
+---
+title: "Comment Spacing"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
Always start comments with // followed by one space character.
diff --git a/content/BCBestPractices/Readability/end-else-pair/index.md b/content/docs/BestPractices/end-else-pair/index.md
similarity index 87%
rename from content/BCBestPractices/Readability/end-else-pair/index.md
rename to content/docs/BestPractices/end-else-pair/index.md
index 3325d453..9c339d36 100644
--- a/content/BCBestPractices/Readability/end-else-pair/index.md
+++ b/content/docs/BestPractices/end-else-pair/index.md
@@ -1,9 +1,10 @@
-+++
-title = "end else pair"
-weight = 540
-+++
+---
+title: "end else pair"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
diff --git a/content/BCBestPractices/Readability/keyword-pairs-indentation/index.md b/content/docs/BestPractices/keyword-pairs-indentation/index.md
similarity index 84%
rename from content/BCBestPractices/Readability/keyword-pairs-indentation/index.md
rename to content/docs/BestPractices/keyword-pairs-indentation/index.md
index 94737b14..625310f4 100644
--- a/content/BCBestPractices/Readability/keyword-pairs-indentation/index.md
+++ b/content/docs/BestPractices/keyword-pairs-indentation/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Keyword Pairs - Indentation"
-weight = 730
-+++
+---
+title: "Keyword Pairs - Indentation"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
The `if..then` pair, `while..do` pair, and `for..do` pair must appear on the same line or the same level of indentation. If possible, you can align the lines it is even much more readable.
diff --git a/content/BCBestPractices/Readability/line-start-keywords/index.md b/content/docs/BestPractices/line-start-keywords/index.md
similarity index 92%
rename from content/BCBestPractices/Readability/line-start-keywords/index.md
rename to content/docs/BestPractices/line-start-keywords/index.md
index 7bfbafd1..51cee4ee 100644
--- a/content/BCBestPractices/Readability/line-start-keywords/index.md
+++ b/content/docs/BestPractices/line-start-keywords/index.md
@@ -1,8 +1,8 @@
-+++
-title = "Line Start Keywords"
-weight = 740
-+++
-
+---
+title: "Line Start Keywords"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
<_Created by Microsoft, Described by waldo_\>
## Description
diff --git a/content/BCBestPractices/Readability/lonely-repeat/index.md b/content/docs/BestPractices/lonely-repeat/index.md
similarity index 83%
rename from content/BCBestPractices/Readability/lonely-repeat/index.md
rename to content/docs/BestPractices/lonely-repeat/index.md
index 6b3e755b..87551a9e 100644
--- a/content/BCBestPractices/Readability/lonely-repeat/index.md
+++ b/content/docs/BestPractices/lonely-repeat/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Lonely Repeat"
-weight = 760
-+++
+---
+title: "Lonely Repeat"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
The `repeat` statement should always be alone on a line.
diff --git a/content/BCBestPractices/Readability/named-invocations/index.md b/content/docs/BestPractices/named-invocations/index.md
similarity index 84%
rename from content/BCBestPractices/Readability/named-invocations/index.md
rename to content/docs/BestPractices/named-invocations/index.md
index 72df4f74..9d817731 100644
--- a/content/BCBestPractices/Readability/named-invocations/index.md
+++ b/content/docs/BestPractices/named-invocations/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Named Invocations"
-weight = 830
-+++
+---
+title: "Named Invocations"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
When calling an object statically use the Object Name, not the Object Id.
diff --git a/content/BCBestPractices/Readability/one-statement-per-line/index.md b/content/docs/BestPractices/one-statement-per-line/index.md
similarity index 85%
rename from content/BCBestPractices/Readability/one-statement-per-line/index.md
rename to content/docs/BestPractices/one-statement-per-line/index.md
index 70d28a12..a8508ff5 100644
--- a/content/BCBestPractices/Readability/one-statement-per-line/index.md
+++ b/content/docs/BestPractices/one-statement-per-line/index.md
@@ -1,9 +1,10 @@
-+++
-title = "One Statement Per Line"
-weight = 910
-+++
+---
+title: "One Statement per Line"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
A line of code should not have more than one statement.
diff --git a/content/BCBestPractices/Readability/separate-if-and-else/index.md b/content/docs/BestPractices/separate-if-and-else/index.md
similarity index 84%
rename from content/BCBestPractices/Readability/separate-if-and-else/index.md
rename to content/docs/BestPractices/separate-if-and-else/index.md
index f486ae5e..0cfe515b 100644
--- a/content/BCBestPractices/Readability/separate-if-and-else/index.md
+++ b/content/docs/BestPractices/separate-if-and-else/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Separate if and else"
-weight = 1050
-+++
+---
+title: "Seperate if and else"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
`if` and `else` statements should be on separate lines.
diff --git a/content/BCBestPractices/Readability/spacing-binary-operators/index.md b/content/docs/BestPractices/spacing-binary-operators/index.md
similarity index 83%
rename from content/BCBestPractices/Readability/spacing-binary-operators/index.md
rename to content/docs/BestPractices/spacing-binary-operators/index.md
index 46e63427..48bbbbe5 100644
--- a/content/BCBestPractices/Readability/spacing-binary-operators/index.md
+++ b/content/docs/BestPractices/spacing-binary-operators/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Spacing Binary Operators"
-weight = 1120
-+++
+---
+title: "Spacing Binary Operators"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
There must be exactly one space character on each side of a binary operator such as = + - AND OR =. The parameter comma operator however, should have a space after the comma.
diff --git a/content/BCBestPractices/Readability/suggested-abbreviations/index.md b/content/docs/BestPractices/suggested-abbreviations/index.md
similarity index 98%
rename from content/BCBestPractices/Readability/suggested-abbreviations/index.md
rename to content/docs/BestPractices/suggested-abbreviations/index.md
index b54309c7..7ff5136d 100644
--- a/content/BCBestPractices/Readability/suggested-abbreviations/index.md
+++ b/content/docs/BestPractices/suggested-abbreviations/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Suggested Abbreviations"
-weight = 1170
-+++
+---
+title: "Suggested Abbreviations"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
diff --git a/content/BCBestPractices/Readability/unnecessary-else/index.md b/content/docs/BestPractices/unnecessary-else/index.md
similarity index 88%
rename from content/BCBestPractices/Readability/unnecessary-else/index.md
rename to content/docs/BestPractices/unnecessary-else/index.md
index 740f02f1..a90c97a0 100644
--- a/content/BCBestPractices/Readability/unnecessary-else/index.md
+++ b/content/docs/BestPractices/unnecessary-else/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Unnecessary 'else'"
-weight = 1270
-+++
+---
+title: "Unnecessary else"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
`else` should not be used when the last action in the `then` part is an `exit`, `break`, `skip`, `quit`, `error`.
diff --git a/content/BCBestPractices/Readability/unnecessary-truefalse/index.md b/content/docs/BestPractices/unnecessary-truefalse/index.md
similarity index 85%
rename from content/BCBestPractices/Readability/unnecessary-truefalse/index.md
rename to content/docs/BestPractices/unnecessary-truefalse/index.md
index 75f7e81f..8e020968 100644
--- a/content/BCBestPractices/Readability/unnecessary-truefalse/index.md
+++ b/content/docs/BestPractices/unnecessary-truefalse/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Unnecessary true/false"
-weight = 1300
-+++
+---
+title: "Unnecessary true/false"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
Do not use `true` or `false` keywords unnecessarily if the expression is already an logical expression.
diff --git a/content/BCBestPractices/Readability/variable-naming/index.md b/content/docs/BestPractices/variable-naming/index.md
similarity index 90%
rename from content/BCBestPractices/Readability/variable-naming/index.md
rename to content/docs/BestPractices/variable-naming/index.md
index 7cd112fb..e722b779 100644
--- a/content/BCBestPractices/Readability/variable-naming/index.md
+++ b/content/docs/BestPractices/variable-naming/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Variable Naming"
-weight = 1420
-+++
+---
+title: "Variable Naming"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
Variables that refer to a AL object must contain the objects name, abbreviated where necessary.
diff --git a/content/BCBestPractices/Readability/variables-declarations-order/index.md b/content/docs/BestPractices/variables-declarations-order/index.md
similarity index 88%
rename from content/BCBestPractices/Readability/variables-declarations-order/index.md
rename to content/docs/BestPractices/variables-declarations-order/index.md
index 0afd6a93..1701e044 100644
--- a/content/BCBestPractices/Readability/variables-declarations-order/index.md
+++ b/content/docs/BestPractices/variables-declarations-order/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Variables Declarations Order"
-weight = 1430
-+++
+---
+title: "Variables Declarations Order"
+tags: ["Readability"]
+categories: ["Best Practice"]
+---
-<_Created by Microsoft, Described by waldo_\>
+_Created by Microsoft, Described by waldo_
## Description
Variables declarations should be ordered by type. In general, object and complex variable types are listed first followed by simple variables. The order should be:
diff --git a/content/Contributing/ForkAndPR/ForkedRepro.png b/content/docs/Contributing/ForkAndPR/ForkedRepro.png
similarity index 100%
rename from content/Contributing/ForkAndPR/ForkedRepro.png
rename to content/docs/Contributing/ForkAndPR/ForkedRepro.png
diff --git a/content/Contributing/ForkAndPR/fork_button.jpg b/content/docs/Contributing/ForkAndPR/fork_button.jpg
similarity index 100%
rename from content/Contributing/ForkAndPR/fork_button.jpg
rename to content/docs/Contributing/ForkAndPR/fork_button.jpg
diff --git a/content/Contributing/ForkAndPR/index.md b/content/docs/Contributing/ForkAndPR/index.md
similarity index 93%
rename from content/Contributing/ForkAndPR/index.md
rename to content/docs/Contributing/ForkAndPR/index.md
index f7938e6c..d8105e04 100644
--- a/content/Contributing/ForkAndPR/index.md
+++ b/content/docs/Contributing/ForkAndPR/index.md
@@ -11,20 +11,22 @@ AL Guidelines is a community project, and as such YOU are encouraged to submit c
If You are toying with an idea, but You aren't ready to create a document just yet, you are encouraged to create a project discussion thread here: https://github.com/microsoft/alguidelines/discussions
-{{% notice warning %}}
+{{% alert title="Warning" color="warning" %}}
+This is a warning.
If You haven't worked in collaboration with "external" GitHub repositories before, please familiarize yourself with that process by visiting:
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests
-{{% /notice %}}
+{{% /alert %}}
## Steps
Now that You have decided that You are ready to contribute, these are the steps to take.
-{{% notice info %}}
+{{% alert title="Note" color="info" %}}
You can read more about this process here:
https://docs.github.com/en/get-started/quickstart/contributing-to-projects
-{{% /notice %}}
+
+{{% /alert %}}
### Step 1: Fork
In order to work on the repository, You must [Fork](https://docs.github.com/en/get-started/quickstart/fork-a-repo) the repository.
@@ -37,20 +39,20 @@ Once You have successfully forked the repository, go to your own GitHub reposito
You are now able to clone your own repository to your local pc and start editing using your favorite editor. [Visual Studio Code](https://code.visualstudio.com/) is perfectly fine for this task.
-{{% notice info %}}
+{{% alert title="Note" color="info" %}}
You can read more about forking here:
https://docs.github.com/en/get-started/quickstart/fork-a-repo
-{{% /notice %}}
+{{% /alert %}}
### Step 2: Branch
While not necessarily a must, it is always good practice to create a branch off of your forked repository. That will allow you to work on multiple contributions at the same time and won't have to wait for pull requests to be approved before you can continue on your next contribution.
-{{% notice info %}}
+{{% alert title="Note" color="info" %}}
You can read more about Branches here:
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches
-{{% /notice %}}
+{{% /alert %}}
### Step 3: Pull Request
Once you are happy with your contribution, it's time to create a pull request to propose changes into the main project! This is the final step in producing a fork of someone else's project, and arguably the most important. If you've made a change that you feel would benefit the community as a whole, you should definitely consider contributing back.
diff --git a/content/Contributing/FormattingTips/index.md b/content/docs/Contributing/FormattingTips/index.md
similarity index 100%
rename from content/Contributing/FormattingTips/index.md
rename to content/docs/Contributing/FormattingTips/index.md
diff --git a/content/Contributing/Templates/Guidelines/index.md b/content/docs/Contributing/Templates/Guidelines/index.md
similarity index 100%
rename from content/Contributing/Templates/Guidelines/index.md
rename to content/docs/Contributing/Templates/Guidelines/index.md
diff --git a/content/Contributing/Templates/Patterns/index.md b/content/docs/Contributing/Templates/Patterns/index.md
similarity index 100%
rename from content/Contributing/Templates/Patterns/index.md
rename to content/docs/Contributing/Templates/Patterns/index.md
diff --git a/content/Contributing/Templates/_index.md b/content/docs/Contributing/Templates/_index.md
similarity index 96%
rename from content/Contributing/Templates/_index.md
rename to content/docs/Contributing/Templates/_index.md
index 3fffa6a4..ca59e5a3 100644
--- a/content/Contributing/Templates/_index.md
+++ b/content/docs/Contributing/Templates/_index.md
@@ -1,14 +1,14 @@
-+++
-chapter = true
-pre = " "
-title = "Templates"
-weight = 100
-+++
-
-# Templates
-
-We have foreseen some template-files that you can simply copy and use. Look at them as "Patterns for describing patterns" 😉.
-
-We have foreseen a Template:
- - for [patterns](/contributing/templates/patterns/)
++++
+chapter = true
+pre = " "
+title = "Templates"
+weight = 100
++++
+
+# Templates
+
+We have foreseen some template-files that you can simply copy and use. Look at them as "Patterns for describing patterns" 😉.
+
+We have foreseen a Template:
+ - for [patterns](/contributing/templates/patterns/)
- for [guidelines](/contributing/templates/guidelines/)
\ No newline at end of file
diff --git a/content/Contributing/TheApprovalProcess/index.md b/content/docs/Contributing/TheApprovalProcess/index.md
similarity index 94%
rename from content/Contributing/TheApprovalProcess/index.md
rename to content/docs/Contributing/TheApprovalProcess/index.md
index f6fec688..c95c3daf 100644
--- a/content/Contributing/TheApprovalProcess/index.md
+++ b/content/docs/Contributing/TheApprovalProcess/index.md
@@ -1,9 +1,9 @@
-+++
-chapter = true
-pre = " "
-title = "Understanding the Approval Process"
-weight = 100
-+++
-
-(coming soon)
-
++++
+chapter = true
+pre = " "
+title = "Understanding the Approval Process"
+weight = 100
++++
+
+(coming soon)
+
diff --git a/content/Contributing/_index.md b/content/docs/Contributing/_index.md
similarity index 57%
rename from content/Contributing/_index.md
rename to content/docs/Contributing/_index.md
index d7b671fa..8c7a44b5 100644
--- a/content/Contributing/_index.md
+++ b/content/docs/Contributing/_index.md
@@ -5,7 +5,7 @@ title = "Contributing"
weight = 100
+++
-# Contributing
+First off, we're glad you want to help! The project team is kind and helpful, so if you're not sure if you have a good first contribution, make a [Discussion](https://github.com/microsoft/alguidelines/discussions/) about it or even just create your first try. You'll get feedback and we will be happy to help refine it, if it even needs it.
## Code of Conduct
@@ -17,11 +17,11 @@ This project has adopted the Microsoft Open Source Code of Conduct. For more inf
## Steps to Contribute
-* [Guide to Fork & PR](/contributing/forkandpr/)
+* [Guide to Fork & PR](/docs/contributing/forkandpr/)
* Templates:
- - For [patterns](/contributing/templates/patterns/)
- - For [guidelines](/contributing/templates/guidelines/)
-* [Understanding the Approval Process](/contributing/theapprovalprocess/)
+ - For [patterns](/docs/contributing/templates/patterns/)
+ - For [guidelines](/docs/contributing/templates/guidelines/)
+* [Understanding the Approval Process](/docs/contributing/theapprovalprocess/)
-Here are some [tips and tricks in terms of working with MarkDown and Hugo](/contributing/formattingtips/).
+Here are some [tips and tricks in terms of working with Markdown and Hugo](/docs/contributing/formattingtips/).
diff --git a/content/NAVPatterns/2-anti-patterns/_index.md b/content/docs/NAVPatterns/2-anti-patterns/_index.md
similarity index 100%
rename from content/NAVPatterns/2-anti-patterns/_index.md
rename to content/docs/NAVPatterns/2-anti-patterns/_index.md
diff --git a/content/NAVPatterns/2-anti-patterns/nav-upgrade/index.md b/content/docs/NAVPatterns/2-anti-patterns/nav-upgrade/index.md
similarity index 100%
rename from content/NAVPatterns/2-anti-patterns/nav-upgrade/index.md
rename to content/docs/NAVPatterns/2-anti-patterns/nav-upgrade/index.md
diff --git a/content/NAVPatterns/2-anti-patterns/nav-upgrade/upgrade.png b/content/docs/NAVPatterns/2-anti-patterns/nav-upgrade/upgrade.png
similarity index 100%
rename from content/NAVPatterns/2-anti-patterns/nav-upgrade/upgrade.png
rename to content/docs/NAVPatterns/2-anti-patterns/nav-upgrade/upgrade.png
diff --git a/content/NAVPatterns/2-anti-patterns/reusable-bugs/index.md b/content/docs/NAVPatterns/2-anti-patterns/reusable-bugs/index.md
similarity index 100%
rename from content/NAVPatterns/2-anti-patterns/reusable-bugs/index.md
rename to content/docs/NAVPatterns/2-anti-patterns/reusable-bugs/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/_index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/_index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/_index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/_index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/_index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/_index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/_index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/_index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/by-reference-parameters/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/by-reference-parameters/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/by-reference-parameters/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/by-reference-parameters/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/class-coupling/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/class-coupling/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/class-coupling/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/class-coupling/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/cyclomatic-complexity/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/cyclomatic-complexity/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/cyclomatic-complexity/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/cyclomatic-complexity/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/encapsulate-local-functionality/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/encapsulate-local-functionality/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/encapsulate-local-functionality/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/encapsulate-local-functionality/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/findset-findfirst-findlast/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/findset-findfirst-findlast/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/findset-findfirst-findlast/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/findset-findfirst-findlast/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/initialized-variables/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/initialized-variables/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/initialized-variables/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/initialized-variables/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/maintainability-index/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/maintainability-index/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/maintainability-index/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/maintainability-index/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/parameter-placeholders/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/parameter-placeholders/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/parameter-placeholders/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/parameter-placeholders/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/static-object-invocation/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/static-object-invocation/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/static-object-invocation/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/static-object-invocation/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/unreachable-code/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/unreachable-code/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/unreachable-code/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/unreachable-code/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/unused-initialized-variables/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/unused-initialized-variables/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/unused-initialized-variables/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/unused-initialized-variables/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/unused-variables/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/unused-variables/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/unused-variables/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/unused-variables/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/variable-capacity-mismatch/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/variable-capacity-mismatch/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/variable-capacity-mismatch/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/variable-capacity-mismatch/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/design/with-scope-name-collision/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/design/with-scope-name-collision/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/design/with-scope-name-collision/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/design/with-scope-name-collision/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/internally-used-dot-net-types/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/internally-used-dot-net-types/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/internally-used-dot-net-types/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/internally-used-dot-net-types/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/internationalization/_index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/internationalization/_index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/internationalization/_index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/internationalization/_index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/internationalization/using-calcdate/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/internationalization/using-calcdate/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/internationalization/using-calcdate/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/internationalization/using-calcdate/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/localizability/_index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/_index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/localizability/_index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/_index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/localizability/captionml-for-system-tables/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/captionml-for-system-tables/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/localizability/captionml-for-system-tables/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/captionml-for-system-tables/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/localizability/fieldcaption-and-tablecaption/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/fieldcaption-and-tablecaption/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/localizability/fieldcaption-and-tablecaption/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/fieldcaption-and-tablecaption/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/localizability/global-text-constants/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/global-text-constants/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/localizability/global-text-constants/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/global-text-constants/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/localizability/use-text-constants/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/use-text-constants/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/localizability/use-text-constants/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/use-text-constants/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/localizability/using-optioncaptionml/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/using-optioncaptionml/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/localizability/using-optioncaptionml/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/localizability/using-optioncaptionml/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/_index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/_index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/_index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/_index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/begin-as-an-afterword/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/begin-as-an-afterword/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/begin-as-an-afterword/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/begin-as-an-afterword/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/begin-end/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/begin-end/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/begin-end/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/begin-end/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/binary-operator-line-start/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/binary-operator-line-start/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/binary-operator-line-start/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/binary-operator-line-start/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/blank-lines/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/blank-lines/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/blank-lines/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/blank-lines/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/case-actions/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/case-actions/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/case-actions/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/case-actions/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/colon-usage-in-case/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/colon-usage-in-case/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/colon-usage-in-case/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/colon-usage-in-case/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/comments-curly-brackets/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/comments-curly-brackets/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/comments-curly-brackets/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/comments-curly-brackets/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/comments-spacing/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/comments-spacing/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/comments-spacing/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/comments-spacing/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/end-else-pair/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/end-else-pair/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/end-else-pair/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/end-else-pair/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/indentation/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/indentation/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/indentation/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/indentation/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/keyword-pairs-indentation/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/keyword-pairs-indentation/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/keyword-pairs-indentation/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/keyword-pairs-indentation/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/line-start-keywords/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/line-start-keywords/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/line-start-keywords/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/line-start-keywords/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/lonely-repeat/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/lonely-repeat/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/lonely-repeat/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/lonely-repeat/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/named-invocations/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/named-invocations/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/named-invocations/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/named-invocations/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/nested-withs/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/nested-withs/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/nested-withs/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/nested-withs/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/one-statement-per-line/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/one-statement-per-line/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/one-statement-per-line/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/one-statement-per-line/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/separate-if-and-else/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/separate-if-and-else/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/separate-if-and-else/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/separate-if-and-else/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/spacing-binary-operators/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/spacing-binary-operators/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/spacing-binary-operators/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/spacing-binary-operators/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/spacing-brackets-and/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/spacing-brackets-and/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/spacing-brackets-and/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/spacing-brackets-and/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/spacing-unary-operators/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/spacing-unary-operators/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/spacing-unary-operators/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/spacing-unary-operators/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/suggested-abbreviations/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/suggested-abbreviations/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/suggested-abbreviations/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/suggested-abbreviations/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/temporary-variable-naming/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/temporary-variable-naming/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/temporary-variable-naming/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/temporary-variable-naming/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/textconst-suffixes/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/textconst-suffixes/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/textconst-suffixes/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/textconst-suffixes/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/unary-operator-line-end/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unary-operator-line-end/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/unary-operator-line-end/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unary-operator-line-end/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-compound-parenthesis/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-compound-parenthesis/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-compound-parenthesis/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-compound-parenthesis/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-else/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-else/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-else/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-else/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-function-parenthesis/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-function-parenthesis/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-function-parenthesis/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-function-parenthesis/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-separators/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-separators/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-separators/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-separators/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-truefalse/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-truefalse/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-truefalse/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/unnecessary-truefalse/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/variable-already-scoped/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/variable-already-scoped/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/variable-already-scoped/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/variable-already-scoped/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/variable-naming/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/variable-naming/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/variable-naming/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/variable-naming/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/readability/variables-declarations-order/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/readability/variables-declarations-order/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/readability/variables-declarations-order/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/readability/variables-declarations-order/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/ux/_index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/ux/_index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/ux/_index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/ux/_index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/ux/actions-images/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/ux/actions-images/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/ux/actions-images/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/ux/actions-images/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/ux/confirm/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/ux/confirm/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/ux/confirm/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/ux/confirm/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/ux/fielderror/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/ux/fielderror/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/ux/fielderror/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/ux/fielderror/index.md
diff --git a/content/NAVPatterns/3-cal-coding-guidelines/ux/message-and-error/index.md b/content/docs/NAVPatterns/3-cal-coding-guidelines/ux/message-and-error/index.md
similarity index 100%
rename from content/NAVPatterns/3-cal-coding-guidelines/ux/message-and-error/index.md
rename to content/docs/NAVPatterns/3-cal-coding-guidelines/ux/message-and-error/index.md
diff --git a/content/NAVPatterns/4-get-involved/_index.md b/content/docs/NAVPatterns/4-get-involved/_index.md
similarity index 100%
rename from content/NAVPatterns/4-get-involved/_index.md
rename to content/docs/NAVPatterns/4-get-involved/_index.md
diff --git a/content/NAVPatterns/4-get-involved/code-of-conduct/index.md b/content/docs/NAVPatterns/4-get-involved/code-of-conduct/index.md
similarity index 100%
rename from content/NAVPatterns/4-get-involved/code-of-conduct/index.md
rename to content/docs/NAVPatterns/4-get-involved/code-of-conduct/index.md
diff --git a/content/NAVPatterns/4-get-involved/patterns-authors/index.md b/content/docs/NAVPatterns/4-get-involved/patterns-authors/index.md
similarity index 100%
rename from content/NAVPatterns/4-get-involved/patterns-authors/index.md
rename to content/docs/NAVPatterns/4-get-involved/patterns-authors/index.md
diff --git a/content/NAVPatterns/4-get-involved/template-for-writing-nav-design-patterns/PatternLogo.png b/content/docs/NAVPatterns/4-get-involved/template-for-writing-nav-design-patterns/PatternLogo.png
similarity index 100%
rename from content/NAVPatterns/4-get-involved/template-for-writing-nav-design-patterns/PatternLogo.png
rename to content/docs/NAVPatterns/4-get-involved/template-for-writing-nav-design-patterns/PatternLogo.png
diff --git a/content/NAVPatterns/4-get-involved/template-for-writing-nav-design-patterns/index.md b/content/docs/NAVPatterns/4-get-involved/template-for-writing-nav-design-patterns/index.md
similarity index 100%
rename from content/NAVPatterns/4-get-involved/template-for-writing-nav-design-patterns/index.md
rename to content/docs/NAVPatterns/4-get-involved/template-for-writing-nav-design-patterns/index.md
diff --git a/content/NAVPatterns/_index.md b/content/docs/NAVPatterns/_index.md
similarity index 87%
rename from content/NAVPatterns/_index.md
rename to content/docs/NAVPatterns/_index.md
index 8f91df12..5865a369 100644
--- a/content/NAVPatterns/_index.md
+++ b/content/docs/NAVPatterns/_index.md
@@ -1,12 +1,8 @@
+++
-chapter = true
-pre = " "
title = "NAV Patterns Archive"
weight = 20
+++
-# NAV Patterns Archive
-
## About the archive
This section of the site is a careful reproduction of the content of the Original Microsoft Community NAV Design Patterns project, created with permission.
diff --git a/content/docs/NAVPatterns/patterns/_index.md b/content/docs/NAVPatterns/patterns/_index.md
new file mode 100644
index 00000000..075fc693
--- /dev/null
+++ b/content/docs/NAVPatterns/patterns/_index.md
@@ -0,0 +1,12 @@
+---
+title: "Patterns"
+weight: 110
+tags: ["NAV", "C/AL"]
+categories: ["Archived Pattern"]
+description: >
+ Patterns described to be used with Microsoft Dynamics NAV
+---
+
+{{% alert title="Warning" color="warning" %}}
+Please note that these patterns may not be up-to-date with the patterns for AL and Business Central Development.
+{{% /alert %}}
diff --git a/content/NAVPatterns/1-patterns/activity-log/Activity-Log-NAV.jpg b/content/docs/NAVPatterns/patterns/activity-log/Activity-Log-NAV.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/activity-log/Activity-Log-NAV.jpg
rename to content/docs/NAVPatterns/patterns/activity-log/Activity-Log-NAV.jpg
diff --git a/content/NAVPatterns/1-patterns/activity-log/Activity-Log.jpg b/content/docs/NAVPatterns/patterns/activity-log/Activity-Log.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/activity-log/Activity-Log.jpg
rename to content/docs/NAVPatterns/patterns/activity-log/Activity-Log.jpg
diff --git a/content/NAVPatterns/1-patterns/activity-log/index.md b/content/docs/NAVPatterns/patterns/activity-log/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/activity-log/index.md
rename to content/docs/NAVPatterns/patterns/activity-log/index.md
diff --git a/content/NAVPatterns/1-patterns/argument-table/0218.Argument-Table-image.png b/content/docs/NAVPatterns/patterns/argument-table/0218.Argument-Table-image.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/argument-table/0218.Argument-Table-image.png
rename to content/docs/NAVPatterns/patterns/argument-table/0218.Argument-Table-image.png
diff --git a/content/NAVPatterns/1-patterns/argument-table/index.md b/content/docs/NAVPatterns/patterns/argument-table/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/argument-table/index.md
rename to content/docs/NAVPatterns/patterns/argument-table/index.md
diff --git a/content/NAVPatterns/1-patterns/blocked-entity/2260.BlockedEntityPattern.png b/content/docs/NAVPatterns/patterns/blocked-entity/2260.BlockedEntityPattern.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/blocked-entity/2260.BlockedEntityPattern.png
rename to content/docs/NAVPatterns/patterns/blocked-entity/2260.BlockedEntityPattern.png
diff --git a/content/NAVPatterns/1-patterns/blocked-entity/3056.BlockedEntityPattern_5F00_5F00_5F00_Option.png b/content/docs/NAVPatterns/patterns/blocked-entity/3056.BlockedEntityPattern_5F00_5F00_5F00_Option.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/blocked-entity/3056.BlockedEntityPattern_5F00_5F00_5F00_Option.png
rename to content/docs/NAVPatterns/patterns/blocked-entity/3056.BlockedEntityPattern_5F00_5F00_5F00_Option.png
diff --git a/content/NAVPatterns/1-patterns/blocked-entity/8637.BlockedEntityPattern_5F00_5F00_5F00_Boolean.png b/content/docs/NAVPatterns/patterns/blocked-entity/8637.BlockedEntityPattern_5F00_5F00_5F00_Boolean.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/blocked-entity/8637.BlockedEntityPattern_5F00_5F00_5F00_Boolean.png
rename to content/docs/NAVPatterns/patterns/blocked-entity/8637.BlockedEntityPattern_5F00_5F00_5F00_Boolean.png
diff --git a/content/NAVPatterns/1-patterns/blocked-entity/_index.md b/content/docs/NAVPatterns/patterns/blocked-entity/_index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/blocked-entity/_index.md
rename to content/docs/NAVPatterns/patterns/blocked-entity/_index.md
diff --git a/content/NAVPatterns/1-patterns/blocked-entity/data-driven-blocked-entity/attention.jpg b/content/docs/NAVPatterns/patterns/blocked-entity/data-driven-blocked-entity/attention.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/blocked-entity/data-driven-blocked-entity/attention.jpg
rename to content/docs/NAVPatterns/patterns/blocked-entity/data-driven-blocked-entity/attention.jpg
diff --git a/content/NAVPatterns/1-patterns/blocked-entity/data-driven-blocked-entity/index.md b/content/docs/NAVPatterns/patterns/blocked-entity/data-driven-blocked-entity/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/blocked-entity/data-driven-blocked-entity/index.md
rename to content/docs/NAVPatterns/patterns/blocked-entity/data-driven-blocked-entity/index.md
diff --git a/content/NAVPatterns/1-patterns/cached-web-service-calls/Cached_5F00_Web_5F00_Service_5F00_Calls_5F00_Diagram.png b/content/docs/NAVPatterns/patterns/cached-web-service-calls/Cached_5F00_Web_5F00_Service_5F00_Calls_5F00_Diagram.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/cached-web-service-calls/Cached_5F00_Web_5F00_Service_5F00_Calls_5F00_Diagram.png
rename to content/docs/NAVPatterns/patterns/cached-web-service-calls/Cached_5F00_Web_5F00_Service_5F00_Calls_5F00_Diagram.png
diff --git a/content/NAVPatterns/1-patterns/cached-web-service-calls/index.md b/content/docs/NAVPatterns/patterns/cached-web-service-calls/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/cached-web-service-calls/index.md
rename to content/docs/NAVPatterns/patterns/cached-web-service-calls/index.md
diff --git a/content/NAVPatterns/1-patterns/conditional-cascading-update/3124.T18_5F00_Name_5F00_OnValidate.png b/content/docs/NAVPatterns/patterns/conditional-cascading-update/3124.T18_5F00_Name_5F00_OnValidate.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/conditional-cascading-update/3124.T18_5F00_Name_5F00_OnValidate.png
rename to content/docs/NAVPatterns/patterns/conditional-cascading-update/3124.T18_5F00_Name_5F00_OnValidate.png
diff --git a/content/NAVPatterns/1-patterns/conditional-cascading-update/index.md b/content/docs/NAVPatterns/patterns/conditional-cascading-update/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/conditional-cascading-update/index.md
rename to content/docs/NAVPatterns/patterns/conditional-cascading-update/index.md
diff --git a/content/NAVPatterns/1-patterns/copy-document/clip_5F00_image006.jpg b/content/docs/NAVPatterns/patterns/copy-document/clip_5F00_image006.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/copy-document/clip_5F00_image006.jpg
rename to content/docs/NAVPatterns/patterns/copy-document/clip_5F00_image006.jpg
diff --git a/content/NAVPatterns/1-patterns/copy-document/clip_5F00_image008.jpg b/content/docs/NAVPatterns/patterns/copy-document/clip_5F00_image008.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/copy-document/clip_5F00_image008.jpg
rename to content/docs/NAVPatterns/patterns/copy-document/clip_5F00_image008.jpg
diff --git a/content/NAVPatterns/1-patterns/copy-document/clip_5F00_image010.jpg b/content/docs/NAVPatterns/patterns/copy-document/clip_5F00_image010.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/copy-document/clip_5F00_image010.jpg
rename to content/docs/NAVPatterns/patterns/copy-document/clip_5F00_image010.jpg
diff --git a/content/NAVPatterns/1-patterns/copy-document/clip_image002.gif-750x0.png b/content/docs/NAVPatterns/patterns/copy-document/clip_image002.gif-750x0.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/copy-document/clip_image002.gif-750x0.png
rename to content/docs/NAVPatterns/patterns/copy-document/clip_image002.gif-750x0.png
diff --git a/content/NAVPatterns/1-patterns/copy-document/clip_image004.gif-750x0.png b/content/docs/NAVPatterns/patterns/copy-document/clip_image004.gif-750x0.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/copy-document/clip_image004.gif-750x0.png
rename to content/docs/NAVPatterns/patterns/copy-document/clip_image004.gif-750x0.png
diff --git a/content/NAVPatterns/1-patterns/copy-document/index.md b/content/docs/NAVPatterns/patterns/copy-document/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/copy-document/index.md
rename to content/docs/NAVPatterns/patterns/copy-document/index.md
diff --git a/content/NAVPatterns/1-patterns/create-data-from-templates/2134.Picture6.png b/content/docs/NAVPatterns/patterns/create-data-from-templates/2134.Picture6.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/create-data-from-templates/2134.Picture6.png
rename to content/docs/NAVPatterns/patterns/create-data-from-templates/2134.Picture6.png
diff --git a/content/NAVPatterns/1-patterns/create-data-from-templates/2816.Picture3.png b/content/docs/NAVPatterns/patterns/create-data-from-templates/2816.Picture3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/create-data-from-templates/2816.Picture3.png
rename to content/docs/NAVPatterns/patterns/create-data-from-templates/2816.Picture3.png
diff --git a/content/NAVPatterns/1-patterns/create-data-from-templates/3482.Picture-5.png b/content/docs/NAVPatterns/patterns/create-data-from-templates/3482.Picture-5.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/create-data-from-templates/3482.Picture-5.png
rename to content/docs/NAVPatterns/patterns/create-data-from-templates/3482.Picture-5.png
diff --git a/content/NAVPatterns/1-patterns/create-data-from-templates/4118.Picture1.png b/content/docs/NAVPatterns/patterns/create-data-from-templates/4118.Picture1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/create-data-from-templates/4118.Picture1.png
rename to content/docs/NAVPatterns/patterns/create-data-from-templates/4118.Picture1.png
diff --git a/content/NAVPatterns/1-patterns/create-data-from-templates/4341.Picture4.png b/content/docs/NAVPatterns/patterns/create-data-from-templates/4341.Picture4.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/create-data-from-templates/4341.Picture4.png
rename to content/docs/NAVPatterns/patterns/create-data-from-templates/4341.Picture4.png
diff --git a/content/NAVPatterns/1-patterns/create-data-from-templates/7271.Picture4.png b/content/docs/NAVPatterns/patterns/create-data-from-templates/7271.Picture4.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/create-data-from-templates/7271.Picture4.png
rename to content/docs/NAVPatterns/patterns/create-data-from-templates/7271.Picture4.png
diff --git a/content/NAVPatterns/1-patterns/create-data-from-templates/index.md b/content/docs/NAVPatterns/patterns/create-data-from-templates/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/create-data-from-templates/index.md
rename to content/docs/NAVPatterns/patterns/create-data-from-templates/index.md
diff --git a/content/NAVPatterns/1-patterns/create-urls-to-nav-clients/1778.url1.jpg b/content/docs/NAVPatterns/patterns/create-urls-to-nav-clients/1778.url1.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/create-urls-to-nav-clients/1778.url1.jpg
rename to content/docs/NAVPatterns/patterns/create-urls-to-nav-clients/1778.url1.jpg
diff --git a/content/NAVPatterns/1-patterns/create-urls-to-nav-clients/7802.url2.jpg b/content/docs/NAVPatterns/patterns/create-urls-to-nav-clients/7802.url2.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/create-urls-to-nav-clients/7802.url2.jpg
rename to content/docs/NAVPatterns/patterns/create-urls-to-nav-clients/7802.url2.jpg
diff --git a/content/NAVPatterns/1-patterns/create-urls-to-nav-clients/index.md b/content/docs/NAVPatterns/patterns/create-urls-to-nav-clients/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/create-urls-to-nav-clients/index.md
rename to content/docs/NAVPatterns/patterns/create-urls-to-nav-clients/index.md
diff --git a/content/NAVPatterns/1-patterns/creating-custom-charts/0246.Picture6.png b/content/docs/NAVPatterns/patterns/creating-custom-charts/0246.Picture6.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/creating-custom-charts/0246.Picture6.png
rename to content/docs/NAVPatterns/patterns/creating-custom-charts/0246.Picture6.png
diff --git a/content/NAVPatterns/1-patterns/creating-custom-charts/1411.Picture2.png b/content/docs/NAVPatterns/patterns/creating-custom-charts/1411.Picture2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/creating-custom-charts/1411.Picture2.png
rename to content/docs/NAVPatterns/patterns/creating-custom-charts/1411.Picture2.png
diff --git a/content/NAVPatterns/1-patterns/creating-custom-charts/1541.Picture7.png b/content/docs/NAVPatterns/patterns/creating-custom-charts/1541.Picture7.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/creating-custom-charts/1541.Picture7.png
rename to content/docs/NAVPatterns/patterns/creating-custom-charts/1541.Picture7.png
diff --git a/content/NAVPatterns/1-patterns/creating-custom-charts/1781.Picture5.png b/content/docs/NAVPatterns/patterns/creating-custom-charts/1781.Picture5.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/creating-custom-charts/1781.Picture5.png
rename to content/docs/NAVPatterns/patterns/creating-custom-charts/1781.Picture5.png
diff --git a/content/NAVPatterns/1-patterns/creating-custom-charts/1803.Picture7.png b/content/docs/NAVPatterns/patterns/creating-custom-charts/1803.Picture7.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/creating-custom-charts/1803.Picture7.png
rename to content/docs/NAVPatterns/patterns/creating-custom-charts/1803.Picture7.png
diff --git a/content/NAVPatterns/1-patterns/creating-custom-charts/2553.Picture8.png b/content/docs/NAVPatterns/patterns/creating-custom-charts/2553.Picture8.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/creating-custom-charts/2553.Picture8.png
rename to content/docs/NAVPatterns/patterns/creating-custom-charts/2553.Picture8.png
diff --git a/content/NAVPatterns/1-patterns/creating-custom-charts/5153.Picture1.png b/content/docs/NAVPatterns/patterns/creating-custom-charts/5153.Picture1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/creating-custom-charts/5153.Picture1.png
rename to content/docs/NAVPatterns/patterns/creating-custom-charts/5153.Picture1.png
diff --git a/content/NAVPatterns/1-patterns/creating-custom-charts/5545.Picture9.png b/content/docs/NAVPatterns/patterns/creating-custom-charts/5545.Picture9.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/creating-custom-charts/5545.Picture9.png
rename to content/docs/NAVPatterns/patterns/creating-custom-charts/5545.Picture9.png
diff --git a/content/NAVPatterns/1-patterns/creating-custom-charts/5582.Picture10.png b/content/docs/NAVPatterns/patterns/creating-custom-charts/5582.Picture10.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/creating-custom-charts/5582.Picture10.png
rename to content/docs/NAVPatterns/patterns/creating-custom-charts/5582.Picture10.png
diff --git a/content/NAVPatterns/1-patterns/creating-custom-charts/index.md b/content/docs/NAVPatterns/patterns/creating-custom-charts/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/creating-custom-charts/index.md
rename to content/docs/NAVPatterns/patterns/creating-custom-charts/index.md
diff --git a/content/NAVPatterns/1-patterns/cross-session-events/PubSub.png b/content/docs/NAVPatterns/patterns/cross-session-events/PubSub.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/cross-session-events/PubSub.png
rename to content/docs/NAVPatterns/patterns/cross-session-events/PubSub.png
diff --git a/content/NAVPatterns/1-patterns/cross-session-events/index.md b/content/docs/NAVPatterns/patterns/cross-session-events/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/cross-session-events/index.md
rename to content/docs/NAVPatterns/patterns/cross-session-events/index.md
diff --git a/content/NAVPatterns/1-patterns/currently-active-record/6545.Table.png b/content/docs/NAVPatterns/patterns/currently-active-record/6545.Table.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/currently-active-record/6545.Table.png
rename to content/docs/NAVPatterns/patterns/currently-active-record/6545.Table.png
diff --git a/content/NAVPatterns/1-patterns/currently-active-record/index.md b/content/docs/NAVPatterns/patterns/currently-active-record/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/currently-active-record/index.md
rename to content/docs/NAVPatterns/patterns/currently-active-record/index.md
diff --git a/content/NAVPatterns/1-patterns/data-migration-facade/8308.logo.png b/content/docs/NAVPatterns/patterns/data-migration-facade/8308.logo.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/data-migration-facade/8308.logo.png
rename to content/docs/NAVPatterns/patterns/data-migration-facade/8308.logo.png
diff --git a/content/NAVPatterns/1-patterns/data-migration-facade/NoStagingTableNew2.png b/content/docs/NAVPatterns/patterns/data-migration-facade/NoStagingTableNew2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/data-migration-facade/NoStagingTableNew2.png
rename to content/docs/NAVPatterns/patterns/data-migration-facade/NoStagingTableNew2.png
diff --git a/content/NAVPatterns/1-patterns/data-migration-facade/StagingTableNew2.png b/content/docs/NAVPatterns/patterns/data-migration-facade/StagingTableNew2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/data-migration-facade/StagingTableNew2.png
rename to content/docs/NAVPatterns/patterns/data-migration-facade/StagingTableNew2.png
diff --git a/content/NAVPatterns/1-patterns/data-migration-facade/errorhandling1.png b/content/docs/NAVPatterns/patterns/data-migration-facade/errorhandling1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/data-migration-facade/errorhandling1.png
rename to content/docs/NAVPatterns/patterns/data-migration-facade/errorhandling1.png
diff --git a/content/NAVPatterns/1-patterns/data-migration-facade/errorhandling2.png b/content/docs/NAVPatterns/patterns/data-migration-facade/errorhandling2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/data-migration-facade/errorhandling2.png
rename to content/docs/NAVPatterns/patterns/data-migration-facade/errorhandling2.png
diff --git a/content/NAVPatterns/1-patterns/data-migration-facade/index.md b/content/docs/NAVPatterns/patterns/data-migration-facade/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/data-migration-facade/index.md
rename to content/docs/NAVPatterns/patterns/data-migration-facade/index.md
diff --git a/content/NAVPatterns/1-patterns/discovery-event/Pic2.jpg b/content/docs/NAVPatterns/patterns/discovery-event/Pic2.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/discovery-event/Pic2.jpg
rename to content/docs/NAVPatterns/patterns/discovery-event/Pic2.jpg
diff --git a/content/NAVPatterns/1-patterns/discovery-event/Pic2b.jpg b/content/docs/NAVPatterns/patterns/discovery-event/Pic2b.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/discovery-event/Pic2b.jpg
rename to content/docs/NAVPatterns/patterns/discovery-event/Pic2b.jpg
diff --git a/content/NAVPatterns/1-patterns/discovery-event/Pic3.jpg b/content/docs/NAVPatterns/patterns/discovery-event/Pic3.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/discovery-event/Pic3.jpg
rename to content/docs/NAVPatterns/patterns/discovery-event/Pic3.jpg
diff --git a/content/NAVPatterns/1-patterns/discovery-event/Pic4.jpg b/content/docs/NAVPatterns/patterns/discovery-event/Pic4.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/discovery-event/Pic4.jpg
rename to content/docs/NAVPatterns/patterns/discovery-event/Pic4.jpg
diff --git a/content/NAVPatterns/1-patterns/discovery-event/ServiceConnections.jpg b/content/docs/NAVPatterns/patterns/discovery-event/ServiceConnections.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/discovery-event/ServiceConnections.jpg
rename to content/docs/NAVPatterns/patterns/discovery-event/ServiceConnections.jpg
diff --git a/content/NAVPatterns/1-patterns/discovery-event/index.md b/content/docs/NAVPatterns/patterns/discovery-event/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/discovery-event/index.md
rename to content/docs/NAVPatterns/patterns/discovery-event/index.md
diff --git a/content/NAVPatterns/1-patterns/document/0005.Document-Pattern-UML-Class-Diagram.jpg b/content/docs/NAVPatterns/patterns/document/0005.Document-Pattern-UML-Class-Diagram.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/document/0005.Document-Pattern-UML-Class-Diagram.jpg
rename to content/docs/NAVPatterns/patterns/document/0005.Document-Pattern-UML-Class-Diagram.jpg
diff --git a/content/NAVPatterns/1-patterns/document/2086.Design-Pattern-Document-SubPage-Properties.png b/content/docs/NAVPatterns/patterns/document/2086.Design-Pattern-Document-SubPage-Properties.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/document/2086.Design-Pattern-Document-SubPage-Properties.png
rename to content/docs/NAVPatterns/patterns/document/2086.Design-Pattern-Document-SubPage-Properties.png
diff --git a/content/NAVPatterns/1-patterns/document/index.md b/content/docs/NAVPatterns/patterns/document/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/document/index.md
rename to content/docs/NAVPatterns/patterns/document/index.md
diff --git a/content/NAVPatterns/1-patterns/easy-update-of-setup-or-supplementary-information/0654.easy-update-1.png b/content/docs/NAVPatterns/patterns/easy-update-of-setup-or-supplementary-information/0654.easy-update-1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/easy-update-of-setup-or-supplementary-information/0654.easy-update-1.png
rename to content/docs/NAVPatterns/patterns/easy-update-of-setup-or-supplementary-information/0654.easy-update-1.png
diff --git a/content/NAVPatterns/1-patterns/easy-update-of-setup-or-supplementary-information/4024.easy-update-2.png b/content/docs/NAVPatterns/patterns/easy-update-of-setup-or-supplementary-information/4024.easy-update-2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/easy-update-of-setup-or-supplementary-information/4024.easy-update-2.png
rename to content/docs/NAVPatterns/patterns/easy-update-of-setup-or-supplementary-information/4024.easy-update-2.png
diff --git a/content/NAVPatterns/1-patterns/easy-update-of-setup-or-supplementary-information/index.md b/content/docs/NAVPatterns/patterns/easy-update-of-setup-or-supplementary-information/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/easy-update-of-setup-or-supplementary-information/index.md
rename to content/docs/NAVPatterns/patterns/easy-update-of-setup-or-supplementary-information/index.md
diff --git a/content/NAVPatterns/1-patterns/error-message-processing/image001.png b/content/docs/NAVPatterns/patterns/error-message-processing/image001.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/error-message-processing/image001.png
rename to content/docs/NAVPatterns/patterns/error-message-processing/image001.png
diff --git a/content/NAVPatterns/1-patterns/error-message-processing/image003.png b/content/docs/NAVPatterns/patterns/error-message-processing/image003.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/error-message-processing/image003.png
rename to content/docs/NAVPatterns/patterns/error-message-processing/image003.png
diff --git a/content/NAVPatterns/1-patterns/error-message-processing/index.md b/content/docs/NAVPatterns/patterns/error-message-processing/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/error-message-processing/index.md
rename to content/docs/NAVPatterns/patterns/error-message-processing/index.md
diff --git a/content/NAVPatterns/1-patterns/extending-the-role-center-headlines/0724.Headline-sequence-diagram-v2.png b/content/docs/NAVPatterns/patterns/extending-the-role-center-headlines/0724.Headline-sequence-diagram-v2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/extending-the-role-center-headlines/0724.Headline-sequence-diagram-v2.png
rename to content/docs/NAVPatterns/patterns/extending-the-role-center-headlines/0724.Headline-sequence-diagram-v2.png
diff --git a/content/NAVPatterns/1-patterns/extending-the-role-center-headlines/3733.logo.png b/content/docs/NAVPatterns/patterns/extending-the-role-center-headlines/3733.logo.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/extending-the-role-center-headlines/3733.logo.png
rename to content/docs/NAVPatterns/patterns/extending-the-role-center-headlines/3733.logo.png
diff --git a/content/NAVPatterns/1-patterns/extending-the-role-center-headlines/Headline.png b/content/docs/NAVPatterns/patterns/extending-the-role-center-headlines/Headline.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/extending-the-role-center-headlines/Headline.png
rename to content/docs/NAVPatterns/patterns/extending-the-role-center-headlines/Headline.png
diff --git a/content/NAVPatterns/1-patterns/extending-the-role-center-headlines/index.md b/content/docs/NAVPatterns/patterns/extending-the-role-center-headlines/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/extending-the-role-center-headlines/index.md
rename to content/docs/NAVPatterns/patterns/extending-the-role-center-headlines/index.md
diff --git a/content/NAVPatterns/1-patterns/feature-localization-for-data-structures/3058.Feature-localization-for-data-structures-3.png b/content/docs/NAVPatterns/patterns/feature-localization-for-data-structures/3058.Feature-localization-for-data-structures-3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/feature-localization-for-data-structures/3058.Feature-localization-for-data-structures-3.png
rename to content/docs/NAVPatterns/patterns/feature-localization-for-data-structures/3058.Feature-localization-for-data-structures-3.png
diff --git a/content/NAVPatterns/1-patterns/feature-localization-for-data-structures/5123.Feature-localization-for-data-structures-1.png b/content/docs/NAVPatterns/patterns/feature-localization-for-data-structures/5123.Feature-localization-for-data-structures-1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/feature-localization-for-data-structures/5123.Feature-localization-for-data-structures-1.png
rename to content/docs/NAVPatterns/patterns/feature-localization-for-data-structures/5123.Feature-localization-for-data-structures-1.png
diff --git a/content/NAVPatterns/1-patterns/feature-localization-for-data-structures/6052.Feature-localization-for-data-structures-2.png b/content/docs/NAVPatterns/patterns/feature-localization-for-data-structures/6052.Feature-localization-for-data-structures-2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/feature-localization-for-data-structures/6052.Feature-localization-for-data-structures-2.png
rename to content/docs/NAVPatterns/patterns/feature-localization-for-data-structures/6052.Feature-localization-for-data-structures-2.png
diff --git a/content/NAVPatterns/1-patterns/feature-localization-for-data-structures/index.md b/content/docs/NAVPatterns/patterns/feature-localization-for-data-structures/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/feature-localization-for-data-structures/index.md
rename to content/docs/NAVPatterns/patterns/feature-localization-for-data-structures/index.md
diff --git a/content/NAVPatterns/1-patterns/hooks/5383.HookPattern1.png b/content/docs/NAVPatterns/patterns/hooks/5383.HookPattern1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/hooks/5383.HookPattern1.png
rename to content/docs/NAVPatterns/patterns/hooks/5383.HookPattern1.png
diff --git a/content/NAVPatterns/1-patterns/hooks/6378.HookPattern2.png b/content/docs/NAVPatterns/patterns/hooks/6378.HookPattern2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/hooks/6378.HookPattern2.png
rename to content/docs/NAVPatterns/patterns/hooks/6378.HookPattern2.png
diff --git a/content/NAVPatterns/1-patterns/hooks/8156.HookPattern3.png b/content/docs/NAVPatterns/patterns/hooks/8156.HookPattern3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/hooks/8156.HookPattern3.png
rename to content/docs/NAVPatterns/patterns/hooks/8156.HookPattern3.png
diff --git a/content/NAVPatterns/1-patterns/hooks/8875.HookPattern4.png b/content/docs/NAVPatterns/patterns/hooks/8875.HookPattern4.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/hooks/8875.HookPattern4.png
rename to content/docs/NAVPatterns/patterns/hooks/8875.HookPattern4.png
diff --git a/content/NAVPatterns/1-patterns/hooks/index.md b/content/docs/NAVPatterns/patterns/hooks/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/hooks/index.md
rename to content/docs/NAVPatterns/patterns/hooks/index.md
diff --git a/content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0333.Figure-3.PNG b/content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0333.Figure-3.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0333.Figure-3.PNG
rename to content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0333.Figure-3.PNG
diff --git a/content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0458.Figure-1.PNG b/content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0458.Figure-1.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0458.Figure-1.PNG
rename to content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0458.Figure-1.PNG
diff --git a/content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0552.Example-Figure-5.png b/content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0552.Example-Figure-5.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0552.Example-Figure-5.png
rename to content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0552.Example-Figure-5.png
diff --git a/content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0638.Figure-2.PNG b/content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0638.Figure-2.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0638.Figure-2.PNG
rename to content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/0638.Figure-2.PNG
diff --git a/content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/1488.Example-Figure-1.png b/content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/1488.Example-Figure-1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/1488.Example-Figure-1.png
rename to content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/1488.Example-Figure-1.png
diff --git a/content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/1884.Example-Figure-7.png b/content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/1884.Example-Figure-7.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/1884.Example-Figure-7.png
rename to content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/1884.Example-Figure-7.png
diff --git a/content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/2068.Example-Figure-4.png b/content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/2068.Example-Figure-4.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/2068.Example-Figure-4.png
rename to content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/2068.Example-Figure-4.png
diff --git a/content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4477.Example-Figure-6.png b/content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4477.Example-Figure-6.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4477.Example-Figure-6.png
rename to content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4477.Example-Figure-6.png
diff --git a/content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4532.Example-Figure-3.png b/content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4532.Example-Figure-3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4532.Example-Figure-3.png
rename to content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4532.Example-Figure-3.png
diff --git a/content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4682.Example-Figure-2.png b/content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4682.Example-Figure-2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4682.Example-Figure-2.png
rename to content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/4682.Example-Figure-2.png
diff --git a/content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/index.md b/content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/index.md
rename to content/docs/NAVPatterns/patterns/implementation-of-surrogate-keys-using-autoincrement-pattern/index.md
diff --git a/content/NAVPatterns/1-patterns/instructions-in-the-ui/2804.Picture-2.png b/content/docs/NAVPatterns/patterns/instructions-in-the-ui/2804.Picture-2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/instructions-in-the-ui/2804.Picture-2.png
rename to content/docs/NAVPatterns/patterns/instructions-in-the-ui/2804.Picture-2.png
diff --git a/content/NAVPatterns/1-patterns/instructions-in-the-ui/5707.Picture-4.png b/content/docs/NAVPatterns/patterns/instructions-in-the-ui/5707.Picture-4.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/instructions-in-the-ui/5707.Picture-4.png
rename to content/docs/NAVPatterns/patterns/instructions-in-the-ui/5707.Picture-4.png
diff --git a/content/NAVPatterns/1-patterns/instructions-in-the-ui/6215.picture-1.png b/content/docs/NAVPatterns/patterns/instructions-in-the-ui/6215.picture-1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/instructions-in-the-ui/6215.picture-1.png
rename to content/docs/NAVPatterns/patterns/instructions-in-the-ui/6215.picture-1.png
diff --git a/content/NAVPatterns/1-patterns/instructions-in-the-ui/6685.picture-3.png b/content/docs/NAVPatterns/patterns/instructions-in-the-ui/6685.picture-3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/instructions-in-the-ui/6685.picture-3.png
rename to content/docs/NAVPatterns/patterns/instructions-in-the-ui/6685.picture-3.png
diff --git a/content/NAVPatterns/1-patterns/instructions-in-the-ui/7217.picture-1.png b/content/docs/NAVPatterns/patterns/instructions-in-the-ui/7217.picture-1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/instructions-in-the-ui/7217.picture-1.png
rename to content/docs/NAVPatterns/patterns/instructions-in-the-ui/7217.picture-1.png
diff --git a/content/NAVPatterns/1-patterns/instructions-in-the-ui/7245.Picture-2.png b/content/docs/NAVPatterns/patterns/instructions-in-the-ui/7245.Picture-2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/instructions-in-the-ui/7245.Picture-2.png
rename to content/docs/NAVPatterns/patterns/instructions-in-the-ui/7245.Picture-2.png
diff --git a/content/NAVPatterns/1-patterns/instructions-in-the-ui/index.md b/content/docs/NAVPatterns/patterns/instructions-in-the-ui/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/instructions-in-the-ui/index.md
rename to content/docs/NAVPatterns/patterns/instructions-in-the-ui/index.md
diff --git a/content/NAVPatterns/1-patterns/integration-of-addresses/index.md b/content/docs/NAVPatterns/patterns/integration-of-addresses/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/integration-of-addresses/index.md
rename to content/docs/NAVPatterns/patterns/integration-of-addresses/index.md
diff --git a/content/NAVPatterns/1-patterns/journal-error-processing/0005.Journal-Error-Processing-2.jpg b/content/docs/NAVPatterns/patterns/journal-error-processing/0005.Journal-Error-Processing-2.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/journal-error-processing/0005.Journal-Error-Processing-2.jpg
rename to content/docs/NAVPatterns/patterns/journal-error-processing/0005.Journal-Error-Processing-2.jpg
diff --git a/content/NAVPatterns/1-patterns/journal-error-processing/0777.Journal-Error-Processing.jpg b/content/docs/NAVPatterns/patterns/journal-error-processing/0777.Journal-Error-Processing.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/journal-error-processing/0777.Journal-Error-Processing.jpg
rename to content/docs/NAVPatterns/patterns/journal-error-processing/0777.Journal-Error-Processing.jpg
diff --git a/content/NAVPatterns/1-patterns/journal-error-processing/5518.Journal-Error-Processing-1.jpg b/content/docs/NAVPatterns/patterns/journal-error-processing/5518.Journal-Error-Processing-1.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/journal-error-processing/5518.Journal-Error-Processing-1.jpg
rename to content/docs/NAVPatterns/patterns/journal-error-processing/5518.Journal-Error-Processing-1.jpg
diff --git a/content/NAVPatterns/1-patterns/journal-error-processing/5661.Journal-Error-Processing-8.jpg b/content/docs/NAVPatterns/patterns/journal-error-processing/5661.Journal-Error-Processing-8.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/journal-error-processing/5661.Journal-Error-Processing-8.jpg
rename to content/docs/NAVPatterns/patterns/journal-error-processing/5661.Journal-Error-Processing-8.jpg
diff --git a/content/NAVPatterns/1-patterns/journal-error-processing/8640.Journal-Error-Processing-3.jpg b/content/docs/NAVPatterns/patterns/journal-error-processing/8640.Journal-Error-Processing-3.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/journal-error-processing/8640.Journal-Error-Processing-3.jpg
rename to content/docs/NAVPatterns/patterns/journal-error-processing/8640.Journal-Error-Processing-3.jpg
diff --git a/content/NAVPatterns/1-patterns/journal-error-processing/index.md b/content/docs/NAVPatterns/patterns/journal-error-processing/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/journal-error-processing/index.md
rename to content/docs/NAVPatterns/patterns/journal-error-processing/index.md
diff --git a/content/NAVPatterns/1-patterns/journal-template-batch-line/2438.Journal-Template-Batch-Line-1.jpg b/content/docs/NAVPatterns/patterns/journal-template-batch-line/2438.Journal-Template-Batch-Line-1.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/journal-template-batch-line/2438.Journal-Template-Batch-Line-1.jpg
rename to content/docs/NAVPatterns/patterns/journal-template-batch-line/2438.Journal-Template-Batch-Line-1.jpg
diff --git a/content/NAVPatterns/1-patterns/journal-template-batch-line/8103.Journal-Template-Batch-Line-2.jpg b/content/docs/NAVPatterns/patterns/journal-template-batch-line/8103.Journal-Template-Batch-Line-2.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/journal-template-batch-line/8103.Journal-Template-Batch-Line-2.jpg
rename to content/docs/NAVPatterns/patterns/journal-template-batch-line/8103.Journal-Template-Batch-Line-2.jpg
diff --git a/content/NAVPatterns/1-patterns/journal-template-batch-line/index.md b/content/docs/NAVPatterns/patterns/journal-template-batch-line/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/journal-template-batch-line/index.md
rename to content/docs/NAVPatterns/patterns/journal-template-batch-line/index.md
diff --git a/content/NAVPatterns/1-patterns/master-data/PageCardDefinition.PNG b/content/docs/NAVPatterns/patterns/master-data/PageCardDefinition.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/master-data/PageCardDefinition.PNG
rename to content/docs/NAVPatterns/patterns/master-data/PageCardDefinition.PNG
diff --git a/content/NAVPatterns/1-patterns/master-data/PageCardPropertiesV2.PNG b/content/docs/NAVPatterns/patterns/master-data/PageCardPropertiesV2.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/master-data/PageCardPropertiesV2.PNG
rename to content/docs/NAVPatterns/patterns/master-data/PageCardPropertiesV2.PNG
diff --git a/content/NAVPatterns/1-patterns/master-data/PageListDefinition.PNG b/content/docs/NAVPatterns/patterns/master-data/PageListDefinition.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/master-data/PageListDefinition.PNG
rename to content/docs/NAVPatterns/patterns/master-data/PageListDefinition.PNG
diff --git a/content/NAVPatterns/1-patterns/master-data/PageListPropertiesV2.PNG b/content/docs/NAVPatterns/patterns/master-data/PageListPropertiesV2.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/master-data/PageListPropertiesV2.PNG
rename to content/docs/NAVPatterns/patterns/master-data/PageListPropertiesV2.PNG
diff --git a/content/NAVPatterns/1-patterns/master-data/Table.PNG b/content/docs/NAVPatterns/patterns/master-data/Table.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/master-data/Table.PNG
rename to content/docs/NAVPatterns/patterns/master-data/Table.PNG
diff --git a/content/NAVPatterns/1-patterns/master-data/TablePropertiesV2.PNG b/content/docs/NAVPatterns/patterns/master-data/TablePropertiesV2.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/master-data/TablePropertiesV2.PNG
rename to content/docs/NAVPatterns/patterns/master-data/TablePropertiesV2.PNG
diff --git a/content/NAVPatterns/1-patterns/master-data/index.md b/content/docs/NAVPatterns/patterns/master-data/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/master-data/index.md
rename to content/docs/NAVPatterns/patterns/master-data/index.md
diff --git a/content/NAVPatterns/1-patterns/multi-file-download/index.md b/content/docs/NAVPatterns/patterns/multi-file-download/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/multi-file-download/index.md
rename to content/docs/NAVPatterns/patterns/multi-file-download/index.md
diff --git a/content/NAVPatterns/1-patterns/multi-page-list/Multi-page-list-img-1.jpg b/content/docs/NAVPatterns/patterns/multi-page-list/Multi-page-list-img-1.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/multi-page-list/Multi-page-list-img-1.jpg
rename to content/docs/NAVPatterns/patterns/multi-page-list/Multi-page-list-img-1.jpg
diff --git a/content/NAVPatterns/1-patterns/multi-page-list/Multi-page-list-img-2.jpg b/content/docs/NAVPatterns/patterns/multi-page-list/Multi-page-list-img-2.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/multi-page-list/Multi-page-list-img-2.jpg
rename to content/docs/NAVPatterns/patterns/multi-page-list/Multi-page-list-img-2.jpg
diff --git a/content/NAVPatterns/1-patterns/multi-page-list/index.md b/content/docs/NAVPatterns/patterns/multi-page-list/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/multi-page-list/index.md
rename to content/docs/NAVPatterns/patterns/multi-page-list/index.md
diff --git a/content/NAVPatterns/1-patterns/multilanguage-application-data/2746.3.png b/content/docs/NAVPatterns/patterns/multilanguage-application-data/2746.3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/multilanguage-application-data/2746.3.png
rename to content/docs/NAVPatterns/patterns/multilanguage-application-data/2746.3.png
diff --git a/content/NAVPatterns/1-patterns/multilanguage-application-data/4812.4.png b/content/docs/NAVPatterns/patterns/multilanguage-application-data/4812.4.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/multilanguage-application-data/4812.4.png
rename to content/docs/NAVPatterns/patterns/multilanguage-application-data/4812.4.png
diff --git a/content/NAVPatterns/1-patterns/multilanguage-application-data/5670.1.png b/content/docs/NAVPatterns/patterns/multilanguage-application-data/5670.1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/multilanguage-application-data/5670.1.png
rename to content/docs/NAVPatterns/patterns/multilanguage-application-data/5670.1.png
diff --git a/content/NAVPatterns/1-patterns/multilanguage-application-data/6746.2.png b/content/docs/NAVPatterns/patterns/multilanguage-application-data/6746.2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/multilanguage-application-data/6746.2.png
rename to content/docs/NAVPatterns/patterns/multilanguage-application-data/6746.2.png
diff --git a/content/NAVPatterns/1-patterns/multilanguage-application-data/index.md b/content/docs/NAVPatterns/patterns/multilanguage-application-data/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/multilanguage-application-data/index.md
rename to content/docs/NAVPatterns/patterns/multilanguage-application-data/index.md
diff --git a/content/NAVPatterns/1-patterns/net-exception-handling-in-cal/1856.DotNet_5F00_Exception_5F00_Handling_5F00_in_5F00_CAL_5F00_Diagram.png b/content/docs/NAVPatterns/patterns/net-exception-handling-in-cal/1856.DotNet_5F00_Exception_5F00_Handling_5F00_in_5F00_CAL_5F00_Diagram.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/net-exception-handling-in-cal/1856.DotNet_5F00_Exception_5F00_Handling_5F00_in_5F00_CAL_5F00_Diagram.png
rename to content/docs/NAVPatterns/patterns/net-exception-handling-in-cal/1856.DotNet_5F00_Exception_5F00_Handling_5F00_in_5F00_CAL_5F00_Diagram.png
diff --git a/content/NAVPatterns/1-patterns/net-exception-handling-in-cal/_index.md b/content/docs/NAVPatterns/patterns/net-exception-handling-in-cal/_index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/net-exception-handling-in-cal/_index.md
rename to content/docs/NAVPatterns/patterns/net-exception-handling-in-cal/_index.md
diff --git a/content/NAVPatterns/1-patterns/net-exception-handling-in-cal/tryfunction-net-exception-handling-in-cal/TryFunction_5F00_DotNet_5F00_Exception_5F00_Handling_5F00_in_5F00_CAL.png b/content/docs/NAVPatterns/patterns/net-exception-handling-in-cal/tryfunction-net-exception-handling-in-cal/TryFunction_5F00_DotNet_5F00_Exception_5F00_Handling_5F00_in_5F00_CAL.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/net-exception-handling-in-cal/tryfunction-net-exception-handling-in-cal/TryFunction_5F00_DotNet_5F00_Exception_5F00_Handling_5F00_in_5F00_CAL.png
rename to content/docs/NAVPatterns/patterns/net-exception-handling-in-cal/tryfunction-net-exception-handling-in-cal/TryFunction_5F00_DotNet_5F00_Exception_5F00_Handling_5F00_in_5F00_CAL.png
diff --git a/content/NAVPatterns/1-patterns/net-exception-handling-in-cal/tryfunction-net-exception-handling-in-cal/index.md b/content/docs/NAVPatterns/patterns/net-exception-handling-in-cal/tryfunction-net-exception-handling-in-cal/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/net-exception-handling-in-cal/tryfunction-net-exception-handling-in-cal/index.md
rename to content/docs/NAVPatterns/patterns/net-exception-handling-in-cal/tryfunction-net-exception-handling-in-cal/index.md
diff --git a/content/NAVPatterns/1-patterns/no-series/1452.2.png b/content/docs/NAVPatterns/patterns/no-series/1452.2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/no-series/1452.2.png
rename to content/docs/NAVPatterns/patterns/no-series/1452.2.png
diff --git a/content/NAVPatterns/1-patterns/no-series/3527.3.png b/content/docs/NAVPatterns/patterns/no-series/3527.3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/no-series/3527.3.png
rename to content/docs/NAVPatterns/patterns/no-series/3527.3.png
diff --git a/content/NAVPatterns/1-patterns/no-series/5661.1.png b/content/docs/NAVPatterns/patterns/no-series/5661.1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/no-series/5661.1.png
rename to content/docs/NAVPatterns/patterns/no-series/5661.1.png
diff --git a/content/NAVPatterns/1-patterns/no-series/index.md b/content/docs/NAVPatterns/patterns/no-series/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/no-series/index.md
rename to content/docs/NAVPatterns/patterns/no-series/index.md
diff --git a/content/NAVPatterns/1-patterns/notifications/_index.md b/content/docs/NAVPatterns/patterns/notifications/_index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/_index.md
rename to content/docs/NAVPatterns/patterns/notifications/_index.md
diff --git a/content/NAVPatterns/1-patterns/notifications/in-context-notifications/2514.Fig4.png b/content/docs/NAVPatterns/patterns/notifications/in-context-notifications/2514.Fig4.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/in-context-notifications/2514.Fig4.png
rename to content/docs/NAVPatterns/patterns/notifications/in-context-notifications/2514.Fig4.png
diff --git a/content/NAVPatterns/1-patterns/notifications/in-context-notifications/2526.Fig11.png b/content/docs/NAVPatterns/patterns/notifications/in-context-notifications/2526.Fig11.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/in-context-notifications/2526.Fig11.png
rename to content/docs/NAVPatterns/patterns/notifications/in-context-notifications/2526.Fig11.png
diff --git a/content/NAVPatterns/1-patterns/notifications/in-context-notifications/6646.Fig9.png b/content/docs/NAVPatterns/patterns/notifications/in-context-notifications/6646.Fig9.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/in-context-notifications/6646.Fig9.png
rename to content/docs/NAVPatterns/patterns/notifications/in-context-notifications/6646.Fig9.png
diff --git a/content/NAVPatterns/1-patterns/notifications/in-context-notifications/6724.Fig2.png b/content/docs/NAVPatterns/patterns/notifications/in-context-notifications/6724.Fig2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/in-context-notifications/6724.Fig2.png
rename to content/docs/NAVPatterns/patterns/notifications/in-context-notifications/6724.Fig2.png
diff --git a/content/NAVPatterns/1-patterns/notifications/in-context-notifications/7701.Fig1.png b/content/docs/NAVPatterns/patterns/notifications/in-context-notifications/7701.Fig1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/in-context-notifications/7701.Fig1.png
rename to content/docs/NAVPatterns/patterns/notifications/in-context-notifications/7701.Fig1.png
diff --git a/content/NAVPatterns/1-patterns/notifications/in-context-notifications/index.md b/content/docs/NAVPatterns/patterns/notifications/in-context-notifications/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/in-context-notifications/index.md
rename to content/docs/NAVPatterns/patterns/notifications/in-context-notifications/index.md
diff --git a/content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/0677.3-notifications-smaller.PNG b/content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/0677.3-notifications-smaller.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/0677.3-notifications-smaller.PNG
rename to content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/0677.3-notifications-smaller.PNG
diff --git a/content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/4807.1st-notification.PNG b/content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/4807.1st-notification.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/4807.1st-notification.PNG
rename to content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/4807.1st-notification.PNG
diff --git a/content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/6138.logo.png b/content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/6138.logo.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/6138.logo.png
rename to content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/6138.logo.png
diff --git a/content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/8512.2nd-notification.PNG b/content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/8512.2nd-notification.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/8512.2nd-notification.PNG
rename to content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/8512.2nd-notification.PNG
diff --git a/content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/index.md b/content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/index.md
rename to content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/index.md
diff --git a/content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/sequence1.png b/content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/sequence1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/sequence1.png
rename to content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/sequence1.png
diff --git a/content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/sequence2.png b/content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/sequence2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/sequence2.png
rename to content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/sequence2.png
diff --git a/content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/sequence3.png b/content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/sequence3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/notifications/notification-lifecycle-management-pattern/sequence3.png
rename to content/docs/NAVPatterns/patterns/notifications/notification-lifecycle-management-pattern/sequence3.png
diff --git a/content/NAVPatterns/1-patterns/observer/index.md b/content/docs/NAVPatterns/patterns/observer/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/observer/index.md
rename to content/docs/NAVPatterns/patterns/observer/index.md
diff --git a/content/NAVPatterns/1-patterns/posting-routine-select-behavior/1563.PostingRoutineSelectBehaviour2.png b/content/docs/NAVPatterns/patterns/posting-routine-select-behavior/1563.PostingRoutineSelectBehaviour2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/posting-routine-select-behavior/1563.PostingRoutineSelectBehaviour2.png
rename to content/docs/NAVPatterns/patterns/posting-routine-select-behavior/1563.PostingRoutineSelectBehaviour2.png
diff --git a/content/NAVPatterns/1-patterns/posting-routine-select-behavior/5428.PostingRoutineSelectBehaviour3.png b/content/docs/NAVPatterns/patterns/posting-routine-select-behavior/5428.PostingRoutineSelectBehaviour3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/posting-routine-select-behavior/5428.PostingRoutineSelectBehaviour3.png
rename to content/docs/NAVPatterns/patterns/posting-routine-select-behavior/5428.PostingRoutineSelectBehaviour3.png
diff --git a/content/NAVPatterns/1-patterns/posting-routine-select-behavior/6170.PostingRoutineSelectBehaviour4.png b/content/docs/NAVPatterns/patterns/posting-routine-select-behavior/6170.PostingRoutineSelectBehaviour4.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/posting-routine-select-behavior/6170.PostingRoutineSelectBehaviour4.png
rename to content/docs/NAVPatterns/patterns/posting-routine-select-behavior/6170.PostingRoutineSelectBehaviour4.png
diff --git a/content/NAVPatterns/1-patterns/posting-routine-select-behavior/7585.PostingRoutineSelectBehaviour1.png b/content/docs/NAVPatterns/patterns/posting-routine-select-behavior/7585.PostingRoutineSelectBehaviour1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/posting-routine-select-behavior/7585.PostingRoutineSelectBehaviour1.png
rename to content/docs/NAVPatterns/patterns/posting-routine-select-behavior/7585.PostingRoutineSelectBehaviour1.png
diff --git a/content/NAVPatterns/1-patterns/posting-routine-select-behavior/index.md b/content/docs/NAVPatterns/patterns/posting-routine-select-behavior/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/posting-routine-select-behavior/index.md
rename to content/docs/NAVPatterns/patterns/posting-routine-select-behavior/index.md
diff --git a/content/NAVPatterns/1-patterns/product-name/ProductName-Logo.png b/content/docs/NAVPatterns/patterns/product-name/ProductName-Logo.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/product-name/ProductName-Logo.png
rename to content/docs/NAVPatterns/patterns/product-name/ProductName-Logo.png
diff --git a/content/NAVPatterns/1-patterns/product-name/ProductName-Sample.PNG b/content/docs/NAVPatterns/patterns/product-name/ProductName-Sample.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/product-name/ProductName-Sample.PNG
rename to content/docs/NAVPatterns/patterns/product-name/ProductName-Sample.PNG
diff --git a/content/NAVPatterns/1-patterns/product-name/ProductName-output.png b/content/docs/NAVPatterns/patterns/product-name/ProductName-output.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/product-name/ProductName-output.png
rename to content/docs/NAVPatterns/patterns/product-name/ProductName-output.png
diff --git a/content/NAVPatterns/1-patterns/product-name/index.md b/content/docs/NAVPatterns/patterns/product-name/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/product-name/index.md
rename to content/docs/NAVPatterns/patterns/product-name/index.md
diff --git a/content/NAVPatterns/1-patterns/queries/_index.md b/content/docs/NAVPatterns/patterns/queries/_index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/_index.md
rename to content/docs/NAVPatterns/patterns/queries/_index.md
diff --git a/content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/6521.clip_5F00_image001.png b/content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/6521.clip_5F00_image001.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/6521.clip_5F00_image001.png
rename to content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/6521.clip_5F00_image001.png
diff --git a/content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/Untitled-picture.png b/content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/Untitled-picture.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/Untitled-picture.png
rename to content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/Untitled-picture.png
diff --git a/content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image002.png b/content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image002.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image002.png
rename to content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image002.png
diff --git a/content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image003.png b/content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image003.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image003.png
rename to content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image003.png
diff --git a/content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image004.png b/content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image004.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image004.png
rename to content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image004.png
diff --git a/content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image005.png b/content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image005.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image005.png
rename to content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image005.png
diff --git a/content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image006.png b/content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image006.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image006.png
rename to content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image006.png
diff --git a/content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image007.png b/content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image007.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image007.png
rename to content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image007.png
diff --git a/content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image008.png b/content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image008.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/clip_5F00_image008.png
rename to content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/clip_5F00_image008.png
diff --git a/content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/index.md b/content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/select-distinct-with-queries/index.md
rename to content/docs/NAVPatterns/patterns/queries/select-distinct-with-queries/index.md
diff --git a/content/NAVPatterns/1-patterns/queries/use-queries-to-detect-duplicate-records/clip_5F00_image002.jpg b/content/docs/NAVPatterns/patterns/queries/use-queries-to-detect-duplicate-records/clip_5F00_image002.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/use-queries-to-detect-duplicate-records/clip_5F00_image002.jpg
rename to content/docs/NAVPatterns/patterns/queries/use-queries-to-detect-duplicate-records/clip_5F00_image002.jpg
diff --git a/content/NAVPatterns/1-patterns/queries/use-queries-to-detect-duplicate-records/index.md b/content/docs/NAVPatterns/patterns/queries/use-queries-to-detect-duplicate-records/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/use-queries-to-detect-duplicate-records/index.md
rename to content/docs/NAVPatterns/patterns/queries/use-queries-to-detect-duplicate-records/index.md
diff --git a/content/NAVPatterns/1-patterns/queries/use-queries-to-replace-nested-loops/5040.clip_5F00_image002.png b/content/docs/NAVPatterns/patterns/queries/use-queries-to-replace-nested-loops/5040.clip_5F00_image002.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/use-queries-to-replace-nested-loops/5040.clip_5F00_image002.png
rename to content/docs/NAVPatterns/patterns/queries/use-queries-to-replace-nested-loops/5040.clip_5F00_image002.png
diff --git a/content/NAVPatterns/1-patterns/queries/use-queries-to-replace-nested-loops/index.md b/content/docs/NAVPatterns/patterns/queries/use-queries-to-replace-nested-loops/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/queries/use-queries-to-replace-nested-loops/index.md
rename to content/docs/NAVPatterns/patterns/queries/use-queries-to-replace-nested-loops/index.md
diff --git a/content/NAVPatterns/1-patterns/read-once-initialization-and-validation/2465.5.png b/content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/2465.5.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/read-once-initialization-and-validation/2465.5.png
rename to content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/2465.5.png
diff --git a/content/NAVPatterns/1-patterns/read-once-initialization-and-validation/4.png b/content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/4.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/read-once-initialization-and-validation/4.png
rename to content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/4.png
diff --git a/content/NAVPatterns/1-patterns/read-once-initialization-and-validation/4314.3.png b/content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/4314.3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/read-once-initialization-and-validation/4314.3.png
rename to content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/4314.3.png
diff --git a/content/NAVPatterns/1-patterns/read-once-initialization-and-validation/4477.2.png b/content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/4477.2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/read-once-initialization-and-validation/4477.2.png
rename to content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/4477.2.png
diff --git a/content/NAVPatterns/1-patterns/read-once-initialization-and-validation/5025.2.png b/content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/5025.2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/read-once-initialization-and-validation/5025.2.png
rename to content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/5025.2.png
diff --git a/content/NAVPatterns/1-patterns/read-once-initialization-and-validation/5672.8.png b/content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/5672.8.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/read-once-initialization-and-validation/5672.8.png
rename to content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/5672.8.png
diff --git a/content/NAVPatterns/1-patterns/read-once-initialization-and-validation/5857.1.png b/content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/5857.1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/read-once-initialization-and-validation/5857.1.png
rename to content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/5857.1.png
diff --git a/content/NAVPatterns/1-patterns/read-once-initialization-and-validation/6332.1.png b/content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/6332.1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/read-once-initialization-and-validation/6332.1.png
rename to content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/6332.1.png
diff --git a/content/NAVPatterns/1-patterns/read-once-initialization-and-validation/index.md b/content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/read-once-initialization-and-validation/index.md
rename to content/docs/NAVPatterns/patterns/read-once-initialization-and-validation/index.md
diff --git a/content/NAVPatterns/1-patterns/released-entity/index.md b/content/docs/NAVPatterns/patterns/released-entity/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/released-entity/index.md
rename to content/docs/NAVPatterns/patterns/released-entity/index.md
diff --git a/content/NAVPatterns/1-patterns/report-selection/index.md b/content/docs/NAVPatterns/patterns/report-selection/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/report-selection/index.md
rename to content/docs/NAVPatterns/patterns/report-selection/index.md
diff --git a/content/NAVPatterns/1-patterns/security/1-sensitive-data-encapsulation/Data-Encapsulation-_2D00_-figure-1.png b/content/docs/NAVPatterns/patterns/security/1-sensitive-data-encapsulation/Data-Encapsulation-_2D00_-figure-1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/1-sensitive-data-encapsulation/Data-Encapsulation-_2D00_-figure-1.png
rename to content/docs/NAVPatterns/patterns/security/1-sensitive-data-encapsulation/Data-Encapsulation-_2D00_-figure-1.png
diff --git a/content/NAVPatterns/1-patterns/security/1-sensitive-data-encapsulation/Logo-_2D00_-Protected-Data-Encapsulation.png b/content/docs/NAVPatterns/patterns/security/1-sensitive-data-encapsulation/Logo-_2D00_-Protected-Data-Encapsulation.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/1-sensitive-data-encapsulation/Logo-_2D00_-Protected-Data-Encapsulation.png
rename to content/docs/NAVPatterns/patterns/security/1-sensitive-data-encapsulation/Logo-_2D00_-Protected-Data-Encapsulation.png
diff --git a/content/NAVPatterns/1-patterns/security/1-sensitive-data-encapsulation/Multi-_2D00_-1-2.JPG b/content/docs/NAVPatterns/patterns/security/1-sensitive-data-encapsulation/Multi-_2D00_-1-2.JPG
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/1-sensitive-data-encapsulation/Multi-_2D00_-1-2.JPG
rename to content/docs/NAVPatterns/patterns/security/1-sensitive-data-encapsulation/Multi-_2D00_-1-2.JPG
diff --git a/content/NAVPatterns/1-patterns/security/1-sensitive-data-encapsulation/index.md b/content/docs/NAVPatterns/patterns/security/1-sensitive-data-encapsulation/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/1-sensitive-data-encapsulation/index.md
rename to content/docs/NAVPatterns/patterns/security/1-sensitive-data-encapsulation/index.md
diff --git a/content/NAVPatterns/1-patterns/security/2-data-encryption/Encryption-_2D00_-1.JPG b/content/docs/NAVPatterns/patterns/security/2-data-encryption/Encryption-_2D00_-1.JPG
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/2-data-encryption/Encryption-_2D00_-1.JPG
rename to content/docs/NAVPatterns/patterns/security/2-data-encryption/Encryption-_2D00_-1.JPG
diff --git a/content/NAVPatterns/1-patterns/security/2-data-encryption/Encryption-_2D00_-2.png b/content/docs/NAVPatterns/patterns/security/2-data-encryption/Encryption-_2D00_-2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/2-data-encryption/Encryption-_2D00_-2.png
rename to content/docs/NAVPatterns/patterns/security/2-data-encryption/Encryption-_2D00_-2.png
diff --git a/content/NAVPatterns/1-patterns/security/2-data-encryption/Encryption-_2D00_-3.png b/content/docs/NAVPatterns/patterns/security/2-data-encryption/Encryption-_2D00_-3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/2-data-encryption/Encryption-_2D00_-3.png
rename to content/docs/NAVPatterns/patterns/security/2-data-encryption/Encryption-_2D00_-3.png
diff --git a/content/NAVPatterns/1-patterns/security/2-data-encryption/Encryption-_2D00_-4.png b/content/docs/NAVPatterns/patterns/security/2-data-encryption/Encryption-_2D00_-4.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/2-data-encryption/Encryption-_2D00_-4.png
rename to content/docs/NAVPatterns/patterns/security/2-data-encryption/Encryption-_2D00_-4.png
diff --git a/content/NAVPatterns/1-patterns/security/2-data-encryption/Encryption-_2D00_-5.png b/content/docs/NAVPatterns/patterns/security/2-data-encryption/Encryption-_2D00_-5.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/2-data-encryption/Encryption-_2D00_-5.png
rename to content/docs/NAVPatterns/patterns/security/2-data-encryption/Encryption-_2D00_-5.png
diff --git a/content/NAVPatterns/1-patterns/security/2-data-encryption/Logo-_2D00_-Encryption.png b/content/docs/NAVPatterns/patterns/security/2-data-encryption/Logo-_2D00_-Encryption.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/2-data-encryption/Logo-_2D00_-Encryption.png
rename to content/docs/NAVPatterns/patterns/security/2-data-encryption/Logo-_2D00_-Encryption.png
diff --git a/content/NAVPatterns/1-patterns/security/2-data-encryption/Multi-_2D00_-1-2-3.JPG b/content/docs/NAVPatterns/patterns/security/2-data-encryption/Multi-_2D00_-1-2-3.JPG
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/2-data-encryption/Multi-_2D00_-1-2-3.JPG
rename to content/docs/NAVPatterns/patterns/security/2-data-encryption/Multi-_2D00_-1-2-3.JPG
diff --git a/content/NAVPatterns/1-patterns/security/2-data-encryption/index.md b/content/docs/NAVPatterns/patterns/security/2-data-encryption/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/2-data-encryption/index.md
rename to content/docs/NAVPatterns/patterns/security/2-data-encryption/index.md
diff --git a/content/NAVPatterns/1-patterns/security/3-single-point-of-access/Logo-_2D00_-Single-Point-of-Access.png b/content/docs/NAVPatterns/patterns/security/3-single-point-of-access/Logo-_2D00_-Single-Point-of-Access.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/3-single-point-of-access/Logo-_2D00_-Single-Point-of-Access.png
rename to content/docs/NAVPatterns/patterns/security/3-single-point-of-access/Logo-_2D00_-Single-Point-of-Access.png
diff --git a/content/NAVPatterns/1-patterns/security/3-single-point-of-access/Multi-_2D00_-1-2-3-4.JPG b/content/docs/NAVPatterns/patterns/security/3-single-point-of-access/Multi-_2D00_-1-2-3-4.JPG
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/3-single-point-of-access/Multi-_2D00_-1-2-3-4.JPG
rename to content/docs/NAVPatterns/patterns/security/3-single-point-of-access/Multi-_2D00_-1-2-3-4.JPG
diff --git a/content/NAVPatterns/1-patterns/security/3-single-point-of-access/index.md b/content/docs/NAVPatterns/patterns/security/3-single-point-of-access/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/3-single-point-of-access/index.md
rename to content/docs/NAVPatterns/patterns/security/3-single-point-of-access/index.md
diff --git a/content/NAVPatterns/1-patterns/security/4-masked-text/Logo-_2D00_-Masked-Text.png b/content/docs/NAVPatterns/patterns/security/4-masked-text/Logo-_2D00_-Masked-Text.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/4-masked-text/Logo-_2D00_-Masked-Text.png
rename to content/docs/NAVPatterns/patterns/security/4-masked-text/Logo-_2D00_-Masked-Text.png
diff --git a/content/NAVPatterns/1-patterns/security/4-masked-text/Masking-_2D00_-CRM-Connection-Setup-page.PNG b/content/docs/NAVPatterns/patterns/security/4-masked-text/Masking-_2D00_-CRM-Connection-Setup-page.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/4-masked-text/Masking-_2D00_-CRM-Connection-Setup-page.PNG
rename to content/docs/NAVPatterns/patterns/security/4-masked-text/Masking-_2D00_-CRM-Connection-Setup-page.PNG
diff --git a/content/NAVPatterns/1-patterns/security/4-masked-text/index.md b/content/docs/NAVPatterns/patterns/security/4-masked-text/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/4-masked-text/index.md
rename to content/docs/NAVPatterns/patterns/security/4-masked-text/index.md
diff --git a/content/NAVPatterns/1-patterns/security/5-ssl-in-nav/Logo-_2D00_-SSL.JPG b/content/docs/NAVPatterns/patterns/security/5-ssl-in-nav/Logo-_2D00_-SSL.JPG
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/5-ssl-in-nav/Logo-_2D00_-SSL.JPG
rename to content/docs/NAVPatterns/patterns/security/5-ssl-in-nav/Logo-_2D00_-SSL.JPG
diff --git a/content/NAVPatterns/1-patterns/security/5-ssl-in-nav/SSL-_2D00_-before-and-after.PNG b/content/docs/NAVPatterns/patterns/security/5-ssl-in-nav/SSL-_2D00_-before-and-after.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/5-ssl-in-nav/SSL-_2D00_-before-and-after.PNG
rename to content/docs/NAVPatterns/patterns/security/5-ssl-in-nav/SSL-_2D00_-before-and-after.PNG
diff --git a/content/NAVPatterns/1-patterns/security/5-ssl-in-nav/index.md b/content/docs/NAVPatterns/patterns/security/5-ssl-in-nav/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/5-ssl-in-nav/index.md
rename to content/docs/NAVPatterns/patterns/security/5-ssl-in-nav/index.md
diff --git a/content/NAVPatterns/1-patterns/security/_index.md b/content/docs/NAVPatterns/patterns/security/_index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/security/_index.md
rename to content/docs/NAVPatterns/patterns/security/_index.md
diff --git a/content/NAVPatterns/1-patterns/setup-specificity-fallback/0724.Printer-Selection.png b/content/docs/NAVPatterns/patterns/setup-specificity-fallback/0724.Printer-Selection.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/setup-specificity-fallback/0724.Printer-Selection.png
rename to content/docs/NAVPatterns/patterns/setup-specificity-fallback/0724.Printer-Selection.png
diff --git a/content/NAVPatterns/1-patterns/setup-specificity-fallback/2335.FindPrinter.png b/content/docs/NAVPatterns/patterns/setup-specificity-fallback/2335.FindPrinter.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/setup-specificity-fallback/2335.FindPrinter.png
rename to content/docs/NAVPatterns/patterns/setup-specificity-fallback/2335.FindPrinter.png
diff --git a/content/NAVPatterns/1-patterns/setup-specificity-fallback/index.md b/content/docs/NAVPatterns/patterns/setup-specificity-fallback/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/setup-specificity-fallback/index.md
rename to content/docs/NAVPatterns/patterns/setup-specificity-fallback/index.md
diff --git a/content/NAVPatterns/1-patterns/silent-file-upload-and-download/6428.Silent-File-download-design-pattern.png b/content/docs/NAVPatterns/patterns/silent-file-upload-and-download/6428.Silent-File-download-design-pattern.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/silent-file-upload-and-download/6428.Silent-File-download-design-pattern.png
rename to content/docs/NAVPatterns/patterns/silent-file-upload-and-download/6428.Silent-File-download-design-pattern.png
diff --git a/content/NAVPatterns/1-patterns/silent-file-upload-and-download/8688.Silent-file-upload-and-download-NAV-design-pattern.png b/content/docs/NAVPatterns/patterns/silent-file-upload-and-download/8688.Silent-file-upload-and-download-NAV-design-pattern.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/silent-file-upload-and-download/8688.Silent-file-upload-and-download-NAV-design-pattern.png
rename to content/docs/NAVPatterns/patterns/silent-file-upload-and-download/8688.Silent-file-upload-and-download-NAV-design-pattern.png
diff --git a/content/NAVPatterns/1-patterns/silent-file-upload-and-download/index.md b/content/docs/NAVPatterns/patterns/silent-file-upload-and-download/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/silent-file-upload-and-download/index.md
rename to content/docs/NAVPatterns/patterns/silent-file-upload-and-download/index.md
diff --git a/content/NAVPatterns/1-patterns/singleton/0535.Singleton.png b/content/docs/NAVPatterns/patterns/singleton/0535.Singleton.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/0535.Singleton.png
rename to content/docs/NAVPatterns/patterns/singleton/0535.Singleton.png
diff --git a/content/NAVPatterns/1-patterns/singleton/_index.md b/content/docs/NAVPatterns/patterns/singleton/_index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/_index.md
rename to content/docs/NAVPatterns/patterns/singleton/_index.md
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-codeunit/2313.Singleton-Codeunit-_2D00_-CSIDE-SingleInstance-property.PNG b/content/docs/NAVPatterns/patterns/singleton/singleton-codeunit/2313.Singleton-Codeunit-_2D00_-CSIDE-SingleInstance-property.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-codeunit/2313.Singleton-Codeunit-_2D00_-CSIDE-SingleInstance-property.PNG
rename to content/docs/NAVPatterns/patterns/singleton/singleton-codeunit/2313.Singleton-Codeunit-_2D00_-CSIDE-SingleInstance-property.PNG
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-codeunit/Singleton-Codeunit-_2D00_-example-_2D00_-bad.PNG b/content/docs/NAVPatterns/patterns/singleton/singleton-codeunit/Singleton-Codeunit-_2D00_-example-_2D00_-bad.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-codeunit/Singleton-Codeunit-_2D00_-example-_2D00_-bad.PNG
rename to content/docs/NAVPatterns/patterns/singleton/singleton-codeunit/Singleton-Codeunit-_2D00_-example-_2D00_-bad.PNG
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-codeunit/Singleton-Codeunit-_2D00_-example-_2D00_-good.PNG b/content/docs/NAVPatterns/patterns/singleton/singleton-codeunit/Singleton-Codeunit-_2D00_-example-_2D00_-good.PNG
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-codeunit/Singleton-Codeunit-_2D00_-example-_2D00_-good.PNG
rename to content/docs/NAVPatterns/patterns/singleton/singleton-codeunit/Singleton-Codeunit-_2D00_-example-_2D00_-good.PNG
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-codeunit/Singleton-Codeunit.png b/content/docs/NAVPatterns/patterns/singleton/singleton-codeunit/Singleton-Codeunit.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-codeunit/Singleton-Codeunit.png
rename to content/docs/NAVPatterns/patterns/singleton/singleton-codeunit/Singleton-Codeunit.png
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-codeunit/index.md b/content/docs/NAVPatterns/patterns/singleton/singleton-codeunit/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-codeunit/index.md
rename to content/docs/NAVPatterns/patterns/singleton/singleton-codeunit/index.md
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-table/5554.Singleton-Table.png b/content/docs/NAVPatterns/patterns/singleton/singleton-table/5554.Singleton-Table.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-table/5554.Singleton-Table.png
rename to content/docs/NAVPatterns/patterns/singleton/singleton-table/5554.Singleton-Table.png
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-table/_index.md b/content/docs/NAVPatterns/patterns/singleton/singleton-table/_index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-table/_index.md
rename to content/docs/NAVPatterns/patterns/singleton/singleton-table/_index.md
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-table/cue-table/Cue-Table-Figure-1.JPG b/content/docs/NAVPatterns/patterns/singleton/singleton-table/cue-table/Cue-Table-Figure-1.JPG
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-table/cue-table/Cue-Table-Figure-1.JPG
rename to content/docs/NAVPatterns/patterns/singleton/singleton-table/cue-table/Cue-Table-Figure-1.JPG
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-table/cue-table/Cue-Table.png b/content/docs/NAVPatterns/patterns/singleton/singleton-table/cue-table/Cue-Table.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-table/cue-table/Cue-Table.png
rename to content/docs/NAVPatterns/patterns/singleton/singleton-table/cue-table/Cue-Table.png
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-table/cue-table/index.md b/content/docs/NAVPatterns/patterns/singleton/singleton-table/cue-table/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-table/cue-table/index.md
rename to content/docs/NAVPatterns/patterns/singleton/singleton-table/cue-table/index.md
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-table/setup-table/6675.NAVSetupTablePattern2.png b/content/docs/NAVPatterns/patterns/singleton/singleton-table/setup-table/6675.NAVSetupTablePattern2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-table/setup-table/6675.NAVSetupTablePattern2.png
rename to content/docs/NAVPatterns/patterns/singleton/singleton-table/setup-table/6675.NAVSetupTablePattern2.png
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-table/setup-table/Setup-Table.png b/content/docs/NAVPatterns/patterns/singleton/singleton-table/setup-table/Setup-Table.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-table/setup-table/Setup-Table.png
rename to content/docs/NAVPatterns/patterns/singleton/singleton-table/setup-table/Setup-Table.png
diff --git a/content/NAVPatterns/1-patterns/singleton/singleton-table/setup-table/index.md b/content/docs/NAVPatterns/patterns/singleton/singleton-table/setup-table/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/singleton/singleton-table/setup-table/index.md
rename to content/docs/NAVPatterns/patterns/singleton/singleton-table/setup-table/index.md
diff --git a/content/NAVPatterns/1-patterns/standard-journal/0143.Standard-Document-Pattern-2.png b/content/docs/NAVPatterns/patterns/standard-journal/0143.Standard-Document-Pattern-2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/standard-journal/0143.Standard-Document-Pattern-2.png
rename to content/docs/NAVPatterns/patterns/standard-journal/0143.Standard-Document-Pattern-2.png
diff --git a/content/NAVPatterns/1-patterns/standard-journal/0456.Standard-Journal.png b/content/docs/NAVPatterns/patterns/standard-journal/0456.Standard-Journal.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/standard-journal/0456.Standard-Journal.png
rename to content/docs/NAVPatterns/patterns/standard-journal/0456.Standard-Journal.png
diff --git a/content/NAVPatterns/1-patterns/standard-journal/0820.Standard-Document-Pattern-1.png b/content/docs/NAVPatterns/patterns/standard-journal/0820.Standard-Document-Pattern-1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/standard-journal/0820.Standard-Document-Pattern-1.png
rename to content/docs/NAVPatterns/patterns/standard-journal/0820.Standard-Document-Pattern-1.png
diff --git a/content/NAVPatterns/1-patterns/standard-journal/5327.Standard-Document-Pattern-3.png b/content/docs/NAVPatterns/patterns/standard-journal/5327.Standard-Document-Pattern-3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/standard-journal/5327.Standard-Document-Pattern-3.png
rename to content/docs/NAVPatterns/patterns/standard-journal/5327.Standard-Document-Pattern-3.png
diff --git a/content/NAVPatterns/1-patterns/standard-journal/index.md b/content/docs/NAVPatterns/patterns/standard-journal/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/standard-journal/index.md
rename to content/docs/NAVPatterns/patterns/standard-journal/index.md
diff --git a/content/NAVPatterns/1-patterns/temporary-dataset-report/0250.Temporary-Dataset-Report-1.png b/content/docs/NAVPatterns/patterns/temporary-dataset-report/0250.Temporary-Dataset-Report-1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/temporary-dataset-report/0250.Temporary-Dataset-Report-1.png
rename to content/docs/NAVPatterns/patterns/temporary-dataset-report/0250.Temporary-Dataset-Report-1.png
diff --git a/content/NAVPatterns/1-patterns/temporary-dataset-report/2376.Temporary-Dataset-Report-2.png b/content/docs/NAVPatterns/patterns/temporary-dataset-report/2376.Temporary-Dataset-Report-2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/temporary-dataset-report/2376.Temporary-Dataset-Report-2.png
rename to content/docs/NAVPatterns/patterns/temporary-dataset-report/2376.Temporary-Dataset-Report-2.png
diff --git a/content/NAVPatterns/1-patterns/temporary-dataset-report/4010.Temporary-Dataset-Report-6.jpg b/content/docs/NAVPatterns/patterns/temporary-dataset-report/4010.Temporary-Dataset-Report-6.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/temporary-dataset-report/4010.Temporary-Dataset-Report-6.jpg
rename to content/docs/NAVPatterns/patterns/temporary-dataset-report/4010.Temporary-Dataset-Report-6.jpg
diff --git a/content/NAVPatterns/1-patterns/temporary-dataset-report/4118.Temporary-Dataset-Report-5.jpg b/content/docs/NAVPatterns/patterns/temporary-dataset-report/4118.Temporary-Dataset-Report-5.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/temporary-dataset-report/4118.Temporary-Dataset-Report-5.jpg
rename to content/docs/NAVPatterns/patterns/temporary-dataset-report/4118.Temporary-Dataset-Report-5.jpg
diff --git a/content/NAVPatterns/1-patterns/temporary-dataset-report/6523.Temporary-Dataset-Report-4.jpg b/content/docs/NAVPatterns/patterns/temporary-dataset-report/6523.Temporary-Dataset-Report-4.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/temporary-dataset-report/6523.Temporary-Dataset-Report-4.jpg
rename to content/docs/NAVPatterns/patterns/temporary-dataset-report/6523.Temporary-Dataset-Report-4.jpg
diff --git a/content/NAVPatterns/1-patterns/temporary-dataset-report/7607.Temporary-Dataset-Report-3.png b/content/docs/NAVPatterns/patterns/temporary-dataset-report/7607.Temporary-Dataset-Report-3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/temporary-dataset-report/7607.Temporary-Dataset-Report-3.png
rename to content/docs/NAVPatterns/patterns/temporary-dataset-report/7607.Temporary-Dataset-Report-3.png
diff --git a/content/NAVPatterns/1-patterns/temporary-dataset-report/index.md b/content/docs/NAVPatterns/patterns/temporary-dataset-report/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/temporary-dataset-report/index.md
rename to content/docs/NAVPatterns/patterns/temporary-dataset-report/index.md
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/4300.Fig-1.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/4300.Fig-1.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/4300.Fig-1.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/4300.Fig-1.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/6305.Fig-4.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/6305.Fig-4.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/6305.Fig-4.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/6305.Fig-4.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-10.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-10.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-10.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-10.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-11.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-11.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-11.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-11.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-12.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-12.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-12.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-12.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-2.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-2.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-2.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-2.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-3.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-3.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-3.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-3.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-5.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-5.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-5.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-5.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-6.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-6.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-6.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-6.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-7.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-7.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-7.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-7.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-8.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-8.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-8.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-8.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-9.jpg b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-9.jpg
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-9.jpg
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/Fig-9.jpg
diff --git a/content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/index.md b/content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/totals-and-discounts-on-subpages-sales-and-purchases/index.md
rename to content/docs/NAVPatterns/patterns/totals-and-discounts-on-subpages-sales-and-purchases/index.md
diff --git a/content/NAVPatterns/1-patterns/transfer-custom-fields/index.md b/content/docs/NAVPatterns/patterns/transfer-custom-fields/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/transfer-custom-fields/index.md
rename to content/docs/NAVPatterns/patterns/transfer-custom-fields/index.md
diff --git a/content/NAVPatterns/1-patterns/variant-facade/Picture2.png b/content/docs/NAVPatterns/patterns/variant-facade/Picture2.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/variant-facade/Picture2.png
rename to content/docs/NAVPatterns/patterns/variant-facade/Picture2.png
diff --git a/content/NAVPatterns/1-patterns/variant-facade/Picture3.png b/content/docs/NAVPatterns/patterns/variant-facade/Picture3.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/variant-facade/Picture3.png
rename to content/docs/NAVPatterns/patterns/variant-facade/Picture3.png
diff --git a/content/NAVPatterns/1-patterns/variant-facade/Picture4.png b/content/docs/NAVPatterns/patterns/variant-facade/Picture4.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/variant-facade/Picture4.png
rename to content/docs/NAVPatterns/patterns/variant-facade/Picture4.png
diff --git a/content/NAVPatterns/1-patterns/variant-facade/Picture5.png b/content/docs/NAVPatterns/patterns/variant-facade/Picture5.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/variant-facade/Picture5.png
rename to content/docs/NAVPatterns/patterns/variant-facade/Picture5.png
diff --git a/content/NAVPatterns/1-patterns/variant-facade/Picture6.png b/content/docs/NAVPatterns/patterns/variant-facade/Picture6.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/variant-facade/Picture6.png
rename to content/docs/NAVPatterns/patterns/variant-facade/Picture6.png
diff --git a/content/NAVPatterns/1-patterns/variant-facade/Picture7.png b/content/docs/NAVPatterns/patterns/variant-facade/Picture7.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/variant-facade/Picture7.png
rename to content/docs/NAVPatterns/patterns/variant-facade/Picture7.png
diff --git a/content/NAVPatterns/1-patterns/variant-facade/Picture8.png b/content/docs/NAVPatterns/patterns/variant-facade/Picture8.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/variant-facade/Picture8.png
rename to content/docs/NAVPatterns/patterns/variant-facade/Picture8.png
diff --git a/content/NAVPatterns/1-patterns/variant-facade/index.md b/content/docs/NAVPatterns/patterns/variant-facade/index.md
similarity index 100%
rename from content/NAVPatterns/1-patterns/variant-facade/index.md
rename to content/docs/NAVPatterns/patterns/variant-facade/index.md
diff --git a/content/NAVPatterns/1-patterns/variant-facade/picture1.png b/content/docs/NAVPatterns/patterns/variant-facade/picture1.png
similarity index 100%
rename from content/NAVPatterns/1-patterns/variant-facade/picture1.png
rename to content/docs/NAVPatterns/patterns/variant-facade/picture1.png
diff --git a/content/NAVPatterns/related-links/index.md b/content/docs/NAVPatterns/related-links/index.md
similarity index 100%
rename from content/NAVPatterns/related-links/index.md
rename to content/docs/NAVPatterns/related-links/index.md
diff --git a/content/docs/_index.md b/content/docs/_index.md
new file mode 100644
index 00000000..4adca734
--- /dev/null
+++ b/content/docs/_index.md
@@ -0,0 +1,43 @@
+---
+title: "AL Guidelines"
+linkTitle: Docs
+weight: 20
+description: >
+ Patterns and Best Practices for AL Develolpment
+---
+
+## Business Central Design Patterns & Best Practices
+
+This site is meant to house some of the community's knowledge about Microsoft Dynamics 365 Business Central AL Development best practices, particularly around hosting Design Patterns.
+
+### What are Design Patterns?
+
+To quote the original NAV Team blog post about the NAV Design Patterns:
+
+> A team of people interested in NAV application design has come together to work on naming and surfacing design solutions to common NAV business needs. When those solutions are generic enough to be applied in various places of the NAV application, with slight variations on implementation but mainly respecting the same base concepts, we can describe them as NAV design patterns.
+
+A design pattern is a repeatable template of how to solve a common development challenge.
+
+### What are Development Best Practices?
+
+(more text coming soon)
+
+### History of "NAV Design Patterns"
+
+In 2013, Microsoft NAV Dev Team and prominent members of the community collaborated on a Community and Microsoft collection of commonly needed / used Design Patterns.
+
+For some history on this, waldo's posts [Code is Poetry](https://www.waldo.be/2013/06/14/code-is-poetry/) and [Design is Philosophy](https://www.waldo.be/2013/08/28/design-is-philosophy-2/) are a great read.
+
+
+#### Behind This Project
+
+This project is a Microsoft Business Central Community initiative with support from the Microsoft Business Central team. The founding community members are
+* waldo ([Twitter](https://twitter.com/waldo1001), [Blog](https://www.waldo.be), [GitHub](https://github.com/waldo1001))
+* Arend-Jan Kauffmann ([Twitter](https://twitter.com/ajkauffmann), [Blog](https://www.kauffmann.nl/), [GitHub](https://github.com/ajkauffmann))
+* Henrik Helgesen ([Twitter](https://twitter.com/TheDoubleH), [Blog](https://thedoubleh.dev/), [GitHub](https://github.com/thedoubleh))
+* Jeremy Vyska ([Twitter](https://twitter.com/JeremyVyska),[Blog](https://jeremy.vyska.info/articles), [GitHub](https://github.com/JeremyVyska))
+
+#### Contributing
+
+To find out more about contributing, read up here:
+[Contributing](/contributing/)
\ No newline at end of file
diff --git a/content/docs/patterns/_index.md b/content/docs/patterns/_index.md
new file mode 100644
index 00000000..b7813e2b
--- /dev/null
+++ b/content/docs/patterns/_index.md
@@ -0,0 +1,13 @@
+---
+title: "Patterns"
+weight: 2
+no_list: true
+description: >
+ AL Code Design Patterns
+---
+
+# Business Central Design Patterns
+
+## Why are Design Patterns important?
+
+Blah Blah Blah
\ No newline at end of file
diff --git a/content/BCPatterns/event-bridge-pattern/index.md b/content/docs/patterns/event-bridge-pattern/index.md
similarity index 95%
rename from content/BCPatterns/event-bridge-pattern/index.md
rename to content/docs/patterns/event-bridge-pattern/index.md
index 0d2bf69c..ca46e5b2 100644
--- a/content/BCPatterns/event-bridge-pattern/index.md
+++ b/content/docs/patterns/event-bridge-pattern/index.md
@@ -1,9 +1,10 @@
-+++
-title = "Event Bridge Pattern"
-weight = 1180
-+++
+---
+title: "Event Bridge"
+tags: ["Interface"]
+categories: ["Pattern"]
+---
-<_Created by waldo & Arend-Jan Kauffmann, Described by waldo_\>
+_Created by waldo & Arend-Jan Kauffmann, Described by waldo_
## Abstract
diff --git a/content/BCPatterns/facade-pattern/diagram.jpg b/content/docs/patterns/facade-pattern/diagram.jpg
similarity index 100%
rename from content/BCPatterns/facade-pattern/diagram.jpg
rename to content/docs/patterns/facade-pattern/diagram.jpg
diff --git a/content/BCPatterns/facade-pattern/index.md b/content/docs/patterns/facade-pattern/index.md
similarity index 99%
rename from content/BCPatterns/facade-pattern/index.md
rename to content/docs/patterns/facade-pattern/index.md
index d355917a..ef138707 100644
--- a/content/BCPatterns/facade-pattern/index.md
+++ b/content/docs/patterns/facade-pattern/index.md
@@ -1,7 +1,8 @@
-+++
-title = "Facade Pattern"
-weight = 1180
-+++
+---
+title: "Façade"
+tags: [""]
+categories: ["Pattern"]
+---
_Created by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (Gang of Four), Described by Jesper Schulz-Wedde (Microsoft)_
diff --git a/content/BCPatterns/generic-method-pattern/index.md b/content/docs/patterns/generic-method-pattern/index.md
similarity index 99%
rename from content/BCPatterns/generic-method-pattern/index.md
rename to content/docs/patterns/generic-method-pattern/index.md
index ddb1a03c..13083941 100644
--- a/content/BCPatterns/generic-method-pattern/index.md
+++ b/content/docs/patterns/generic-method-pattern/index.md
@@ -1,7 +1,8 @@
-+++
-title = "Generic Method Pattern"
-weight = 1180
-+++
+---
+title: "Generic Method"
+tags: [""]
+categories: ["Pattern"]
+---
_Created by Gary Winter (Cloud Ready Software), Described by waldo (iFacto Business Solutions | Dynex)_
diff --git a/content/search.md b/content/search.md
new file mode 100644
index 00000000..394feea5
--- /dev/null
+++ b/content/search.md
@@ -0,0 +1,4 @@
+---
+title: Search Results
+layout: search
+---
diff --git a/content/welcome/_index.md b/content/welcome/_index.md
deleted file mode 100644
index 301affd8..00000000
--- a/content/welcome/_index.md
+++ /dev/null
@@ -1,12 +0,0 @@
-+++
-chapter = true
-pre = " "
-title = "Welcome"
-weight = 5
-+++
-
-### Chapter X
-
-# Some Chapter title
-
-Lorem Ipsum.
\ No newline at end of file
diff --git a/layouts/partials/navbar.html b/layouts/partials/navbar.html
new file mode 100644
index 00000000..0c5155c5
--- /dev/null
+++ b/layouts/partials/navbar.html
@@ -0,0 +1,36 @@
+{{ $cover := and (.HasShortcode "blocks/cover") (not .Site.Params.ui.navbar_translucent_over_cover_disable) }}
+
+
+
+ {{ .Site.Title }}
+
+
+
+ {{ $p := . }}
+ {{ range .Site.Menus.main }}
+
+ {{ $active := or ($p.IsMenuCurrent "main" .) ($p.HasMenuCurrent "main" .) }}
+ {{ with .Page }}
+ {{ $active = or $active ( $.IsDescendant .) }}
+ {{ end }}
+ {{ $pre := .Pre }}
+ {{ $post := .Post }}
+ {{ $url := urls.Parse .URL }}
+ {{ $baseurl := urls.Parse $.Site.Params.Baseurl }}
+ {{ with .Pre}}{{ $pre }}{{ end }}{{ .Name }} {{ with .Post}}{{ $post }}{{ end }}
+
+ {{ end }}
+ {{ if .Site.Params.versions }}
+
+ {{ partial "navbar-version-selector.html" . }}
+
+ {{ end }}
+ {{ if (gt (len .Site.Home.Translations) 0) }}
+
+ {{ partial "navbar-lang-selector.html" . }}
+
+ {{ end }}
+
+
+ {{ partial "search-input.html" . }}
+
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 00000000..b69276a8
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,1529 @@
+{
+ "name": "tech-doc-hugo",
+ "version": "0.0.1",
+ "lockfileVersion": 2,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "tech-doc-hugo",
+ "version": "0.0.1",
+ "license": "ISC",
+ "devDependencies": {
+ "autoprefixer": "^10.4.2",
+ "postcss-cli": "^9.1.0"
+ }
+ },
+ "node_modules/@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "dev": true,
+ "dependencies": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "dev": true,
+ "dependencies": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/anymatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
+ "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
+ "dev": true,
+ "dependencies": {
+ "normalize-path": "^3.0.0",
+ "picomatch": "^2.0.4"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/array-union": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/array-union/-/array-union-3.0.1.tgz",
+ "integrity": "sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/autoprefixer": {
+ "version": "10.4.2",
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.2.tgz",
+ "integrity": "sha512-9fOPpHKuDW1w/0EKfRmVnxTDt8166MAnLI3mgZ1JCnhNtYWxcJ6Ud5CO/AVOZi/AvFa8DY9RTy3h3+tFBlrrdQ==",
+ "dev": true,
+ "dependencies": {
+ "browserslist": "^4.19.1",
+ "caniuse-lite": "^1.0.30001297",
+ "fraction.js": "^4.1.2",
+ "normalize-range": "^0.1.2",
+ "picocolors": "^1.0.0",
+ "postcss-value-parser": "^4.2.0"
+ },
+ "bin": {
+ "autoprefixer": "bin/autoprefixer"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ "peerDependencies": {
+ "postcss": "^8.1.0"
+ }
+ },
+ "node_modules/binary-extensions": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
+ "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/braces": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
+ "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "dev": true,
+ "dependencies": {
+ "fill-range": "^7.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/browserslist": {
+ "version": "4.19.3",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.3.tgz",
+ "integrity": "sha512-XK3X4xtKJ+Txj8G5c30B4gsm71s69lqXlkYui4s6EkKxuv49qjYlY6oVd+IFJ73d4YymtM3+djvvt/R/iJwwDg==",
+ "dev": true,
+ "dependencies": {
+ "caniuse-lite": "^1.0.30001312",
+ "electron-to-chromium": "^1.4.71",
+ "escalade": "^3.1.1",
+ "node-releases": "^2.0.2",
+ "picocolors": "^1.0.0"
+ },
+ "bin": {
+ "browserslist": "cli.js"
+ },
+ "engines": {
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ }
+ },
+ "node_modules/caniuse-lite": {
+ "version": "1.0.30001312",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz",
+ "integrity": "sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==",
+ "dev": true,
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ }
+ },
+ "node_modules/chokidar": {
+ "version": "3.5.3",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
+ "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://paulmillr.com/funding/"
+ }
+ ],
+ "dependencies": {
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.2",
+ "glob-parent": "~5.1.2",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.6.0"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/cliui": {
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
+ "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
+ "dev": true,
+ "dependencies": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.0",
+ "wrap-ansi": "^7.0.0"
+ }
+ },
+ "node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/dependency-graph": {
+ "version": "0.11.0",
+ "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz",
+ "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.6.0"
+ }
+ },
+ "node_modules/dir-glob": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
+ "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
+ "dev": true,
+ "dependencies": {
+ "path-type": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/electron-to-chromium": {
+ "version": "1.4.71",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz",
+ "integrity": "sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw==",
+ "dev": true
+ },
+ "node_modules/emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
+ "dev": true
+ },
+ "node_modules/escalade": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/fast-glob": {
+ "version": "3.2.11",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz",
+ "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==",
+ "dev": true,
+ "dependencies": {
+ "@nodelib/fs.stat": "^2.0.2",
+ "@nodelib/fs.walk": "^1.2.3",
+ "glob-parent": "^5.1.2",
+ "merge2": "^1.3.0",
+ "micromatch": "^4.0.4"
+ },
+ "engines": {
+ "node": ">=8.6.0"
+ }
+ },
+ "node_modules/fastq": {
+ "version": "1.13.0",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
+ "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==",
+ "dev": true,
+ "dependencies": {
+ "reusify": "^1.0.4"
+ }
+ },
+ "node_modules/fill-range": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
+ "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "dev": true,
+ "dependencies": {
+ "to-regex-range": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/fraction.js": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.1.3.tgz",
+ "integrity": "sha512-pUHWWt6vHzZZiQJcM6S/0PXfS+g6FM4BF5rj9wZyreivhQPdsh5PpE25VtSNxq80wHS5RfY51Ii+8Z0Zl/pmzg==",
+ "dev": true,
+ "engines": {
+ "node": "*"
+ },
+ "funding": {
+ "type": "patreon",
+ "url": "https://www.patreon.com/infusion"
+ }
+ },
+ "node_modules/fs-extra": {
+ "version": "10.0.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz",
+ "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==",
+ "dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
+ "dev": true,
+ "hasInstallScript": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
+ "dev": true,
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
+ },
+ "node_modules/get-stdin": {
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz",
+ "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/globby": {
+ "version": "12.2.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-12.2.0.tgz",
+ "integrity": "sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA==",
+ "dev": true,
+ "dependencies": {
+ "array-union": "^3.0.1",
+ "dir-glob": "^3.0.1",
+ "fast-glob": "^3.2.7",
+ "ignore": "^5.1.9",
+ "merge2": "^1.4.1",
+ "slash": "^4.0.0"
+ },
+ "engines": {
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/graceful-fs": {
+ "version": "4.2.9",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz",
+ "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==",
+ "dev": true
+ },
+ "node_modules/ignore": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz",
+ "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 4"
+ }
+ },
+ "node_modules/is-binary-path": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
+ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
+ "dev": true,
+ "dependencies": {
+ "binary-extensions": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
+ "dev": true,
+ "dependencies": {
+ "is-extglob": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.12.0"
+ }
+ },
+ "node_modules/jsonfile": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+ "dev": true,
+ "dependencies": {
+ "universalify": "^2.0.0"
+ },
+ "optionalDependencies": {
+ "graceful-fs": "^4.1.6"
+ }
+ },
+ "node_modules/lilconfig": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.4.tgz",
+ "integrity": "sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/merge2": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/micromatch": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
+ "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
+ "dev": true,
+ "dependencies": {
+ "braces": "^3.0.1",
+ "picomatch": "^2.2.3"
+ },
+ "engines": {
+ "node": ">=8.6"
+ }
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz",
+ "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==",
+ "dev": true,
+ "peer": true,
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/node-releases": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz",
+ "integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==",
+ "dev": true
+ },
+ "node_modules/normalize-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/normalize-range": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
+ "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/path-type": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
+ "dev": true
+ },
+ "node_modules/picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+ "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/postcss": {
+ "version": "8.4.6",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz",
+ "integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==",
+ "dev": true,
+ "peer": true,
+ "dependencies": {
+ "nanoid": "^3.2.0",
+ "picocolors": "^1.0.0",
+ "source-map-js": "^1.0.2"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ }
+ },
+ "node_modules/postcss-cli": {
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-9.1.0.tgz",
+ "integrity": "sha512-zvDN2ADbWfza42sAnj+O2uUWyL0eRL1V+6giM2vi4SqTR3gTYy8XzcpfwccayF2szcUif0HMmXiEaDv9iEhcpw==",
+ "dev": true,
+ "dependencies": {
+ "chokidar": "^3.3.0",
+ "dependency-graph": "^0.11.0",
+ "fs-extra": "^10.0.0",
+ "get-stdin": "^9.0.0",
+ "globby": "^12.0.0",
+ "picocolors": "^1.0.0",
+ "postcss-load-config": "^3.0.0",
+ "postcss-reporter": "^7.0.0",
+ "pretty-hrtime": "^1.0.3",
+ "read-cache": "^1.0.0",
+ "slash": "^4.0.0",
+ "yargs": "^17.0.0"
+ },
+ "bin": {
+ "postcss": "index.js"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "peerDependencies": {
+ "postcss": "^8.0.0"
+ }
+ },
+ "node_modules/postcss-load-config": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.3.tgz",
+ "integrity": "sha512-5EYgaM9auHGtO//ljHH+v/aC/TQ5LHXtL7bQajNAUBKUVKiYE8rYpFms7+V26D9FncaGe2zwCoPQsFKb5zF/Hw==",
+ "dev": true,
+ "dependencies": {
+ "lilconfig": "^2.0.4",
+ "yaml": "^1.10.2"
+ },
+ "engines": {
+ "node": ">= 10"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ "peerDependencies": {
+ "ts-node": ">=9.0.0"
+ },
+ "peerDependenciesMeta": {
+ "ts-node": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/postcss-reporter": {
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-7.0.5.tgz",
+ "integrity": "sha512-glWg7VZBilooZGOFPhN9msJ3FQs19Hie7l5a/eE6WglzYqVeH3ong3ShFcp9kDWJT1g2Y/wd59cocf9XxBtkWA==",
+ "dev": true,
+ "dependencies": {
+ "picocolors": "^1.0.0",
+ "thenby": "^1.3.4"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ "peerDependencies": {
+ "postcss": "^8.1.0"
+ }
+ },
+ "node_modules/postcss-value-parser": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
+ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
+ "dev": true
+ },
+ "node_modules/pretty-hrtime": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz",
+ "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/queue-microtask": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "node_modules/read-cache": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
+ "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=",
+ "dev": true,
+ "dependencies": {
+ "pify": "^2.3.0"
+ }
+ },
+ "node_modules/readdirp": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
+ "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
+ "dev": true,
+ "dependencies": {
+ "picomatch": "^2.2.1"
+ },
+ "engines": {
+ "node": ">=8.10.0"
+ }
+ },
+ "node_modules/require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/reusify": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
+ "dev": true,
+ "engines": {
+ "iojs": ">=1.0.0",
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/run-parallel": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "dependencies": {
+ "queue-microtask": "^1.2.2"
+ }
+ },
+ "node_modules/slash": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
+ "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/source-map-js": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+ "dev": true,
+ "peer": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/string-width": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "dev": true,
+ "dependencies": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/thenby": {
+ "version": "1.3.4",
+ "resolved": "https://registry.npmjs.org/thenby/-/thenby-1.3.4.tgz",
+ "integrity": "sha512-89Gi5raiWA3QZ4b2ePcEwswC3me9JIg+ToSgtE0JWeCynLnLxNr/f9G+xfo9K+Oj4AFdom8YNJjibIARTJmapQ==",
+ "dev": true
+ },
+ "node_modules/to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "dev": true,
+ "dependencies": {
+ "is-number": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=8.0"
+ }
+ },
+ "node_modules/universalify": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz",
+ "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 10.0.0"
+ }
+ },
+ "node_modules/wrap-ansi": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+ }
+ },
+ "node_modules/y18n": {
+ "version": "5.0.8",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
+ "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/yaml": {
+ "version": "1.10.2",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/yargs": {
+ "version": "17.3.1",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.3.1.tgz",
+ "integrity": "sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==",
+ "dev": true,
+ "dependencies": {
+ "cliui": "^7.0.2",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
+ "require-directory": "^2.1.1",
+ "string-width": "^4.2.3",
+ "y18n": "^5.0.5",
+ "yargs-parser": "^21.0.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/yargs-parser": {
+ "version": "21.0.0",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.0.tgz",
+ "integrity": "sha512-z9kApYUOCwoeZ78rfRYYWdiU/iNL6mwwYlkkZfJoyMR1xps+NEBX5X7XmRpxkZHhXJ6+Ey00IwKxBBSW9FIjyA==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ }
+ }
+ },
+ "dependencies": {
+ "@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "dev": true,
+ "requires": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ }
+ },
+ "@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "dev": true
+ },
+ "@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "dev": true,
+ "requires": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ }
+ },
+ "ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "dev": true
+ },
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "anymatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
+ "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
+ "dev": true,
+ "requires": {
+ "normalize-path": "^3.0.0",
+ "picomatch": "^2.0.4"
+ }
+ },
+ "array-union": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/array-union/-/array-union-3.0.1.tgz",
+ "integrity": "sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw==",
+ "dev": true
+ },
+ "autoprefixer": {
+ "version": "10.4.2",
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.2.tgz",
+ "integrity": "sha512-9fOPpHKuDW1w/0EKfRmVnxTDt8166MAnLI3mgZ1JCnhNtYWxcJ6Ud5CO/AVOZi/AvFa8DY9RTy3h3+tFBlrrdQ==",
+ "dev": true,
+ "requires": {
+ "browserslist": "^4.19.1",
+ "caniuse-lite": "^1.0.30001297",
+ "fraction.js": "^4.1.2",
+ "normalize-range": "^0.1.2",
+ "picocolors": "^1.0.0",
+ "postcss-value-parser": "^4.2.0"
+ }
+ },
+ "binary-extensions": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
+ "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
+ "dev": true
+ },
+ "braces": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
+ "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "dev": true,
+ "requires": {
+ "fill-range": "^7.0.1"
+ }
+ },
+ "browserslist": {
+ "version": "4.19.3",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.3.tgz",
+ "integrity": "sha512-XK3X4xtKJ+Txj8G5c30B4gsm71s69lqXlkYui4s6EkKxuv49qjYlY6oVd+IFJ73d4YymtM3+djvvt/R/iJwwDg==",
+ "dev": true,
+ "requires": {
+ "caniuse-lite": "^1.0.30001312",
+ "electron-to-chromium": "^1.4.71",
+ "escalade": "^3.1.1",
+ "node-releases": "^2.0.2",
+ "picocolors": "^1.0.0"
+ }
+ },
+ "caniuse-lite": {
+ "version": "1.0.30001312",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz",
+ "integrity": "sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==",
+ "dev": true
+ },
+ "chokidar": {
+ "version": "3.5.3",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
+ "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
+ "dev": true,
+ "requires": {
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.2",
+ "fsevents": "~2.3.2",
+ "glob-parent": "~5.1.2",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.6.0"
+ }
+ },
+ "cliui": {
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
+ "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
+ "dev": true,
+ "requires": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.0",
+ "wrap-ansi": "^7.0.0"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "dependency-graph": {
+ "version": "0.11.0",
+ "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz",
+ "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==",
+ "dev": true
+ },
+ "dir-glob": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
+ "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
+ "dev": true,
+ "requires": {
+ "path-type": "^4.0.0"
+ }
+ },
+ "electron-to-chromium": {
+ "version": "1.4.71",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz",
+ "integrity": "sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw==",
+ "dev": true
+ },
+ "emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
+ "dev": true
+ },
+ "escalade": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
+ "dev": true
+ },
+ "fast-glob": {
+ "version": "3.2.11",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz",
+ "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==",
+ "dev": true,
+ "requires": {
+ "@nodelib/fs.stat": "^2.0.2",
+ "@nodelib/fs.walk": "^1.2.3",
+ "glob-parent": "^5.1.2",
+ "merge2": "^1.3.0",
+ "micromatch": "^4.0.4"
+ }
+ },
+ "fastq": {
+ "version": "1.13.0",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
+ "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==",
+ "dev": true,
+ "requires": {
+ "reusify": "^1.0.4"
+ }
+ },
+ "fill-range": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
+ "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "dev": true,
+ "requires": {
+ "to-regex-range": "^5.0.1"
+ }
+ },
+ "fraction.js": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.1.3.tgz",
+ "integrity": "sha512-pUHWWt6vHzZZiQJcM6S/0PXfS+g6FM4BF5rj9wZyreivhQPdsh5PpE25VtSNxq80wHS5RfY51Ii+8Z0Zl/pmzg==",
+ "dev": true
+ },
+ "fs-extra": {
+ "version": "10.0.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz",
+ "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
+ }
+ },
+ "fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
+ "dev": true,
+ "optional": true
+ },
+ "get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
+ "dev": true
+ },
+ "get-stdin": {
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz",
+ "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==",
+ "dev": true
+ },
+ "glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "requires": {
+ "is-glob": "^4.0.1"
+ }
+ },
+ "globby": {
+ "version": "12.2.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-12.2.0.tgz",
+ "integrity": "sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA==",
+ "dev": true,
+ "requires": {
+ "array-union": "^3.0.1",
+ "dir-glob": "^3.0.1",
+ "fast-glob": "^3.2.7",
+ "ignore": "^5.1.9",
+ "merge2": "^1.4.1",
+ "slash": "^4.0.0"
+ }
+ },
+ "graceful-fs": {
+ "version": "4.2.9",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz",
+ "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==",
+ "dev": true
+ },
+ "ignore": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz",
+ "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==",
+ "dev": true
+ },
+ "is-binary-path": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
+ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
+ "dev": true,
+ "requires": {
+ "binary-extensions": "^2.0.0"
+ }
+ },
+ "is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
+ "dev": true
+ },
+ "is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.1"
+ }
+ },
+ "is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+ "dev": true
+ },
+ "jsonfile": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.6",
+ "universalify": "^2.0.0"
+ }
+ },
+ "lilconfig": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.4.tgz",
+ "integrity": "sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==",
+ "dev": true
+ },
+ "merge2": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
+ "dev": true
+ },
+ "micromatch": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
+ "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
+ "dev": true,
+ "requires": {
+ "braces": "^3.0.1",
+ "picomatch": "^2.2.3"
+ }
+ },
+ "nanoid": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz",
+ "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==",
+ "dev": true,
+ "peer": true
+ },
+ "node-releases": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz",
+ "integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==",
+ "dev": true
+ },
+ "normalize-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
+ "dev": true
+ },
+ "normalize-range": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
+ "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=",
+ "dev": true
+ },
+ "path-type": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
+ "dev": true
+ },
+ "picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
+ "dev": true
+ },
+ "picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+ "dev": true
+ },
+ "pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+ "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
+ "dev": true
+ },
+ "postcss": {
+ "version": "8.4.6",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.6.tgz",
+ "integrity": "sha512-OovjwIzs9Te46vlEx7+uXB0PLijpwjXGKXjVGGPIGubGpq7uh5Xgf6D6FiJ/SzJMBosHDp6a2hiXOS97iBXcaA==",
+ "dev": true,
+ "peer": true,
+ "requires": {
+ "nanoid": "^3.2.0",
+ "picocolors": "^1.0.0",
+ "source-map-js": "^1.0.2"
+ }
+ },
+ "postcss-cli": {
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-9.1.0.tgz",
+ "integrity": "sha512-zvDN2ADbWfza42sAnj+O2uUWyL0eRL1V+6giM2vi4SqTR3gTYy8XzcpfwccayF2szcUif0HMmXiEaDv9iEhcpw==",
+ "dev": true,
+ "requires": {
+ "chokidar": "^3.3.0",
+ "dependency-graph": "^0.11.0",
+ "fs-extra": "^10.0.0",
+ "get-stdin": "^9.0.0",
+ "globby": "^12.0.0",
+ "picocolors": "^1.0.0",
+ "postcss-load-config": "^3.0.0",
+ "postcss-reporter": "^7.0.0",
+ "pretty-hrtime": "^1.0.3",
+ "read-cache": "^1.0.0",
+ "slash": "^4.0.0",
+ "yargs": "^17.0.0"
+ }
+ },
+ "postcss-load-config": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.3.tgz",
+ "integrity": "sha512-5EYgaM9auHGtO//ljHH+v/aC/TQ5LHXtL7bQajNAUBKUVKiYE8rYpFms7+V26D9FncaGe2zwCoPQsFKb5zF/Hw==",
+ "dev": true,
+ "requires": {
+ "lilconfig": "^2.0.4",
+ "yaml": "^1.10.2"
+ }
+ },
+ "postcss-reporter": {
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-7.0.5.tgz",
+ "integrity": "sha512-glWg7VZBilooZGOFPhN9msJ3FQs19Hie7l5a/eE6WglzYqVeH3ong3ShFcp9kDWJT1g2Y/wd59cocf9XxBtkWA==",
+ "dev": true,
+ "requires": {
+ "picocolors": "^1.0.0",
+ "thenby": "^1.3.4"
+ }
+ },
+ "postcss-value-parser": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
+ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
+ "dev": true
+ },
+ "pretty-hrtime": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz",
+ "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=",
+ "dev": true
+ },
+ "queue-microtask": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+ "dev": true
+ },
+ "read-cache": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
+ "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=",
+ "dev": true,
+ "requires": {
+ "pify": "^2.3.0"
+ }
+ },
+ "readdirp": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
+ "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
+ "dev": true,
+ "requires": {
+ "picomatch": "^2.2.1"
+ }
+ },
+ "require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
+ "dev": true
+ },
+ "reusify": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
+ "dev": true
+ },
+ "run-parallel": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+ "dev": true,
+ "requires": {
+ "queue-microtask": "^1.2.2"
+ }
+ },
+ "slash": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
+ "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==",
+ "dev": true
+ },
+ "source-map-js": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+ "dev": true,
+ "peer": true
+ },
+ "string-width": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ }
+ },
+ "strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^5.0.1"
+ }
+ },
+ "thenby": {
+ "version": "1.3.4",
+ "resolved": "https://registry.npmjs.org/thenby/-/thenby-1.3.4.tgz",
+ "integrity": "sha512-89Gi5raiWA3QZ4b2ePcEwswC3me9JIg+ToSgtE0JWeCynLnLxNr/f9G+xfo9K+Oj4AFdom8YNJjibIARTJmapQ==",
+ "dev": true
+ },
+ "to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "dev": true,
+ "requires": {
+ "is-number": "^7.0.0"
+ }
+ },
+ "universalify": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz",
+ "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==",
+ "dev": true
+ },
+ "wrap-ansi": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ }
+ },
+ "y18n": {
+ "version": "5.0.8",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
+ "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
+ "dev": true
+ },
+ "yaml": {
+ "version": "1.10.2",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
+ "dev": true
+ },
+ "yargs": {
+ "version": "17.3.1",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.3.1.tgz",
+ "integrity": "sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==",
+ "dev": true,
+ "requires": {
+ "cliui": "^7.0.2",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
+ "require-directory": "^2.1.1",
+ "string-width": "^4.2.3",
+ "y18n": "^5.0.5",
+ "yargs-parser": "^21.0.0"
+ }
+ },
+ "yargs-parser": {
+ "version": "21.0.0",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.0.tgz",
+ "integrity": "sha512-z9kApYUOCwoeZ78rfRYYWdiU/iNL6mwwYlkkZfJoyMR1xps+NEBX5X7XmRpxkZHhXJ6+Ey00IwKxBBSW9FIjyA==",
+ "dev": true
+ }
+ }
+}
diff --git a/package.json b/package.json
new file mode 100644
index 00000000..e3af2888
--- /dev/null
+++ b/package.json
@@ -0,0 +1,24 @@
+{
+ "name": "tech-doc-hugo",
+ "version": "0.0.1",
+ "description": "Hugo theme for technical documentation.",
+ "main": "none.js",
+ "scripts": {
+ "test": "echo \"Error: no test specified\" && exit 1"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/google/docsy-example.git"
+ },
+ "author": "",
+ "license": "ISC",
+ "bugs": {
+ "url": "https://github.com/google/docsy-example/issues"
+ },
+ "homepage": "https://github.com/google/docsy-example#readme",
+ "dependencies": {},
+ "devDependencies": {
+ "autoprefixer": "^10.4.2",
+ "postcss-cli": "^9.1.0"
+ }
+}
diff --git a/static/favicon.ico b/static/favicon.ico
new file mode 100644
index 00000000..e3a49859
Binary files /dev/null and b/static/favicon.ico differ
diff --git a/static/favicons/android-144x144.png b/static/favicons/android-144x144.png
new file mode 100644
index 00000000..2e079f0d
Binary files /dev/null and b/static/favicons/android-144x144.png differ
diff --git a/static/favicons/android-192x192.png b/static/favicons/android-192x192.png
new file mode 100644
index 00000000..39a41cb4
Binary files /dev/null and b/static/favicons/android-192x192.png differ
diff --git a/static/favicons/android-36x36.png b/static/favicons/android-36x36.png
new file mode 100644
index 00000000..4a9c6333
Binary files /dev/null and b/static/favicons/android-36x36.png differ
diff --git a/static/favicons/android-48x48.png b/static/favicons/android-48x48.png
new file mode 100644
index 00000000..2a85605d
Binary files /dev/null and b/static/favicons/android-48x48.png differ
diff --git a/static/favicons/android-72x72.png b/static/favicons/android-72x72.png
new file mode 100644
index 00000000..1c40cc5d
Binary files /dev/null and b/static/favicons/android-72x72.png differ
diff --git a/static/favicons/android-96x96.png b/static/favicons/android-96x96.png
new file mode 100644
index 00000000..0e860adc
Binary files /dev/null and b/static/favicons/android-96x96.png differ
diff --git a/static/favicons/android-chrome-192x192.png b/static/favicons/android-chrome-192x192.png
new file mode 100644
index 00000000..0c33a715
Binary files /dev/null and b/static/favicons/android-chrome-192x192.png differ
diff --git a/static/favicons/android-chrome-512x512.png b/static/favicons/android-chrome-512x512.png
new file mode 100644
index 00000000..e9f1e546
Binary files /dev/null and b/static/favicons/android-chrome-512x512.png differ
diff --git a/static/favicons/android-chrome-maskable-192x192.png b/static/favicons/android-chrome-maskable-192x192.png
new file mode 100644
index 00000000..27b73cd2
Binary files /dev/null and b/static/favicons/android-chrome-maskable-192x192.png differ
diff --git a/static/favicons/android-chrome-maskable-512x512.png b/static/favicons/android-chrome-maskable-512x512.png
new file mode 100644
index 00000000..b1ec802b
Binary files /dev/null and b/static/favicons/android-chrome-maskable-512x512.png differ
diff --git a/static/favicons/apple-touch-icon-120x120.png b/static/favicons/apple-touch-icon-120x120.png
new file mode 100644
index 00000000..d0a18eac
Binary files /dev/null and b/static/favicons/apple-touch-icon-120x120.png differ
diff --git a/static/favicons/apple-touch-icon-152x152.png b/static/favicons/apple-touch-icon-152x152.png
new file mode 100644
index 00000000..0e42045d
Binary files /dev/null and b/static/favicons/apple-touch-icon-152x152.png differ
diff --git a/static/favicons/apple-touch-icon-167x167.png b/static/favicons/apple-touch-icon-167x167.png
new file mode 100644
index 00000000..5eb4e7a9
Binary files /dev/null and b/static/favicons/apple-touch-icon-167x167.png differ
diff --git a/static/favicons/apple-touch-icon-180x180.png b/static/favicons/apple-touch-icon-180x180.png
new file mode 100644
index 00000000..ca9e73f0
Binary files /dev/null and b/static/favicons/apple-touch-icon-180x180.png differ
diff --git a/static/favicons/apple-touch-icon-60x60.png b/static/favicons/apple-touch-icon-60x60.png
new file mode 100644
index 00000000..54012660
Binary files /dev/null and b/static/favicons/apple-touch-icon-60x60.png differ
diff --git a/static/favicons/apple-touch-icon-76x76.png b/static/favicons/apple-touch-icon-76x76.png
new file mode 100644
index 00000000..e6aa96f2
Binary files /dev/null and b/static/favicons/apple-touch-icon-76x76.png differ
diff --git a/static/favicons/apple-touch-icon.png b/static/favicons/apple-touch-icon.png
new file mode 100644
index 00000000..5808f10f
Binary files /dev/null and b/static/favicons/apple-touch-icon.png differ
diff --git a/static/favicons/coast-228x228.png b/static/favicons/coast-228x228.png
new file mode 100644
index 00000000..2f2da9d0
Binary files /dev/null and b/static/favicons/coast-228x228.png differ
diff --git a/static/favicons/favicon-1024.png b/static/favicons/favicon-1024.png
new file mode 100644
index 00000000..0d203fc0
Binary files /dev/null and b/static/favicons/favicon-1024.png differ
diff --git a/static/favicons/favicon-128x128.png b/static/favicons/favicon-128x128.png
new file mode 100644
index 00000000..24f319e3
Binary files /dev/null and b/static/favicons/favicon-128x128.png differ
diff --git a/static/favicons/favicon-16x16.png b/static/favicons/favicon-16x16.png
new file mode 100644
index 00000000..be6bd67e
Binary files /dev/null and b/static/favicons/favicon-16x16.png differ
diff --git a/static/favicons/favicon-256.png b/static/favicons/favicon-256.png
new file mode 100644
index 00000000..a07ca040
Binary files /dev/null and b/static/favicons/favicon-256.png differ
diff --git a/static/favicons/favicon-256x256.png b/static/favicons/favicon-256x256.png
new file mode 100644
index 00000000..1f1427b7
Binary files /dev/null and b/static/favicons/favicon-256x256.png differ
diff --git a/static/favicons/favicon-32x32.png b/static/favicons/favicon-32x32.png
new file mode 100644
index 00000000..aa715d3a
Binary files /dev/null and b/static/favicons/favicon-32x32.png differ
diff --git a/static/favicons/favicon-48x48.png b/static/favicons/favicon-48x48.png
new file mode 100644
index 00000000..4874d666
Binary files /dev/null and b/static/favicons/favicon-48x48.png differ
diff --git a/static/favicons/favicon-64x64.png b/static/favicons/favicon-64x64.png
new file mode 100644
index 00000000..b5c131f8
Binary files /dev/null and b/static/favicons/favicon-64x64.png differ
diff --git a/static/favicons/favicon-96x96.png b/static/favicons/favicon-96x96.png
new file mode 100644
index 00000000..3bdfc1d4
Binary files /dev/null and b/static/favicons/favicon-96x96.png differ
diff --git a/static/favicons/favicon.ico b/static/favicons/favicon.ico
new file mode 100644
index 00000000..e3a49859
Binary files /dev/null and b/static/favicons/favicon.ico differ
diff --git a/static/favicons/msapplication-icon-144x144.png b/static/favicons/msapplication-icon-144x144.png
new file mode 100644
index 00000000..abc0250b
Binary files /dev/null and b/static/favicons/msapplication-icon-144x144.png differ
diff --git a/static/favicons/mstile-150x150.png b/static/favicons/mstile-150x150.png
new file mode 100644
index 00000000..ddba89b6
Binary files /dev/null and b/static/favicons/mstile-150x150.png differ
diff --git a/static/favicons/pwa-192x192.png b/static/favicons/pwa-192x192.png
new file mode 100644
index 00000000..8b93aebe
Binary files /dev/null and b/static/favicons/pwa-192x192.png differ
diff --git a/static/favicons/pwa-512x512.png b/static/favicons/pwa-512x512.png
new file mode 100644
index 00000000..5c777a4f
Binary files /dev/null and b/static/favicons/pwa-512x512.png differ
diff --git a/static/favicons/tile150x150.png b/static/favicons/tile150x150.png
new file mode 100644
index 00000000..78821a2c
Binary files /dev/null and b/static/favicons/tile150x150.png differ
diff --git a/static/favicons/tile310x150.png b/static/favicons/tile310x150.png
new file mode 100644
index 00000000..ed890428
Binary files /dev/null and b/static/favicons/tile310x150.png differ
diff --git a/static/favicons/tile310x310.png b/static/favicons/tile310x310.png
new file mode 100644
index 00000000..5543c45a
Binary files /dev/null and b/static/favicons/tile310x310.png differ
diff --git a/static/favicons/tile70x70.png b/static/favicons/tile70x70.png
new file mode 100644
index 00000000..236f9417
Binary files /dev/null and b/static/favicons/tile70x70.png differ
diff --git a/static/images/Hero_Side_Device_BC_Capability.png b/static/images/Hero_Side_Device_BC_Capability.png
new file mode 100644
index 00000000..89c054a1
Binary files /dev/null and b/static/images/Hero_Side_Device_BC_Capability.png differ
diff --git a/static/images/alguidelines-bclogo-pattern-black.png b/static/images/alguidelines-bclogo-pattern-black.png
new file mode 100644
index 00000000..739e3ab8
Binary files /dev/null and b/static/images/alguidelines-bclogo-pattern-black.png differ
diff --git a/static/images/alguidelines-bclogo-pattern-white.png b/static/images/alguidelines-bclogo-pattern-white.png
new file mode 100644
index 00000000..b6f9df06
Binary files /dev/null and b/static/images/alguidelines-bclogo-pattern-white.png differ
diff --git a/static/images/body-img-1.png b/static/images/body-img-1.png
new file mode 100644
index 00000000..d8096869
Binary files /dev/null and b/static/images/body-img-1.png differ
diff --git a/static/images/brainstorming-team-meeting_38894532.png b/static/images/brainstorming-team-meeting_38894532.png
new file mode 100644
index 00000000..8fd1a808
Binary files /dev/null and b/static/images/brainstorming-team-meeting_38894532.png differ
diff --git a/static/images/hero-bg.png b/static/images/hero-bg.png
new file mode 100644
index 00000000..a731a15a
Binary files /dev/null and b/static/images/hero-bg.png differ
diff --git a/static/images/hero-bg.webp b/static/images/hero-bg.webp
new file mode 100644
index 00000000..8be67c18
Binary files /dev/null and b/static/images/hero-bg.webp differ
diff --git a/static/images/wave.webp b/static/images/wave.webp
new file mode 100644
index 00000000..8aba5ea4
Binary files /dev/null and b/static/images/wave.webp differ
diff --git a/static/images/whats-new-bg.webp b/static/images/whats-new-bg.webp
new file mode 100644
index 00000000..11f533e2
Binary files /dev/null and b/static/images/whats-new-bg.webp differ
diff --git a/themes/docsy b/themes/docsy
new file mode 160000
index 00000000..66818eb0
--- /dev/null
+++ b/themes/docsy
@@ -0,0 +1 @@
+Subproject commit 66818eb0905c014f342432c5fc918fc4b1c04b57
diff --git a/themes/relearn b/themes/relearn
deleted file mode 160000
index da99510f..00000000
--- a/themes/relearn
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit da99510f6e66ae3d04088ed879e9ddb0e849f3fb