Compare commits

...

423 Commits

Author SHA1 Message Date
Mark Dumay
a8efc27771 Merge pull request #1499 from gethinode/develop
fix: correct separator argument definition
2025-07-06 14:29:27 +02:00
Mark Dumay
3bf8da3767 Merge branch 'main' into develop 2025-07-06 14:20:10 +02:00
Mark Dumay
131de0c064 fix: correct seperator argument definition 2025-07-06 14:16:52 +02:00
Mark Dumay
a914fe18e8 Merge pull request #1497 from gethinode/hugo-mod-dependencies
Update Hugo module dependencies
2025-07-06 13:45:08 +02:00
Mark Dumay
a855a41c13 Merge branch 'main' into hugo-mod-dependencies 2025-07-06 12:14:28 +02:00
Mark Dumay
c41cd0650e Merge pull request #1498 from gethinode/develop
Develop
2025-07-06 12:08:43 +02:00
Mark Dumay
a83bab6689 Merge branch 'main' into develop 2025-07-06 12:03:41 +02:00
Mark Dumay
03a099ae66 fix: correct hide-empty argument in articles content block 2025-07-06 12:03:07 +02:00
Mark Dumay
cd837cf116 feat: add panels content block 2025-07-06 11:51:37 +02:00
Mark Dumay
8cffd358aa feat: improve responsive behavior of nav control 2025-07-06 11:51:10 +02:00
Mark Dumay
0d33a15e98 fix: improve layout 2025-07-06 11:47:24 +02:00
Mark Dumay
9be691eb6b fix: adjust heading size of CTA 2025-07-06 11:46:58 +02:00
Mark Dumay
fd727228d7 fix: adjust size argument of section title 2025-07-06 11:46:42 +02:00
Mark Dumay
a9f1cd098d feat: include ordinal position of content blocks 2025-07-06 11:44:41 +02:00
markdumay
dc1c358cfa fix: update Hugo module dependencies 2025-07-06 03:34:33 +00:00
github-actions[bot]
0d24dc445d Merge pull request #1495 from gethinode/dependabot/npm_and_yarn/neostandard-0.12.2
Bump neostandard from 0.12.1 to 0.12.2
2025-07-04 13:41:07 +00:00
dependabot[bot]
f6f034252b Bump neostandard from 0.12.1 to 0.12.2
Bumps [neostandard](https://github.com/neostandard/neostandard) from 0.12.1 to 0.12.2.
- [Release notes](https://github.com/neostandard/neostandard/releases)
- [Changelog](https://github.com/neostandard/neostandard/blob/main/CHANGELOG.md)
- [Commits](https://github.com/neostandard/neostandard/compare/v0.12.1...v0.12.2)

---
updated-dependencies:
- dependency-name: neostandard
  dependency-version: 0.12.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-04 13:35:15 +00:00
Mark Dumay
863b81efbb Merge pull request #1494 from gethinode/develop
feat: extend navbar styling options
2025-07-04 12:56:42 +02:00
Mark Dumay
9b0683d176 Merge branch 'main' into develop 2025-07-04 12:51:29 +02:00
Mark Dumay
dd1b2eb97f feat: extend navbar styling options 2025-07-04 12:50:41 +02:00
Mark Dumay
3f6dc3b2d7 Merge pull request #1493 from gethinode/develop
Develop
2025-07-04 07:43:32 +02:00
Mark Dumay
873277b691 Merge branch 'main' into develop 2025-07-04 07:38:09 +02:00
Mark Dumay
7a456a12d2 fix: improve handling of static svg files
Removes the subfolder from the static file path, if any. Only applicable to sites deployed to a subfolder (when setting `baseURL`).
2025-07-04 07:36:22 +02:00
Mark Dumay
b437b414b0 fix: suppress empty class and origin of svg files 2025-07-04 07:14:38 +02:00
Mark Dumay
80ac704d81 Merge pull request #1491 from gethinode/develop
fix: improve non-fluid section rendering
2025-07-03 19:18:02 +02:00
Mark Dumay
996e9ec294 Merge branch 'main' into develop 2025-07-03 19:09:14 +02:00
Mark Dumay
0ab274d6f5 fix: improve non-fluid section rendering 2025-07-03 19:08:26 +02:00
github-actions[bot]
3742e8ef04 Merge pull request #1490 from gethinode/dependabot/npm_and_yarn/stylelint-16.21.1
Bump stylelint from 16.21.0 to 16.21.1
2025-07-03 13:29:37 +00:00
dependabot[bot]
3eadaa02b8 Bump stylelint from 16.21.0 to 16.21.1
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.21.0 to 16.21.1.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.21.0...16.21.1)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.21.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-03 13:24:13 +00:00
Mark Dumay
90bc571b76 Merge pull request #1489 from gethinode/develop
ci: set read-only permissions for lint & build
2025-07-02 17:51:11 +02:00
Mark Dumay
aad5b59a48 fix: update dependencies 2025-07-02 16:56:37 +02:00
Mark Dumay
4d7fdffd4a Merge branch 'main' into develop 2025-07-02 16:35:22 +02:00
Mark Dumay
c384836224 ci: set read-only permissions for lint & build 2025-07-02 16:34:30 +02:00
github-actions[bot]
cb547351d9 Merge pull request #1487 from gethinode/dependabot/npm_and_yarn/eslint-9.30.1
Bump eslint from 9.30.0 to 9.30.1
2025-07-02 13:37:17 +00:00
dependabot[bot]
3b47a5b66f Bump eslint from 9.30.0 to 9.30.1
Bumps [eslint](https://github.com/eslint/eslint) from 9.30.0 to 9.30.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.30.0...v9.30.1)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.30.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-02 13:30:03 +00:00
Mark Dumay
9f9029baf0 Merge pull request #1486 from gethinode/develop
Develop
2025-07-02 12:53:05 +02:00
Mark Dumay
3079f1f7dd fix: correct page handling 2025-07-02 12:46:29 +02:00
Mark Dumay
e546d34422 Merge branch 'main' into develop 2025-07-02 12:24:10 +02:00
Mark Dumay
00e80f6400 docs: add cta example 2025-07-02 12:23:45 +02:00
Mark Dumay
b46dd52101 feat: add cta content block 2025-07-02 12:23:16 +02:00
Mark Dumay
b1a8c956fc feat: make fluid layout of sections configurable 2025-07-02 12:21:46 +02:00
Mark Dumay
1b8aa10d11 fix: update broken link in main index file 2025-07-02 12:16:00 +02:00
Mark Dumay
32fd60bb58 Merge pull request #1485 from gethinode/develop
Semantic release
2025-07-01 12:54:41 +02:00
Mark Dumay
8fa19c9ed1 Merge branch 'main' into develop 2025-07-01 12:44:56 +02:00
Mark Dumay
d36fcd894b feat: introduce semantic releases 2025-07-01 12:40:19 +02:00
Mark Dumay
7378a61542 ci: update Netlify build environment 2025-07-01 12:33:06 +02:00
Mark Dumay
fb63e36c56 Merge pull request #1484 from gethinode/develop
Fix kbd rendering
2025-07-01 11:42:27 +02:00
Mark Dumay
ae1cda1f5a Merge branch 'main' into develop 2025-07-01 11:36:04 +02:00
Mark Dumay
4846d1b016 Bump package release 2025-07-01 11:35:04 +02:00
Mark Dumay
01522dad71 Update build stats 2025-07-01 11:34:38 +02:00
Mark Dumay
0bbef1dad2 FIx kbd rendering 2025-07-01 11:34:29 +02:00
Mark Dumay
5e048d32df Merge pull request #1482 from gethinode/develop
Fix rendering of nav items
2025-06-30 08:42:44 +02:00
Mark Dumay
d1128fa7c3 Merge branch 'main' into develop 2025-06-30 08:00:43 +02:00
Mark Dumay
cf9a39b51f Fix rendering of nav items 2025-06-30 08:00:04 +02:00
Mark Dumay
ae9ec71966 Update dependencies 2025-06-29 13:35:27 +02:00
Mark Dumay
f6c4bbfffb Merge pull request #1481 from gethinode/develop
Enable explicit auto ratio for images
2025-06-29 13:24:07 +02:00
Mark Dumay
7a655315f1 Merge branch 'main' into develop 2025-06-29 13:19:12 +02:00
Mark Dumay
5c27178881 Enable explicit auto ratio for images 2025-06-29 13:18:43 +02:00
Mark Dumay
c829049842 Merge pull request #1480 from gethinode/develop
Fix starter template
2025-06-29 13:14:02 +02:00
Mark Dumay
613da916aa Merge branch 'main' into develop 2025-06-29 13:07:13 +02:00
Mark Dumay
d3d75c9dc6 Fix starter template 2025-06-29 13:05:52 +02:00
Mark Dumay
2f5b49397e Merge pull request #1479 from gethinode/develop
Fix justification of section title
2025-06-29 13:04:54 +02:00
Mark Dumay
632f3d861b Merge branch 'main' into develop 2025-06-29 12:56:11 +02:00
Mark Dumay
004063f02a Refine content blocks page 2025-06-29 12:34:48 +02:00
Mark Dumay
1bd498f816 Fix justification of section title 2025-06-29 12:34:36 +02:00
github-actions[bot]
291220256a Merge pull request #1476 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.144.9
Bump hugo-bin from 0.144.8 to 0.144.9
2025-06-25 15:13:07 +00:00
Mark Dumay
7bcb87a73e Merge branch 'main' into dependabot/npm_and_yarn/hugo-bin-0.144.9 2025-06-25 17:08:13 +02:00
Mark Dumay
55cebc752e Merge pull request #1478 from gethinode/develop
Fix sharing label
2025-06-25 17:06:43 +02:00
Mark Dumay
14bf59a551 Merge branch 'main' into develop 2025-06-25 17:02:01 +02:00
Mark Dumay
bce0fedd15 Fix sharing label 2025-06-25 17:01:34 +02:00
Mark Dumay
694e7fc7b1 Merge branch 'main' into dependabot/npm_and_yarn/hugo-bin-0.144.9 2025-06-25 16:41:39 +02:00
Mark Dumay
93749cb368 Merge pull request #1477 from gethinode/develop
Fix missing image set widths
2025-06-25 16:41:27 +02:00
Mark Dumay
cf01e22a4d Merge branch 'main' into develop 2025-06-25 16:33:20 +02:00
Mark Dumay
f416f6bb7e Fix missing image set widths 2025-06-25 16:32:55 +02:00
dependabot[bot]
a7b776c0dc Bump hugo-bin from 0.144.8 to 0.144.9
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.144.8 to 0.144.9.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.144.8...v0.144.9)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-version: 0.144.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-23 14:48:51 +00:00
Mark Dumay
e70f3acb57 Merge pull request #1475 from gethinode/develop
Refine arguments
2025-06-23 13:04:14 +02:00
Mark Dumay
6e7b40ad0f Remove redundant file example 2025-06-23 12:57:35 +02:00
Mark Dumay
7446b2958e Merge branch 'main' into develop 2025-06-23 12:49:20 +02:00
Mark Dumay
6c18ada352 Update build stats 2025-06-23 12:48:42 +02:00
Mark Dumay
323b42996b Fix titleCase setting 2025-06-23 12:44:20 +02:00
Mark Dumay
ab8074b293 Update dependencies 2025-06-23 12:42:33 +02:00
Mark Dumay
9419e18ba9 Update file arguments 2025-06-23 12:42:27 +02:00
Mark Dumay
0f007ba5c2 Update articles arguments 2025-06-23 12:42:02 +02:00
Mark Dumay
7d0943fb0c Fix deprecated video arguments 2025-06-23 12:41:36 +02:00
Mark Dumay
3d2cfdaf0a Support title case for structured type headers 2025-06-23 12:41:17 +02:00
Mark Dumay
281c16b561 Refine card group arguments 2025-06-23 12:40:51 +02:00
Mark Dumay
fe68bd6be3 Simplify rendering of page modification date 2025-06-23 12:39:35 +02:00
Mark Dumay
3bf0c241a3 Update dependencies 2025-06-23 11:51:12 +02:00
Mark Dumay
a6a670cd2b Bump package release 2025-06-23 11:51:03 +02:00
Mark Dumay
a44b5449f8 Merge pull request #1472 from gethinode/develop
Fix handling of card parent arguments
2025-06-20 11:58:37 +02:00
Mark Dumay
461f53c67e Merge branch 'main' into develop 2025-06-20 11:52:23 +02:00
Mark Dumay
9a5059d8bd Fix handling of card parent arguments 2025-06-20 11:48:08 +02:00
Mark Dumay
c1586ee00e Bump package release 2025-06-20 11:01:50 +02:00
Mark Dumay
88d2a50954 Simplify page layout structure 2025-06-20 11:01:18 +02:00
Mark Dumay
77aa394c8e Merge pull request #1471 from gethinode/develop
Support xs buttons
2025-06-20 10:28:25 +02:00
Mark Dumay
5d4147fea9 Merge branch 'main' into develop 2025-06-20 10:23:49 +02:00
Mark Dumay
9c1d84487d Clean up button example 2025-06-20 10:21:58 +02:00
Mark Dumay
944a9705d7 Bump package release 2025-06-20 10:18:42 +02:00
Mark Dumay
5e274d952a Add args shortcode to example blog 2025-06-20 10:18:04 +02:00
Mark Dumay
a7f2d6d003 Use GetPadding from mod-utils 2025-06-20 10:17:21 +02:00
Mark Dumay
057ae25f7b Use xs button for inline release links 2025-06-20 10:16:46 +02:00
Mark Dumay
a6454e3b4e Support xs buttons 2025-06-20 10:16:21 +02:00
Mark Dumay
4b8f59782a Improve error handling of getdimension utility function 2025-06-20 10:14:43 +02:00
github-actions[bot]
777c4f671f Merge pull request #1470 from gethinode/dependabot/npm_and_yarn/stylelint-16.21.0
Bump stylelint from 16.20.0 to 16.21.0
2025-06-19 14:09:18 +00:00
dependabot[bot]
990a016434 Bump stylelint from 16.20.0 to 16.21.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.20.0 to 16.21.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.20.0...16.21.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.21.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-19 13:59:32 +00:00
Mark Dumay
1e64f4f009 Merge pull request #1469 from gethinode/develop
Enable purge settings
2025-06-19 07:42:12 +02:00
Mark Dumay
8bd3f0a254 Fix purge settings of mod-simple-datatables 2025-06-19 07:09:37 +02:00
Mark Dumay
d6b3aaeb99 Merge branch 'main' into develop 2025-06-18 19:35:46 +02:00
Mark Dumay
e2e351f964 Enable purge settings 2025-06-18 19:35:09 +02:00
Mark Dumay
b711d0591d Merge pull request #1468 from gethinode/develop
Clean up core files
2025-06-18 19:32:13 +02:00
Mark Dumay
7a76408876 Merge branch 'main' into develop 2025-06-18 19:21:57 +02:00
Mark Dumay
1a53fdc636 Update build stats 2025-06-18 19:20:12 +02:00
Mark Dumay
81f60a28e1 Use updated animation arguments 2025-06-18 19:20:03 +02:00
Mark Dumay
193edecd03 Clean up obsolete file 2025-06-18 19:19:42 +02:00
Mark Dumay
9ed4d00d19 Use arguments from mod-utils instead 2025-06-18 19:19:32 +02:00
Mark Dumay
e821670be9 Update dependencies 2025-06-18 19:19:08 +02:00
Mark Dumay
7f7c8d12d9 Clean up base style 2025-06-18 19:18:58 +02:00
Mark Dumay
450e065117 Update dependencies 2025-06-18 19:18:05 +02:00
Mark Dumay
1360a750a5 Merge pull request #1466 from gethinode/develop
Fix margins of hero
2025-06-18 07:17:32 +02:00
Mark Dumay
e7bb3ba1ca Merge branch 'main' into develop 2025-06-18 07:07:53 +02:00
Mark Dumay
5121c1cf1c Merge pull request #1464 from gethinode/hugo-mod-dependencies
Update Hugo module dependencies
2025-06-18 07:07:23 +02:00
Mark Dumay
50bf5fa168 Merge branch 'main' into hugo-mod-dependencies 2025-06-18 06:55:35 +02:00
Mark Dumay
363fcc3788 Fix margins of hero 2025-06-18 06:54:49 +02:00
Mark Dumay
d2e2b424b8 Merge pull request #1465 from gethinode/develop
Refactor navbar logo
2025-06-18 06:25:08 +02:00
Mark Dumay
859140e92f Merge branch 'main' into develop 2025-06-18 06:17:30 +02:00
Mark Dumay
38ef1bbbfe Bump package version 2025-06-18 06:16:35 +02:00
Mark Dumay
508da2ba2b Refactor navbar logo 2025-06-18 06:16:00 +02:00
Mark Dumay
529301ec8b Bump dependencies 2025-06-18 06:14:31 +02:00
markdumay
91acdeca75 fix: update Hugo module dependencies 2025-06-18 03:28:09 +00:00
Mark Dumay
805350c7b7 Merge pull request #1463 from gethinode/develop
Fix highlight of example bookshop input
2025-06-17 19:11:18 +02:00
Mark Dumay
9900dce30d Merge branch 'main' into develop 2025-06-17 19:00:58 +02:00
Mark Dumay
d40927f97a Fix highlight of example bookshop input 2025-06-17 19:00:28 +02:00
Mark Dumay
8c5e032514 Merge pull request #1462 from gethinode/develop
Make padding globally configurable
2025-06-17 18:40:21 +02:00
Mark Dumay
47a410f333 Merge branch 'main' into develop 2025-06-17 17:30:29 +02:00
Mark Dumay
fe0d3553fb Make padding globally configurable 2025-06-17 17:29:56 +02:00
Mark Dumay
05af8f72a3 Merge pull request #1461 from gethinode/develop
Refactor bookshop components
2025-06-17 06:28:15 +02:00
Mark Dumay
977c82b10d Fix separator padding and width 2025-06-17 06:17:31 +02:00
Mark Dumay
be92798dec Merge branch 'main' into develop 2025-06-17 05:54:59 +02:00
Mark Dumay
db9b96797a Bump package release 2025-06-17 05:54:11 +02:00
Mark Dumay
d41d58cf5d Refactor bookshop components 2025-06-17 05:53:33 +02:00
github-actions[bot]
d3fe893287 Merge pull request #1460 from gethinode/dependabot/npm_and_yarn/eslint-9.29.0
Bump eslint from 9.28.0 to 9.29.0
2025-06-16 14:13:36 +00:00
dependabot[bot]
e64a08c339 Bump eslint from 9.28.0 to 9.29.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.28.0 to 9.29.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.28.0...v9.29.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.29.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 14:05:37 +00:00
Mark Dumay
900fce4169 Merge pull request #1459 from gethinode/develop
Refine content blocks
2025-06-11 16:59:46 +02:00
Mark Dumay
c82f9a41d4 Merge branch 'main' into develop 2025-06-11 16:51:36 +02:00
Mark Dumay
ea83db2eeb Fix image mode rendering 2025-06-11 16:48:35 +02:00
Mark Dumay
d37c2f6517 Add cards content block 2025-06-11 16:40:16 +02:00
Mark Dumay
68a4859638 Add articles example 2025-06-11 16:39:41 +02:00
Mark Dumay
81494cb1ed Bump package release 2025-06-11 05:49:02 +02:00
Mark Dumay
8307e2ab57 FIx timeline bug using workaround 2025-06-11 05:48:08 +02:00
Mark Dumay
4e6aad33d6 Merge pull request #1458 from gethinode/develop
FIx rendering of inner nav-item content
2025-06-10 17:24:04 +02:00
Mark Dumay
8c3989e4f1 Merge branch 'main' into develop 2025-06-10 17:12:37 +02:00
Mark Dumay
42a81bab5f FIx rendering of inner nav-item content 2025-06-10 17:10:36 +02:00
Mark Dumay
559f7be37f Merge pull request #1456 from gethinode/develop
Refine argument validation
2025-06-10 08:08:20 +02:00
Mark Dumay
a51e0c81c0 Fix gutter init 2025-06-10 08:01:02 +02:00
Mark Dumay
463a6b229c Merge branch 'main' into develop 2025-06-09 19:45:27 +02:00
Mark Dumay
60302a7d36 Bump package release 2025-06-09 19:44:47 +02:00
Mark Dumay
31395afee3 Drop redundant file 2025-06-09 19:43:57 +02:00
Mark Dumay
40d16ebab9 Drop abbr key 2025-06-09 19:43:30 +02:00
Mark Dumay
5aa08d45f2 Make type validation warnings suppressable 2025-06-09 19:43:16 +02:00
Mark Dumay
2a05087eab Drop header of home page blogs 2025-06-09 19:29:45 +02:00
Mark Dumay
24ae3d3ca1 Update dependencies 2025-06-09 19:29:09 +02:00
Mark Dumay
6b250b8d4c Merge pull request #1455 from gethinode/develop
Refine assets
2025-06-08 08:34:23 +02:00
Mark Dumay
90f8f91e61 Merge branch 'main' into develop 2025-06-08 08:26:31 +02:00
Mark Dumay
cc0d83189d Enhance rendering of args shortcode 2025-06-08 08:24:52 +02:00
Mark Dumay
4d4db9e870 Add default hook for card images 2025-06-08 07:19:10 +02:00
Mark Dumay
58cfcc9131 Improve backwards compatibility of kbd shortcode 2025-06-08 07:18:06 +02:00
Mark Dumay
362aae875e Fix video asset bugs 2025-06-08 07:16:50 +02:00
Mark Dumay
3f3a7c21e3 Fix handling of color modes for images 2025-06-08 07:15:54 +02:00
Mark Dumay
dddb881628 Update dependencies 2025-06-08 07:14:00 +02:00
Mark Dumay
1a0b2f5632 Merge pull request #1454 from gethinode/develop
Clean up modules
2025-06-08 05:58:08 +02:00
Mark Dumay
b25de1eb02 Merge branch 'main' into develop 2025-06-08 05:50:04 +02:00
Mark Dumay
0a0315e531 Bump package version 2025-06-08 05:48:52 +02:00
Mark Dumay
9a1a1405fe Update build stats 2025-06-08 05:48:31 +02:00
Mark Dumay
f7bda6236e Update footer arguments 2025-06-08 05:48:27 +02:00
Mark Dumay
c8c5384bd3 Clean up modules 2025-06-08 05:48:03 +02:00
Mark Dumay
4d4d5ad9bd Update dependencies 2025-06-08 05:47:53 +02:00
Mark Dumay
ffa359806f Merge pull request #1453 from gethinode/develop
Refactor code
2025-06-07 15:44:49 +02:00
Mark Dumay
a2a32662d1 Fix example-bookshop on Windows 2025-06-07 15:33:22 +02:00
Mark Dumay
1ea7e3734f Merge branch 'main' into develop 2025-06-07 14:50:33 +02:00
Mark Dumay
afb6524fc1 Refactor links asset 2025-06-07 14:43:46 +02:00
Mark Dumay
6d0d217da1 Refactor hero-image 2025-06-07 14:34:17 +02:00
Mark Dumay
23e8a14ea0 Upgrade dependencies 2025-06-07 14:19:59 +02:00
Mark Dumay
bfc4584583 Fix linting issues 2025-06-07 14:19:17 +02:00
Mark Dumay
50daaa0415 Refactor image helpers 2025-06-07 14:12:51 +02:00
Mark Dumay
35bb3d3c50 Improve code layout 2025-06-07 14:12:35 +02:00
Mark Dumay
7bea8050bf Improve code layout 2025-06-07 14:12:17 +02:00
Mark Dumay
4f9901c6ab Improve code layout 2025-06-07 14:12:05 +02:00
Mark Dumay
dd75e9b4af Refactor download element 2025-06-07 14:10:57 +02:00
Mark Dumay
ee244cace3 Clean up code 2025-06-07 14:10:30 +02:00
Mark Dumay
150282c274 Fix pages filter 2025-06-07 14:10:04 +02:00
Mark Dumay
efeabfe8c6 Add option to force show articles button 2025-06-07 14:09:51 +02:00
Mark Dumay
9a30a12547 Improve code layout 2025-06-07 08:01:47 +02:00
Mark Dumay
694509e4e2 Refactor card group 2025-06-07 08:01:35 +02:00
Mark Dumay
827db014bf Refactor live pages 2025-06-07 08:01:14 +02:00
Mark Dumay
f528f12fb5 Refactor image rendering 2025-06-07 08:00:56 +02:00
Mark Dumay
2f7c5b0f4e Fix more button 2025-06-07 07:26:51 +02:00
Mark Dumay
6080998ba9 Refactor live assets 2025-06-05 17:28:47 +02:00
Mark Dumay
e48f75c572 Remove obsolete list asset 2025-06-05 17:28:38 +02:00
Mark Dumay
79c0139887 Standardize assets 2025-06-05 17:28:24 +02:00
Mark Dumay
6e5316fb7d Refactor button 2025-06-05 16:29:32 +02:00
Mark Dumay
a1db830818 Add missing translations 2025-06-05 16:28:02 +02:00
Mark Dumay
d1f63fa0e8 Add missing translations 2025-06-05 14:15:15 +02:00
Mark Dumay
9cbc5dea20 Refactor link asset and shortcode 2025-06-05 14:15:08 +02:00
Mark Dumay
fa8ae34136 Refactor carousel shortcode 2025-06-05 07:20:29 +02:00
Mark Dumay
cba21df8bb Refactor command shortcode 2025-06-05 07:16:51 +02:00
Mark Dumay
8cef4eb317 Improve error handling 2025-06-05 06:58:15 +02:00
Mark Dumay
6766fb9f4f Refactor collapse shortcode 2025-06-05 06:45:39 +02:00
Mark Dumay
59371ed72e Refactor command shortcode 2025-06-05 06:40:13 +02:00
Mark Dumay
b111fd13d2 Rename video argument from host to provider 2025-06-05 06:40:01 +02:00
Mark Dumay
c8f7cec162 Refactor docs shortcode 2025-06-04 16:33:37 +02:00
Mark Dumay
93f0d88c22 Update comments 2025-06-04 16:30:18 +02:00
Mark Dumay
691da89124 Refactor example shortcodes 2025-06-04 16:22:18 +02:00
Mark Dumay
1db7f5ac9f Fix error handling of file shortcode 2025-06-04 16:22:08 +02:00
Mark Dumay
3d226799c4 Refactor file shortcode 2025-06-04 16:04:47 +02:00
Mark Dumay
5a6b96d255 Update comments 2025-06-04 16:04:10 +02:00
Mark Dumay
e2d6630390 Standardize argument validation 2025-06-04 13:41:56 +02:00
Mark Dumay
ba855228da Update dependencies 2025-06-04 13:41:33 +02:00
Mark Dumay
c0007335ab Refactor carousel item 2025-06-04 13:41:24 +02:00
Mark Dumay
105034219f Refactor kbd shortcode 2025-06-04 08:32:30 +02:00
Mark Dumay
814887911c Standardize arguments 2025-06-04 08:23:06 +02:00
Mark Dumay
0fd34c98f8 Refactor mark shortcode 2025-06-04 08:21:27 +02:00
Mark Dumay
4a3d2e53cc Refactor persona shortcode 2025-06-04 08:18:24 +02:00
Mark Dumay
38e871a857 Fix error validation of release shortcode 2025-06-04 08:18:15 +02:00
Mark Dumay
94c5a5d585 Refactor release 2025-06-04 08:13:40 +02:00
Mark Dumay
3ba638ea46 Standardize arguments 2025-06-04 08:13:31 +02:00
Mark Dumay
19303d6181 Refactor spinner 2025-06-04 07:27:11 +02:00
Mark Dumay
709719b689 Refactor sup 2025-06-04 07:24:58 +02:00
Mark Dumay
6f169388e2 Refactor sub 2025-06-04 07:24:55 +02:00
Mark Dumay
494f203866 Refactor timeline to support bookshop component 2025-06-04 07:17:33 +02:00
github-actions[bot]
220a645e10 Merge pull request #1452 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.144.7
Bump hugo-bin from 0.144.6 to 0.144.7
2025-06-02 14:52:47 +00:00
dependabot[bot]
4165ccb1ac Bump hugo-bin from 0.144.6 to 0.144.7
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.144.6 to 0.144.7.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.144.6...v0.144.7)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-version: 0.144.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 14:46:51 +00:00
github-actions[bot]
543a2708a3 Merge pull request #1451 from gethinode/dependabot/npm_and_yarn/eslint-9.28.0
Bump eslint from 9.27.0 to 9.28.0
2025-06-02 14:45:21 +00:00
dependabot[bot]
f70ddb4779 Bump eslint from 9.27.0 to 9.28.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.27.0 to 9.28.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.27.0...v9.28.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.28.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 14:39:35 +00:00
Mark Dumay
2fb48b51f5 Update nav arguments 2025-06-01 10:30:26 +02:00
Mark Dumay
9dd220ad47 Drop debug statement 2025-06-01 10:30:15 +02:00
Mark Dumay
b40f4eaebe Improve code layout 2025-06-01 10:28:46 +02:00
Mark Dumay
87a7ddf514 Refactor nav partial and shortcode 2025-06-01 10:28:14 +02:00
Mark Dumay
1c2c896a32 Refactor toast shortcode 2025-05-31 14:55:47 +02:00
Mark Dumay
f0493ec9f7 Rename placement argument to arrangement 2025-05-31 14:46:38 +02:00
Mark Dumay
af26baf31c Refactor tooltip shortcode 2025-05-31 14:45:32 +02:00
Mark Dumay
9749a1c0a9 Include argument group 2025-05-31 14:19:45 +02:00
Mark Dumay
ebbee9ba40 Standardize title argument of accordion 2025-05-31 14:19:26 +02:00
Mark Dumay
f7085d70fe Refactor button group shortcode 2025-05-31 14:08:43 +02:00
Mark Dumay
69ce5e43b0 Render argument warnings 2025-05-31 14:08:18 +02:00
Mark Dumay
0267f25232 Refactor breadcrumb shortcode 2025-05-31 13:57:38 +02:00
Mark Dumay
16048b0cee Refactor badge shortcode 2025-05-31 13:54:11 +02:00
Mark Dumay
ccd945d49c Refine code layout 2025-05-31 13:51:11 +02:00
Mark Dumay
5c9f274dab Refactor alert shortcode 2025-05-31 13:49:53 +02:00
Mark Dumay
713cf5946c Refactor accordion shortcode 2025-05-31 13:36:31 +02:00
Mark Dumay
9f3ed31e59 Refine code layout 2025-05-31 13:35:58 +02:00
Mark Dumay
c8f95ce71c Refine code layout 2025-05-31 13:20:23 +02:00
Mark Dumay
055aed5832 Refactor assets 2025-05-31 13:20:11 +02:00
Mark Dumay
99b10995ec Update video arguments 2025-05-31 13:19:19 +02:00
Mark Dumay
bc37e291e6 Refactor navbar 2025-05-31 13:18:36 +02:00
Mark Dumay
6b1e241fad Include version prefix 2025-05-31 11:53:45 +02:00
Mark Dumay
e2df3c4005 Delete superfluous assets 2025-05-31 07:12:43 +02:00
Mark Dumay
0b4851796a Refactor assets 2025-05-31 07:12:27 +02:00
Mark Dumay
5524957f60 Improve code layout 2025-05-31 07:12:04 +02:00
Mark Dumay
414b46c7de Refactor video asset and shortcodes 2025-05-31 06:26:22 +02:00
Mark Dumay
fdccaadabc Standardize args 2025-05-31 06:22:12 +02:00
github-actions[bot]
41a9aaf033 Merge pull request #1450 from gethinode/dependabot/npm_and_yarn/stylelint-16.20.0
Bump stylelint from 16.19.1 to 16.20.0
2025-05-30 13:21:42 +00:00
dependabot[bot]
9f9af30a22 Bump stylelint from 16.19.1 to 16.20.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.19.1 to 16.20.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.19.1...16.20.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.20.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-30 13:16:51 +00:00
Mark Dumay
b10c0d443d Add images 2025-05-30 14:24:49 +02:00
Mark Dumay
c208b760b7 Extend i18n entries 2025-05-30 14:24:34 +02:00
Mark Dumay
6dd75f2407 Update build stats 2025-05-30 14:24:17 +02:00
Mark Dumay
bf2c0f4f42 Update default index page 2025-05-30 14:24:05 +02:00
Mark Dumay
38d832c11f Add bookshop example shortcode 2025-05-30 14:23:46 +02:00
Mark Dumay
9b359a1a2f Update dependencies 2025-05-30 14:23:14 +02:00
Mark Dumay
d1d006bf25 Update dependencies 2025-05-30 14:23:00 +02:00
Mark Dumay
9a1875b187 Refine styles 2025-05-30 14:22:48 +02:00
Mark Dumay
4e9cd4e389 Refactor initial partials and shortcodes 2025-05-30 14:21:48 +02:00
Mark Dumay
392d382c07 Update dependencies 2025-05-30 13:59:19 +02:00
Mark Dumay
30bb980d6f Simplify page layouts 2025-05-30 13:58:36 +02:00
Mark Dumay
58edbc6b2f Simplify page layouts 2025-05-30 13:56:56 +02:00
Mark Dumay
c71e77043f Simplify page layouts 2025-05-30 13:56:15 +02:00
Mark Dumay
b57b2e8d83 Simplify page layouts 2025-05-30 13:56:00 +02:00
Mark Dumay
f6898056a1 Simplify page layouts 2025-05-30 13:54:30 +02:00
Mark Dumay
9904a18519 Add content block examples 2025-05-30 13:53:17 +02:00
Mark Dumay
6583c2b860 Resolve deprecated twitter config 2025-05-30 13:50:45 +02:00
Mark Dumay
95c19813d2 Add initial content blocks 2025-05-30 13:49:56 +02:00
Mark Dumay
6d1229fd90 Update dependencies 2025-05-30 13:47:57 +02:00
github-actions[bot]
cc40aa71e3 Merge pull request #1448 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.144.6
Bump hugo-bin from 0.144.5 to 0.144.6
2025-05-28 13:57:26 +00:00
dependabot[bot]
4232dec87a Bump hugo-bin from 0.144.5 to 0.144.6
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.144.5 to 0.144.6.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.144.5...v0.144.6)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-version: 0.144.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-28 13:53:14 +00:00
github-actions[bot]
160774c4ab Merge pull request #1447 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.144.5
Bump hugo-bin from 0.144.4 to 0.144.5
2025-05-23 13:46:21 +00:00
dependabot[bot]
80bff5fa61 Bump hugo-bin from 0.144.4 to 0.144.5
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.144.4 to 0.144.5.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.144.4...v0.144.5)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-version: 0.144.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-23 13:41:10 +00:00
github-actions[bot]
851b320fab Merge pull request #1446 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.144.4
Bump hugo-bin from 0.144.3 to 0.144.4
2025-05-20 13:45:12 +00:00
dependabot[bot]
0bc595c4d2 Bump hugo-bin from 0.144.3 to 0.144.4
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.144.3 to 0.144.4.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.144.3...v0.144.4)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-version: 0.144.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-20 13:40:43 +00:00
github-actions[bot]
810cd66dd3 Merge pull request #1445 from gethinode/dependabot/npm_and_yarn/eslint-9.27.0
Bump eslint from 9.26.0 to 9.27.0
2025-05-19 13:42:34 +00:00
dependabot[bot]
19b0c431de Bump eslint from 9.26.0 to 9.27.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.26.0 to 9.27.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.26.0...v9.27.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.27.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-19 13:37:44 +00:00
github-actions[bot]
029c8f366a Merge pull request #1442 from gethinode/dependabot/npm_and_yarn/markdownlint-cli2-0.18.1
Bump markdownlint-cli2 from 0.18.0 to 0.18.1
2025-05-15 13:56:52 +00:00
dependabot[bot]
9939503a11 Bump markdownlint-cli2 from 0.18.0 to 0.18.1
Bumps [markdownlint-cli2](https://github.com/DavidAnson/markdownlint-cli2) from 0.18.0 to 0.18.1.
- [Changelog](https://github.com/DavidAnson/markdownlint-cli2/blob/main/CHANGELOG.md)
- [Commits](https://github.com/DavidAnson/markdownlint-cli2/compare/v0.18.0...v0.18.1)

---
updated-dependencies:
- dependency-name: markdownlint-cli2
  dependency-version: 0.18.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-15 13:50:51 +00:00
github-actions[bot]
7dd2b9af0b Merge pull request #1441 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.144.3
Bump hugo-bin from 0.144.2 to 0.144.3
2025-05-13 13:47:43 +00:00
dependabot[bot]
0f7c371909 Bump hugo-bin from 0.144.2 to 0.144.3
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.144.2 to 0.144.3.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.144.2...v0.144.3)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-version: 0.144.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-13 13:41:05 +00:00
github-actions[bot]
2d91c0c9e4 Merge pull request #1440 from gethinode/dependabot/npm_and_yarn/markdownlint-cli2-0.18.0
Bump markdownlint-cli2 from 0.17.2 to 0.18.0
2025-05-12 13:57:28 +00:00
dependabot[bot]
fb0f47702c Bump markdownlint-cli2 from 0.17.2 to 0.18.0
Bumps [markdownlint-cli2](https://github.com/DavidAnson/markdownlint-cli2) from 0.17.2 to 0.18.0.
- [Changelog](https://github.com/DavidAnson/markdownlint-cli2/blob/main/CHANGELOG.md)
- [Commits](https://github.com/DavidAnson/markdownlint-cli2/compare/v0.17.2...v0.18.0)

---
updated-dependencies:
- dependency-name: markdownlint-cli2
  dependency-version: 0.18.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 13:51:03 +00:00
github-actions[bot]
f07dfa9e77 Merge pull request #1437 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.144.2
Bump hugo-bin from 0.144.1 to 0.144.2
2025-05-07 14:05:09 +00:00
dependabot[bot]
1906a0cfca Bump hugo-bin from 0.144.1 to 0.144.2
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.144.1 to 0.144.2.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.144.1...v0.144.2)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-version: 0.144.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-07 13:57:03 +00:00
github-actions[bot]
23ffb15eb8 Merge pull request #1435 from gethinode/dependabot/npm_and_yarn/cssnano-preset-advanced-7.0.7
Bump cssnano-preset-advanced from 7.0.6 to 7.0.7
2025-05-06 14:12:17 +00:00
dependabot[bot]
b798517864 Bump cssnano-preset-advanced from 7.0.6 to 7.0.7
Bumps [cssnano-preset-advanced](https://github.com/cssnano/cssnano) from 7.0.6 to 7.0.7.
- [Release notes](https://github.com/cssnano/cssnano/releases)
- [Commits](https://github.com/cssnano/cssnano/compare/cssnano-preset-advanced@7.0.6...cssnano-preset-advanced@7.0.7)

---
updated-dependencies:
- dependency-name: cssnano-preset-advanced
  dependency-version: 7.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-06 14:05:56 +00:00
github-actions[bot]
5978426771 Merge pull request #1436 from gethinode/dependabot/npm_and_yarn/cssnano-7.0.7
Bump cssnano from 7.0.6 to 7.0.7
2025-05-06 14:04:40 +00:00
dependabot[bot]
7b810caa40 Bump cssnano from 7.0.6 to 7.0.7
Bumps [cssnano](https://github.com/cssnano/cssnano) from 7.0.6 to 7.0.7.
- [Release notes](https://github.com/cssnano/cssnano/releases)
- [Commits](https://github.com/cssnano/cssnano/compare/cssnano@7.0.6...cssnano@7.0.7)

---
updated-dependencies:
- dependency-name: cssnano
  dependency-version: 7.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-06 13:59:02 +00:00
github-actions[bot]
84296e2964 Merge pull request #1433 from gethinode/dependabot/npm_and_yarn/eslint-9.26.0
Bump eslint from 9.25.1 to 9.26.0
2025-05-05 13:47:46 +00:00
dependabot[bot]
16c4833e89 Bump eslint from 9.25.1 to 9.26.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.25.1 to 9.26.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.25.1...v9.26.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.26.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 13:41:57 +00:00
Mark Dumay
60d2338308 Merge pull request #1429 from gethinode/hugo-mod-dependencies
Update Hugo module dependencies
2025-05-03 10:36:31 +02:00
Mark Dumay
30775ea52c Merge branch 'main' into hugo-mod-dependencies 2025-05-03 10:30:39 +02:00
Mark Dumay
0a43a914c5 Merge pull request #1432 from gethinode/develop
Adapt reimplemented template system
2025-05-03 10:30:17 +02:00
Mark Dumay
773a940c68 Update lock file 2025-05-03 10:21:58 +02:00
Mark Dumay
205a9d6202 Adapt reimplemented template system
See https://github.com/gohugoio/hugo/pull/13541 for more details
2025-05-03 10:21:21 +02:00
markdumay
3e68c86103 fix: update Hugo module dependencies 2025-05-03 03:21:11 +00:00
Mark Dumay
507716b1d2 Merge pull request #1394 from gethinode/hugo-mod-dependencies
Update Hugo module dependencies
2025-05-02 17:11:20 +02:00
markdumay
bee956167e fix: update Hugo module dependencies 2025-04-29 03:21:31 +00:00
github-actions[bot]
d7cfadf0ea Merge pull request #1427 from gethinode/dependabot/npm_and_yarn/stylelint-16.19.1
Bump stylelint from 16.19.0 to 16.19.1
2025-04-28 14:59:19 +00:00
dependabot[bot]
93d6fb6241 Bump stylelint from 16.19.0 to 16.19.1
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.19.0 to 16.19.1.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.19.0...16.19.1)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.19.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-28 14:53:42 +00:00
github-actions[bot]
c07c6aeb6f Merge pull request #1423 from gethinode/dependabot/npm_and_yarn/stylelint-16.19.0
Bump stylelint from 16.18.0 to 16.19.0
2025-04-23 14:00:19 +00:00
dependabot[bot]
db949c40f3 Bump stylelint from 16.18.0 to 16.19.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.18.0 to 16.19.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.18.0...16.19.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.19.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-23 13:53:41 +00:00
github-actions[bot]
87f0822b12 Merge pull request #1422 from gethinode/dependabot/npm_and_yarn/eslint-9.25.1
Bump eslint from 9.25.0 to 9.25.1
2025-04-22 13:26:29 +00:00
dependabot[bot]
f5bb33dd5a Bump eslint from 9.25.0 to 9.25.1
Bumps [eslint](https://github.com/eslint/eslint) from 9.25.0 to 9.25.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.25.0...v9.25.1)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.25.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-22 13:18:53 +00:00
github-actions[bot]
c57ceb9934 Merge pull request #1420 from gethinode/dependabot/npm_and_yarn/eslint-9.25.0
Bump eslint from 9.24.0 to 9.25.0
2025-04-21 14:11:00 +00:00
dependabot[bot]
93b475b510 Bump eslint from 9.24.0 to 9.25.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.24.0 to 9.25.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.24.0...v9.25.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.25.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-21 14:04:26 +00:00
github-actions[bot]
d136e88508 Merge pull request #1413 from gethinode/dependabot/npm_and_yarn/eslint-9.24.0
Bump eslint from 9.23.0 to 9.24.0
2025-04-07 14:21:00 +00:00
dependabot[bot]
6ade2d1243 Bump eslint from 9.23.0 to 9.24.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.23.0 to 9.24.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.23.0...v9.24.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.24.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 14:14:23 +00:00
github-actions[bot]
b05f8b0dc7 Merge pull request #1412 from gethinode/dependabot/npm_and_yarn/stylelint-16.18.0
Bump stylelint from 16.17.0 to 16.18.0
2025-04-07 14:13:06 +00:00
dependabot[bot]
6659299c7c Bump stylelint from 16.17.0 to 16.18.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.17.0 to 16.18.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.17.0...16.18.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.18.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 14:06:50 +00:00
Mark Dumay
05a32a2697 Merge pull request #1403 from maker-center/brazilian-portuguese-language
Add Brazilian Portuguese translations
2025-03-29 12:41:17 +01:00
Mark Dumay
9a53b8fad7 Merge branch 'main' into brazilian-portuguese-language 2025-03-28 07:51:39 +01:00
github-actions[bot]
300636f144 Merge pull request #1411 from gethinode/dependabot/npm_and_yarn/stylelint-16.17.0
Bump stylelint from 16.16.0 to 16.17.0
2025-03-26 13:20:37 +00:00
dependabot[bot]
a98259c5f5 Bump stylelint from 16.16.0 to 16.17.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.16.0 to 16.17.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.16.0...16.17.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-26 13:12:29 +00:00
github-actions[bot]
f3c984780e Merge pull request #1410 from gethinode/dependabot/npm_and_yarn/eslint-9.23.0
Bump eslint from 9.22.0 to 9.23.0
2025-03-24 14:34:57 +00:00
dependabot[bot]
af7fe7bc79 Bump eslint from 9.22.0 to 9.23.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.22.0 to 9.23.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.22.0...v9.23.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 14:27:23 +00:00
github-actions[bot]
75a3504a73 Merge pull request #1409 from gethinode/dependabot/npm_and_yarn/shx-0.4.0
Bump shx from 0.3.4 to 0.4.0
2025-03-17 13:44:25 +00:00
dependabot[bot]
2a24c4ab40 Bump shx from 0.3.4 to 0.4.0
Bumps [shx](https://github.com/shelljs/shx) from 0.3.4 to 0.4.0.
- [Release notes](https://github.com/shelljs/shx/releases)
- [Changelog](https://github.com/shelljs/shx/blob/main/CHANGELOG.md)
- [Commits](https://github.com/shelljs/shx/compare/v0.3.4...v0.4.0)

---
updated-dependencies:
- dependency-name: shx
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-17 13:39:41 +00:00
github-actions[bot]
429ba232f2 Merge pull request #1408 from gethinode/dependabot/npm_and_yarn/stylelint-16.16.0
Bump stylelint from 16.15.0 to 16.16.0
2025-03-17 13:38:18 +00:00
dependabot[bot]
2c1fbc859d Bump stylelint from 16.15.0 to 16.16.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.15.0 to 16.16.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.15.0...16.16.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-17 13:32:22 +00:00
github-actions[bot]
62766923e9 Merge pull request #1406 from gethinode/dependabot/npm_and_yarn/postcss-cli-11.0.1
Bump postcss-cli from 11.0.0 to 11.0.1
2025-03-13 13:49:59 +00:00
dependabot[bot]
cb2b692cf9 Bump postcss-cli from 11.0.0 to 11.0.1
Bumps [postcss-cli](https://github.com/postcss/postcss-cli) from 11.0.0 to 11.0.1.
- [Release notes](https://github.com/postcss/postcss-cli/releases)
- [Changelog](https://github.com/postcss/postcss-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss-cli/compare/11.0.0...11.0.1)

---
updated-dependencies:
- dependency-name: postcss-cli
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-13 13:44:29 +00:00
github-actions[bot]
91ab627f05 Merge pull request #1405 from gethinode/dependabot/npm_and_yarn/autoprefixer-10.4.21
Bump autoprefixer from 10.4.20 to 10.4.21
2025-03-10 13:44:59 +00:00
dependabot[bot]
abca69e378 Bump autoprefixer from 10.4.20 to 10.4.21
Bumps [autoprefixer](https://github.com/postcss/autoprefixer) from 10.4.20 to 10.4.21.
- [Release notes](https://github.com/postcss/autoprefixer/releases)
- [Changelog](https://github.com/postcss/autoprefixer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/autoprefixer/compare/10.4.20...10.4.21)

---
updated-dependencies:
- dependency-name: autoprefixer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-10 13:40:11 +00:00
github-actions[bot]
6248dcd74c Merge pull request #1404 from gethinode/dependabot/npm_and_yarn/eslint-9.22.0
Bump eslint from 9.21.0 to 9.22.0
2025-03-10 13:38:59 +00:00
dependabot[bot]
f7335cb5b9 Bump eslint from 9.21.0 to 9.22.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.21.0 to 9.22.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.21.0...v9.22.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-10 13:34:29 +00:00
Maker Center
8252cde9ca Add Brazilian Portuguese translations 2025-03-05 03:18:28 -03:00
github-actions[bot]
60ba0f6c07 Merge pull request #1402 from gethinode/dependabot/npm_and_yarn/stylelint-16.15.0
Bump stylelint from 16.14.1 to 16.15.0
2025-03-03 13:16:17 +00:00
dependabot[bot]
813457bb48 Bump stylelint from 16.14.1 to 16.15.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.14.1 to 16.15.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.14.1...16.15.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 13:10:51 +00:00
github-actions[bot]
f4c0feed0a Merge pull request #1401 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.142.0
Bump hugo-bin from 0.141.2 to 0.142.0
2025-02-27 13:30:10 +00:00
dependabot[bot]
02e9281a9b Bump hugo-bin from 0.141.2 to 0.142.0
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.141.2 to 0.142.0.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.141.2...v0.142.0)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-27 13:23:47 +00:00
github-actions[bot]
76e1274262 Merge pull request #1400 from gethinode/dependabot/npm_and_yarn/eslint-9.21.0
Bump eslint from 9.20.1 to 9.21.0
2025-02-24 14:43:54 +00:00
dependabot[bot]
33add3e1fd Bump eslint from 9.20.1 to 9.21.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.20.1 to 9.21.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.20.1...v9.21.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-24 14:38:36 +00:00
github-actions[bot]
572776af8a Merge pull request #1398 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.141.2
Bump hugo-bin from 0.141.1 to 0.141.2
2025-02-19 16:43:09 +00:00
dependabot[bot]
27a35b14fd Bump hugo-bin from 0.141.1 to 0.141.2
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.141.1 to 0.141.2.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.141.1...v0.141.2)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-19 16:37:03 +00:00
github-actions[bot]
30f1f35f52 Merge pull request #1395 from gethinode/dependabot/npm_and_yarn/eslint-9.20.1
Bump eslint from 9.20.0 to 9.20.1
2025-02-18 13:44:50 +00:00
dependabot[bot]
088fbdbbc2 Bump eslint from 9.20.0 to 9.20.1
Bumps [eslint](https://github.com/eslint/eslint) from 9.20.0 to 9.20.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.20.0...v9.20.1)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-18 13:38:43 +00:00
github-actions[bot]
bd031ffddb Merge pull request #1397 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.141.1
Bump hugo-bin from 0.140.1 to 0.141.1
2025-02-18 13:37:30 +00:00
dependabot[bot]
c1ae0730cb Bump hugo-bin from 0.140.1 to 0.141.1
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.140.1 to 0.141.1.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.140.1...v0.141.1)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-18 13:31:46 +00:00
github-actions[bot]
070641f09a Merge pull request #1393 from gethinode/dependabot/npm_and_yarn/eslint-9.20.0
Bump eslint from 9.19.0 to 9.20.0
2025-02-10 13:18:50 +00:00
dependabot[bot]
4bd5a7dff7 Bump eslint from 9.19.0 to 9.20.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.19.0 to 9.20.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.19.0...v9.20.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-10 13:11:46 +00:00
github-actions[bot]
fa58472e35 Merge pull request #1392 from gethinode/dependabot/npm_and_yarn/neostandard-0.12.1
Bump neostandard from 0.12.0 to 0.12.1
2025-02-05 14:09:33 +00:00
dependabot[bot]
6d6fcdfa5d Bump neostandard from 0.12.0 to 0.12.1
Bumps [neostandard](https://github.com/neostandard/neostandard) from 0.12.0 to 0.12.1.
- [Release notes](https://github.com/neostandard/neostandard/releases)
- [Changelog](https://github.com/neostandard/neostandard/blob/main/CHANGELOG.md)
- [Commits](https://github.com/neostandard/neostandard/compare/v0.12.0...v0.12.1)

---
updated-dependencies:
- dependency-name: neostandard
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-05 14:02:18 +00:00
github-actions[bot]
6b2b622f8f Merge pull request #1391 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.140.1
Bump hugo-bin from 0.140.0 to 0.140.1
2025-02-04 13:25:43 +00:00
dependabot[bot]
880dc959dc Bump hugo-bin from 0.140.0 to 0.140.1
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.140.0 to 0.140.1.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.140.0...v0.140.1)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-04 13:19:12 +00:00
Mark Dumay
7b4dde4022 Merge pull request #1389 from deining/removal-shortcode-comment
Remove deprecated comment shortcode
2025-02-02 12:57:14 +01:00
Mark Dumay
1a855fd44d Bump package release 2025-02-02 12:50:50 +01:00
Mark Dumay
3c06fba993 Bump embedded Hugo binary to v0.143.0 2025-02-02 12:49:09 +01:00
Andreas Deininger
c02389212a Remove deprecated comment shortcode 2025-02-02 11:25:34 +01:00
github-actions[bot]
5b1d1866d5 Merge pull request #1386 from gethinode/dependabot/npm_and_yarn/stylelint-16.14.1
Bump stylelint from 16.14.0 to 16.14.1
2025-01-28 13:40:19 +00:00
dependabot[bot]
0754bafb41 Bump stylelint from 16.14.0 to 16.14.1
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.14.0 to 16.14.1.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.14.0...16.14.1)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-28 13:35:31 +00:00
Mark Dumay
d1bedea219 Merge pull request #1384 from gethinode/develop
FIx link to page resource
2025-01-28 06:41:59 +01:00
Mark Dumay
e21815d4d2 Merge branch 'main' into develop 2025-01-28 06:29:19 +01:00
Mark Dumay
8d38e6b8c2 FIx link to page resource 2025-01-28 06:28:54 +01:00
Mark Dumay
974b0db6ee Merge pull request #1383 from gethinode/hugo-mod-dependencies
Update Hugo module dependencies
2025-01-28 05:52:56 +01:00
markdumay
1aa0243bb5 fix: update Hugo module dependencies 2025-01-28 03:06:46 +00:00
github-actions[bot]
bff00ecca6 Merge pull request #1381 from gethinode/dependabot/npm_and_yarn/stylelint-16.14.0
Bump stylelint from 16.13.2 to 16.14.0
2025-01-27 14:28:14 +00:00
dependabot[bot]
fc436a1398 Bump stylelint from 16.13.2 to 16.14.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.13.2 to 16.14.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.13.2...16.14.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-27 14:22:18 +00:00
github-actions[bot]
60b06880f7 Merge pull request #1382 from gethinode/dependabot/npm_and_yarn/eslint-9.19.0
Bump eslint from 9.18.0 to 9.19.0
2025-01-27 14:20:55 +00:00
dependabot[bot]
3e986fa135 Bump eslint from 9.18.0 to 9.19.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.18.0 to 9.19.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.18.0...v9.19.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-27 14:14:14 +00:00
github-actions[bot]
3d7c877cec Merge pull request #1379 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.139.0
Bump hugo-bin from 0.138.0 to 0.139.0
2025-01-23 13:51:05 +00:00
dependabot[bot]
f21a7bc0da Bump hugo-bin from 0.138.0 to 0.139.0
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.138.0 to 0.139.0.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.138.0...v0.139.0)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-23 13:43:24 +00:00
Mark Dumay
a4057ad498 Merge pull request #1377 from gethinode/develop
Fix rendering of Cloudinary videos in Firefox
2025-01-21 11:12:08 +01:00
Mark Dumay
09d3294867 Merge branch 'main' into develop 2025-01-21 11:00:32 +01:00
Mark Dumay
7b167e32c4 Fix rendering of Cloudinary videos in Firefox 2025-01-21 11:00:00 +01:00
Mark Dumay
941698cc15 Merge pull request #1376 from gethinode/develop
Fix math codeblock rendering
2025-01-21 09:59:23 +01:00
Mark Dumay
1ec7d7477b Merge branch 'main' into develop 2025-01-21 09:08:13 +01:00
Mark Dumay
9ef702ef06 Fix math codeblock rendering 2025-01-21 09:07:36 +01:00
Mark Dumay
5e41fddef3 Merge pull request #1375 from gethinode/develop
Apply title case to sections and sidebar menus
2025-01-20 13:22:00 +01:00
Mark Dumay
a620900c18 Merge branch 'main' into develop 2025-01-20 12:31:09 +01:00
Mark Dumay
cc25fe311d Apply title case to sections and sidebar menus 2025-01-20 12:30:39 +01:00
Mark Dumay
c057b11094 Merge pull request #1373 from gethinode/hugo-mod-dependencies
Update Hugo module dependencies
2025-01-20 12:01:16 +01:00
Mark Dumay
df6fb8f0ff Merge branch 'main' into hugo-mod-dependencies 2025-01-20 11:52:23 +01:00
Mark Dumay
a6c3de6a7d Merge pull request #1374 from gethinode/develop
Support optional title case
2025-01-20 11:52:05 +01:00
Mark Dumay
efb9c56b55 Support optional title case 2025-01-20 11:06:31 +01:00
markdumay
7e3301d277 fix: update Hugo module dependencies 2025-01-20 03:08:11 +00:00
Mark Dumay
068df86fd8 Merge pull request #1372 from gethinode/develop
Upgrade to hugo v0.141.0
2025-01-18 15:45:18 +01:00
Mark Dumay
4f57919a96 Merge branch 'main' into develop 2025-01-18 15:38:59 +01:00
github-actions[bot]
21f90455d4 Merge pull request #1371 from gethinode/dependabot/npm_and_yarn/katex-0.16.21
Bump katex from 0.16.20 to 0.16.21
2025-01-18 14:38:14 +00:00
Mark Dumay
50499a415a Merge branch 'main' into develop 2025-01-18 15:34:15 +01:00
Mark Dumay
e75c8cf40f Upgrade to hugo v0.141.0 2025-01-18 15:33:38 +01:00
dependabot[bot]
42529594b0 Bump katex from 0.16.20 to 0.16.21
Bumps [katex](https://github.com/KaTeX/KaTeX) from 0.16.20 to 0.16.21.
- [Release notes](https://github.com/KaTeX/KaTeX/releases)
- [Changelog](https://github.com/KaTeX/KaTeX/blob/main/CHANGELOG.md)
- [Commits](https://github.com/KaTeX/KaTeX/compare/v0.16.20...v0.16.21)

---
updated-dependencies:
- dependency-name: katex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-18 14:33:33 +00:00
Mark Dumay
73afeb13bd Merge pull request #1370 from gethinode/develop
Support options for Cloudinary videos
2025-01-18 15:32:32 +01:00
Mark Dumay
23ece830e2 Make video options argument optional 2025-01-18 15:26:26 +01:00
Mark Dumay
41f5dbaea1 Merge branch 'main' into develop 2025-01-18 14:30:11 +01:00
Mark Dumay
5e368f2726 Support options for Cloudinary videos 2025-01-18 14:29:33 +01:00
github-actions[bot]
2db3365115 Merge pull request #1368 from gethinode/dependabot/npm_and_yarn/markdownlint-cli2-0.17.2
Bump markdownlint-cli2 from 0.17.1 to 0.17.2
2025-01-17 13:55:59 +00:00
dependabot[bot]
bf2235a96b Bump markdownlint-cli2 from 0.17.1 to 0.17.2
Bumps [markdownlint-cli2](https://github.com/DavidAnson/markdownlint-cli2) from 0.17.1 to 0.17.2.
- [Changelog](https://github.com/DavidAnson/markdownlint-cli2/blob/main/CHANGELOG.md)
- [Commits](https://github.com/DavidAnson/markdownlint-cli2/compare/v0.17.1...v0.17.2)

---
updated-dependencies:
- dependency-name: markdownlint-cli2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-17 13:50:17 +00:00
Mark Dumay
2ab8ee674f Merge pull request #1367 from gethinode/develop
Improve rendering of TOC items
2025-01-16 14:54:34 +01:00
Mark Dumay
e52d14e21a Fix linting issues 2025-01-16 14:48:08 +01:00
Mark Dumay
46101e174e Merge branch 'main' into develop 2025-01-16 14:44:14 +01:00
Mark Dumay
d28b51aa63 Improve rendering of TOC items
The table of contents now support headings generated by shortcodes. Be sure to include an `id` if your custom partials or shortcodes include HTML headings (h1-h6). To exclude these headings from the TOC, use the attribute `fs-` to define a font size.
2025-01-16 14:42:23 +01:00
Mark Dumay
dd80ee2bfe Merge pull request #1366 from gethinode/develop
Add wrapping support to tables
2025-01-16 13:56:31 +01:00
Mark Dumay
2e8b087c48 Merge branch 'main' into develop 2025-01-16 13:45:47 +01:00
Mark Dumay
03592cba67 Add wrapping support to tables 2025-01-16 13:45:10 +01:00
Mark Dumay
65a44637d5 Merge pull request #1365 from gethinode/develop
Upgrade to PurgeCSS v7
2025-01-14 15:10:59 +01:00
Mark Dumay
6bbdb813de Merge branch 'main' into develop 2025-01-14 15:02:17 +01:00
Mark Dumay
3ad358bb96 Upgrade to PurgeCSS v7
Fixes #1333
2025-01-14 15:01:19 +01:00
github-actions[bot]
2e1c05fa63 Merge pull request #1364 from gethinode/dependabot/npm_and_yarn/stylelint-16.13.2
Bump stylelint from 16.13.0 to 16.13.2
2025-01-14 13:41:13 +00:00
dependabot[bot]
d67fc81c87 Bump stylelint from 16.13.0 to 16.13.2
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.13.0 to 16.13.2.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.13.0...16.13.2)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-14 13:34:58 +00:00
github-actions[bot]
8e532ce61b Merge pull request #1362 from gethinode/dependabot/npm_and_yarn/eslint-9.18.0
Bump eslint from 9.17.0 to 9.18.0
2025-01-13 13:19:44 +00:00
dependabot[bot]
dd7803110d Bump eslint from 9.17.0 to 9.18.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.17.0 to 9.18.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.17.0...v9.18.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-13 13:13:04 +00:00
github-actions[bot]
8c05e15693 Merge pull request #1361 from gethinode/dependabot/npm_and_yarn/stylelint-16.13.0
Bump stylelint from 16.12.0 to 16.13.0
2025-01-13 13:11:48 +00:00
dependabot[bot]
b78d0a9912 Bump stylelint from 16.12.0 to 16.13.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.12.0 to 16.13.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.12.0...16.13.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-13 13:06:35 +00:00
Mark Dumay
25aeaeb195 Merge pull request #1360 from gethinode/develop
Fix identification of active child navbar item
2025-01-12 13:29:56 +01:00
Mark Dumay
d8336200ef Merge branch 'main' into develop 2025-01-12 07:17:36 +01:00
Mark Dumay
2831b510d6 Fix identification of active child navbar item 2025-01-12 07:17:01 +01:00
Mark Dumay
ddc319e380 Merge pull request #1359 from gethinode/develop
Improve purge settings
2025-01-11 08:02:50 +01:00
Mark Dumay
0e4c493dd2 Merge branch 'main' into develop 2025-01-11 06:49:13 +01:00
Mark Dumay
48ceeb0b64 Improve purge settings 2025-01-11 06:48:47 +01:00
370 changed files with 20390 additions and 8337 deletions

View File

@@ -14,6 +14,10 @@ env:
CACHE_PATH_WIN: '~\AppData\Local\hugo_cache' CACHE_PATH_WIN: '~\AppData\Local\hugo_cache'
CACHE_PATH_MAC: '/Users/runner/Library/Caches/hugo_cache' CACHE_PATH_MAC: '/Users/runner/Library/Caches/hugo_cache'
permissions:
pull-requests: read
contents: read
jobs: jobs:
lint: lint:
runs-on: ubuntu-latest runs-on: ubuntu-latest

View File

@@ -1,41 +0,0 @@
# This workflow will run tests using node and then publish a package to npmjs.org when a release is created
# For more information see: https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages
name: Publish package to npmjs
on:
workflow_dispatch:
release:
types: [published]
env:
REGISTRY_URL: 'https://registry.npmjs.org/'
jobs:
build:
strategy:
matrix:
os: [ubuntu-latest]
node-version: [20.x]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup .npmrc file to publish to npm
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
registry-url: ${{ env.REGISTRY_URL }}
cache: 'npm'
cache-dependency-path: '**/package-lock.json'
# [27/AUG/23] Adjusted from npm ci to prevent EBADPLATFORM error due to fsevents
- name: Install npm
run: npm i
- name: Publish package to npm
run: npm publish
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

44
.github/workflows/release.yml vendored Normal file
View File

@@ -0,0 +1,44 @@
name: Release
on:
workflow_dispatch:
push:
branches:
- main
env:
HUSKY: 0
permissions:
contents: read # for checkout
jobs:
release:
name: Release
runs-on: ubuntu-latest
permissions:
contents: write # to be able to publish a GitHub release
issues: write # to be able to comment on released issues
pull-requests: write # to be able to comment on released pull requests
id-token: write # to enable use of OIDC for npm provenance
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "lts/*"
- name: Install dependencies
run: npm clean-install
- name: Verify the integrity of provenance attestations and registry signatures for installed dependencies
run: npm audit signatures
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: npx semantic-release

1
.gitignore vendored
View File

@@ -1,5 +1,6 @@
_vendor/ _vendor/
prebuild/ prebuild/
prebuild-headers/
public/ public/
resources/ resources/
node_modules/ node_modules/

1
.husky/commit-msg Normal file
View File

@@ -0,0 +1 @@
npx --no -- commitlint --edit $1

6
.husky/install.mjs Normal file
View File

@@ -0,0 +1,6 @@
// Skip Husky install in production and CI
if (process.env.NODE_ENV === 'production' || process.env.CI === 'true') {
process.exit(0)
}
const husky = (await import('husky')).default
console.log(husky())

1
.husky/pre-commit Normal file
View File

@@ -0,0 +1 @@
npm test

View File

@@ -11,6 +11,7 @@
"selector-id-pattern": null, "selector-id-pattern": null,
"selector-class-pattern": null, "selector-class-pattern": null,
"scss/no-global-function-names": null, "scss/no-global-function-names": null,
"color-function-alias-notation": null,
"number-max-precision": null, "number-max-precision": null,
"hue-degree-notation": null, "hue-degree-notation": null,
"value-no-vendor-prefix": null, "value-no-vendor-prefix": null,

45
assets/js/nav.js Normal file
View 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())
}
})
})

View File

@@ -18,23 +18,13 @@ a:active {
// Ensure main page is rendered to full viewport height // Ensure main page is rendered to full viewport height
// //
.main { .main {
min-height: 100vh;
}
.fullcover {
--navbar-height: #{$navbar-height}; --navbar-height: #{$navbar-height};
min-height: calc(100vh - var(--navbar-height));
}
.fullscreen {
--overlay-offset: #{$overlay-offset}; --overlay-offset: #{$overlay-offset};
--section-height: 88vh;
--max-section-height: 1024px;
min-height: calc(100vh - var(--overlay-offset)); min-height: 100vh;
} margin-top: var(--overlay-offset);
.main-content {
margin-top: var(--navbar-offset);
} }
$utilities: map-merge( $utilities: map-merge(
@@ -100,66 +90,24 @@ $utilities: map-merge(
) )
); );
@media screen and (orientation: portrait) {
.min-vh-custom {
min-height: 25vh !important
}
}
@media screen and (orientation: landscape) {
.min-vh-custom {
min-height: 50vh !important
}
}
:root { :root {
--nav-height: 90px; --nav-height: 90px;
} }
@include media-breakpoint-up(sm) { .section-cover {
.ratio-section { min-height: calc(var(--section-height) - var(--overlay-offset));
min-height: calc(min(100vh, 576px) - var(--nav-height));
}
}
@include media-breakpoint-up(md) {
.ratio-section {
min-height: calc(min(100vh, 768px) - var(--nav-height));
}
}
@include media-breakpoint-up(lg) {
.ratio-section {
min-height: calc(min(100vh, 992px) - var(--nav-height));
}
}
@include media-breakpoint-up(xl) {
.ratio-section {
min-height: calc(min(100vh, 1200px) - var(--nav-height));
}
} }
@include media-breakpoint-up(xxl) { @include media-breakpoint-up(xxl) {
.ratio-section { .section-cover {
min-height: calc(min(100vh, 1400px) - var(--nav-height)); min-height: calc(min(calc(var(--section-height) - var(--overlay-offset)), var(--max-section-height)));
}
}
.main-cover {
min-height: 100vh;
}
@include media-breakpoint-up(xxl) {
.main-cover {
min-height: calc(min(100vh, 1000px));
} }
} }
/* stylelint-disable media-feature-range-notation */ /* stylelint-disable media-feature-range-notation */
@media (min-height: 1400px) { @media (min-height: 1400px) {
.main-cover { .section-cover {
min-height: calc(min(100vh, 1000px)); min-height: calc(min(calc(var(--section-height) - var(--overlay-offset)), var(--max-section-height)));
} }
} }
/* stylelint-enable media-feature-range-notation */ /* stylelint-enable media-feature-range-notation */

View File

@@ -5,6 +5,8 @@
--bs-primary-dark: #{$primary-bg-subtle-dark}; --bs-primary-dark: #{$primary-bg-subtle-dark};
--bs-primary-bg-subtle: #{$primary-bg-subtle-dark}; --bs-primary-bg-subtle: #{$primary-bg-subtle-dark};
--bg-primary-subtle: rgba(var(--bs-primary-rgb), var(--bs-link-opacity, 0.1)); --bg-primary-subtle: rgba(var(--bs-primary-rgb), var(--bs-link-opacity, 0.1));
--bs-body: var(--bs-body-bg);
--bs-body-tertiary: var(--bs-tertiary-bg);
.bg-primary-subtle { .bg-primary-subtle {
background-color: var(--bg-primary-subtle) if($enable-important-utilities, !important, null); background-color: var(--bg-primary-subtle) if($enable-important-utilities, !important, null);

View File

@@ -16,6 +16,8 @@ $font-weight-normal: 300 !default;
$font-weight-bold: 600 !default; $font-weight-bold: 600 !default;
$font-weight-bolder: bolder !default; $font-weight-bolder: bolder !default;
$theme-border-radius: 1rem;
strong { strong {
font-weight: 600 if($enable-important-utilities, !important, null); font-weight: 600 if($enable-important-utilities, !important, null);
} }
@@ -33,8 +35,10 @@ $warning: h.$warning;
$danger: h.$danger; $danger: h.$danger;
$light: h.$light; $light: h.$light;
$dark: h.$dark; $dark: h.$dark;
$white: #fff !default;
$black: #000 !default; $black: #000 !default;
$body-bg: #fff !default;
$gray-100: #f8f9fa !default;
$btn-toggle-color: $black !default; $btn-toggle-color: $black !default;
$carousel-dark-indicator-active-bg: #fff !default; $carousel-dark-indicator-active-bg: #fff !default;
@@ -50,3 +54,23 @@ $primary-border-subtle-dark: mix(black, h.$primary, calc(h.$dark-mode-sha
$dropdown-transition: opacity .15s ease-in-out !default; $dropdown-transition: opacity .15s ease-in-out !default;
$dropdown-horizontal-margin-top: calc((-1.5 * 1rem) - 2px); $dropdown-horizontal-margin-top: calc((-1.5 * 1rem) - 2px);
$dropdown-horizontal-padding-y: calc(1rem + 2px); $dropdown-horizontal-padding-y: calc(1rem + 2px);
$theme-colors: (
"primary": $primary,
"secondary": $secondary,
"success": $success,
"info": $info,
"warning": $warning,
"danger": $danger,
"light": $light,
"dark": $dark,
"white": $white,
"black": $black,
"body": $body-bg,
"body-tertiary": $gray-100,
);
$btn-padding-y-xs: .08rem !default;
$btn-padding-x-xs: 0.3rem !default;
$btn-font-size-xs: $font-size-base * .6 !default;
$btn-border-radius-xs: .2rem !default;

View File

@@ -17,12 +17,17 @@ $font-weight-normal: 300 !default;
$font-weight-bold: 600 !default; $font-weight-bold: 600 !default;
$font-weight-bolder: bolder !default; $font-weight-bolder: bolder !default;
$theme-border-radius: 1rem;
strong { strong {
font-weight: 600 if($enable-important-utilities, !important, null); font-weight: 600 if($enable-important-utilities, !important, null);
} }
// scss-docs-end font // scss-docs-end font
$white: #fff !default;
$black: #000 !default; $black: #000 !default;
$body-bg: #fff !default;
$gray-100: #f8f9fa !default;
$btn-toggle-color: $black !default; $btn-toggle-color: $black !default;
$card-color: var(--bs-body-color); $card-color: var(--bs-body-color);
@@ -44,3 +49,23 @@ $dropdown-transition: opacity .15s ease-in-out !default;
$dropdown-horizontal-margin-top: calc((-1.5 * 1rem) - 2px); $dropdown-horizontal-margin-top: calc((-1.5 * 1rem) - 2px);
$dropdown-horizontal-padding-y: calc(1rem + 2px); $dropdown-horizontal-padding-y: calc(1rem + 2px);
// scss-docs-end horizontal-nav // scss-docs-end horizontal-nav
$theme-colors: (
"primary": $primary,
"secondary": $secondary,
"success": $success,
"info": $info,
"warning": $warning,
"danger": $danger,
"light": $light,
"dark": $dark,
"white": $white,
"black": $black,
"body": $body-bg,
"body-tertiary": $gray-100,
);
$btn-padding-y-xs: .08rem !default;
$btn-padding-x-xs: 0.3rem !default;
$btn-font-size-xs: $font-size-base * .6 !default;
$btn-border-radius-xs: .2rem !default;

View File

@@ -48,3 +48,7 @@ a.btn {
margin: 0 !important; margin: 0 !important;
} }
.btn-xs {
@include button-size($btn-padding-y-xs, $btn-padding-x-xs, $btn-font-size-xs, $btn-border-radius-xs);
}

View File

@@ -5,6 +5,10 @@
background-color: var(--#{$prefix}secondary-bg); background-color: var(--#{$prefix}secondary-bg);
} }
.card {
--bs-card-bg: transparent;
}
.card .card-img-wrap { .card .card-img-wrap {
overflow: hidden; overflow: hidden;
position: relative; position: relative;

View File

@@ -1,14 +1,8 @@
.nav-tabs .nav-tabs { .nav-tabs {
border: none; border: none !important;
} }
.nav-tabs .nav-link.active { .nav-callout, .tab-content {
border-bottom-color: var(--bs-body-bg) !important;
border-bottom-style: solid !important;
z-index: 1;
}
.nav-callout {
--#{$prefix}nav-callout-bg: var(--#{$prefix}light); --#{$prefix}nav-callout-bg: var(--#{$prefix}light);
--#{$prefix}nav-callout-active-bg: var(--bs-primary-bg-subtle); --#{$prefix}nav-callout-active-bg: var(--bs-primary-bg-subtle);
--#{$prefix}nav-callout-gap: #{$nav-underline-gap}; --#{$prefix}nav-callout-gap: #{$nav-underline-gap};
@@ -92,7 +86,7 @@
@if $enable-dark-mode { @if $enable-dark-mode {
@include color-mode(dark) { @include color-mode(dark) {
.nav-callout { .nav-callout, .tab-content {
--#{$prefix}nav-callout-bg: var(--#{$prefix}tertiary-bg); --#{$prefix}nav-callout-bg: var(--#{$prefix}tertiary-bg);
} }

View File

@@ -11,6 +11,10 @@
padding-right: 1rem; padding-right: 1rem;
} }
.table-border-bottom-wrap {
border-bottom-style: none !important
}
@if $enable-dark-mode { @if $enable-dark-mode {
@include color-mode(dark) { @include color-mode(dark) {
.table-striped, .table-striped-columns { .table-striped, .table-striped-columns {

View File

@@ -12,7 +12,15 @@ $semi-circle-border: 0.2rem;
@each $state in map-keys($theme-colors) { @each $state in map-keys($theme-colors) {
.timeline-#{$state} { .timeline-#{$state} {
--timeline-highlight: var(--#{$prefix}#{$state}); --timeline-highlight: var(--#{$prefix}#{$state});
}
.timeline-bg-#{$state} {
--timeline-connector-bg: var(--#{$prefix}#{$state});
}
.timeline-bg-#{$state}-subtle {
--timeline-connector-bg: var(--#{$prefix}#{$state}-bg-subtle);
} }
} }

View File

@@ -6,7 +6,6 @@
grid-area: toc; grid-area: toc;
right: 0; right: 0;
z-index: 2; z-index: 2;
height: calc(100vh - 5rem);
overflow-y: auto; overflow-y: auto;
top: 5rem; top: 5rem;
} }
@@ -75,6 +74,35 @@
} }
} }
a.toc-item {
display: block;
}
a.toc-level-1 {
margin-left: 0;
}
a.toc-level-2 {
margin-left: 1em;
}
a.toc-level-3 {
margin-left: 2em;
}
a.toc-level-4 {
margin-left: 3em;
}
a.toc-level-5 {
margin-left: 4em;
}
a.toc-level-6 {
margin-left: 5em;
}
@if $enable-dark-mode { @if $enable-dark-mode {
[data-bs-theme="dark"] { [data-bs-theme="dark"] {
.toc-button { .toc-button {

1
commitlint.config.js Normal file
View File

@@ -0,0 +1 @@
module.exports = {extends: ['@commitlint/config-conventional']}

View File

@@ -0,0 +1,12 @@
@import "modules/bookshop/shared/styles/global";
@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";
@import "modules/bookshop/theme";

View File

@@ -0,0 +1,40 @@
# Metadata about this component, to be used in the CMS
spec:
structures:
- content_blocks
label: About
description: About section
icon: fingerprint
tags: []
# Defines the structure of this component, as well as the default values
blueprint:
heading:
preheading:
title:
content:
align:
arrangement:
width:
size:
background:
backdrop:
color:
subtle:
illustration:
image:
icon:
ratio:
class:
anchor:
mode:
order:
width:
justify:
link-type:
links:
-
title:
url:
icon:
force:

View File

@@ -0,0 +1,33 @@
{{/*
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" "about" "args" .) }}
{{ if or $args.err $args.warnmsg }}
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
"partial" "component-library/components/about/about.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 }}
{{ partial "assets/hero.html" (dict
"page" page
"heading" $args.heading
"background" $args.background
"illustration" (merge (dict "ratio" "auto") $args.illustration)
"order" $args.order
"link-type" $args.linkType
"links" $args.links
"orientation" "horizontal"
"width" (or $args.width 8)
)
}}
{{- end -}}

View File

@@ -0,0 +1,3 @@
.about {
scroll-margin-block: var(--navbar-offset);
}

View File

@@ -0,0 +1,47 @@
# Metadata about this component, to be used in the CMS
spec:
structures:
- content_blocks
label: Articles
description: Articles section
icon: post
tags: []
# Defines the structure of this component, as well as the default values
blueprint:
heading:
preheading:
heading:
content:
align:
width:
hide-empty:
input:
section:
nested:
keywords:
categories:
tags:
reverse:
sort:
more:
title:
link:
cols:
padding:
limit:
pagination:
paginate:
background:
backdrop:
color:
subtle:
scroll:
bento:
cover:
header-style:
footer-style:
orientation:
class:
width:
justify:

View File

@@ -0,0 +1,114 @@
{{/*
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" "articles" "args" .)}}
{{ if or $args.err $args.warnmsg }}
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
"partial" "component-library/components/articles/articles.hugo.html"
"warnid" "warn-invalid-arguments"
"msg" "Invalid arguments"
"details" ($args.errmsg | append $args.warnmsg)
"file" page.File
)}}
{{ $error = $args.err }}
{{ end }}
{{ $pages := slice }}
{{ $result := partial "assets/live-pages.html" (dict
"page" $args.page
"section" $args.input.section
"nested" $args.input.nested
"keywords" $args.input.keywords
"categories" $args.input.categories
"tags" $args.input.tags
"sort" $args.input.sort
"reverse" $args.input.reverse
)}}
{{ $pages = $result.pages }}
<!-- Add style definitions -->
{{ $styles := slice
(dict "ratio" "1x1" "orientation" "overlay" "portrait" false "width" "6")
(dict "ratio" "4x3" "orientation" "stacked" "portrait" true "width" "3")
(dict "ratio" "1x1" "orientation" "stacked" "portrait" false "width" "3")
(dict "ratio" "16x9" "orientation" "stacked" "portrait" true "width" "3")
(dict "ratio" "1x1" "orientation" "stacked" "portrait" false "width" "3")
}}
<!-- Define more button -->
{{ $moreButton := site.Params.modules.bookshop.articles.moreButton | default false }}
{{ $moreTitle := T "more" (pluralize $args.input.section) }}
{{ $moreLink := $args.input.section }}
{{ with $args.more }}
{{ if .title }}{{ $moreTitle = .title }}{{ end }}
{{ if .link }}{{ $moreLink = .link }}{{ end }}
{{ end }}
{{ $paginate := $args.paginate }}
{{ if and $paginate page.IsPage }}
{{ partial "utilities/LogWarn.html" (dict
"partial" "component-library/components/articles/articles.hugo.html"
"msg" "Pagination not supported"
"file" page.File
)}}
{{ $paginate = false }}
{{ end }}
<!-- Main code -->
{{ if not $error }}
{{ if or (gt (len $pages) 0) (not $args.hideEmpty) }}
{{- partial "assets/section-title.html" (dict "heading" $args.heading "justify" $args.justify) -}}
{{ $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))
)}}
{{ 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
) -}}
{{ end }}
{{ if gt (len $pages) 0 }}
{{ partial $partial $params }}
{{ else }}
{{- $padding := partial "utilities/GetPadding.html" -}}
<p class="pt-{{ $padding.y }}">{{- T "emptyList" }}.</p>
{{ end }}
{{ end }}
{{ end }}

View File

@@ -0,0 +1,8 @@
.card-overlay-gradient {
position: absolute;
width: 100%;
height: 100%;
left: 0;
bottom: 0;
background: linear-gradient(to bottom, rgba(0, 0, 0, 0),rgba(0, 0, 0, 1));
}

View File

@@ -0,0 +1,34 @@
# Metadata about this component, to be used in the CMS
spec:
structures:
- content_blocks
label: Benefits
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:
icon-rounded:
padding:
background:
backdrop:
color:
subtle:
elements:
- title:
icon:
image:
mode:
content:
orientation:
class:
width:
justify:

View File

@@ -0,0 +1,72 @@
{{/*
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" "cards" "args" .)}}
{{ if or $args.err $args.warnmsg }}
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
"partial" "component-library/components/cards/cards.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" -}}
{{/* Initialize local variables */}}
{{ $list := slice }}
{{ range $args.elements }}
<!-- TODO: check mode -->
{{ $list = $list | append (dict
"title" .title
"description" (.content | page.RenderString)
"icon" .icon
"thumbnail" .image
) }}
{{ end}}
{{ if not $error }}
{{- partial "assets/section-title.html" (dict "heading" $args.heading "justify" $args.justify) -}}
{{- 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)
"cols" $args.cols
"gutter" "4"
"padding" $args.padding
"header-style" "none"
"footer-style" "none"
"icon-rounded" $args.iconRounded
"icon-style" "fa-2x"
"align" "start"
"orientation" ($args.orientation | default "horizontal-sm")
"hook" "assets/live-card.html"
) -}}
{{- 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)
"cols" $args.cols
"gutter" "4"
"padding" $args.padding
"header-style" "none"
"footer-style" "none"
"icon-rounded" $args.iconRounded
"icon-style" "fa-2x"
"align" "start"
"orientation" ($args.orientation | default "stacked")
"hook" "assets/live-card.html"
) -}}
{{ end }}

View File

@@ -0,0 +1,43 @@
# 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:
fluid:
padding:
order:
width:

View 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 }}

View File

@@ -0,0 +1,8 @@
.cta {
background-color: var(--#{$prefix}primary-bg-subtle);
}
.cta .contact-img {
background-color: var(--#{$prefix}body-bg);
border-radius: var(--bs-border-radius);
}

View File

@@ -0,0 +1,28 @@
# Metadata about this component, to be used in the CMS
spec:
structures:
- content_blocks
label: FAQ
description: Accordion of frequently asked questions
icon: expand_more
tags: []
# Defines the structure of this component, as well as the default values
blueprint:
heading:
preheading:
title:
content:
align:
width:
size:
contrast:
width:
justify:
background:
backdrop:
color:
subtle:
items:
- title:
description:

View File

@@ -0,0 +1,53 @@
{{/*
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" "faq" "args" .)}}
{{ if or $args.err $args.warnmsg }}
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
"partial" "component-library/components/faq/faq.hugo.html"
"warnid" "warn-invalid-arguments"
"msg" "Invalid arguments"
"details" ($args.errmsg | append $args.warnmsg)
"file" page.File
)}}
{{ end }}
{{ 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) -}}
{{ $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">
{{ range $index, $item := $args.items }}
<div class="accordion-item">
{{- with $item.title -}}
<div class="accordion-header m-0" id="{{ $id }}-heading-{{ $id }}">
<button class="accordion-button collapsed"
type="button"
data-bs-toggle="collapse"
data-bs-target="#{{ $id }}-item-{{ $index }}"
aria-expanded="false"
aria-controls="{{ $id }}-item-{{ $index }}"
>
{{ if $args.color }}<div class="text-{{ $args.color }}">{{ . }}</div>{{ else }}{{ . }}{{ end }}
</button>
</div>
{{- end -}}
<div id="{{ $id }}-item-{{ $index }}"
class="accordion-collapse collapse"
aria-labelledby="{{ $id }}-heading-{{ $index }}"
data-bs-parent="#{{ $id }}"
>
<div class="accordion-body">{{ $item.description | page.RenderString | safeHTML }}</div>
</div>
</div>
{{ end }}
</div>
{{ end }}

View File

@@ -0,0 +1,44 @@
$accordion-button-icon-white: url("/icons/accordion-button-icon-white.svg") !default;
$accordion-button-active-icon-white: url("/icons/accordion-button-active-icon-white.svg") !default;
.accordion-faq {
--#{$prefix}accordion-btn-padding-x: 0;
--#{$prefix}accordion-btn-focus-border-color: none;
--#{$prefix}accordion-btn-focus-box-shadow: none;
--#{$prefix}accordion-body-padding-x: 0;
--#{$prefix}accordion-active-color: var(--#{$prefix}primary);
--#{$prefix}accordion-active-bg: none;
--#{$prefix}accordion-border-color: var(--#{$prefix}body-color);
--#{$prefix}accordion-bg: none;
}
.accordion-faq .accordion-button {
font-size: $h5-font-size;
}
// note: explicitly suppresses border in Safari
.accordion-faq [aria-expanded="true"] {
--#{$prefix}accordion-border-color: none;
}
.accordion-faq-contrast {
--#{$prefix}accordion-active-color: var(--#{$prefix}white);
--#{$prefix}accordion-border-color: white;
}
.accordion-faq-contrast .accordion-button, .accordion-faq-contrast .accordion-body {
--#{$prefix}accordion-btn-icon: #{$accordion-button-icon-white};
--#{$prefix}accordion-btn-active-icon: #{$accordion-button-active-icon-white};
--#{$prefix}accordion-border-color: white;
color: white;
}
@if $enable-dark-mode {
@include color-mode(dark) {
.accordion-faq .accordion-button {
background-color: transparent;
}
}
}

View File

@@ -0,0 +1,41 @@
# Metadata about this component, to be used in the CMS
spec:
structures:
- content_blocks
label: Hero
description: Main page Hero block
icon: title
tags: []
# Defines the structure of this component, as well as the default values
blueprint:
breadcrumb:
heading:
preheading:
title:
content:
align:
arrangement:
width:
size:
background:
backdrop:
color:
subtle:
illustration:
image:
icon:
ratio:
class:
anchor:
mode:
width:
link-type:
links:
align:
order:
overlay-mode:
cover:
orientation:
width:
justify:

View File

@@ -0,0 +1,37 @@
{{/*
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" "hero" "args" .) }}
{{ if or $args.err $args.warnmsg }}
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
"partial" "component-library/components/hero/hero.hugo.html"
"warnid" "warn-invalid-arguments"
"msg" "Invalid arguments"
"details" ($args.errmsg | append $args.warnmsg)
"file" page.File
)}}
{{ end }}
{{ if not $args.err }}
{{ partial "assets/hero.html" (dict
"page" page
"breadcrumb" $args.breadcrumb
"heading" $args.heading
"background" $args.background
"illustration" $args.illustration
"align" $args.align
"order" $args.order
"overlay-mode" $args.overlayMode
"cover" $args.cover
"link-type" $args.linkType
"links" $args.links
"orientation" $args.orientation
"width" $args.width
"justify" $args.justify
)
}}
{{ end }}

View File

@@ -0,0 +1,18 @@
.background-img-fluid {
position: absolute;
object-fit: cover;
height: 100%;
width: 100%;
z-index: -1;
}
.background-container {
position: relative;
width: 100%;
height: auto;
background-color: rgba($dark, 0.8);
}
.hero-content {
z-index: 1;
}

View File

@@ -0,0 +1,35 @@
# 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:
icon-rounded:
padding:
background:
backdrop:
color:
subtle:
elements:
- title:
icon:
image:
mode:
content:
tab-type:
ratio:
class:
width:
justify:

View File

@@ -0,0 +1,81 @@
{{/*
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" -}}
{{/* 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 "title" $element.title "content" $element.content "width" 8 "size" 6)
"background" $args.background
"illustration" (dict "ratio" $args.ratio "icon" $element.icon "image" $element.image "mode" $element.mode)
"order" $args.order
"link-type" $args.linkType
"links" $args.links
"orientation" "horizontal"
"align" "start"
"width" 12
)
}}
{{- $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}}
{{ if not $error }}
{{- partial "assets/section-title.html" (dict "heading" $args.heading "justify" $args.justify) -}}
{{- 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 }}

View File

@@ -0,0 +1,3 @@
.panels .dropdown-toggle {
text-decoration: none !important;
}

View File

@@ -0,0 +1,26 @@
# Metadata about this component, to be used in the CMS
spec:
structures:
- content_blocks
label: Releases
description: Release timeline
icon: fingerprint
tags: []
# Defines the structure of this component, as well as the default values
blueprint:
heading:
preheading:
title:
content:
align:
arrangement:
width:
size:
background:
backdrop:
color:
subtle:
width:
justify:
data:

View File

@@ -0,0 +1,28 @@
{{/*
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" "releases" "args" .) }}
{{ if or $args.err $args.warnmsg }}
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
"partial" "component-library/components/releases/releases.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 }}
{{ partial "assets/timeline.html" (dict
"page" page
"background" $args.background
"heading" $args.heading
"data" $args.data
)
}}
{{- end -}}

View File

@@ -0,0 +1,10 @@
# Metadata about this component, to be used in the CMS
spec:
structures:
- content_blocks
label: Separator
description: Inserts a horizontal page section separator
icon: horizontal_rule
tags: []
blueprint:

View File

@@ -0,0 +1,20 @@
{{/*
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.
*/}}
{{ $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"
"warnid" "warn-invalid-arguments"
"msg" "Invalid arguments"
"details" ($args.errmsg | append $args.warnmsg)
"file" page.File
)}}
{{ end }}
{{ if not $args.err }}
<hr class="w-100">
{{ end }}

View File

@@ -0,0 +1,52 @@
# Metadata about this component, to be used in the CMS
spec:
structures:
- content_blocks
label: Video
description: Video section
icon: build
tags: []
# Defines the structure of this component, as well as the default values
blueprint:
heading:
preheading:
title:
content:
align:
arrangement:
width:
size:
background:
backdrop:
color:
subtle:
link-type:
orientation:
icon-rounded:
video:
provider:
account:
media-id:
autoplay:
query-args:
cols:
messages:
- title:
icon:
content:
link:
label:
border:
width:
justify:
_structures:
messages:
values:
value:
title:
icon:
content:
link:
label:

View File

@@ -0,0 +1,140 @@
{{/*
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" "video-message" "args" .) }}
{{ if or $args.err $args.warnmsg }}
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
"partial" "component-library/components/video-message/video-message.hugo.html"
"warnid" "warn-invalid-arguments"
"msg" "Invalid arguments"
"details" ($args.errmsg | append $args.warnmsg)
"file" page.File
)}}
{{ end }}
{{- $breakpoint := partial "utilities/GetBreakpoint.html" -}}
{{- $padding := partial "utilities/GetPadding.html" -}}
{{- define "_partials/inline/video.html" -}}
{{ $provider := .provider }}
{{ $account := .account }}
{{ $mediaID := (index . "media-id") }}
{{ $autoplay := .autoplay }}
{{ $queryArgs := .queryArgs }}
{{ $border := .border }}
{{ $padding := .padding }}
{{ if site.Params.env_bookshop_live }}
{{/* Define dummy content as we cannot retrieve video data in live mode */}}
{{- partial "assets/live-image.html" (dict
"src" "/img/placeholder-video.svg"
"ratio" "21x9"
"wrapper" (printf "text-center mb-%d" $padding.y)) -}}
{{ else }}
<div class="video-container{{ if $border }} video-container-border{{ end}}">
{{ partial "assets/video.html" (dict
"page" page
"provider" $provider
"account" $account
"media-id" $mediaID
"autoplay" $autoplay
"query-args" $queryArgs
) -}}
{{ if $border }}
<div class="video-overlay video-overlay-start"></div>
<div class="video-overlay video-overlay-top"></div>
<div class="video-overlay video-overlay-end"></div>
<div class="video-overlay video-overlay-bottom"></div>
{{ end }}
</div>
{{ end }}
{{ end }}
{{- define "_partials/inline/messages.html" -}}
{{ $list := .list }}
{{ $cols := .cols }}
{{ $type := .type }}
{{ $iconRounded := .iconRounded }}
{{- partial "assets/card-group.html" (dict
"page" page
"list" $list
"class" "border-0 card-icon card-icon-secondary"
"cols" $cols
"gutter" ""
"padding" "0"
"header-style" "none"
"footer-style" "none"
"icon-style" "fa-fluid fa-fw"
"align" "start"
"orientation" "horizontal-sm"
"button" true
"link-type" $type
"icon-rounded" $iconRounded
) -}}
{{ end }}
{{ if not $args.err }}
{{ $list := slice }}
{{ range $args.messages }}
{{ $path := "" }}
{{ $href := "" }}
{{ with .link }}{{ if hasPrefix . "http" }}{{ $href = . }}{{ else }}{{ $path = . }}{{ end }}{{ end }}
{{ $list = $list | append (dict
"title" .title
"description" (.content | page.RenderString)
"icon" .icon
"href" $href
"path" $path
"button-label" .label
) }}
{{ end}}
{{- partial "assets/section-title.html" (dict "heading" $args.heading "justify" $args.justify) -}}
{{ if eq $args.orientation "stacked" }}
<div class="col-{{ $breakpoint.current }}-{{ $args.width }} mx-auto pb-{{ $padding.y }}">
{{ with $args.video }}
{{- partial "inline/video.html" (dict
"provider" .provider
"account" .account
"media-id" (index . "media-id")
"autoplay" .autoplay
"query-args" .queryArgs
"border" $.border
"padding" $padding
) -}}
{{ 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>
{{ else }}
<div class="container grid gap-4 pb-{{ $padding.y }}">
<div class="row row-cols-1 row-cols-{{ $breakpoint.current }}-2">
<div class="col col-{{ $breakpoint.current }}-{{ $args.width }} p-0">
{{ with $args.video }}
{{- partial "inline/video.html" (dict
"provider" .provider
"account" .account
"media-id" (index . "media-id")
"autoplay" .autoplay
"query-args" .queryArgs
"border" $.border
"padding" $padding
) -}}
{{ 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) -}}
</div>
</div>
</div>
{{ end }}
{{ end }}

View File

@@ -0,0 +1,59 @@
.video-container {
--bs-video-border-color: var(--bs-primary);
--bs-video-border-width: 1rem;
position: relative;
}
.video-container > .video-embedded {
display: block;
width: 100%;
height: 100%;
background-color: transparent;
}
.video-container-border > .video-embedded {
width: calc(100% - var(--bs-video-border-width) / 2);
height: calc(100% - var(--bs-video-border-width) / 2);
margin-left: calc(var(--bs-video-border-width) / 2);
padding: 1rem;
}
.video-overlay {
border: calc(var(--bs-video-border-width) / 2) solid var(--bs-video-border-color);
background: var(--bs-video-border-color);
overflow: hidden;
position: absolute;
}
.video-overlay-start {
border-bottom-left-radius: $theme-border-radius;
border-top-left-radius: $theme-border-radius;
width: 1;
height: 100%;
left: 0;
bottom: 0;
}
.video-overlay-top {
width: calc(100% - 1rem);
height: 1;
left: 1rem;
top: 0;
}
.video-overlay-bottom {
width: calc(100% - 1rem);
height: 1;
left: 1rem;
bottom: 0;
}
.video-overlay-end {
border-bottom-right-radius: $theme-border-radius;
border-top-right-radius: $theme-border-radius;
width: 1;
height: 100%;
left: 100%;
bottom: 0;
}

View File

@@ -0,0 +1,91 @@
{{/* Adapted from https://github.com/CloudCannon/bookshop/blob/main/hugo/v3/core/helpers/component.html */}}
{{/*
Renders a single Bookshop component,
wrapping in in a live editing context tag.
Expects a slice:
[
<string>, # Component name
<_> # Component props
]
*/}}
{{- $component_name := index . 0 -}}
{{- $component_props := index . 1 -}}
{{- $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 -}}
{{- $resolved_component := false -}}
{{- if templates.Exists ( printf "_partials/%s" $component_path ) -}}
{{- $resolved_component = $component_path -}}
{{- else if templates.Exists ( printf "_partials/%s" $flat_component_path ) -}}
{{- $resolved_component = $flat_component_path -}}
{{- end -}}
{{- if $resolved_component -}}
{{- $id := index $component_props "id" -}}
{{- $cover := index $component_props "cover" -}}
{{- $background := index $component_props "background" -}}
{{- $backdrop := "" -}}
{{- $fluid := index $component_props "fluid" | default true -}}
{{- $style := index $component_props "wrapper" -}}
{{- $width := index $component_props "width" -}}
{{- $justify := index $component_props "justify" | default "start" -}}
{{- $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) "" -}}
{{- $wrapper := $style }}
{{ with $background }}
{{ $wrapper = partial "utilities/GetBackgroundStyle.html" (dict "background" . "class" $style) }}
{{ if reflect.IsMap $background }}
{{ with $background.backdrop }}{{ $wrapper = "" }}{{ $backdrop = . }}{{ end }}
{{ end }}
{{ end }}
{{- $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 }}
{{ 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 -}}
data-bs-theme="{{ . }}"
data-bs-overlay="{{ . }}"
{{- else -}}
{{- with $theme }}data-bs-theme="{{ . }}"{{ end -}}
{{- end -}}
>
{{- if $backdrop -}}
{{ 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-{{ 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>
</section>
{{ if not $fluid }}</div>{{ end }}
{{ "<!--bookshop-live end-->" | safeHTML }}
{{- else -}}
{{- $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) -}}
{{- end -}}

View File

@@ -0,0 +1,27 @@
{{/* Adapted from https://github.com/CloudCannon/bookshop/blob/main/hugo/v3/core/helpers/partial.html */}}
{{/*
Renders a single Bookshop partial,
wrapping in in a live editing context tag.
Expects a slice:
[
<string>, # Partial name
<_> # Partial props
]
*/}}
{{- $partial_name := index . 0 -}}
{{- $partial_props := index . 1 -}}
{{- $partial_path := partial "_bookshop/helpers/partial_key" $partial_name -}}
{{- if templates.Exists ( printf "partials/%s" $partial_path ) -}}
{{ (printf "<!--bookshop-live name(%s)-->" $partial_name) | safeHTML }}
{{ partial $partial_path $partial_props }}
{{ "<!--bookshop-live end-->" | safeHTML }}
{{- else -}}
{{- $file_loc := slicestr $partial_path 9 -}}
{{- partial "_bookshop/errors/err" (printf "Partial \"%s\" does not exist.\n Create this partial by placing a file in your bookshop at %s" $partial_name $file_loc) -}}
{{- end -}}

View File

@@ -0,0 +1,5 @@
<div>
{{ range . }}
{{ partial "bookshop" . }}
{{ end }}
</div>

View File

@@ -0,0 +1,23 @@
// Files in shared/styles will be used as global stylesheets on your site,
// as well as in the component browser and screenshots.
.display-1 > strong {
color: var(--bs-primary);
font-weight: normal !important;
}
@if $enable-dark-mode {
@include color-mode(dark) {
.preheading.text-primary {
color: #{$primary-text-emphasis-dark} !important;
}
}
}
h1[class*="display-"] {
margin-top: 0;
}
.navbar-offset {
padding-top: var(--navbar-offset);
}

View File

@@ -0,0 +1,2 @@
// Placeholder to quickly add your own styles
// The file is included last in the build pipeline

View File

@@ -84,7 +84,7 @@ home = ["HTML", "RSS", "REDIR", "netlify", "server"]
disabled = false disabled = false
simple = true simple = true
[privacy.twitter] [privacy.x]
disabled = false disabled = false
enableDNT = true enableDNT = true
simple = true simple = true
@@ -100,7 +100,7 @@ home = ["HTML", "RSS", "REDIR", "netlify", "server"]
[services] [services]
[services.instagram] [services.instagram]
disableInlineCSS = true disableInlineCSS = true
[services.twitter] [services.x]
disableInlineCSS = true disableInlineCSS = true
[services.googleAnalytics] [services.googleAnalytics]
# ID = "G-xxxxxxxxxx" # ID = "G-xxxxxxxxxx"
@@ -116,7 +116,7 @@ home = ["HTML", "RSS", "REDIR", "netlify", "server"]
[module] [module]
[module.hugoVersion] [module.hugoVersion]
extended = true extended = true
min = "0.136.3" min = "0.146.0"
[[module.mounts]] [[module.mounts]]
source = "archetypes" source = "archetypes"
target = "archetypes" target = "archetypes"
@@ -138,6 +138,28 @@ home = ["HTML", "RSS", "REDIR", "netlify", "server"]
[[module.mounts]] [[module.mounts]]
source = "static" source = "static"
target = "static" target = "static"
[[module.mounts]]
source = 'component-library'
target = 'layouts/partials/bookshop'
includeFiles = ['**/*.hugo.html']
[[module.mounts]]
source = 'component-library'
target = 'data/structures'
includeFiles = ['**/*.bookshop.yml']
[[module.mounts]]
source = 'component-library'
target = 'assets/bookshop'
[[module.mounts]]
source = 'component-library'
target = 'assets/scss/modules/bookshop'
includeFiles = ['**/*.scss']
excludeFiles = ['bookshop.scss']
[[module.mounts]]
source = 'component-library/bookshop.scss'
target = 'assets/scss/bookshop.scss'
[[module.mounts]]
source = 'component-library/helpers'
target = 'layouts/partials/_bookshop/helpers'
# ensures main package.json is always available, even when using workspaces # ensures main package.json is always available, even when using workspaces
# in workspaces, the package.json is pointing to the first imported module # in workspaces, the package.json is pointing to the first imported module
[[module.mounts]] [[module.mounts]]
@@ -147,6 +169,8 @@ home = ["HTML", "RSS", "REDIR", "netlify", "server"]
source = "netlify.toml" source = "netlify.toml"
target = "assets/config/netlify.toml" target = "assets/config/netlify.toml"
# toml-docs-start modules # toml-docs-start modules
[[module.imports]]
path = "github.com/cloudcannon/bookshop/hugo/v3"
[[module.imports]] [[module.imports]]
path = "github.com/gethinode/mod-bootstrap" path = "github.com/gethinode/mod-bootstrap"
[[module.imports]] [[module.imports]]
@@ -154,7 +178,7 @@ home = ["HTML", "RSS", "REDIR", "netlify", "server"]
[[module.imports]] [[module.imports]]
path = "github.com/gethinode/mod-flexsearch/v2" path = "github.com/gethinode/mod-flexsearch/v2"
[[module.imports]] [[module.imports]]
path = "github.com/gethinode/mod-fontawesome" path = "github.com/gethinode/mod-fontawesome/v2"
[[module.imports]] [[module.imports]]
path = "github.com/gethinode/mod-google-analytics" path = "github.com/gethinode/mod-google-analytics"
[[module.imports]] [[module.imports]]
@@ -164,9 +188,11 @@ home = ["HTML", "RSS", "REDIR", "netlify", "server"]
[[module.imports]] [[module.imports]]
path = "github.com/gethinode/mod-lottie" path = "github.com/gethinode/mod-lottie"
[[module.imports]] [[module.imports]]
path = "github.com/gethinode/mod-simple-datatables" path = "github.com/gethinode/mod-mermaid/v2"
[[module.imports]] [[module.imports]]
path = "github.com/gethinode/mod-utils/v2" path = "github.com/gethinode/mod-simple-datatables/v2"
[[module.imports]]
path = "github.com/gethinode/mod-utils/v4"
# toml-docs-end modules # toml-docs-end modules
# toml-docs-start segments # toml-docs-start segments

View File

@@ -10,6 +10,10 @@
footerBelowFold = false footerBelowFold = false
loading = "lazy" loading = "lazy"
breakpoint = "md" breakpoint = "md"
titleCase = false
[main.padding]
x = 4
y = 4
[main.internalLinks] [main.internalLinks]
validate = true validate = true
pretty = false pretty = false
@@ -41,6 +45,12 @@
host = "youtube" host = "youtube"
# toml-docs-end videos # toml-docs-end videos
[dam]
videoCodecs = [
"webm/vp9",
"mp4/h265",
"mp4"
]
# toml-docs-start debugging # toml-docs-start debugging
[debugging] [debugging]
@@ -74,6 +84,7 @@
[navigation] [navigation]
anchor = true anchor = true
logo = "/img/logo_icon.svg" logo = "/img/logo_icon.svg"
logo-height = 30
color = "body" color = "body"
fixed = true fixed = true
overlay = false overlay = false
@@ -86,6 +97,9 @@
toc = true toc = true
sidebar = true sidebar = true
size = "md" size = "md"
[navigation.padding]
x = 4
y = 4
# toml-docs-end navigation # toml-docs-end navigation
# toml-docs-start messages # toml-docs-start messages
@@ -242,3 +256,25 @@
frame-src = ["player.vimeo.com"] frame-src = ["player.vimeo.com"]
img-src = ["i.vimeocdn.com"] img-src = ["i.vimeocdn.com"]
script-src = ["player.vimeo.com"] script-src = ["player.vimeo.com"]
# define module integration
[modules.bookshop]
integration = "core"
# provide default hero settings
[modules.bookshop.hero]
align = "start"
# backdrop = "/assets/img/nat-9l98kFByiao-unsplash.jpg"
overlayMode = "dark"
section = true
default = ["section"]
# default = ["page", "home", "section"]
[modules.bookshop.title]
size = 4
arrangement = "above"
headingStyle = "display"
bodyStyle = "lead text-muted"
[modules.bookshop.articles]
moreButton = true

View File

@@ -7,17 +7,17 @@
Access-Control-Allow-Origin = '*' Access-Control-Allow-Origin = '*'
Content-Security-Policy = """ Content-Security-Policy = """
base-uri 'self'; \ base-uri 'self'; \
connect-src 'self' *.google-analytics.com *.analytics.google.com *.googletagmanager.com; \ connect-src 'self' *.analytics.google.com *.google.com *.google-analytics.com *.googletagmanager.com; \
default-src 'none'; \ default-src 'none'; \
font-src 'self' fonts.gstatic.com; \ font-src 'self' fonts.gstatic.com data:; \
form-action 'self'; \ form-action 'self'; \
frame-src player.cloudinary.com www.youtube-nocookie.com www.youtube.com player.vimeo.com; \ frame-src *.googletagmanager.com player.cloudinary.com www.youtube-nocookie.com www.youtube.com player.vimeo.com; \
img-src 'self' *.google-analytics.com *.googletagmanager.com data: *.imgix.net *.imagekit.io *.cloudinary.com i.ytimg.com tile.openstreetmap.org i.vimeocdn.com; \ img-src 'self' *.google-analytics.com *.googletagmanager.com googletagmanager.com ssl.gstatic.com www.gstatic.com data: *.imgix.net *.imagekit.io *.cloudinary.com i.ytimg.com tile.openstreetmap.org i.vimeocdn.com; \
manifest-src 'self'; \ manifest-src 'self'; \
media-src 'self'; \ media-src 'self'; \
object-src 'none'; \ object-src 'none'; \
script-src 'self' *.google-analytics.com *.googletagmanager.com player.vimeo.com; \ script-src 'self' *.google-analytics.com *.googletagmanager.com *.analytics.google.com googletagmanager.com tagmanager.google.com player.vimeo.com; \
style-src 'self' www.youtube.com; \ style-src 'self' googletagmanager.com tagmanager.google.com fonts.googleapis.com www.youtube.com; \
""" """
Permissions-Policy = 'geolocation=(), midi=(), sync-xhr=(), microphone=(), camera=(), magnetometer=(), gyroscope=(), fullscreen=(), payment=() ' Permissions-Policy = 'geolocation=(), midi=(), sync-xhr=(), microphone=(), camera=(), magnetometer=(), gyroscope=(), fullscreen=(), payment=() '
Referrer-Policy = 'strict-origin' Referrer-Policy = 'strict-origin'

View File

@@ -3,13 +3,15 @@ const cssnano = require('cssnano')({
preset: 'advanced' preset: 'advanced'
}) })
const whitelister = require('purgecss-whitelister') const whitelister = require('purgecss-whitelister')
const purgecss = require('@fullhuman/postcss-purgecss')({ const purgeImport = require('@fullhuman/postcss-purgecss')
const purgeCSSPlugin = purgeImport.purgeCSSPlugin || purgeImport.default || purgeImport
const purgecss = purgeCSSPlugin({
content: ['./hugo_stats.json'], content: ['./hugo_stats.json'],
defaultExtractor: (content) => { defaultExtractor: (content) => {
const els = JSON.parse(content).htmlElements const els = JSON.parse(content).htmlElements
return [...(els.tags || []), ...(els.classes || []), ...(els.ids || [])] return [...(els.tags || []), ...(els.classes || []), ...(els.ids || [])]
}, },
dynamicAttributes: ['data-bs-theme'], dynamicAttributes: ['data-bs-theme', 'data-bs-theme-animate'],
safelist: ['was-validated', safelist: ['was-validated',
...whitelister([ ...whitelister([
'./assets/scss/components/_clipboard.scss', './assets/scss/components/_clipboard.scss',
@@ -28,7 +30,7 @@ const purgecss = require('@fullhuman/postcss-purgecss')({
'./_vendor/github.com/gethinode/mod-flexsearch/v2/assets/scss/modules/flexsearch/flexsearch.scss', './_vendor/github.com/gethinode/mod-flexsearch/v2/assets/scss/modules/flexsearch/flexsearch.scss',
'./_vendor/github.com/gethinode/mod-katex/dist/katex.scss', './_vendor/github.com/gethinode/mod-katex/dist/katex.scss',
'./_vendor/github.com/gethinode/mod-leaflet/dist/leaflet.scss', './_vendor/github.com/gethinode/mod-leaflet/dist/leaflet.scss',
'./_vendor/github.com/gethinode/mod-simple-datatables/dist/simple-datatables.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/_carousel.scss',
'./_vendor/github.com/twbs/bootstrap/scss/_dropdown.scss', './_vendor/github.com/twbs/bootstrap/scss/_dropdown.scss',
'./_vendor/github.com/twbs/bootstrap/scss/_modal.scss', './_vendor/github.com/twbs/bootstrap/scss/_modal.scss',

View File

@@ -1,15 +1,24 @@
--- ---
title: Welcome to Hinode! title: Welcome to Hinode!
description: A clean documentation and blog theme for your Hugo site based on Bootstrap 5. description: A clean documentation and blog theme for your Hugo site based on Bootstrap 5.
thumbnail: content_blocks:
url: /img/sunrise.jpg - _bookshop_name: hero
author: Harris Vo heading:
authorURL: https://unsplash.com/@hoanvokim title: Welcome to Hinode!
origin: https://unsplash.com/photos/ZX6BPboJrYk content: |-
originName: Unsplash A clean documentation and blog theme for your Hugo site based on Bootstrap 5.
actions: width: 6
get-started: background:
url: "https://gethinode.com/docs" color: primary
title: "Get started" subtle: true
icon: "fas book-open" illustration:
image: /img/sunrise.jpg
ratio: 16x9
width: 8
links:
- title: Getting started
url: https://gethinode.com/docs
icon: fas chevron-right
orientation: horizontal
justify: center
--- ---

View File

@@ -4,12 +4,12 @@
command = "npm run build:example" command = "npm run build:example"
[build.environment] [build.environment]
DART_SASS_VERSION = "1.83.1" DART_SASS_VERSION = "1.89.2"
HUGO_VERSION = "0.140.2" HUGO_VERSION = "0.147.9"
HUGO_ENV = "production" HUGO_ENV = "production"
HUGO_ENABLEGITINFO = "true" HUGO_ENABLEGITINFO = "true"
NODE_VERSION = "22.12.0" NODE_VERSION = "22.13.0"
NPM_VERSION = "10.9.0" NPM_VERSION = "10.9.2"
# toml-docs-end netlify # toml-docs-end netlify
[context.deploy-preview] [context.deploy-preview]

View File

@@ -19,7 +19,7 @@ arguments:
the first (and only) matched argument. Non-alphanumeric keys must be quoted. the first (and only) matched argument. Non-alphanumeric keys must be quoted.
data: data:
type: string type: string
default: abbr.yaml default: abbr
optional: true optional: true
comment: >- comment: >-
Filename of the abbrevation input. You can omit the file extension. The Filename of the abbrevation input. You can omit the file extension. The

View File

@@ -1,18 +1,17 @@
comment: >- comment: >-
Defines an individual accordion item. Defines an individual accordion item.
arguments: arguments:
title:
release: v1.0.0
show:
class:
# deprecated arguments
header: header:
type: string type: string
optional: false optional: true
comment: Header of the accordion item. comment: Header of the accordion item.
show: deprecated: v1.0.0
type: bool alternative: title
optional: true
comment: Flag to indicate an item should be shown as collapsed.
class:
type: string
optional: true
comment: Class attribute of the accordion item.
body: body:
optional: false optional: false
comment: Content of the accordion item. comment: Content of the accordion item.

View File

@@ -3,16 +3,5 @@ comment: >-
items. Add accordion-item inner elements for each accordion item. items. Add accordion-item inner elements for each accordion item.
arguments: arguments:
id: id:
type: string
optional: true
comment: >-
ID of the accordion, defaults to `accordion-n` with a sequential number n.
always-open: always-open:
type: bool
optional: true
comment: >-
Flag to make accordion items stay open when another item is opened.
class: class:
type: string
optional: true
comment: Class attribute of the accordion, e.g. `w-50`.

View File

@@ -2,36 +2,14 @@ comment: >-
Use the alert shortcode to display a contextual feedback message. The inner Use the alert shortcode to display a contextual feedback message. The inner
content is used as alert text. content is used as alert text.
arguments: arguments:
alert-type:
release: v1.0.0
class: class:
type: string
optional: true
comment: Class attribute of the alert element.
color: color:
type: select
optional: true
default: danger default: danger
comment: Theme color of the alert.
options:
values:
- primary
- secondary
- success
- danger
- warning
- info
- light
- dark
- white
- black
dismissible: dismissible:
type: bool
optional: true
default: false
comment: Flag to indicate the alert is dismissible.
icon: icon:
type: string # deprecated arguments
optional: true
comment: Font Awesome icon to include.
type: type:
type: select type: select
optional: true optional: true
@@ -40,6 +18,8 @@ arguments:
values: values:
- danger - danger
- info - info
deprecated: v1.0.0
alternative: alert-type
body: body:
optional: false optional: false
comment: Alert text. comment: Alert text.

View File

@@ -2,6 +2,9 @@ comment: >-
Generates a markdown table of structured arguments. The argument definitions are Generates a markdown table of structured arguments. The argument definitions are
expected to be defined in a data file identified by a provided structure name. expected to be defined in a data file identified by a provided structure name.
arguments: arguments:
page:
optional: false
group: partial
structure: structure:
type: string type: string
position: 0 position: 0
@@ -9,7 +12,8 @@ arguments:
comment: >- comment: >-
Name of the data file that contains argument definitions. Supported data Name of the data file that contains argument definitions. Supported data
formats include JSON, TOML, YAML, and XML. You can omit the file formats include JSON, TOML, YAML, and XML. You can omit the file
extension. The file should reside in the `data/structures` folder. extension. The file should reside in the `data/structures` folder. For
bookshop components, add the `bookshop-` prefix to the structure name.
group: group:
type: string type: string
position: 1 position: 1
@@ -25,3 +29,28 @@ arguments:
comment: >- comment: >-
Flag to filter only arguments that have a parent attribute (either Flag to filter only arguments that have a parent attribute (either
`cascade` or `merge`). `cascade` or `merge`).
render-type:
type: select
position: 3
default: both
optional: true
comment: >-
Option whether to render arguments, user-defined types, or both. Please
note that the arguments will render a link to a user-defined type in any
case.
options:
values:
- arguments
- types
- both
release: v1.0.0
header-level:
type: int
default: 3
optional: true
options:
min: 1
max: 6
comment: >-
The header level to use for the user-defined type headers.
release: v1.0.0

View File

@@ -0,0 +1,5 @@
comment: >-
Applies styling to the background of a element.
arguments:
background:
class:

View File

@@ -1,27 +1,6 @@
comment: Use the badge shortcode to enrich headings. comment: Use the badge shortcode to enrich headings.
arguments: arguments:
title: title:
type: string
optional: false
comment: Title of the badge.
class: class:
type: string
optional: true
comment: Class attribute of the badge element.
color: color:
type: select
optional: true
default: secondary default: secondary
comment: Theme color of the element.
options:
values:
- primary
- secondary
- success
- danger
- warning
- info
- light
- dark
- white
- black

View File

@@ -1,16 +1,4 @@
comment: Displays a breadcrumb for a specific page. comment: Displays a breadcrumb for a specific page.
arguments: arguments:
page: page:
type:
- '*hugolib.pageState'
- '*hugolib.pageForShortcode'
optional: false
comment: Page to display the breadcrumb for.
group: partial
path: path:
type: string
optional: true
comment: Path of the page to display the breadcrumb for.
group: shortcode

View File

@@ -2,13 +2,7 @@ comment: >-
Displays a group of buttons. Add inner <button> elements for each button. Displays a group of buttons. Add inner <button> elements for each button.
arguments: arguments:
label: label:
type: string
optional: true
comment: Assistive label for the button group.
aria-label: aria-label:
type: string
optional: true
comment: Alias for label.
body: body:
type: string type: string
optional: false optional: false

View File

@@ -2,50 +2,51 @@ comment: >-
Display a button with a hyperlink. Display a button with a hyperlink.
arguments: arguments:
title: title:
type:
- string
- template.HTML
optional: true
comment: Title of the button, required unless icon is set.
class: class:
type: string
optional: true
comment: Class attribute of the button element, e.g. `p-5`.
color: color:
type: select
optional: true
default: primary default: primary
comment: Theme color of the element.
options:
values:
- primary
- secondary
- success
- danger
- warning
- info
- light
- dark
- white
- black
href: href:
type:
- string
- template.URL
optional: true
comment: >-
Address for the button or hyperlink. Automatically assigned when using
collapse.
relref: relref:
type: string
optional: true
comment: >-
Name of the page to link to. Replaces `href` with a relative link if set.
group: shortcode group: shortcode
id: id:
type: string button-state:
release: v1.0.0
button-size:
release: v1.0.0
outline:
badge:
label:
aria-label:
group: shortcode
tooltip:
collapse-id:
link-type:
release: v1.0.0
placement:
icon:
order:
justify:
toast-id:
release: v1.0.0
clipboard:
cue:
tab:
attributes:
spacing:
wrapper:
group: shortcode
# deprecated arguments
type:
type: select
optional: true optional: true
comment: Identifier of the button, to be used in the DOM. default: button
comment: Type of the element.
options:
values:
- link
- button
deprecated: v1.0.0
alternative: link-type
state: state:
type: select type: select
optional: true optional: true
@@ -57,6 +58,8 @@ arguments:
- disabled - disabled
- active - active
- inactive - inactive
deprecated: v1.0.0
alternative: button-state
size: size:
type: select type: select
optional: true optional: true
@@ -67,124 +70,19 @@ arguments:
- sm - sm
- md - md
- lg - lg
outline: deprecated: v1.0.0
type: bool alternative: button-size
optional: true
default: false
comment: Flag indicating the button should be outlined.
badge:
type: string
optional: true
comment: Positioned badge to display on top of the button.
label:
type: string
optional: true
comment: >-
Assistive label for the button or badge. The label is applied
to the badge instead of the button when a badge has been defined.
The default value of the button's assistive label is its title.
aria-label:
type: string
optional: true
comment: Alias for label.
group: shortcode
tooltip:
type: string
optional: true
comment: >-
Text to display in a tooltip. Cannot be used together with
collapse. Ignored for active/inactive buttons.
collapse:
type: string
optional: true
comment: >-
Panel to collapse. Cannot be used together with tooltip. Ignored for
active/inactive buttons.
type:
type: select
optional: true
default: button
comment: Type of the element.
options:
values:
- link
- button
placement:
type: select
optional: true
default: top
comment: Position of the tooltip.
options:
values:
- top
- bottom
- left
- right
icon:
type: string
optional: true
comment: >-
Font Awesome icon class attribute, required unless title is set. An
example value is `fas sort`.
order:
type: select
optional: true
default: last
comment: Order of the icon
options:
values:
- first
- last
justify:
type: select
optional: true
default: center
comment: Justification of the button title and icon.
options:
values:
- start
- end
- center
- between
- around
- evenly
toast: toast:
type: string type: string
optional: true optional: true
comment: Identifier (ID) of the toast to display when the button is clicked. comment: Identifier (ID) of the toast to display when the button is clicked.
clipboard: deprecated: v1.0.0
type: alternative: toast-id
- string collapse:
- template.URL
optional: true
comment: Text to be copied to the clipboard when the button is clicked.
cue:
type: bool
optional: true
comment: >-
Flag to indicate if an external link should show a visual cue, defaults
to the setting `main.externalLinks.cue` in the site's parameters.
tab:
type: bool
optional: true
comment: >-
Flag to indicate if an external link should open in a new tab, defaults
to setting `main.externalLinks.tab` in the site's parameters.
attributes:
type: map[string]interface {}
optional: true
comment: >-
Dictionary of key-value pairs added as custom attributes to the button
element ('<a>').
group: partial
spacing:
type: bool
optional: true
default: true
comment: >-
Flag to add spacing to the inline button.
wrapper:
type: string type: string
optional: true optional: true
comment: Element class of the button wrapper. comment: >-
group: shortcode ID of the panel to collapse. Cannot be used together with tooltip. Ignored
for active/inactive buttons.
deprecated: v1.0.0
alternative: collapse-id

View File

@@ -6,161 +6,165 @@ comment: >-
behavior). Be aware a page can only contain one paginator at a time. behavior). Be aware a page can only contain one paginator at a time.
arguments: arguments:
page: page:
type:
- '*hugolib.pageState'
- '*hugolib.pageForShortcode'
optional: true optional: true
comment: Context of the current page.
group: partial
title: title:
type: string
optional: true optional: true
comment: Title of the card group. class:
color:
padding:
gutter: gutter:
type: int
optional: true
default: 4
comment: Gutter between columns in a group.
options:
min: 0
max: 5
release: v0.19.0 release: v0.19.0
header-style:
release: 1.0.0
body-style:
release: 1.0.0
footer-style:
release: 1.0.0
list: list:
type:
- 'page.Pages'
- 'resource.Resources'
- '[]map[string]interface {}'
optional: true
comment: Array of pages or structured content to be rendered as cards.
group: partial
cards: cards:
type: string limit:
optional: true release: v1.0.0
comment: String of rendered cards.
group: partial
max:
type: int
optional: true
comment: Maximum number of cards to display.
group: partial
options:
min: 1
cols: cols:
type: select
optional: true
default: "3"
comment: Number of grid columns.
options:
values:
- "1"
- "2"
- "3"
- "4"
- "5"
- "auto"
release: v0.19.0 release: v0.19.0
paginate: paginate:
type: bool
optional: true
comment: >-
Flag indicating if pagination should be added to the card group, if the
list exceeds the maximum number of cards to display.
group: partial
pagination: pagination:
type: int
optional: true
comment: >-
Number of elements per page in pagination, overrides site settings.
group: partial
options:
min: 1
release: v0.23.12 release: v0.23.12
href: href:
group: partial
href-title:
release: v1.0.0
href-force:
release: v1.0.0
group: partial
separator:
loading:
ratio:
portrait:
icon-rounded:
release: v1.0.0
align:
wrapper:
default: p-0
responsive:
link-type:
release: v1.0.0
scroll:
icon-style:
release: v1.0.0
orientation:
subtle:
button:
spacer:
release: v0.24.16
hook:
default: assets/card.html
group: partial
bento:
release: v0.27.0
valign:
release: v0.27.0
styles:
release: v0.27.0
button-label:
release: v1.0.0
# deprecated arguments
header:
type: select
optional: true
default: full
parent: cascade
comment: >-
Header components of the card, displayed in small caps.
options:
values:
- full
- publication
- tags
- none
deprecated: v1.0.0
alternative: header-style
body:
type: select
optional: true
default: full
parent: cascade
release: v0.24.16
comment: >-
Body components of the element.
options:
values:
- full
- title
- none
deprecated: v1.0.0
alternative: body-style
footer:
type: select
optional: true
default: none
parent: cascade
comment: >-
Footer components of the element, displayed in small caps.
options:
values:
- full
- publication
- tags
- none
deprecated: v1.0.0
alternative: footer-style
iconRounded:
type: bool
parent: cascade
optional: true
release: v0.24.8
deprecated: v1.0.0
alternative: icon-rounded
comment: Stack the icon in a round container.
buttonType:
type: select
parent: cascade
optional: true
default: button
comment: Type of the button element.
release: v0.23.18
deprecated: v1.0.0
alternative: link-type
options:
values:
- link
- button
style:
type: string
parent: cascade
optional: true
release: v0.23.0
comment: Icon style.
deprecated: v1.0.0
alternative: icon-style
buttonLabel:
type: string type: string
optional: true optional: true
release: v0.23.2
comment: >- comment: >-
Address for the button or hyperlink. If set, a button is added if the Label of the link button, defaults to the card title.
list exceeds the maximum number of cards to display. deprecated: v1.0.0
group: partial alternative: button-label
hrefTitle: hrefTitle:
type: string type: string
optional: true optional: true
comment: >- comment: >-
Title of the button or hyperlink as companion to href. Title of the button or hyperlink as companion to href.
group: partial group: partial
separator: deprecated: v1.0.0
type: bool alternative: href-title
max:
type: int
optional: true optional: true
comment: >- comment: Maximum number of elements to display.
Flag to indicate a horizontal line should be added between items on small
screens.
wrapper:
type: string
default: p-0
optional: true
comment: >-
Class attributes of the wrapper element, e.g. `p-4 px-xxl-0`.
responsive:
type: bool
optional: true
default: true
comment: >-
Flag indicating if the number of columns should be responsive, defaults to
`true`.
buttonType:
type: select
optional: true
default: button
release: v0.23.18
comment: Type of the button elements.
options:
values:
- link
- button
scroll:
type: bool
optional: true
comment: >-
Enables horizontal scrolling of the cards. By default, the card group
wraps any cards beyond the amount of defined columns to a new line. When
`scroll` is set to true, a horizontal scroll bar is added instead.
spacer:
type: bool
optional: true
comment: >-
Inserts a spacer before the card.
release: v0.24.16
group: partial group: partial
hook:
type: string
optional: true
default: assets/card.html
comment: Render hook for the card partial.
group: partial
bento:
type: bool
optional: true
default: false
comment: >-
Trigger to use a bento-style layout instead of default grid layout.
release: v0.27.0
valign:
type: select
optional: true
comment: >-
Defines the vertical card alignment, only applicable in bento layout.
release: v0.27.0
options: options:
values: min: 1
- start deprecated: v1.0.0
- center alternative: limit
- end
styles:
type:
- '[]map[string]interface {}'
optional: true
comment: >-
Styles to apply to the individual cards. Supported elements are `ratio`,
`orientation`, `portrait`, and `width`. The styles are rotated when the
amount of cards exceeds the available amount of styles.
release: v0.27.0

View File

@@ -4,79 +4,74 @@ comment: >-
arguments override any page attributes. arguments override any page attributes.
arguments: arguments:
title: title:
type: string
optional: true optional: true
comment: >-
Title of the card, replaces the title of the referenced page (if any).
path: path:
type: path
optional: true
comment: >-
Path of the page that the card reference to. If omitted, specify the
title, icon, thumbnail, and description (inner content) as needed.
href: href:
type: url
optional: true
comment: >-
Address for the button or hyperlink.
group: partial group: partial
class: class:
type: string
optional: true
parent: merge parent: merge
comment: >-
Class attribute of the card element, e.g. “w-50”.
color: color:
type: select
optional: true optional: true
parent: cascade parent: cascade
comment: >-
Theme color of the card. By default, no color is specified.
options:
values:
- primary
- secondary
- success
- danger
- warning
- info
- light
- dark
- white
- black
- body
- body-tertiary
padding: padding:
type: select
optional: true
default: auto
parent: cascade parent: cascade
comment: >-
Padding of the content.
options:
values:
- "0"
- "1"
- "2"
- "3"
- "4"
- "5"
- "auto"
gutter: gutter:
type: select default: 0
optional: true
default: "0"
parent: cascade parent: cascade
comment: >- header-style:
Gutter between columns in a group. parent: cascade
options: release: 1.0.0
values: body-style:
- "0" parent: cascade
- "1" release: 1.0.0
- "2" footer-style:
- "3" parent: cascade
- "4" release: 1.0.0
- "5" description:
group: partial
loading:
parent: cascade
group: partial
thumbnail:
ratio:
parent: cascade
group: partial
portrait:
parent: cascade
release: v0.24.16
alt:
release: v0.19.0
icon:
icon-rounded:
release: v1.0.0
align:
parent: cascade
release: v0.23.0
scroll:
parent: cascade
group: partial
wrapper:
icon-style:
release: v1.0.0
orientation:
parent: cascade
subtle:
parent: cascade
release: v0.23.0
button:
parent: cascade
release: v0.23.0
button-label:
release: v1.0.0
link-type:
hook:
default: assets/image.html
group: partial
sizes:
group: partial
anchor:
release: v0.24.23
# deprecated arguments
header: header:
type: select type: select
optional: true optional: true
@@ -90,6 +85,8 @@ arguments:
- publication - publication
- tags - tags
- none - none
deprecated: 1.0.0
alternative: header-style
body: body:
type: select type: select
optional: true optional: true
@@ -97,158 +94,37 @@ arguments:
parent: cascade parent: cascade
release: v0.24.16 release: v0.24.16
comment: >- comment: >-
Body of the card. Body components of the element.
options: options:
values: values:
- full - full
- title - title
- none - none
deprecated: 1.0.0
alternative: body-style
footer: footer:
type: select type: select
optional: true optional: true
default: none default: none
parent: cascade parent: cascade
comment: >- comment: >-
Footer components of the card, displayed in small caps. Footer components of the element, displayed in small caps.
options: options:
values: values:
- full - full
- publication - publication
- tags - tags
- none - none
description: deprecated: v1.0.0
type: alternative: footer-style
- string
- template.HTML
optional: true
comment: >-
Description of the card.
group: partial
loading:
type: select
optional: true
parent: cascade
default: eager
comment: >-
Loading behavior of the image. The loading of lazily loaded images is
deferred until the image is within scrolling range of the viewport. This
should reduce the initial loading time of the website. It is recommended
to lazily load only those images that are below the page fold.
options:
values:
- lazy
- eager
group: partial
thumbnail:
type: path
optional: true
comment: >-
Thumbnail image url, displayed on top or the left of the card.
ratio:
type: select
optional: true
parent: cascade
comment: >-
Ratio of the thumbnail image, defaults to `16x9` (stacked orientation)
or `1x1` (horizontal orientation).
options:
values:
- 1x1
- 3x2
- 4x3
- 16x9
- 21x9
group: partial
portrait:
type: bool
parent: cascade
optional: true
default: false
release: v0.24.16
comment: >-
Flag to adjust the ratio from landscape to portrait. The image itself is
not rotated, only the crop area is adjusted. Not applicable to vector
graphics.
alt:
type: string
optional: true
release: v0.19.0
comment: >-
Alternate text for the thumbnail, uses `title` by default.
icon:
type: string
optional: true
comment: >-
Font Awesome icon, displayed on top or the left of the card.
iconRounded: iconRounded:
type: bool type: bool
parent: cascade parent: cascade
optional: true optional: true
release: v0.24.8 release: v0.24.8
deprecated: v1.0.0
alternative: icon-rounded
comment: Stack the icon in a round container. comment: Stack the icon in a round container.
align:
type: select
parent: cascade
optional: true
default: start
release: v0.23.0
comment: Icon alignment.
options:
values:
- start
- end
- center
scroll:
type: bool
parent: cascade
optional: true
group: partial
comment: >-
Enables horizontal scrolling of the cards. By default, the card group
wraps any cards beyond the amount of defined columns to a new line. When
`scroll` is set to true, a horizontal scroll bar is added instead.
wrapper:
type: string
optional: true
comment: Element class of the card wrapper.
style:
type: string
parent: cascade
optional: true
release: v0.23.0
comment: Icon style.
orientation:
type: select
optional: true
default: stacked
parent: cascade
comment: Placement of the thumbnail or icon.
options:
values:
- stacked
- horizontal
- horizontal-sm
- overlay
- none
subtle:
type: bool
parent: cascade
optional: true
release: v0.23.0
comment: Apply subtle background colors.
button:
type: bool
parent: cascade
optional: true
release: v0.23.0
comment: >-
Flag indicating the cards should include a button that links to the provided address.
buttonLabel:
type: string
optional: true
release: v0.23.2
comment: >-
Label of the link button, defaults to the card title.
buttonType: buttonType:
type: select type: select
parent: cascade parent: cascade
@@ -256,42 +132,28 @@ arguments:
default: button default: button
comment: Type of the button element. comment: Type of the button element.
release: v0.23.18 release: v0.23.18
deprecated: v1.0.0
alternative: link-type
options: options:
values: values:
- link - link
- button - button
hook: style:
type: string
parent: cascade
optional: true
release: v0.23.0
comment: Icon style.
deprecated: v1.0.0
alternative: icon-style
buttonLabel:
type: string type: string
optional: true optional: true
comment: Render hook for the image partial. release: v0.23.2
group: partial
sizes:
type: string
default: 100vw
optional: true
comment: >- comment: >-
One or more strings separated by commas, indicating the source sizes of an Label of the link button, defaults to the card title.
image set. deprecated: v1.0.0
group: partial alternative: button-label
anchor:
type: select
optional: true
comment:
Anchor of the thumbnail's crop box, defaults to anchor value set in
`imaging` section of the site configuration (usually `Smart`).
options:
values:
- TopLeft
- Top
- TopRight
- Left
- Center
- Right
- BottomLeft
- Bottom
- BottomRight
- Smart
release: v0.24.23
body: body:
optional: true optional: true
comment: >- comment: >-

View File

@@ -1,59 +1,11 @@
comment: Renders a carousel item with a responsive image. comment: Renders a carousel item with a responsive image.
arguments: arguments:
page: page:
type:
- '*hugolib.pageState'
- '*hugolib.pageForShortcode'
optional: false
comment: Context of the current page.
group: partial
src: src:
type: string
optional: false
comment: Path or url of the image, e.g. `img/example.jpg`.
ratio: ratio:
type: string
optional: true
comment: >-
Ratio of the image. If set, the image is resized and cropped to match the
ratio. Else the original aspect ratio of the image is kept.
options:
values:
- 1x1
- 3x2
- 4x3
- 16x9
- 21x9
group: partial group: partial
portrait: portrait:
type: bool
optional: true
default: false
comment: >-
Flag to adjust the ratio from landscape to portrait. The image itself
is not rotated, only the crop area is adjusted. Not applicable to vector
graphics.
group: partial group: partial
loading: loading:
type: select
default: eager
optional: true
comment: >-
Loading behavior of the image. The loading of lazily loaded images is
deferred until the image is within scrolling range of the viewport. This
should reduce the initial loading time of the website. It is recommended
to lazily load only those images that are below the pagefold.
options:
values:
- eager
- lazy
caption: caption:
type: string
optional: true
comment: Carousel slide caption.
active: active:
type: bool
optional: true
comment: >-
Sets the current carousel item as active (only one item at a time). By
default, the first slide is made active.

View File

@@ -3,36 +3,10 @@ comment: >-
more details). Add inner `img` elements to define individual image slides. more details). Add inner `img` elements to define individual image slides.
arguments: arguments:
id: id:
type: string
optional: true
comment: >-
ID of the carousel, defaults to `carousel-n` with a sequential number `n`.
ratio: ratio:
type: select
optional: true
comment: >-
Ratio of the images. If set, the images are resized and cropped to match the
ratio. Else the original aspect ratio of the image is kept.
options:
values:
- 1x1
- 3x2
- 4x3
- 16x9
- 21x9
portrait: portrait:
type: bool
optional: true
default: false
comment: >-
Flag to adjust the ratio from landscape to portrait. The images themselves
are not rotated, only the crop area is adjusted. Not applicable to vector
graphics.
release: v0.18.3 release: v0.18.3
class: class:
type: string
optional: true
comment: Class attribute of the carousel element, e.g. `w-75`.
body: body:
type: string type: string
optional: false optional: false

View File

@@ -1,14 +1,7 @@
comment: Defines a hidden panel that can be reveiled by a trigger. comment: Defines a hidden panel that can be reveiled by a trigger.
arguments: arguments:
id: id:
type: string
optional: false
comment: >-
ID of the collapse element, e.g. `collapse-1`.
class: class:
type: string
optional: true
comment: Class attribute of the inner panel element, e.g. `p-3`.
body: body:
type: string type: string
optional: false optional: false

View File

@@ -3,31 +3,10 @@ comment: >-
languages. languages.
arguments: arguments:
user: user:
type: string
optional: true
comment: User to add to the prompt, e.g. `user`.
host: host:
type: string
optional: true
comment: Host to add to the prompt, e.g. `localhost`.
prompt: prompt:
type: string
optional: true
comment: Prompt override, e.g. `PS C:\Users\User>`.
shell: shell:
type: select
optional: true
default: bash
comment: Type of shell.
options:
values:
- bash
- powershell
- sql
class: class:
type: string
optional: true
comment: Class attribute of the command element.
body: body:
type: string type: string
optional: false optional: false

View 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

View File

@@ -6,39 +6,9 @@ comment: >-
The snippet between the two markers is then rendered using syntax highlighting. The snippet between the two markers is then rendered using syntax highlighting.
arguments: arguments:
name: name:
type: string
optional: false
comment: >-
Name of the code snippet, used to identify the relevant section of the
input file.
file: file:
type: string
optional: false
comment: >-
Path of the input file. The path is relative to the `basePath` defined in
the `docs` section of the site's parameters. If the file starts with `./`,
the path of the repository is used as base path instead.
show: show:
type: bool
optional: true
default: true default: true
comment: >-
If unset, shows the panel with the code snippet in collapsed state. By
default, the panel is expanded.
full: full:
type: bool
optional: true
default: true
comment: >-
If unset, shows the filename only. By default, the entire path (relative
to the base path) is shown.
id: id:
type: string
optional: true
comment: >-
ID of the collapse panel holding the code snippet, defaults to
`docs-collapse-n` with a sequential number `n` starting at `1`.
class: class:
type: string
optional: true
comment: Class attribute of the tab control that wraps the docs element.

View File

@@ -0,0 +1,15 @@
comment: Generate a download button.
arguments:
download:
title:
class:
color:
default: primary
outline:
default: true
icon:
default: fas download
button-size:
default: sm
justify:
minimal:

View File

@@ -3,30 +3,28 @@ comment: >-
accepts the languages supported by Hugo's highlight function. accepts the languages supported by Hugo's highlight function.
arguments: arguments:
id: id:
type: string
optional: true
comment: Identifier of the elements container.
lang: lang:
type: string
optional: true
default: markdown default: markdown
comment: >- class:
Language used to display the code. Use `hugo` to process Hugo (escaped) show-markup:
shortcodes. release: v1.0.0
show-preview:
release: v1.0.0
# deprecated arguments
show_markup: show_markup:
type: bool type: bool
optional: true optional: true
default: true default: true
comment: Indicates if the markup should be output in the HTML. comment: Indicates if the markup should be output in the HTML.
deprecated: v1.0.0
alternative: show-markup
show_preview: show_preview:
type: bool type: bool
optional: true optional: true
default: true default: true
comment: Indicates if the preview should be output in the HTML. comment: Indicates if the preview should be output in the HTML.
class: deprecated: v1.0.0
type: string alternative: show-preview
optional: true
comment: Class attributes of the element's container.
body: body:
type: string type: string
optional: false optional: false

View File

@@ -0,0 +1,12 @@
arguments:
page:
icon:
image:
mode:
ratio:
sizes:
title:
wrapper:
class:
anchor:

View File

@@ -2,44 +2,31 @@ comment: >-
Print the full content of any given file supported by the Chroma syntax Print the full content of any given file supported by the Chroma syntax
highlighter. highlighter.
arguments: arguments:
file:
optional: true
release: v1.0.0
lang:
show:
default: true
full:
id:
class:
highlight-options:
release: v1.0.0
# deprecated arguments
path: path:
type: string type: string
optional: false
comment: >- comment: >-
Path of the input file. The path is relative to the `basePath` defined in Path of the input file. The path is relative to the `basePath` defined in
the `docs` section of the site's parameters. If the file starts with `./`, the `docs` section of the site's parameters. If the file starts with `./`,
the path of the repository is used as base path instead. the path of the repository is used as base path instead.
lang: deprecated: v1.0.0
type: string alternative: file
optional: true
comment: >-
Language to be used by the syntax highlighter. If not set, the
language is derived from the file extension.
show:
type: bool
optional: true
comment: >-
If unset, shows the panel with the code in collapsed state. By default,
the panel is expanded.
full:
type: bool
optional: true
default: true
comment: >-
If unset, shows the filename only. By default, the entire path (relative
to the base path) is shown.
id:
type: string
optional: true
comment: >-
Identifier of the collapse panel, defaults to `file-collapse-n` with a
sequential number `n` starting at 1.
class:
type: string
optional: true
comment: Class attribute of the tab control that wraps the file element.
options: options:
type: string type: string
optional: true optional: true
comment: Hugo highlighting options. comment: >-
Hugo highlighting options, see https://gohugo.io/shortcodes/highlight/#options-1.
release: v0.27.6 release: v0.27.6
deprecated: v1.0.0
alternative: highlight-options

View File

@@ -0,0 +1,18 @@
comment: >-
Initializes images dimensions (widht x height for supported image ratios.
arguments:
ratio:
type: select
optional: true
comment: >-
Ratio of the media asset. When the asset is an image, it is resized and
cropped (not applicable to vector graphics). For video assets, the padding
of the embedded frame is adjusted.
options:
values:
- 1x1
- 3x2
- 4x3
- 16x9
- 21x9
- auto

View File

@@ -0,0 +1,14 @@
arguments:
page:
icon:
image:
anchor:
mode:
ratio:
sizes:
title:
wrapper:
class:
image-overlay:
justify:

30
data/structures/hero.yml Normal file
View File

@@ -0,0 +1,30 @@
comment: >-
Displays a hero banner, typically placed at the top of the page. The hero
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:
illustration:
link-type:
links:
align:
order:
overlay-mode:
cover:
orientation:
width:
justify:
use-section:
use-title:
size:
class:
padding:
default: px-4 px-xxl-0 py-4
width:
default: 8
theme:
hook:
default: assets/hero-image.html

View File

@@ -1,29 +1,36 @@
comment: >- comment: >-
Rewrites an origin URL to a target URL as supported by a CDN image adapter. Rewrites an origin URL to a target URL as supported by a CDN image adapter.
arguments: arguments:
url-host:
release: v1.0.0
url-dir:
release: v1.0.0
url-file:
release: v1.0.0
account: account:
type: string
optional: true
comment: Account name of the origin server.
container: container:
type: string # deprecated arguments
optional: true
comment: Container name of the origin server.
host: host:
type: string type: string
optional: true optional: true
comment: >- comment: >-
Host of an URL. For example, the host of the URL Host of an URL. For example, the host of the URL
'https://example.com/first/second/third.webp' equals 'example.com'. 'https://example.com/first/second/third.webp' equals 'example.com'.
deprecated: v1.0.0
alternative: url-host
dir: dir:
type: string type: string
optional: true optional: true
comment: >- comment: >-
All but the last element of an URL extension. For example, the dir of the All but the last element of an URL extension. For example, the dir of the
URL 'https://example.com/first/second/third.webp' equals '/first/second/'. URL 'https://example.com/first/second/third.webp' equals '/first/second/'.
deprecated: v1.0.0
alternative: url-dir
file: file:
type: string type: string
optional: false optional: false
comment: >- comment: >-
The last element of an URL extension. For example, the file of the The last element of an URL extension. For example, the file of the
URL 'https://example.com/first/second/third.webp' equals 'third.webp'. URL 'https://example.com/first/second/third.webp' equals 'third.webp'.
deprecated: v1.0.0
alternative: url-file

View File

@@ -1,79 +1,19 @@
comment: >- comment: >-
Defines the interface to be implemented by a CDN image adapter. Defines the interface to be implemented by a CDN image adapter.
arguments: arguments:
host: url-host:
type: string release: v1.0.0
optional: true url-dir:
comment: >- release: v1.0.0
Host of an URL. For example, the host of the URL url-file:
'https://example.com/first/second/third.webp' equals 'example.com'. release: v1.0.0
dir: absolute-url:
type: string release: v1.0.0
optional: true
comment: >-
All but the last element of an URL extension. For example, the dir of the
URL 'https://example.com/first/second/third.webp' equals '/first/second/'.
file:
type: string
optional: false
comment: >-
The last element of an URL extension. For example, the file of the
URL 'https://example.com/first/second/third.webp' equals 'third.webp'.
absoluteURL:
type: string
optional: true
default: false
comment: >-
Defines if a local image should use absolute instead of relative paths.
img: img:
type: "*resources.resourceAdapter"
optional: true
comment: >-
Image resource to process. Must be set when handling local images.
format: format:
type: select
optional: true
comment: >-
Image format; leave empty for an auto format (if supported) or default
format (usually jpg).
options:
values:
- png
- jpg
- gif
- tiff
- bmp
- webp
transform: transform:
type: select image-height:
optional: false release: v1.0.0
comment: Image transformation. image-width:
options: release: v1.0.0
values:
- fill
- fit
height:
type: int
optional: false
comment: Height of the image in pixels.
width:
type: int
optional: false
comment: Width of the image in pixels.
anchor: anchor:
type: select
optional: true
comment: Anchor of the crop box.
options:
values:
- TopLeft
- Top
- TopRight
- Left
- Center
- Right
- BottomLeft
- Bottom
- BottomRight
- Smart

View File

@@ -0,0 +1,19 @@
arguments:
src:
page:
mode:
ratio:
portrait:
image-height:
image-width:
loading:
priority:
sizes:
title:
caption:
wrapper:
class:
figclass:
plain:
anchor:
absolute-url:

View File

@@ -0,0 +1,10 @@
arguments:
src:
page:
ratio:
portrait:
image-height:
image-width:
plain:
anchor:
imageset:

View File

@@ -0,0 +1,5 @@
arguments:
src:
account:
container:
hook:

View File

@@ -0,0 +1,11 @@
arguments:
src:
img:
absolute-url:
release: v1.0.0
dims:
hook:
transform:
format:
anchor:
include-width:

View File

@@ -18,6 +18,37 @@ comment: >-
graphics support an optional anchor `#` in their url to denote a symbol graphics support an optional anchor `#` in their url to denote a symbol
reference. reference.
arguments: arguments:
src:
type: string
optional: true
position: 0
page:
optional: true
mode:
ratio:
portrait:
release: v0.18.3
loading:
release: v0.21.0
priority:
sizes:
group: partial
title:
caption:
wrapper:
release: v0.18.3
class:
figclass:
release: v0.23.0
plain:
release: v0.24.0
anchor:
release: v0.24.22
image-height:
release: v1.0.0
image-width:
release: v1.0.0
# deprecated arguments
url: url:
type: type:
- string - string
@@ -27,137 +58,5 @@ arguments:
Path or url of the image, e.g. `img/example.jpg`. Images with multiple Path or url of the image, e.g. `img/example.jpg`. Images with multiple
color modes are expected to have a basename that ends with either `-dark` color modes are expected to have a basename that ends with either `-dark`
or `-light`. or `-light`.
src: deprecated: v1.0.0
type: string alternative: src
optional: true
position: 0
comment: Alias for url.
group: shortcode
page:
type:
- '*hugolib.pageState'
- '*hugolib.pageForRenderHooks'
- '*hugolib.pageForShortcode'
optional: true
comment: Page context, used to match page resources.
group: partial
mode:
type: bool
default: false
optional: true
comment: >-
Flag indicating if the image should support color modes. If set, the
shortcode searches for images that having a matching color-mode suffix
such as `-light` or `-dark`.
ratio:
type: select
optional: true
comment: >-
Ratio of the image. If set, the image is resized and cropped to match the
ratio. Else the original aspect ratio of the image is kept. Not applicable
to vector graphics.
options:
values:
- 1x1
- 3x2
- 4x3
- 16x9
- 21x9
portrait:
type: bool
optional: true
default: false
comment: >-
Flag to adjust the ratio from landscape to portrait. The image itself is
not rotated, only the crop area is adjusted. Not applicable to vector
graphics.
release: v0.18.3
loading:
type: select
default: eager
optional: true
comment: >-
Loading behavior of the image. The loading of lazily loaded images is
deferred until the image is within scrolling range of the viewport. This
should reduce the initial loading time of the website. It is recommended
to lazily load only those images that are below the pagefold.
options:
values:
- eager
- lazy
release: v0.21.0
priority:
type: select
default: auto
optional: true
comment: >-
Fetch priority of the image. The priority provides a hint to the browser
on how it should prioritize the fetching of the image relative to other
images. The implementation is experimental and currently only supported by
Chrome, Edge, and Opera.
options:
values:
- high
- low
- auto
group: partial
sizes:
type: string
default: 100vw
optional: true
comment: >-
One or more strings separated by commas, indicating the source sizes of an
image set.
group: partial
title:
type:
- string
- hstring.RenderedString
- hstring.HTML
optional: true
comment: Alternate text of the image.
caption:
type: string
optional: true
comment: Figure caption.
wrapper:
type: string
optional: true
comment: Class attributes of the wrapper element, e.g. `mx-auto`.
release: v0.18.3
class:
type: string
optional: true
comment: Class attribute of the inner img element, e.g. `rounded`.
figclass:
type: string
optional: true
comment: Class attribute of the figure caption, e.g. `px-4`.
release: v0.23.0
plain:
type: bool
default: false
optional: true
comment:
Flag to indicate if the image should render a plain image instead of an
image set. When set, no transformations are applied to the image.
release: v0.24.0
anchor:
type: select
optional: true
comment:
Anchor of the crop box, defaults to anchor value set in `imaging` section
of the site configuration (usually `Smart`).
options:
values:
- TopLeft
- Top
- TopRight
- Left
- Center
- Right
- BottomLeft
- Bottom
- BottomRight
- Smart
release: v0.24.22

View File

@@ -1,30 +1,17 @@
comment: Adds a keyboard input element. comment: Adds a keyboard input element.
arguments: arguments:
title: text:
type: string optional: true
optional: false
position: 0 position: 0
release: v1.0.0
class:
color:
# deprecated arguments
title:
type: select
optional: true
comment: >- comment: >-
Title of the keyboard input. In shorthand notation, this is the first (and Title of the keyboard input. In shorthand notation, this is the first (and
only) matched argument. only) matched argument.
class: deprecated: v1.0.0
type: string alternative: text
optional: true
comment: Class attribute of the keyboard input element.
color:
type: select
default: secondary
optional: true
comment: Theme color of the element.
options:
values:
- primary
- secondary
- success
- danger
- warning
- info
- light
- dark
- white
- black

View File

@@ -8,88 +8,44 @@ comment: >-
containing a `#`). containing a `#`).
arguments: arguments:
page: page:
type: href:
- '*hugolib.pageState' position: 0
- '*hugolib.pageForRenderHooks' cue:
- '*hugolib.pageForShortcode' tab:
optional: false case:
external:
force:
release: v0.27.20
class:
text:
optional: true
group: partial group: partial
comment: Context of the current page. title:
release: v0.26.0
position:
group: partial
optional: true
release: v1.0.0
# deprecated arguments
destination: destination:
type: string type: string
optional: false
group: partial
comment: >-
Target destination.
href:
type: string
position: 0
optional: true optional: true
comment: >- group: partial
Reference to either an external link (if it starts with `http`), a named comment: Target destination.
link (if it can be found in `params.links`), or internal reference. deprecated: v1.0.0
Both external and internal references may include an anchor `#`. alternative: href
name: name:
type: string type: string
optional: true optional: true
comment: Alias of href. comment: Alias of href.
deprecated: v1.0.0
alternative: href
url: url:
type: string type: string
optional: true optional: true
comment: Alias of href. comment: Alias of href.
cue: deprecated: v1.0.0
type: bool alternative: href
optional: true
comment: >-
Flag to indicate if an external link should show a visual cue, defaults to
setting `main.externalLinks.cue` in the site's parameters.
tab:
type: bool
optional: true
comment: >-
Flag to indicate if an external link should open in a new tab, defaults to
setting `main.externalLinks.tab` in the site's parameters.
case:
type: bool
optional: true
default: true
comment: >-
Flag to indicate if the retrieved title (e.g. no inner text is provided)
of an internal link should use its original case. If false, the title is
set to lower case.
external:
type: bool
optional: true
default: false
comment: >-
Flag to indicate if a link that contains baseURL host should be forced as external.
force:
type: bool
optional: true
default: false
comment: >-
Flag to indicate a link should bypass any language redirection. Only applicable when
the site param `enableLanguageSelectionStorage` is set to true. When `force` is true,
the link to a local page is kept as is.
release: v0.27.20
class:
type: string
optional: true
comment: Class attribute of the anchor element.
text:
type:
- string
- template.HTML
- hstring.RenderedString
- hstring.HTML
optional: true
group: partial
comment: Link description.
title:
type: string
optional: true
comment: Link title.
release: v0.26.0
body: body:
type: string type: string
optional: true optional: true

View File

@@ -0,0 +1,6 @@
arguments:
page:
links:
align:
justify:
link-type:

View File

@@ -0,0 +1,76 @@
comment: >-
Retrieves a page collection relative to a provided page or optional section.
Provide tags to ensure the pages have at least one matching tag. You can sort
the collection by parameter in ascending or descending order.
As CloudCannon does not support the retrieval of page collection when live
editing, the partial returns a dummy collection instead.
arguments:
page:
type:
- '*hugolib.pageState'
- '*hugolib.pageForShortcode'
optional: false
comment: Page context, used to retrieve page collections.
group: partial
section:
type: string
optional: true
comment: >-
Name of site section to use for the page collection. When omitted, the
current page is used as context instead. Use "/" to retrieve the home
page.
kind:
type: select
optional: true
default: regular
comment: >-
Kind of page collection to use.
options:
values:
- regular
- related
- taxonomy
nested:
type: bool
optional: true
comment: >-
If set, retrieves all pages below the section or current page recursively.
By default, only first-order childs are retrieved.
tags:
type:
- string
- "[]interface {}"
optional: true
comment: >-
Tags to be used as filter. When set, only pages that match at least one of
the provided tags are retrieved.
keywords:
type:
- string
- "[]interface {}"
optional: true
comment: >-
Keywords to be used as filter. When set, only pages that match at least
one of the provided keywords are retrieved.
categories:
type:
- string
- "[]interface {}"
optional: true
comment: >-
Categories to be used as filter. When set, only pages that belong to at
least one of the provided categories are retrieved.
sort:
type: string
optional: true
default: date
comment: >-
Page parameter to sort the page collection by. Both default and custom
parameters can be used.
reverse:
type: bool
optional: true
default: true
comment: >-
If set, returns the page collection in descending order.

View File

@@ -1,27 +1,7 @@
comment: Highlights text by applying a background color. comment: Highlights text by applying a background color.
arguments: arguments:
class: class:
type: string
optional: true
comment: Class attribute of the highlight element.
color: color:
type: select
optional: true
comment: >-
Theme color of the highlight. By default, the highlight uses the color of
the HTML mark function (usually yellow).
options:
values:
- primary
- secondary
- success
- danger
- warning
- info
- light
- dark
- white
- black
body: body:
optional: false optional: false
comment: Text to be marked. comment: Text to be marked.

View File

@@ -1,46 +1,42 @@
comment: >- comment: >-
Defines an individual item. Defines an individual item.
arguments: arguments:
page:
group: partial
id: id:
type: string
optional: true
comment: Identification of the item.
group: partial group: partial
parentID: parent-id:
type: string release: v1.0.0
optional: false title:
comment: Identification of the parent (e.g. nav control). release: v1.0.0
group: partial
header:
type: string
optional: false
comment: Header of the item.
show: show:
type: bool
optional: true
comment: >-
Flag to indicate if the item should be shown. Only one can be shown at a
time.
disabled: disabled:
type: bool
optional: true
comment: Flag to indicate the item should be in a disabled state.
fade: fade:
type: bool
optional: true
comment: Flag to make the tab pane fade in.
parent: cascade
class: class:
type: string
optional: true
comment: Class attribute of the item.
body: body:
group: partial
raw:
group: partial
release: v1.3.0
navitem-type:
release: v1.0.0
illustration:
type: type:
- string - string
- template.HTML - template.HTML
optional: true optional: true
comment: The body content of the item, supports Markdown and HTML (if enabled).
group: partial group: partial
hook:
default: assets/hero-image.html
group: partial
release: v1.0.0
# deprecated arguments
header:
type: string
optional: true
comment: Header of the item.
deprecated: v1.0.0
alternative: title
item_type: item_type:
type: select type: select
optional: true optional: true
@@ -50,12 +46,15 @@ arguments:
- accordion - accordion
- tab-pane - tab-pane
group: partial group: partial
illustration: deprecated: v1.0.0
type: alternative: navitem-type
- string parentID:
- template.HTML type: string
optional: true optional: true
comment: Identification of the parent (e.g. nav control).
group: partial group: partial
deprecated: v1.0.0
alternative: parent-id
body: body:
optional: false optional: false
comment: Content of the item. comment: Content of the item.

Some files were not shown because too many files have changed in this diff Show More