mirror of
https://github.com/gethinode/hinode.git
synced 2025-10-07 10:04:22 +00:00
Compare commits
281 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
fb32bea825 | ||
![]() |
cff9ed125c | ||
![]() |
59170cfc44 | ||
![]() |
4ae5e1a14d | ||
![]() |
f0e426ed35 | ||
![]() |
4c37191c81 | ||
![]() |
8197aa89cd | ||
![]() |
a00bab683f | ||
![]() |
29adfc629d | ||
![]() |
bf829f6abe | ||
![]() |
f00a38cd4b | ||
![]() |
510cb7f941 | ||
![]() |
ad84ccb4b8 | ||
![]() |
81b8dc4ea7 | ||
![]() |
4881528343 | ||
![]() |
c3f4b6d8ea | ||
![]() |
d853106bf3 | ||
![]() |
0c77f9c5a0 | ||
![]() |
8cdad9c783 | ||
![]() |
b3618c2fcc | ||
![]() |
60e5915de1 | ||
![]() |
48af98b7cf | ||
![]() |
dc04c46906 | ||
![]() |
883d753c62 | ||
![]() |
221edc3d9c | ||
![]() |
2fa27a699b | ||
![]() |
17c2c76ed9 | ||
![]() |
fe05770e89 | ||
![]() |
856c264544 | ||
![]() |
816455676a | ||
![]() |
7fde6a2d8e | ||
![]() |
97caba0ace | ||
![]() |
89df0b1b2a | ||
![]() |
0bdfc2f699 | ||
![]() |
a22d5b43ec | ||
![]() |
3bb96c5322 | ||
![]() |
b2adbab04b | ||
![]() |
a4c3693b64 | ||
![]() |
50d21d1927 | ||
![]() |
42e83382a2 | ||
![]() |
c9df385598 | ||
![]() |
4d86493bfb | ||
![]() |
633dab2622 | ||
![]() |
5c9316cea0 | ||
![]() |
6085688d7b | ||
![]() |
54e1720be6 | ||
![]() |
f482f4dd94 | ||
![]() |
b48a9598f4 | ||
![]() |
ed56db6d0d | ||
![]() |
9a91208f58 | ||
![]() |
353f5e2194 | ||
![]() |
cd301e2274 | ||
![]() |
7fbeb7fa5a | ||
![]() |
80a8e6ca2f | ||
![]() |
64f892dca9 | ||
![]() |
5f1edc0643 | ||
![]() |
defd63142d | ||
![]() |
d0d1059774 | ||
![]() |
f0fdda6960 | ||
![]() |
bd03786f02 | ||
![]() |
bbb976440e | ||
![]() |
d99d2ad436 | ||
![]() |
6703dd4092 | ||
![]() |
35891daf3c | ||
![]() |
768c83d494 | ||
![]() |
cbc36092f3 | ||
![]() |
12a1598578 | ||
![]() |
8c77e7ad5c | ||
![]() |
9c746ec7f2 | ||
![]() |
c161063dca | ||
![]() |
593ab2c918 | ||
![]() |
1f33976fe2 | ||
![]() |
9234d3c86a | ||
![]() |
de716b0162 | ||
![]() |
7c176956b0 | ||
![]() |
7258d0b5a9 | ||
![]() |
fe04de37a7 | ||
![]() |
d3ca7075bf | ||
![]() |
68215d5f94 | ||
![]() |
dc57fa5217 | ||
![]() |
8299b125fc | ||
![]() |
6a51cb9681 | ||
![]() |
27bbf7ddf5 | ||
![]() |
89fea6d15f | ||
![]() |
af762c840c | ||
![]() |
4b3b0e87bb | ||
![]() |
6bad35eec8 | ||
![]() |
46e745d1e7 | ||
![]() |
6cef5651d2 | ||
![]() |
c91604d34a | ||
![]() |
842725fd1c | ||
![]() |
5cad7cb0f9 | ||
![]() |
057dd63957 | ||
![]() |
f002cf06e4 | ||
![]() |
9d742f9165 | ||
![]() |
68c2cac3e0 | ||
![]() |
1c0ed71df9 | ||
![]() |
1e8791fdf0 | ||
![]() |
8cfac32280 | ||
![]() |
6e7a1dcdb9 | ||
![]() |
19cda9a986 | ||
![]() |
9ee9ebc960 | ||
![]() |
6f7903a2f2 | ||
![]() |
82d12d693c | ||
![]() |
3ed64f59f1 | ||
![]() |
df8ea923c5 | ||
![]() |
60872ea541 | ||
![]() |
52715cef21 | ||
![]() |
91f79e57ab | ||
![]() |
fdd878241b | ||
![]() |
f32bd92efa | ||
![]() |
c31dca464a | ||
![]() |
cb02c25ac4 | ||
![]() |
39ef3c5372 | ||
![]() |
546003c9d4 | ||
![]() |
6b4a1334bb | ||
![]() |
90ee71a536 | ||
![]() |
0c6b2929dc | ||
![]() |
2cb60efc38 | ||
![]() |
26f1bf3c7f | ||
![]() |
ec8176c1e3 | ||
![]() |
20b1cfb59e | ||
![]() |
09a6125834 | ||
![]() |
f30b30e48e | ||
![]() |
a0b89fd1a3 | ||
![]() |
dccedfe42d | ||
![]() |
d3ee13584a | ||
![]() |
03f4541b8a | ||
![]() |
9b0f91a378 | ||
![]() |
d9487b77db | ||
![]() |
f543c012bd | ||
![]() |
c068f7f4e6 | ||
![]() |
0dfd5d6a2f | ||
![]() |
0a6dbccb12 | ||
![]() |
c012eb5358 | ||
![]() |
bb2f1b63cf | ||
![]() |
d7facc353d | ||
![]() |
4dcae71516 | ||
![]() |
bac2bed6ad | ||
![]() |
56275d04dc | ||
![]() |
f32a958cf9 | ||
![]() |
e00e04b40b | ||
![]() |
4970c604d9 | ||
![]() |
a44e5dcafc | ||
![]() |
8493154844 | ||
![]() |
8a8a644ccf | ||
![]() |
d390d2eb4e | ||
![]() |
2e3bca1a34 | ||
![]() |
9a00e6c4c1 | ||
![]() |
3dcbe0b62c | ||
![]() |
bdf9d84a72 | ||
![]() |
7386cf1fb9 | ||
![]() |
2625222554 | ||
![]() |
74eeec9030 | ||
![]() |
a57e0da164 | ||
![]() |
6ab01755f2 | ||
![]() |
22cb71ca9b | ||
![]() |
62897f685f | ||
![]() |
4f8fdc4f03 | ||
![]() |
925a3ff33e | ||
![]() |
cf16cb9824 | ||
![]() |
5d9383858f | ||
![]() |
3332b437dd | ||
![]() |
c5510707b1 | ||
![]() |
498f208382 | ||
![]() |
86962eb8a2 | ||
![]() |
f4319180e0 | ||
![]() |
9607aef8ef | ||
![]() |
2c2f150faa | ||
![]() |
6087630643 | ||
![]() |
26235a1e7e | ||
![]() |
408799c3e2 | ||
![]() |
7b4a46121c | ||
![]() |
7af4c37c88 | ||
![]() |
9cc7174030 | ||
![]() |
f8de99173f | ||
![]() |
68f7b466fb | ||
![]() |
3a9a57cc5d | ||
![]() |
f3c264ead2 | ||
![]() |
1dd2971893 | ||
![]() |
7ac6b89ece | ||
![]() |
458e8fb605 | ||
![]() |
b268c1bad0 | ||
![]() |
d414c111f4 | ||
![]() |
62f7ca0c79 | ||
![]() |
6ebd03b4db | ||
![]() |
a3e5b7cbc4 | ||
![]() |
7335014a55 | ||
![]() |
f43dc337d1 | ||
![]() |
50de255e59 | ||
![]() |
3166ce9bb3 | ||
![]() |
d8c331e35d | ||
![]() |
cef686243a | ||
![]() |
c4bdbb242c | ||
![]() |
cb70afd5f0 | ||
![]() |
fbf758cced | ||
![]() |
abd69af2f2 | ||
![]() |
1190a96694 | ||
![]() |
d310648950 | ||
![]() |
8c7fea7670 | ||
![]() |
9e5d786ca3 | ||
![]() |
2bfb9d6991 | ||
![]() |
294f1ae91d | ||
![]() |
8f5f1caef6 | ||
![]() |
d342496336 | ||
![]() |
24c5ecda82 | ||
![]() |
dbf3be5528 | ||
![]() |
d4e516065d | ||
![]() |
5b2b996948 | ||
![]() |
33056742af | ||
![]() |
8fa4b251b1 | ||
![]() |
dcbbf2a55a | ||
![]() |
c7a4edee1f | ||
![]() |
f69f536dca | ||
![]() |
4bd20f6bb0 | ||
![]() |
6db9cbec0e | ||
![]() |
0170417ddc | ||
![]() |
3eb2e36429 | ||
![]() |
773b365b1c | ||
![]() |
550945f0f6 | ||
![]() |
b60ad8fd0b | ||
![]() |
38d1ddb86d | ||
![]() |
17287492e5 | ||
![]() |
992d724a6f | ||
![]() |
0b81eba373 | ||
![]() |
0a5e8bed92 | ||
![]() |
a387adca66 | ||
![]() |
5341db7db2 | ||
![]() |
f4d59a0324 | ||
![]() |
6c068898a3 | ||
![]() |
eec6697ff6 | ||
![]() |
26402fb5be | ||
![]() |
e08aebf928 | ||
![]() |
787ad2eb91 | ||
![]() |
8f137b0c54 | ||
![]() |
a979dd8d58 | ||
![]() |
b77a125485 | ||
![]() |
004da99765 | ||
![]() |
907c8ac800 | ||
![]() |
a8efc27771 | ||
![]() |
3bf8da3767 | ||
![]() |
131de0c064 | ||
![]() |
a914fe18e8 | ||
![]() |
a855a41c13 | ||
![]() |
c41cd0650e | ||
![]() |
a83bab6689 | ||
![]() |
03a099ae66 | ||
![]() |
cd837cf116 | ||
![]() |
8cffd358aa | ||
![]() |
0d33a15e98 | ||
![]() |
9be691eb6b | ||
![]() |
fd727228d7 | ||
![]() |
a9f1cd098d | ||
![]() |
dc1c358cfa | ||
![]() |
0d24dc445d | ||
![]() |
f6f034252b | ||
![]() |
863b81efbb | ||
![]() |
9b0683d176 | ||
![]() |
dd1b2eb97f | ||
![]() |
3f6dc3b2d7 | ||
![]() |
873277b691 | ||
![]() |
7a456a12d2 | ||
![]() |
b437b414b0 | ||
![]() |
80ac704d81 | ||
![]() |
996e9ec294 | ||
![]() |
0ab274d6f5 | ||
![]() |
3742e8ef04 | ||
![]() |
3eadaa02b8 | ||
![]() |
90bc571b76 | ||
![]() |
aad5b59a48 | ||
![]() |
4d7fdffd4a | ||
![]() |
c384836224 | ||
![]() |
cb547351d9 | ||
![]() |
3b47a5b66f | ||
![]() |
9f9029baf0 | ||
![]() |
3079f1f7dd | ||
![]() |
e546d34422 | ||
![]() |
00e80f6400 | ||
![]() |
b46dd52101 | ||
![]() |
b1a8c956fc | ||
![]() |
1b8aa10d11 |
9
.github/codeql/codeql-config.yml
vendored
Normal file
9
.github/codeql/codeql-config.yml
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
paths:
|
||||
- 'assets/js'
|
||||
paths-ignore:
|
||||
- '**/vendor'
|
||||
- '**/critical/languageSelector.js'
|
||||
- '**/critical/color.js'
|
||||
- '**/clipboard.js'
|
||||
- '**/navbar.js'
|
||||
- '**/sharing.js'
|
102
.github/workflows/codeql.yml
vendored
Normal file
102
.github/workflows/codeql.yml
vendored
Normal file
@@ -0,0 +1,102 @@
|
||||
# For most projects, this workflow file will not need changing; you simply need
|
||||
# to commit it to your repository.
|
||||
#
|
||||
# You may wish to alter this file to override the set of languages analyzed,
|
||||
# or to provide custom queries or build logic.
|
||||
#
|
||||
# ******** NOTE ********
|
||||
# We have attempted to detect the languages in your repository. Please check
|
||||
# the `language` matrix defined below to confirm you have the correct set of
|
||||
# supported CodeQL languages.
|
||||
#
|
||||
name: "CodeQL Advanced"
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "main" ]
|
||||
pull_request:
|
||||
branches: [ "main" ]
|
||||
schedule:
|
||||
- cron: '44 1 * * 3'
|
||||
|
||||
jobs:
|
||||
analyze:
|
||||
name: Analyze (${{ matrix.language }})
|
||||
# Runner size impacts CodeQL analysis time. To learn more, please see:
|
||||
# - https://gh.io/recommended-hardware-resources-for-running-codeql
|
||||
# - https://gh.io/supported-runners-and-hardware-resources
|
||||
# - https://gh.io/using-larger-runners (GitHub.com only)
|
||||
# Consider using larger runners or machines with greater resources for possible analysis time improvements.
|
||||
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
|
||||
permissions:
|
||||
# required for all workflows
|
||||
security-events: write
|
||||
|
||||
# required to fetch internal or private CodeQL packs
|
||||
packages: read
|
||||
|
||||
# only required for workflows in private repositories
|
||||
actions: read
|
||||
contents: read
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- language: actions
|
||||
build-mode: none
|
||||
- language: javascript-typescript
|
||||
build-mode: none
|
||||
# CodeQL supports the following values keywords for 'language': 'actions', 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'rust', 'swift'
|
||||
# Use `c-cpp` to analyze code written in C, C++ or both
|
||||
# Use 'java-kotlin' to analyze code written in Java, Kotlin or both
|
||||
# Use 'javascript-typescript' to analyze code written in JavaScript, TypeScript or both
|
||||
# To learn more about changing the languages that are analyzed or customizing the build mode for your analysis,
|
||||
# see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning.
|
||||
# If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how
|
||||
# your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v5
|
||||
|
||||
# Add any setup steps before running the `github/codeql-action/init` action.
|
||||
# This includes steps like installing compilers or runtimes (`actions/setup-node`
|
||||
# or others). This is typically only required for manual builds.
|
||||
# - name: Setup runtime (example)
|
||||
# uses: actions/setup-example@v1
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v3
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
build-mode: ${{ matrix.build-mode }}
|
||||
config-file: ./.github/codeql/codeql-config.yml
|
||||
|
||||
# If you wish to specify custom queries, you can do so here or in a config file.
|
||||
# By default, queries listed here will override any specified in a config file.
|
||||
# Prefix the list here with "+" to use these queries and those in the config file.
|
||||
|
||||
# For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
|
||||
# queries: security-extended,security-and-quality
|
||||
|
||||
# If the analyze step fails for one of the languages you are analyzing with
|
||||
# "We were unable to automatically build your code", modify the matrix above
|
||||
# to set the build mode to "manual" for that language. Then modify this step
|
||||
# to build your code.
|
||||
# ℹ️ Command-line programs to run using the OS shell.
|
||||
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
|
||||
- if: matrix.build-mode == 'manual'
|
||||
shell: bash
|
||||
run: |
|
||||
echo 'If you are using a "manual" build mode for one or more of the' \
|
||||
'languages you are analyzing, replace this with the commands to build' \
|
||||
'your code, for example:'
|
||||
echo ' make bootstrap'
|
||||
echo ' make release'
|
||||
exit 1
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v3
|
||||
with:
|
||||
category: "/language:${{matrix.language}}"
|
14
.github/workflows/lint-build.yml
vendored
14
.github/workflows/lint-build.yml
vendored
@@ -14,16 +14,20 @@ env:
|
||||
CACHE_PATH_WIN: '~\AppData\Local\hugo_cache'
|
||||
CACHE_PATH_MAC: '/Users/runner/Library/Caches/hugo_cache'
|
||||
|
||||
permissions:
|
||||
pull-requests: read
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Check out repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v5
|
||||
with:
|
||||
node-version: lts/*
|
||||
cache: 'npm'
|
||||
@@ -49,15 +53,15 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Check out repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@v5
|
||||
uses: actions/setup-go@v6
|
||||
with:
|
||||
go-version: ">1.0.0"
|
||||
|
||||
- name: Set up Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v5
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'npm'
|
||||
|
4
.github/workflows/mod-update.yml
vendored
4
.github/workflows/mod-update.yml
vendored
@@ -14,10 +14,10 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v5
|
||||
with:
|
||||
node-version: lts/*
|
||||
cache: 'npm'
|
||||
|
4
.github/workflows/release.yml
vendored
4
.github/workflows/release.yml
vendored
@@ -23,12 +23,12 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v5
|
||||
with:
|
||||
node-version: "lts/*"
|
||||
|
||||
|
@@ -15,9 +15,6 @@
|
||||
<a href="https://gethinode.com">
|
||||
<img src="https://img.shields.io/badge/theme-hinode-blue" alt="Hinode theme">
|
||||
</a>
|
||||
<a href="https://www.npmjs.com/package/%40gethinode/hinode">
|
||||
<img src="https://img.shields.io/npm/v/%40gethinode/hinode" alt="npm package">
|
||||
</a>
|
||||
<a href="https://app.netlify.com/sites/gethinode-demo/deploys">
|
||||
<img src="https://img.shields.io/netlify/0ad42e3e-fdfa-4d37-8e26-58badd429a67" alt="Netlify Status">
|
||||
</a>
|
||||
|
@@ -1,4 +1,4 @@
|
||||
{{- if site.Params.main.enableDarkMode -}}
|
||||
{{- if (or site.Params.main.enableDarkMode site.Params.main.colorMode.enabled) -}}
|
||||
|
||||
/*!
|
||||
* Color mode toggler for Bootstrap's docs (https://getbootstrap.com/)
|
||||
@@ -43,9 +43,7 @@
|
||||
document.documentElement.setAttribute('data-bs-theme', theme)
|
||||
}
|
||||
|
||||
document.querySelectorAll('.navbar-mode-selector').forEach(chk => {
|
||||
chk.checked = (document.documentElement.getAttribute('data-bs-theme') === 'light')
|
||||
})
|
||||
updateSelectors()
|
||||
}
|
||||
|
||||
// alternates the currently active theme
|
||||
@@ -54,6 +52,12 @@
|
||||
setTheme(target)
|
||||
}
|
||||
|
||||
function updateSelectors() {
|
||||
document.querySelectorAll('.navbar-mode-selector').forEach(chk => {
|
||||
chk.checked = (document.documentElement.getAttribute('data-bs-theme') === 'light')
|
||||
})
|
||||
}
|
||||
|
||||
window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', () => {
|
||||
if (storedTheme !== 'light' || storedTheme !== 'dark') {
|
||||
setTheme(getPreferredTheme())
|
||||
@@ -69,7 +73,12 @@
|
||||
})
|
||||
})
|
||||
|
||||
// initialize theme directly when script is invoked
|
||||
window.addEventListener('load', () => {
|
||||
// update the selectors when all elements are ready
|
||||
updateSelectors()
|
||||
})
|
||||
|
||||
// initialize theme as soon as possible to reduce screen flickering
|
||||
setTheme(getTheme())
|
||||
})()
|
||||
|
||||
|
6
assets/js/modal.js
Normal file
6
assets/js/modal.js
Normal file
@@ -0,0 +1,6 @@
|
||||
document.addEventListener('hide.bs.modal', function (event) {
|
||||
// Remove the focus from the active element
|
||||
if (document.activeElement) {
|
||||
document.activeElement.blur()
|
||||
}
|
||||
})
|
45
assets/js/nav.js
Normal file
45
assets/js/nav.js
Normal file
@@ -0,0 +1,45 @@
|
||||
function updateDropdown (element, id, label) {
|
||||
const dropdown = document.getElementById(element)
|
||||
if (dropdown != null) {
|
||||
dropdown.querySelector('.dropdown-toggle').textContent = label
|
||||
dropdown.querySelectorAll('.panel-dropdown .dropdown-item').forEach(item => {
|
||||
item.classList.remove('active')
|
||||
let target = item.getAttribute('data-link')
|
||||
if (target != null) {
|
||||
target = target.replace(/^#+/, '')
|
||||
if (target === id) {
|
||||
item.classList.add('active')
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
document.querySelectorAll('.panel-dropdown').forEach(trigger => {
|
||||
trigger.addEventListener('hide.bs.dropdown', event => {
|
||||
if (event.clickEvent != null) {
|
||||
let target = event.clickEvent.srcElement.getAttribute('data-link')
|
||||
if (target != null) {
|
||||
trigger.querySelectorAll('.panel-dropdown .dropdown-item').forEach(item => {
|
||||
item.classList.remove('active')
|
||||
})
|
||||
target = target.replace(/^#+/, '')
|
||||
const btn = document.getElementById(target)
|
||||
if (btn != null) {
|
||||
event.clickEvent.srcElement.classList.add('active')
|
||||
trigger.querySelector('.dropdown-toggle').textContent = event.clickEvent.srcElement.textContent
|
||||
btn.click()
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
document.querySelectorAll('.nav-panel .nav-link').forEach(trigger => {
|
||||
trigger.addEventListener('click', event => {
|
||||
const companion = event.srcElement.parentElement.parentElement.getAttribute('data-companion')
|
||||
if (companion != null) {
|
||||
updateDropdown(companion, trigger.getAttribute('id'), trigger.textContent.trim())
|
||||
}
|
||||
})
|
||||
})
|
13
assets/js/toc.js
Normal file
13
assets/js/toc.js
Normal file
@@ -0,0 +1,13 @@
|
||||
const btnTOCShowMore = document.getElementById('btnTOCShowMore')
|
||||
if (btnTOCShowMore !== null) {
|
||||
btnTOCShowMore.addEventListener('click', (e) => {
|
||||
btnTOCShowMore.style.display = 'none'
|
||||
})
|
||||
}
|
||||
|
||||
const btnTOCShowLess = document.getElementById('btnTOCShowLess')
|
||||
if ((btnTOCShowLess !== null) && (btnTOCShowMore !== null)) {
|
||||
btnTOCShowLess.addEventListener('click', (e) => {
|
||||
btnTOCShowMore.style.display = 'initial'
|
||||
})
|
||||
}
|
@@ -24,8 +24,10 @@
|
||||
@import "components/carousel.scss";
|
||||
@import "components/clipboard.scss";
|
||||
@import "components/command.scss";
|
||||
@import "components/docs.scss";
|
||||
@import "components/feature.scss";
|
||||
@import "components/footer.scss";
|
||||
@import "components/kbd.scss";
|
||||
@import "components/nav.scss";
|
||||
@import "components/navbar.scss";
|
||||
@import "components/img.scss";
|
||||
@@ -35,6 +37,7 @@
|
||||
@import "components/sidebar.scss";
|
||||
@import "components/syntax-dart.scss"; // note: modified for dart-sass
|
||||
@import "components/table.scss";
|
||||
@import "components/toast.scss";
|
||||
@import "components/timeline.scss";
|
||||
@import "components/toc.scss";
|
||||
@import "components/video.scss";
|
||||
|
@@ -22,8 +22,10 @@
|
||||
@import "components/carousel.scss";
|
||||
@import "components/clipboard.scss";
|
||||
@import "components/command.scss";
|
||||
@import "components/docs.scss";
|
||||
@import "components/feature.scss";
|
||||
@import "components/footer.scss";
|
||||
@import "components/kbd.scss";
|
||||
@import "components/nav.scss";
|
||||
@import "components/navbar.scss";
|
||||
@import "components/img.scss";
|
||||
@@ -33,6 +35,7 @@
|
||||
@import "components/sidebar.scss";
|
||||
@import "components/syntax.scss";
|
||||
@import "components/table.scss";
|
||||
@import "components/toast.scss";
|
||||
@import "components/timeline.scss";
|
||||
@import "components/toc.scss";
|
||||
@import "components/video.scss";
|
||||
|
@@ -21,6 +21,7 @@
|
||||
|
||||
// Standard version (Firefox, only appears on scroll)
|
||||
@supports (-moz-appearance:none) {
|
||||
/* stylelint-disable-next-line no-invalid-position-declaration */
|
||||
scrollbar-color: $foreground-color $background-color;
|
||||
}
|
||||
}
|
||||
|
@@ -14,6 +14,10 @@ a:active {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
div.rounded, img.rounded {
|
||||
--bs-border-radius: #{$theme-border-radius};
|
||||
}
|
||||
|
||||
//
|
||||
// Ensure main page is rendered to full viewport height
|
||||
//
|
||||
@@ -147,3 +151,17 @@ $utilities: map-merge(
|
||||
)
|
||||
)
|
||||
);
|
||||
|
||||
.width-100 {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
$utilities: (
|
||||
"width": (
|
||||
property: width,
|
||||
responsive: true,
|
||||
values: (
|
||||
auto: auto
|
||||
)
|
||||
)
|
||||
);
|
||||
|
@@ -16,12 +16,12 @@ $font-weight-normal: 300 !default;
|
||||
$font-weight-bold: 600 !default;
|
||||
$font-weight-bolder: bolder !default;
|
||||
|
||||
$theme-border-radius: 1rem;
|
||||
|
||||
strong {
|
||||
font-weight: 600 if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
$theme-border-radius: 0.375rem;
|
||||
|
||||
$navbar-height: h.$navbar-height;
|
||||
$navbar-offset: h.$navbar-offset;
|
||||
$navbar-offset-xs: h.$navbar-offset-xs;
|
||||
|
@@ -17,13 +17,13 @@ $font-weight-normal: 300 !default;
|
||||
$font-weight-bold: 600 !default;
|
||||
$font-weight-bolder: bolder !default;
|
||||
|
||||
$theme-border-radius: 1rem;
|
||||
|
||||
strong {
|
||||
font-weight: 600 if($enable-important-utilities, !important, null);
|
||||
}
|
||||
// scss-docs-end font
|
||||
|
||||
$theme-border-radius: 0.375rem;
|
||||
|
||||
$white: #fff !default;
|
||||
$black: #000 !default;
|
||||
$body-bg: #fff !default;
|
||||
|
@@ -52,3 +52,7 @@ a.btn {
|
||||
.btn-xs {
|
||||
@include button-size($btn-padding-y-xs, $btn-padding-x-xs, $btn-font-size-xs, $btn-border-radius-xs);
|
||||
}
|
||||
|
||||
.btn {
|
||||
--bs-border-radius: #{$theme-border-radius};
|
||||
}
|
||||
|
@@ -6,6 +6,9 @@
|
||||
}
|
||||
|
||||
.card {
|
||||
--bs-card-border-radius: #{$theme-border-radius};
|
||||
--bs-card-inner-border-radius: #{$theme-border-radius};
|
||||
--bs-border-radius: #{$theme-border-radius};
|
||||
--bs-card-bg: transparent;
|
||||
}
|
||||
|
||||
@@ -28,6 +31,13 @@
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.card-img-top {
|
||||
--bs-border-radius: #{$theme-border-radius};
|
||||
|
||||
border-top-left-radius: var(--bs-border-radius) !important;
|
||||
border-top-right-radius: var(--bs-border-radius) !important;
|
||||
}
|
||||
|
||||
.card-img-wrap img {
|
||||
transition: transform 0.25s ease;
|
||||
width: 100%;
|
||||
|
@@ -1,3 +1,7 @@
|
||||
.carousel-inner {
|
||||
border-radius: #{$theme-border-radius};
|
||||
}
|
||||
|
||||
.gradient {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
|
22
assets/scss/components/_docs.scss
Normal file
22
assets/scss/components/_docs.scss
Normal file
@@ -0,0 +1,22 @@
|
||||
.docs-controls .nav-link,
|
||||
.file-controls .nav-link {
|
||||
border-top-left-radius: #{$theme-border-radius};
|
||||
border-top-right-radius: #{$theme-border-radius};
|
||||
margin-left: #{$theme-border-radius};
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
border-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.docs-panel,
|
||||
.file-panel {
|
||||
border: 1px solid var(--#{$prefix}border-color);
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.docs-panel, .docs-panel .collapse,
|
||||
.file-panel, .file-panel .collapse {
|
||||
border-radius: #{$theme-border-radius};
|
||||
}
|
@@ -27,3 +27,7 @@
|
||||
width: 100vw;
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
.figure-caption {
|
||||
margin-left: #{$theme-border-radius};
|
||||
}
|
||||
|
3
assets/scss/components/_kbd.scss
Normal file
3
assets/scss/components/_kbd.scss
Normal file
@@ -0,0 +1,3 @@
|
||||
kbd {
|
||||
border-radius: #{$theme-border-radius};
|
||||
}
|
@@ -84,6 +84,14 @@
|
||||
border-color: var(--#{$prefix}border-color);
|
||||
}
|
||||
|
||||
.nav-callout, .pagination {
|
||||
--bs-border-radius: #{$theme-border-radius};
|
||||
}
|
||||
|
||||
.nav-callout .tab-content {
|
||||
border-radius: #{$theme-border-radius};
|
||||
}
|
||||
|
||||
@if $enable-dark-mode {
|
||||
@include color-mode(dark) {
|
||||
.nav-callout, .tab-content {
|
||||
|
@@ -7,7 +7,7 @@
|
||||
}
|
||||
|
||||
.mode-switch {
|
||||
--#{$prefix}mode-switch-width: 50px;
|
||||
--#{$prefix}mode-switch-width: 3em;
|
||||
}
|
||||
|
||||
.mode-switch .label {
|
||||
@@ -64,6 +64,18 @@
|
||||
transform: scale(0.8);
|
||||
}
|
||||
|
||||
.mode-toggle > input {
|
||||
z-index: 1;
|
||||
cursor: pointer;
|
||||
height: 25px;
|
||||
width: 25px;
|
||||
}
|
||||
|
||||
.mode-toggle > label {
|
||||
z-index: 0;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
// Source: https://jsfiddle.net/njhgr40m/
|
||||
|
||||
@if $enable-dark-mode {
|
||||
@@ -92,20 +104,27 @@
|
||||
margin: 0 .15rem;
|
||||
}
|
||||
|
||||
.navbar-title {
|
||||
.navbar-title, .navbar-title-center, .navbar-title-start {
|
||||
display: inline-block;
|
||||
white-space: normal;
|
||||
text-align: center !important;
|
||||
vertical-align: middle;
|
||||
padding: 0 $spacer;
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.navbar-title, .navbar-title-center {
|
||||
text-align: center !important;
|
||||
}
|
||||
|
||||
.navbar-contrast .nav-link.active, .navbar-contrast .nav-link.show, .navbar-contrast .nav-link:hover {
|
||||
border-bottom: solid 1px var(--bs-navbar-hover-color);
|
||||
margin-bottom: -1px;
|
||||
}
|
||||
|
||||
.navbar-brand {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
.navbar-contrast {
|
||||
--bs-navbar-color: white !important;
|
||||
--bs-navbar-hover-color: white !important;
|
||||
@@ -113,7 +132,7 @@
|
||||
--bs-navbar-active-color: white !important;
|
||||
--bs-navbar-toggler-color: white;
|
||||
|
||||
.navbar-title, .mode-switch {
|
||||
.navbar-title, .navbar-brand, .mode-switch {
|
||||
--#{$prefix}border-color: white;
|
||||
|
||||
color: white !important;
|
||||
@@ -126,12 +145,65 @@
|
||||
|
||||
.navbar-expanded {
|
||||
box-shadow: $box-shadow-sm;
|
||||
min-height: 100vh;
|
||||
align-items: start;
|
||||
}
|
||||
|
||||
.navbar-expanded .navbar-collapse {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
|
||||
@each $h, $size in $font-sizes {
|
||||
.navbar-fs-#{$h} {
|
||||
font-size: #{$size};
|
||||
}
|
||||
}
|
||||
|
||||
@each $breakpoint in map-keys($grid-breakpoints) {
|
||||
$next: breakpoint-next($breakpoint, $grid-breakpoints);
|
||||
$infix: breakpoint-infix($next, $grid-breakpoints);
|
||||
|
||||
@if $infix != '' {
|
||||
@include media-breakpoint-up($next) {
|
||||
.navbar#{$infix}-fs {
|
||||
font-size: inherit;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-icon {
|
||||
padding-right: var(--bs-navbar-nav-link-padding-x);
|
||||
padding-left: var(--bs-navbar-nav-link-padding-x);
|
||||
}
|
||||
|
||||
.nav-item .vr {
|
||||
color: var(--bs-navbar-color);
|
||||
}
|
||||
|
||||
.navbar .nav-item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.navbar-collapse .dropdown {
|
||||
display: inline;
|
||||
align-items: normal;
|
||||
}
|
||||
|
||||
.navbar-expanded .btn {
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
.navbar .btn {
|
||||
border-radius: #{$theme-border-radius};
|
||||
}
|
||||
|
||||
.navbar-expanded .search-input {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
/* Remove border from toggler */
|
||||
.navbar-toggler {
|
||||
border: 0 if($enable-important-utilities, !important, null);
|
||||
@@ -223,13 +295,10 @@
|
||||
}
|
||||
|
||||
.navbar-container {
|
||||
min-height: calc(2rem + 10px);
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.navbar-brand {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(#{$navbar-size}) {
|
||||
:root {
|
||||
--navbar-offset: #{$navbar-offset};
|
||||
@@ -319,3 +388,7 @@
|
||||
position: absolute;
|
||||
z-index: $zindex-fixed;
|
||||
}
|
||||
|
||||
.form-control.is-search {
|
||||
border: 1px solid var(--bs-border-color) !important;
|
||||
}
|
||||
|
@@ -11,6 +11,12 @@
|
||||
}
|
||||
|
||||
.sidebar-item {
|
||||
--bs-border-radius: #{$theme-border-radius};
|
||||
--bs-border-radius-sm: #{$theme-border-radius};
|
||||
--bs-border-radius-lg: #{$theme-border-radius};
|
||||
--bs-border-radius-xl: #{$theme-border-radius};
|
||||
--bs-border-radius-xxl: #{$theme-border-radius};
|
||||
|
||||
color: rgba(0, 0, 0, 0.65);
|
||||
margin-left: 0 !important;
|
||||
display: inline-block;
|
||||
@@ -28,6 +34,8 @@
|
||||
}
|
||||
|
||||
.sidebar-item-group {
|
||||
border-radius: #{$theme-border-radius};
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: $primary;
|
||||
@@ -126,4 +134,6 @@
|
||||
|
||||
.dropdown-toggle {
|
||||
outline: 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
@@ -16,6 +16,10 @@
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.codeblock.syntax-highlight, .command.syntax-highlight {
|
||||
border-radius: #{$theme-border-radius};
|
||||
}
|
||||
|
||||
.syntax-highlight {
|
||||
background-color: var(--bs-light) if($enable-important-utilities, !important, null);
|
||||
overflow-x: auto;
|
||||
|
@@ -16,6 +16,10 @@
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.codeblock.syntax-highlight, .command.syntax-highlight {
|
||||
border-radius: #{$theme-border-radius};
|
||||
}
|
||||
|
||||
.syntax-highlight {
|
||||
background-color: var(--bs-light) if($enable-important-utilities, !important, null);
|
||||
overflow-x: auto;
|
||||
|
@@ -26,6 +26,10 @@ $semi-circle-border: 0.2rem;
|
||||
|
||||
// scss-docs-end timeline
|
||||
|
||||
.timeline-container {
|
||||
border-radius: #{$theme-border-radius};
|
||||
}
|
||||
|
||||
.timeline, .timeline-sm {
|
||||
position: relative;
|
||||
}
|
||||
|
4
assets/scss/components/_toast.scss
Normal file
4
assets/scss/components/_toast.scss
Normal file
@@ -0,0 +1,4 @@
|
||||
.toast {
|
||||
border-radius: #{$theme-border-radius};
|
||||
overflow: hidden;
|
||||
}
|
@@ -3,11 +3,11 @@
|
||||
//
|
||||
// scss-docs-start toc
|
||||
.toc-sidebar {
|
||||
grid-area: toc;
|
||||
right: 0;
|
||||
z-index: 2;
|
||||
overflow-y: auto;
|
||||
top: 5rem;
|
||||
max-height: calc(100vh - var(--navbar-offset));
|
||||
}
|
||||
|
||||
// scss-docs-end toc
|
||||
@@ -74,6 +74,14 @@
|
||||
}
|
||||
}
|
||||
|
||||
.btn-link.toc-item {
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
#btnTOCShowMore {
|
||||
padding-top: 0.875rem;
|
||||
}
|
||||
|
||||
a.toc-item {
|
||||
display: block;
|
||||
}
|
||||
|
@@ -3,6 +3,7 @@
|
||||
padding-bottom: 56.25%;
|
||||
height: 0;
|
||||
overflow: hidden;
|
||||
border-radius: #{$theme-border-radius};
|
||||
}
|
||||
|
||||
.video-embedded > iframe {
|
||||
@@ -11,7 +12,7 @@
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border:0;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
// Adapted from https://github.com/gohugoio/hugo/tpl/tplimpl/embedded/templates/shortcodes/vimeo_simple.html
|
||||
|
@@ -10,7 +10,7 @@
|
||||
|
||||
/* inter-200 - latin */
|
||||
@font-face {
|
||||
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
||||
font-display: block; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
||||
font-family: 'Inter';
|
||||
font-style: normal;
|
||||
font-weight: 200;
|
||||
@@ -23,7 +23,7 @@
|
||||
}
|
||||
/* inter-300 - latin */
|
||||
@font-face {
|
||||
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
||||
font-display: block; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
||||
font-family: 'Inter';
|
||||
font-style: normal;
|
||||
font-weight: 300;
|
||||
@@ -36,7 +36,7 @@
|
||||
}
|
||||
/* inter-regular - latin */
|
||||
@font-face {
|
||||
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
||||
font-display: block; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
||||
font-family: 'Inter';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
@@ -49,7 +49,7 @@
|
||||
}
|
||||
/* inter-600 - latin */
|
||||
@font-face {
|
||||
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
||||
font-display: block; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
|
||||
font-family: 'Inter';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
|
@@ -2,8 +2,10 @@
|
||||
@import "modules/bookshop/components/about/about";
|
||||
@import "modules/bookshop/components/articles/articles";
|
||||
@import "modules/bookshop/components/cards/cards";
|
||||
@import "modules/bookshop/components/cta/cta";
|
||||
@import "modules/bookshop/components/faq/faq";
|
||||
@import "modules/bookshop/components/hero/hero";
|
||||
@import "modules/bookshop/components/panels/panels";
|
||||
@import "modules/bookshop/components/releases/releases";
|
||||
@import "modules/bookshop/components/separator/separator";
|
||||
@import "modules/bookshop/components/video-message/video-message";
|
||||
|
@@ -32,6 +32,9 @@ blueprint:
|
||||
width:
|
||||
justify:
|
||||
link-type:
|
||||
fluid:
|
||||
theme:
|
||||
cover:
|
||||
links:
|
||||
-
|
||||
title:
|
||||
|
@@ -19,6 +19,7 @@
|
||||
{{/* Main code */}}
|
||||
{{ if not $args.error }}
|
||||
{{ partial "assets/hero.html" (dict
|
||||
"page" page
|
||||
"heading" $args.heading
|
||||
"background" $args.background
|
||||
"illustration" (merge (dict "ratio" "auto") $args.illustration)
|
||||
|
@@ -27,6 +27,10 @@ blueprint:
|
||||
more:
|
||||
title:
|
||||
link:
|
||||
link-type:
|
||||
icon:
|
||||
icon-rounded:
|
||||
icon-style:
|
||||
cols:
|
||||
padding:
|
||||
limit:
|
||||
@@ -40,8 +44,12 @@ blueprint:
|
||||
bento:
|
||||
cover:
|
||||
header-style:
|
||||
body-style:
|
||||
footer-style:
|
||||
orientation:
|
||||
class:
|
||||
width:
|
||||
justify:
|
||||
fluid:
|
||||
theme:
|
||||
cover:
|
||||
|
@@ -19,6 +19,10 @@
|
||||
{{ $error = $args.err }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Initialize global arguments */}}
|
||||
{{- $padding := partial "utilities/GetPadding.html" -}}
|
||||
|
||||
{{/* Initialize local variables */}}
|
||||
{{ $pages := slice }}
|
||||
{{ $result := partial "assets/live-pages.html" (dict
|
||||
"page" $args.page
|
||||
@@ -45,9 +49,13 @@
|
||||
{{ $moreButton := site.Params.modules.bookshop.articles.moreButton | default false }}
|
||||
{{ $moreTitle := T "more" (pluralize $args.input.section) }}
|
||||
{{ $moreLink := $args.input.section }}
|
||||
{{ $moreType := "button" }}
|
||||
{{ $moreIcon := "" }}
|
||||
{{ with $args.more }}
|
||||
{{ if .title }}{{ $moreTitle = .title }}{{ end }}
|
||||
{{ if .link }}{{ $moreLink = .link }}{{ end }}
|
||||
{{ if index . "link-type" }}{{ $moreType = index . "link-type" }}{{ end }}
|
||||
{{ if .icon }}{{ $moreIcon = .icon }}{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ $paginate := $args.paginate }}
|
||||
@@ -60,48 +68,60 @@
|
||||
{{ $paginate = false }}
|
||||
{{ end }}
|
||||
|
||||
<!-- Main code -->
|
||||
{{/* Main code */}}
|
||||
{{ if not $error }}
|
||||
{{- partial "assets/section-title.html" (dict "heading" $args.heading "justify" $args.justify) -}}
|
||||
{{ if or (gt (len $pages) 0) (not $args.hideEmpty) }}
|
||||
{{- partial "assets/section-title.html" (dict
|
||||
"heading" $args.heading
|
||||
"justify" $args.justify
|
||||
"class" (printf "pb-%d" $padding.y))
|
||||
-}}
|
||||
|
||||
{{ $partial := "assets/card-group.html" }}
|
||||
{{ $params := dict }}
|
||||
{{- $params = merge $params (dict
|
||||
"page" page
|
||||
"list" $pages
|
||||
"limit" $args.limit
|
||||
"cols" $args.cols
|
||||
"icon-rounded" $args.iconRounded
|
||||
"href" (cond $moreButton $moreLink "")
|
||||
"href-title" (cond $moreButton $moreTitle "")
|
||||
"href-force" (gt $result.total (len $result.pages))
|
||||
)}}
|
||||
{{ $partial := "assets/card-group.html" }}
|
||||
{{ $params := dict }}
|
||||
{{- $params = merge $params (dict
|
||||
"page" page
|
||||
"list" $pages
|
||||
"cols" $args.cols
|
||||
"limit" $args.limit
|
||||
"padding" $args.padding
|
||||
"href" (cond $moreButton $moreLink "")
|
||||
"href-force" (gt $result.total (len $result.pages))
|
||||
)}}
|
||||
|
||||
{{ if $args.scroll }}
|
||||
{{ $partial := "assets/stack.html" }}
|
||||
{{ $params = merge $params (dict
|
||||
"header-style" "none"
|
||||
"body-style" "title"
|
||||
"footer-style" "none"
|
||||
"gutter" 1
|
||||
"padding" 3
|
||||
"ratio" "1x1"
|
||||
"orientation" "horizontal-sm"
|
||||
"styles" (cond $args.bento $styles "")
|
||||
) -}}
|
||||
{{ else }}
|
||||
{{ $params = merge $params (dict
|
||||
"header-style" $args.headerStyle
|
||||
"footer-style" $args.footerStyle
|
||||
"padding" $args.padding
|
||||
"class" (or $args.class "border-0")
|
||||
"icon-style" "fa-2x"
|
||||
"align" "start"
|
||||
"orientation" $args.orientation
|
||||
"hook" "assets/live-card.html"
|
||||
"pagination" $args.pagination
|
||||
"paginate" $paginate
|
||||
) -}}
|
||||
{{ if $args.scroll }}
|
||||
{{ $partial = "assets/stack.html" }}
|
||||
{{ $params = merge $params (dict
|
||||
"header-style" "none"
|
||||
"body-style" "title"
|
||||
"footer-style" "none"
|
||||
"gutter" 1
|
||||
"ratio" "1x1"
|
||||
"orientation" "horizontal-sm"
|
||||
"styles" (cond $args.bento $styles "")
|
||||
) -}}
|
||||
{{ else }}
|
||||
{{ $params = merge $params (dict
|
||||
"header-style" $args.headerStyle
|
||||
"body-style" $args.bodyStyle
|
||||
"footer-style" $args.footerStyle
|
||||
"class" (or $args.class "border-0")
|
||||
"align" "start"
|
||||
"orientation" $args.orientation
|
||||
"href-title" (cond $moreButton $moreTitle "")
|
||||
"icon-rounded" $args.iconRounded
|
||||
"icon-style" $args.iconStyle
|
||||
"hook" "assets/live-card.html"
|
||||
"more-link-type" $moreType
|
||||
"more-link-icon" $moreIcon
|
||||
"pagination" $args.pagination
|
||||
"paginate" $paginate
|
||||
) -}}
|
||||
{{ end }}
|
||||
{{ if gt (len $pages) 0 }}
|
||||
{{ partial $partial $params }}
|
||||
{{ else }}
|
||||
<p class="pt-{{ $padding.y }}">{{- T "emptyList" }}.</p>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ partial $partial $params }}
|
||||
{{ end }}
|
@@ -17,6 +17,7 @@ blueprint:
|
||||
width:
|
||||
cols:
|
||||
icon-rounded:
|
||||
icon-style:
|
||||
padding:
|
||||
background:
|
||||
backdrop:
|
||||
@@ -32,3 +33,7 @@ blueprint:
|
||||
class:
|
||||
width:
|
||||
justify:
|
||||
align:
|
||||
fluid:
|
||||
theme:
|
||||
cover:
|
||||
|
@@ -21,6 +21,7 @@
|
||||
|
||||
{{/* Initialize global arguments */}}
|
||||
{{- $breakpoint := partial "utilities/GetBreakpoint.html" -}}
|
||||
{{- $padding := partial "utilities/GetPadding.html" -}}
|
||||
|
||||
{{/* Initialize local variables */}}
|
||||
{{ $list := slice }}
|
||||
@@ -34,37 +35,46 @@
|
||||
) }}
|
||||
{{ end}}
|
||||
|
||||
{{/* Main code */}}
|
||||
{{ if not $error }}
|
||||
{{- partial "assets/section-title.html" (dict "heading" $args.heading "justify" $args.justify) -}}
|
||||
{{- partial "assets/section-title.html" (dict
|
||||
"heading" $args.heading
|
||||
"justify" $args.justify
|
||||
"class" (printf "pb-%d" $padding.y))
|
||||
-}}
|
||||
|
||||
{{/* Layout for small screens */}}
|
||||
{{- partial "assets/card-group.html" (dict
|
||||
"page" page
|
||||
"list" $list
|
||||
"class" (printf "border-0 card-icon-primary d-%s-none %s" $breakpoint.prev $args.class)
|
||||
"class" (printf "border-0 card-icon-primary %s" (or $args.class ""))
|
||||
"wrapper" (printf "d-%s-none" $breakpoint.prev)
|
||||
"cols" $args.cols
|
||||
"gutter" "4"
|
||||
"padding" $args.padding
|
||||
"header-style" "none"
|
||||
"footer-style" "none"
|
||||
"icon-rounded" $args.iconRounded
|
||||
"icon-style" "fa-2x"
|
||||
"align" "start"
|
||||
"icon-style" (or $args.iconStyle "fa-2x")
|
||||
"align" $args.align
|
||||
"orientation" ($args.orientation | default "horizontal-sm")
|
||||
"hook" "assets/live-card.html"
|
||||
) -}}
|
||||
|
||||
{{/* Layout for regular screens */}}
|
||||
{{- partial "assets/card-group.html" (dict
|
||||
"page" page
|
||||
"list" $list
|
||||
"class" (printf "border-0 card-icon-primary d-none d-%s-block %s" $breakpoint.prev $args.class)
|
||||
"class" (printf "border-0 card-icon-primary %s" (or $args.class ""))
|
||||
"wrapper" (printf "d-none d-%s-block" $breakpoint.prev)
|
||||
"cols" $args.cols
|
||||
"gutter" "4"
|
||||
"padding" $args.padding
|
||||
"header-style" "none"
|
||||
"footer-style" "none"
|
||||
"icon-rounded" $args.iconRounded
|
||||
"icon-style" "fa-2x"
|
||||
"align" "start"
|
||||
"icon-style" (or $args.iconStyle "fa-2x")
|
||||
"align" $args.align
|
||||
"orientation" ($args.orientation | default "stacked")
|
||||
"hook" "assets/live-card.html"
|
||||
) -}}
|
||||
|
45
component-library/components/cta/cta.bookshop.yml
Normal file
45
component-library/components/cta/cta.bookshop.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
# Metadata about this component, to be used in the CMS
|
||||
spec:
|
||||
structures:
|
||||
- content_blocks
|
||||
label: CTA
|
||||
description: Call to action
|
||||
icon: contact_page
|
||||
tags: []
|
||||
|
||||
# Defines the structure of this component, as well as the default values
|
||||
blueprint:
|
||||
heading:
|
||||
preheading:
|
||||
title:
|
||||
content:
|
||||
align:
|
||||
arrangement:
|
||||
width:
|
||||
size:
|
||||
contact:
|
||||
caption-url:
|
||||
illustration:
|
||||
image:
|
||||
icon:
|
||||
ratio:
|
||||
class:
|
||||
anchor:
|
||||
mode:
|
||||
background:
|
||||
backdrop:
|
||||
color:
|
||||
subtle:
|
||||
links:
|
||||
-
|
||||
title:
|
||||
url:
|
||||
icon:
|
||||
force:
|
||||
align:
|
||||
padding:
|
||||
order:
|
||||
width:
|
||||
fluid:
|
||||
theme:
|
||||
cover:
|
43
component-library/components/cta/cta.hugo.html
Normal file
43
component-library/components/cta/cta.hugo.html
Normal file
@@ -0,0 +1,43 @@
|
||||
{{/*
|
||||
Copyright © 2025 The Hinode Team / Mark Dumay. All rights reserved.
|
||||
Use of this source code is governed by The MIT License (MIT) that can be found in the LICENSE file.
|
||||
Visit gethinode.com/license for more details.
|
||||
*/}}
|
||||
|
||||
{{/* Initialize arguments */}}
|
||||
{{ $args := partial "utilities/InitArgs.html" (dict "bookshop" "cta" "args" .) }}
|
||||
{{ if or $args.err $args.warnmsg }}
|
||||
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
|
||||
"partial" "component-library/components/cta/cta.hugo.html"
|
||||
"warnid" "warn-invalid-arguments"
|
||||
"msg" "Invalid arguments"
|
||||
"details" ($args.errmsg | append $args.warnmsg)
|
||||
"file" page.File
|
||||
)}}
|
||||
{{- end -}}
|
||||
|
||||
{{/* Main code */}}
|
||||
{{ if not $args.error }}
|
||||
{{ $links := slice }}
|
||||
{{ if and (reflect.IsSlice .links) (gt (len .links) 0) }}
|
||||
{{ $links = .links }}
|
||||
{{ else }}
|
||||
{{ with site.Params.modules.bookshop.cta.defaultURL }}
|
||||
{{ $links = $links | append (dict "title" (T "contactAction") "url" . "icon" "fas chevron-right") }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ partial "assets/contact.html" (dict
|
||||
"page" page
|
||||
"orientation" "horizontal"
|
||||
"heading" $args.heading
|
||||
"contact" $args.contact
|
||||
"caption-url" $args.captionUrl
|
||||
"illustration" $args.illustration
|
||||
"class" "contact-img"
|
||||
"links" $links
|
||||
"align" $args.align
|
||||
"order" $args.order
|
||||
"data" site.Params.modules.bookshop.cta.section
|
||||
) }}
|
||||
{{ end }}
|
12
component-library/components/cta/cta.scss
Normal file
12
component-library/components/cta/cta.scss
Normal file
@@ -0,0 +1,12 @@
|
||||
.cta {
|
||||
background-color: var(--#{$prefix}primary-bg-subtle);
|
||||
}
|
||||
|
||||
.cta, .background-img-fluid {
|
||||
border-radius: #{$theme-border-radius} if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
.cta .contact-img {
|
||||
background-color: var(--#{$prefix}body-bg);
|
||||
border-radius: var(--bs-border-radius);
|
||||
}
|
@@ -26,3 +26,6 @@ blueprint:
|
||||
items:
|
||||
- title:
|
||||
description:
|
||||
fluid:
|
||||
theme:
|
||||
cover:
|
||||
|
@@ -16,15 +16,24 @@
|
||||
)}}
|
||||
{{ end }}
|
||||
|
||||
{{/* Initialize global arguments */}}
|
||||
{{- $padding := partial "utilities/GetPadding.html" -}}
|
||||
|
||||
{{/* Main code */}}
|
||||
{{ if not $args.err }}
|
||||
{{ $color := "" }}
|
||||
{{ if $args.contrast }}{{ $color = "white" }}{{ end }}
|
||||
{{- partial "assets/section-title.html" (dict "heading" $args.heading "color" $color "justify" $args.justify) -}}
|
||||
{{- partial "assets/section-title.html" (dict
|
||||
"heading" $args.heading
|
||||
"justify" $args.justify
|
||||
"class" (printf "pb-%d" $padding.y))
|
||||
-}}
|
||||
|
||||
{{ $class := "" }}
|
||||
{{ $id := printf "faq-%s" (md5 (delimit (slice . now) "-")) }}
|
||||
|
||||
<div id="{{ $id }}" class="accordion accordion-faq {{ if $args.contrast }}accordion-faq-contrast text-white {{ end }}accordion-flush mb-3{{ with $class }} {{ . }}{{ end }} col-12 col-md-6 mx-auto">
|
||||
<div id="{{ $id }}" class="accordion accordion-faq {{ if $args.contrast }}accordion-faq-contrast text-white {{ end -}}
|
||||
accordion-flush{{ with $class }} {{ . }}{{ end }} col-12 col-md-6 mx-auto">
|
||||
{{ range $index, $item := $args.items }}
|
||||
<div class="accordion-item">
|
||||
{{- with $item.title -}}
|
||||
|
@@ -35,6 +35,8 @@ blueprint:
|
||||
align:
|
||||
order:
|
||||
overlay-mode:
|
||||
fluid:
|
||||
theme:
|
||||
cover:
|
||||
orientation:
|
||||
width:
|
||||
|
@@ -18,6 +18,7 @@
|
||||
|
||||
{{ if not $args.err }}
|
||||
{{ partial "assets/hero.html" (dict
|
||||
"page" page
|
||||
"breadcrumb" $args.breadcrumb
|
||||
"heading" $args.heading
|
||||
"background" $args.background
|
||||
|
38
component-library/components/panels/panels.bookshop.yml
Normal file
38
component-library/components/panels/panels.bookshop.yml
Normal file
@@ -0,0 +1,38 @@
|
||||
# Metadata about this component, to be used in the CMS
|
||||
spec:
|
||||
structures:
|
||||
- content_blocks
|
||||
label: Panels
|
||||
description: Introduction section
|
||||
icon: check
|
||||
tags: []
|
||||
|
||||
# Defines the structure of this component, as well as the default values
|
||||
blueprint:
|
||||
heading:
|
||||
preheading:
|
||||
heading:
|
||||
content:
|
||||
align:
|
||||
width:
|
||||
cols:
|
||||
padding:
|
||||
background:
|
||||
backdrop:
|
||||
color:
|
||||
subtle:
|
||||
elements:
|
||||
- title:
|
||||
icon:
|
||||
image:
|
||||
mode:
|
||||
content:
|
||||
tab-type:
|
||||
ratio:
|
||||
responsive:
|
||||
class:
|
||||
width:
|
||||
justify:
|
||||
fluid:
|
||||
theme:
|
||||
cover:
|
88
component-library/components/panels/panels.hugo.html
Normal file
88
component-library/components/panels/panels.hugo.html
Normal file
@@ -0,0 +1,88 @@
|
||||
{{/*
|
||||
Copyright © 2025 The Hinode Team / Mark Dumay. All rights reserved.
|
||||
Use of this source code is governed by The MIT License (MIT) that can be found in the LICENSE file.
|
||||
Visit gethinode.com/license for more details.
|
||||
*/}}
|
||||
|
||||
{{ $error := false }}
|
||||
|
||||
{{/* Initialize arguments */}}
|
||||
{{ $args := partial "utilities/InitArgs.html" (dict "bookshop" "panels" "args" .)}}
|
||||
{{ if or $args.err $args.warnmsg }}
|
||||
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
|
||||
"partial" "component-library/components/panels/panels.hugo.html"
|
||||
"warnid" "warn-invalid-arguments"
|
||||
"msg" "Invalid arguments"
|
||||
"details" ($args.errmsg | append $args.warnmsg)
|
||||
"file" page.File
|
||||
)}}
|
||||
{{ $error = $args.err }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Initialize global arguments */}}
|
||||
{{- $breakpoint := partial "utilities/GetBreakpoint.html" -}}
|
||||
{{- $padding := partial "utilities/GetPadding.html" -}}
|
||||
|
||||
{{/* Initialize local variables */}}
|
||||
{{ $list := slice }}
|
||||
{{ $titles := slice }}
|
||||
{{ $toc := slice }}
|
||||
{{ $parentID := printf "panel-%v" (cond (isset . "_ordinal") (index . "_ordinal") (md5 (delimit (slice . now) "-"))) }}
|
||||
{{ $inner := "" }}
|
||||
{{ range $i, $element := $args.elements }}
|
||||
{{ $toc = $toc | append (dict "href" "panel-0-1" "level" 2 "title" $element.title) }}
|
||||
|
||||
{{ $hero := partial "assets/hero.html" (dict
|
||||
"page" page
|
||||
"heading" (dict "content" $element.content "width" 8)
|
||||
"background" $args.background
|
||||
"illustration" (dict "ratio" $args.ratio "icon" $element.icon "image" $element.image "mode" $element.mode "justify" "end")
|
||||
"order" $args.order
|
||||
"link-type" $args.linkType
|
||||
"links" $args.links
|
||||
"orientation" "horizontal"
|
||||
"align" "start"
|
||||
"width" 12
|
||||
"content-style" "fs-6"
|
||||
)
|
||||
}}
|
||||
|
||||
{{- $output := partial "assets/nav-item.html" (dict
|
||||
"page" page
|
||||
"id" $i
|
||||
"parent-id" $parentID
|
||||
"fade" false
|
||||
"title" $element.title
|
||||
"show" (eq $i 0)
|
||||
"raw" $hero
|
||||
)
|
||||
-}}
|
||||
|
||||
{{ $inner = printf "%s\n%s" $inner $output }}
|
||||
{{ $titles = $titles | append $element.title }}
|
||||
{{ end}}
|
||||
|
||||
{{/* Main code */}}
|
||||
{{ if not $error }}
|
||||
{{- partial "assets/section-title.html" (dict
|
||||
"heading" $args.heading
|
||||
"justify" $args.justify
|
||||
"class" (printf "pb-%d" $padding.y))
|
||||
-}}
|
||||
|
||||
{{- partial "assets/nav.html" (dict
|
||||
"id" (or $args.id $parentID)
|
||||
"page" page
|
||||
"nav-items" $inner
|
||||
"nav-titles" $titles
|
||||
"tab-type" $args.tabType
|
||||
"vertical" $args.vertical
|
||||
"word-wrap" $args.wordWrap
|
||||
"class" $args.class
|
||||
"pane" $args.pane
|
||||
"width" $args.width
|
||||
"responsive" $args.responsive
|
||||
)
|
||||
-}}
|
||||
{{ end }}
|
||||
|
13
component-library/components/panels/panels.scss
Normal file
13
component-library/components/panels/panels.scss
Normal file
@@ -0,0 +1,13 @@
|
||||
.panels .dropdown-toggle {
|
||||
text-decoration: none !important;
|
||||
}
|
||||
|
||||
.panels .nav-tabs {
|
||||
border-top-left-radius: #{$theme-border-radius};
|
||||
border-top-right-radius: #{$theme-border-radius};
|
||||
margin-left: #{$theme-border-radius};
|
||||
}
|
||||
|
||||
.panels .tab-content {
|
||||
border-radius: #{$theme-border-radius};
|
||||
}
|
@@ -24,3 +24,6 @@ blueprint:
|
||||
width:
|
||||
justify:
|
||||
data:
|
||||
fluid:
|
||||
theme:
|
||||
cover:
|
||||
|
@@ -6,3 +6,5 @@ spec:
|
||||
description: Inserts a horizontal page section separator
|
||||
icon: horizontal_rule
|
||||
tags: []
|
||||
|
||||
blueprint:
|
||||
|
@@ -4,7 +4,7 @@
|
||||
Visit gethinode.com/license for more details.
|
||||
*/}}
|
||||
|
||||
{{ $args := partial "utilities/InitArgs.html" (dict "structure" "separator" "args" .) }}
|
||||
{{ $args := partial "utilities/InitArgs.html" (dict "bookshop" "separator" "args" .) }}
|
||||
{{ if or $args.err $args.warnmsg }}
|
||||
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
|
||||
"partial" "component-library/components/separator/separator.hugo.html"
|
||||
|
@@ -24,12 +24,14 @@ blueprint:
|
||||
link-type:
|
||||
orientation:
|
||||
icon-rounded:
|
||||
icon-style:
|
||||
video:
|
||||
provider:
|
||||
account:
|
||||
media-id:
|
||||
autoplay:
|
||||
query-args:
|
||||
color:
|
||||
cols:
|
||||
messages:
|
||||
- title:
|
||||
@@ -40,6 +42,9 @@ blueprint:
|
||||
border:
|
||||
width:
|
||||
justify:
|
||||
fluid:
|
||||
theme:
|
||||
cover:
|
||||
|
||||
_structures:
|
||||
messages:
|
||||
|
@@ -16,6 +16,7 @@
|
||||
)}}
|
||||
{{ end }}
|
||||
|
||||
{{/* Initialize global variables */}}
|
||||
{{- $breakpoint := partial "utilities/GetBreakpoint.html" -}}
|
||||
{{- $padding := partial "utilities/GetPadding.html" -}}
|
||||
|
||||
@@ -27,6 +28,7 @@
|
||||
{{ $queryArgs := .queryArgs }}
|
||||
{{ $border := .border }}
|
||||
{{ $padding := .padding }}
|
||||
{{ $color := .color }}
|
||||
|
||||
{{ if site.Params.env_bookshop_live }}
|
||||
{{/* Define dummy content as we cannot retrieve video data in live mode */}}
|
||||
@@ -35,7 +37,7 @@
|
||||
"ratio" "21x9"
|
||||
"wrapper" (printf "text-center mb-%d" $padding.y)) -}}
|
||||
{{ else }}
|
||||
<div class="video-container{{ if $border }} video-container-border{{ end}}">
|
||||
<div class="video-container{{ if $border }} video-container-border{{ end}} {{ with $color }}bg-{{ . }}{{ end }}">
|
||||
{{ partial "assets/video.html" (dict
|
||||
"page" page
|
||||
"provider" $provider
|
||||
@@ -59,6 +61,7 @@
|
||||
{{ $cols := .cols }}
|
||||
{{ $type := .type }}
|
||||
{{ $iconRounded := .iconRounded }}
|
||||
{{ $iconStyle := .iconStyle }}
|
||||
|
||||
{{- partial "assets/card-group.html" (dict
|
||||
"page" page
|
||||
@@ -75,9 +78,11 @@
|
||||
"button" true
|
||||
"link-type" $type
|
||||
"icon-rounded" $iconRounded
|
||||
"icon-style" $iconStyle
|
||||
) -}}
|
||||
{{ end }}
|
||||
|
||||
{{/* Main code */}}
|
||||
{{ if not $args.err }}
|
||||
{{ $list := slice }}
|
||||
|
||||
@@ -96,10 +101,14 @@
|
||||
) }}
|
||||
{{ end}}
|
||||
|
||||
{{- partial "assets/section-title.html" (dict "heading" $args.heading "justify" $args.justify) -}}
|
||||
{{- partial "assets/section-title.html" (dict
|
||||
"heading" $args.heading
|
||||
"justify" $args.justify
|
||||
"class" (printf "pb-%d" $padding.y))
|
||||
-}}
|
||||
|
||||
{{ if eq $args.orientation "stacked" }}
|
||||
<div class="col-{{ $breakpoint.current }}-{{ $args.width }} mx-auto pb-{{ $padding.y }}">
|
||||
<div class="col-{{ $breakpoint.current }}-{{ $args.width }} mx-auto">
|
||||
{{ with $args.video }}
|
||||
{{- partial "inline/video.html" (dict
|
||||
"provider" .provider
|
||||
@@ -109,14 +118,21 @@
|
||||
"query-args" .queryArgs
|
||||
"border" $.border
|
||||
"padding" $padding
|
||||
"color" .color
|
||||
) -}}
|
||||
{{ end }}
|
||||
</div>
|
||||
<div class="mt-{{ $padding.y }} pb-{{ $padding.y }}">
|
||||
{{- partial "inline/messages.html" (dict "list" $list "cols" $args.cols "type" $args.type "iconRounded" $args.iconRounded) -}}
|
||||
<div class="mt-{{ $padding.y }} w-100">
|
||||
{{- partial "inline/messages.html" (dict
|
||||
"list" $list
|
||||
"cols" $args.cols
|
||||
"type" $args.type
|
||||
"iconRounded" $args.iconRounded
|
||||
"iconStyle" $args.iconStyle
|
||||
) -}}
|
||||
</div>
|
||||
{{ else }}
|
||||
<div class="container grid gap-4 pb-{{ $padding.y }}">
|
||||
<div class="container grid gap-{{ $padding.x }}">
|
||||
<div class="row row-cols-1 row-cols-{{ $breakpoint.current }}-2">
|
||||
<div class="col col-{{ $breakpoint.current }}-{{ $args.width }} p-0">
|
||||
{{ with $args.video }}
|
||||
@@ -128,11 +144,18 @@
|
||||
"query-args" .queryArgs
|
||||
"border" $.border
|
||||
"padding" $padding
|
||||
"color" .color
|
||||
) -}}
|
||||
{{ end }}
|
||||
</div>
|
||||
<div class="col col-{{ $breakpoint.current }}-{{ sub 12 $args.width }} mt-{{ $padding.y }} mt-{{ $breakpoint.current }}-0">
|
||||
{{- partial "inline/messages.html" (dict "list" $list "cols" 1 "type" $args.type "iconRounded" $args.iconRounded) -}}
|
||||
{{- partial "inline/messages.html" (dict
|
||||
"list" $list
|
||||
"cols" 1
|
||||
"type" $args.type
|
||||
"iconRounded" $args.iconRounded
|
||||
"iconStyle" $args.iconStyle
|
||||
) -}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@@ -2,6 +2,7 @@
|
||||
--bs-video-border-color: var(--bs-primary);
|
||||
--bs-video-border-width: 1rem;
|
||||
|
||||
border-radius: $theme-border-radius;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
|
@@ -16,6 +16,7 @@
|
||||
{{- $class := index . 2 | default "p-0" -}}
|
||||
{{- $bgclass := index . 3 | default "" -}}
|
||||
{{- $padding := partial "utilities/GetPadding.html" -}}
|
||||
{{- with index $component_props "padding" }}{{ $padding = dict "x" . "y" . }}{{ end -}}
|
||||
{{- $component_path := partial "_bookshop/helpers/component_key" $component_name -}}
|
||||
{{- $flat_component_path := partial "_bookshop/helpers/flat_component_key" $component_name -}}
|
||||
|
||||
@@ -26,30 +27,49 @@
|
||||
{{- $resolved_component = $flat_component_path -}}
|
||||
{{- end -}}
|
||||
|
||||
<!-- TODO: use initialized component args instead of component_props -->
|
||||
{{ $error := false }}
|
||||
{{ $args := dict }}
|
||||
{{- if $resolved_component -}}
|
||||
{{ $args = partial "utilities/InitArgs.html" (dict "bookshop" $component_name "args" $component_props) }}
|
||||
{{ if or $args.err $args.warnmsg }}
|
||||
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
|
||||
"partial" $resolved_component
|
||||
"warnid" "warn-invalid-arguments"
|
||||
"msg" "Invalid arguments"
|
||||
"details" ($args.errmsg | append $args.warnmsg)
|
||||
"file" page.File
|
||||
)}}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and $resolved_component (not $args.err) }}
|
||||
{{- $id := index $component_props "id" -}}
|
||||
{{- $cover := index $component_props "cover" -}}
|
||||
{{- $background := index $component_props "background" -}}
|
||||
{{- $backdrop := "" -}}
|
||||
{{- $style := index $component_props "wrapper" -}}
|
||||
{{- $fluid := index $component_props "fluid" | default true -}}
|
||||
{{- $wrapper := index $component_props "wrapper" -}}
|
||||
{{- $width := index $component_props "width" -}}
|
||||
{{- $justify := index $component_props "justify" | default "start" -}}
|
||||
{{- $padding := cond (ne $component_name "separator") (printf "px-%d px-xxl-0 py-%d" $padding.x $padding.y) "" -}}
|
||||
{{- $wrapper := $style }}
|
||||
{{- $paddingOuter := cond (ne $component_name "separator") (printf "px-xxl-0 px-%d py-0" $padding.x) "" -}}
|
||||
{{- $padding := cond (ne $component_name "separator") (printf "px-%d %spy-%d" $padding.x (cond $fluid "px-xxl-0 " "") $padding.y) "" -}}
|
||||
{{ with $background }}
|
||||
{{ $wrapper = partial "utilities/GetBackgroundStyle.html" (dict "background" . "class" $style) }}
|
||||
{{ $wrapper = partial "utilities/GetBackgroundStyle.html" (dict "background" . "class" $wrapper) }}
|
||||
{{ if reflect.IsMap $background }}
|
||||
{{ with $background.backdrop }}{{ $wrapper = "" }}{{ $backdrop = . }}{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{/* warnf "wrapper: '%s'" $wrapper */}}
|
||||
{{- $theme := index $component_props "theme" -}}
|
||||
{{- $overlayMode := (or (index $component_props "overlay-mode") page.Params.overlayMode) | default "dark" -}}
|
||||
{{ if not $backdrop }}{{ $overlayMode = page.Params.overlayMode }}{{ end }}
|
||||
{{ if eq $overlayMode "none" }}{{ $overlayMode = "" }}{{ end }}
|
||||
|
||||
{{ (printf "<!--bookshop-live name(%s)-->" $component_name) | safeHTML }}
|
||||
<section {{ with $id }}id="{{ . }}" {{ end }}class="{{ $component_name }} container-fluid {{ $class }} {{ with $wrapper }}{{ . }}{{ end -}}
|
||||
{{ if not $fluid }}<div class="container-xxl {{ $paddingOuter }}">{{ end }}
|
||||
<section {{ with $id }}id="{{ . }}" {{ end }}class="{{ $component_name }}
|
||||
container-fluid {{ $class }}
|
||||
{{ with $wrapper }}{{ . }}{{ end -}}
|
||||
{{- if and $backdrop $overlayMode }} background-container{{ end -}}
|
||||
{{- if $cover }} section-cover d-flex align-items-center{{ end }}"
|
||||
{{ with $overlayMode -}}
|
||||
@@ -60,21 +80,29 @@
|
||||
{{- end -}}
|
||||
>
|
||||
{{- if $backdrop -}}
|
||||
{{ partial "assets/live-image.html" (dict "src" $backdrop "class" (printf "background-img-fluid %s" $bgclass) "title" (T "backgroundImage")) }}
|
||||
{{ partial "assets/live-image.html" (dict
|
||||
"src" $backdrop
|
||||
"class" (printf "background-img-fluid %s" $bgclass)
|
||||
"title" (T "backgroundImage"))
|
||||
}}
|
||||
{{- end -}}
|
||||
|
||||
{{ $col := cond (and $width (lt $width 12)) (printf "col-12 col-md-%d" $width) "" }}
|
||||
|
||||
<div class="container-xxl {{ $padding }} d-flex flex-column align-items-{{ $justify }}">
|
||||
{{ with $col }}
|
||||
<div class="{{ . }}">{{ partial $resolved_component $component_props }}</div>
|
||||
{{ else }}
|
||||
{{ partial $resolved_component $component_props }}
|
||||
{{ end}}
|
||||
</div>
|
||||
{{ if $args.passthrough }}
|
||||
{{ partial $resolved_component $component_props }}
|
||||
{{ else }}
|
||||
<div class="container-{{ cond $fluid "xxl" "fluid" }} {{ $padding }} d-flex flex-column align-items-{{ $justify }}">
|
||||
{{ with $col }}
|
||||
<div class="{{ . }}">{{ partial $resolved_component $component_props }}</div>
|
||||
{{ else }}
|
||||
{{ partial $resolved_component $component_props }}
|
||||
{{ end}}
|
||||
</div>
|
||||
{{ end }}
|
||||
</section>
|
||||
{{ if not $fluid }}</div>{{ end }}
|
||||
{{ "<!--bookshop-live end-->" | safeHTML }}
|
||||
{{- else -}}
|
||||
{{- else if (not $args.err) -}}
|
||||
{{- $file_loc := slicestr $component_path 9 -}}
|
||||
{{- $flat_file_loc := slicestr $flat_component_path 9 -}}
|
||||
{{- partial "_bookshop/errors/err" (printf "Component \"%s\" does not exist.\n Create this component by placing a file in your bookshop at %s or %s" $component_name $file_loc $flat_file_loc) -}}
|
||||
|
@@ -176,7 +176,7 @@ home = ["HTML", "RSS", "REDIR", "netlify", "server"]
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-csp"
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-flexsearch/v2"
|
||||
path = "github.com/gethinode/mod-flexsearch/v3"
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-fontawesome/v2"
|
||||
[[module.imports]]
|
||||
@@ -188,7 +188,7 @@ home = ["HTML", "RSS", "REDIR", "netlify", "server"]
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-lottie"
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-mermaid/v2"
|
||||
path = "github.com/gethinode/mod-mermaid/v3"
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-simple-datatables/v2"
|
||||
[[module.imports]]
|
||||
|
@@ -2,9 +2,7 @@
|
||||
[main]
|
||||
separator = "-"
|
||||
description = "Hinode is a clean documentation and blog theme for your Hugo site based on Bootstrap 5."
|
||||
enableDarkMode = true
|
||||
enableLanguageSelectionStorage = false
|
||||
modes = ["light", "dark"]
|
||||
canonifyAssetsURLs = false
|
||||
endorse = true
|
||||
footerBelowFold = false
|
||||
@@ -22,6 +20,12 @@
|
||||
tab = false
|
||||
[main.build]
|
||||
transpiler = "libsass"
|
||||
[main.colorMode]
|
||||
enabled = true
|
||||
modes = ["light", "dark"]
|
||||
toggle = false
|
||||
iconLight = "fas sun"
|
||||
iconDark = "fas moon"
|
||||
# toml-docs-end main
|
||||
|
||||
# toml-docs-start images
|
||||
@@ -84,18 +88,31 @@
|
||||
[navigation]
|
||||
anchor = true
|
||||
logo = "/img/logo_icon.svg"
|
||||
logo-mode = false
|
||||
logo-align = "center"
|
||||
logo-height = 30
|
||||
color = "body"
|
||||
fixed = true
|
||||
overlay = false
|
||||
overlayMode = "dark"
|
||||
horizontal = false
|
||||
offset = "5.5rem"
|
||||
search = true
|
||||
searchModal = false
|
||||
breadcrumb = true
|
||||
toc = true
|
||||
sidebar = true
|
||||
size = "md"
|
||||
startLevel = 2
|
||||
endLevel = 3
|
||||
maxNumHeadings = 9
|
||||
[navigation.padding]
|
||||
x = 4
|
||||
y = 4
|
||||
[navigation.language]
|
||||
icon = "fas globe"
|
||||
[navigation.search]
|
||||
enabled = true
|
||||
modal = true
|
||||
icon = "fas magnifying-glass"
|
||||
# toml-docs-end navigation
|
||||
|
||||
# toml-docs-start messages
|
||||
|
@@ -27,9 +27,10 @@ const purgecss = purgeCSSPlugin({
|
||||
'./assets/scss/theme/fonts.scss',
|
||||
'./assets/scss/theme/theme.scss',
|
||||
'./_vendor/github.com/gethinode/mod-cookieyes/v2/assets/scss/cookieyes.scss',
|
||||
'./_vendor/github.com/gethinode/mod-flexsearch/v2/assets/scss/modules/flexsearch/flexsearch.scss',
|
||||
'./_vendor/github.com/gethinode/mod-flexsearch/v3/assets/scss/modules/flexsearch/flexsearch.scss',
|
||||
'./_vendor/github.com/gethinode/mod-katex/dist/katex.scss',
|
||||
'./_vendor/github.com/gethinode/mod-leaflet/dist/leaflet.scss',
|
||||
'./_vendor/github.com/gethinode/mod-mermaid/v3/assets/scss/mermaid.scss',
|
||||
'./_vendor/github.com/gethinode/mod-simple-datatables/v2/dist/simple-datatables.scss',
|
||||
'./_vendor/github.com/twbs/bootstrap/scss/_carousel.scss',
|
||||
'./_vendor/github.com/twbs/bootstrap/scss/_dropdown.scss',
|
||||
|
@@ -16,8 +16,8 @@ content_blocks:
|
||||
ratio: 16x9
|
||||
width: 8
|
||||
links:
|
||||
- title: About
|
||||
url: about
|
||||
- title: Getting started
|
||||
url: https://gethinode.com/docs
|
||||
icon: fas chevron-right
|
||||
orientation: horizontal
|
||||
justify: center
|
||||
|
8
content/_modals/_index.md
Normal file
8
content/_modals/_index.md
Normal file
@@ -0,0 +1,8 @@
|
||||
---
|
||||
title: Modal elements
|
||||
cascade:
|
||||
- build:
|
||||
list: local
|
||||
publishResources: false
|
||||
render: never
|
||||
---
|
@@ -12,6 +12,7 @@ arguments:
|
||||
class:
|
||||
color:
|
||||
padding:
|
||||
default: 3
|
||||
gutter:
|
||||
release: v0.19.0
|
||||
header-style:
|
||||
@@ -43,6 +44,7 @@ arguments:
|
||||
icon-rounded:
|
||||
release: v1.0.0
|
||||
align:
|
||||
default: start
|
||||
wrapper:
|
||||
default: p-0
|
||||
responsive:
|
||||
@@ -67,6 +69,24 @@ arguments:
|
||||
release: v0.27.0
|
||||
button-label:
|
||||
release: v1.0.0
|
||||
more-link-type:
|
||||
type: select
|
||||
optional: true
|
||||
default: button
|
||||
comment: Style of the more button or link.
|
||||
options:
|
||||
values:
|
||||
- button
|
||||
- link
|
||||
release: v1.16.0
|
||||
more-link-icon:
|
||||
type: string
|
||||
optional: true
|
||||
comment: >-
|
||||
Icon to include. You can use shorthand notation such as `fas sort` to
|
||||
include a Font Awesome icon. The argument also supports files with an
|
||||
`.svg` or `.json` extension.
|
||||
release: v1.16.0
|
||||
|
||||
# deprecated arguments
|
||||
header:
|
||||
|
@@ -15,6 +15,7 @@ arguments:
|
||||
parent: cascade
|
||||
padding:
|
||||
parent: cascade
|
||||
default: 3
|
||||
gutter:
|
||||
default: 0
|
||||
parent: cascade
|
||||
@@ -45,6 +46,7 @@ arguments:
|
||||
icon-rounded:
|
||||
release: v1.0.0
|
||||
align:
|
||||
default: start
|
||||
parent: cascade
|
||||
release: v0.23.0
|
||||
scroll:
|
||||
@@ -71,6 +73,8 @@ arguments:
|
||||
group: partial
|
||||
anchor:
|
||||
release: v0.24.23
|
||||
links:
|
||||
release: v1.14.0
|
||||
# deprecated arguments
|
||||
header:
|
||||
type: select
|
||||
|
36
data/structures/contact.yml
Normal file
36
data/structures/contact.yml
Normal file
@@ -0,0 +1,36 @@
|
||||
comment: >-
|
||||
Displays a contact banner, typically placed at the bottom or right-hand side of the page.
|
||||
arguments:
|
||||
page:
|
||||
data:
|
||||
heading:
|
||||
contact:
|
||||
type: string
|
||||
optional: false
|
||||
comment: >-
|
||||
The full name of the contact to retrieve.
|
||||
caption-url:
|
||||
type:
|
||||
- string
|
||||
- template.URL
|
||||
optional: true
|
||||
comment: >-
|
||||
Address of the contact's page, either a local reference or an external
|
||||
address. Include the `scheme` when referencing an external address, such
|
||||
as `https://google.com`. Local references may include an optional anchor
|
||||
link such as `blog/bootstrap-elements/#docs`.
|
||||
illustration:
|
||||
background:
|
||||
link-type:
|
||||
links:
|
||||
align:
|
||||
order:
|
||||
default: first
|
||||
orientation:
|
||||
width:
|
||||
justify:
|
||||
class:
|
||||
width:
|
||||
default: 12
|
||||
hook:
|
||||
default: assets/hero-image.html
|
@@ -3,6 +3,7 @@ comment: >-
|
||||
supports a heading, featured illustration, and navigation links. You can
|
||||
can also add a background image with an overlay to improve contrast.
|
||||
arguments:
|
||||
page:
|
||||
breadcrumb:
|
||||
heading:
|
||||
background:
|
||||
@@ -18,11 +19,15 @@ arguments:
|
||||
justify:
|
||||
use-section:
|
||||
use-title:
|
||||
size:
|
||||
class:
|
||||
padding:
|
||||
default: px-4 px-xxl-0 py-4
|
||||
width:
|
||||
default: 8
|
||||
fluid:
|
||||
theme:
|
||||
hook:
|
||||
default: assets/hero-image.html
|
||||
heading-style:
|
||||
content-style:
|
||||
|
@@ -15,6 +15,9 @@ arguments:
|
||||
class:
|
||||
body:
|
||||
group: partial
|
||||
raw:
|
||||
group: partial
|
||||
release: v1.3.0
|
||||
navitem-type:
|
||||
release: v1.0.0
|
||||
illustration:
|
||||
|
@@ -22,6 +22,8 @@ arguments:
|
||||
release: v1.0.0
|
||||
class:
|
||||
pane:
|
||||
responsive:
|
||||
release: v1.4.0
|
||||
width:
|
||||
default: 12
|
||||
group: partial
|
||||
|
@@ -9,7 +9,9 @@ arguments:
|
||||
comment: Context of the current page.
|
||||
group: partial
|
||||
menu:
|
||||
type: '*navigation.MenuEntry'
|
||||
type:
|
||||
- '*navigation.MenuEntry'
|
||||
- 'map[string]interface {}'
|
||||
optional: false
|
||||
comment: Menu data to use for the navbar item.
|
||||
parent:
|
||||
@@ -37,3 +39,24 @@ arguments:
|
||||
optional: true
|
||||
comment: >-
|
||||
Renders the navigation item as plain item, ignoring any children.
|
||||
breakpoint:
|
||||
release: v1.2.0
|
||||
modal:
|
||||
type: string
|
||||
optional: true
|
||||
release: v1.2.0
|
||||
comment: >-
|
||||
If set, toggles a modal control for the provided target.
|
||||
id:
|
||||
type: string
|
||||
optional: true
|
||||
release: v1.2.0
|
||||
comment: >-
|
||||
If set, adds an id attribute to the menu item.
|
||||
fs:
|
||||
type: int
|
||||
optional: true
|
||||
default: 6
|
||||
release: v1.2.0
|
||||
comment: >-
|
||||
Sets the font size of the navigation items when the navbar is collapsed.
|
||||
|
@@ -79,6 +79,25 @@ arguments:
|
||||
comment: >-
|
||||
Address of the logo image, defaults to the parameter `logo` set in the
|
||||
`main` section of the site's parameter configuration.
|
||||
logo-align:
|
||||
type: select
|
||||
optional: true
|
||||
default: center
|
||||
comment: Alignment of the logo when the navbar is in collapsed mode.
|
||||
options:
|
||||
values:
|
||||
- start
|
||||
- center
|
||||
release: v1.15.0
|
||||
logo-mode:
|
||||
type: bool
|
||||
default: false
|
||||
optional: true
|
||||
comment: >-
|
||||
Flag indicating if the logo should support color modes. If set, the
|
||||
navbar searches for images having a matching color-mode suffix
|
||||
such as `-light` or `-dark`.
|
||||
release: v1.15.0
|
||||
# deprecated arguments
|
||||
size:
|
||||
type: select
|
||||
|
@@ -1,6 +1,6 @@
|
||||
comment: >-
|
||||
Includes a reference to a local or external JavaScript file. Hinode uses the
|
||||
template defined in `layouts/partials/templates/script.html` to generate the
|
||||
template defined in `layouts/_partials/templates/script.html` to generate the
|
||||
link to a (bundled) JavaScript file. It includes context such as the state,
|
||||
category, and integrity. For example, you can adapt this template to implement
|
||||
cookie consent management.
|
||||
@@ -44,3 +44,10 @@ arguments:
|
||||
optional: true
|
||||
comment: >-
|
||||
Cryptographic hash of the script to enable Subresource Integrity (SRI).
|
||||
script-type:
|
||||
type: string
|
||||
optional: true
|
||||
release: v1.7.0
|
||||
comment: >-
|
||||
Type of the attribute of the script. Set the value to `module` to import
|
||||
the script as a JavaScript module.
|
||||
|
@@ -1,20 +0,0 @@
|
||||
comment: >-
|
||||
Inserts a horizontal page section separator.
|
||||
arguments:
|
||||
_bookshop_name:
|
||||
type: string
|
||||
optional: true
|
||||
comment: Unique name of the bookshop component
|
||||
group: partial
|
||||
page:
|
||||
type:
|
||||
- '*hugolib.pageState'
|
||||
- '*hugolib.pageForShortcode'
|
||||
optional: true
|
||||
comment: Context of the current page.
|
||||
group: partial
|
||||
theme:
|
||||
type: string
|
||||
optional: true
|
||||
comment: Color theme to apply.
|
||||
release: v1.0.0-alpha
|
@@ -7,3 +7,9 @@ arguments:
|
||||
optional: false
|
||||
comment: Context of the current page.
|
||||
group: partial
|
||||
show-label:
|
||||
type: bool
|
||||
optional: true
|
||||
default: true
|
||||
comment: Indicates if the element should include a label.
|
||||
release: v1.15.3
|
@@ -29,13 +29,16 @@ arguments:
|
||||
optional: true
|
||||
comment: Array of pages or structured content to be rendered as cards.
|
||||
group: partial
|
||||
limit:
|
||||
max:
|
||||
type: int
|
||||
optional: true
|
||||
comment: Maximum number of cards to display.
|
||||
comment: Maximum number of elements to display.
|
||||
group: partial
|
||||
options:
|
||||
min: 1
|
||||
deprecated: v1.16.2
|
||||
alternative: limit
|
||||
cols:
|
||||
type: select
|
||||
optional: true
|
||||
@@ -57,6 +60,9 @@ arguments:
|
||||
Address for the button or hyperlink. If set, a button is added if the
|
||||
list exceeds the maximum number of cards to display.
|
||||
group: partial
|
||||
href-force:
|
||||
release: v1.16.2
|
||||
group: partial
|
||||
hrefTitle:
|
||||
type: string
|
||||
optional: true
|
||||
@@ -87,4 +93,5 @@ arguments:
|
||||
comment: >-
|
||||
Styles to apply to the individual cards. Supported elements are `ratio`,
|
||||
`orientation`, `portrait`, and `width`.
|
||||
|
||||
padding:
|
||||
release: v1.16.2
|
||||
|
BIN
exampleSite/assets/img/foto-sushi-6anudmpILw4-unsplash-1x1.png
Normal file
BIN
exampleSite/assets/img/foto-sushi-6anudmpILw4-unsplash-1x1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 665 KiB |
BIN
exampleSite/assets/img/jake-nackos-IF9TK5Uy-KI-unsplash.png
Normal file
BIN
exampleSite/assets/img/jake-nackos-IF9TK5Uy-KI-unsplash.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.2 MiB |
BIN
exampleSite/assets/img/joseph-gonzalez-iFgRcqHznqg-unsplash.png
Normal file
BIN
exampleSite/assets/img/joseph-gonzalez-iFgRcqHznqg-unsplash.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.6 MiB |
@@ -115,7 +115,7 @@ home = ["HTML", "RSS", "REDIR", "netlify", "server"]
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-csp"
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-flexsearch/v2"
|
||||
path = "github.com/gethinode/mod-flexsearch/v3"
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-fontawesome/v2"
|
||||
[[module.imports]]
|
||||
|
@@ -1,9 +1,7 @@
|
||||
[main]
|
||||
separator = "-"
|
||||
description = "Hinode is a clean documentation and blog theme for your Hugo site based on Bootstrap 5."
|
||||
enableDarkMode = true
|
||||
enableLanguageSelectionStorage = true
|
||||
modes = ["light", "dark"]
|
||||
canonifyAssetsURLs = false
|
||||
footerBelowFold = false
|
||||
loading = "lazy"
|
||||
@@ -21,6 +19,12 @@
|
||||
[main.build]
|
||||
transpiler = "dartsass"
|
||||
silenceDeprecations = true
|
||||
[main.colorMode]
|
||||
enabled = true
|
||||
modes = ["light", "dark"]
|
||||
toggle = true
|
||||
iconLight = "fas sun"
|
||||
iconDark = "fas moon"
|
||||
|
||||
[debugging]
|
||||
showJS = false
|
||||
@@ -37,6 +41,9 @@
|
||||
[navigation]
|
||||
anchor = true
|
||||
logo = "/img/logo_icon.svg"
|
||||
logo-mode = false
|
||||
logo-align = "center"
|
||||
logo-height = 30
|
||||
color = "body"
|
||||
fixed = true
|
||||
overlay = false
|
||||
@@ -44,12 +51,23 @@
|
||||
horizontal = false
|
||||
offset = "5.5rem"
|
||||
offsetXS = "5.5rem"
|
||||
search = true
|
||||
searchModal = false
|
||||
breadcrumb = true
|
||||
toc = true
|
||||
sidebar = true
|
||||
size = "md"
|
||||
fontsizeCollapsed = 6
|
||||
startLevel = 2
|
||||
endLevel = 3
|
||||
maxNumHeadings = 9
|
||||
[navigation.language]
|
||||
icon = "fas globe"
|
||||
[navigation.padding]
|
||||
x = 4
|
||||
y = 4
|
||||
[navigation.search]
|
||||
enabled = true
|
||||
modal = false
|
||||
icon = "fas magnifying-glass"
|
||||
|
||||
[messages]
|
||||
placement = "bottom-right"
|
||||
@@ -165,3 +183,6 @@
|
||||
|
||||
[modules.cookieyes]
|
||||
url = "https://cdn-cookieyes.com/client_data/a54b5553f349dd13bd225f8e/script.js"
|
||||
|
||||
[modules.mermaid]
|
||||
elk = true
|
||||
|
@@ -27,9 +27,10 @@ const purgecss = purgeCSSPlugin({
|
||||
'./assets/scss/theme/fonts.scss',
|
||||
'./assets/scss/theme/theme.scss',
|
||||
'./_vendor/github.com/gethinode/mod-cookieyes/v2/assets/scss/cookieyes.scss',
|
||||
'./_vendor/github.com/gethinode/mod-flexsearch/v2/assets/scss/modules/flexsearch/flexsearch.scss',
|
||||
'./_vendor/github.com/gethinode/mod-flexsearch/v3/assets/scss/modules/flexsearch/flexsearch.scss',
|
||||
'./_vendor/github.com/gethinode/mod-katex/dist/katex.scss',
|
||||
'./_vendor/github.com/gethinode/mod-leaflet/dist/leaflet.scss',
|
||||
'./_vendor/github.com/gethinode/mod-mermaid/v3/assets/scss/mermaid.scss',
|
||||
'./_vendor/github.com/gethinode/mod-simple-datatables/v2/dist/simple-datatables.scss',
|
||||
'./_vendor/github.com/twbs/bootstrap/scss/_carousel.scss',
|
||||
'./_vendor/github.com/twbs/bootstrap/scss/_dropdown.scss',
|
||||
|
@@ -56,6 +56,7 @@ content_blocks:
|
||||
cols: 1
|
||||
padding: 4
|
||||
limit: 2
|
||||
icon-style: fa-5x
|
||||
header-style: none
|
||||
footer-style: tags
|
||||
orientation: horizontal-sm
|
||||
|
@@ -25,9 +25,10 @@ content_blocks:
|
||||
more:
|
||||
title: More Posts
|
||||
cols: 3
|
||||
padding: 0
|
||||
padding: 3
|
||||
limit: 9
|
||||
paginate: true
|
||||
cover: false
|
||||
header-style: none
|
||||
class: border-1
|
||||
---
|
||||
|
@@ -24,14 +24,19 @@ The `cards` content block renders a group of content cards.
|
||||
subtle: true
|
||||
orientation: stacked
|
||||
icon-rounded: true
|
||||
class: text-center
|
||||
icon-style: fa-xs
|
||||
padding: 0
|
||||
align: start
|
||||
elements:
|
||||
- title: First Card
|
||||
icon: fas 1
|
||||
content: Content of the first card
|
||||
- title: Second Card
|
||||
icon: fas 2
|
||||
content: Content of the second card
|
||||
- title: Third Card
|
||||
icon: fas 3
|
||||
content: Content of the third card
|
||||
```
|
||||
|
||||
{{< /example-bookshop >}}
|
||||
@@ -42,3 +47,145 @@ The `cards` content block renders a group of content cards.
|
||||
The content block supports the following arguments:
|
||||
|
||||
{{< args bookshop-cards >}}
|
||||
|
||||
## Examples
|
||||
|
||||
### Stacked cards with an image
|
||||
|
||||
Set the `image` attribute of each `element` to an image asset to render illustrated cards.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example-bookshop lang="bookshop" >}}
|
||||
|
||||
```yml
|
||||
- _bookshop_name: cards
|
||||
heading:
|
||||
preheading: Preheading
|
||||
title: Heading
|
||||
content: Cards content. It supports multiple lines.
|
||||
align: start
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
orientation: stacked
|
||||
class: bg-body
|
||||
align: center
|
||||
elements:
|
||||
- title: First Card
|
||||
image: /img/nat-9l98kFByiao-unsplash.jpg
|
||||
- title: Second Card
|
||||
image: /img/nat-9l98kFByiao-unsplash.jpg
|
||||
- title: Third Card
|
||||
image: /img/nat-9l98kFByiao-unsplash.jpg
|
||||
```
|
||||
|
||||
{{< /example-bookshop >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
### Horizontal cards with an image
|
||||
|
||||
Set the `orientation` attribute to `horizontal` to render horizontally oriented cards.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example-bookshop lang="bookshop" >}}
|
||||
|
||||
```yml
|
||||
- _bookshop_name: cards
|
||||
heading:
|
||||
preheading: Preheading
|
||||
title: Heading
|
||||
content: Cards content. It supports multiple lines.
|
||||
align: start
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
orientation: horizontal
|
||||
class: bg-body
|
||||
align: center
|
||||
elements:
|
||||
- title: First Card
|
||||
image: /img/nat-9l98kFByiao-unsplash.jpg
|
||||
content: Content of the first card
|
||||
- title: Second Card
|
||||
image: /img/nat-9l98kFByiao-unsplash.jpg
|
||||
content: Content of the second card
|
||||
- title: Third Card
|
||||
image: /img/nat-9l98kFByiao-unsplash.jpg
|
||||
content: Content of the third card
|
||||
```
|
||||
|
||||
{{< /example-bookshop >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
### Stacked cards with an icon
|
||||
|
||||
Set the `icon` attribute of each `element` to an icon to render illustrated cards. Adjust the icon's styling with `icon-rounded` and `icon-style`.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example-bookshop lang="bookshop" >}}
|
||||
|
||||
```yml
|
||||
- _bookshop_name: cards
|
||||
heading:
|
||||
preheading: Preheading
|
||||
title: Heading
|
||||
content: Cards content. It supports multiple lines.
|
||||
align: start
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
orientation: stacked
|
||||
icon-style: fa-xs text-primary
|
||||
align: start
|
||||
padding: 0
|
||||
elements:
|
||||
- title: First Card
|
||||
icon: fas 1
|
||||
content: Content of the first card
|
||||
- title: Second Card
|
||||
icon: fas 2
|
||||
content: Content of the second card
|
||||
- title: Third Card
|
||||
icon: fas 3
|
||||
content: Content of the third card
|
||||
```
|
||||
|
||||
{{< /example-bookshop >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
### Horizontal cards with an icon
|
||||
|
||||
Set the `icon` attribute of each `element` to an icon to render illustrated cards. Adjust the icon's styling with `icon-rounded` and `icon-style`.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example-bookshop lang="bookshop" >}}
|
||||
|
||||
```yml
|
||||
- _bookshop_name: cards
|
||||
heading:
|
||||
preheading: Preheading
|
||||
title: Heading
|
||||
content: Cards content. It supports multiple lines.
|
||||
align: start
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
orientation: horizontal
|
||||
icon-rounded: true
|
||||
icon-style: fa-2xs text-primary
|
||||
align: start
|
||||
padding: 0
|
||||
elements:
|
||||
- title: First Card
|
||||
icon: fas 1
|
||||
content: Content of the first card
|
||||
- title: Second Card
|
||||
icon: fas 2
|
||||
content: Content of the second card
|
||||
- title: Third Card
|
||||
icon: fas 3
|
||||
content: Content of the third card
|
||||
```
|
||||
|
||||
{{< /example-bookshop >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
36
exampleSite/content/en/blocks/cta.md
Normal file
36
exampleSite/content/en/blocks/cta.md
Normal file
@@ -0,0 +1,36 @@
|
||||
---
|
||||
_schema: default
|
||||
title: CTA
|
||||
description: Use the CTA content block to display an action link with an optional contact.
|
||||
icon: fas address-card
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
The `cta` content block renders a call to action link or button. You can include an optional contact or provide your own illustration. By default, the `cta` uses a generic title and message. Set the `heading` attribute to override these values.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example-bookshop lang="bookshop" >}}
|
||||
|
||||
```yml
|
||||
- _bookshop_name: cta
|
||||
contact: Betty White
|
||||
caption-url: /en/blocks/cta/
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
order: first
|
||||
links:
|
||||
- title: Get in touch
|
||||
url: '#!'
|
||||
icon: fas chevron-right
|
||||
```
|
||||
|
||||
{{< /example-bookshop >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Arguments
|
||||
|
||||
The content block supports the following arguments:
|
||||
|
||||
{{< args bookshop-cta >}}
|
189
exampleSite/content/en/blocks/panels.md
Normal file
189
exampleSite/content/en/blocks/panels.md
Normal file
@@ -0,0 +1,189 @@
|
||||
---
|
||||
_schema: default
|
||||
title: Panels
|
||||
description: Use the panels content block to display multiple toggable panels.
|
||||
icon: fa folder
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
The `panels` content block displays multiple panels that are toggled by a tab control.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example-bookshop lang="bookshop" >}}
|
||||
|
||||
```yml
|
||||
- _bookshop_name: panels
|
||||
heading:
|
||||
preheading: Preheading
|
||||
title: Heading
|
||||
content: Panels content. It supports multiple lines.
|
||||
align: start
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
width: 12
|
||||
tab-type: underline
|
||||
ratio: 1x1
|
||||
elements:
|
||||
- title: First Panel
|
||||
image: /img/sunrise.jpg
|
||||
content: content 1
|
||||
- title: Second Panel
|
||||
image: /img/nat-9l98kFByiao-unsplash.jpg
|
||||
content: content 2
|
||||
- title: Third Panel
|
||||
image: /img/pj-accetturo-XpD6Dkui-yg-unsplash.jpg
|
||||
content: content 3
|
||||
```
|
||||
|
||||
{{< /example-bookshop >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Arguments
|
||||
|
||||
The content block supports the following arguments:
|
||||
|
||||
{{< args bookshop-panels >}}
|
||||
|
||||
## Examples
|
||||
|
||||
### Tabs
|
||||
|
||||
Set `tab-type` to `tabs` to adjust the panel controls.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example-bookshop lang="bookshop" >}}
|
||||
|
||||
```yml
|
||||
- _bookshop_name: panels
|
||||
heading:
|
||||
preheading: Preheading
|
||||
title: Heading
|
||||
content: Panels content. It supports multiple lines.
|
||||
align: start
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
width: 12
|
||||
tab-type: tabs
|
||||
ratio: 1x1
|
||||
elements:
|
||||
- title: First Panel
|
||||
image: /img/sunrise.jpg
|
||||
content: content 1
|
||||
- title: Second Panel
|
||||
image: /img/nat-9l98kFByiao-unsplash.jpg
|
||||
content: content 2
|
||||
- title: Third Panel
|
||||
image: /img/pj-accetturo-XpD6Dkui-yg-unsplash.jpg
|
||||
content: content 3
|
||||
```
|
||||
|
||||
{{< /example-bookshop >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
### Pills
|
||||
|
||||
Set `tab-type` to `pills` to adjust the panel controls.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example-bookshop lang="bookshop" >}}
|
||||
|
||||
```yml
|
||||
- _bookshop_name: panels
|
||||
heading:
|
||||
preheading: Preheading
|
||||
title: Heading
|
||||
content: Panels content. It supports multiple lines.
|
||||
align: start
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
width: 12
|
||||
tab-type: pills
|
||||
ratio: 1x1
|
||||
elements:
|
||||
- title: First Panel
|
||||
image: /img/sunrise.jpg
|
||||
content: content 1
|
||||
- title: Second Panel
|
||||
image: /img/nat-9l98kFByiao-unsplash.jpg
|
||||
content: content 2
|
||||
- title: Third Panel
|
||||
image: /img/pj-accetturo-XpD6Dkui-yg-unsplash.jpg
|
||||
content: content 3
|
||||
```
|
||||
|
||||
{{< /example-bookshop >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
### Underline
|
||||
|
||||
Set `tab-type` to `underline` to adjust the panel controls.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example-bookshop lang="bookshop" >}}
|
||||
|
||||
```yml
|
||||
- _bookshop_name: panels
|
||||
heading:
|
||||
preheading: Preheading
|
||||
title: Heading
|
||||
content: Panels content. It supports multiple lines.
|
||||
align: start
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
width: 12
|
||||
tab-type: underline
|
||||
ratio: 1x1
|
||||
elements:
|
||||
- title: First Panel
|
||||
image: /img/sunrise.jpg
|
||||
content: content 1
|
||||
- title: Second Panel
|
||||
image: /img/nat-9l98kFByiao-unsplash.jpg
|
||||
content: content 2
|
||||
- title: Third Panel
|
||||
image: /img/pj-accetturo-XpD6Dkui-yg-unsplash.jpg
|
||||
content: content 3
|
||||
```
|
||||
|
||||
{{< /example-bookshop >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
### Callout
|
||||
|
||||
Set `tab-type` to `callout` to adjust the panel controls.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example-bookshop lang="bookshop" >}}
|
||||
|
||||
```yml
|
||||
- _bookshop_name: panels
|
||||
heading:
|
||||
preheading: Preheading
|
||||
title: Heading
|
||||
content: Panels content. It supports multiple lines.
|
||||
align: start
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
width: 12
|
||||
tab-type: callout
|
||||
ratio: 1x1
|
||||
elements:
|
||||
- title: First Panel
|
||||
image: /img/sunrise.jpg
|
||||
content: content 1
|
||||
- title: Second Panel
|
||||
image: /img/nat-9l98kFByiao-unsplash.jpg
|
||||
content: content 2
|
||||
- title: Third Panel
|
||||
image: /img/pj-accetturo-XpD6Dkui-yg-unsplash.jpg
|
||||
content: content 3
|
||||
```
|
||||
|
||||
{{< /example-bookshop >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
@@ -24,10 +24,12 @@ The `video` content block renders a horizontal line to separate sections. The se
|
||||
color: primary
|
||||
subtle: true
|
||||
orientation: horizontal
|
||||
icon-style: fa-lg
|
||||
video:
|
||||
provider: vimeo
|
||||
media-id: "55073825"
|
||||
autoplay: true
|
||||
color: black
|
||||
messages:
|
||||
- title: First Message
|
||||
icon: fas 1
|
||||
|
@@ -4,7 +4,7 @@ title: Components
|
||||
date: 2023-09-23
|
||||
description: Use shortcodes to add predefined components powered by external libraries.
|
||||
tags: ["bootstrap", "shortcode"]
|
||||
keywords: ["featured"]
|
||||
keywords: featured
|
||||
thumbnail:
|
||||
url: img/puzzle.jpg
|
||||
author: Ryoji Iwata
|
||||
@@ -94,6 +94,22 @@ As an example, the following shortcode displays an interactive map of the city o
|
||||
|
||||
## Mermaid Diagrams
|
||||
|
||||
### Shortcode (with controls and frontmatter)
|
||||
|
||||
<!-- markdownlint-disable MD003 MD022 -->
|
||||
{{< mermaid controls=true >}}
|
||||
---
|
||||
config:
|
||||
layout: elk.stress
|
||||
look: handDrawn
|
||||
theme: forest
|
||||
---
|
||||
flowchart TD
|
||||
A --> B
|
||||
A --> C
|
||||
{{< /mermaid >}}
|
||||
<!-- markdownlint-enable MD003 MD022 -->
|
||||
|
||||
### Flowchart
|
||||
|
||||
```mermaid
|
||||
|
@@ -4,7 +4,7 @@ title: Content blocks
|
||||
date: 2025-06-07
|
||||
description: Quickly edit your webpages using reusable content blocks.
|
||||
tags: ["bookshop", "blocks"]
|
||||
keywords: ["featured"]
|
||||
keywords: featured
|
||||
thumbnail:
|
||||
url: img/pj-accetturo-XpD6Dkui-yg-unsplash.jpg
|
||||
author: Pj Accetturo
|
||||
|
@@ -2,14 +2,63 @@
|
||||
author: Mark Dumay
|
||||
title: Bienvenue sur Hinode!
|
||||
description: Un thème de blog et de documentation pour Hugo basé sur Bootstrap 5.
|
||||
thumbnail:
|
||||
url: /img/sunrise.jpg
|
||||
author: Harris Vo
|
||||
authorURL: https://unsplash.com/@hoanvokim
|
||||
origin: https://unsplash.com/photos/ZX6BPboJrYk
|
||||
originName: Unsplash
|
||||
actions:
|
||||
about:
|
||||
url: "a-propos"
|
||||
title: "À propos"
|
||||
content_blocks:
|
||||
- _bookshop_name: hero
|
||||
heading:
|
||||
title: Bienvenue sur Hinode!
|
||||
content: |-
|
||||
Un thème de blog et de documentation pour Hugo basé sur Bootstrap 5.
|
||||
width: 6
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
illustration:
|
||||
image: /img/sunrise.jpg
|
||||
ratio: 16x9
|
||||
width: 8
|
||||
links:
|
||||
- title: À propos
|
||||
url: "/fr/a-propos/"
|
||||
icon: fas chevron-right
|
||||
orientation: horizontal
|
||||
justify: center
|
||||
|
||||
- _bookshop_name: articles
|
||||
heading:
|
||||
title: Articles de blog
|
||||
align: start
|
||||
input:
|
||||
section: blog
|
||||
reverse: true
|
||||
sort: date
|
||||
keywords: featured
|
||||
hide-empty: false
|
||||
header-style: none
|
||||
more:
|
||||
title: Plus d'articles
|
||||
padding: 0
|
||||
limit: 3
|
||||
class: border-0 card-zoom card-body-margin
|
||||
|
||||
- _bookshop_name: articles
|
||||
heading:
|
||||
title: Projets
|
||||
align: start
|
||||
background:
|
||||
background: body-tertiary
|
||||
hide-empty: false
|
||||
input:
|
||||
section: projects
|
||||
reverse: false
|
||||
sort: date
|
||||
more:
|
||||
title: Plus d'articles
|
||||
cols: 1
|
||||
padding: 4
|
||||
limit: 2
|
||||
icon-style: fa-5x
|
||||
header-style: none
|
||||
footer-style: tags
|
||||
orientation: horizontal-sm
|
||||
class: border-1 card-emphasize
|
||||
---
|
||||
|
@@ -5,6 +5,7 @@ slug: elements-bootstrap
|
||||
date: 2023-08-12
|
||||
description: Utilisez des shortcodes pour ajouter facilement des éléments Bootstrap courants.
|
||||
tags: ["bootstrap", "shortcode"]
|
||||
keywords: featured
|
||||
thumbnail:
|
||||
url: img/boots.jpg
|
||||
author: Nathan Dumlao
|
||||
|
@@ -5,6 +5,7 @@ slug: composents
|
||||
date: 2023-07-21
|
||||
description: Utilisez des shortcodes pour ajouter des composants prédéfinis alimentés par des bibliothèques externes.
|
||||
tags: ["bootstrap", "shortcode"]
|
||||
keywords: featured
|
||||
thumbnail:
|
||||
url: img/puzzle.jpg
|
||||
author: Ryoji Iwata
|
||||
|
@@ -4,6 +4,7 @@ title: Images locales et distantes
|
||||
date: 2024-05-19
|
||||
description: Inclure des images responsives provenant de sources locales et de certains fournisseurs de CDN d'images.
|
||||
tags: ["blog"]
|
||||
keywords: featured
|
||||
thumbnail:
|
||||
url: https://assets.imgix.net/examples/bluehat.jpg
|
||||
---
|
||||
|
@@ -2,14 +2,62 @@
|
||||
author: Mark Dumay
|
||||
title: Welkom bij Hinode!
|
||||
description: Een documentatie en blog thema voor Hugo gebaseerd op Bootstrap 5.
|
||||
thumbnail:
|
||||
url: /img/sunrise.jpg
|
||||
author: Harris Vo
|
||||
authorURL: https://unsplash.com/@hoanvokim
|
||||
origin: https://unsplash.com/photos/ZX6BPboJrYk
|
||||
originName: Unsplash
|
||||
actions:
|
||||
about:
|
||||
url: "over-mij"
|
||||
title: "Over mij"
|
||||
content_blocks:
|
||||
- _bookshop_name: hero
|
||||
heading:
|
||||
title: Welkom bij Hinode!
|
||||
content: |-
|
||||
Een documentatie en blog thema voor Hugo gebaseerd op Bootstrap 5.
|
||||
width: 6
|
||||
background:
|
||||
color: primary
|
||||
subtle: true
|
||||
illustration:
|
||||
image: /img/sunrise.jpg
|
||||
ratio: 16x9
|
||||
width: 8
|
||||
links:
|
||||
- title: "Over mij"
|
||||
url: "/nl/over-mij/"
|
||||
icon: fas chevron-right
|
||||
orientation: horizontal
|
||||
justify: center
|
||||
|
||||
- _bookshop_name: articles
|
||||
heading:
|
||||
title: Blog
|
||||
align: start
|
||||
input:
|
||||
section: blog
|
||||
reverse: true
|
||||
sort: date
|
||||
hide-empty: false
|
||||
header-style: none
|
||||
more:
|
||||
title: Meer artikelen
|
||||
padding: 0
|
||||
limit: 3
|
||||
class: border-0 card-zoom card-body-margin
|
||||
|
||||
- _bookshop_name: articles
|
||||
heading:
|
||||
title: Projecten
|
||||
align: start
|
||||
background:
|
||||
background: body-tertiary
|
||||
hide-empty: false
|
||||
input:
|
||||
section: projects
|
||||
reverse: false
|
||||
sort: date
|
||||
more:
|
||||
title: Meer artikelen
|
||||
cols: 1
|
||||
padding: 4
|
||||
limit: 2
|
||||
icon-style: fa-5x
|
||||
header-style: none
|
||||
footer-style: tags
|
||||
orientation: horizontal-sm
|
||||
class: border-1 card-emphasize
|
||||
---
|
||||
|
45
exampleSite/data/contacts.en.yml
Normal file
45
exampleSite/data/contacts.en.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
- name: Alex Smith
|
||||
preferred: Alex
|
||||
image: /assets/img/joseph-gonzalez-iFgRcqHznqg-unsplash.png
|
||||
function: Digital Strategy Lead
|
||||
linkedin: https://www.linkedin.com
|
||||
keywords:
|
||||
- transformation
|
||||
biography: >-
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut accumsan
|
||||
venenatis dapibus. Proin placerat mauris ac interdum gravida. Proin
|
||||
consequat feugiat sagittis. Sed vel augue nec est auctor semper. Curabitur
|
||||
mauris ante, euismod eu sem in, sagittis porttitor urna. Mauris sodales at
|
||||
quam condimentum malesuada. Vivamus erat augue, euismod nec ligula quis,
|
||||
molestie lobortis ante. Proin venenatis non diam ac interdum.
|
||||
|
||||
- name: Betty White
|
||||
preferred: Betty
|
||||
image: /assets/img/jake-nackos-IF9TK5Uy-KI-unsplash.png
|
||||
function: UX Expert
|
||||
linkedin: https://www.linkedin.com
|
||||
keywords:
|
||||
- experience
|
||||
biography: >-
|
||||
Duis rutrum, justo eleifend sagittis facilisis, leo orci hendrerit elit, ac
|
||||
tristique nisl justo non neque. Mauris semper egestas massa, nec dapibus ex
|
||||
tincidunt nec. Quisque lectus quam, finibus sed hendrerit id, accumsan eget
|
||||
sapien. Nam facilisis diam eu felis tempus euismod. Nullam id neque
|
||||
fringilla purus vestibulum mattis elementum vitae lectus. Fusce vel libero
|
||||
consectetur urna egestas molestie eget sit amet elit.
|
||||
|
||||
- name: Charles Green
|
||||
preferred: Charles
|
||||
image: /assets/img/foto-sushi-6anudmpILw4-unsplash-1x1.png
|
||||
function: UX Expert
|
||||
linkedin: https://www.linkedin.com
|
||||
keywords:
|
||||
- technology
|
||||
- transformation
|
||||
- experience
|
||||
biography: >-
|
||||
Suspendisse potenti. Aenean elit nisl, viverra eu volutpat at, sodales a sem.
|
||||
Aliquam blandit nunc non mi posuere, quis laoreet ex congue. Donec fringilla
|
||||
porttitor lacus accumsan porttitor. Integer vel sagittis diam. Nullam vehicula
|
||||
fermentum risus nec facilisis. Fusce eleifend gravida orci, in efficitur enim
|
||||
fermentum nec. Sed quis malesuada lorem. Ut vitae sodales sapien.
|
@@ -3,5 +3,5 @@ module github.com/gethinode/hinode/exampleSite
|
||||
go 1.19
|
||||
|
||||
require (
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.2.4 // indirect
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.2.5 // indirect
|
||||
)
|
||||
|
@@ -1,2 +1,2 @@
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.2.4 h1:MxKKNSpX2cb9+4l3mH/xfZUqiJ1buaGLj0AFRnPci5M=
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.2.4/go.mod h1:tULb7D7CoTycGUyL7ryqHJKaX11XuL2SN+XwP7/DI0Y=
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.2.5 h1:xzTQ42qYViZ/LJJUHAEeDV9aayXVEX4MtnpS+m5Zekc=
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.2.5/go.mod h1:tULb7D7CoTycGUyL7ryqHJKaX11XuL2SN+XwP7/DI0Y=
|
||||
|
@@ -14,6 +14,7 @@
|
||||
"figure",
|
||||
"footer",
|
||||
"form",
|
||||
"h1",
|
||||
"h2",
|
||||
"h3",
|
||||
"head",
|
||||
@@ -69,7 +70,6 @@
|
||||
],
|
||||
"classes": [
|
||||
"%!s(<nil>)",
|
||||
"%!s(MISSING)",
|
||||
"about",
|
||||
"accordion",
|
||||
"accordion-body",
|
||||
@@ -89,14 +89,15 @@
|
||||
"align-middle",
|
||||
"align-self-center",
|
||||
"align-self-end",
|
||||
"align-self-start",
|
||||
"anchor",
|
||||
"articles",
|
||||
"background-container",
|
||||
"background-img-fluid",
|
||||
"badge",
|
||||
"ball",
|
||||
"bg-bg-body-tertiary",
|
||||
"bg-bg-primary-subtle",
|
||||
"bg-black",
|
||||
"bg-body",
|
||||
"bg-body-tertiary",
|
||||
"bg-danger",
|
||||
@@ -109,9 +110,7 @@
|
||||
"border-0",
|
||||
"border-1",
|
||||
"border-bottom",
|
||||
"border-end",
|
||||
"border-none",
|
||||
"border-start",
|
||||
"border-top",
|
||||
"bottom-0",
|
||||
"bottom-bar",
|
||||
@@ -143,6 +142,7 @@
|
||||
"card-icon-primary",
|
||||
"card-icon-secondary",
|
||||
"card-img-bg",
|
||||
"card-img-h100",
|
||||
"card-img-top",
|
||||
"card-img-wrap",
|
||||
"card-text",
|
||||
@@ -171,6 +171,7 @@
|
||||
"col-6",
|
||||
"col-8",
|
||||
"col-9",
|
||||
"col-auto",
|
||||
"col-lg-2",
|
||||
"col-lg-4",
|
||||
"col-lg-8",
|
||||
@@ -188,9 +189,16 @@
|
||||
"col-sm-6",
|
||||
"collapse",
|
||||
"collapsed",
|
||||
"command",
|
||||
"contact-img",
|
||||
"container",
|
||||
"container-fluid",
|
||||
"container-xxl",
|
||||
"control-btn",
|
||||
"control-btn-expand",
|
||||
"control-btn-zoom-in",
|
||||
"control-btn-zoom-out",
|
||||
"cta",
|
||||
"custom",
|
||||
"d-block",
|
||||
"d-flex",
|
||||
@@ -207,9 +215,17 @@
|
||||
"d-sm-block",
|
||||
"d-sm-none",
|
||||
"data-table",
|
||||
"diagram-container",
|
||||
"diagram-controls",
|
||||
"diagram-wrapper",
|
||||
"disabled",
|
||||
"display-1",
|
||||
"display-4",
|
||||
"display-4pt-1",
|
||||
"display-6",
|
||||
"docs",
|
||||
"docs-controls",
|
||||
"docs-panel",
|
||||
"dropdown",
|
||||
"dropdown-divider-bg",
|
||||
"dropdown-item",
|
||||
@@ -226,9 +242,13 @@
|
||||
"fa-2xs",
|
||||
"fa-3",
|
||||
"fa-4x",
|
||||
"fa-5x",
|
||||
"fa-activity",
|
||||
"fa-address-card",
|
||||
"fa-angle-left",
|
||||
"fa-angle-right",
|
||||
"fa-angles-left",
|
||||
"fa-angles-right",
|
||||
"fa-arrow-left",
|
||||
"fa-arrow-right",
|
||||
"fa-bootstrap",
|
||||
@@ -241,9 +261,11 @@
|
||||
"fa-divide",
|
||||
"fa-docker",
|
||||
"fa-ellipsis",
|
||||
"fa-expand",
|
||||
"fa-face-frown",
|
||||
"fa-facebook",
|
||||
"fa-fluid",
|
||||
"fa-folder",
|
||||
"fa-fw",
|
||||
"fa-github",
|
||||
"fa-globe",
|
||||
@@ -253,9 +275,12 @@
|
||||
"fa-house",
|
||||
"fa-info",
|
||||
"fa-inverse",
|
||||
"fa-lg",
|
||||
"fa-link",
|
||||
"fa-linkedin",
|
||||
"fa-magnifying-glass",
|
||||
"fa-magnifying-glass-minus",
|
||||
"fa-magnifying-glass-plus",
|
||||
"fa-medium",
|
||||
"fa-moon",
|
||||
"fa-rocket",
|
||||
@@ -272,11 +297,16 @@
|
||||
"fa-whatsapp",
|
||||
"fa-wrapper",
|
||||
"fa-x-twitter",
|
||||
"fa-xl",
|
||||
"fa-xs",
|
||||
"fab",
|
||||
"fade",
|
||||
"faq",
|
||||
"fas",
|
||||
"figure-caption",
|
||||
"file",
|
||||
"file-controls",
|
||||
"file-panel",
|
||||
"fixed-top",
|
||||
"flex-column",
|
||||
"flex-fill",
|
||||
@@ -342,24 +372,28 @@
|
||||
"lottie-animation",
|
||||
"m-0",
|
||||
"m-auto",
|
||||
"m-md-n4",
|
||||
"m-n1",
|
||||
"main",
|
||||
"main-nav-toggler",
|
||||
"mb-0",
|
||||
"mb-1",
|
||||
"mb-3",
|
||||
"mb-4",
|
||||
"mb-5",
|
||||
"mb-lg-5",
|
||||
"me-1",
|
||||
"me-3",
|
||||
"me-auto",
|
||||
"me-md-3",
|
||||
"mermaid",
|
||||
"middle-bar",
|
||||
"mode-switch",
|
||||
"mode-item",
|
||||
"mode-toggle",
|
||||
"ms-1",
|
||||
"ms-3",
|
||||
"ms-auto",
|
||||
"ms-md-3",
|
||||
"mt-1",
|
||||
"mt-2",
|
||||
"mt-3",
|
||||
"mt-4",
|
||||
@@ -372,16 +406,21 @@
|
||||
"mx-auto",
|
||||
"mx-md-0",
|
||||
"mx-md-2",
|
||||
"mx-md-n4",
|
||||
"my-2",
|
||||
"my-4",
|
||||
"my-auto",
|
||||
"my-md-0",
|
||||
"my-md-auto",
|
||||
"my-md-n4",
|
||||
"nav",
|
||||
"nav-callout",
|
||||
"nav-item",
|
||||
"nav-link",
|
||||
"nav-panel",
|
||||
"nav-pills",
|
||||
"nav-tabs",
|
||||
"nav-underline",
|
||||
"navbar",
|
||||
"navbar-brand",
|
||||
"navbar-collapse",
|
||||
@@ -389,9 +428,12 @@
|
||||
"navbar-contrast",
|
||||
"navbar-expand-md",
|
||||
"navbar-fixed-top",
|
||||
"navbar-fs-6",
|
||||
"navbar-md-fs",
|
||||
"navbar-mode-selector",
|
||||
"navbar-nav",
|
||||
"navbar-nav-scroll",
|
||||
"navbar-title-center",
|
||||
"navbar-toggler",
|
||||
"next",
|
||||
"no-js",
|
||||
@@ -405,7 +447,12 @@
|
||||
"p-2",
|
||||
"p-3",
|
||||
"p-4",
|
||||
"p-md-4",
|
||||
"page-item",
|
||||
"page-link",
|
||||
"pagination",
|
||||
"pagination-terse",
|
||||
"panel-dropdown",
|
||||
"panels",
|
||||
"pb-3",
|
||||
"pb-4",
|
||||
"pb-5",
|
||||
@@ -430,14 +477,19 @@
|
||||
"ptw-5",
|
||||
"ptw-lg-5",
|
||||
"ptw-sm-4",
|
||||
"px-%!d(string=0)",
|
||||
"px-2",
|
||||
"px-3",
|
||||
"px-4",
|
||||
"px-md-4",
|
||||
"px-xxl-0",
|
||||
"py-%!d(string=0)",
|
||||
"py-1",
|
||||
"py-2",
|
||||
"py-3",
|
||||
"py-4",
|
||||
"py-md-1",
|
||||
"py-md-4",
|
||||
"ratio",
|
||||
"ratio-16x9",
|
||||
"releases",
|
||||
@@ -446,6 +498,7 @@
|
||||
"rounded-5",
|
||||
"rounded-bottom",
|
||||
"rounded-pill",
|
||||
"rounded-start",
|
||||
"rounded-top",
|
||||
"row",
|
||||
"row-cols-1",
|
||||
@@ -480,6 +533,7 @@
|
||||
"table-border-bottom-wrap",
|
||||
"table-responsive-md",
|
||||
"table-wrap",
|
||||
"tabs-dropdown",
|
||||
"tag-link",
|
||||
"text-",
|
||||
"text-bg-body-tertiary",
|
||||
@@ -511,6 +565,7 @@
|
||||
"timeline-bg-primary-subtle",
|
||||
"timeline-connector-end",
|
||||
"timeline-connector-start",
|
||||
"timeline-container",
|
||||
"timeline-description-text-end",
|
||||
"timeline-description-text-start",
|
||||
"timeline-dot",
|
||||
@@ -547,10 +602,13 @@
|
||||
"visually-hidden",
|
||||
"vr",
|
||||
"w-100",
|
||||
"w-50"
|
||||
"w-50",
|
||||
"width-100",
|
||||
"width-md-auto"
|
||||
],
|
||||
"ids": [
|
||||
"abbr",
|
||||
"about",
|
||||
"accordion",
|
||||
"accordion-0",
|
||||
"accordion-0-heading-0",
|
||||
@@ -562,25 +620,36 @@
|
||||
"accordéon",
|
||||
"alert",
|
||||
"alerte",
|
||||
"ander-project",
|
||||
"animatie",
|
||||
"animation",
|
||||
"another-project",
|
||||
"args",
|
||||
"arguments",
|
||||
"articles",
|
||||
"articles-de-blog",
|
||||
"autre-projet",
|
||||
"background-type",
|
||||
"badge",
|
||||
"barre-de-navigation",
|
||||
"bienvenue-sur-hinode",
|
||||
"block-diagram",
|
||||
"blog",
|
||||
"body-docs-collapse-15",
|
||||
"body-docs-collapse-16",
|
||||
"body-file-collapse-1",
|
||||
"bootstrap-elements",
|
||||
"bouton",
|
||||
"breadcrumb",
|
||||
"btnTOCShowLess",
|
||||
"btnTOCShowMore",
|
||||
"button",
|
||||
"button-group",
|
||||
"c4-diagram",
|
||||
"callout",
|
||||
"card",
|
||||
"card-group",
|
||||
"cards",
|
||||
"carousel",
|
||||
"carousel-0",
|
||||
"carrousel",
|
||||
@@ -593,19 +662,41 @@
|
||||
"command-prompt",
|
||||
"comment-nous-partageons-vos-informations",
|
||||
"comment-utilisons-nous-les-cookies-",
|
||||
"componenten",
|
||||
"components",
|
||||
"composents",
|
||||
"container",
|
||||
"content-blocks",
|
||||
"cookie-policy",
|
||||
"cookies-etc",
|
||||
"cta",
|
||||
"custom-activity",
|
||||
"data-tables",
|
||||
"derde-artikel",
|
||||
"deuxième-article",
|
||||
"docs",
|
||||
"documentation",
|
||||
"dropdown-nav-0",
|
||||
"dropdown-panel-061524bba81f197181a032e904983272",
|
||||
"dropdown-panel-0c0ddda05d377af1c0cee87f7c85da67",
|
||||
"dropdown-panel-3c6a067cd80a10d3707200fc8fb84bb3",
|
||||
"dropdown-panel-4b12c0f69625cb352e0aa7d846f960d8",
|
||||
"dropdown-panel-6906624fe967e8dffbf4c3446a9e2385",
|
||||
"dropdown-panel-7351d1dc85bcedcd74309f25472b7548",
|
||||
"dropdown-panel-7784dd257dba6ab662963774a7bea03d",
|
||||
"dropdown-panel-c62f4eeaa4277d5c14c486d5c8623ae1",
|
||||
"dropdown-panel-cfcc43cbefc204c3c8c7487ef6347c27",
|
||||
"dropdown-panel-d29649da522407a082335b726b32951c",
|
||||
"eerste-artikel",
|
||||
"elements-type",
|
||||
"entity-relationship-diagram",
|
||||
"example",
|
||||
"examples",
|
||||
"exemple",
|
||||
"exemple-de-projet",
|
||||
"fa-address-card",
|
||||
"fa-face-frown",
|
||||
"fa-folder",
|
||||
"fa-square-check",
|
||||
"fab-bootstrap",
|
||||
"fab-docker",
|
||||
@@ -615,15 +706,25 @@
|
||||
"fab-medium",
|
||||
"fab-whatsapp",
|
||||
"fab-x-twitter",
|
||||
"faq-46cc9ad0fb899a0f4539dbaa956f4df4",
|
||||
"faq-46cc9ad0fb899a0f4539dbaa956f4df4-heading-faq-46cc9ad0fb899a0f4539dbaa956f4df4",
|
||||
"faq-46cc9ad0fb899a0f4539dbaa956f4df4-item-0",
|
||||
"faq-46cc9ad0fb899a0f4539dbaa956f4df4-item-1",
|
||||
"faq-46cc9ad0fb899a0f4539dbaa956f4df4-item-2",
|
||||
"faq",
|
||||
"faq-b52462b6a4b2180e01ad67bc52618161",
|
||||
"faq-b52462b6a4b2180e01ad67bc52618161-heading-faq-b52462b6a4b2180e01ad67bc52618161",
|
||||
"faq-b52462b6a4b2180e01ad67bc52618161-item-0",
|
||||
"faq-b52462b6a4b2180e01ad67bc52618161-item-1",
|
||||
"faq-b52462b6a4b2180e01ad67bc52618161-item-2",
|
||||
"faq-f38df4740b059c9b2b0e1b696e843ede",
|
||||
"faq-f38df4740b059c9b2b0e1b696e843ede-heading-faq-f38df4740b059c9b2b0e1b696e843ede",
|
||||
"faq-f38df4740b059c9b2b0e1b696e843ede-item-0",
|
||||
"faq-f38df4740b059c9b2b0e1b696e843ede-item-1",
|
||||
"faq-f38df4740b059c9b2b0e1b696e843ede-item-2",
|
||||
"fas-1",
|
||||
"fas-2",
|
||||
"fas-3",
|
||||
"fas-address-card",
|
||||
"fas-angle-left",
|
||||
"fas-angle-right",
|
||||
"fas-angles-left",
|
||||
"fas-angles-right",
|
||||
"fas-arrow-left",
|
||||
"fas-arrow-right",
|
||||
"fas-chevron-right",
|
||||
@@ -634,6 +735,7 @@
|
||||
"fas-code",
|
||||
"fas-divide",
|
||||
"fas-ellipsis",
|
||||
"fas-expand",
|
||||
"fas-globe",
|
||||
"fas-grip",
|
||||
"fas-h",
|
||||
@@ -642,6 +744,8 @@
|
||||
"fas-info",
|
||||
"fas-link",
|
||||
"fas-magnifying-glass",
|
||||
"fas-magnifying-glass-minus",
|
||||
"fas-magnifying-glass-plus",
|
||||
"fas-moon",
|
||||
"fas-rocket",
|
||||
"fas-share-nodes",
|
||||
@@ -652,12 +756,14 @@
|
||||
"fichier",
|
||||
"fil-dariane",
|
||||
"file",
|
||||
"first-post",
|
||||
"flowchart",
|
||||
"footer-docs-collapse-15",
|
||||
"footer-docs-collapse-16",
|
||||
"footer-file-collapse-1",
|
||||
"formula-katex",
|
||||
"formule-katex",
|
||||
"fourth-post-excluded-from-search",
|
||||
"gantt-diagram",
|
||||
"gegevenstabellen",
|
||||
"git-graph",
|
||||
@@ -666,17 +772,22 @@
|
||||
"gérer-les-préférences-des-cookies",
|
||||
"heading",
|
||||
"heading-type",
|
||||
"hero",
|
||||
"horizontal-cards-with-an-icon",
|
||||
"horizontal-cards-with-an-image",
|
||||
"how-do-we-use-cookies",
|
||||
"how-we-share-your-information",
|
||||
"icon",
|
||||
"illustration-type",
|
||||
"image",
|
||||
"imagekitio",
|
||||
"images-locales-et-distantes",
|
||||
"imgix",
|
||||
"indicateur-de-chargement",
|
||||
"infobulle",
|
||||
"input-type",
|
||||
"ins",
|
||||
"interested-in-this-topic",
|
||||
"invite-de-commandes",
|
||||
"items-type",
|
||||
"kaart",
|
||||
@@ -687,6 +798,7 @@
|
||||
"liens-vers-des-tiers-et-utilisation-de-vos-informations",
|
||||
"link",
|
||||
"links-type",
|
||||
"local-and-remote-images",
|
||||
"lottie-animation-0",
|
||||
"manage-cookie-preferences",
|
||||
"map",
|
||||
@@ -703,6 +815,16 @@
|
||||
"nav-0-btn-1",
|
||||
"nav-0-btn-2",
|
||||
"nav-nav-0",
|
||||
"nav-panel-061524bba81f197181a032e904983272",
|
||||
"nav-panel-0c0ddda05d377af1c0cee87f7c85da67",
|
||||
"nav-panel-3c6a067cd80a10d3707200fc8fb84bb3",
|
||||
"nav-panel-4b12c0f69625cb352e0aa7d846f960d8",
|
||||
"nav-panel-6906624fe967e8dffbf4c3446a9e2385",
|
||||
"nav-panel-7351d1dc85bcedcd74309f25472b7548",
|
||||
"nav-panel-7784dd257dba6ab662963774a7bea03d",
|
||||
"nav-panel-c62f4eeaa4277d5c14c486d5c8623ae1",
|
||||
"nav-panel-cfcc43cbefc204c3c8c7487ef6347c27",
|
||||
"nav-panel-d29649da522407a082335b726b32951c",
|
||||
"navbar",
|
||||
"navbar-0-collapse",
|
||||
"navbar-mode",
|
||||
@@ -710,27 +832,104 @@
|
||||
"navbar-sample-collapse",
|
||||
"navigation",
|
||||
"notification",
|
||||
"over-mij",
|
||||
"overview",
|
||||
"panel-061524bba81f197181a032e904983272-0",
|
||||
"panel-061524bba81f197181a032e904983272-1",
|
||||
"panel-061524bba81f197181a032e904983272-2",
|
||||
"panel-061524bba81f197181a032e904983272-btn-0",
|
||||
"panel-061524bba81f197181a032e904983272-btn-1",
|
||||
"panel-061524bba81f197181a032e904983272-btn-2",
|
||||
"panel-0c0ddda05d377af1c0cee87f7c85da67-0",
|
||||
"panel-0c0ddda05d377af1c0cee87f7c85da67-1",
|
||||
"panel-0c0ddda05d377af1c0cee87f7c85da67-2",
|
||||
"panel-0c0ddda05d377af1c0cee87f7c85da67-btn-0",
|
||||
"panel-0c0ddda05d377af1c0cee87f7c85da67-btn-1",
|
||||
"panel-0c0ddda05d377af1c0cee87f7c85da67-btn-2",
|
||||
"panel-3c6a067cd80a10d3707200fc8fb84bb3-0",
|
||||
"panel-3c6a067cd80a10d3707200fc8fb84bb3-1",
|
||||
"panel-3c6a067cd80a10d3707200fc8fb84bb3-2",
|
||||
"panel-3c6a067cd80a10d3707200fc8fb84bb3-btn-0",
|
||||
"panel-3c6a067cd80a10d3707200fc8fb84bb3-btn-1",
|
||||
"panel-3c6a067cd80a10d3707200fc8fb84bb3-btn-2",
|
||||
"panel-4b12c0f69625cb352e0aa7d846f960d8-0",
|
||||
"panel-4b12c0f69625cb352e0aa7d846f960d8-1",
|
||||
"panel-4b12c0f69625cb352e0aa7d846f960d8-2",
|
||||
"panel-4b12c0f69625cb352e0aa7d846f960d8-btn-0",
|
||||
"panel-4b12c0f69625cb352e0aa7d846f960d8-btn-1",
|
||||
"panel-4b12c0f69625cb352e0aa7d846f960d8-btn-2",
|
||||
"panel-6906624fe967e8dffbf4c3446a9e2385-0",
|
||||
"panel-6906624fe967e8dffbf4c3446a9e2385-1",
|
||||
"panel-6906624fe967e8dffbf4c3446a9e2385-2",
|
||||
"panel-6906624fe967e8dffbf4c3446a9e2385-btn-0",
|
||||
"panel-6906624fe967e8dffbf4c3446a9e2385-btn-1",
|
||||
"panel-6906624fe967e8dffbf4c3446a9e2385-btn-2",
|
||||
"panel-7351d1dc85bcedcd74309f25472b7548-0",
|
||||
"panel-7351d1dc85bcedcd74309f25472b7548-1",
|
||||
"panel-7351d1dc85bcedcd74309f25472b7548-2",
|
||||
"panel-7351d1dc85bcedcd74309f25472b7548-btn-0",
|
||||
"panel-7351d1dc85bcedcd74309f25472b7548-btn-1",
|
||||
"panel-7351d1dc85bcedcd74309f25472b7548-btn-2",
|
||||
"panel-7784dd257dba6ab662963774a7bea03d-0",
|
||||
"panel-7784dd257dba6ab662963774a7bea03d-1",
|
||||
"panel-7784dd257dba6ab662963774a7bea03d-2",
|
||||
"panel-7784dd257dba6ab662963774a7bea03d-btn-0",
|
||||
"panel-7784dd257dba6ab662963774a7bea03d-btn-1",
|
||||
"panel-7784dd257dba6ab662963774a7bea03d-btn-2",
|
||||
"panel-c62f4eeaa4277d5c14c486d5c8623ae1-0",
|
||||
"panel-c62f4eeaa4277d5c14c486d5c8623ae1-1",
|
||||
"panel-c62f4eeaa4277d5c14c486d5c8623ae1-2",
|
||||
"panel-c62f4eeaa4277d5c14c486d5c8623ae1-btn-0",
|
||||
"panel-c62f4eeaa4277d5c14c486d5c8623ae1-btn-1",
|
||||
"panel-c62f4eeaa4277d5c14c486d5c8623ae1-btn-2",
|
||||
"panel-cfcc43cbefc204c3c8c7487ef6347c27-0",
|
||||
"panel-cfcc43cbefc204c3c8c7487ef6347c27-1",
|
||||
"panel-cfcc43cbefc204c3c8c7487ef6347c27-2",
|
||||
"panel-cfcc43cbefc204c3c8c7487ef6347c27-btn-0",
|
||||
"panel-cfcc43cbefc204c3c8c7487ef6347c27-btn-1",
|
||||
"panel-cfcc43cbefc204c3c8c7487ef6347c27-btn-2",
|
||||
"panel-d29649da522407a082335b726b32951c-0",
|
||||
"panel-d29649da522407a082335b726b32951c-1",
|
||||
"panel-d29649da522407a082335b726b32951c-2",
|
||||
"panel-d29649da522407a082335b726b32951c-btn-0",
|
||||
"panel-d29649da522407a082335b726b32951c-btn-1",
|
||||
"panel-d29649da522407a082335b726b32951c-btn-2",
|
||||
"panels",
|
||||
"persona",
|
||||
"pie-chart",
|
||||
"pills",
|
||||
"politique-de-confidentialité",
|
||||
"politique-de-cookies",
|
||||
"premier-article",
|
||||
"privacy-policy",
|
||||
"projecten",
|
||||
"projects",
|
||||
"projets",
|
||||
"publication",
|
||||
"quadrant-chart",
|
||||
"quatrième-article-exclu-de-la-recherche",
|
||||
"que-sont-les-cookies-",
|
||||
"release",
|
||||
"releases",
|
||||
"requirement-chart",
|
||||
"réduire",
|
||||
"sample-project",
|
||||
"second-post",
|
||||
"security",
|
||||
"separator",
|
||||
"sequence-diagram",
|
||||
"shortcode-with-controls-and-frontmatter",
|
||||
"spinner",
|
||||
"stacked-cards-with-an-icon",
|
||||
"stacked-cards-with-an-image",
|
||||
"state-diagram",
|
||||
"sub",
|
||||
"sup",
|
||||
"sécurité",
|
||||
"table",
|
||||
"tabs",
|
||||
"third-party-links--use-of-your-information",
|
||||
"third-post",
|
||||
"timeline",
|
||||
"title",
|
||||
"toast",
|
||||
@@ -740,18 +939,28 @@
|
||||
"toast-example-2",
|
||||
"toast-message-email-4",
|
||||
"toc-collapse",
|
||||
"toc-collapse-items",
|
||||
"tooltip",
|
||||
"troisième-article",
|
||||
"tweede-artikel",
|
||||
"types-de-cookies-que-nous-utilisons",
|
||||
"types-of-cookies-we-use",
|
||||
"underline",
|
||||
"user-journey",
|
||||
"video",
|
||||
"video-message",
|
||||
"video-type",
|
||||
"vidéo",
|
||||
"vierde-artikel",
|
||||
"voorbeeldproject",
|
||||
"vos-droits",
|
||||
"welcome-to-hinode",
|
||||
"welkom-bij-hinode",
|
||||
"what-are-cookies",
|
||||
"xy-chart",
|
||||
"your-rights"
|
||||
"your-rights",
|
||||
"à-propos",
|
||||
"éléments-bootstrap"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
31
exampleSite/layouts/_partials/templates/script.html
Normal file
31
exampleSite/layouts/_partials/templates/script.html
Normal file
@@ -0,0 +1,31 @@
|
||||
{{/*
|
||||
Copyright © 2022 - 2025 The Hinode Team / Mark Dumay. All rights reserved.
|
||||
Use of this source code is governed by The MIT License (MIT) that can be found in the LICENSE file.
|
||||
Visit gethinode.com/license for more details.
|
||||
*/}}
|
||||
|
||||
<!-- TODO: this partial is not properly mounted for the exampleSite, possibly a bug with Hugo -->
|
||||
|
||||
{{/* Initialize arguments */}}
|
||||
{{- $args := partial "utilities/InitArgs.html" (dict "structure" "script" "args" .) -}}
|
||||
{{- if or $args.err $args.warnmsg -}}
|
||||
{{- partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
|
||||
"partial" "templates/script.html"
|
||||
"warnid" "warn-invalid-arguments"
|
||||
"msg" "Invalid arguments"
|
||||
"details" ($args.errmsg | append $args.warnmsg)
|
||||
"file" page.File
|
||||
) -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/* Initialize local arguments */}}
|
||||
{{- $category := cond (ne $args.category "other") $args.category "" -}}
|
||||
|
||||
{{/* Main code */}}
|
||||
{{- if not $args.err -}}
|
||||
<script src="{{ $args.link }}"
|
||||
{{- with $args.scriptType }}{{ printf ` type="%s"` . | safeHTMLAttr }}{{ end -}}
|
||||
{{- with $category }} data-category="{{ . }}"{{ end -}}
|
||||
{{- with $args.integrity }} integrity="{{ . }}" crossorigin="anonymous"{{ end }}
|
||||
{{- with $args.state }} {{ . | safeHTMLAttr }}{{ end -}}></script>
|
||||
{{- end -}}
|
33
go.mod
33
go.mod
@@ -3,22 +3,19 @@ module github.com/gethinode/hinode
|
||||
go 1.19
|
||||
|
||||
require (
|
||||
github.com/airbnb/lottie-web v5.12.2+incompatible // indirect
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.1 // indirect
|
||||
github.com/gethinode/mod-bootstrap v1.3.3 // indirect
|
||||
github.com/gethinode/mod-csp v1.0.7 // indirect
|
||||
github.com/gethinode/mod-flexsearch/v2 v2.1.1 // indirect
|
||||
github.com/gethinode/mod-fontawesome/v2 v2.1.1 // indirect
|
||||
github.com/gethinode/mod-google-analytics v1.3.2 // indirect
|
||||
github.com/gethinode/mod-katex v1.1.3 // indirect
|
||||
github.com/gethinode/mod-leaflet v1.3.0 // indirect
|
||||
github.com/gethinode/mod-lottie v1.6.0 // indirect
|
||||
github.com/gethinode/mod-mermaid v1.1.23 // indirect
|
||||
github.com/gethinode/mod-mermaid/v2 v2.0.1 // indirect
|
||||
github.com/gethinode/mod-simple-datatables v1.1.7 // indirect
|
||||
github.com/gethinode/mod-simple-datatables/v2 v2.0.1 // indirect
|
||||
github.com/gethinode/mod-utils/v3 v3.3.1 // indirect
|
||||
github.com/gethinode/mod-utils/v4 v4.8.4 // indirect
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250606060143-c28f52c09b7a // indirect
|
||||
github.com/twbs/bootstrap v5.3.7+incompatible // indirect
|
||||
github.com/airbnb/lottie-web v5.13.0+incompatible // indirect
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.5 // indirect
|
||||
github.com/gethinode/mod-bootstrap v1.3.4 // indirect
|
||||
github.com/gethinode/mod-csp v1.0.8 // indirect
|
||||
github.com/gethinode/mod-flexsearch/v3 v3.0.0 // indirect
|
||||
github.com/gethinode/mod-fontawesome/v2 v2.1.2 // indirect
|
||||
github.com/gethinode/mod-google-analytics v1.3.3 // indirect
|
||||
github.com/gethinode/mod-katex v1.1.4 // indirect
|
||||
github.com/gethinode/mod-leaflet v1.3.1 // indirect
|
||||
github.com/gethinode/mod-lottie v1.6.1 // indirect
|
||||
github.com/gethinode/mod-mermaid/v3 v3.0.1 // indirect
|
||||
github.com/gethinode/mod-simple-datatables/v2 v2.0.2 // indirect
|
||||
github.com/gethinode/mod-utils/v4 v4.18.0 // indirect
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250907103239-defb38b083f0 // indirect
|
||||
github.com/twbs/bootstrap v5.3.8+incompatible // indirect
|
||||
)
|
||||
|
74
go.sum
74
go.sum
@@ -1,11 +1,19 @@
|
||||
github.com/airbnb/lottie-web v5.12.2+incompatible h1:Ldogtlhiucf7mMsgisyxSBY0qunV44+lpa9Icy2KoQc=
|
||||
github.com/airbnb/lottie-web v5.12.2+incompatible/go.mod h1:nTss557UK9FGnp8QYlCMO29tjUHwbdAHG/DprbGfHGE=
|
||||
github.com/airbnb/lottie-web v5.13.0+incompatible h1:plBV5Uq/F1kK0EC61Hr0cBGReI9OgUfd/pp0baoDX8o=
|
||||
github.com/airbnb/lottie-web v5.13.0+incompatible/go.mod h1:nTss557UK9FGnp8QYlCMO29tjUHwbdAHG/DprbGfHGE=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.14.0 h1:QNLtpTINvXkxAG/RQVpdXzxtFjG6YAmnBr7qbOD5GF8=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.14.0/go.mod h1:s7mIonDhtsLcn10ZKuVXyqd6BDHI8vT1WQhZw8rPfY8=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.0 h1:Fb76ABHqTyPl9Z2QqYJCwiMBKPyShOe1EnZxXzW3RVo=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.0/go.mod h1:s7mIonDhtsLcn10ZKuVXyqd6BDHI8vT1WQhZw8rPfY8=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.1 h1:WByz6rqg28h94VLVLscu77/CHhi2peig/LqrnVomX0Y=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.1/go.mod h1:s7mIonDhtsLcn10ZKuVXyqd6BDHI8vT1WQhZw8rPfY8=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.3 h1:/Z66xKILl1SNGQePHZCnxo6vFgED7AGI600OSPotXj4=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.3/go.mod h1:s7mIonDhtsLcn10ZKuVXyqd6BDHI8vT1WQhZw8rPfY8=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.4 h1:k233xdD3ydE6iN8QB+c37//rSsFVtLIo5OUNRN4E3bc=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.4/go.mod h1:s7mIonDhtsLcn10ZKuVXyqd6BDHI8vT1WQhZw8rPfY8=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.5 h1:RmqeSUQMPyi31YC6SaFNE2ubfFy13qVj5/lo+MCT+u8=
|
||||
github.com/cloudcannon/bookshop/hugo/v3 v3.16.5/go.mod h1:s7mIonDhtsLcn10ZKuVXyqd6BDHI8vT1WQhZw8rPfY8=
|
||||
github.com/gethinode/mod-bootstrap v1.0.1 h1:NDZar+UEL42YHCvzzO+jVgqkZU5INA12BpjX3y6U4I4=
|
||||
github.com/gethinode/mod-bootstrap v1.0.1/go.mod h1:DcpPc2cNaXUPGEvhD7npuEEPA7573NvakTlrwFbyjr8=
|
||||
github.com/gethinode/mod-bootstrap v1.1.0 h1:BbalsW8kmFhv+J+dcc41TGcjIlM/p69AB0h0oGhAXIU=
|
||||
@@ -34,6 +42,8 @@ github.com/gethinode/mod-bootstrap v1.3.2 h1:mf9Qgr+xHZeHjZGYFdurETfdEKKldB158fp
|
||||
github.com/gethinode/mod-bootstrap v1.3.2/go.mod h1:CL9IDot6nbXIWJYE/KxfsTdYYEJIGL17BXbAYPn+wVQ=
|
||||
github.com/gethinode/mod-bootstrap v1.3.3 h1:k7RrZM3zstWA5xg55yLedb4T7WRBXvn77gv7OwBQ0d4=
|
||||
github.com/gethinode/mod-bootstrap v1.3.3/go.mod h1:MkvQgiA3N2NFiW57TTU60Rn4N6oZjvlBIVgrJE9M0WI=
|
||||
github.com/gethinode/mod-bootstrap v1.3.4 h1:rBfyUmdslxL+RX76/5hyJYPacfrt6OYrciNgk/T0NWk=
|
||||
github.com/gethinode/mod-bootstrap v1.3.4/go.mod h1:MkvQgiA3N2NFiW57TTU60Rn4N6oZjvlBIVgrJE9M0WI=
|
||||
github.com/gethinode/mod-csp v1.0.0 h1:Obp0MVMBjIPZbKDh6Ejl5pImDG7yERMLf2or9UVnwPA=
|
||||
github.com/gethinode/mod-csp v1.0.0/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||
github.com/gethinode/mod-csp v1.0.1 h1:IUUwPc41UNw7DAFuJ75nNPzhkPExenxXU7susdLaxdQ=
|
||||
@@ -50,6 +60,8 @@ github.com/gethinode/mod-csp v1.0.6 h1:ufEKQldQe9ZCXbENTpwqVlYnPRgVv3WDhPjur5OLU
|
||||
github.com/gethinode/mod-csp v1.0.6/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||
github.com/gethinode/mod-csp v1.0.7 h1:V4D8vYA/jJ2Nv9kPz5gt96fkVd3NtT7sBqVhnG5TvAU=
|
||||
github.com/gethinode/mod-csp v1.0.7/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||
github.com/gethinode/mod-csp v1.0.8 h1:36bWS7oW5KoPp0ywJXKmfMdM33c/7EPBLjzut0njTgE=
|
||||
github.com/gethinode/mod-csp v1.0.8/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||
github.com/gethinode/mod-flexsearch v1.0.1 h1:FJkRsUzSnQTXl3MWCigT4E6vfff870UWTnkGqaDGIhA=
|
||||
github.com/gethinode/mod-flexsearch v1.0.1/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
||||
github.com/gethinode/mod-flexsearch v1.1.0 h1:7BCMyQDlYlskNXuazt8Jg/jg9WREexu2xVkYqThkAX4=
|
||||
@@ -108,6 +120,12 @@ github.com/gethinode/mod-flexsearch/v2 v2.1.0 h1:NzCruYAKQBMM1DwFFoH7/tzqmItR6sK
|
||||
github.com/gethinode/mod-flexsearch/v2 v2.1.0/go.mod h1:d7MMkVlz0l6cEk76e0mkveEsDxGfu5Sv+HUIhoGguhE=
|
||||
github.com/gethinode/mod-flexsearch/v2 v2.1.1 h1:Vcr0aAkqPdavK183L8nr0dF7ngfY9EUDG4ZpmEK815M=
|
||||
github.com/gethinode/mod-flexsearch/v2 v2.1.1/go.mod h1:0IJGZQRv9X+th/gFmFRusEUSv0oJSr3aw5t1w3lfvYg=
|
||||
github.com/gethinode/mod-flexsearch/v2 v2.1.2 h1:B/onreHG/qzIqMo9YYiRk4WWM+GgFj1FSGHSgUpCvJ0=
|
||||
github.com/gethinode/mod-flexsearch/v2 v2.1.2/go.mod h1:0IJGZQRv9X+th/gFmFRusEUSv0oJSr3aw5t1w3lfvYg=
|
||||
github.com/gethinode/mod-flexsearch/v2 v2.1.3 h1:m5I9B7cA1SU99f90yO4OpOcKNPZ5zMF18pEhusLxa80=
|
||||
github.com/gethinode/mod-flexsearch/v2 v2.1.3/go.mod h1:0IJGZQRv9X+th/gFmFRusEUSv0oJSr3aw5t1w3lfvYg=
|
||||
github.com/gethinode/mod-flexsearch/v3 v3.0.0 h1:xFeo5ovZMIcUttvpOamPAMML5+5Au/hewZz/18C2H6Q=
|
||||
github.com/gethinode/mod-flexsearch/v3 v3.0.0/go.mod h1:iYvaBF6Y62pjnCepYAqLxoX1ZdEBoD+9caj4cBC+MxY=
|
||||
github.com/gethinode/mod-fontawesome v1.0.2 h1:ZSK6D20/w4y5GnfYfTBB58uHD0ChIfkpKfRGwioS9rg=
|
||||
github.com/gethinode/mod-fontawesome v1.0.2/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
||||
github.com/gethinode/mod-fontawesome v1.1.0 h1:rsDzUI+3ZlS/do2ff3ne8/z3KwHeysmuA+WsXlumXXk=
|
||||
@@ -160,6 +178,8 @@ github.com/gethinode/mod-fontawesome/v2 v2.1.0 h1:kRQ/4ady4Ih/m3bJ/1+/rkFhunuzjN
|
||||
github.com/gethinode/mod-fontawesome/v2 v2.1.0/go.mod h1:Jhwzi3KQI3fYn1hPNPJFCk+kcz80s8ONT4FmwLTXH2c=
|
||||
github.com/gethinode/mod-fontawesome/v2 v2.1.1 h1:EieVCvEiT0ulXpEHY4kCLJvZCIvGkupIVyoCRTidrvo=
|
||||
github.com/gethinode/mod-fontawesome/v2 v2.1.1/go.mod h1:zukv88wXqquEvTJJ9mWWk8Ia+9INnA41wYqusf2RcHA=
|
||||
github.com/gethinode/mod-fontawesome/v2 v2.1.2 h1:v1aHhbLLwe/05zRHnx9qGqh6b3toDzcLzuv61rWAoGU=
|
||||
github.com/gethinode/mod-fontawesome/v2 v2.1.2/go.mod h1:zukv88wXqquEvTJJ9mWWk8Ia+9INnA41wYqusf2RcHA=
|
||||
github.com/gethinode/mod-google-analytics v1.0.0 h1:fly42RQ69bdyJe8WFefsBIo7WMIXkd3wZn32kyAr4h4=
|
||||
github.com/gethinode/mod-google-analytics v1.0.0/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||
github.com/gethinode/mod-google-analytics v1.0.1 h1:zbmOdnAhhFCA7qWw7fnR46biWhqW2r06sIaTWyhB5R0=
|
||||
@@ -188,6 +208,8 @@ github.com/gethinode/mod-google-analytics v1.3.1 h1:WPXrsO6Kpp0k8PYY9a1JyiZgYGMl
|
||||
github.com/gethinode/mod-google-analytics v1.3.1/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||
github.com/gethinode/mod-google-analytics v1.3.2 h1:W4caxWkSor/BFfOEGDDMp+7RajO/Jh1bE7LXxPqLE3A=
|
||||
github.com/gethinode/mod-google-analytics v1.3.2/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||
github.com/gethinode/mod-google-analytics v1.3.3 h1:iX2FtXajykfHWJf7MXCQmpezqXgQUADNTeglU81QKpw=
|
||||
github.com/gethinode/mod-google-analytics v1.3.3/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||
github.com/gethinode/mod-katex v1.0.0 h1:me/3dIIZBkfk1mRIFt8QiAGYwYDoSG5bc2hHRtIutFc=
|
||||
github.com/gethinode/mod-katex v1.0.0/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||
github.com/gethinode/mod-katex v1.0.1 h1:809QUztxmKgMNchU+v03iMO7Ma+ISc3ZzhXYauc21rs=
|
||||
@@ -214,6 +236,8 @@ github.com/gethinode/mod-katex v1.1.2 h1:TbeVIWeG5TqldlVxpM1upOWj11RljXy4fhpOQIw
|
||||
github.com/gethinode/mod-katex v1.1.2/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||
github.com/gethinode/mod-katex v1.1.3 h1:fRgoBZVCJeLUFqGrGweg4FhCcbGsyqNRmd9WezG/CUQ=
|
||||
github.com/gethinode/mod-katex v1.1.3/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||
github.com/gethinode/mod-katex v1.1.4 h1:HWc45uHKX2JhI624UnA46LCZkLGhSbaq+zAHt9e57zw=
|
||||
github.com/gethinode/mod-katex v1.1.4/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||
github.com/gethinode/mod-leaflet v0.2.3 h1:QQI4h+IH0jZ7fx4q0um2YIEiYBoW3OAfW8qHzbRCDPk=
|
||||
github.com/gethinode/mod-leaflet v0.2.3/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=
|
||||
github.com/gethinode/mod-leaflet v0.3.1 h1:H5MaOa+BB1KuVw7abTqfIn/SNzzRsAyx/WQoSe+2Ykc=
|
||||
@@ -240,6 +264,8 @@ github.com/gethinode/mod-leaflet v1.2.1 h1:p0bKi+F5vbXwYknBvFEN9KymK8PRqKaYhVz5O
|
||||
github.com/gethinode/mod-leaflet v1.2.1/go.mod h1:Ei0x9WiL7Dbi4JeG6yI1CE63bT1QJ8sKi67Jea1wFSE=
|
||||
github.com/gethinode/mod-leaflet v1.3.0 h1:rRjuuW2KVJjnrBrFIOxxHxkB6RPdmlTivBlvceBG3Fk=
|
||||
github.com/gethinode/mod-leaflet v1.3.0/go.mod h1:F/XR1lYKENw91u+IC4NXQT6dbCyJlSJUPClMVpBK8Tw=
|
||||
github.com/gethinode/mod-leaflet v1.3.1 h1:nG6lQ7LZ2E/TGok/VGo5FCX+OVoHvxrYszi2FvQimRg=
|
||||
github.com/gethinode/mod-leaflet v1.3.1/go.mod h1:F/XR1lYKENw91u+IC4NXQT6dbCyJlSJUPClMVpBK8Tw=
|
||||
github.com/gethinode/mod-lottie v1.0.0 h1:1CUZMcgN5FAyjjyuP3qkaOQ6M5sv6HUAbosW4sIT5VE=
|
||||
github.com/gethinode/mod-lottie v1.0.0/go.mod h1:erRCgSL2FCfKHI0jQbSpM+g0jXl7SjKVJrh7kWGteKs=
|
||||
github.com/gethinode/mod-lottie v1.0.1 h1:+IE7xtnSVQpJS56oBJq9RWKZeFEfxrOZAqE3BSrS/u0=
|
||||
@@ -298,10 +324,20 @@ github.com/gethinode/mod-lottie v1.5.14 h1:17wmpi4XQzmwSB2HKNVa7c6ZzULrRnpKdowOF
|
||||
github.com/gethinode/mod-lottie v1.5.14/go.mod h1:VrjjmrwP/NIrLW7oDQyEAHdbeIRQfbr5BKjgKvI9Al4=
|
||||
github.com/gethinode/mod-lottie v1.6.0 h1:O0ld9Q1rBWKb9HzuCuGPBfCegUcIqczMGNW2O/VjVYk=
|
||||
github.com/gethinode/mod-lottie v1.6.0/go.mod h1:jZy8EJ6ldLnOXhpzayJ2STZ4hzykqkguFHWpN4aHxMo=
|
||||
github.com/gethinode/mod-lottie v1.6.1 h1:0wkQ7yMiwFvkhzsBoO/RhfKJ7ru2EzoQfYrwnC6qoxg=
|
||||
github.com/gethinode/mod-lottie v1.6.1/go.mod h1:Buaa3A4fBIE4mkyQhnjMlassQQ5j8gRxQ4QnN7I1oGc=
|
||||
github.com/gethinode/mod-mermaid v1.1.23 h1:DA5iIdopb7f3wC+bfZ7J5HhcRUuVI/2j1+W/j5L/wwQ=
|
||||
github.com/gethinode/mod-mermaid v1.1.23/go.mod h1:rw6vrY9DpdJblwFwLuXCdy2kBHxMf6gGKWeetwfTSfc=
|
||||
github.com/gethinode/mod-mermaid/v2 v2.0.1 h1:QcahIFCgmYAGsukQ0d+/L4IJtDwgXgv0WzilZ9poI9o=
|
||||
github.com/gethinode/mod-mermaid/v2 v2.0.1/go.mod h1:kp3oUFAjKxuwzFbwxGWPEx5VQOu2ZHzcrwcNhDv08BI=
|
||||
github.com/gethinode/mod-mermaid/v2 v2.0.2 h1:uRHS3RyrMBK/hhDbEX39HnYkypSvSeci0kSyQaSdsKU=
|
||||
github.com/gethinode/mod-mermaid/v2 v2.0.2/go.mod h1:kp3oUFAjKxuwzFbwxGWPEx5VQOu2ZHzcrwcNhDv08BI=
|
||||
github.com/gethinode/mod-mermaid/v2 v2.0.3 h1:vWiAE640GAzkQCj0NFyn1VtnpFwiJ5Bljm2YgoQ3qG4=
|
||||
github.com/gethinode/mod-mermaid/v2 v2.0.3/go.mod h1:kp3oUFAjKxuwzFbwxGWPEx5VQOu2ZHzcrwcNhDv08BI=
|
||||
github.com/gethinode/mod-mermaid/v3 v3.0.0 h1:pFF2soB3ZQcY4KuMzDprcSv2zdC3yTKywNId4yhcPOA=
|
||||
github.com/gethinode/mod-mermaid/v3 v3.0.0/go.mod h1:+8p5KbFjIkB/I77Gpd8LTQgmNrRBfJpmKGnjclzwJFo=
|
||||
github.com/gethinode/mod-mermaid/v3 v3.0.1 h1:h4v3QvGpSln9PDbWccSktULq9FbRZ57JN4Lp+gVjvVI=
|
||||
github.com/gethinode/mod-mermaid/v3 v3.0.1/go.mod h1:rbI8IKFfKVGqTY/eJnuNJwzB5kSjaEUNX0NRHc4rBfA=
|
||||
github.com/gethinode/mod-simple-datatables v1.0.0 h1:Dj4WGw12OkaimwkCpLn5Jhmd49dvNJW9O2P/W9F+HlQ=
|
||||
github.com/gethinode/mod-simple-datatables v1.0.0/go.mod h1:K8T7fIdb8pMOB+OSW4A5lz5IW99+HyzcTgx764fvOGw=
|
||||
github.com/gethinode/mod-simple-datatables v1.0.2 h1:zhqxHet3iLQWYCBbGROALpOY9zQlptMycFkz1Tto5bA=
|
||||
@@ -342,6 +378,8 @@ github.com/gethinode/mod-simple-datatables v1.1.7 h1:wCY2bWFUxRHWbWzb/zefCACooCS
|
||||
github.com/gethinode/mod-simple-datatables v1.1.7/go.mod h1:FjkIEuxqeLLEqqDcz/nHAGHsRfV7EJP5Uhk4kYD8okY=
|
||||
github.com/gethinode/mod-simple-datatables/v2 v2.0.1 h1:ZwdI96n8dM2VLwdM/x+Vj7sa4tfiAUnkDj39jn+vkXc=
|
||||
github.com/gethinode/mod-simple-datatables/v2 v2.0.1/go.mod h1:mmf1AOxpHdSRQnW2k7ExVWKTyzbG2hpsDRssmyASNb8=
|
||||
github.com/gethinode/mod-simple-datatables/v2 v2.0.2 h1:6HkJkHg754HG2P5FTXiRePEnx/p65yfuqizB+gixV6k=
|
||||
github.com/gethinode/mod-simple-datatables/v2 v2.0.2/go.mod h1:bmXZJeTQ+GZJ83vasFBTS3JSm09Oa/jDX9T187stdnA=
|
||||
github.com/gethinode/mod-utils v1.0.0 h1:cqHm2xS5uDiJzRm1KfHaNbq6uMVDKLhQa8/BuTZ1nhY=
|
||||
github.com/gethinode/mod-utils v1.0.0/go.mod h1:ONJm3pHCq7nvaPNjusLZNCeCbhOhSBH4HVKHwK1FdYE=
|
||||
github.com/gethinode/mod-utils v1.0.1 h1:jhZGlGFHHL1f5HXbBMXfiZ2gCz4TVafAzjnRPTIBSEE=
|
||||
@@ -452,6 +490,36 @@ github.com/gethinode/mod-utils/v4 v4.8.3 h1:CSaFR/c1cGrSPpH5ZfrNOoMhAbNb8sw0SCRh
|
||||
github.com/gethinode/mod-utils/v4 v4.8.3/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.8.4 h1:ExD2zZCGonAmbIxC9wBU2dp+V4ZfvG46NWaz+LaV3iQ=
|
||||
github.com/gethinode/mod-utils/v4 v4.8.4/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.9.0 h1:v7+prGZPETqgI6t/LN0UhrtRKU4mqpJUQu6jEUU5MYg=
|
||||
github.com/gethinode/mod-utils/v4 v4.9.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.9.1 h1:9D2AJcrlS5r2moHEoo70GrNBmq1pJHd9oT4G14DsZRs=
|
||||
github.com/gethinode/mod-utils/v4 v4.9.1/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.9.2 h1:lzcihwAsm8R2k2v+tWu5nfWvXMA8uRKi0nGIzZCygZ8=
|
||||
github.com/gethinode/mod-utils/v4 v4.9.2/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.10.0 h1:CfVa57r52wXd0bUqSJlpux2cloHQNBBe13aeqLJ8FXE=
|
||||
github.com/gethinode/mod-utils/v4 v4.10.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.11.0 h1:24RObT99j/jiQnCyHvXahJHIA8e8uQuBb1pUIRJOxpA=
|
||||
github.com/gethinode/mod-utils/v4 v4.11.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.11.1 h1:12CzZjyLOb/FSXbX8mDAWqs8y4OCXOEavKww7T4V9jU=
|
||||
github.com/gethinode/mod-utils/v4 v4.11.1/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.12.0 h1:5sSfYIxZCeQbXLoZdS//rl6thwLwtXuvM0ujaWKyPmc=
|
||||
github.com/gethinode/mod-utils/v4 v4.12.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.13.0 h1:VKAA+wKy4saayXfgJuVBRfhNVWQWmxOjO8LSpQCvLfw=
|
||||
github.com/gethinode/mod-utils/v4 v4.13.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.14.0 h1:CF5dy+HWg22L306bWVhClWK9b1NVinEqtb4Qr2vcl9A=
|
||||
github.com/gethinode/mod-utils/v4 v4.14.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.15.0 h1:Zocy3qEVluYcx9te7bN6Serwp49kjhuH+eIvcCYpeC8=
|
||||
github.com/gethinode/mod-utils/v4 v4.15.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.15.1 h1:zsn6pYxMePLqsNaX+V8qND5tAbbp/CiscgZrnFAxc2s=
|
||||
github.com/gethinode/mod-utils/v4 v4.15.1/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.16.0 h1:yroLCeQyE/xU46YIKS81ZtFsOONTmVudrv2qW7IBH5Q=
|
||||
github.com/gethinode/mod-utils/v4 v4.16.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.16.1 h1:HjV6TONU7ZbXC2xZIPRupjKOUORddtQH8bb4dnULY1U=
|
||||
github.com/gethinode/mod-utils/v4 v4.16.1/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.17.0 h1:nDyXpZ0mCtf3ZML8G6bjeYJsI7Ne/Ze8rEWEa9zh6CI=
|
||||
github.com/gethinode/mod-utils/v4 v4.17.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.18.0 h1:CLxuPCbsQBGVgAM1x5nmh6V0HJoOcltIfKG9sthpsTk=
|
||||
github.com/gethinode/mod-utils/v4 v4.18.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3 h1:H/qVR5O4BXjRjD+5PZB+r4ug2BSJ2Of4RtwOntd+OKo=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20240108021025-afd75f742f22 h1:re7L8FxbXQpnX8BgzkdUnDpsUmloGNyLmiy2ZCln8pg=
|
||||
@@ -474,6 +542,10 @@ github.com/nextapps-de/flexsearch v0.0.0-20250523180618-1f75f5f9d9b6 h1:vUlZHDX+
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250523180618-1f75f5f9d9b6/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250606060143-c28f52c09b7a h1:CF/f62ufhBzNvAgoC6JhuqQxtqz0yDj3IIXYKl+A650=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250606060143-c28f52c09b7a/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250901122457-99cddafcdc64 h1:8gn/7ZfERwknYk63DskhEfkwwpoXubGrzLv5LuSq6hc=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250901122457-99cddafcdc64/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250907103239-defb38b083f0 h1:55phPhe6fDjfjG0jX4+br3nLORKgjgx8abZUdI0YJRA=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250907103239-defb38b083f0/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/twbs/bootstrap v5.3.2+incompatible h1:tuiO5acc6xnZUR77Sbi5aKWXxjYxbmsSbJwYrhAKoQQ=
|
||||
github.com/twbs/bootstrap v5.3.2+incompatible/go.mod h1:fZTSrkpSf0/HkL0IIJzvVspTt1r9zuf7XlZau8kpcY0=
|
||||
github.com/twbs/bootstrap v5.3.3+incompatible h1:goFoqinzdHfkeegpFP7pvhbd0g+A3O2hbU3XCjuNrEQ=
|
||||
@@ -484,3 +556,5 @@ github.com/twbs/bootstrap v5.3.6+incompatible h1:efmXVyq839m5QQ0+JBUdQQ1TrmoBqvQ
|
||||
github.com/twbs/bootstrap v5.3.6+incompatible/go.mod h1:fZTSrkpSf0/HkL0IIJzvVspTt1r9zuf7XlZau8kpcY0=
|
||||
github.com/twbs/bootstrap v5.3.7+incompatible h1:ea1W8TOWZFkqSK2M0McpgzLiUQVru3bz8aHb0j/XtuM=
|
||||
github.com/twbs/bootstrap v5.3.7+incompatible/go.mod h1:fZTSrkpSf0/HkL0IIJzvVspTt1r9zuf7XlZau8kpcY0=
|
||||
github.com/twbs/bootstrap v5.3.8+incompatible h1:eK1fsXP7R/FWFt+sSNmmvUH9usPocf240nWVw7Dh02o=
|
||||
github.com/twbs/bootstrap v5.3.8+incompatible/go.mod h1:fZTSrkpSf0/HkL0IIJzvVspTt1r9zuf7XlZau8kpcY0=
|
||||
|
232
hugo_stats.json
232
hugo_stats.json
@@ -1,7 +1,233 @@
|
||||
{
|
||||
"htmlElements": {
|
||||
"tags": null,
|
||||
"classes": null,
|
||||
"ids": null
|
||||
"tags": [
|
||||
"a",
|
||||
"body",
|
||||
"button",
|
||||
"div",
|
||||
"footer",
|
||||
"form",
|
||||
"head",
|
||||
"hr",
|
||||
"html",
|
||||
"img",
|
||||
"input",
|
||||
"label",
|
||||
"li",
|
||||
"link",
|
||||
"meta",
|
||||
"nav",
|
||||
"ol",
|
||||
"p",
|
||||
"path",
|
||||
"script",
|
||||
"section",
|
||||
"small",
|
||||
"span",
|
||||
"strong",
|
||||
"svg",
|
||||
"symbol",
|
||||
"title",
|
||||
"ul",
|
||||
"use"
|
||||
],
|
||||
"classes": [
|
||||
"%!s(<nil>)",
|
||||
"active",
|
||||
"align-items-center",
|
||||
"align-self-center",
|
||||
"align-self-end",
|
||||
"ball",
|
||||
"bg-body",
|
||||
"bg-opacity-10",
|
||||
"bg-primary",
|
||||
"bg-primary-subtle",
|
||||
"bottom-0",
|
||||
"bottom-bar",
|
||||
"breadcrumb",
|
||||
"breadcrumb-item",
|
||||
"btn",
|
||||
"btn-close",
|
||||
"btn-primary",
|
||||
"checkbox",
|
||||
"col",
|
||||
"col-12",
|
||||
"col-6",
|
||||
"col-8",
|
||||
"col-md-2",
|
||||
"col-md-6",
|
||||
"col-md-8",
|
||||
"col-md-auto",
|
||||
"col-sm-12",
|
||||
"collapse",
|
||||
"collapsed",
|
||||
"container-fluid",
|
||||
"container-xxl",
|
||||
"d-flex",
|
||||
"d-inline",
|
||||
"d-md-block",
|
||||
"d-md-flex",
|
||||
"d-md-none",
|
||||
"d-none",
|
||||
"d-sm-block",
|
||||
"d-sm-none",
|
||||
"display-1",
|
||||
"display-4",
|
||||
"dropdown-divider-bg",
|
||||
"emphasis",
|
||||
"end-0",
|
||||
"fa",
|
||||
"fa-10x",
|
||||
"fa-2x",
|
||||
"fa-angle-left",
|
||||
"fa-chevron-right",
|
||||
"fa-ellipsis",
|
||||
"fa-face-frown",
|
||||
"fa-fw",
|
||||
"fa-github",
|
||||
"fa-linkedin",
|
||||
"fa-magnifying-glass",
|
||||
"fa-medium",
|
||||
"fa-moon",
|
||||
"fa-sun",
|
||||
"fab",
|
||||
"fade",
|
||||
"fas",
|
||||
"fixed-top",
|
||||
"flex-column",
|
||||
"flex-fill",
|
||||
"flex-grow-1",
|
||||
"footer",
|
||||
"form-control",
|
||||
"fs-3",
|
||||
"fw-30",
|
||||
"fw-bold",
|
||||
"h-100",
|
||||
"h-50",
|
||||
"hero",
|
||||
"hero-content",
|
||||
"hero-image",
|
||||
"hero-image-container",
|
||||
"hero-title",
|
||||
"hstack",
|
||||
"img-fluid",
|
||||
"img-wrap",
|
||||
"invisible",
|
||||
"is-search",
|
||||
"justify-content-center",
|
||||
"justify-content-end",
|
||||
"justify-content-md-start",
|
||||
"justify-content-start",
|
||||
"label",
|
||||
"lead",
|
||||
"link-bg-footer",
|
||||
"link-secondary",
|
||||
"m-auto",
|
||||
"main",
|
||||
"main-nav-toggler",
|
||||
"me-auto",
|
||||
"middle-bar",
|
||||
"modal",
|
||||
"modal-body",
|
||||
"modal-content",
|
||||
"modal-dialog",
|
||||
"modal-dialog-centered",
|
||||
"modal-dialog-scrollable",
|
||||
"modal-header",
|
||||
"modal-lg",
|
||||
"mode-switch",
|
||||
"ms-auto",
|
||||
"mt-3",
|
||||
"mt-5",
|
||||
"mx-auto",
|
||||
"mx-md-0",
|
||||
"mx-md-2",
|
||||
"my-auto",
|
||||
"my-md-auto",
|
||||
"nav-item",
|
||||
"nav-link",
|
||||
"navbar",
|
||||
"navbar-brand",
|
||||
"navbar-collapse",
|
||||
"navbar-container",
|
||||
"navbar-expand-md",
|
||||
"navbar-fixed-top",
|
||||
"navbar-fs-6",
|
||||
"navbar-md-fs",
|
||||
"navbar-mode-selector",
|
||||
"navbar-nav",
|
||||
"navbar-nav-scroll",
|
||||
"navbar-toggler",
|
||||
"no-js",
|
||||
"order-0",
|
||||
"order-1",
|
||||
"order-md-0",
|
||||
"order-md-1",
|
||||
"p-0",
|
||||
"p-2",
|
||||
"p-3",
|
||||
"p-4",
|
||||
"position-fixed",
|
||||
"position-relative",
|
||||
"ps-1",
|
||||
"pt-1",
|
||||
"pt-4",
|
||||
"pt-md-0",
|
||||
"px-4",
|
||||
"px-xxl-0",
|
||||
"py-2",
|
||||
"py-3",
|
||||
"py-4",
|
||||
"py-md-1",
|
||||
"rounded",
|
||||
"row",
|
||||
"row-cols-1",
|
||||
"row-cols-2",
|
||||
"row-cols-sm-3",
|
||||
"search",
|
||||
"search-background",
|
||||
"search-input",
|
||||
"search-modal",
|
||||
"search-suggestions",
|
||||
"section-cover",
|
||||
"svg-inline--fa",
|
||||
"text-",
|
||||
"text-body",
|
||||
"text-center",
|
||||
"text-decoration-none",
|
||||
"text-muted",
|
||||
"text-secondary",
|
||||
"text-sm-start",
|
||||
"text-start",
|
||||
"toast",
|
||||
"toast-body",
|
||||
"toast-container",
|
||||
"toast-header",
|
||||
"toggler-icon",
|
||||
"top-bar",
|
||||
"vr",
|
||||
"w-100"
|
||||
],
|
||||
"ids": [
|
||||
"container",
|
||||
"fa-face-frown",
|
||||
"fab-github",
|
||||
"fab-linkedin",
|
||||
"fab-medium",
|
||||
"fas-angle-left",
|
||||
"fas-chevron-right",
|
||||
"fas-ellipsis",
|
||||
"fas-magnifying-glass",
|
||||
"fas-moon",
|
||||
"fas-sun",
|
||||
"navbar-0-collapse",
|
||||
"navbar-mode",
|
||||
"navbar-mode-checkbox",
|
||||
"search-input-modal",
|
||||
"search-modal",
|
||||
"toast-container",
|
||||
"toast-copied-code-message",
|
||||
"welcome-to-hinode"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user