mirror of
https://github.com/gethinode/hinode.git
synced 2025-10-07 18:14:28 +00:00
Compare commits
740 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
05a32a2697 | ||
![]() |
9a53b8fad7 | ||
![]() |
300636f144 | ||
![]() |
a98259c5f5 | ||
![]() |
f3c984780e | ||
![]() |
af7fe7bc79 | ||
![]() |
75a3504a73 | ||
![]() |
2a24c4ab40 | ||
![]() |
429ba232f2 | ||
![]() |
2c1fbc859d | ||
![]() |
62766923e9 | ||
![]() |
cb2b692cf9 | ||
![]() |
91ab627f05 | ||
![]() |
abca69e378 | ||
![]() |
6248dcd74c | ||
![]() |
f7335cb5b9 | ||
![]() |
8252cde9ca | ||
![]() |
60ba0f6c07 | ||
![]() |
813457bb48 | ||
![]() |
f4c0feed0a | ||
![]() |
02e9281a9b | ||
![]() |
76e1274262 | ||
![]() |
33add3e1fd | ||
![]() |
572776af8a | ||
![]() |
27a35b14fd | ||
![]() |
30f1f35f52 | ||
![]() |
088fbdbbc2 | ||
![]() |
bd031ffddb | ||
![]() |
c1ae0730cb | ||
![]() |
070641f09a | ||
![]() |
4bd5a7dff7 | ||
![]() |
fa58472e35 | ||
![]() |
6d6fcdfa5d | ||
![]() |
6b2b622f8f | ||
![]() |
880dc959dc | ||
![]() |
7b4dde4022 | ||
![]() |
1a855fd44d | ||
![]() |
3c06fba993 | ||
![]() |
c02389212a | ||
![]() |
5b1d1866d5 | ||
![]() |
0754bafb41 | ||
![]() |
d1bedea219 | ||
![]() |
e21815d4d2 | ||
![]() |
8d38e6b8c2 | ||
![]() |
974b0db6ee | ||
![]() |
1aa0243bb5 | ||
![]() |
bff00ecca6 | ||
![]() |
fc436a1398 | ||
![]() |
60b06880f7 | ||
![]() |
3e986fa135 | ||
![]() |
3d7c877cec | ||
![]() |
f21a7bc0da | ||
![]() |
a4057ad498 | ||
![]() |
09d3294867 | ||
![]() |
7b167e32c4 | ||
![]() |
941698cc15 | ||
![]() |
1ec7d7477b | ||
![]() |
9ef702ef06 | ||
![]() |
5e41fddef3 | ||
![]() |
a620900c18 | ||
![]() |
cc25fe311d | ||
![]() |
c057b11094 | ||
![]() |
df6fb8f0ff | ||
![]() |
a6c3de6a7d | ||
![]() |
efb9c56b55 | ||
![]() |
7e3301d277 | ||
![]() |
068df86fd8 | ||
![]() |
4f57919a96 | ||
![]() |
21f90455d4 | ||
![]() |
50499a415a | ||
![]() |
e75c8cf40f | ||
![]() |
42529594b0 | ||
![]() |
73afeb13bd | ||
![]() |
23ece830e2 | ||
![]() |
41f5dbaea1 | ||
![]() |
5e368f2726 | ||
![]() |
2db3365115 | ||
![]() |
bf2235a96b | ||
![]() |
2ab8ee674f | ||
![]() |
e52d14e21a | ||
![]() |
46101e174e | ||
![]() |
d28b51aa63 | ||
![]() |
dd80ee2bfe | ||
![]() |
2e8b087c48 | ||
![]() |
03592cba67 | ||
![]() |
65a44637d5 | ||
![]() |
6bbdb813de | ||
![]() |
3ad358bb96 | ||
![]() |
2e1c05fa63 | ||
![]() |
d67fc81c87 | ||
![]() |
8e532ce61b | ||
![]() |
dd7803110d | ||
![]() |
8c05e15693 | ||
![]() |
b78d0a9912 | ||
![]() |
25aeaeb195 | ||
![]() |
d8336200ef | ||
![]() |
2831b510d6 | ||
![]() |
ddc319e380 | ||
![]() |
0e4c493dd2 | ||
![]() |
48ceeb0b64 | ||
![]() |
45bd45c5fa | ||
![]() |
9f85b5bc93 | ||
![]() |
41215fcc25 | ||
![]() |
912a34baa3 | ||
![]() |
db4fa60bff | ||
![]() |
8ebc170e0e | ||
![]() |
0b5a8756ad | ||
![]() |
7cec88af78 | ||
![]() |
1681d9691e | ||
![]() |
5b661f8f7f | ||
![]() |
3ca09592f7 | ||
![]() |
2d701111aa | ||
![]() |
dbb3b2026c | ||
![]() |
7d724dbb1f | ||
![]() |
7c436dcacd | ||
![]() |
1da69c08ae | ||
![]() |
1bca15042b | ||
![]() |
40fd76988d | ||
![]() |
8190e77152 | ||
![]() |
d0d681a6a9 | ||
![]() |
0d6964c7ed | ||
![]() |
3090aaa810 | ||
![]() |
c7cf48a6c1 | ||
![]() |
300a473a37 | ||
![]() |
dac09afbba | ||
![]() |
a35e59df3d | ||
![]() |
51b80d8820 | ||
![]() |
28c12e61e9 | ||
![]() |
c2d4782375 | ||
![]() |
4aa5723235 | ||
![]() |
6d602df62d | ||
![]() |
336f32b4a4 | ||
![]() |
1792ee527d | ||
![]() |
d750dcfb5a | ||
![]() |
448ebdbaad | ||
![]() |
7b8152d84e | ||
![]() |
df00db0447 | ||
![]() |
658a02798e | ||
![]() |
7329fdf3f9 | ||
![]() |
34550a3e00 | ||
![]() |
b88b17642d | ||
![]() |
ecb06164e0 | ||
![]() |
a4d9638cc1 | ||
![]() |
c8af80ab86 | ||
![]() |
1e06f4ef2c | ||
![]() |
3cfe1c296b | ||
![]() |
2b32c3c8fc | ||
![]() |
efa1ae2076 | ||
![]() |
35c869b729 | ||
![]() |
ccbc9b24d5 | ||
![]() |
680614d446 | ||
![]() |
93f6acd70d | ||
![]() |
8d761aa5d7 | ||
![]() |
9df7f951c6 | ||
![]() |
0bf7671675 | ||
![]() |
43a285db86 | ||
![]() |
f982b0f9d4 | ||
![]() |
669dfec6af | ||
![]() |
05ea55d73d | ||
![]() |
e64fdee0ea | ||
![]() |
90ef36d39a | ||
![]() |
d4321cea30 | ||
![]() |
9fd3781c25 | ||
![]() |
ed833307f8 | ||
![]() |
a73268fea6 | ||
![]() |
413082a23d | ||
![]() |
2b15ff26dc | ||
![]() |
42db5b3f9b | ||
![]() |
d3e58591be | ||
![]() |
5c9187a5ed | ||
![]() |
1db2652304 | ||
![]() |
003f9a329c | ||
![]() |
c7bed9de24 | ||
![]() |
1de5aa70da | ||
![]() |
eb51223fa8 | ||
![]() |
4b732c02f8 | ||
![]() |
3193ff6e0d | ||
![]() |
d66f8eef93 | ||
![]() |
9bb9bb580a | ||
![]() |
c29b43866a | ||
![]() |
e3d88bdf37 | ||
![]() |
a35db80260 | ||
![]() |
3d19b57d5e | ||
![]() |
3bd8f99678 | ||
![]() |
a01c726de4 | ||
![]() |
fe74653749 | ||
![]() |
c143634c4a | ||
![]() |
58e0946636 | ||
![]() |
d2dd3a32d0 | ||
![]() |
045dfd5a13 | ||
![]() |
ecab03d15c | ||
![]() |
6972f71077 | ||
![]() |
92c87629a0 | ||
![]() |
a0dd30d2c7 | ||
![]() |
50c6c80d8a | ||
![]() |
548ba82abe | ||
![]() |
31e47ad940 | ||
![]() |
f04f5719ec | ||
![]() |
8ab0d2fb1e | ||
![]() |
9f83f33afd | ||
![]() |
e9789a420c | ||
![]() |
8459665fcf | ||
![]() |
75083fe543 | ||
![]() |
d5d29bab37 | ||
![]() |
46d2e57e4b | ||
![]() |
8a0658e931 | ||
![]() |
9be5b22911 | ||
![]() |
71181905c3 | ||
![]() |
61a00fd205 | ||
![]() |
71c2e4f5c6 | ||
![]() |
14c05f62ad | ||
![]() |
712634ec57 | ||
![]() |
d8070914f9 | ||
![]() |
8006143d3f | ||
![]() |
b56516b77b | ||
![]() |
ac6a47e528 | ||
![]() |
d6f86a0a4c | ||
![]() |
d950555d75 | ||
![]() |
231425dbdf | ||
![]() |
2cccbc499a | ||
![]() |
92572a21bc | ||
![]() |
261c174739 | ||
![]() |
fbdfd10969 | ||
![]() |
2c2cd595c1 | ||
![]() |
2b6fc61628 | ||
![]() |
40096611cf | ||
![]() |
937b16ca60 | ||
![]() |
64d7ff5d93 | ||
![]() |
b7fb5bee75 | ||
![]() |
63d7d4de85 | ||
![]() |
035387d8c1 | ||
![]() |
f7c5769817 | ||
![]() |
6853a455cb | ||
![]() |
190f849b5a | ||
![]() |
1165ffffe0 | ||
![]() |
214812b750 | ||
![]() |
20f1a87d8b | ||
![]() |
66f904c7fb | ||
![]() |
cdf9d39242 | ||
![]() |
98c53ccd6d | ||
![]() |
5409aa7a63 | ||
![]() |
10a69d6bfd | ||
![]() |
705967641a | ||
![]() |
a5b49bdf70 | ||
![]() |
44d46f92c9 | ||
![]() |
78a2caf728 | ||
![]() |
7f5bebacab | ||
![]() |
b95ce558a6 | ||
![]() |
e75533a0ae | ||
![]() |
19a45b4399 | ||
![]() |
e08178cfce | ||
![]() |
b24c6bc21f | ||
![]() |
d1e06588a5 | ||
![]() |
13fb13ec10 | ||
![]() |
ccca047155 | ||
![]() |
7443319ad9 | ||
![]() |
db4ba8babe | ||
![]() |
c7c03ebc8c | ||
![]() |
4bd1578724 | ||
![]() |
ecd16fa3cc | ||
![]() |
3ef8a16e18 | ||
![]() |
3fc30b9941 | ||
![]() |
8fb9610c84 | ||
![]() |
dc88861a43 | ||
![]() |
871edd7aa4 | ||
![]() |
b172a5021a | ||
![]() |
9ddd1983d0 | ||
![]() |
2f00f07a2f | ||
![]() |
c043f26268 | ||
![]() |
99d689a323 | ||
![]() |
ec7275913b | ||
![]() |
255456447b | ||
![]() |
004940d9bc | ||
![]() |
6b39b028fb | ||
![]() |
9a83550378 | ||
![]() |
792443c4cf | ||
![]() |
3d52162925 | ||
![]() |
80b28f7557 | ||
![]() |
43eebdf53f | ||
![]() |
b5062fe687 | ||
![]() |
51aa15266b | ||
![]() |
19f638a129 | ||
![]() |
aa2e5ca6f4 | ||
![]() |
04eea0db71 | ||
![]() |
4645f4ee7c | ||
![]() |
bb6421c70b | ||
![]() |
622c6ee1c0 | ||
![]() |
f1befb05cc | ||
![]() |
e146e3a559 | ||
![]() |
068e773ab0 | ||
![]() |
3ae91a78a1 | ||
![]() |
6627446961 | ||
![]() |
d4fd6ece60 | ||
![]() |
a746fd147c | ||
![]() |
d0410af879 | ||
![]() |
314f1a0ca4 | ||
![]() |
066c5ce8eb | ||
![]() |
bba9629f54 | ||
![]() |
d2d59ec3ef | ||
![]() |
c080be2872 | ||
![]() |
3c17234b33 | ||
![]() |
16884abcba | ||
![]() |
2abbe4f6de | ||
![]() |
c6f9de0a64 | ||
![]() |
39f104fa5f | ||
![]() |
437ad0dbf7 | ||
![]() |
2eb354d941 | ||
![]() |
5a7f46bca4 | ||
![]() |
0bc37ff426 | ||
![]() |
0d24f85e13 | ||
![]() |
d067171ba2 | ||
![]() |
09e649d432 | ||
![]() |
87c7bd4238 | ||
![]() |
19734f6a1f | ||
![]() |
12a5ebad9f | ||
![]() |
1b964777a4 | ||
![]() |
f910d1bbbb | ||
![]() |
86461c9739 | ||
![]() |
a730255eb6 | ||
![]() |
e940cc9931 | ||
![]() |
3a70d25f2e | ||
![]() |
9e72e5fe73 | ||
![]() |
561bdcac28 | ||
![]() |
11cd2bb167 | ||
![]() |
45a71fc1d1 | ||
![]() |
3f5c10319b | ||
![]() |
e4331c8ce7 | ||
![]() |
6166615629 | ||
![]() |
27c15b4e36 | ||
![]() |
c99e8c83d1 | ||
![]() |
a0cbdd0cbb | ||
![]() |
1ed825d7ca | ||
![]() |
09099eba58 | ||
![]() |
58b2eebea5 | ||
![]() |
46a2a6c994 | ||
![]() |
0dcec12256 | ||
![]() |
50a188e807 | ||
![]() |
400f27dcc9 | ||
![]() |
90bcc744ff | ||
![]() |
cf0fae6dc1 | ||
![]() |
1b39d23ddf | ||
![]() |
c94249408c | ||
![]() |
f4f207fa25 | ||
![]() |
307067629e | ||
![]() |
f9174e4505 | ||
![]() |
320d44c78d | ||
![]() |
091526a17b | ||
![]() |
9ec61d645d | ||
![]() |
0630043210 | ||
![]() |
2933d1d3bb | ||
![]() |
aa5118cdf6 | ||
![]() |
ec1c87070b | ||
![]() |
e806dc07a4 | ||
![]() |
9e7478f4c4 | ||
![]() |
686dd1c946 | ||
![]() |
548a2fa835 | ||
![]() |
1338df7b8a | ||
![]() |
150e438c59 | ||
![]() |
285f262a01 | ||
![]() |
7989dd17d4 | ||
![]() |
5f4070b481 | ||
![]() |
00160137e8 | ||
![]() |
51510ae047 | ||
![]() |
4fc95db0e9 | ||
![]() |
a1f899c1de | ||
![]() |
e358e737be | ||
![]() |
0e35d26f20 | ||
![]() |
ede04405d1 | ||
![]() |
30aa2df2d2 | ||
![]() |
47d582f855 | ||
![]() |
fa1fcc3dd0 | ||
![]() |
04bc95720b | ||
![]() |
5c539ec003 | ||
![]() |
b19201e561 | ||
![]() |
7e21c93e22 | ||
![]() |
c81efe61d0 | ||
![]() |
6fe8e12509 | ||
![]() |
44b243489b | ||
![]() |
548dca2bb1 | ||
![]() |
b3e47b85f3 | ||
![]() |
087d3666b8 | ||
![]() |
77f4354499 | ||
![]() |
362bf368ce | ||
![]() |
fc17256fd2 | ||
![]() |
887aff5c5b | ||
![]() |
6ec26f1216 | ||
![]() |
357c74e3e0 | ||
![]() |
4b419810ea | ||
![]() |
0a313172bd | ||
![]() |
93eec0ff5a | ||
![]() |
f9fc8d9a6a | ||
![]() |
c537b9cfe4 | ||
![]() |
c37fe75f0d | ||
![]() |
4034289a7f | ||
![]() |
9b5c572ab9 | ||
![]() |
10c6344493 | ||
![]() |
fc386fcad9 | ||
![]() |
a680a61825 | ||
![]() |
a075ca5f7b | ||
![]() |
a816d2be25 | ||
![]() |
52ff0fb71e | ||
![]() |
95fd919a6f | ||
![]() |
85778dd374 | ||
![]() |
3b65b2c87f | ||
![]() |
ee3a0ee8c4 | ||
![]() |
3b721690f1 | ||
![]() |
96b2ed2f4c | ||
![]() |
d6d39ad946 | ||
![]() |
f8db72ebad | ||
![]() |
9a8ee943a9 | ||
![]() |
520c5ba43b | ||
![]() |
4205c07993 | ||
![]() |
7cd1dc3c27 | ||
![]() |
d96ef8af35 | ||
![]() |
2defd83f0f | ||
![]() |
ba10e2115a | ||
![]() |
1d4a5d960f | ||
![]() |
ec492c005f | ||
![]() |
624d57c374 | ||
![]() |
e7dda56408 | ||
![]() |
c3e135de9e | ||
![]() |
b84fc502b5 | ||
![]() |
b18b662cef | ||
![]() |
3070e4abac | ||
![]() |
052033fe42 | ||
![]() |
c37bb67c09 | ||
![]() |
0728a148b8 | ||
![]() |
6bf687dbf8 | ||
![]() |
e656ec9f33 | ||
![]() |
d522fb07d5 | ||
![]() |
39d98b2b6c | ||
![]() |
6dfab4aa5f | ||
![]() |
c5bdae6466 | ||
![]() |
f79267a39e | ||
![]() |
ea05749f0e | ||
![]() |
2dd027028c | ||
![]() |
3a4b1c8670 | ||
![]() |
e2b92c9519 | ||
![]() |
1defbd32f9 | ||
![]() |
edd303bab1 | ||
![]() |
43041f42fc | ||
![]() |
250bfc33e6 | ||
![]() |
b7d4af7c0a | ||
![]() |
631d952923 | ||
![]() |
744dd361f0 | ||
![]() |
719b5893d7 | ||
![]() |
228f6f29dc | ||
![]() |
3ea24f7e7f | ||
![]() |
418069773f | ||
![]() |
0791000f10 | ||
![]() |
cee94a9664 | ||
![]() |
d42a6c4150 | ||
![]() |
73160b0cfe | ||
![]() |
2d5225e205 | ||
![]() |
d7e9f05588 | ||
![]() |
f936bdd117 | ||
![]() |
fc05a338c7 | ||
![]() |
367e2f78d3 | ||
![]() |
6af1df3862 | ||
![]() |
a1c124cb38 | ||
![]() |
07b1a0d0ce | ||
![]() |
a3f215c211 | ||
![]() |
c31fdae5e4 | ||
![]() |
c208bc8946 | ||
![]() |
6c285b203d | ||
![]() |
a867458f4b | ||
![]() |
973fbf6637 | ||
![]() |
367f209c73 | ||
![]() |
06f384a206 | ||
![]() |
2ce4001fa8 | ||
![]() |
fe2e3ba5f4 | ||
![]() |
0830e0da77 | ||
![]() |
195f0b192f | ||
![]() |
f98d2000e3 | ||
![]() |
54f49944cc | ||
![]() |
7525ecddc2 | ||
![]() |
09ab64c361 | ||
![]() |
2b3f87b885 | ||
![]() |
213bb31133 | ||
![]() |
b0130d9f7d | ||
![]() |
07a3be644c | ||
![]() |
262bc47260 | ||
![]() |
51553a05f0 | ||
![]() |
bd06ee211b | ||
![]() |
cc8e889825 | ||
![]() |
a6144122b2 | ||
![]() |
853e0c818f | ||
![]() |
1c5fb55d89 | ||
![]() |
d48fb1a300 | ||
![]() |
f2aa9d2661 | ||
![]() |
d721e1cfc2 | ||
![]() |
7f7bf2152c | ||
![]() |
a9543de1e7 | ||
![]() |
39e4073837 | ||
![]() |
d2782349d5 | ||
![]() |
fe97815460 | ||
![]() |
7bcaa69d5b | ||
![]() |
30ae3f6b3c | ||
![]() |
6540e11fa9 | ||
![]() |
14f2145239 | ||
![]() |
856a0aed08 | ||
![]() |
5c6b91f1ce | ||
![]() |
152b8ca060 | ||
![]() |
0f8870fed0 | ||
![]() |
742ae6784b | ||
![]() |
ce4c8c0a7c | ||
![]() |
40de449fed | ||
![]() |
4c27864248 | ||
![]() |
3efb2b7451 | ||
![]() |
721e222849 | ||
![]() |
77b9d62d76 | ||
![]() |
efe3c947c2 | ||
![]() |
beee2e40e0 | ||
![]() |
895d606175 | ||
![]() |
9a17df96f3 | ||
![]() |
d2e1a1678a | ||
![]() |
d8451e2699 | ||
![]() |
f98ab74905 | ||
![]() |
6e453ea2ab | ||
![]() |
d6ca890c80 | ||
![]() |
46aecfe65a | ||
![]() |
496c07ff7e | ||
![]() |
3a63f4fad7 | ||
![]() |
bbf99507d6 | ||
![]() |
2a92cfd155 | ||
![]() |
31a5377cf4 | ||
![]() |
633a33796c | ||
![]() |
9b224317bb | ||
![]() |
a410fcaa19 | ||
![]() |
a6b2ddd2f9 | ||
![]() |
2e4a3660cc | ||
![]() |
2b0620b2d9 | ||
![]() |
98fc43cf7d | ||
![]() |
de1101c7ec | ||
![]() |
c42f3bb27b | ||
![]() |
267007b7e8 | ||
![]() |
77288da0de | ||
![]() |
1764ccd9f4 | ||
![]() |
14f8c27eca | ||
![]() |
884b7b323d | ||
![]() |
a0795b35db | ||
![]() |
0db4e4c32a | ||
![]() |
71a084943c | ||
![]() |
6bad597805 | ||
![]() |
b11aefd592 | ||
![]() |
f280f6402b | ||
![]() |
157b3da43e | ||
![]() |
5de693297f | ||
![]() |
65633ca62c | ||
![]() |
81589efb00 | ||
![]() |
1d50bb5ed2 | ||
![]() |
b5a19fa7d6 | ||
![]() |
fc76bac8b0 | ||
![]() |
f671c31130 | ||
![]() |
cdb84e8f21 | ||
![]() |
121625515a | ||
![]() |
60b6e1c960 | ||
![]() |
6628e9f879 | ||
![]() |
a3178e06af | ||
![]() |
fc86946cff | ||
![]() |
e440386999 | ||
![]() |
01c864bd64 | ||
![]() |
16cc468cf1 | ||
![]() |
1147c8fff6 | ||
![]() |
6b0fd9e244 | ||
![]() |
05bb9417b0 | ||
![]() |
03fc50852a | ||
![]() |
4de91bb7f2 | ||
![]() |
96b9a3b38d | ||
![]() |
da52d6e596 | ||
![]() |
b369e34f32 | ||
![]() |
e456061d19 | ||
![]() |
a87de9c37c | ||
![]() |
6283970443 | ||
![]() |
200ca109b1 | ||
![]() |
acded37e83 | ||
![]() |
782a40e1e8 | ||
![]() |
7b2bb803b3 | ||
![]() |
0e0561b081 | ||
![]() |
e3cf2e1337 | ||
![]() |
c18316250b | ||
![]() |
29a8666d7d | ||
![]() |
431125e46c | ||
![]() |
dae6541185 | ||
![]() |
41d0edb6c1 | ||
![]() |
5d9d11c388 | ||
![]() |
3b26c04bdd | ||
![]() |
01d41ae38e | ||
![]() |
22d5859432 | ||
![]() |
551b185dd9 | ||
![]() |
2edf12fb8b | ||
![]() |
fbdf79e05e | ||
![]() |
92e37ef847 | ||
![]() |
62084600a5 | ||
![]() |
8867ab1cbe | ||
![]() |
c3e09c341f | ||
![]() |
6cf4deceb7 | ||
![]() |
0dd790cf7a | ||
![]() |
6353b68c3e | ||
![]() |
fadd5b2fb5 | ||
![]() |
1d4add88ec | ||
![]() |
0b779d5f3a | ||
![]() |
2898745383 | ||
![]() |
892546886b | ||
![]() |
b09f039929 | ||
![]() |
86bcfa21fa | ||
![]() |
f97eeff745 | ||
![]() |
205e10d86b | ||
![]() |
3eb0794f08 | ||
![]() |
a1abc5970f | ||
![]() |
7b0839ad92 | ||
![]() |
3f20ddcd65 | ||
![]() |
24e0282eb7 | ||
![]() |
9fba521bc5 | ||
![]() |
60a34aac97 | ||
![]() |
15daf8c090 | ||
![]() |
7e4459ca8d | ||
![]() |
5ef2aad372 | ||
![]() |
4c6f4a9da9 | ||
![]() |
fd7f3692dd | ||
![]() |
f48b462c51 | ||
![]() |
287bc7700c | ||
![]() |
ee5e2745e2 | ||
![]() |
31fb07e180 | ||
![]() |
aaf8513688 | ||
![]() |
acd2812218 | ||
![]() |
665357e538 | ||
![]() |
f678352b78 | ||
![]() |
17b39caef7 | ||
![]() |
38ab9f2e43 | ||
![]() |
aa4da56910 | ||
![]() |
ea8e851e45 | ||
![]() |
90e6c9869d | ||
![]() |
628eb99f62 | ||
![]() |
a0293cc081 | ||
![]() |
d37dcdd20c | ||
![]() |
f0ff631b0d | ||
![]() |
b84bd07073 | ||
![]() |
b800906956 | ||
![]() |
049b38d3c1 | ||
![]() |
27c2500c92 | ||
![]() |
a182b2a134 | ||
![]() |
43abf793b8 | ||
![]() |
e11fa8d377 | ||
![]() |
fb94544bb0 | ||
![]() |
67f687d6b9 | ||
![]() |
879efc07e8 | ||
![]() |
29bcb26d04 | ||
![]() |
e04a8dc0ed | ||
![]() |
c7e70bf933 | ||
![]() |
1700abc7de | ||
![]() |
3ef857dba9 | ||
![]() |
5acc2e8f9e | ||
![]() |
0caa00a1a1 | ||
![]() |
b27a5ac7cb | ||
![]() |
24261c9193 | ||
![]() |
d1aa9c0f7c | ||
![]() |
a18d387379 | ||
![]() |
2d9cbf9195 | ||
![]() |
64abda14ce | ||
![]() |
3625675577 | ||
![]() |
e6e115a65d | ||
![]() |
9832b566db | ||
![]() |
f3211eabe0 | ||
![]() |
82c1d00af4 | ||
![]() |
70386eaeec | ||
![]() |
7413155dea | ||
![]() |
cfd1706f5f | ||
![]() |
5eca63c50d | ||
![]() |
d3f471a281 | ||
![]() |
b4acd7aef2 | ||
![]() |
49a3ef3c42 | ||
![]() |
56eaa9d90b | ||
![]() |
492dbbec24 | ||
![]() |
d2fc5e3433 | ||
![]() |
b5cc3f6d84 | ||
![]() |
e1e1041c1b | ||
![]() |
e1cac645a7 | ||
![]() |
d23d533575 | ||
![]() |
d447a4a65a | ||
![]() |
3a466277e3 | ||
![]() |
2b09ceef93 | ||
![]() |
ee30409257 | ||
![]() |
c5edb65550 | ||
![]() |
70583bdb33 | ||
![]() |
8e1a299a72 | ||
![]() |
e20aba4907 | ||
![]() |
1aedf22923 | ||
![]() |
e77671ffef | ||
![]() |
433f8ef60d | ||
![]() |
acb261ba69 | ||
![]() |
b04b5a136f | ||
![]() |
953f4ba908 | ||
![]() |
90e65b5614 | ||
![]() |
944437ea4c | ||
![]() |
5d0593bf65 | ||
![]() |
4935e627f6 | ||
![]() |
f7d535d025 | ||
![]() |
67280d6ad0 | ||
![]() |
e21332d016 | ||
![]() |
f306bc2b22 | ||
![]() |
475745cc6c | ||
![]() |
90c43c84e5 | ||
![]() |
a81b672731 | ||
![]() |
b86ec388b6 | ||
![]() |
5dd0fce394 | ||
![]() |
a66dc2f91c | ||
![]() |
0072292522 | ||
![]() |
d3f534629d | ||
![]() |
1407e1ba0d | ||
![]() |
b9bce4800c | ||
![]() |
a5a424b6ed | ||
![]() |
9c8b21233c | ||
![]() |
b564696728 | ||
![]() |
c669c82324 | ||
![]() |
8014f4d636 | ||
![]() |
7f80f52294 | ||
![]() |
485db3808f | ||
![]() |
7b10339aea | ||
![]() |
ed5c32a7a4 | ||
![]() |
c42a379ca0 | ||
![]() |
22c17c3123 | ||
![]() |
e4f82c1304 | ||
![]() |
07fa46b9a6 | ||
![]() |
809ce0d4ad | ||
![]() |
deb97e0e29 | ||
![]() |
14a89a2ff9 | ||
![]() |
81b40d145d | ||
![]() |
1dfce3d445 | ||
![]() |
145b2c29d1 | ||
![]() |
77fe046bea | ||
![]() |
63250c6ac9 | ||
![]() |
5335e3d607 | ||
![]() |
3fc51e6158 | ||
![]() |
4a20e8beef | ||
![]() |
163ac52332 | ||
![]() |
176c5447a8 | ||
![]() |
1922fc825e | ||
![]() |
82f3837db1 | ||
![]() |
69cf1ccf6c |
@@ -1,6 +0,0 @@
|
|||||||
assets/js/critical/color.js
|
|
||||||
assets/js/analytics.js
|
|
||||||
assets/js/flexsearch.js
|
|
||||||
assets/js/sharing.js
|
|
||||||
assets/js/vendor
|
|
||||||
node_modules
|
|
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,4 +1,5 @@
|
|||||||
_vendor/
|
_vendor/
|
||||||
|
prebuild/
|
||||||
public/
|
public/
|
||||||
resources/
|
resources/
|
||||||
node_modules/
|
node_modules/
|
||||||
|
2
LICENSE
2
LICENSE
@@ -1,6 +1,6 @@
|
|||||||
MIT License
|
MIT License
|
||||||
|
|
||||||
Copyright (c) 2024 Mark Dumay
|
Copyright (c) 2022-2025 Mark Dumay
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
@@ -123,7 +123,7 @@ Hinode is inspired by the following themes:
|
|||||||
## Donate
|
## Donate
|
||||||
|
|
||||||
<!-- markdownlint-disable MD033 -->
|
<!-- markdownlint-disable MD033 -->
|
||||||
<a href="https://www.buymeacoffee.com/markdumay" target="_blank" rel="noopener noreferrer"><img src="https://cdn.buymeacoffee.com/buttons/lato-orange.png" alt="Buy Me A Coffee" style="height: 51px !important;width: 217px !important;"></a>
|
<a href="https://www.buymeacoffee.com/markdumay" target="_blank" rel="noopener noreferrer nofollow"><img src="https://cdn.buymeacoffee.com/buttons/lato-orange.png" alt="Buy Me A Coffee" style="height: 51px !important;width: 217px !important;"></a>
|
||||||
<!-- markdownlint-enable MD033 -->
|
<!-- markdownlint-enable MD033 -->
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
@@ -1,14 +1,15 @@
|
|||||||
|
/* eslint-disable no-undef */
|
||||||
const alert = document.getElementById('page-alert')
|
const alert = document.getElementById('page-alert')
|
||||||
const closeBtn = document.getElementById('page-alert-btn-close')
|
const closeBtn = document.getElementById('page-alert-btn-close')
|
||||||
if (alert !== null && closeBtn !== null) {
|
if (alert !== null && closeBtn !== null) {
|
||||||
const version = alert.getAttribute('data-page-alert-version') || 'unknown'
|
const version = alert.getAttribute('data-page-alert-version') || 'unknown'
|
||||||
const hideAlert = sessionStorage.getItem(`page-alert-${version}`) !== null
|
const hideAlert = getSessionStorage(`page-alert-${version}`, null, 'functional') !== null
|
||||||
if (hideAlert) {
|
if (hideAlert) {
|
||||||
alert.classList.add('d-none')
|
alert.classList.add('d-none')
|
||||||
}
|
}
|
||||||
|
|
||||||
closeBtn.addEventListener('click', () => {
|
closeBtn.addEventListener('click', () => {
|
||||||
sessionStorage.setItem(`page-alert-${version}`, 'seen')
|
setSessionStorage(`page-alert-${version}`, 'seen', 'functional')
|
||||||
alert.classList.add('d-none')
|
alert.classList.add('d-none')
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@@ -1,21 +0,0 @@
|
|||||||
// Adapted from https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/google_analytics.html
|
|
||||||
|
|
||||||
{{ if and (not hugo.IsServer) (not site.Config.Privacy.GoogleAnalytics.Disable) }}
|
|
||||||
{{ with site.Config.Services.GoogleAnalytics.ID }}
|
|
||||||
{{ if strings.HasPrefix (lower .) "ua-" }}
|
|
||||||
{{ warnf "Google Analytics 4 (GA4) replaced Google Universal Analytics (UA) effective 1 July 2023. See https://support.google.com/analytics/answer/11583528. Create a GA4 property and data stream, then replace the Google Analytics ID in your site configuration with the new value." }}
|
|
||||||
{{ else }}
|
|
||||||
var doNotTrack = false;
|
|
||||||
if ({{ site.Config.Privacy.GoogleAnalytics.RespectDoNotTrack }}) {
|
|
||||||
var dnt = (navigator.doNotTrack || window.doNotTrack || navigator.msDoNotTrack);
|
|
||||||
var doNotTrack = (dnt == "1" || dnt == "yes");
|
|
||||||
}
|
|
||||||
if (!doNotTrack) {
|
|
||||||
window.dataLayer = window.dataLayer || [];
|
|
||||||
function gtag(){dataLayer.push(arguments);}
|
|
||||||
gtag('js', new Date());
|
|
||||||
gtag('config', '{{ . }}');
|
|
||||||
}
|
|
||||||
{{ end }}
|
|
||||||
{{ end }}
|
|
||||||
{{ end }}
|
|
33
assets/js/critical/_cookie.js
Normal file
33
assets/js/critical/_cookie.js
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
/* eslint-disable no-undef, no-unused-vars */
|
||||||
|
function hasConsent (category) {
|
||||||
|
// TODO: placeholder function
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
|
||||||
|
function getLocalStorage (key, def, category) {
|
||||||
|
if (hasConsent(category)) {
|
||||||
|
return localStorage.getItem(key)
|
||||||
|
} else {
|
||||||
|
return def
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function setLocalStorage (key, val, category) {
|
||||||
|
if (hasConsent(category)) {
|
||||||
|
localStorage.setItem(key, val)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function getSessionStorage (key, def, category) {
|
||||||
|
if (hasConsent(category)) {
|
||||||
|
return sessionStorage.getItem(key)
|
||||||
|
} else {
|
||||||
|
return def
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function setSessionStorage (key, val, category) {
|
||||||
|
if (hasConsent(category)) {
|
||||||
|
sessionStorage.setItem(key, val)
|
||||||
|
}
|
||||||
|
}
|
@@ -11,8 +11,8 @@
|
|||||||
|
|
||||||
const supportedThemes = ['auto', 'dark', 'light'];
|
const supportedThemes = ['auto', 'dark', 'light'];
|
||||||
|
|
||||||
// retrieves the currently stored theme from local storage (cookie)
|
// retrieves the currently stored theme from local storage
|
||||||
const storedTheme = localStorage.getItem('theme')
|
const storedTheme = getLocalStorage('theme', 'auto', 'functional')
|
||||||
|
|
||||||
// retrieves the theme preferred by the client, defaults to light
|
// retrieves the theme preferred by the client, defaults to light
|
||||||
function getPreferredTheme() {
|
function getPreferredTheme() {
|
||||||
@@ -25,7 +25,7 @@
|
|||||||
return storedTheme
|
return storedTheme
|
||||||
} else {
|
} else {
|
||||||
const preference = getPreferredTheme()
|
const preference = getPreferredTheme()
|
||||||
localStorage.setItem('theme', preference)
|
setLocalStorage('theme', preference, 'functional')
|
||||||
return preference
|
return preference
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -35,7 +35,7 @@
|
|||||||
if (!supportedThemes.includes(theme)) {
|
if (!supportedThemes.includes(theme)) {
|
||||||
theme = 'auto'
|
theme = 'auto'
|
||||||
}
|
}
|
||||||
localStorage.setItem('theme', theme)
|
setLocalStorage('theme', theme, 'functional')
|
||||||
|
|
||||||
if (theme === 'auto') {
|
if (theme === 'auto') {
|
||||||
document.documentElement.setAttribute('data-bs-theme', (getPreferredTheme()))
|
document.documentElement.setAttribute('data-bs-theme', (getPreferredTheme()))
|
||||||
@@ -61,32 +61,16 @@
|
|||||||
})
|
})
|
||||||
|
|
||||||
window.addEventListener('DOMContentLoaded', () => {
|
window.addEventListener('DOMContentLoaded', () => {
|
||||||
setTheme(getTheme())
|
|
||||||
const light = (document.documentElement.getAttribute('data-bs-theme') === 'light')
|
|
||||||
|
|
||||||
document.querySelectorAll('.ball').forEach(ball => {
|
|
||||||
ball.classList.add('notransition');
|
|
||||||
})
|
|
||||||
|
|
||||||
document.querySelectorAll('.navbar-mode-selector').forEach(chk => {
|
document.querySelectorAll('.navbar-mode-selector').forEach(chk => {
|
||||||
chk.checked = light
|
|
||||||
chk.addEventListener('change', function () {
|
chk.addEventListener('change', function () {
|
||||||
|
document.documentElement.setAttribute('data-bs-theme-animate', 'true')
|
||||||
toggleTheme()
|
toggleTheme()
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
document.querySelectorAll('.ball').forEach(ball => {
|
|
||||||
ball.offsetHeight; // flush css changes
|
|
||||||
ball.classList.remove('notransition');
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
|
|
||||||
window.addEventListener('load', () => {
|
// initialize theme directly when script is invoked
|
||||||
const light = (document.documentElement.getAttribute('data-bs-theme') === 'light')
|
setTheme(getTheme())
|
||||||
document.querySelectorAll('.navbar-mode-selector').forEach(chk => {
|
|
||||||
chk.checked = light
|
|
||||||
})
|
|
||||||
});
|
|
||||||
})()
|
})()
|
||||||
|
|
||||||
{{- end -}}
|
{{- end -}}
|
86
assets/js/critical/languageSelector.js
Normal file
86
assets/js/critical/languageSelector.js
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
/* eslint-disable */
|
||||||
|
{{- if site.Params.main.enableLanguageSelectionStorage -}}
|
||||||
|
{{- $folder := (urls.Parse site.BaseURL).Path | default "/" -}}
|
||||||
|
|
||||||
|
(() => {
|
||||||
|
'use strict'
|
||||||
|
|
||||||
|
const folder = '{{ $folder }}'
|
||||||
|
|
||||||
|
// Function to get the selected language from local storage
|
||||||
|
function getLanguage () {
|
||||||
|
return getLocalStorage('selectedLanguage', document.documentElement.lang, 'functional')
|
||||||
|
}
|
||||||
|
|
||||||
|
// Function to set the selected language in local storage
|
||||||
|
function setLanguage (language) {
|
||||||
|
setLocalStorage('selectedLanguage', language, 'functional')
|
||||||
|
}
|
||||||
|
|
||||||
|
// Function to apply the selected language to the website
|
||||||
|
function applyLanguage (language, href) {
|
||||||
|
if (document.documentElement.lang !== language) {
|
||||||
|
if (href) {
|
||||||
|
if (window.location.pathname !== href) {
|
||||||
|
window.location.href = href
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
let target = folder + language + '/'
|
||||||
|
if (window.location.href !== target) {
|
||||||
|
window.location.href = target
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Event listener for language selection
|
||||||
|
document.addEventListener('DOMContentLoaded', () => {
|
||||||
|
// override stored language when query string contains force is true
|
||||||
|
let params = new URLSearchParams(document.location.search)
|
||||||
|
let force = params.get('force')
|
||||||
|
if (force !== null && force.toLowerCase() == 'true') {
|
||||||
|
setLanguage(document.documentElement.lang)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// continue with regular code
|
||||||
|
const storedLanguage = getLanguage()
|
||||||
|
const languageItems = document.querySelectorAll('#language-selector[data-translated=true] .dropdown-item')
|
||||||
|
|
||||||
|
const link = document.querySelector("link[rel='canonical']")
|
||||||
|
let alias = ''
|
||||||
|
if (link !== null) {
|
||||||
|
alias = link.getAttribute('href')
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((alias !== '') && (window.location.href !== alias)) {
|
||||||
|
window.location.href = alias
|
||||||
|
} else if (languageItems.length > 0) {
|
||||||
|
// Redirect if the stored language differs from the active language
|
||||||
|
if ((storedLanguage) && (document.documentElement.lang !== storedLanguage)) {
|
||||||
|
languageItems.forEach(item => {
|
||||||
|
if (item.getAttribute('hreflang') === storedLanguage) {
|
||||||
|
applyLanguage(storedLanguage, item.getAttribute('href'))
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update the stored language when the user selects a new one
|
||||||
|
languageItems.forEach(item => {
|
||||||
|
item.addEventListener('click', () => {
|
||||||
|
const selectedLanguage = item.getAttribute('hreflang')
|
||||||
|
|
||||||
|
if (selectedLanguage) {
|
||||||
|
setLanguage(selectedLanguage)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// overrule the current stored language when no translation is available
|
||||||
|
setLanguage(document.documentElement.lang)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})()
|
||||||
|
{{- end -}}
|
||||||
|
/* eslint-enable */
|
@@ -1,23 +1,34 @@
|
|||||||
|
const fixed = {{ site.Params.navigation.fixed }}
|
||||||
const navbar = document.querySelector('.navbar')
|
const navbar = document.querySelector('.navbar')
|
||||||
const togglers = document.querySelectorAll('.main-nav-toggler')
|
const togglers = document.querySelectorAll('.main-nav-toggler')
|
||||||
const modeSelectors = document.querySelectorAll('.switch-mode-collapsed')
|
const modeSelectors = document.querySelectorAll('.switch-mode-collapsed')
|
||||||
const colorsBG = ['body', 'secondary', 'tertiary']
|
const colorsBG = ['body', 'secondary', 'tertiary']
|
||||||
|
|
||||||
function updateNavbar () {
|
function updateNavbar () {
|
||||||
|
let storedTheme
|
||||||
|
if (typeof getLocalStorage === "function") {
|
||||||
|
storedTheme = getLocalStorage('theme', null, 'functional')
|
||||||
|
}
|
||||||
|
|
||||||
if (window.scrollY > 75) {
|
if (window.scrollY > 75) {
|
||||||
navbar.classList.add('nav-active')
|
navbar.classList.add('nav-active')
|
||||||
const storedTheme = localStorage.getItem('theme')
|
if (storedTheme) {
|
||||||
navbar.setAttribute('data-bs-theme', storedTheme)
|
navbar.setAttribute('data-bs-theme', storedTheme)
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
navbar.classList.remove('nav-active')
|
navbar.classList.remove('nav-active')
|
||||||
const defaultTheme = navbar.getAttribute('data-bs-overlay')
|
const defaultTheme = navbar.getAttribute('data-bs-overlay')
|
||||||
navbar.setAttribute('data-bs-theme', defaultTheme)
|
|
||||||
|
const targetTheme = defaultTheme ? defaultTheme : storedTheme
|
||||||
|
if (targetTheme) {
|
||||||
|
navbar.setAttribute('data-bs-theme', defaultTheme)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((navbar !== null) && (window.performance.getEntriesByType)) {
|
if ((navbar !== null) && (window.performance.getEntriesByType)) {
|
||||||
if (window.performance.getEntriesByType('navigation')[0].type === 'reload') {
|
if (window.performance.getEntriesByType('navigation')[0].type === 'reload') {
|
||||||
updateNavbar()
|
fixed && updateNavbar()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -29,7 +40,7 @@ if (navbar !== null && togglers !== null) {
|
|||||||
attributeFilter: ['data-bs-theme']
|
attributeFilter: ['data-bs-theme']
|
||||||
}
|
}
|
||||||
const Observer = new MutationObserver((mutationrecords) => {
|
const Observer = new MutationObserver((mutationrecords) => {
|
||||||
updateNavbar()
|
fixed && updateNavbar()
|
||||||
})
|
})
|
||||||
Observer.observe(html, config)
|
Observer.observe(html, config)
|
||||||
|
|
||||||
@@ -40,7 +51,7 @@ if (navbar !== null && togglers !== null) {
|
|||||||
|
|
||||||
// set the navbar background color to opaque when scrolling past a breakpoint
|
// set the navbar background color to opaque when scrolling past a breakpoint
|
||||||
window.onscroll = () => {
|
window.onscroll = () => {
|
||||||
updateNavbar()
|
fixed && updateNavbar()
|
||||||
}
|
}
|
||||||
|
|
||||||
// set the navbar background color to opaque when expanded
|
// set the navbar background color to opaque when expanded
|
||||||
|
@@ -14,23 +14,22 @@ function webShareAPI (title, description, link) {
|
|||||||
.catch((error) => console.log('Error sharing', error))
|
.catch((error) => console.log('Error sharing', error))
|
||||||
}
|
}
|
||||||
|
|
||||||
const shareBtn = document.getElementById('btn-webshare')
|
const shareButtons = document.querySelectorAll('[data-sharing-url]')
|
||||||
|
shareButtons.forEach(btn => {
|
||||||
if (shareBtn !== null) {
|
|
||||||
if (navigator.share) {
|
if (navigator.share) {
|
||||||
const title = shareBtn.getAttribute('data-sharing-title')
|
const title = btn.getAttribute('data-sharing-title')
|
||||||
const description = shareBtn.getAttribute('data-sharing-description')
|
const description = btn.getAttribute('data-sharing-description')
|
||||||
const url = shareBtn.getAttribute('data-sharing-url')
|
const url = btn.getAttribute('data-sharing-url')
|
||||||
|
|
||||||
// show button if it supports webShareAPI
|
// show button if it supports webShareAPI
|
||||||
shareBtn.style.display = 'block'
|
btn.style.display = 'block'
|
||||||
shareBtn.addEventListener('click', () =>
|
btn.addEventListener('click', () =>
|
||||||
webShareAPI(title, description, url)
|
webShareAPI(title, description, url)
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
// hide button if host does not support Web Share API
|
// hide button if host does not support Web Share API
|
||||||
shareBtn.style.display = 'none'
|
btn.style.display = 'none'
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
|
|
||||||
{{- end -}}
|
{{- end -}}
|
3
assets/js/video.js
Normal file
3
assets/js/video.js
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
document.querySelectorAll('[data-video-padding]').forEach(element => {
|
||||||
|
element.style.paddingBottom = element.getAttribute('data-video-padding')
|
||||||
|
})
|
@@ -1,5 +1,5 @@
|
|||||||
@if $enable-dark-mode {
|
@if $enable-dark-mode {
|
||||||
body {
|
[data-bs-theme-animate="true"] body {
|
||||||
transition: background-color 0.5s, color 0.5s;
|
transition: background-color 0.5s, color 0.5s;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -25,6 +25,8 @@ strong {
|
|||||||
$black: #000 !default;
|
$black: #000 !default;
|
||||||
$btn-toggle-color: $black !default;
|
$btn-toggle-color: $black !default;
|
||||||
|
|
||||||
|
$card-color: var(--bs-body-color);
|
||||||
|
|
||||||
$carousel-dark-indicator-active-bg: #fff !default;
|
$carousel-dark-indicator-active-bg: #fff !default;
|
||||||
$carousel-dark-caption-color: #fff !default;
|
$carousel-dark-caption-color: #fff !default;
|
||||||
$carousel-dark-control-icon-filter: invert(0) grayscale(100) !default;
|
$carousel-dark-control-icon-filter: invert(0) grayscale(100) !default;
|
||||||
|
@@ -4,6 +4,51 @@
|
|||||||
padding: 1rem 1.5rem;
|
padding: 1rem 1.5rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
blockquote {
|
.blockquote-alert {
|
||||||
@extend .blockquote;
|
--bs-blockquote-alert-color: $secondary;
|
||||||
|
|
||||||
|
border-left: 0.3rem solid;
|
||||||
|
border-color: var(--bs-blockquote-alert-color);
|
||||||
|
padding: .5rem 1.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.blockquote-alert > p:nth-of-type(2) {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.blockquote-alert-heading {
|
||||||
|
font-weight: bold;
|
||||||
|
color: var(--bs-blockquote-alert-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.blockquote-alert-caution {
|
||||||
|
--bs-blockquote-alert-color: var(--#{$prefix}danger);
|
||||||
|
}
|
||||||
|
|
||||||
|
.blockquote-alert-important {
|
||||||
|
--bs-blockquote-alert-color: var(--#{$prefix}primary);
|
||||||
|
}
|
||||||
|
|
||||||
|
.blockquote-alert-note {
|
||||||
|
--bs-blockquote-alert-color: var(--#{$prefix}info);
|
||||||
|
}
|
||||||
|
|
||||||
|
.blockquote-alert-tip {
|
||||||
|
--bs-blockquote-alert-color: var(--#{$prefix}success);
|
||||||
|
}
|
||||||
|
|
||||||
|
.blockquote-alert-warning {
|
||||||
|
--bs-blockquote-alert-color: var(--#{$prefix}warning);
|
||||||
|
}
|
||||||
|
|
||||||
|
.blockquote-alert a.btn-link {
|
||||||
|
--bs-link-color: var(--bs-blockquote-alert-color);
|
||||||
|
--bs-link-hover-color: color-mix(in srgb, var(--bs-link-color), black 20%);
|
||||||
|
|
||||||
|
color: var(--bs-link-color) !important;
|
||||||
|
|
||||||
|
&:hover,
|
||||||
|
&:focus {
|
||||||
|
color: var(--bs-link-hover-color) !important;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -44,4 +44,7 @@ a.btn {
|
|||||||
|
|
||||||
.btn-link {
|
.btn-link {
|
||||||
--bs-btn-padding-x: 0;
|
--bs-btn-padding-x: 0;
|
||||||
|
--bs-btn-padding-y: 0;
|
||||||
|
|
||||||
|
margin: 0 !important;
|
||||||
}
|
}
|
||||||
|
@@ -5,11 +5,21 @@
|
|||||||
background-color: var(--#{$prefix}secondary-bg);
|
background-color: var(--#{$prefix}secondary-bg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.card-img-wrap {
|
.card .card-img-wrap {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.card .card-img-wrap:has(.card-img-top) {
|
||||||
|
border-top-left-radius: var(--#{$prefix}card-inner-border-radius);
|
||||||
|
border-top-right-radius: var(--#{$prefix}card-inner-border-radius);
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-img-wrap:has(.card-img-bottom) {
|
||||||
|
border-bottom-right-radius: var(--#{$prefix}card-inner-border-radius);
|
||||||
|
border-bottom-left-radius: var(--#{$prefix}card-inner-border-radius);
|
||||||
|
}
|
||||||
|
|
||||||
.card-zoom {
|
.card-zoom {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
@@ -1,4 +1,8 @@
|
|||||||
.nav-tabs > .nav-link.active {
|
.nav-tabs .nav-tabs {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-tabs .nav-link.active {
|
||||||
border-bottom-color: var(--bs-body-bg) !important;
|
border-bottom-color: var(--bs-body-bg) !important;
|
||||||
border-bottom-style: solid !important;
|
border-bottom-style: solid !important;
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
@@ -12,13 +16,13 @@
|
|||||||
column-gap: var(--#{$prefix}nav-callout-gap) !important;
|
column-gap: var(--#{$prefix}nav-callout-gap) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-callout > .tab-content {
|
.nav-callout + .tab-content {
|
||||||
background-color: var(--#{$prefix}nav-callout-bg);
|
background-color: var(--#{$prefix}nav-callout-bg);
|
||||||
padding: 2 * $spacer;
|
padding: 2 * $spacer;
|
||||||
margin-top: 0 !important;
|
margin-top: 0 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-callout > .nav-link {
|
.nav-callout .nav-link {
|
||||||
display: flex;
|
display: flex;
|
||||||
text-align: start;
|
text-align: start;
|
||||||
vertical-align: text-top;
|
vertical-align: text-top;
|
||||||
@@ -27,7 +31,7 @@
|
|||||||
border-bottom: none;
|
border-bottom: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-callout > .nav-link.active {
|
.nav-callout .nav-link.active {
|
||||||
background-image: linear-gradient(to top right, var(--#{$prefix}nav-callout-bg) 50%, transparent 0);
|
background-image: linear-gradient(to top right, var(--#{$prefix}nav-callout-bg) 50%, transparent 0);
|
||||||
background-size: 50% (3 * $spacer);
|
background-size: 50% (3 * $spacer);
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
@@ -53,7 +57,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-callout > .accordion-item {
|
.nav-callout .accordion-item {
|
||||||
margin-top: 2 * $spacer;
|
margin-top: 2 * $spacer;
|
||||||
margin-bottom: 2 * $spacer;
|
margin-bottom: 2 * $spacer;
|
||||||
border: none;
|
border: none;
|
||||||
|
@@ -1,11 +1,81 @@
|
|||||||
// stylelint-disable annotation-no-unknown
|
// stylelint-disable annotation-no-unknown
|
||||||
|
|
||||||
|
// adapted from https://www.codeply.com/p/UsTEwDkzNp#
|
||||||
|
.checkbox {
|
||||||
|
opacity: 0;
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mode-switch {
|
||||||
|
--#{$prefix}mode-switch-width: 50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mode-switch .label {
|
||||||
|
border-color: var(--#{$prefix}border-color);
|
||||||
|
border-style: solid;
|
||||||
|
border-width: 1px;
|
||||||
|
border-radius: var(--#{$prefix}mode-switch-width);
|
||||||
|
cursor: pointer;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
padding: 5px;
|
||||||
|
position: relative;
|
||||||
|
height: calc(1px + var(--#{$prefix}mode-switch-width) / 2);
|
||||||
|
width: var(--#{$prefix}mode-switch-width);
|
||||||
|
transform: scale(0.9);
|
||||||
|
}
|
||||||
|
|
||||||
|
.notransition {
|
||||||
|
-webkit-transition: none !important;
|
||||||
|
-moz-transition: none !important;
|
||||||
|
-o-transition: none !important;
|
||||||
|
transition: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mode-switch .label .ball {
|
||||||
|
background-color: var(--#{$prefix}border-color);
|
||||||
|
border-radius: 50%;
|
||||||
|
position: absolute;
|
||||||
|
top: 2px;
|
||||||
|
left: 2px;
|
||||||
|
height: calc((var(--#{$prefix}mode-switch-width) / 2) - 5px);
|
||||||
|
width: calc((var(--#{$prefix}mode-switch-width) / 2) - 5px);
|
||||||
|
transition: transform 0.2s linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mode-switch .checkbox:checked + .label .ball {
|
||||||
|
transform: translateX(calc((var(--#{$prefix}mode-switch-width) / 2) - 1px));
|
||||||
|
}
|
||||||
|
|
||||||
|
@if $enable-dark-mode {
|
||||||
|
[data-bs-theme="light"] .mode-switch .ball {
|
||||||
|
transform: translateX(calc((var(--#{$prefix}mode-switch-width) / 2) - 1px));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.mode-switch .fa-moon {
|
||||||
|
color: $yellow;
|
||||||
|
transform: scale(0.8);
|
||||||
|
}
|
||||||
|
|
||||||
|
.mode-switch .fa-sun {
|
||||||
|
color: var(--#{$prefix}bs-body-color);
|
||||||
|
transform: scale(0.8);
|
||||||
|
}
|
||||||
|
|
||||||
// Source: https://jsfiddle.net/njhgr40m/
|
// Source: https://jsfiddle.net/njhgr40m/
|
||||||
|
|
||||||
|
@if $enable-dark-mode {
|
||||||
|
[data-bs-theme-animate="true"] .navbar {
|
||||||
|
transition: 0.5s ease-in-out;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.navbar {
|
.navbar {
|
||||||
--bs-navbar-expanded-color: var(--bs-body-bg);
|
--bs-navbar-expanded-color: var(--bs-body-bg);
|
||||||
--bs-navbar-toggler-color: var(--bs-navbar-hover-color);
|
--bs-navbar-toggler-color: var(--bs-navbar-hover-color);
|
||||||
|
|
||||||
transition: 0.5s ease-in-out;
|
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
|
|
||||||
@each $state, $val in $theme-colors {
|
@each $state, $val in $theme-colors {
|
||||||
@@ -22,6 +92,15 @@
|
|||||||
margin: 0 .15rem;
|
margin: 0 .15rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.navbar-title {
|
||||||
|
display: inline-block;
|
||||||
|
white-space: normal;
|
||||||
|
text-align: center !important;
|
||||||
|
vertical-align: middle;
|
||||||
|
padding: 0 $spacer;
|
||||||
|
width: 100% !important;
|
||||||
|
}
|
||||||
|
|
||||||
.navbar-contrast .nav-link.active, .navbar-contrast .nav-link.show, .navbar-contrast .nav-link:hover {
|
.navbar-contrast .nav-link.active, .navbar-contrast .nav-link.show, .navbar-contrast .nav-link:hover {
|
||||||
border-bottom: solid 1px var(--bs-navbar-hover-color);
|
border-bottom: solid 1px var(--bs-navbar-hover-color);
|
||||||
margin-bottom: -1px;
|
margin-bottom: -1px;
|
||||||
@@ -33,6 +112,16 @@
|
|||||||
--bs-navbar-disabled-color: white !important;
|
--bs-navbar-disabled-color: white !important;
|
||||||
--bs-navbar-active-color: white !important;
|
--bs-navbar-active-color: white !important;
|
||||||
--bs-navbar-toggler-color: white;
|
--bs-navbar-toggler-color: white;
|
||||||
|
|
||||||
|
.navbar-title, .mode-switch {
|
||||||
|
--#{$prefix}border-color: white;
|
||||||
|
|
||||||
|
color: white !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mode-switch .fa-moon {
|
||||||
|
color: $white;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-expanded {
|
.navbar-expanded {
|
||||||
@@ -112,7 +201,7 @@
|
|||||||
background-color: var(--bs-navbar-toggler-color);
|
background-color: var(--bs-navbar-toggler-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
.emphasis, .emphasis-dark, .emphasis-light {
|
.emphasis {
|
||||||
background-color: var(--bs-navbar-toggler-color);
|
background-color: var(--bs-navbar-toggler-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -133,15 +222,6 @@
|
|||||||
--navbar-offset: #{$navbar-offset-xs};
|
--navbar-offset: #{$navbar-offset-xs};
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-title {
|
|
||||||
display: inline-block;
|
|
||||||
white-space: normal;
|
|
||||||
text-align: center !important;
|
|
||||||
vertical-align: middle;
|
|
||||||
padding: 0 $spacer;
|
|
||||||
width: 100% !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.navbar-container {
|
.navbar-container {
|
||||||
width: 100% !important;
|
width: 100% !important;
|
||||||
}
|
}
|
||||||
@@ -235,60 +315,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// adapted from https://www.codeply.com/p/UsTEwDkzNp#
|
.navbar-overlay {
|
||||||
.checkbox {
|
position: absolute;
|
||||||
opacity: 0;
|
z-index: $zindex-fixed;
|
||||||
position: absolute;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mode-switch {
|
|
||||||
--#{$prefix}mode-switch-width: 50px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mode-switch .label {
|
|
||||||
border-color: var(--#{$prefix}border-color);
|
|
||||||
border-style: solid;
|
|
||||||
border-width: 1px;
|
|
||||||
border-radius: var(--#{$prefix}mode-switch-width);
|
|
||||||
cursor: pointer;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-between;
|
|
||||||
padding: 5px;
|
|
||||||
position: relative;
|
|
||||||
height: calc(1px + var(--#{$prefix}mode-switch-width) / 2);
|
|
||||||
width: var(--#{$prefix}mode-switch-width);
|
|
||||||
transform: scale(0.9);
|
|
||||||
}
|
|
||||||
|
|
||||||
.notransition {
|
|
||||||
-webkit-transition: none !important;
|
|
||||||
-moz-transition: none !important;
|
|
||||||
-o-transition: none !important;
|
|
||||||
transition: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mode-switch .label .ball {
|
|
||||||
background-color: var(--#{$prefix}secondary-bg);
|
|
||||||
border-radius: 50%;
|
|
||||||
position: absolute;
|
|
||||||
top: 2px;
|
|
||||||
left: 2px;
|
|
||||||
height: calc((var(--#{$prefix}mode-switch-width) / 2) - 5px);
|
|
||||||
width: calc((var(--#{$prefix}mode-switch-width) / 2) - 5px);
|
|
||||||
transition: transform 0.2s linear;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mode-switch .checkbox:checked + .label .ball {
|
|
||||||
transform: translateX(calc((var(--#{$prefix}mode-switch-width) / 2) - 1px));
|
|
||||||
}
|
|
||||||
|
|
||||||
.mode-switch .fa-moon {
|
|
||||||
color: $yellow;
|
|
||||||
transform: scale(0.8);
|
|
||||||
}
|
|
||||||
|
|
||||||
.mode-switch .fa-sun {
|
|
||||||
color: var(--#{$prefix}bs-body-color);
|
|
||||||
transform: scale(0.8);
|
|
||||||
}
|
}
|
||||||
|
@@ -7,22 +7,45 @@
|
|||||||
top: var(--navbar-offset);
|
top: var(--navbar-offset);
|
||||||
max-height: 90vh;
|
max-height: 90vh;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
|
scrollbar-gutter: stable;
|
||||||
}
|
}
|
||||||
|
|
||||||
.sidebar-item {
|
.sidebar-item {
|
||||||
color: rgba(0, 0, 0, 0.65);
|
color: rgba(0, 0, 0, 0.65);
|
||||||
margin-left: 0 !important;
|
margin-left: 0 !important;
|
||||||
padding-left: 0.85rem !important;
|
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
|
padding: 0.1875rem 0.5rem !important;
|
||||||
|
|
||||||
|
&.active {
|
||||||
|
color: $primary;
|
||||||
|
}
|
||||||
|
|
||||||
&.active,
|
|
||||||
&:hover,
|
&:hover,
|
||||||
&:focus {
|
&:focus {
|
||||||
color: black;
|
color: $primary;
|
||||||
|
background-color: tint-color($primary, 90%);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-toggle {
|
.sidebar-item-group {
|
||||||
|
&:hover,
|
||||||
|
&:focus {
|
||||||
|
color: $primary;
|
||||||
|
background-color: tint-color($primary, 90%);
|
||||||
|
}
|
||||||
|
|
||||||
|
> div > a {
|
||||||
|
color: var(--bs-body-color) !important;
|
||||||
|
text-decoration: none;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar-item-group > div {
|
||||||
|
padding: 0.1875rem 0.5rem !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-toggle-group {
|
||||||
padding: 0.25rem 0.5rem;
|
padding: 0.25rem 0.5rem;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
color: rgba(0, 0, 0, 0.65);
|
color: rgba(0, 0, 0, 0.65);
|
||||||
@@ -30,8 +53,7 @@
|
|||||||
|
|
||||||
&:hover,
|
&:hover,
|
||||||
&:focus {
|
&:focus {
|
||||||
color: black;
|
background-color: transparent;
|
||||||
background-color: tint-color($primary, 90%);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
&::before {
|
&::before {
|
||||||
@@ -43,50 +65,49 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-toggle[aria-expanded="true"] {
|
.btn-toggle-group[aria-expanded="true"] {
|
||||||
color: black;
|
|
||||||
|
|
||||||
&::before {
|
&::before {
|
||||||
transform: rotate(90deg);
|
transform: rotate(90deg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-toggle-nav a {
|
|
||||||
padding: 0.1875rem 0.5rem;
|
|
||||||
margin-top: 0.125rem;
|
|
||||||
margin-left: 1.25rem;
|
|
||||||
|
|
||||||
&:hover,
|
|
||||||
&:focus {
|
|
||||||
background-color: tint-color($primary, 90%);
|
|
||||||
}
|
|
||||||
|
|
||||||
&.active {
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@if $enable-dark-mode {
|
@if $enable-dark-mode {
|
||||||
@include color-mode(dark) {
|
@include color-mode(dark) {
|
||||||
.sidebar-item {
|
.sidebar-item {
|
||||||
color: var(--bs-body-color);
|
color: var(--bs-body-color);
|
||||||
margin-left: 0 !important;
|
|
||||||
padding-left: 0.85rem !important;
|
&.active {
|
||||||
|
color: $primary-text-emphasis-dark !important;
|
||||||
&.active,
|
}
|
||||||
|
|
||||||
|
&:hover,
|
||||||
|
&:focus {
|
||||||
|
color: $primary-text-emphasis-dark !important;
|
||||||
|
background-color: transparent;
|
||||||
|
box-shadow: inset 0 0 0 1px $primary-bg-subtle-dark;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar-item-group {
|
||||||
|
color: var(--bs-body-color) !important;
|
||||||
|
|
||||||
|
&.active {
|
||||||
|
color: $primary-text-emphasis-dark !important;
|
||||||
|
}
|
||||||
|
|
||||||
&:hover,
|
&:hover,
|
||||||
&:focus {
|
&:focus {
|
||||||
color: white !important;
|
color: white !important;
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
|
box-shadow: inset 0 0 0 1px $primary-bg-subtle-dark;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-toggle {
|
.btn-toggle-group {
|
||||||
color: var(--bs-body-color);
|
color: var(--bs-body-color);
|
||||||
|
|
||||||
&:hover,
|
&:hover,
|
||||||
&:focus {
|
&:focus {
|
||||||
color: white !important;
|
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -95,26 +116,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-toggle[aria-expanded="true"] {
|
.btn-toggle-group[aria-expanded="true"] {
|
||||||
color: var(--bs-secondary-color);
|
color: var(--bs-secondary-color);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
.btn-toggle-nav a {
|
|
||||||
padding: 0.1875rem 0.5rem;
|
|
||||||
margin-top: 0.125rem;
|
|
||||||
margin-left: 1.25rem;
|
|
||||||
|
|
||||||
&:hover,
|
|
||||||
&:focus {
|
|
||||||
color: white !important;
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.active {
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// scss-docs-end sidebar
|
// scss-docs-end sidebar
|
||||||
|
@@ -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 {
|
||||||
|
@@ -75,6 +75,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,11 +1,11 @@
|
|||||||
.youtube-embedded {
|
.video-embedded {
|
||||||
position: relative;
|
position: relative;
|
||||||
padding-bottom: 56.25%;
|
padding-bottom: 56.25%;
|
||||||
height: 0;
|
height: 0;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
.youtube-embedded > iframe {
|
.video-embedded > iframe {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
# toml-docs-start main
|
# toml-docs-start main
|
||||||
title = "Hinode"
|
title = "Hinode"
|
||||||
copyright = "Copyright © 2024 Mark Dumay."
|
copyright = "Copyright © 2022 - 2025 Mark Dumay."
|
||||||
paginate = 9
|
|
||||||
enableGitInfo = true
|
enableGitInfo = true
|
||||||
# toml-docs-end main
|
# toml-docs-end main
|
||||||
|
|
||||||
@@ -27,20 +26,48 @@ defaultContentLanguage = "en"
|
|||||||
defaultContentLanguageInSubdir = false
|
defaultContentLanguageInSubdir = false
|
||||||
# toml-docs-end language
|
# toml-docs-end language
|
||||||
|
|
||||||
|
# toml-docs-start headers
|
||||||
|
[outputFormats]
|
||||||
|
[outputFormats.server]
|
||||||
|
mediaType = "application/toml"
|
||||||
|
baseName = "server"
|
||||||
|
isPlainText = true
|
||||||
|
notAlternative = true
|
||||||
|
permalinkable = true
|
||||||
|
root = true
|
||||||
|
[outputFormats.netlify]
|
||||||
|
mediaType = "application/toml"
|
||||||
|
baseName = "netlify"
|
||||||
|
isPlainText = true
|
||||||
|
notAlternative = true
|
||||||
|
permalinkable = true
|
||||||
|
root = true
|
||||||
|
# toml-docs-end headers
|
||||||
|
|
||||||
|
[outputFormats.XML]
|
||||||
|
isPlainText = false
|
||||||
|
mediaType = "application/xml"
|
||||||
|
isHtml = false
|
||||||
|
noUgly = true
|
||||||
|
permalinkable = false
|
||||||
|
name = "xml"
|
||||||
|
|
||||||
# toml-docs-start redirect
|
# toml-docs-start redirect
|
||||||
[outputFormats.REDIR]
|
[outputFormats.REDIR]
|
||||||
mediaType = "text/netlify"
|
mediaType = "text/netlify"
|
||||||
baseName = "_redirects"
|
baseName = "_redirects"
|
||||||
isPlainText = true
|
isPlainText = true
|
||||||
notAlternative = true
|
notAlternative = true
|
||||||
|
|
||||||
[mediaTypes."text/netlify"]
|
[mediaTypes."text/netlify"]
|
||||||
delimiter = ""
|
delimiter = ""
|
||||||
|
|
||||||
[outputs]
|
|
||||||
home = ["HTML", "RSS", "REDIR"]
|
|
||||||
# toml-docs-end redirect
|
# toml-docs-end redirect
|
||||||
|
|
||||||
|
# toml-docs-start outputs
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "RSS", "REDIR", "netlify", "server"]
|
||||||
|
# toml-docs-end outputs
|
||||||
|
|
||||||
# toml-docs-start build
|
# toml-docs-start build
|
||||||
[build]
|
[build]
|
||||||
writeStats = true
|
writeStats = true
|
||||||
@@ -49,6 +76,9 @@ home = ["HTML", "RSS", "REDIR"]
|
|||||||
[taxonomies]
|
[taxonomies]
|
||||||
tag = 'tags'
|
tag = 'tags'
|
||||||
|
|
||||||
|
[pagination]
|
||||||
|
pagerSize = 9
|
||||||
|
|
||||||
[privacy]
|
[privacy]
|
||||||
[privacy.vimeo]
|
[privacy.vimeo]
|
||||||
disabled = false
|
disabled = false
|
||||||
@@ -75,15 +105,6 @@ home = ["HTML", "RSS", "REDIR"]
|
|||||||
[services.googleAnalytics]
|
[services.googleAnalytics]
|
||||||
# ID = "G-xxxxxxxxxx"
|
# ID = "G-xxxxxxxxxx"
|
||||||
|
|
||||||
[outputFormats]
|
|
||||||
[outputFormats.XML]
|
|
||||||
isPlainText = false
|
|
||||||
mediaType = "application/xml"
|
|
||||||
isHtml = false
|
|
||||||
noUgly = true
|
|
||||||
permalinkable = false
|
|
||||||
name = "xml"
|
|
||||||
|
|
||||||
[minify]
|
[minify]
|
||||||
[minify.tdewolff.js]
|
[minify.tdewolff.js]
|
||||||
keepVarNames = true
|
keepVarNames = true
|
||||||
@@ -95,8 +116,7 @@ home = ["HTML", "RSS", "REDIR"]
|
|||||||
[module]
|
[module]
|
||||||
[module.hugoVersion]
|
[module.hugoVersion]
|
||||||
extended = true
|
extended = true
|
||||||
min = "0.120.0"
|
min = "0.141.0"
|
||||||
max = ""
|
|
||||||
[[module.mounts]]
|
[[module.mounts]]
|
||||||
source = "archetypes"
|
source = "archetypes"
|
||||||
target = "archetypes"
|
target = "archetypes"
|
||||||
@@ -118,16 +138,25 @@ home = ["HTML", "RSS", "REDIR"]
|
|||||||
[[module.mounts]]
|
[[module.mounts]]
|
||||||
source = "static"
|
source = "static"
|
||||||
target = "static"
|
target = "static"
|
||||||
|
# ensures main package.json is always available, even when using workspaces
|
||||||
|
# in workspaces, the package.json is pointing to the first imported module
|
||||||
|
[[module.mounts]]
|
||||||
|
source = "package.json"
|
||||||
|
target = "assets/data/package-hinode.json"
|
||||||
[[module.mounts]]
|
[[module.mounts]]
|
||||||
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]]
|
[[module.imports]]
|
||||||
path = "github.com/gethinode/mod-bootstrap"
|
path = "github.com/gethinode/mod-bootstrap"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-csp"
|
||||||
[[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"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-google-analytics"
|
||||||
[[module.imports]]
|
[[module.imports]]
|
||||||
path = "github.com/gethinode/mod-katex"
|
path = "github.com/gethinode/mod-katex"
|
||||||
[[module.imports]]
|
[[module.imports]]
|
||||||
@@ -139,3 +168,11 @@ home = ["HTML", "RSS", "REDIR"]
|
|||||||
[[module.imports]]
|
[[module.imports]]
|
||||||
path = "github.com/gethinode/mod-utils/v2"
|
path = "github.com/gethinode/mod-utils/v2"
|
||||||
# toml-docs-end modules
|
# toml-docs-end modules
|
||||||
|
|
||||||
|
# toml-docs-start segments
|
||||||
|
[segments]
|
||||||
|
[segments.headers]
|
||||||
|
[[segments.headers.includes]]
|
||||||
|
kind = '{home}'
|
||||||
|
output = '{netlify,server}'
|
||||||
|
# toml-docs-end segments
|
||||||
|
@@ -11,5 +11,5 @@
|
|||||||
title = "Follow me"
|
title = "Follow me"
|
||||||
caption = "I work on everything coding and tweet developer memes"
|
caption = "I work on everything coding and tweet developer memes"
|
||||||
[en.params.footer]
|
[en.params.footer]
|
||||||
# license = "Licensed under Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
|
# license = "Licensed under Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer nofollow'>CC BY-NC-SA 4.0</a>)."
|
||||||
# toml-docs-end lang-param
|
# toml-docs-end lang-param
|
||||||
|
@@ -24,9 +24,15 @@ defaultMarkdownHandler = "goldmark"
|
|||||||
table = true
|
table = true
|
||||||
taskList = true
|
taskList = true
|
||||||
typographer = true
|
typographer = true
|
||||||
|
[goldmark.extensions.passthrough]
|
||||||
|
enable = true
|
||||||
|
[goldmark.extensions.passthrough.delimiters]
|
||||||
|
block = [['\[', '\]'], ['$$', '$$']]
|
||||||
|
inline = [['\(', '\)'], ['$', '$']]
|
||||||
[goldmark.parser]
|
[goldmark.parser]
|
||||||
autoHeadingID = true
|
autoHeadingID = true
|
||||||
autoHeadingIDType = 'github'
|
autoHeadingIDType = 'github'
|
||||||
|
wrapStandAloneImageWithinParagraph = false
|
||||||
[goldmark.parser.attribute]
|
[goldmark.parser.attribute]
|
||||||
block = true
|
block = true
|
||||||
[goldmark.renderer]
|
[goldmark.renderer]
|
||||||
|
@@ -3,12 +3,17 @@
|
|||||||
separator = "-"
|
separator = "-"
|
||||||
description = "Hinode is a clean documentation and blog theme for your Hugo site based on Bootstrap 5."
|
description = "Hinode is a clean documentation and blog theme for your Hugo site based on Bootstrap 5."
|
||||||
enableDarkMode = true
|
enableDarkMode = true
|
||||||
|
enableLanguageSelectionStorage = false
|
||||||
modes = ["light", "dark"]
|
modes = ["light", "dark"]
|
||||||
canonifyAssetsURLs = false
|
canonifyAssetsURLs = false
|
||||||
endorse = true
|
endorse = true
|
||||||
footerBelowFold = false
|
footerBelowFold = false
|
||||||
loading = "lazy"
|
loading = "lazy"
|
||||||
breakpoint = "md"
|
breakpoint = "md"
|
||||||
|
titleCase = false
|
||||||
|
[main.internalLinks]
|
||||||
|
validate = true
|
||||||
|
pretty = false
|
||||||
[main.externalLinks]
|
[main.externalLinks]
|
||||||
cue = false
|
cue = false
|
||||||
tab = false
|
tab = false
|
||||||
@@ -26,11 +31,30 @@
|
|||||||
host = "imgix"
|
host = "imgix"
|
||||||
# toml-docs-end images
|
# toml-docs-end images
|
||||||
|
|
||||||
|
# toml-docs-start videos
|
||||||
|
[videos]
|
||||||
|
[videos.cloudinary]
|
||||||
|
host = "cloudinary"
|
||||||
|
account = "demo"
|
||||||
|
[videos.vimeo]
|
||||||
|
host = "vimeo"
|
||||||
|
[videos.youtube]
|
||||||
|
host = "youtube"
|
||||||
|
# toml-docs-end videos
|
||||||
|
|
||||||
|
[dam]
|
||||||
|
videoCodecs = [
|
||||||
|
"webm/vp9",
|
||||||
|
"mp4/h265",
|
||||||
|
"mp4"
|
||||||
|
]
|
||||||
|
|
||||||
# toml-docs-start debugging
|
# toml-docs-start debugging
|
||||||
[debugging]
|
[debugging]
|
||||||
showJS = false
|
showJS = false
|
||||||
showSCSS = false
|
showSCSS = false
|
||||||
purgeHTMLComments = false
|
purgeHTMLComments = false
|
||||||
|
includeSVGOrigin = true
|
||||||
# toml-docs-end debugging
|
# toml-docs-end debugging
|
||||||
|
|
||||||
# toml-docs-start docs
|
# toml-docs-start docs
|
||||||
@@ -170,16 +194,16 @@
|
|||||||
# linkedIn = ""
|
# linkedIn = ""
|
||||||
github = "https://github.com/gethinode/hinode"
|
github = "https://github.com/gethinode/hinode"
|
||||||
section = "blog"
|
section = "blog"
|
||||||
[author]
|
[schema.author]
|
||||||
name = "Mark Dumay"
|
name = "Mark Dumay"
|
||||||
# twitter = "https://twitter.com/markdumay"
|
# twitter = "https://twitter.com/markdumay"
|
||||||
linkedin = "https://www.linkedin.com/in/markdumay/"
|
linkedin = "https://www.linkedin.com/in/markdumay/"
|
||||||
github = "https://github.com/markdumay"
|
github = "https://github.com/markdumay"
|
||||||
[logo]
|
[schema.logo]
|
||||||
url = "img/logo512x512.png"
|
url = "img/logo512x512.png"
|
||||||
width = 512
|
width = 512
|
||||||
height = 512
|
height = 512
|
||||||
[image]
|
[schema.image]
|
||||||
url = "img/logo1280x640.png"
|
url = "img/logo1280x640.png"
|
||||||
width = 1280
|
width = 1280
|
||||||
height = 640
|
height = 640
|
||||||
@@ -190,3 +214,38 @@
|
|||||||
|
|
||||||
[links]
|
[links]
|
||||||
hinode = "https://gethinode.com"
|
hinode = "https://gethinode.com"
|
||||||
|
|
||||||
|
# toml-docs-start headers
|
||||||
|
[headers]
|
||||||
|
[headers.netlify]
|
||||||
|
source = "netlify.toml"
|
||||||
|
# toml-docs-end headers
|
||||||
|
|
||||||
|
# toml-docs-start csp
|
||||||
|
[modules.hinode.csp]
|
||||||
|
style-src = ["www.youtube.com"]
|
||||||
|
font-src = ["fonts.gstatic.com"]
|
||||||
|
frame-src = [
|
||||||
|
"player.cloudinary.com",
|
||||||
|
"www.youtube-nocookie.com",
|
||||||
|
"www.youtube.com"
|
||||||
|
]
|
||||||
|
img-src = [
|
||||||
|
"data:",
|
||||||
|
"*.imgix.net",
|
||||||
|
"*.imagekit.io",
|
||||||
|
"*.cloudinary.com",
|
||||||
|
"i.ytimg.com"
|
||||||
|
]
|
||||||
|
# toml-docs-end csp
|
||||||
|
|
||||||
|
[modules.vimeo]
|
||||||
|
local = true
|
||||||
|
integration = "optional"
|
||||||
|
state = "async"
|
||||||
|
url = "https://player.vimeo.com/api/player.js"
|
||||||
|
|
||||||
|
[modules.vimeo.csp]
|
||||||
|
frame-src = ["player.vimeo.com"]
|
||||||
|
img-src = ["i.vimeocdn.com"]
|
||||||
|
script-src = ["player.vimeo.com"]
|
||||||
|
@@ -1,42 +1,29 @@
|
|||||||
# toml-docs-start server-config
|
# Auto-generated file - do not modify
|
||||||
|
|
||||||
[[headers]]
|
[[headers]]
|
||||||
for = '/**'
|
for = '/**'
|
||||||
[headers.values]
|
|
||||||
Strict-Transport-Security = "max-age=31536000; includeSubDomains; preload"
|
[headers.values]
|
||||||
X-Content-Type-Options = "nosniff"
|
Access-Control-Allow-Origin = '*'
|
||||||
X-XSS-Protection = "1; mode=block"
|
Content-Security-Policy = """
|
||||||
Content-Security-Policy = """\
|
|
||||||
default-src 'self'; \
|
|
||||||
script-src 'self' https://*.google-analytics.com https://*.googletagmanager.com; \
|
|
||||||
style-src 'self' https://fonts.googleapis.com https://www.youtube.com; \
|
|
||||||
object-src 'none'; \
|
|
||||||
base-uri 'self'; \
|
base-uri 'self'; \
|
||||||
connect-src 'self'
|
connect-src 'self' *.analytics.google.com *.google.com *.google-analytics.com *.googletagmanager.com; \
|
||||||
https://*.google-analytics.com https://*.analytics.google.com https://*.googletagmanager.com; \
|
default-src 'none'; \
|
||||||
font-src 'self' https://fonts.gstatic.com; \
|
font-src 'self' fonts.gstatic.com data:; \
|
||||||
frame-src 'self' https://www.youtube-nocookie.com https://www.youtube.com; \
|
form-action 'self'; \
|
||||||
img-src 'self' data: https://*.imgix.net https://*.imagekit.io https://*.cloudinary.com https://i.vimeocdn.com https://i.ytimg.com https://*.google-analytics.com https://*.googletagmanager.com https://tile.openstreetmap.org; \
|
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 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'; \
|
||||||
|
script-src 'self' *.google-analytics.com *.googletagmanager.com *.analytics.google.com googletagmanager.com tagmanager.google.com player.vimeo.com; \
|
||||||
|
style-src 'self' googletagmanager.com tagmanager.google.com fonts.googleapis.com www.youtube.com; \
|
||||||
"""
|
"""
|
||||||
X-Frame-Options = "SAMEORIGIN"
|
Permissions-Policy = 'geolocation=(), midi=(), sync-xhr=(), microphone=(), camera=(), magnetometer=(), gyroscope=(), fullscreen=(), payment=() '
|
||||||
Referrer-Policy = "strict-origin"
|
Referrer-Policy = 'strict-origin'
|
||||||
Permissions-Policy = """\
|
Strict-Transport-Security = 'max-age=31536000; includeSubDomains; preload'
|
||||||
geolocation=(), \
|
X-Content-Type-Options = 'nosniff'
|
||||||
midi=(), \
|
X-Frame-Options = 'SAMEORIGIN'
|
||||||
sync-xhr=(), \
|
X-XSS-Protection = '1; mode=block'
|
||||||
microphone=(), \
|
cache-control = 'max-age=0, no-cache, no-store, must-revalidate '
|
||||||
camera=(), \
|
|
||||||
magnetometer=(), \
|
|
||||||
gyroscope=(), \
|
|
||||||
fullscreen=(), \
|
|
||||||
payment=() \
|
|
||||||
"""
|
|
||||||
cache-control = """\
|
|
||||||
max-age=0, \
|
|
||||||
no-cache, \
|
|
||||||
no-store, \
|
|
||||||
must-revalidate \
|
|
||||||
"""
|
|
||||||
Access-Control-Allow-Origin = "*"
|
|
||||||
# toml-docs-end server-config
|
|
||||||
|
@@ -3,14 +3,16 @@ 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: [
|
safelist: ['was-validated',
|
||||||
...whitelister([
|
...whitelister([
|
||||||
'./assets/scss/components/_clipboard.scss',
|
'./assets/scss/components/_clipboard.scss',
|
||||||
'./assets/scss/components/_command.scss',
|
'./assets/scss/components/_command.scss',
|
||||||
@@ -24,6 +26,7 @@ const purgecss = require('@fullhuman/postcss-purgecss')({
|
|||||||
'./assets/scss/components/_video.scss',
|
'./assets/scss/components/_video.scss',
|
||||||
'./assets/scss/theme/fonts.scss',
|
'./assets/scss/theme/fonts.scss',
|
||||||
'./assets/scss/theme/theme.scss',
|
'./assets/scss/theme/theme.scss',
|
||||||
|
'./_vendor/github.com/gethinode/mod-cookieyes/v2/assets/scss/cookieyes.scss',
|
||||||
'./_vendor/github.com/gethinode/mod-flexsearch/v2/assets/scss/modules/flexsearch/flexsearch.scss',
|
'./_vendor/github.com/gethinode/mod-flexsearch/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',
|
||||||
|
35
data/netlify.toml
Normal file
35
data/netlify.toml
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
# toml-docs-start netlify
|
||||||
|
[build]
|
||||||
|
publish = "exampleSite/public"
|
||||||
|
command = "npm run build:example"
|
||||||
|
|
||||||
|
[build.environment]
|
||||||
|
DART_SASS_VERSION = "1.83.1"
|
||||||
|
HUGO_VERSION = "0.140.2"
|
||||||
|
HUGO_ENV = "production"
|
||||||
|
HUGO_ENABLEGITINFO = "true"
|
||||||
|
NODE_VERSION = "22.12.0"
|
||||||
|
NPM_VERSION = "10.9.0"
|
||||||
|
# toml-docs-end netlify
|
||||||
|
|
||||||
|
[context.deploy-preview]
|
||||||
|
command = "npm run build:example -- -b $DEPLOY_PRIME_URL"
|
||||||
|
|
||||||
|
[context.branch-deploy]
|
||||||
|
command = "npm run build:example -- -b $DEPLOY_PRIME_URL"
|
||||||
|
|
||||||
|
[dev]
|
||||||
|
framework = "#custom"
|
||||||
|
command = "npm run start:example"
|
||||||
|
targetPort = 1313
|
||||||
|
port = 8888
|
||||||
|
publish = "public"
|
||||||
|
autoLaunch = false
|
||||||
|
|
||||||
|
# toml-docs-start plugins
|
||||||
|
[[plugins]]
|
||||||
|
package = "@gethinode/netlify-plugin-dartsass"
|
||||||
|
|
||||||
|
[[plugins]]
|
||||||
|
package = "netlify-plugin-hugo-cache-resources"
|
||||||
|
# toml-docs-end plugins
|
41
data/server.toml
Normal file
41
data/server.toml
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
# toml-docs-start server-config
|
||||||
|
[[headers]]
|
||||||
|
for = "/**"
|
||||||
|
[headers.values]
|
||||||
|
Strict-Transport-Security = "max-age=31536000; includeSubDomains; preload"
|
||||||
|
X-Content-Type-Options = "nosniff"
|
||||||
|
X-XSS-Protection = "1; mode=block"
|
||||||
|
X-Frame-Options = "SAMEORIGIN"
|
||||||
|
Referrer-Policy = "strict-origin"
|
||||||
|
Permissions-Policy = """\
|
||||||
|
geolocation=(), \
|
||||||
|
midi=(), \
|
||||||
|
sync-xhr=(), \
|
||||||
|
microphone=(), \
|
||||||
|
camera=(), \
|
||||||
|
magnetometer=(), \
|
||||||
|
gyroscope=(), \
|
||||||
|
fullscreen=(), \
|
||||||
|
payment=() \
|
||||||
|
"""
|
||||||
|
cache-control = """\
|
||||||
|
max-age=0, \
|
||||||
|
no-cache, \
|
||||||
|
no-store, \
|
||||||
|
must-revalidate \
|
||||||
|
"""
|
||||||
|
Access-Control-Allow-Origin = "*"
|
||||||
|
Content-Security-Policy = """\
|
||||||
|
default-src 'none'; \
|
||||||
|
script-src 'self'; \
|
||||||
|
font-src 'self'; \
|
||||||
|
connect-src 'self'; \
|
||||||
|
img-src 'self'; \
|
||||||
|
style-src 'self'; \
|
||||||
|
base-uri 'self'; \
|
||||||
|
object-src 'none'; \
|
||||||
|
form-action 'self'; \
|
||||||
|
manifest-src 'self'; \
|
||||||
|
media-src 'self' \
|
||||||
|
"""
|
||||||
|
# toml-docs-end server-config
|
@@ -96,12 +96,14 @@ arguments:
|
|||||||
screens.
|
screens.
|
||||||
wrapper:
|
wrapper:
|
||||||
type: string
|
type: string
|
||||||
|
default: p-0
|
||||||
optional: true
|
optional: true
|
||||||
comment: >-
|
comment: >-
|
||||||
Class attributes of the wrapper element, e.g. `p-4 px-xxl-0`.
|
Class attributes of the wrapper element, e.g. `p-4 px-xxl-0`.
|
||||||
responsive:
|
responsive:
|
||||||
type: bool
|
type: bool
|
||||||
optional: true
|
optional: true
|
||||||
|
default: true
|
||||||
comment: >-
|
comment: >-
|
||||||
Flag indicating if the number of columns should be responsive, defaults to
|
Flag indicating if the number of columns should be responsive, defaults to
|
||||||
`true`.
|
`true`.
|
||||||
@@ -132,5 +134,33 @@ arguments:
|
|||||||
hook:
|
hook:
|
||||||
type: string
|
type: string
|
||||||
optional: true
|
optional: true
|
||||||
|
default: assets/card.html
|
||||||
comment: Render hook for the card partial.
|
comment: Render hook for the card partial.
|
||||||
group: 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:
|
||||||
|
values:
|
||||||
|
- start
|
||||||
|
- center
|
||||||
|
- 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
|
||||||
|
@@ -101,6 +101,7 @@ arguments:
|
|||||||
options:
|
options:
|
||||||
values:
|
values:
|
||||||
- full
|
- full
|
||||||
|
- title
|
||||||
- none
|
- none
|
||||||
footer:
|
footer:
|
||||||
type: select
|
type: select
|
||||||
@@ -227,6 +228,7 @@ arguments:
|
|||||||
- stacked
|
- stacked
|
||||||
- horizontal
|
- horizontal
|
||||||
- horizontal-sm
|
- horizontal-sm
|
||||||
|
- overlay
|
||||||
- none
|
- none
|
||||||
subtle:
|
subtle:
|
||||||
type: bool
|
type: bool
|
||||||
|
@@ -38,3 +38,8 @@ arguments:
|
|||||||
type: string
|
type: string
|
||||||
optional: true
|
optional: true
|
||||||
comment: Class attribute of the tab control that wraps the file element.
|
comment: Class attribute of the tab control that wraps the file element.
|
||||||
|
options:
|
||||||
|
type: string
|
||||||
|
optional: true
|
||||||
|
comment: Hugo highlighting options.
|
||||||
|
release: v0.27.6
|
||||||
|
@@ -36,6 +36,7 @@ arguments:
|
|||||||
page:
|
page:
|
||||||
type:
|
type:
|
||||||
- '*hugolib.pageState'
|
- '*hugolib.pageState'
|
||||||
|
- '*hugolib.pageForRenderHooks'
|
||||||
- '*hugolib.pageForShortcode'
|
- '*hugolib.pageForShortcode'
|
||||||
optional: true
|
optional: true
|
||||||
comment: Page context, used to match page resources.
|
comment: Page context, used to match page resources.
|
||||||
@@ -109,7 +110,10 @@ arguments:
|
|||||||
image set.
|
image set.
|
||||||
group: partial
|
group: partial
|
||||||
title:
|
title:
|
||||||
type: string
|
type:
|
||||||
|
- string
|
||||||
|
- hstring.RenderedString
|
||||||
|
- hstring.HTML
|
||||||
optional: true
|
optional: true
|
||||||
comment: Alternate text of the image.
|
comment: Alternate text of the image.
|
||||||
caption:
|
caption:
|
||||||
|
4
data/structures/ins.yml
Normal file
4
data/structures/ins.yml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
comment: Underlines text.
|
||||||
|
body:
|
||||||
|
optional: false
|
||||||
|
comment: Text to be underlined.
|
@@ -10,6 +10,7 @@ arguments:
|
|||||||
page:
|
page:
|
||||||
type:
|
type:
|
||||||
- '*hugolib.pageState'
|
- '*hugolib.pageState'
|
||||||
|
- '*hugolib.pageForRenderHooks'
|
||||||
- '*hugolib.pageForShortcode'
|
- '*hugolib.pageForShortcode'
|
||||||
optional: false
|
optional: false
|
||||||
group: partial
|
group: partial
|
||||||
@@ -62,6 +63,15 @@ arguments:
|
|||||||
default: false
|
default: false
|
||||||
comment: >-
|
comment: >-
|
||||||
Flag to indicate if a link that contains baseURL host should be forced as external.
|
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:
|
class:
|
||||||
type: string
|
type: string
|
||||||
optional: true
|
optional: true
|
||||||
@@ -70,11 +80,18 @@ arguments:
|
|||||||
type:
|
type:
|
||||||
- string
|
- string
|
||||||
- template.HTML
|
- template.HTML
|
||||||
|
- hstring.RenderedString
|
||||||
|
- hstring.HTML
|
||||||
optional: true
|
optional: true
|
||||||
group: partial
|
group: partial
|
||||||
|
comment: Link description.
|
||||||
|
title:
|
||||||
|
type: string
|
||||||
|
optional: true
|
||||||
comment: Link title.
|
comment: Link title.
|
||||||
|
release: v0.26.0
|
||||||
body:
|
body:
|
||||||
type: string
|
type: string
|
||||||
optional: true
|
optional: true
|
||||||
group: shortcode
|
group: shortcode
|
||||||
comment: Link title.
|
comment: Link description.
|
||||||
|
@@ -38,3 +38,12 @@ arguments:
|
|||||||
optional: true
|
optional: true
|
||||||
default: false
|
default: false
|
||||||
comment: Flag to render the release button inline.
|
comment: Flag to render the release button inline.
|
||||||
|
type:
|
||||||
|
type: select
|
||||||
|
optional: true
|
||||||
|
default: button
|
||||||
|
comment: Type of the element.
|
||||||
|
options:
|
||||||
|
values:
|
||||||
|
- link
|
||||||
|
- button
|
||||||
|
46
data/structures/script.yml
Normal file
46
data/structures/script.yml
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
comment: >-
|
||||||
|
Includes a reference to a local or external JavaScript file. Hinode uses the
|
||||||
|
template defined in `layouts/partials/templates/script.html` to generate the
|
||||||
|
link to a (bundled) JavaScript file. It includes context such as the state,
|
||||||
|
category, and integrity. For example, you can adapt this template to implement
|
||||||
|
cookie consent management.
|
||||||
|
arguments:
|
||||||
|
link:
|
||||||
|
type: string
|
||||||
|
optional: false
|
||||||
|
comment: >-
|
||||||
|
Location of the script source, either an URL for an external script or a
|
||||||
|
(relative) path for a local script.
|
||||||
|
state:
|
||||||
|
type: select
|
||||||
|
optional: true
|
||||||
|
comment: >-
|
||||||
|
Defines the loading behavior of the script bundle. By default, scripts are
|
||||||
|
loaded immediately. Use `async` to process the script in the background.
|
||||||
|
Use `defer` to load the script in relative order when the DOM is fully
|
||||||
|
built.
|
||||||
|
options:
|
||||||
|
values:
|
||||||
|
- async
|
||||||
|
- defer
|
||||||
|
- immediate
|
||||||
|
category:
|
||||||
|
type: select
|
||||||
|
optional: true
|
||||||
|
default: other
|
||||||
|
comment: >-
|
||||||
|
Assigns the script to a category that can be used for cookie consent
|
||||||
|
management.
|
||||||
|
options:
|
||||||
|
values:
|
||||||
|
- necessary
|
||||||
|
- functional
|
||||||
|
- analytics
|
||||||
|
- performance
|
||||||
|
- advertisement
|
||||||
|
- other
|
||||||
|
integrity:
|
||||||
|
type: string
|
||||||
|
optional: true
|
||||||
|
comment: >-
|
||||||
|
Cryptographic hash of the script to enable Subresource Integrity (SRI).
|
@@ -8,62 +8,17 @@ arguments:
|
|||||||
- '*hugolib.pageForShortcode'
|
- '*hugolib.pageForShortcode'
|
||||||
optional: false
|
optional: false
|
||||||
comment: Context of the current page.
|
comment: Context of the current page.
|
||||||
core:
|
type:
|
||||||
type: bool
|
|
||||||
default: false
|
|
||||||
optional: true
|
|
||||||
comment: >-
|
|
||||||
Trigger to include all core files in the script bundle. Core bundles are
|
|
||||||
loaded asynchronously in each page of the site.
|
|
||||||
filename:
|
|
||||||
type: string
|
|
||||||
default: js/main.bundle.js
|
|
||||||
optional: true
|
|
||||||
comment: >-
|
|
||||||
Path of the target bundle file, relative to the site root.
|
|
||||||
match:
|
|
||||||
type: string
|
|
||||||
default: {js/*.js,js/vendor/**.js}
|
|
||||||
optional: true
|
|
||||||
comment: >-
|
|
||||||
Regular expression that defines the pattern of source files to be included
|
|
||||||
in the bundle. The pattern is relative to the project's `asset` folder.
|
|
||||||
header:
|
|
||||||
type: bool
|
|
||||||
default: false
|
|
||||||
comment: >-
|
|
||||||
Trigger to consider the script as loaded in the page header. When enabled,
|
|
||||||
it includes a script to load Google Analytics adjacent to any bundle
|
|
||||||
input.
|
|
||||||
localize:
|
|
||||||
type: bool
|
|
||||||
default: false
|
|
||||||
optional: true
|
|
||||||
comment: >-
|
|
||||||
Triggers the creation of a language-specific bundle file. The language
|
|
||||||
code is appended as suffix to the base name. For example, the English
|
|
||||||
version of `js/main.bundle.js` becomes `js/main.bundle.en.js`.
|
|
||||||
skipTemplate:
|
|
||||||
type: bool
|
|
||||||
default: false
|
|
||||||
optional: true
|
|
||||||
comment: >-
|
|
||||||
Script source input can contain Go Template magic. As such, Hinode
|
|
||||||
processes all input files with `resources.ExecuteAsTemplate`. However,
|
|
||||||
certain input files may be incompatible. Set `skipTemplate` to true to
|
|
||||||
skip template processing.
|
|
||||||
state:
|
|
||||||
type: select
|
type: select
|
||||||
|
default: core
|
||||||
optional: true
|
optional: true
|
||||||
default: async
|
|
||||||
comment: >-
|
comment: >-
|
||||||
Defines the loading behavior of the script bundle. By default, scripts are
|
Type of script bundle. Critical scripts are included in the page header
|
||||||
processed in the background and loaded when ready (`async`). Set the state
|
and are loaded immediately. Core scripts are bundled by category and are
|
||||||
to `immediate` to load the script immediately (such as critical scripts).
|
loaded asynchronously. Optional scripts are loaded individually on the
|
||||||
Use 'defer' to load the script in relative order when the DOM is fully
|
pages that require them. They use the synchronization method as defined
|
||||||
built.
|
in their containing module.
|
||||||
options:
|
values:
|
||||||
values:
|
- critical
|
||||||
- async
|
- core
|
||||||
- defer
|
- optional
|
||||||
- immediate
|
|
@@ -3,6 +3,20 @@ comment: >-
|
|||||||
improve their layout on smaller screens. To features `sortable`, `paging`,
|
improve their layout on smaller screens. To features `sortable`, `paging`,
|
||||||
and `searchable` require the module `simple-datatables`.
|
and `searchable` require the module `simple-datatables`.
|
||||||
arguments:
|
arguments:
|
||||||
|
page:
|
||||||
|
type:
|
||||||
|
- '*hugolib.pageState'
|
||||||
|
- '*hugolib.pageForShortcode'
|
||||||
|
optional: false
|
||||||
|
comment: Page to display the breadcrumb for.
|
||||||
|
group: partial
|
||||||
|
input:
|
||||||
|
type:
|
||||||
|
- string
|
||||||
|
- template.HTML
|
||||||
|
optional: false
|
||||||
|
comment: Table input in markdown format.
|
||||||
|
group: partial
|
||||||
breakpoint:
|
breakpoint:
|
||||||
type: select
|
type: select
|
||||||
optional: true
|
optional: true
|
||||||
@@ -35,11 +49,33 @@ arguments:
|
|||||||
optional: true
|
optional: true
|
||||||
comment: Whether paging is enabled for the table.
|
comment: Whether paging is enabled for the table.
|
||||||
release: v0.24.13
|
release: v0.24.13
|
||||||
|
pagingOptionPerPage:
|
||||||
|
type: int
|
||||||
|
optional: true
|
||||||
|
comment: >-
|
||||||
|
Sets the maximum number of rows to display on each page. Requires
|
||||||
|
`paging = true`.
|
||||||
|
release: v0.27.8
|
||||||
|
pagingOptionPageSelect:
|
||||||
|
type: string
|
||||||
|
optional: true
|
||||||
|
comment: >-
|
||||||
|
Sets the per page options in the dropdown. Must be an array of integers or
|
||||||
|
arrays in the format [label (string), value (int)]. Requires
|
||||||
|
`paging = true`.
|
||||||
|
release: v0.27.8
|
||||||
searchable:
|
searchable:
|
||||||
type: bool
|
type: bool
|
||||||
optional: true
|
optional: true
|
||||||
comment: Toggle the ability to search the dataset.
|
comment: Toggle the ability to search the dataset.
|
||||||
release: v0.24.13
|
release: v0.24.13
|
||||||
|
wrap:
|
||||||
|
type: bool
|
||||||
|
optional: true
|
||||||
|
comment: >-
|
||||||
|
Toggle the last column to wrap to a new row on smaller devices. This
|
||||||
|
setting is not compatible with data tables.
|
||||||
|
release: v0.28.0
|
||||||
body:
|
body:
|
||||||
type: string
|
type: string
|
||||||
optional: false
|
optional: false
|
||||||
|
88
data/structures/video.yml
Normal file
88
data/structures/video.yml
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
comment: >-
|
||||||
|
Embeds a responsive video player for supported video providers. The video is
|
||||||
|
embedded in a responsive frame.
|
||||||
|
arguments:
|
||||||
|
page:
|
||||||
|
type:
|
||||||
|
- '*hugolib.pageState'
|
||||||
|
- '*hugolib.pageForShortcode'
|
||||||
|
optional: false
|
||||||
|
group: partial
|
||||||
|
release: v0.26.5
|
||||||
|
comment: Context of the current page.
|
||||||
|
position:
|
||||||
|
type:
|
||||||
|
- 'text.Position'
|
||||||
|
optional: true
|
||||||
|
group: partial
|
||||||
|
release: v0.26.5
|
||||||
|
comment: Filename and position from which the shortcode was called.
|
||||||
|
host:
|
||||||
|
type: string
|
||||||
|
optional: true
|
||||||
|
default: youtube
|
||||||
|
release: v0.26.5
|
||||||
|
comment: >-
|
||||||
|
Host name of the video provider. It should match one of the registered
|
||||||
|
providers in the site's parameters under `videos`.
|
||||||
|
title:
|
||||||
|
type: string
|
||||||
|
optional: true
|
||||||
|
comment: >-
|
||||||
|
Title of the video. You can also set `autotitle` to retrieve the title
|
||||||
|
programmatically at build time, if supported by the provider.
|
||||||
|
class:
|
||||||
|
type: string
|
||||||
|
optional: true
|
||||||
|
position: 1
|
||||||
|
comment: >-
|
||||||
|
Class attribute of the video wrapper element.
|
||||||
|
id:
|
||||||
|
type: string
|
||||||
|
optional: false
|
||||||
|
position: 0
|
||||||
|
comment: Public ID of the video to be embedded.
|
||||||
|
account:
|
||||||
|
type: string
|
||||||
|
optional: true
|
||||||
|
comment: >-
|
||||||
|
Account name of the video asset, required by some digital asset managers.
|
||||||
|
You can also set the default account name in the site's parameters.
|
||||||
|
release: v0.26.5
|
||||||
|
autoplay:
|
||||||
|
type: bool
|
||||||
|
optional: true
|
||||||
|
default: false
|
||||||
|
comment: >-
|
||||||
|
Flag indicating the video should start playing immediately when loaded, if
|
||||||
|
supported by the browser. The audio will be muted.
|
||||||
|
autotitle:
|
||||||
|
type: bool
|
||||||
|
optional: true
|
||||||
|
default: false
|
||||||
|
release: v0.25.2
|
||||||
|
comment: >-
|
||||||
|
Trigger to retrieve the title from the video metadata, if supported by the
|
||||||
|
provider.
|
||||||
|
ratio:
|
||||||
|
type: select
|
||||||
|
optional: true
|
||||||
|
comment: >-
|
||||||
|
Ratio of the video. If set, determines the padding of the embedded video
|
||||||
|
frame. When not specified, the video dimensions used to calculate the
|
||||||
|
padding are retrieved programmatically.
|
||||||
|
options:
|
||||||
|
values:
|
||||||
|
- 1x1
|
||||||
|
- 3x2
|
||||||
|
- 4x3
|
||||||
|
- 16x9
|
||||||
|
- 21x9
|
||||||
|
release: v0.26.5
|
||||||
|
options:
|
||||||
|
type: string
|
||||||
|
optional: true
|
||||||
|
release: v0.28.2
|
||||||
|
comment: >-
|
||||||
|
Optional query parameters to append to video asset's url. The query string
|
||||||
|
is prepended with a `?` symbol. Only applicable to Cloudinary.
|
@@ -1,35 +0,0 @@
|
|||||||
comment: >-
|
|
||||||
Embeds a responsive video player for YouTube videos. Only the ID of the video
|
|
||||||
is required. In privacy-enhanced mode, YouTube will not store information
|
|
||||||
about visitors on your website unless the user plays the embedded video.
|
|
||||||
arguments:
|
|
||||||
title:
|
|
||||||
type: string
|
|
||||||
optional: true
|
|
||||||
comment: >-
|
|
||||||
Title of the video.
|
|
||||||
class:
|
|
||||||
type: string
|
|
||||||
optional: true
|
|
||||||
position: 1
|
|
||||||
comment: >-
|
|
||||||
Class attribute of the video wrapper element.
|
|
||||||
id:
|
|
||||||
type: string
|
|
||||||
optional: false
|
|
||||||
position: 0
|
|
||||||
comment: Identifier of the video to be embedded.
|
|
||||||
autoplay:
|
|
||||||
type: bool
|
|
||||||
optional: true
|
|
||||||
default: false
|
|
||||||
comment: >-
|
|
||||||
Flag indicating the video should start playing immediately when loaded, if
|
|
||||||
supported by the browser. The audio will be muted.
|
|
||||||
autotitle:
|
|
||||||
type: bool
|
|
||||||
optional: true
|
|
||||||
default: false
|
|
||||||
release: v0.25.2
|
|
||||||
comment: >-
|
|
||||||
Trigger to retrieve the title from the video metadata.
|
|
14
eslint.config.js
Normal file
14
eslint.config.js
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
'use strict'
|
||||||
|
|
||||||
|
module.exports = require('neostandard')({
|
||||||
|
ignores: [
|
||||||
|
'assets/js/critical/languageSelector.js',
|
||||||
|
'assets/js/critical/color.js',
|
||||||
|
'assets/js/analytics.js',
|
||||||
|
'assets/js/flexsearch.js',
|
||||||
|
'assets/js/navbar.js',
|
||||||
|
'assets/js/sharing.js',
|
||||||
|
'assets/js/vendor',
|
||||||
|
'node_modules',
|
||||||
|
]
|
||||||
|
})
|
3
exampleSite/.gitignore
vendored
3
exampleSite/.gitignore
vendored
@@ -1,4 +1,5 @@
|
|||||||
/_vendor
|
_vendor/
|
||||||
|
exampleSite/public/
|
||||||
public/
|
public/
|
||||||
resources/
|
resources/
|
||||||
|
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
resourcedir = '../resources/'
|
resourcedir = '../resources/'
|
||||||
title = "Hinode"
|
title = "Hinode"
|
||||||
copyright = "Copyright © 2024 Mark Dumay."
|
copyright = "Copyright © 2022 - 2025 Mark Dumay."
|
||||||
paginate = 9
|
|
||||||
enableGitInfo = true
|
enableGitInfo = true
|
||||||
|
|
||||||
# additional settings
|
# additional settings
|
||||||
@@ -21,17 +20,39 @@ languageCode = "en-us"
|
|||||||
defaultContentLanguage = "en"
|
defaultContentLanguage = "en"
|
||||||
defaultContentLanguageInSubdir = true
|
defaultContentLanguageInSubdir = true
|
||||||
|
|
||||||
[outputFormats.REDIR]
|
[outputFormats]
|
||||||
mediaType = "text/netlify"
|
[outputFormats.netlify]
|
||||||
baseName = "_redirects"
|
mediaType = "application/toml"
|
||||||
isPlainText = true
|
baseName = "netlify"
|
||||||
notAlternative = true
|
isPlainText = true
|
||||||
|
notAlternative = true
|
||||||
|
permalinkable = true
|
||||||
|
root = true
|
||||||
|
[outputFormats.server]
|
||||||
|
mediaType = "application/toml"
|
||||||
|
baseName = "server"
|
||||||
|
isPlainText = true
|
||||||
|
notAlternative = true
|
||||||
|
permalinkable = true
|
||||||
|
root = true
|
||||||
|
[outputFormats.XML]
|
||||||
|
isPlainText = false
|
||||||
|
mediaType = "application/xml"
|
||||||
|
isHtml = false
|
||||||
|
noUgly = true
|
||||||
|
permalinkable = false
|
||||||
|
name = "xml"
|
||||||
|
[outputFormats.REDIR]
|
||||||
|
mediaType = "text/netlify"
|
||||||
|
baseName = "_redirects"
|
||||||
|
isPlainText = true
|
||||||
|
notAlternative = true
|
||||||
|
|
||||||
[mediaTypes."text/netlify"]
|
[mediaTypes."text/netlify"]
|
||||||
delimiter = ""
|
delimiter = ""
|
||||||
|
|
||||||
[outputs]
|
[outputs]
|
||||||
home = ["HTML", "RSS", "REDIR"]
|
home = ["HTML", "RSS", "REDIR", "netlify", "server"]
|
||||||
|
|
||||||
[build]
|
[build]
|
||||||
writeStats = true
|
writeStats = true
|
||||||
@@ -39,6 +60,9 @@ home = ["HTML", "RSS", "REDIR"]
|
|||||||
[taxonomies]
|
[taxonomies]
|
||||||
tag = 'tags'
|
tag = 'tags'
|
||||||
|
|
||||||
|
[pagination]
|
||||||
|
pagerSize = 9
|
||||||
|
|
||||||
[privacy]
|
[privacy]
|
||||||
[privacy.vimeo]
|
[privacy.vimeo]
|
||||||
disabled = false
|
disabled = false
|
||||||
@@ -65,15 +89,6 @@ home = ["HTML", "RSS", "REDIR"]
|
|||||||
[services.googleAnalytics]
|
[services.googleAnalytics]
|
||||||
ID = "G-T85PPZ36GN"
|
ID = "G-T85PPZ36GN"
|
||||||
|
|
||||||
[outputFormats]
|
|
||||||
[outputFormats.XML]
|
|
||||||
isPlainText = false
|
|
||||||
mediaType = "application/xml"
|
|
||||||
isHtml = false
|
|
||||||
noUgly = true
|
|
||||||
permalinkable = false
|
|
||||||
name = "xml"
|
|
||||||
|
|
||||||
[minify]
|
[minify]
|
||||||
[minify.tdewolff.js]
|
[minify.tdewolff.js]
|
||||||
keepVarNames = true
|
keepVarNames = true
|
||||||
@@ -82,8 +97,36 @@ home = ["HTML", "RSS", "REDIR"]
|
|||||||
[minify.tdewolff.html]
|
[minify.tdewolff.html]
|
||||||
keepWhitespace = true
|
keepWhitespace = true
|
||||||
|
|
||||||
|
[segments]
|
||||||
|
[segments.headers]
|
||||||
|
[[segments.headers.includes]]
|
||||||
|
kind = '{home}'
|
||||||
|
output = '{netlify,server}'
|
||||||
|
|
||||||
[module]
|
[module]
|
||||||
# Build and serve using local hinode clone declared in the named Hugo workspace:
|
# Build and serve using local hinode clone declared in the named Hugo workspace:
|
||||||
workspace = "hinode.work"
|
workspace = "hinode.work"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-cookieyes/v2"
|
||||||
[[module.imports]]
|
[[module.imports]]
|
||||||
path = "github.com/gethinode/hinode"
|
path = "github.com/gethinode/hinode"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-bootstrap"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-csp"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-flexsearch/v2"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-fontawesome"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-google-analytics"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-katex"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-leaflet"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-lottie"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-simple-datatables"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/gethinode/mod-utils/v2"
|
||||||
|
@@ -11,7 +11,7 @@ tagline = "A Hugo Theme"
|
|||||||
title = "Follow me"
|
title = "Follow me"
|
||||||
caption = "I work on everything coding and tweet developer memes"
|
caption = "I work on everything coding and tweet developer memes"
|
||||||
[en.params.footer]
|
[en.params.footer]
|
||||||
# license = "Licensed under Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
|
# license = "Licensed under Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer nofollow'>CC BY-NC-SA 4.0</a>)."
|
||||||
# toml-docs-end lang-param
|
# toml-docs-end lang-param
|
||||||
[en.params.sections.blog]
|
[en.params.sections.blog]
|
||||||
reference = "More Posts"
|
reference = "More Posts"
|
||||||
@@ -30,7 +30,7 @@ tagline = "Een Hugo Thema"
|
|||||||
title = "Volg mij"
|
title = "Volg mij"
|
||||||
caption = "Ik doe aan programmeren en tweet memes"
|
caption = "Ik doe aan programmeren en tweet memes"
|
||||||
[nl.params.footer]
|
[nl.params.footer]
|
||||||
# license = "Gelicenseerd onder Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
|
# license = "Gelicenseerd onder Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer nofollow'>CC BY-NC-SA 4.0</a>)."
|
||||||
[nl.params.sections.blog]
|
[nl.params.sections.blog]
|
||||||
reference = "Meer artikelen"
|
reference = "Meer artikelen"
|
||||||
[nl.params.sections.projects]
|
[nl.params.sections.projects]
|
||||||
@@ -49,7 +49,7 @@ tagline = "Un thème Hugo"
|
|||||||
title = "Suivez-moi"
|
title = "Suivez-moi"
|
||||||
caption = "Je code et je tweet des mèmes de développeurs."
|
caption = "Je code et je tweet des mèmes de développeurs."
|
||||||
[fr.params.footer]
|
[fr.params.footer]
|
||||||
# license = "Gelicenseerd onder Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
|
# license = "Gelicenseerd onder Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer nofollow'>CC BY-NC-SA 4.0</a>)."
|
||||||
[fr.params.sections.blog]
|
[fr.params.sections.blog]
|
||||||
reference = "Plus d'articles"
|
reference = "Plus d'articles"
|
||||||
[fr.params.sections.projects]
|
[fr.params.sections.projects]
|
||||||
|
@@ -24,9 +24,15 @@ defaultMarkdownHandler = "goldmark"
|
|||||||
table = true
|
table = true
|
||||||
taskList = true
|
taskList = true
|
||||||
typographer = true
|
typographer = true
|
||||||
|
[goldmark.extensions.passthrough]
|
||||||
|
enable = true
|
||||||
|
[goldmark.extensions.passthrough.delimiters]
|
||||||
|
block = [['\[', '\]'], ['$$', '$$']]
|
||||||
|
inline = [['\(', '\)'], ['$', '$']]
|
||||||
[goldmark.parser]
|
[goldmark.parser]
|
||||||
autoHeadingID = true
|
autoHeadingID = true
|
||||||
autoHeadingIDType = 'github'
|
autoHeadingIDType = 'github'
|
||||||
|
wrapStandAloneImageWithinParagraph = false
|
||||||
[goldmark.parser.attribute]
|
[goldmark.parser.attribute]
|
||||||
block = true
|
block = true
|
||||||
[goldmark.renderer]
|
[goldmark.renderer]
|
||||||
|
19
exampleSite/config/_default/netlify.toml
Normal file
19
exampleSite/config/_default/netlify.toml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
[[redirects]]
|
||||||
|
from = '/fr/*'
|
||||||
|
to = '/fr/404.html'
|
||||||
|
status = 404
|
||||||
|
|
||||||
|
[[redirects]]
|
||||||
|
from = '/nl/*'
|
||||||
|
to = '/nl/404.html'
|
||||||
|
status = 404
|
||||||
|
|
||||||
|
[[redirects]]
|
||||||
|
from = '/en/*'
|
||||||
|
to = '/en/404.html'
|
||||||
|
status = 404
|
||||||
|
|
||||||
|
[[redirects]] # Default language should be last.
|
||||||
|
from = '/*'
|
||||||
|
to = '/en/404.html'
|
||||||
|
status = 404
|
2
exampleSite/config/_default/params.fr.toml
Normal file
2
exampleSite/config/_default/params.fr.toml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
[main]
|
||||||
|
titleCase = false
|
2
exampleSite/config/_default/params.nl.toml
Normal file
2
exampleSite/config/_default/params.nl.toml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
[main]
|
||||||
|
titleCase = false
|
@@ -2,21 +2,28 @@
|
|||||||
separator = "-"
|
separator = "-"
|
||||||
description = "Hinode is a clean documentation and blog theme for your Hugo site based on Bootstrap 5."
|
description = "Hinode is a clean documentation and blog theme for your Hugo site based on Bootstrap 5."
|
||||||
enableDarkMode = true
|
enableDarkMode = true
|
||||||
|
enableLanguageSelectionStorage = true
|
||||||
modes = ["light", "dark"]
|
modes = ["light", "dark"]
|
||||||
canonifyAssetsURLs = false
|
canonifyAssetsURLs = false
|
||||||
footerBelowFold = false
|
footerBelowFold = false
|
||||||
loading = "lazy"
|
loading = "lazy"
|
||||||
breakpoint = "md"
|
breakpoint = "md"
|
||||||
|
titleCase = true
|
||||||
|
[main.internalLinks]
|
||||||
|
validate = true
|
||||||
|
pretty = true
|
||||||
[main.externalLinks]
|
[main.externalLinks]
|
||||||
cue = true
|
cue = true
|
||||||
tab = true
|
tab = true
|
||||||
[main.build]
|
[main.build]
|
||||||
transpiler = "dartsass"
|
transpiler = "dartsass"
|
||||||
|
silenceDeprecations = true
|
||||||
|
|
||||||
[debugging]
|
[debugging]
|
||||||
showJS = false
|
showJS = false
|
||||||
showSCSS = false
|
showSCSS = false
|
||||||
purgeHTMLComments = true # prevents a Goldmark warning when processing HTML comments (as used by markdownlint)
|
purgeHTMLComments = true # prevents a Goldmark warning when processing HTML comments (as used by markdownlint)
|
||||||
|
includeSVGOrigin = true
|
||||||
|
|
||||||
[docs]
|
[docs]
|
||||||
basePath = "/" # TODO: replace
|
basePath = "/" # TODO: replace
|
||||||
@@ -57,6 +64,11 @@
|
|||||||
|
|
||||||
[dam]
|
[dam]
|
||||||
dimensions = "dimensions.yml"
|
dimensions = "dimensions.yml"
|
||||||
|
videoCodecs = [
|
||||||
|
"webm/vp9",
|
||||||
|
"mp4/h265",
|
||||||
|
"mp4"
|
||||||
|
]
|
||||||
|
|
||||||
[[dam.providers]]
|
[[dam.providers]]
|
||||||
name = "Cloudinary"
|
name = "Cloudinary"
|
||||||
@@ -152,7 +164,7 @@
|
|||||||
# themeFontPath = "https://fonts.googleapis.com/css2?family=Inter:wght@200;300;600&display=swap" # external path
|
# themeFontPath = "https://fonts.googleapis.com/css2?family=Inter:wght@200;300;600&display=swap" # external path
|
||||||
themeFontPath = "/fonts" # local path
|
themeFontPath = "/fonts" # local path
|
||||||
themeFontPreload = "/fonts/inter-v12-latin-regular.woff2"
|
themeFontPreload = "/fonts/inter-v12-latin-regular.woff2"
|
||||||
purge = false # TODO: fix purge setting of example site
|
purge = true
|
||||||
# toml-docs-end theme-colors
|
# toml-docs-end theme-colors
|
||||||
|
|
||||||
[schema]
|
[schema]
|
||||||
@@ -163,16 +175,16 @@
|
|||||||
# linkedIn = ""
|
# linkedIn = ""
|
||||||
github = "https://github.com/gethinode/hinode"
|
github = "https://github.com/gethinode/hinode"
|
||||||
section = "blog"
|
section = "blog"
|
||||||
[author]
|
[schema.author]
|
||||||
name = "Mark Dumay"
|
name = "Mark Dumay"
|
||||||
# twitter = "https://twitter.com/markdumay"
|
# twitter = "https://twitter.com/markdumay"
|
||||||
linkedin = "https://www.linkedin.com/in/markdumay/"
|
linkedin = "https://www.linkedin.com/in/markdumay/"
|
||||||
github = "https://github.com/markdumay"
|
github = "https://github.com/markdumay"
|
||||||
[logo]
|
[schema.logo]
|
||||||
url = "img/logo512x512.png"
|
url = "img/logo512x512.png"
|
||||||
width = 512
|
width = 512
|
||||||
height = 512
|
height = 512
|
||||||
[image]
|
[schema.image]
|
||||||
url = "img/logo1280x640.png"
|
url = "img/logo1280x640.png"
|
||||||
width = 1280
|
width = 1280
|
||||||
height = 640
|
height = 640
|
||||||
@@ -189,3 +201,6 @@
|
|||||||
observatory = "https://observatory.mozilla.org/analyze/demo.gethinode.com"
|
observatory = "https://observatory.mozilla.org/analyze/demo.gethinode.com"
|
||||||
pagespeed = "https://pagespeed.web.dev/report?url=https%3A%2F%2Fdemo.gethinode.com%2F"
|
pagespeed = "https://pagespeed.web.dev/report?url=https%3A%2F%2Fdemo.gethinode.com%2F"
|
||||||
hinode = "https://gethinode.com"
|
hinode = "https://gethinode.com"
|
||||||
|
|
||||||
|
[modules.cookieyes]
|
||||||
|
url = "https://cdn-cookieyes.com/client_data/a54b5553f349dd13bd225f8e/script.js"
|
||||||
|
@@ -1,42 +1,49 @@
|
|||||||
# toml-docs-start server-config
|
# Auto-generated file - do not modify
|
||||||
|
|
||||||
[[headers]]
|
[[headers]]
|
||||||
for = '/**'
|
for = '/**'
|
||||||
[headers.values]
|
|
||||||
Strict-Transport-Security = "max-age=31536000; includeSubDomains; preload"
|
[headers.values]
|
||||||
X-Content-Type-Options = "nosniff"
|
Access-Control-Allow-Origin = '*'
|
||||||
X-XSS-Protection = "1; mode=block"
|
Content-Security-Policy = """
|
||||||
Content-Security-Policy = """\
|
|
||||||
default-src 'self'; \
|
|
||||||
script-src 'self' https://*.google-analytics.com https://*.googletagmanager.com; \
|
|
||||||
style-src 'self' https://fonts.googleapis.com https://www.youtube.com; \
|
|
||||||
object-src 'none'; \
|
|
||||||
base-uri 'self'; \
|
base-uri 'self'; \
|
||||||
connect-src 'self'
|
connect-src 'self' *.cookieyes.com cdn-cookieyes.com *.google-analytics.com *.analytics.google.com *.googletagmanager.com; \
|
||||||
https://*.google-analytics.com https://*.analytics.google.com https://*.googletagmanager.com; \
|
default-src 'none'; \
|
||||||
font-src 'self' https://fonts.gstatic.com; \
|
font-src 'self' fonts.gstatic.com; \
|
||||||
frame-src 'self' https://www.youtube-nocookie.com https://www.youtube.com; \
|
form-action 'self'; \
|
||||||
img-src 'self' data: https://*.imgix.net https://*.imagekit.io https://*.cloudinary.com https://i.vimeocdn.com https://i.ytimg.com https://*.google-analytics.com https://*.googletagmanager.com https://tile.openstreetmap.org; \
|
frame-src player.cloudinary.com www.youtube-nocookie.com www.youtube.com player.vimeo.com; \
|
||||||
|
img-src 'self' cdn-cookieyes.com *.google-analytics.com *.googletagmanager.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'; \
|
||||||
|
script-src 'self' cdn-cookieyes.com *.google-analytics.com *.googletagmanager.com player.vimeo.com; \
|
||||||
|
style-src 'self' 'unsafe-inline' www.youtube.com; \
|
||||||
"""
|
"""
|
||||||
X-Frame-Options = "SAMEORIGIN"
|
Permissions-Policy = 'geolocation=(), midi=(), sync-xhr=(), microphone=(), camera=(), magnetometer=(), gyroscope=(), fullscreen=(), payment=() '
|
||||||
Referrer-Policy = "strict-origin"
|
Referrer-Policy = 'strict-origin'
|
||||||
Permissions-Policy = """\
|
Strict-Transport-Security = 'max-age=31536000; includeSubDomains; preload'
|
||||||
geolocation=(), \
|
X-Content-Type-Options = 'nosniff'
|
||||||
midi=(), \
|
X-Frame-Options = 'SAMEORIGIN'
|
||||||
sync-xhr=(), \
|
X-XSS-Protection = '1; mode=block'
|
||||||
microphone=(), \
|
cache-control = 'max-age=0, no-cache, no-store, must-revalidate '
|
||||||
camera=(), \
|
|
||||||
magnetometer=(), \
|
[[redirects]]
|
||||||
gyroscope=(), \
|
from = '/fr/*'
|
||||||
fullscreen=(), \
|
status = 404
|
||||||
payment=() \
|
to = '/fr/404.html'
|
||||||
"""
|
|
||||||
cache-control = """\
|
[[redirects]]
|
||||||
max-age=0, \
|
from = '/nl/*'
|
||||||
no-cache, \
|
status = 404
|
||||||
no-store, \
|
to = '/nl/404.html'
|
||||||
must-revalidate \
|
|
||||||
"""
|
[[redirects]]
|
||||||
Access-Control-Allow-Origin = "*"
|
from = '/en/*'
|
||||||
# toml-docs-end server-config
|
status = 404
|
||||||
|
to = '/en/404.html'
|
||||||
|
|
||||||
|
[[redirects]]
|
||||||
|
from = '/*'
|
||||||
|
status = 404
|
||||||
|
to = '/en/404.html'
|
||||||
|
|
||||||
|
@@ -3,30 +3,34 @@ 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')
|
||||||
content: ['./hugo_stats.json'],
|
const purgeCSSPlugin = purgeImport.purgeCSSPlugin || purgeImport.default || purgeImport
|
||||||
|
const purgecss = purgeCSSPlugin({
|
||||||
|
content: ['./exampleSite/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: [
|
safelist: ['was-validated',
|
||||||
...whitelister([
|
...whitelister([
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_clipboard.scss',
|
'./assets/scss/components/_clipboard.scss',
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_command.scss',
|
'./assets/scss/components/_command.scss',
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_nav.scss',
|
'./assets/scss/components/_nav.scss',
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_navbar.scss',
|
'./assets/scss/components/_navbar.scss',
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_search.scss',
|
'./assets/scss/components/_search.scss',
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_syntax.scss',
|
'./assets/scss/components/_syntax.scss',
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_syntax-dark.scss',
|
'./assets/scss/components/_syntax-dark.scss',
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_syntax-light.scss',
|
'./assets/scss/components/_syntax-light.scss',
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_table.scss',
|
'./assets/scss/components/_table.scss',
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_video.scss',
|
'./assets/scss/components/_video.scss',
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/theme/fonts.scss',
|
'./assets/scss/theme/fonts.scss',
|
||||||
'./_vendor/github.com/gethinode/hinode/assets/scss/theme/theme.scss',
|
'./assets/scss/theme/theme.scss',
|
||||||
|
'./_vendor/github.com/gethinode/mod-cookieyes/v2/assets/scss/cookieyes.scss',
|
||||||
'./_vendor/github.com/gethinode/mod-flexsearch/v2/assets/scss/modules/flexsearch/flexsearch.scss',
|
'./_vendor/github.com/gethinode/mod-flexsearch/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/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',
|
||||||
|
@@ -27,6 +27,6 @@ Additional features include:
|
|||||||
* Reusable Bootstrap components through configurable shortcodes and partials
|
* Reusable Bootstrap components through configurable shortcodes and partials
|
||||||
* Versioned documentation, including sidebar navigation and version switcher
|
* Versioned documentation, including sidebar navigation and version switcher
|
||||||
* Responsive image handling for multiple screen sizes and resolutions
|
* Responsive image handling for multiple screen sizes and resolutions
|
||||||
* Optimized search results, scoring 100 points for SEO on [PageSpeed Insights]({{< param "links.pagespeed" >}})
|
* Optimized search results, scoring 100 points for SEO on [PageSpeed Insights]({{% param "links.pagespeed" %}})
|
||||||
* Secure by default, scoring A+ on [Mozilla Observatory test]({{< param "links.observatory" >}})
|
* Secure by default, scoring A+ on [Mozilla Observatory test]({{% param "links.observatory" %}})
|
||||||
{.tickmark}
|
{.tickmark}
|
||||||
|
@@ -12,7 +12,7 @@ thumbnail:
|
|||||||
originURL: https://unsplash.com/photos/QLPWQvHvmII
|
originURL: https://unsplash.com/photos/QLPWQvHvmII
|
||||||
---
|
---
|
||||||
|
|
||||||
Hinode provides several shortcodes that wrap common Bootstrap components. Refer to the [official documentation]({{< param "links.hinode_docs" >}}) for more details.
|
Hinode provides several shortcodes that wrap common Bootstrap components. Refer to the [official documentation]({{% param "links.hinode_docs" %}}) for more details.
|
||||||
|
|
||||||
## Abbr
|
## Abbr
|
||||||
|
|
||||||
@@ -121,7 +121,7 @@ As an example, the following shortcode displays a group of three buttons.
|
|||||||
|
|
||||||
## Card
|
## Card
|
||||||
|
|
||||||
As an example, the following shortcode displays a stacked card that links to the [about]({{< ref "about" >}}) page. It includes a custom header.
|
As an example, the following shortcode displays a stacked card that links to the [about]({{% ref "about" %}}) page. It includes a custom header.
|
||||||
|
|
||||||
<!-- markdownlint-disable MD037 -->
|
<!-- markdownlint-disable MD037 -->
|
||||||
{{< example lang="hugo" >}}
|
{{< example lang="hugo" >}}
|
||||||
@@ -264,6 +264,13 @@ As an example, the following shortcode displays an image with rounded corners an
|
|||||||
{{< /example >}}
|
{{< /example >}}
|
||||||
<!-- markdownlint-enable MD037 -->
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
|
||||||
|
The same image, but then using Markdown syntax:
|
||||||
|
|
||||||
|
{{< example lang="hugo" >}}
|
||||||
|

|
||||||
|
{class="rounded col-md-6" ratio="4x3" portrait=true wrapper="text-center"}
|
||||||
|
{{< /example >}}
|
||||||
|
|
||||||
As an example, the following shortcode displays a regular vector image.
|
As an example, the following shortcode displays a regular vector image.
|
||||||
|
|
||||||
<!-- markdownlint-disable MD037 -->
|
<!-- markdownlint-disable MD037 -->
|
||||||
@@ -280,6 +287,16 @@ As an example, the following shortcode displays a vector image with a symbol ref
|
|||||||
{{< /example >}}
|
{{< /example >}}
|
||||||
<!-- markdownlint-enable MD037 -->
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
|
||||||
|
## Ins
|
||||||
|
|
||||||
|
As an example, the following shortcode displays underlined text.
|
||||||
|
|
||||||
|
<!-- markdownlint-disable MD037 -->
|
||||||
|
{{< example >}}
|
||||||
|
This is an {{</* ins */>}}underlined text{{</* /ins */>}}.
|
||||||
|
{{< /example >}}
|
||||||
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
|
||||||
## Link
|
## Link
|
||||||
|
|
||||||
As an example, the following shortcodes render links in different formats.
|
As an example, the following shortcodes render links in different formats.
|
||||||
@@ -299,7 +316,7 @@ As an example, the following shortcodes render links in different formats.
|
|||||||
- {{</* link url="../projects/another-project" case=false /*/>}}
|
- {{</* link url="../projects/another-project" case=false /*/>}}
|
||||||
- {{</* link "about" /*/>}}
|
- {{</* link "about" /*/>}}
|
||||||
- {{</* link "/fr/a-propos/" /*/>}}
|
- {{</* link "/fr/a-propos/" /*/>}}
|
||||||
- {{</* link "/fr/a-propos" >}}About (French){{< /link */>}}
|
- {{</* link href="/fr/a-propos" force=true >}}About (French){{< /link */>}}
|
||||||
- {{</* link "#image" /*/>}}
|
- {{</* link "#image" /*/>}}
|
||||||
- {{</* link "components/#map" /*/>}}
|
- {{</* link "components/#map" /*/>}}
|
||||||
|
|
||||||
@@ -411,7 +428,7 @@ As an example, the following shortcode displays superscript text.
|
|||||||
|
|
||||||
As an example, the following shortcode displays a responsive table.
|
As an example, the following shortcode displays a responsive table.
|
||||||
|
|
||||||
<!-- markdownlint-disable MD037 -->
|
<!-- markdownlint-disable MD037 MD058 -->
|
||||||
{{< example lang="markdown" >}}
|
{{< example lang="markdown" >}}
|
||||||
{{</* table */>}}
|
{{</* table */>}}
|
||||||
| # | Heading | Heading | Heading | Heading | Heading | Heading | Heading | Heading | Heading |
|
| # | Heading | Heading | Heading | Heading | Heading | Heading | Heading | Heading | Heading |
|
||||||
@@ -421,7 +438,7 @@ As an example, the following shortcode displays a responsive table.
|
|||||||
| 3. | cell | cel | cel | cel | cel | cel | cel | cel | cel |
|
| 3. | cell | cel | cel | cel | cel | cel | cel | cel | cel |
|
||||||
{{</* /table */>}}
|
{{</* /table */>}}
|
||||||
{{< /example >}}
|
{{< /example >}}
|
||||||
<!-- markdownlint-enable MD037 -->
|
<!-- markdownlint-enable MD037 MD058 -->
|
||||||
|
|
||||||
## Timeline
|
## Timeline
|
||||||
|
|
||||||
@@ -467,12 +484,12 @@ As an example, the following shortcode displays a tooltip for a colored hyperlin
|
|||||||
{{< /example >}}
|
{{< /example >}}
|
||||||
<!-- markdownlint-enable MD037 -->
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
|
||||||
## Youtube
|
## Video
|
||||||
|
|
||||||
As an example, the following shortcode displays a Hugo quickstart guide.
|
As an example, the following shortcode displays an Elephants video hosted by Cloudinary.
|
||||||
|
|
||||||
<!-- markdownlint-disable MD037 -->
|
<!-- markdownlint-disable MD037 -->
|
||||||
{{< example lang="hugo" >}}
|
{{< example lang="hugo" >}}
|
||||||
{{</* youtube id="w7Ft2ymGmfc" autoplay=true autotitle=true */>}}
|
{{</* video host="cloudinary" account="demo" id="elephants" autoplay=true */>}}
|
||||||
{{< /example >}}
|
{{< /example >}}
|
||||||
<!-- markdownlint-enable MD037 -->
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
@@ -10,10 +10,10 @@ thumbnail:
|
|||||||
authorURL: https://unsplash.com/@ryoji__iwata
|
authorURL: https://unsplash.com/@ryoji__iwata
|
||||||
origin: Unsplash
|
origin: Unsplash
|
||||||
originURL: https://unsplash.com/photos/5siQcvSxCP8
|
originURL: https://unsplash.com/photos/5siQcvSxCP8
|
||||||
modules: ["katex", "leaflet", "lottie", "simple-datatables"]
|
modules: ["leaflet", "lottie", "simple-datatables"]
|
||||||
---
|
---
|
||||||
|
|
||||||
Hinode provides several shortcodes on top of the common [Bootstrap elements]({{< relref "bootstrap-elements" >}}). Refer to the [official documentation]({{< param "links.hinode_docs" >}}) for more details.
|
Hinode provides several shortcodes on top of the common [Bootstrap elements]({{% relref "bootstrap-elements" %}}). Refer to the [official documentation]({{% param "links.hinode_docs" %}}) for more details.
|
||||||
|
|
||||||
## Animation
|
## Animation
|
||||||
|
|
||||||
@@ -29,9 +29,9 @@ As an example, the following shortcode shows an animation that plays on hover.
|
|||||||
|
|
||||||
As an example, the following shortcode displays a responsive table that uses advanced controls.
|
As an example, the following shortcode displays a responsive table that uses advanced controls.
|
||||||
|
|
||||||
<!-- markdownlint-disable MD037 -->
|
<!-- markdownlint-disable MD037 MD058 -->
|
||||||
{{< example lang="markdown" >}}
|
{{< example lang="markdown" >}}
|
||||||
{{</* table sortable="true" paging="true" searchable="true" */>}}
|
{{</* table sortable="true" paging="true" searchable="true" pagingOptionPerPage=5 */>}}
|
||||||
| # | Heading |
|
| # | Heading |
|
||||||
|-----|---------|
|
|-----|---------|
|
||||||
| 1. | Item 1 |
|
| 1. | Item 1 |
|
||||||
@@ -70,7 +70,7 @@ As an example, the following shortcode displays a responsive table that uses adv
|
|||||||
|
|
||||||
## Formula (KaTeX)
|
## Formula (KaTeX)
|
||||||
|
|
||||||
As an example, the following markdown renders two formulas using the KaTeX typesetting library.
|
As an example, the following markdown renders two formulas using server-side math rendering using KaTeX.
|
||||||
|
|
||||||
{{< example lang="markdown" >}}
|
{{< example lang="markdown" >}}
|
||||||
This is an inline $-b \pm \sqrt{b^2 - 4ac} \over 2a$ formula
|
This is an inline $-b \pm \sqrt{b^2 - 4ac} \over 2a$ formula
|
||||||
|
@@ -14,7 +14,7 @@ As an example, the following shortcode displays an image with rounded corners an
|
|||||||
|
|
||||||
<!-- markdownlint-disable MD037 -->
|
<!-- markdownlint-disable MD037 -->
|
||||||
{{< example lang="hugo" >}}
|
{{< example lang="hugo" >}}
|
||||||
{{</* image src="https://res.cloudinary.com/demo/image/upload/dog.webp"
|
{{</* image src="https://res.cloudinary.com/demo/dog.webp"
|
||||||
ratio="21x9" caption="Cloudinary image" class="rounded" plain=true */>}}
|
ratio="21x9" caption="Cloudinary image" class="rounded" plain=true */>}}
|
||||||
{{< /example >}}
|
{{< /example >}}
|
||||||
<!-- markdownlint-enable MD037 -->
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
44
exampleSite/content/en/cookies.md
Normal file
44
exampleSite/content/en/cookies.md
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
---
|
||||||
|
title: Cookie Policy
|
||||||
|
description: Cookie policy of gethinode.com
|
||||||
|
date: 2024-09-19
|
||||||
|
layout: docs
|
||||||
|
---
|
||||||
|
<!-- markdownlint-disable MD036 -->
|
||||||
|
*Effective Date 19-Sep-2024*
|
||||||
|
|
||||||
|
## What are cookies?
|
||||||
|
|
||||||
|
This Cookie Policy explains what cookies are and how we use them, the types of cookies we use i.e, the information we collect using cookies and how that information is used, and how to manage the cookie settings.
|
||||||
|
|
||||||
|
Cookies are small text files that are used to store small pieces of information. They are stored on your device when the website is loaded on your browser. These cookies help us make the website function properly, make it more secure, provide better user experience, and understand how the website performs and to analyze what works and where it needs improvement.
|
||||||
|
|
||||||
|
## How do we use cookies?
|
||||||
|
|
||||||
|
As most of the online services, our website uses first-party and third-party cookies for several purposes. First-party cookies are mostly necessary for the website to function the right way, and they do not collect any of your personally identifiable data.
|
||||||
|
|
||||||
|
The third-party cookies used on our website are mainly for understanding how the website performs, how you interact with our website, keeping our services secure, providing advertisements that are relevant to you, and all in all providing you with a better and improved user experience and help speed up your future interactions with our website.
|
||||||
|
|
||||||
|
## Types of Cookies we use
|
||||||
|
|
||||||
|
{{< cky-audit >}}
|
||||||
|
|
||||||
|
## Manage cookie preferences
|
||||||
|
|
||||||
|
{{< cky-banner >}}
|
||||||
|
|
||||||
|
You can change your cookie preferences any time by clicking the above button. This will let you revisit the cookie consent banner and change your preferences or withdraw your consent right away.
|
||||||
|
|
||||||
|
In addition to this, different browsers provide different methods to block and delete cookies used by websites. You can change the settings of your browser to block/delete the cookies. Listed below are the links to the support documents on how to manage and delete cookies from the major web browsers.
|
||||||
|
|
||||||
|
Chrome: https://support.google.com/accounts/answer/32050
|
||||||
|
|
||||||
|
Safari: https://support.apple.com/en-in/guide/safari/sfri11471/mac
|
||||||
|
|
||||||
|
Firefox: https://support.mozilla.org/en-US/kb/clear-cookies-and-site-data-firefox?redirectslug=delete-cookies-remove-info-websites-stored&redirectlocale=en-US
|
||||||
|
|
||||||
|
Internet Explorer: https://support.microsoft.com/en-us/topic/how-to-delete-cookie-files-in-internet-explorer-bca9446f-d873-78de-77ba-d42645fa52fc
|
||||||
|
|
||||||
|
If you are using any other web browser, please visit your browser’s official support documents.
|
||||||
|
|
||||||
|
*Cookie Policy generated by {{< link "https://www.cookieyes.com" >}}CookieYes - Cookie Policy Generator{{< /link >}}.*
|
47
exampleSite/content/en/privacy.md
Normal file
47
exampleSite/content/en/privacy.md
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
---
|
||||||
|
title: Privacy Policy
|
||||||
|
description: Privacy policy of gethinode.com
|
||||||
|
date: 2024-09-19
|
||||||
|
layout: docs
|
||||||
|
---
|
||||||
|
<!-- markdownlint-disable MD036 -->
|
||||||
|
*Effective Date 19-Sep-2024*
|
||||||
|
|
||||||
|
This Privacy Policy describes the policies of gethinode.com on the collection, use and disclosure of your information that we collect when you use our website (https://gethinode.com, referred to as the “Service”). By accessing or using the Service, you are consenting to the collection, use and disclosure of your information in accordance with this Privacy Policy. If you do not consent to the same, please do not access or use the Service.
|
||||||
|
|
||||||
|
We may modify this Privacy Policy at any time without any prior notice to you and will post the revised Privacy Policy on the Service. The revised Policy will be effective 180 days from when the revised Policy is posted in the Service and your continued access or use of the Service after such time will constitute your acceptance of the revised Privacy Policy. We therefore recommend that you periodically review this page.
|
||||||
|
|
||||||
|
## How we share your information
|
||||||
|
|
||||||
|
We will not transfer your personal information to any third party without seeking your consent, except in limited circumstances as described
|
||||||
|
below:
|
||||||
|
|
||||||
|
- Analytics
|
||||||
|
|
||||||
|
We require such third party’s to use the personal information we transfer to them only for the purpose for which it was transferred and not to retain it for longer than is required for fulfilling the said purpose.
|
||||||
|
|
||||||
|
We may also disclose your personal information for the following: (1) to comply with applicable law, regulation, court order or other legal process; (2) to enforce your agreements with us, including this Privacy Policy; or (3) to respond to claims that your use of the Service violates any third-party rights. If the Service or our company is merged or acquired with another company, your information will be one of the assets that is transferred to the new owner.
|
||||||
|
|
||||||
|
## Your rights
|
||||||
|
|
||||||
|
Depending on the law that applies, you may have a right to access and rectify or erase your personal data or receive a copy of your personal data, restrict or object to the active processing of your data, ask us to share (port) your personal information to another entity,withdraw any consent you provided to us to process your data, a right to lodge a complaint with a statutory authority and such other rights as may be relevant under applicable laws. <!-- To exercise these rights, you can write to us at privacy@gethinode.com. We will respond to your request in accordance with applicable law. -->
|
||||||
|
|
||||||
|
Do note that if you do not allow us to collect or process the required personal information or withdraw the consent to process the same for the required purposes, you may not be able to access or use the services for which your information was sought.
|
||||||
|
|
||||||
|
## Cookies etc.
|
||||||
|
|
||||||
|
To learn more about how we use these and your choices in relation to these tracking technologies, please refer to our {{< link "cookies" >}}Cookie Policy/Settings{{< /link >}}.
|
||||||
|
|
||||||
|
## Security
|
||||||
|
|
||||||
|
The security of your information is important to us and we will use reasonable security measures to prevent the loss, misuse or unauthorized alteration of your information under our control. However, given the inherent risks, we cannot guarantee absolute security and consequently, we cannot ensure or warrant the security of any information you transmit to us and you do so at your own risk.
|
||||||
|
|
||||||
|
## Third party links & use of your information
|
||||||
|
|
||||||
|
Our Service may contain links to other websites that are not operated by us. This Privacy Policy does not address the privacy policy and other practices of any third parties, including any third party operating any website or service that may be accessible via a link on the Service. We strongly advise you to review the privacy policy of every site you visit. We have no control over and assume no responsibility for the content, privacy policies or practices of any third party sites or services.
|
||||||
|
|
||||||
|
<!-- ## Grievance / Data Protection Officer
|
||||||
|
|
||||||
|
If you have any queries or concerns about the processing of your information that is available with us, you may email us at privacy@gethinode.com. We will address your concerns in accordance with applicable law. -->
|
||||||
|
|
||||||
|
*Privacy Policy generated with {{< link "https://www.cookieyes.com" >}}CookieYes{{< /link >}}.*
|
@@ -28,6 +28,6 @@ Les fonctionnalités supplémentaires incluent:
|
|||||||
- Composants bootstrap réutilisables à travers des codes et partiels configurables
|
- Composants bootstrap réutilisables à travers des codes et partiels configurables
|
||||||
- Documentation versionnée, incluant une navigation latérale et un sélecteur de version.
|
- Documentation versionnée, incluant une navigation latérale et un sélecteur de version.
|
||||||
- Gestion d'images adaptatives pour plusieurs tailles d'écran et résolutions.
|
- Gestion d'images adaptatives pour plusieurs tailles d'écran et résolutions.
|
||||||
- Résultats de recherche optimisés, obtenant un score de 100 points pour le référencement (SEO) sur [PageSpeed Insights]({{< param "links.pagespeed" >}}).
|
- Résultats de recherche optimisés, obtenant un score de 100 points pour le référencement (SEO) sur [PageSpeed Insights]({{% param "links.pagespeed" %}}).
|
||||||
- Sécurisé par défaut, obtenant un score A+ au test [Mozilla Observatory]({{< param "links.observatory" >}})
|
- Sécurisé par défaut, obtenant un score A+ au test [Mozilla Observatory]({{% param "links.observatory" %}})
|
||||||
{.tickmark}
|
{.tickmark}
|
||||||
|
@@ -13,7 +13,7 @@ thumbnail:
|
|||||||
originURL: https://unsplash.com/photos/QLPWQvHvmII
|
originURL: https://unsplash.com/photos/QLPWQvHvmII
|
||||||
---
|
---
|
||||||
|
|
||||||
Hinode propose plusieurs shortcodes qui enveloppent des composants Bootstrap courants. Consultez la [documentation officielle]({{< param "links.hinode_docs" >}}) pour plus de détails.
|
Hinode propose plusieurs shortcodes qui enveloppent des composants Bootstrap courants. Consultez la [documentation officielle]({{% param "links.hinode_docs" %}}) pour plus de détails.
|
||||||
|
|
||||||
## Abbr
|
## Abbr
|
||||||
|
|
||||||
@@ -121,7 +121,7 @@ En-tête 6 {{</* badge title="Nouveau" */>}}
|
|||||||
|
|
||||||
## Carte
|
## Carte
|
||||||
|
|
||||||
À titre d'exemple, le shortcode suivant affiche une carte empilée qui renvoie à la page [à propos]({{< ref "about" >}}). Elle inclut un en-tête personnalisé.
|
À titre d'exemple, le shortcode suivant affiche une carte empilée qui renvoie à la page [à propos]({{% ref "about" %}}). Elle inclut un en-tête personnalisé.
|
||||||
|
|
||||||
<!-- markdownlint-disable MD037 -->
|
<!-- markdownlint-disable MD037 -->
|
||||||
{{< example lang="hugo" >}}
|
{{< example lang="hugo" >}}
|
||||||
@@ -136,7 +136,7 @@ En-tête 6 {{</* badge title="Nouveau" */>}}
|
|||||||
|
|
||||||
<!-- markdownlint-disable MD037 -->
|
<!-- markdownlint-disable MD037 -->
|
||||||
{{< example lang="hugo" >}}
|
{{< example lang="hugo" >}}
|
||||||
{{</* card-group padding="3" gutter="3" */>}}
|
{{</* card-group padding="3" gutter="3" button=true buttonType="link" cols=2 scroll=true */>}}
|
||||||
{{</* card title="Framework Bootstrap" icon="fab bootstrap" */>}}
|
{{</* card title="Framework Bootstrap" icon="fab bootstrap" */>}}
|
||||||
Créez des sites rapides et réactifs avec Bootstrap 5. Personnalisez facilement votre site
|
Créez des sites rapides et réactifs avec Bootstrap 5. Personnalisez facilement votre site
|
||||||
avec les fichiers source Sass.
|
avec les fichiers source Sass.
|
||||||
@@ -298,7 +298,7 @@ Utilisez le shortcode `file` pour afficher et mettre en évidence le contenu com
|
|||||||
- {{</* link url="../projects/another-project" case=false /*/>}}
|
- {{</* link url="../projects/another-project" case=false /*/>}}
|
||||||
- {{</* link "about" /*/>}}
|
- {{</* link "about" /*/>}}
|
||||||
- {{</* link "/en/about/" /*/>}}
|
- {{</* link "/en/about/" /*/>}}
|
||||||
- {{</* link "/en/about" >}}About (Anglais){{< /link */>}}
|
- {{</* link url="/en/about/" force=true >}}About (Anglais){{< /link */>}}
|
||||||
- {{</* link "#image" /*/>}}
|
- {{</* link "#image" /*/>}}
|
||||||
- {{</* link "components/#map" /*/>}}
|
- {{</* link "components/#map" /*/>}}
|
||||||
|
|
||||||
@@ -431,3 +431,13 @@ H{{</* sub 2 */>}}O est un liquide.
|
|||||||
{{</* tooltip color="primary" title="Légende de l'infobulle" href="#!" */>}}Démonstration{{</* /tooltip */>}} d'une infobulle
|
{{</* tooltip color="primary" title="Légende de l'infobulle" href="#!" */>}}Démonstration{{</* /tooltip */>}} d'une infobulle
|
||||||
{{< /example >}}
|
{{< /example >}}
|
||||||
<!-- markdownlint-enable MD037 -->
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
|
||||||
|
## Vidéo
|
||||||
|
|
||||||
|
À titre d'exemple, le shortcode suivant affiche une vidéo d'éléphant hébergée par Cloudinary.
|
||||||
|
|
||||||
|
<!-- markdownlint-disable MD037 -->
|
||||||
|
{{< example lang="hugo" >}}
|
||||||
|
{{</* video host="cloudinary" account="demo" id="elephants" autoplay=true */>}}
|
||||||
|
{{< /example >}}
|
||||||
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
@@ -11,10 +11,10 @@ thumbnail:
|
|||||||
authorURL: https://unsplash.com/@ryoji__iwata
|
authorURL: https://unsplash.com/@ryoji__iwata
|
||||||
origin: Unsplash
|
origin: Unsplash
|
||||||
originURL: https://unsplash.com/photos/5siQcvSxCP8
|
originURL: https://unsplash.com/photos/5siQcvSxCP8
|
||||||
modules: ["katex", "leaflet", "lottie"]
|
modules: ["leaflet", "lottie", "simple-datatables"]
|
||||||
---
|
---
|
||||||
|
|
||||||
Hinode propose plusieurs shortcodes en plus des [éléments Bootstrap]({{< relref "bootstrap-elements" >}}) courants. Consultez la [documentation officielle]({{< param "links.hinode_docs" >}}) pour plus de détails.
|
Hinode propose plusieurs shortcodes en plus des [éléments Bootstrap]({{% relref "bootstrap-elements" %}}) courants. Consultez la [documentation officielle]({{% param "links.hinode_docs" %}}) pour plus de détails.
|
||||||
|
|
||||||
## Animation
|
## Animation
|
||||||
|
|
||||||
@@ -26,12 +26,55 @@ Hinode propose plusieurs shortcodes en plus des [éléments Bootstrap]({{< relre
|
|||||||
{{< /example >}}
|
{{< /example >}}
|
||||||
<!-- markdownlint-enable MD037 -->
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
|
||||||
|
## Data tables
|
||||||
|
|
||||||
|
À titre d'exemple, le shortcode suivant affiche un tableau réactif utilisant des contrôles avancés.
|
||||||
|
|
||||||
|
<!-- markdownlint-disable MD037 MD058 -->
|
||||||
|
{{< example lang="markdown" >}}
|
||||||
|
{{</* table sortable="true" paging="true" searchable="true" pagingOptionPerPage=5 */>}}
|
||||||
|
| # | Heading |
|
||||||
|
|-----|---------|
|
||||||
|
| 1. | Item 1 |
|
||||||
|
| 2. | Item 2 |
|
||||||
|
| 3. | Item 3 |
|
||||||
|
| 4. | Item 4 |
|
||||||
|
| 5. | Item 5 |
|
||||||
|
| 6. | Item 6 |
|
||||||
|
| 7. | Item 7 |
|
||||||
|
| 8. | Item 8 |
|
||||||
|
| 9. | Item 9 |
|
||||||
|
| 10. | Item 10 |
|
||||||
|
| 11. | Item 11 |
|
||||||
|
| 12. | Item 12 |
|
||||||
|
| 13. | Item 13 |
|
||||||
|
| 14. | Item 14 |
|
||||||
|
| 15. | Item 15 |
|
||||||
|
| 16. | Item 16 |
|
||||||
|
| 17. | Item 17 |
|
||||||
|
| 18. | Item 18 |
|
||||||
|
| 19. | Item 19 |
|
||||||
|
| 20. | Item 20 |
|
||||||
|
| 21. | Item 21 |
|
||||||
|
| 22. | Item 22 |
|
||||||
|
| 23. | Item 23 |
|
||||||
|
| 24. | Item 24 |
|
||||||
|
| 25. | Item 25 |
|
||||||
|
| 26. | Item 26 |
|
||||||
|
| 27. | Item 27 |
|
||||||
|
| 28. | Item 28 |
|
||||||
|
| 29. | Item 29 |
|
||||||
|
| 30. | Item 30 |
|
||||||
|
{{</* /table */>}}
|
||||||
|
{{< /example >}}
|
||||||
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
|
||||||
## Formule (KaTeX)
|
## Formule (KaTeX)
|
||||||
|
|
||||||
À titre d'exemple, le markdown suivant affiche deux formules en utilisant la bibliothèque de composition typographique KaTeX.
|
À titre d’exemple, le markdown suivant affiche deux formules en utilisant la bibliothèque de composition typographique KaTeX.
|
||||||
|
|
||||||
{{< example lang="markdown" >}}
|
{{{< example lang="markdown" >}}
|
||||||
Voici une formule en ligne $-b \pm \sqrt{b^2 - 4ac} \over 2a$.
|
Voici une formule $-b \pm \sqrt{b^2 - 4ac} \over 2a$ en ligne
|
||||||
|
|
||||||
Il s'agit d'une formule non en ligne:
|
Il s'agit d'une formule non en ligne:
|
||||||
|
|
||||||
|
42
exampleSite/content/fr/blog/image.md
Normal file
42
exampleSite/content/fr/blog/image.md
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
---
|
||||||
|
author: Mark Dumay
|
||||||
|
title: Images locales et distantes
|
||||||
|
date: 2024-05-19
|
||||||
|
description: Inclure des images responsives provenant de sources locales et de certains fournisseurs de CDN d'images.
|
||||||
|
tags: ["blog"]
|
||||||
|
thumbnail:
|
||||||
|
url: https://assets.imgix.net/examples/bluehat.jpg
|
||||||
|
---
|
||||||
|
|
||||||
|
## Cloudinary
|
||||||
|
|
||||||
|
À titre d'exemple, le shortcode suivant affiche une image avec des coins arrondis et un ratio d'aspect de 21x9.
|
||||||
|
|
||||||
|
<!-- markdownlint-disable MD037 -->
|
||||||
|
{{< example lang="hugo" >}}
|
||||||
|
{{</* image src="https://res.cloudinary.com/demo/dog.webp"
|
||||||
|
ratio="21x9" caption="Image Cloudinary" class="rounded" plain=true */>}}
|
||||||
|
{{< /example >}}
|
||||||
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
|
||||||
|
## ImageKit.io
|
||||||
|
|
||||||
|
À titre d'exemple, le shortcode suivant affiche une image avec des coins arrondis et un ratio d'aspect de 21x9.
|
||||||
|
|
||||||
|
<!-- markdownlint-disable MD037 -->
|
||||||
|
{{< example lang="hugo" >}}
|
||||||
|
{{</* image src="https://ik.imagekit.io/demo/default-image.jpg"
|
||||||
|
ratio="21x9" caption="Image ImageKit.io" class="rounded" anchor="Center" */>}}
|
||||||
|
{{< /example >}}
|
||||||
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
|
||||||
|
## Imgix
|
||||||
|
|
||||||
|
À titre d'exemple, le shortcode suivant affiche une image avec des coins arrondis et un ratio d'aspect de 21x9.
|
||||||
|
|
||||||
|
<!-- markdownlint-disable MD037 -->
|
||||||
|
{{< example lang="hugo" >}}
|
||||||
|
{{</* image src="https://assets.imgix.net/examples/bluehat.jpg"
|
||||||
|
ratio="21x9" caption="Image imgix" class="rounded" anchor="Top" */>}}
|
||||||
|
{{< /example >}}
|
||||||
|
<!-- markdownlint-enable MD037 -->
|
44
exampleSite/content/fr/cookies.md
Normal file
44
exampleSite/content/fr/cookies.md
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
---
|
||||||
|
title: Politique de Cookies
|
||||||
|
description: Politique de cookies de gethinode.com
|
||||||
|
date: 2024-09-19
|
||||||
|
layout: docs
|
||||||
|
---
|
||||||
|
<!-- markdownlint-disable MD036 -->
|
||||||
|
*Date d'entrée en vigueur : 19-Sep-2024*
|
||||||
|
|
||||||
|
## Que sont les cookies ?
|
||||||
|
|
||||||
|
Cette Politique de Cookies explique ce que sont les cookies et comment nous les utilisons, les types de cookies que nous utilisons, c'est-à-dire les informations que nous collectons à l'aide des cookies, la manière dont ces informations sont utilisées, et comment gérer les paramètres des cookies.
|
||||||
|
|
||||||
|
Les cookies sont de petits fichiers texte utilisés pour stocker de petites quantités d'informations. Ils sont stockés sur votre appareil lorsque le site web se charge dans votre navigateur. Ces cookies nous aident à faire fonctionner le site correctement, à le rendre plus sécurisé, à offrir une meilleure expérience utilisateur, à comprendre comment le site fonctionne et à analyser ce qui fonctionne et ce qui doit être amélioré.
|
||||||
|
|
||||||
|
## Comment utilisons-nous les cookies ?
|
||||||
|
|
||||||
|
Comme la plupart des services en ligne, notre site web utilise des cookies de première partie et de tierce partie pour plusieurs raisons. Les cookies de première partie sont principalement nécessaires pour que le site web fonctionne correctement et ne collectent aucune de vos données personnelles identifiables.
|
||||||
|
|
||||||
|
Les cookies de tierce partie utilisés sur notre site web servent principalement à comprendre les performances du site, à savoir comment vous interagissez avec notre site, à maintenir la sécurité de nos services, à diffuser des publicités pertinentes pour vous, et dans l’ensemble à vous offrir une meilleure expérience utilisateur et à accélérer vos interactions futures avec notre site.
|
||||||
|
|
||||||
|
## Types de cookies que nous utilisons
|
||||||
|
|
||||||
|
{{< cky-audit >}}
|
||||||
|
|
||||||
|
## Gérer les préférences des cookies
|
||||||
|
|
||||||
|
{{< cky-banner >}}
|
||||||
|
|
||||||
|
Vous pouvez modifier vos préférences en matière de cookies à tout moment en cliquant sur le bouton ci-dessus. Cela vous permettra de revoir la bannière de consentement aux cookies et de modifier vos préférences ou de retirer votre consentement immédiatement.
|
||||||
|
|
||||||
|
En plus de cela, les différents navigateurs offrent différentes méthodes pour bloquer et supprimer les cookies utilisés par les sites web. Vous pouvez modifier les paramètres de votre navigateur pour bloquer/supprimer les cookies. Vous trouverez ci-dessous les liens vers les documents de support sur la gestion et la suppression des cookies des principaux navigateurs web.
|
||||||
|
|
||||||
|
Chrome : https://support.google.com/accounts/answer/32050
|
||||||
|
|
||||||
|
Safari : https://support.apple.com/fr-fr/guide/safari/sfri11471/mac
|
||||||
|
|
||||||
|
Firefox : https://support.mozilla.org/fr/kb/effacer-cookies-donnees-sites-firefox
|
||||||
|
|
||||||
|
Internet Explorer : https://support.microsoft.com/fr-fr/topic/supprimer-les-fichiers-cookies-dans-internet-explorer-bca9446f-d873-78de-77ba-d42645fa52fc
|
||||||
|
|
||||||
|
Si vous utilisez un autre navigateur, veuillez consulter les documents d'assistance officiels de votre navigateur.
|
||||||
|
|
||||||
|
*Politique de Cookies générée par {{< link "https://www.cookieyes.com" >}}CookieYes - Générateur de Politique de Cookies{{< /link >}}.*
|
46
exampleSite/content/fr/privacy.md
Normal file
46
exampleSite/content/fr/privacy.md
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
---
|
||||||
|
title: Politique de Confidentialité
|
||||||
|
description: Politique de confidentialité de gethinode.com
|
||||||
|
date: 2024-09-19
|
||||||
|
layout: docs
|
||||||
|
---
|
||||||
|
<!-- markdownlint-disable MD036 -->
|
||||||
|
*Date d'entrée en vigueur : 19-Sep-2024*
|
||||||
|
|
||||||
|
Cette Politique de Confidentialité décrit les politiques de gethinode.com concernant la collecte, l'utilisation et la divulgation de vos informations que nous collectons lorsque vous utilisez notre site web (https://gethinode.com, désigné comme le « Service »). En accédant ou en utilisant le Service, vous consentez à la collecte, à l'utilisation et à la divulgation de vos informations conformément à cette Politique de Confidentialité. Si vous ne consentez pas à cela, veuillez ne pas accéder ou utiliser le Service.
|
||||||
|
|
||||||
|
Nous pouvons modifier cette Politique de Confidentialité à tout moment sans préavis préalable et publierons la Politique de Confidentialité révisée sur le Service. La Politique révisée sera effective 180 jours après sa publication sur le Service et votre accès ou utilisation continu(e) du Service après ce délai constituera votre acceptation de la Politique de Confidentialité révisée. Nous vous recommandons donc de consulter régulièrement cette page.
|
||||||
|
|
||||||
|
## Comment nous partageons vos informations
|
||||||
|
|
||||||
|
Nous ne transférerons pas vos informations personnelles à des tiers sans obtenir votre consentement, sauf dans les circonstances limitées décrites ci-dessous :
|
||||||
|
|
||||||
|
- Analyses
|
||||||
|
|
||||||
|
Nous demandons à ces tiers d'utiliser les informations personnelles que nous leur transférons uniquement aux fins pour lesquelles elles ont été transférées et de ne pas les conserver plus longtemps que nécessaire pour accomplir cet objectif.
|
||||||
|
|
||||||
|
Nous pouvons également divulguer vos informations personnelles pour les raisons suivantes : (1) pour se conformer aux lois, règlements, ordonnances judiciaires ou autres procédures légales applicables ; (2) pour faire respecter vos accords avec nous, y compris cette Politique de Confidentialité ; ou (3) pour répondre à des réclamations selon lesquelles votre utilisation du Service viole les droits de tiers. Si le Service ou notre société est fusionné ou acquis par une autre entreprise, vos informations seront l'un des actifs transférés au nouveau propriétaire.
|
||||||
|
|
||||||
|
## Vos droits
|
||||||
|
|
||||||
|
Selon les lois applicables, vous pouvez avoir le droit d'accéder à vos données personnelles, de les rectifier ou de les effacer, de recevoir une copie de vos données personnelles, de restreindre ou de vous opposer au traitement actif de vos données, de nous demander de partager (transférer) vos informations personnelles à une autre entité, de retirer tout consentement que vous nous avez donné pour traiter vos données, un droit de porter plainte auprès d'une autorité statutaire et d'autres droits pertinents en vertu des lois applicables. <!-- Pour exercer ces droits, vous pouvez nous écrire à privacy@gethinode.com. Nous répondrons à votre demande conformément aux lois applicables. -->
|
||||||
|
|
||||||
|
Notez que si vous ne nous autorisez pas à collecter ou traiter les informations personnelles requises, ou si vous retirez votre consentement pour traiter celles-ci pour les fins requises, vous pourriez ne pas être en mesure d'accéder ou d'utiliser les services pour lesquels vos informations ont été demandées.
|
||||||
|
|
||||||
|
## Cookies, etc.
|
||||||
|
|
||||||
|
Pour en savoir plus sur la manière dont nous utilisons ces technologies de suivi et vos choix à leur égard, veuillez consulter notre {{< link "cookies" >}}Politique/Paramètres des Cookies{{< /link >}}.
|
||||||
|
|
||||||
|
## Sécurité
|
||||||
|
|
||||||
|
La sécurité de vos informations est importante pour nous et nous utiliserons des mesures de sécurité raisonnables pour prévenir la perte, l'utilisation abusive ou l'altération non autorisée de vos informations sous notre contrôle. Cependant, compte tenu des risques inhérents, nous ne pouvons garantir une sécurité absolue et par conséquent, nous ne pouvons garantir la sécurité des informations que vous nous transmettez ; vous le faites à vos propres risques.
|
||||||
|
|
||||||
|
## Liens vers des tiers et utilisation de vos informations
|
||||||
|
|
||||||
|
Notre Service peut contenir des liens vers d'autres sites web qui ne sont pas exploités par nous. Cette Politique de Confidentialité ne couvre pas la politique de confidentialité et les autres pratiques de tout tiers, y compris tout tiers exploitant tout site ou service qui pourrait être accessible via un lien sur le Service. Nous vous conseillons fortement de consulter la politique de confidentialité de chaque site que vous visitez. Nous n'avons aucun contrôle sur le contenu, les politiques de confidentialité ou les pratiques des sites ou services de tiers et déclinons toute responsabilité à cet égard.
|
||||||
|
|
||||||
|
<!-- ## Responsable des plaintes / Protection des données
|
||||||
|
|
||||||
|
Si vous avez des questions ou des préoccupations concernant le traitement de vos informations dont nous disposons, vous pouvez nous envoyer un e-mail à privacy@gethinode.com. Nous répondrons à vos préoccupations conformément aux lois applicables. -->
|
||||||
|
|
||||||
|
*Politique de Confidentialité générée avec {{< link "https://www.cookieyes.com" >}}CookieYes{{< /link >}}.*
|
@@ -29,6 +29,6 @@ Overige functies:
|
|||||||
* Herbruikbare Bootstrap componenten via shortcodes en partials
|
* Herbruikbare Bootstrap componenten via shortcodes en partials
|
||||||
* Versiebeheer van documentatiepagina's, inclusief secundaire navigatie en selectie van versies
|
* Versiebeheer van documentatiepagina's, inclusief secundaire navigatie en selectie van versies
|
||||||
* Optimalisering van foto's voor meerdere schermafmetingen en resoluties
|
* Optimalisering van foto's voor meerdere schermafmetingen en resoluties
|
||||||
* Optimale zoekresultaten, met 100 punten voor SEO volgens [PageSpeed Insights]({{< param "links.pagespeed" >}})
|
* Optimale zoekresultaten, met 100 punten voor SEO volgens [PageSpeed Insights]({{% param "links.pagespeed" %}})
|
||||||
* Veilige communicatie, met een score van A+ volgens [Mozilla Observatory]({{< param "links.observatory" >}})
|
* Veilige communicatie, met een score van A+ volgens [Mozilla Observatory]({{% param "links.observatory" %}})
|
||||||
{.tickmark}
|
{.tickmark}
|
||||||
|
92
exampleSite/content/nl/blog/components.md
Normal file
92
exampleSite/content/nl/blog/components.md
Normal file
@@ -0,0 +1,92 @@
|
|||||||
|
---
|
||||||
|
author: Mark Dumay
|
||||||
|
title: Componenten
|
||||||
|
date: 2023-09-23
|
||||||
|
description: Gebruik shortcodes om diverse componenten vanuit een externe softwarebibliotheek toe te voegen.
|
||||||
|
tags: ["bootstrap", "shortcode"]
|
||||||
|
thumbnail:
|
||||||
|
url: img/puzzle.jpg
|
||||||
|
author: Ryoji Iwata
|
||||||
|
authorURL: https://unsplash.com/@ryoji__iwata
|
||||||
|
origin: Unsplash
|
||||||
|
originURL: https://unsplash.com/photos/5siQcvSxCP8
|
||||||
|
modules: ["leaflet", "lottie", "simple-datatables"]
|
||||||
|
---
|
||||||
|
|
||||||
|
Hinode bevat meerdere shortcodes naast de generieke Bootstrap elementen. Zie de [officiële documentatie]({{% param "links.hinode_docs" %}}) voor meer informatie.
|
||||||
|
|
||||||
|
## Animatie
|
||||||
|
|
||||||
|
Het volgende voorbeeld gebruikt een shortcode om een animatie te tonen, die afspeelt zodra je er met de muis overheen beweegt.
|
||||||
|
|
||||||
|
<!-- markdownlint-disable MD037 -->
|
||||||
|
{{< example lang="hugo" >}}
|
||||||
|
{{</* animation data="gatin.json" auto=false hover=true class="col-6 mx-auto" */>}}
|
||||||
|
{{< /example >}}
|
||||||
|
<!-- markdownlint-enable MD037 -->
|
||||||
|
|
||||||
|
## Gegevenstabellen
|
||||||
|
|
||||||
|
Het volgende voorbeeld gebruikt een shortcode om een responsieve tabel met geavanceerde mogelijkheden te tonen.
|
||||||
|
|
||||||
|
<!-- markdownlint-disable MD037 MD058 -->
|
||||||
|
{{< example lang="markdown" >}}
|
||||||
|
{{</* table sortable="true" paging="true" searchable="true" pagingOptionPerPage=5 */>}}
|
||||||
|
| # | Kop |
|
||||||
|
|-----|---------|
|
||||||
|
| 1. | Item 1 |
|
||||||
|
| 2. | Item 2 |
|
||||||
|
| 3. | Item 3 |
|
||||||
|
| 4. | Item 4 |
|
||||||
|
| 5. | Item 5 |
|
||||||
|
| 6. | Item 6 |
|
||||||
|
| 7. | Item 7 |
|
||||||
|
| 8. | Item 8 |
|
||||||
|
| 9. | Item 9 |
|
||||||
|
| 10. | Item 10 |
|
||||||
|
| 11. | Item 11 |
|
||||||
|
| 12. | Item 12 |
|
||||||
|
| 13. | Item 13 |
|
||||||
|
| 14. | Item 14 |
|
||||||
|
| 15. | Item 15 |
|
||||||
|
| 16. | Item 16 |
|
||||||
|
| 17. | Item 17 |
|
||||||
|
| 18. | Item 18 |
|
||||||
|
| 19. | Item 19 |
|
||||||
|
| 20. | Item 20 |
|
||||||
|
| 21. | Item 21 |
|
||||||
|
| 22. | Item 22 |
|
||||||
|
| 23. | Item 23 |
|
||||||
|
| 24. | Item 24 |
|
||||||
|
| 25. | Item 25 |
|
||||||
|
| 26. | Item 26 |
|
||||||
|
| 27. | Item 27 |
|
||||||
|
| 28. | Item 28 |
|
||||||
|
| 29. | Item 29 |
|
||||||
|
| 30. | Item 30 |
|
||||||
|
{{</* /table */>}}
|
||||||
|
{{< /example >}}
|
||||||
|
<!-- markdownlint-enable MD037 MD058 -->
|
||||||
|
|
||||||
|
## Formule (KaTeX)
|
||||||
|
|
||||||
|
Het volgende voorbeeld gebruikt Markdown om twee formules met behulp van KaTeX op de server te genereren.
|
||||||
|
|
||||||
|
{{< example lang="markdown" >}}
|
||||||
|
Dit is een inline $-b \pm \sqrt{b^2 - 4ac} \over 2a$ formule
|
||||||
|
|
||||||
|
Dit is geen inline formule:
|
||||||
|
|
||||||
|
$$x = a_0 + \frac{1}{a_1 + \frac{1}{a_2 + \frac{1}{a_3 + a_4}}}$$
|
||||||
|
$$\forall x \in X, \quad \exists y \leq \epsilon$$
|
||||||
|
{{< /example >}}
|
||||||
|
|
||||||
|
## Kaart
|
||||||
|
|
||||||
|
Het volgende voorbeeld gebruikt een shortcode om een interactieve kaart van Amsterdam te tonen.
|
||||||
|
|
||||||
|
<!-- markdownlint-disable MD037 -->
|
||||||
|
{{< example lang="hugo" >}}
|
||||||
|
{{</* map lat=52.377 long=4.90 zoom=13 popup="Amsterdam Central Station" popup-lat=52.378062 popup-long=4.900562 */>}}
|
||||||
|
{{< /example >}}
|
||||||
|
<!-- markdownlint-enable MD037 -->
|
63
exampleSite/data/server.toml
Normal file
63
exampleSite/data/server.toml
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
# toml-docs-start server-config
|
||||||
|
[[headers]]
|
||||||
|
for = "/**"
|
||||||
|
[headers.values]
|
||||||
|
Strict-Transport-Security = "max-age=31536000; includeSubDomains; preload"
|
||||||
|
X-Content-Type-Options = "nosniff"
|
||||||
|
X-XSS-Protection = "1; mode=block"
|
||||||
|
X-Frame-Options = "SAMEORIGIN"
|
||||||
|
Referrer-Policy = "strict-origin"
|
||||||
|
Permissions-Policy = """\
|
||||||
|
geolocation=(), \
|
||||||
|
midi=(), \
|
||||||
|
sync-xhr=(), \
|
||||||
|
microphone=(), \
|
||||||
|
camera=(), \
|
||||||
|
magnetometer=(), \
|
||||||
|
gyroscope=(), \
|
||||||
|
fullscreen=(), \
|
||||||
|
payment=() \
|
||||||
|
"""
|
||||||
|
cache-control = """\
|
||||||
|
max-age=0, \
|
||||||
|
no-cache, \
|
||||||
|
no-store, \
|
||||||
|
must-revalidate \
|
||||||
|
"""
|
||||||
|
Access-Control-Allow-Origin = "*"
|
||||||
|
Content-Security-Policy = """\
|
||||||
|
default-src 'none'; \
|
||||||
|
script-src 'self'; \
|
||||||
|
font-src 'self'; \
|
||||||
|
connect-src 'self'; \
|
||||||
|
img-src 'self'; \
|
||||||
|
style-src 'self'; \
|
||||||
|
base-uri 'self'; \
|
||||||
|
object-src 'none'; \
|
||||||
|
form-action 'self'; \
|
||||||
|
manifest-src 'self'; \
|
||||||
|
media-src 'self' \
|
||||||
|
"""
|
||||||
|
# toml-docs-end server-config
|
||||||
|
|
||||||
|
# toml-docs-start server-custom-404
|
||||||
|
[[redirects]]
|
||||||
|
from = '/fr/*'
|
||||||
|
to = '/fr/404.html'
|
||||||
|
status = 404
|
||||||
|
|
||||||
|
[[redirects]]
|
||||||
|
from = '/nl/*'
|
||||||
|
to = '/nl/404.html'
|
||||||
|
status = 404
|
||||||
|
|
||||||
|
[[redirects]]
|
||||||
|
from = '/en/*'
|
||||||
|
to = '/en/404.html'
|
||||||
|
status = 404
|
||||||
|
|
||||||
|
[[redirects]] # Default language should be last.
|
||||||
|
from = '/*'
|
||||||
|
to = '/en/404.html'
|
||||||
|
status = 404
|
||||||
|
# toml-docs-end server-custom-404
|
@@ -2,3 +2,6 @@ module github.com/gethinode/hinode/exampleSite
|
|||||||
|
|
||||||
go 1.19
|
go 1.19
|
||||||
|
|
||||||
|
require (
|
||||||
|
github.com/gethinode/mod-cookieyes/v2 v2.2.4 // indirect
|
||||||
|
)
|
||||||
|
@@ -1,14 +1,2 @@
|
|||||||
github.com/gethinode/hinode v0.22.5 h1:zpjSDgWQVbq4BjPduxwexQB18gawFeinzPkaRRTs2Tg=
|
github.com/gethinode/mod-cookieyes/v2 v2.2.4 h1:MxKKNSpX2cb9+4l3mH/xfZUqiJ1buaGLj0AFRnPci5M=
|
||||||
github.com/gethinode/hinode v0.22.5/go.mod h1:hsskrlBRnTbpCjrDtGbK8C1VYGML7ezHtCDGDiYL2mQ=
|
github.com/gethinode/mod-cookieyes/v2 v2.2.4/go.mod h1:tULb7D7CoTycGUyL7ryqHJKaX11XuL2SN+XwP7/DI0Y=
|
||||||
github.com/gethinode/mod-bootstrap v1.2.2 h1:Q8E04OKWr9owk7nhQ/NBukUgSFhsECxZsOLEaf5oeiQ=
|
|
||||||
github.com/gethinode/mod-bootstrap v1.2.2/go.mod h1:DcpPc2cNaXUPGEvhD7npuEEPA7573NvakTlrwFbyjr8=
|
|
||||||
github.com/gethinode/mod-flexsearch v1.9.0 h1:AE+w7QeZTxh36JNTG+CASDLxaqlCZKn+EUD6ulnPGak=
|
|
||||||
github.com/gethinode/mod-flexsearch v1.9.0/go.mod h1:L8hrnpupx27cez2ObMX8gWnhbW6qss4HGH1Ea4UaBRQ=
|
|
||||||
github.com/gethinode/mod-fontawesome v1.8.1 h1:iyvULrpaGizQoI5Vl9WjFYcMGWefdyG90NGK2UKax+k=
|
|
||||||
github.com/gethinode/mod-fontawesome v1.8.1/go.mod h1:xBKsZH3WJtMOItZVlp9SbO51uaBy6IbvUZSKpNu3b6Y=
|
|
||||||
github.com/gethinode/mod-katex v1.0.5 h1:AVhcTINYory0ygChQERf8PcyJkbT1oqhmLRF6ESnWOY=
|
|
||||||
github.com/gethinode/mod-katex v1.0.5/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
|
||||||
github.com/gethinode/mod-leaflet v1.0.0 h1:HdnWafOGkkK1hYGfqLYF3pp9dAFS/caxlzML9sO1rCc=
|
|
||||||
github.com/gethinode/mod-leaflet v1.0.0/go.mod h1:Ei0x9WiL7Dbi4JeG6yI1CE63bT1QJ8sKi67Jea1wFSE=
|
|
||||||
github.com/gethinode/mod-lottie v1.4.3 h1:IKZO8a4yQyPKUwZ6POsZRIH/B++yEzXDe5HxrFF79KA=
|
|
||||||
github.com/gethinode/mod-lottie v1.4.3/go.mod h1:nt4wLnDFIhjBGRMuQJJ2bH80VREpbcsBUsdO6uWXjLs=
|
|
||||||
|
@@ -1,18 +1,9 @@
|
|||||||
github.com/airbnb/lottie-web v5.12.2+incompatible h1:Ldogtlhiucf7mMsgisyxSBY0qunV44+lpa9Icy2KoQc=
|
|
||||||
github.com/airbnb/lottie-web v5.12.2+incompatible/go.mod h1:nTss557UK9FGnp8QYlCMO29tjUHwbdAHG/DprbGfHGE=
|
|
||||||
github.com/gethinode/hinode v0.22.5 h1:zpjSDgWQVbq4BjPduxwexQB18gawFeinzPkaRRTs2Tg=
|
github.com/gethinode/hinode v0.22.5 h1:zpjSDgWQVbq4BjPduxwexQB18gawFeinzPkaRRTs2Tg=
|
||||||
github.com/gethinode/hinode v0.22.5/go.mod h1:hsskrlBRnTbpCjrDtGbK8C1VYGML7ezHtCDGDiYL2mQ=
|
github.com/gethinode/hinode v0.22.5/go.mod h1:hsskrlBRnTbpCjrDtGbK8C1VYGML7ezHtCDGDiYL2mQ=
|
||||||
github.com/gethinode/mod-flexsearch v1.8.1 h1:xwPvmmxd8Tdyxp8/rnd9KRGqIDtZs/YwAQJ1i9oQMiM=
|
github.com/gethinode/mod-cookieyes v1.0.2 h1:WL9sjpYKjkV+jRKIrm6H82UpthQjFksvKGptW6HD/QU=
|
||||||
github.com/gethinode/mod-flexsearch v1.8.1/go.mod h1:L8hrnpupx27cez2ObMX8gWnhbW6qss4HGH1Ea4UaBRQ=
|
github.com/gethinode/mod-cookieyes v1.0.2/go.mod h1:VrBUKm5apop6KIb+R8eRqvlf3AAPnv5aMajL0RorIjY=
|
||||||
github.com/gethinode/mod-fontawesome v1.8.0 h1:YEuCmvCdzcemF1eFK35Wnp1asKKO3/xbxGArnjq6PRY=
|
github.com/gethinode/mod-cookieyes/v2 v2.0.3 h1:o5PAAOjx8baRcSkhTAQuZ+hX9cK8oWjeC3sYxt1DT2c=
|
||||||
github.com/gethinode/mod-fontawesome v1.8.0/go.mod h1:uvuC2YL8mdXNp6NRzFOu4TWsHvtY9AZ8YxJkF23/M/8=
|
github.com/gethinode/mod-cookieyes/v2 v2.0.4 h1:QgYSD3S23351e7xEeQb+Mon+e+I6RbnnrTyvpxBST1A=
|
||||||
github.com/gethinode/mod-leaflet v0.4.0 h1:Xc6c1UTf4m1saQLFfFWT5sEpwj25xVGuS8csGC82UUI=
|
github.com/gethinode/mod-cookieyes/v2 v2.0.4/go.mod h1:tULb7D7CoTycGUyL7ryqHJKaX11XuL2SN+XwP7/DI0Y=
|
||||||
github.com/gethinode/mod-leaflet v0.4.0/go.mod h1:yr+bUKAstifdB16mbYh69OayAmgPOlNUubAmVn5eL2M=
|
github.com/gethinode/mod-cookieyes/v2 v2.1.2 h1:hzGCbRbpNAVkLr+jFWpAQaXHG0lgK+KgIpaZYsI1J+U=
|
||||||
github.com/gethinode/mod-lottie v1.4.1 h1:RzCjYsxFPqyBsYAcdPeUP0rvF+hD9eEl7NrxuaRiKQQ=
|
github.com/gethinode/mod-cookieyes/v2 v2.1.2/go.mod h1:tULb7D7CoTycGUyL7ryqHJKaX11XuL2SN+XwP7/DI0Y=
|
||||||
github.com/gethinode/mod-lottie v1.4.1/go.mod h1:QjKlEmYbekrNGwa9EdFlPcXxwWWcraJUQ6xIL+syA60=
|
|
||||||
github.com/gethinode/mod-utils v1.0.2 h1:0b3i+/bBHY1Td9N6khDbL1nf3d5HGc4QzI4BbEWHoU4=
|
|
||||||
github.com/gethinode/mod-utils v1.0.2/go.mod h1:ONJm3pHCq7nvaPNjusLZNCeCbhOhSBH4HVKHwK1FdYE=
|
|
||||||
github.com/nextapps-de/flexsearch v0.0.0-20240108021025-afd75f742f22 h1:re7L8FxbXQpnX8BgzkdUnDpsUmloGNyLmiy2ZCln8pg=
|
|
||||||
github.com/nextapps-de/flexsearch v0.0.0-20240108021025-afd75f742f22/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
|
||||||
github.com/twbs/bootstrap v5.3.2+incompatible h1:tuiO5acc6xnZUR77Sbi5aKWXxjYxbmsSbJwYrhAKoQQ=
|
|
||||||
github.com/twbs/bootstrap v5.3.2+incompatible/go.mod h1:fZTSrkpSf0/HkL0IIJzvVspTt1r9zuf7XlZau8kpcY0=
|
|
||||||
|
@@ -3,8 +3,8 @@
|
|||||||
"tags": [
|
"tags": [
|
||||||
"a",
|
"a",
|
||||||
"abbr",
|
"abbr",
|
||||||
|
"annotation",
|
||||||
"body",
|
"body",
|
||||||
"br",
|
|
||||||
"button",
|
"button",
|
||||||
"code",
|
"code",
|
||||||
"div",
|
"div",
|
||||||
@@ -14,8 +14,6 @@
|
|||||||
"footer",
|
"footer",
|
||||||
"form",
|
"form",
|
||||||
"h2",
|
"h2",
|
||||||
"h3",
|
|
||||||
"h5",
|
|
||||||
"head",
|
"head",
|
||||||
"hr",
|
"hr",
|
||||||
"html",
|
"html",
|
||||||
@@ -23,11 +21,22 @@
|
|||||||
"iframe",
|
"iframe",
|
||||||
"img",
|
"img",
|
||||||
"input",
|
"input",
|
||||||
|
"ins",
|
||||||
"label",
|
"label",
|
||||||
"li",
|
"li",
|
||||||
"link",
|
"link",
|
||||||
"mark",
|
"mark",
|
||||||
|
"math",
|
||||||
"meta",
|
"meta",
|
||||||
|
"mfrac",
|
||||||
|
"mi",
|
||||||
|
"mn",
|
||||||
|
"mo",
|
||||||
|
"mrow",
|
||||||
|
"mspace",
|
||||||
|
"msqrt",
|
||||||
|
"msub",
|
||||||
|
"msup",
|
||||||
"nav",
|
"nav",
|
||||||
"noscript",
|
"noscript",
|
||||||
"ol",
|
"ol",
|
||||||
@@ -35,12 +44,14 @@
|
|||||||
"path",
|
"path",
|
||||||
"pre",
|
"pre",
|
||||||
"script",
|
"script",
|
||||||
|
"semantics",
|
||||||
"small",
|
"small",
|
||||||
"span",
|
"span",
|
||||||
"strong",
|
"strong",
|
||||||
"sub",
|
"sub",
|
||||||
"sup",
|
"sup",
|
||||||
"svg",
|
"svg",
|
||||||
|
"symbol",
|
||||||
"table",
|
"table",
|
||||||
"tbody",
|
"tbody",
|
||||||
"td",
|
"td",
|
||||||
@@ -53,6 +64,7 @@
|
|||||||
"use"
|
"use"
|
||||||
],
|
],
|
||||||
"classes": [
|
"classes": [
|
||||||
|
"%!s(<nil>)",
|
||||||
"accordion",
|
"accordion",
|
||||||
"accordion-body",
|
"accordion-body",
|
||||||
"accordion-button",
|
"accordion-button",
|
||||||
@@ -131,6 +143,8 @@
|
|||||||
"carousel-item",
|
"carousel-item",
|
||||||
"checkbox",
|
"checkbox",
|
||||||
"chroma",
|
"chroma",
|
||||||
|
"cky-audit-table-element",
|
||||||
|
"cky-banner-element",
|
||||||
"col",
|
"col",
|
||||||
"col-10",
|
"col-10",
|
||||||
"col-12",
|
"col-12",
|
||||||
@@ -162,6 +176,8 @@
|
|||||||
"container-fluid",
|
"container-fluid",
|
||||||
"container-xxl",
|
"container-xxl",
|
||||||
"custom",
|
"custom",
|
||||||
|
"d--block",
|
||||||
|
"d--none",
|
||||||
"d-block",
|
"d-block",
|
||||||
"d-flex",
|
"d-flex",
|
||||||
"d-grid",
|
"d-grid",
|
||||||
@@ -186,7 +202,6 @@
|
|||||||
"dropdown-menu-end",
|
"dropdown-menu-end",
|
||||||
"dropdown-toggle",
|
"dropdown-toggle",
|
||||||
"emphasis",
|
"emphasis",
|
||||||
"emphasis-dark",
|
|
||||||
"end-0",
|
"end-0",
|
||||||
"fa",
|
"fa",
|
||||||
"fa-10x",
|
"fa-10x",
|
||||||
@@ -194,6 +209,7 @@
|
|||||||
"fa-2xs",
|
"fa-2xs",
|
||||||
"fa-4x",
|
"fa-4x",
|
||||||
"fa-activity",
|
"fa-activity",
|
||||||
|
"fa-angle-left",
|
||||||
"fa-arrow-left",
|
"fa-arrow-left",
|
||||||
"fa-arrow-right",
|
"fa-arrow-right",
|
||||||
"fa-bootstrap",
|
"fa-bootstrap",
|
||||||
@@ -237,6 +253,7 @@
|
|||||||
"font-monospace",
|
"font-monospace",
|
||||||
"footer",
|
"footer",
|
||||||
"form-control",
|
"form-control",
|
||||||
|
"fs-2",
|
||||||
"fs-3",
|
"fs-3",
|
||||||
"fs-5",
|
"fs-5",
|
||||||
"fs-6",
|
"fs-6",
|
||||||
@@ -269,6 +286,7 @@
|
|||||||
"justify-content-center",
|
"justify-content-center",
|
||||||
"justify-content-end",
|
"justify-content-end",
|
||||||
"justify-content-start",
|
"justify-content-start",
|
||||||
|
"katex",
|
||||||
"label",
|
"label",
|
||||||
"lead",
|
"lead",
|
||||||
"leaflet-map",
|
"leaflet-map",
|
||||||
@@ -301,6 +319,7 @@
|
|||||||
"mt-4",
|
"mt-4",
|
||||||
"mt-5",
|
"mt-5",
|
||||||
"mt-auto",
|
"mt-auto",
|
||||||
|
"mt-md-0",
|
||||||
"multi-docs-collapse-15",
|
"multi-docs-collapse-15",
|
||||||
"multi-file-collapse-1",
|
"multi-file-collapse-1",
|
||||||
"mx-auto",
|
"mx-auto",
|
||||||
@@ -330,11 +349,6 @@
|
|||||||
"navbar-toggler",
|
"navbar-toggler",
|
||||||
"next",
|
"next",
|
||||||
"no-js",
|
"no-js",
|
||||||
"offcanvas",
|
|
||||||
"offcanvas-body",
|
|
||||||
"offcanvas-header",
|
|
||||||
"offcanvas-start",
|
|
||||||
"offcanvas-title",
|
|
||||||
"order-0",
|
"order-0",
|
||||||
"order-1",
|
"order-1",
|
||||||
"order-first",
|
"order-first",
|
||||||
@@ -345,7 +359,6 @@
|
|||||||
"p-2",
|
"p-2",
|
||||||
"p-3",
|
"p-3",
|
||||||
"p-4",
|
"p-4",
|
||||||
"pb-2",
|
|
||||||
"pb-3",
|
"pb-3",
|
||||||
"pb-4",
|
"pb-4",
|
||||||
"pb-5",
|
"pb-5",
|
||||||
@@ -361,6 +374,7 @@
|
|||||||
"ps-1",
|
"ps-1",
|
||||||
"ps-3",
|
"ps-3",
|
||||||
"pt-1",
|
"pt-1",
|
||||||
|
"pt-4",
|
||||||
"pt-5",
|
"pt-5",
|
||||||
"pt-md-3",
|
"pt-md-3",
|
||||||
"ptw-3",
|
"ptw-3",
|
||||||
@@ -457,6 +471,8 @@
|
|||||||
"toast-header",
|
"toast-header",
|
||||||
"toc",
|
"toc",
|
||||||
"toc-button",
|
"toc-button",
|
||||||
|
"toc-item",
|
||||||
|
"toc-level-1",
|
||||||
"toc-panel",
|
"toc-panel",
|
||||||
"toc-sidebar",
|
"toc-sidebar",
|
||||||
"toggler-icon",
|
"toggler-icon",
|
||||||
@@ -466,14 +482,13 @@
|
|||||||
"top-bar",
|
"top-bar",
|
||||||
"translate-middle",
|
"translate-middle",
|
||||||
"translate-middle-y",
|
"translate-middle-y",
|
||||||
|
"video-embedded",
|
||||||
"visually-hidden",
|
"visually-hidden",
|
||||||
"vr",
|
"vr",
|
||||||
"w-100",
|
"w-100",
|
||||||
"w-50",
|
"w-50"
|
||||||
"youtube-embedded"
|
|
||||||
],
|
],
|
||||||
"ids": [
|
"ids": [
|
||||||
"TableOfContents",
|
|
||||||
"abbr",
|
"abbr",
|
||||||
"accordion",
|
"accordion",
|
||||||
"accordion-0",
|
"accordion-0",
|
||||||
@@ -486,6 +501,7 @@
|
|||||||
"accordéon",
|
"accordéon",
|
||||||
"alert",
|
"alert",
|
||||||
"alerte",
|
"alerte",
|
||||||
|
"animatie",
|
||||||
"animation",
|
"animation",
|
||||||
"badge",
|
"badge",
|
||||||
"barre-de-navigation",
|
"barre-de-navigation",
|
||||||
@@ -494,7 +510,6 @@
|
|||||||
"body-file-collapse-1",
|
"body-file-collapse-1",
|
||||||
"bouton",
|
"bouton",
|
||||||
"breadcrumb",
|
"breadcrumb",
|
||||||
"btn-webshare",
|
|
||||||
"button",
|
"button",
|
||||||
"button-group",
|
"button-group",
|
||||||
"card",
|
"card",
|
||||||
@@ -508,11 +523,45 @@
|
|||||||
"collapse",
|
"collapse",
|
||||||
"collapse-1",
|
"collapse-1",
|
||||||
"command-prompt",
|
"command-prompt",
|
||||||
|
"comment-nous-partageons-vos-informations",
|
||||||
|
"comment-utilisons-nous-les-cookies-",
|
||||||
|
"cookies-etc",
|
||||||
|
"custom-activity",
|
||||||
"data-tables",
|
"data-tables",
|
||||||
"docs",
|
"docs",
|
||||||
"documentation",
|
"documentation",
|
||||||
"example",
|
"example",
|
||||||
"exemple",
|
"exemple",
|
||||||
|
"fa-face-frown",
|
||||||
|
"fa-square-check",
|
||||||
|
"fab-bootstrap",
|
||||||
|
"fab-docker",
|
||||||
|
"fab-facebook",
|
||||||
|
"fab-github",
|
||||||
|
"fab-linkedin",
|
||||||
|
"fab-medium",
|
||||||
|
"fab-whatsapp",
|
||||||
|
"fab-x-twitter",
|
||||||
|
"fas-angle-left",
|
||||||
|
"fas-angle-right",
|
||||||
|
"fas-angles-left",
|
||||||
|
"fas-angles-right",
|
||||||
|
"fas-arrow-left",
|
||||||
|
"fas-arrow-right",
|
||||||
|
"fas-circle-check",
|
||||||
|
"fas-code",
|
||||||
|
"fas-ellipsis",
|
||||||
|
"fas-globe",
|
||||||
|
"fas-heart",
|
||||||
|
"fas-house",
|
||||||
|
"fas-link",
|
||||||
|
"fas-magnifying-glass",
|
||||||
|
"fas-moon",
|
||||||
|
"fas-rocket",
|
||||||
|
"fas-share-nodes",
|
||||||
|
"fas-sort",
|
||||||
|
"fas-sun",
|
||||||
|
"fas-up-right-from-square",
|
||||||
"fichier",
|
"fichier",
|
||||||
"fil-dariane",
|
"fil-dariane",
|
||||||
"file",
|
"file",
|
||||||
@@ -520,29 +569,38 @@
|
|||||||
"footer-file-collapse-1",
|
"footer-file-collapse-1",
|
||||||
"formula-katex",
|
"formula-katex",
|
||||||
"formule-katex",
|
"formule-katex",
|
||||||
|
"gegevenstabellen",
|
||||||
"groupe-de-boutons",
|
"groupe-de-boutons",
|
||||||
"groupe-de-cartes",
|
"groupe-de-cartes",
|
||||||
|
"gérer-les-préférences-des-cookies",
|
||||||
|
"how-do-we-use-cookies",
|
||||||
|
"how-we-share-your-information",
|
||||||
"icon",
|
"icon",
|
||||||
"image",
|
"image",
|
||||||
"imagekitio",
|
"imagekitio",
|
||||||
"imgix",
|
"imgix",
|
||||||
"indicateur-de-chargement",
|
"indicateur-de-chargement",
|
||||||
"infobulle",
|
"infobulle",
|
||||||
|
"ins",
|
||||||
"invite-de-commandes",
|
"invite-de-commandes",
|
||||||
|
"kaart",
|
||||||
|
"language-selector",
|
||||||
"leaflet-map-0",
|
"leaflet-map-0",
|
||||||
"lien",
|
"lien",
|
||||||
|
"liens-vers-des-tiers-et-utilisation-de-vos-informations",
|
||||||
"link",
|
"link",
|
||||||
"lottie-animation-0",
|
"lottie-animation-0",
|
||||||
|
"manage-cookie-preferences",
|
||||||
"map",
|
"map",
|
||||||
"mark",
|
"mark",
|
||||||
"nav",
|
"nav",
|
||||||
"nav-0",
|
|
||||||
"nav-0-0",
|
"nav-0-0",
|
||||||
"nav-0-1",
|
"nav-0-1",
|
||||||
"nav-0-2",
|
"nav-0-2",
|
||||||
"nav-0-btn-0",
|
"nav-0-btn-0",
|
||||||
"nav-0-btn-1",
|
"nav-0-btn-1",
|
||||||
"nav-0-btn-2",
|
"nav-0-btn-2",
|
||||||
|
"nav-nav-0",
|
||||||
"navbar",
|
"navbar",
|
||||||
"navbar-0-collapse",
|
"navbar-0-collapse",
|
||||||
"navbar-mode",
|
"navbar-mode",
|
||||||
@@ -550,19 +608,21 @@
|
|||||||
"navbar-sample-collapse",
|
"navbar-sample-collapse",
|
||||||
"navigation",
|
"navigation",
|
||||||
"notification",
|
"notification",
|
||||||
"offcanvas-label",
|
|
||||||
"offcanvass-sidebar",
|
|
||||||
"persona",
|
"persona",
|
||||||
"projecten",
|
"projecten",
|
||||||
"projects",
|
"projects",
|
||||||
"projets",
|
"projets",
|
||||||
"publication",
|
"publication",
|
||||||
|
"que-sont-les-cookies-",
|
||||||
"release",
|
"release",
|
||||||
"réduire",
|
"réduire",
|
||||||
|
"security",
|
||||||
"spinner",
|
"spinner",
|
||||||
"sub",
|
"sub",
|
||||||
"sup",
|
"sup",
|
||||||
|
"sécurité",
|
||||||
"table",
|
"table",
|
||||||
|
"third-party-links--use-of-your-information",
|
||||||
"timeline",
|
"timeline",
|
||||||
"toast",
|
"toast",
|
||||||
"toast-container",
|
"toast-container",
|
||||||
@@ -572,7 +632,13 @@
|
|||||||
"toast-message-email-4",
|
"toast-message-email-4",
|
||||||
"toc-collapse",
|
"toc-collapse",
|
||||||
"tooltip",
|
"tooltip",
|
||||||
"youtube"
|
"types-de-cookies-que-nous-utilisons",
|
||||||
|
"types-of-cookies-we-use",
|
||||||
|
"video",
|
||||||
|
"vidéo",
|
||||||
|
"vos-droits",
|
||||||
|
"what-are-cookies",
|
||||||
|
"your-rights"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
80
exampleSite/layouts/_default/baseof.html
Normal file
80
exampleSite/layouts/_default/baseof.html
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
{{- /* Set version-aware sidebar menu */ -}}
|
||||||
|
{{- $version := partial "utilities/GetVersion.html" (dict "page" . "base" true) -}}
|
||||||
|
{{- $.Scratch.Set "version" $version -}}
|
||||||
|
{{ with partial "utilities/GetMenu" (dict "page" . "version" $version) }}{{ $.Scratch.Set "sidebar" . }}{{ end }}
|
||||||
|
|
||||||
|
{{- /* Validate if current version is latest */ -}}
|
||||||
|
{{- if and site.Params.docs.checkVersion $version -}}
|
||||||
|
{{- if ne $version "latest" -}}
|
||||||
|
{{- if partial "utilities/IsOlder" (dict "current" $version) -}}
|
||||||
|
{{- $.Scratch.Set "pageAlertMsg" (T "newerVersionAlert" site.Title) -}}
|
||||||
|
{{- $.Scratch.Set "pageAlertURL" (or site.Params.docs.latestURL site.baseURL) -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{- /* Initialize module configuration */ -}}
|
||||||
|
{{- $modules := partialCached "utilities/InitModules.html" . -}}
|
||||||
|
{{- $.Scratch.Set "modules" $modules -}}
|
||||||
|
|
||||||
|
{{- $fullCover := or (or (and .IsHome .Site.Params.home.fullCover) .Page.Params.fullCover) .Site.Params.main.footerBelowFold }}
|
||||||
|
{{- $.Scratch.Set "fullCover" $fullCover -}}
|
||||||
|
|
||||||
|
{{- /* Define section headings */ -}}
|
||||||
|
{{- $loading := "" -}}
|
||||||
|
{{- if $fullCover }}{{ $loading = .Site.Params.main.loading }}{{ end -}}
|
||||||
|
{{ $sections := partial "utilities/GetSections.html" (dict "page" . "loading" $loading) }}
|
||||||
|
{{- $.Scratch.Set "sections" $sections -}}
|
||||||
|
|
||||||
|
{{- /* Define main breakpoint */ -}}
|
||||||
|
{{- $.Scratch.Set "breakpoint" (partialCached "utilities/GetBreakpoint.html" .) }}
|
||||||
|
|
||||||
|
{{- /* Define base URL */ -}}
|
||||||
|
{{ $lang := site.LanguageCode | default site.Language.Lang }}
|
||||||
|
{{ $.Scratch.Set "baseURL" (strings.TrimSuffix (printf "%s/" $lang) site.Home.RelPermalink) }}
|
||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="{{ .Site.Language.Lang }}" class="no-js">
|
||||||
|
<head>
|
||||||
|
{{- partial "footer/scripts.html" (dict "page" . "type" "critical") -}}
|
||||||
|
{{ block "head" . }}{{ end -}}
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class="d-flex flex-column min-vh-100">
|
||||||
|
<div class="d-flex flex-column {{ if $fullCover }} fullscreen{{ end }}{{ if .IsHome }} {{ .Site.Params.home.style }}{{ end }}">
|
||||||
|
{{- partial "assets/navbar.html" (dict
|
||||||
|
"page" .
|
||||||
|
"fixed" site.Params.navigation.fixed
|
||||||
|
"overlay" site.Params.navigation.overlay
|
||||||
|
"overlayMode" site.Params.navigation.overlayMode
|
||||||
|
"color" site.Params.navigation.color
|
||||||
|
"style" (default "light" site.Params.navigation.style)
|
||||||
|
"size" (default "md" site.Params.navigation.size))
|
||||||
|
-}}
|
||||||
|
<div class="main-content">
|
||||||
|
{{ block "featured" . }}{{ end -}}
|
||||||
|
</div>
|
||||||
|
{{ if .Site.Params.main.footerBelowFold }}
|
||||||
|
{{ block "main" . }}{{ end -}}
|
||||||
|
{{ end }}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{{ if not .Site.Params.main.footerBelowFold }}
|
||||||
|
{{ block "main" . }}{{ end -}}
|
||||||
|
{{- partial "footer/social.html" . -}}
|
||||||
|
{{- partial "footer/footer.html" . -}}
|
||||||
|
{{ end }}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{{ if .Site.Params.main.footerBelowFold }}
|
||||||
|
{{- partial "footer/social.html" . -}}
|
||||||
|
{{- partial "footer/footer.html" . -}}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{- partial "footer/toast-container.html" . -}}
|
||||||
|
{{- partial "assets/symbols.html" . -}}
|
||||||
|
{{- partialCached "footer/scripts.html" (dict "page" .) -}}
|
||||||
|
{{- partial "footer/scripts.html" (dict "page" . "type" "optional") -}}
|
||||||
|
</body>
|
||||||
|
</html>
|
15
exampleSite/layouts/partials/footer/footer.html
Normal file
15
exampleSite/layouts/partials/footer/footer.html
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<footer class="container-fluid footer text-center p-3">
|
||||||
|
<div class="container-xxl text-center">
|
||||||
|
<small>
|
||||||
|
{{- $copyright := printf "%s © %s %s %s." (T "copyright") (dateFormat "2006" now) .Site.Title (T "rights") }}
|
||||||
|
{{ cond (gt (len .Site.Copyright) 0) .Site.Copyright $copyright }}
|
||||||
|
{{ .Site.Params.footer.license | safeHTML }} |
|
||||||
|
{{ partial "assets/link.html" (dict "destination" "/en/privacy" "text" (T "privacy") "class" "link-bg-footer" "page" .Page) }} |
|
||||||
|
{{ partial "assets/link.html" (dict "destination" "/en/cookies" "text" (T "cookies") "class" "link-bg-footer" "page" .Page) }} |
|
||||||
|
{{ if .Site.Params.main.endorse }}
|
||||||
|
{{ $link := partial "assets/link.html" (dict "destination" (index site.Params.links "hinode") "text" "Hinode" "class" "link-bg-footer" "page" .Page) }}
|
||||||
|
{{ T "poweredBy" $link | safeHTML }}
|
||||||
|
{{ end }}
|
||||||
|
</small>
|
||||||
|
</div>
|
||||||
|
</footer>
|
18
go.mod
18
go.mod
@@ -4,14 +4,16 @@ go 1.19
|
|||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/airbnb/lottie-web v5.12.2+incompatible // indirect
|
github.com/airbnb/lottie-web v5.12.2+incompatible // indirect
|
||||||
github.com/gethinode/mod-bootstrap v1.3.1 // indirect
|
github.com/gethinode/mod-bootstrap v1.3.2 // indirect
|
||||||
github.com/gethinode/mod-flexsearch/v2 v2.0.1 // indirect
|
github.com/gethinode/mod-csp v1.0.7 // indirect
|
||||||
github.com/gethinode/mod-fontawesome v1.9.1 // indirect
|
github.com/gethinode/mod-flexsearch/v2 v2.1.0 // indirect
|
||||||
github.com/gethinode/mod-katex v1.1.1 // indirect
|
github.com/gethinode/mod-fontawesome v1.10.1 // indirect
|
||||||
github.com/gethinode/mod-leaflet v1.1.1 // indirect
|
github.com/gethinode/mod-google-analytics v1.3.1 // indirect
|
||||||
github.com/gethinode/mod-lottie v1.5.6 // indirect
|
github.com/gethinode/mod-katex v1.1.3 // indirect
|
||||||
github.com/gethinode/mod-simple-datatables v1.0.6 // indirect
|
github.com/gethinode/mod-leaflet v1.2.1 // indirect
|
||||||
github.com/gethinode/mod-utils/v2 v2.3.10 // indirect
|
github.com/gethinode/mod-lottie v1.5.13 // indirect
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.7 // indirect
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.10.0 // indirect
|
||||||
github.com/nextapps-de/flexsearch v0.0.0-20240501124520-961c3ae84a87 // indirect
|
github.com/nextapps-de/flexsearch v0.0.0-20240501124520-961c3ae84a87 // indirect
|
||||||
github.com/twbs/bootstrap v5.3.3+incompatible // indirect
|
github.com/twbs/bootstrap v5.3.3+incompatible // indirect
|
||||||
)
|
)
|
||||||
|
132
go.sum
132
go.sum
@@ -24,6 +24,24 @@ github.com/gethinode/mod-bootstrap v1.3.0 h1:UxNmXgXo7gA8C8z1ar47+tSccmKYpaYBBN+
|
|||||||
github.com/gethinode/mod-bootstrap v1.3.0/go.mod h1:CL9IDot6nbXIWJYE/KxfsTdYYEJIGL17BXbAYPn+wVQ=
|
github.com/gethinode/mod-bootstrap v1.3.0/go.mod h1:CL9IDot6nbXIWJYE/KxfsTdYYEJIGL17BXbAYPn+wVQ=
|
||||||
github.com/gethinode/mod-bootstrap v1.3.1 h1:ZUX72St0WZ5tyXpEPBJlayX/dmCH3cGErzsozkUKCok=
|
github.com/gethinode/mod-bootstrap v1.3.1 h1:ZUX72St0WZ5tyXpEPBJlayX/dmCH3cGErzsozkUKCok=
|
||||||
github.com/gethinode/mod-bootstrap v1.3.1/go.mod h1:CL9IDot6nbXIWJYE/KxfsTdYYEJIGL17BXbAYPn+wVQ=
|
github.com/gethinode/mod-bootstrap v1.3.1/go.mod h1:CL9IDot6nbXIWJYE/KxfsTdYYEJIGL17BXbAYPn+wVQ=
|
||||||
|
github.com/gethinode/mod-bootstrap v1.3.2 h1:mf9Qgr+xHZeHjZGYFdurETfdEKKldB158fpjH0GoaNU=
|
||||||
|
github.com/gethinode/mod-bootstrap v1.3.2/go.mod h1:CL9IDot6nbXIWJYE/KxfsTdYYEJIGL17BXbAYPn+wVQ=
|
||||||
|
github.com/gethinode/mod-csp v1.0.0 h1:Obp0MVMBjIPZbKDh6Ejl5pImDG7yERMLf2or9UVnwPA=
|
||||||
|
github.com/gethinode/mod-csp v1.0.0/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||||
|
github.com/gethinode/mod-csp v1.0.1 h1:IUUwPc41UNw7DAFuJ75nNPzhkPExenxXU7susdLaxdQ=
|
||||||
|
github.com/gethinode/mod-csp v1.0.1/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||||
|
github.com/gethinode/mod-csp v1.0.2 h1:KX8EeoCGbHhGSo5r0YIa9BmPZ6S6v7L9CChTejREkK4=
|
||||||
|
github.com/gethinode/mod-csp v1.0.2/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||||
|
github.com/gethinode/mod-csp v1.0.3 h1:tRmnuVZ3UpCc9HR8qsAwbU0OJ/UsNVSbse0SZuwGcCg=
|
||||||
|
github.com/gethinode/mod-csp v1.0.3/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||||
|
github.com/gethinode/mod-csp v1.0.4 h1:ChI+DMkkkCF5tKs+K9VSqdsXPS01/QANQiJ2LoJp10o=
|
||||||
|
github.com/gethinode/mod-csp v1.0.4/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||||
|
github.com/gethinode/mod-csp v1.0.5 h1:Ypdzw26iQ9/4sAgHvwFY1mg/EMoLrcI2knvVmHq2Ffs=
|
||||||
|
github.com/gethinode/mod-csp v1.0.5/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||||
|
github.com/gethinode/mod-csp v1.0.6 h1:ufEKQldQe9ZCXbENTpwqVlYnPRgVv3WDhPjur5OLUEA=
|
||||||
|
github.com/gethinode/mod-csp v1.0.6/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||||
|
github.com/gethinode/mod-csp v1.0.7 h1:V4D8vYA/jJ2Nv9kPz5gt96fkVd3NtT7sBqVhnG5TvAU=
|
||||||
|
github.com/gethinode/mod-csp v1.0.7/go.mod h1:Nb22QMicoUHgZQUKP5TCgVrSI8K3KU7jLuLBShmotjg=
|
||||||
github.com/gethinode/mod-flexsearch v1.0.1 h1:FJkRsUzSnQTXl3MWCigT4E6vfff870UWTnkGqaDGIhA=
|
github.com/gethinode/mod-flexsearch v1.0.1 h1:FJkRsUzSnQTXl3MWCigT4E6vfff870UWTnkGqaDGIhA=
|
||||||
github.com/gethinode/mod-flexsearch v1.0.1/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
github.com/gethinode/mod-flexsearch v1.0.1/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
||||||
github.com/gethinode/mod-flexsearch v1.1.0 h1:7BCMyQDlYlskNXuazt8Jg/jg9WREexu2xVkYqThkAX4=
|
github.com/gethinode/mod-flexsearch v1.1.0 h1:7BCMyQDlYlskNXuazt8Jg/jg9WREexu2xVkYqThkAX4=
|
||||||
@@ -74,6 +92,12 @@ github.com/gethinode/mod-flexsearch v1.12.1 h1:clkGUWaNPe9Dt/66Apy7oH9NwVQfnD6Op
|
|||||||
github.com/gethinode/mod-flexsearch v1.12.1/go.mod h1:L8hrnpupx27cez2ObMX8gWnhbW6qss4HGH1Ea4UaBRQ=
|
github.com/gethinode/mod-flexsearch v1.12.1/go.mod h1:L8hrnpupx27cez2ObMX8gWnhbW6qss4HGH1Ea4UaBRQ=
|
||||||
github.com/gethinode/mod-flexsearch/v2 v2.0.1 h1:5unGUSb1tX1LBtKygnLfdt7CnVJuFKSt6VXiKRxdojc=
|
github.com/gethinode/mod-flexsearch/v2 v2.0.1 h1:5unGUSb1tX1LBtKygnLfdt7CnVJuFKSt6VXiKRxdojc=
|
||||||
github.com/gethinode/mod-flexsearch/v2 v2.0.1/go.mod h1:d7MMkVlz0l6cEk76e0mkveEsDxGfu5Sv+HUIhoGguhE=
|
github.com/gethinode/mod-flexsearch/v2 v2.0.1/go.mod h1:d7MMkVlz0l6cEk76e0mkveEsDxGfu5Sv+HUIhoGguhE=
|
||||||
|
github.com/gethinode/mod-flexsearch/v2 v2.0.2 h1:5FkLbjORwKvK544H/yaAltyIB7eptRPxxh5VcfDDeqM=
|
||||||
|
github.com/gethinode/mod-flexsearch/v2 v2.0.2/go.mod h1:d7MMkVlz0l6cEk76e0mkveEsDxGfu5Sv+HUIhoGguhE=
|
||||||
|
github.com/gethinode/mod-flexsearch/v2 v2.0.3 h1:lC4UN9DPYyj3lsRm86Rt+kKx2DmAS10dOxbM/1H8fVw=
|
||||||
|
github.com/gethinode/mod-flexsearch/v2 v2.0.3/go.mod h1:d7MMkVlz0l6cEk76e0mkveEsDxGfu5Sv+HUIhoGguhE=
|
||||||
|
github.com/gethinode/mod-flexsearch/v2 v2.1.0 h1:NzCruYAKQBMM1DwFFoH7/tzqmItR6sKByMHZWRaRiRk=
|
||||||
|
github.com/gethinode/mod-flexsearch/v2 v2.1.0/go.mod h1:d7MMkVlz0l6cEk76e0mkveEsDxGfu5Sv+HUIhoGguhE=
|
||||||
github.com/gethinode/mod-fontawesome v1.0.2 h1:ZSK6D20/w4y5GnfYfTBB58uHD0ChIfkpKfRGwioS9rg=
|
github.com/gethinode/mod-fontawesome v1.0.2 h1:ZSK6D20/w4y5GnfYfTBB58uHD0ChIfkpKfRGwioS9rg=
|
||||||
github.com/gethinode/mod-fontawesome v1.0.2/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
github.com/gethinode/mod-fontawesome v1.0.2/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
||||||
github.com/gethinode/mod-fontawesome v1.1.0 h1:rsDzUI+3ZlS/do2ff3ne8/z3KwHeysmuA+WsXlumXXk=
|
github.com/gethinode/mod-fontawesome v1.1.0 h1:rsDzUI+3ZlS/do2ff3ne8/z3KwHeysmuA+WsXlumXXk=
|
||||||
@@ -116,6 +140,36 @@ github.com/gethinode/mod-fontawesome v1.9.0 h1:xqUB8AnezMHAt8lye4ksqvmHSVPCOkiHs
|
|||||||
github.com/gethinode/mod-fontawesome v1.9.0/go.mod h1:xBKsZH3WJtMOItZVlp9SbO51uaBy6IbvUZSKpNu3b6Y=
|
github.com/gethinode/mod-fontawesome v1.9.0/go.mod h1:xBKsZH3WJtMOItZVlp9SbO51uaBy6IbvUZSKpNu3b6Y=
|
||||||
github.com/gethinode/mod-fontawesome v1.9.1 h1:cQk84vriqffM4fuUUoM9j3SSD+3ppeW2j4ta7AiToMU=
|
github.com/gethinode/mod-fontawesome v1.9.1 h1:cQk84vriqffM4fuUUoM9j3SSD+3ppeW2j4ta7AiToMU=
|
||||||
github.com/gethinode/mod-fontawesome v1.9.1/go.mod h1:xBKsZH3WJtMOItZVlp9SbO51uaBy6IbvUZSKpNu3b6Y=
|
github.com/gethinode/mod-fontawesome v1.9.1/go.mod h1:xBKsZH3WJtMOItZVlp9SbO51uaBy6IbvUZSKpNu3b6Y=
|
||||||
|
github.com/gethinode/mod-fontawesome v1.10.0 h1:Izs2AKc+YVBa1TywcH54OKLTNCUMXRoFIqOs+n0FgOo=
|
||||||
|
github.com/gethinode/mod-fontawesome v1.10.0/go.mod h1:xBKsZH3WJtMOItZVlp9SbO51uaBy6IbvUZSKpNu3b6Y=
|
||||||
|
github.com/gethinode/mod-fontawesome v1.10.1 h1:gXQ75VXI+a0W2ALkAFHd/QFQ/VoZR6eujX0Hm7DkG94=
|
||||||
|
github.com/gethinode/mod-fontawesome v1.10.1/go.mod h1:xBKsZH3WJtMOItZVlp9SbO51uaBy6IbvUZSKpNu3b6Y=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.0.0 h1:fly42RQ69bdyJe8WFefsBIo7WMIXkd3wZn32kyAr4h4=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.0.0/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.0.1 h1:zbmOdnAhhFCA7qWw7fnR46biWhqW2r06sIaTWyhB5R0=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.0.1/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.0.2 h1:ljrAYdAPqiQg6rdnL6Je8zLK6mhlXoTGJ/vGtIUpX+w=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.0.2/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.0.3 h1:QUm4AeBR6D9cLx26F6Cy5qQvQe/19c2wTJAqxmCfAq4=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.0.3/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.1 h1:XzMXd6nBDl5Lj1Q5pd8MWtE87FI/vRCsUAkAvfuXDxE=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.1/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.2 h1:mcoqaRRorut+PxYxJnOEMfKIlVIIOd6vxKhuEYTwFzw=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.2/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.3 h1:24qxV5vKIex3zSdow+5r0o8rox1lrO31oGi0/XusBy4=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.3/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.4 h1:GkLzbSdVIMLWSQ4VOSaJZIKyofmVCzueiuiGc29jQOM=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.4/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.5 h1:wlOcgwNEJAnIQmPJIo3cT06xnr1dxN/ydUIztoC/7rM=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.5/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.6 h1:0eNIM4NTzXnnRHMM04IVnYPPGwbMAmit6fjuUuCQv2I=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.6/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.9 h1:ld3bRGiJiUCfe/deH+4vOP3oZNhG6mPssT254EcK0Ro=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.1.9/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.3.0 h1:R9oRB6nbFDwLsNmIhxlcmUVH4JE1kvcmbOloKSHhiIQ=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.3.0/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.3.1 h1:WPXrsO6Kpp0k8PYY9a1JyiZgYGMlkBfHY8eEg6CfcL0=
|
||||||
|
github.com/gethinode/mod-google-analytics v1.3.1/go.mod h1:dl628cFozpCvoIMCiV7ujzQipjxcm3eatXrSfLPWNII=
|
||||||
github.com/gethinode/mod-katex v1.0.0 h1:me/3dIIZBkfk1mRIFt8QiAGYwYDoSG5bc2hHRtIutFc=
|
github.com/gethinode/mod-katex v1.0.0 h1:me/3dIIZBkfk1mRIFt8QiAGYwYDoSG5bc2hHRtIutFc=
|
||||||
github.com/gethinode/mod-katex v1.0.0/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
github.com/gethinode/mod-katex v1.0.0/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||||
github.com/gethinode/mod-katex v1.0.1 h1:809QUztxmKgMNchU+v03iMO7Ma+ISc3ZzhXYauc21rs=
|
github.com/gethinode/mod-katex v1.0.1 h1:809QUztxmKgMNchU+v03iMO7Ma+ISc3ZzhXYauc21rs=
|
||||||
@@ -138,6 +192,10 @@ github.com/gethinode/mod-katex v1.1.0 h1:PxST3HPUt6F2X/xKakTVeTkwWqCtEr53K1vYEOy
|
|||||||
github.com/gethinode/mod-katex v1.1.0/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
github.com/gethinode/mod-katex v1.1.0/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||||
github.com/gethinode/mod-katex v1.1.1 h1:z8+mfVI6UTWcfpQMVPIzxQzt6Lp9BcmXxSOILQ84qFg=
|
github.com/gethinode/mod-katex v1.1.1 h1:z8+mfVI6UTWcfpQMVPIzxQzt6Lp9BcmXxSOILQ84qFg=
|
||||||
github.com/gethinode/mod-katex v1.1.1/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
github.com/gethinode/mod-katex v1.1.1/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||||
|
github.com/gethinode/mod-katex v1.1.2 h1:TbeVIWeG5TqldlVxpM1upOWj11RljXy4fhpOQIwOnS4=
|
||||||
|
github.com/gethinode/mod-katex v1.1.2/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||||
|
github.com/gethinode/mod-katex v1.1.3 h1:fRgoBZVCJeLUFqGrGweg4FhCcbGsyqNRmd9WezG/CUQ=
|
||||||
|
github.com/gethinode/mod-katex v1.1.3/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||||
github.com/gethinode/mod-leaflet v0.2.3 h1:QQI4h+IH0jZ7fx4q0um2YIEiYBoW3OAfW8qHzbRCDPk=
|
github.com/gethinode/mod-leaflet v0.2.3 h1:QQI4h+IH0jZ7fx4q0um2YIEiYBoW3OAfW8qHzbRCDPk=
|
||||||
github.com/gethinode/mod-leaflet v0.2.3/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=
|
github.com/gethinode/mod-leaflet v0.2.3/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=
|
||||||
github.com/gethinode/mod-leaflet v0.3.1 h1:H5MaOa+BB1KuVw7abTqfIn/SNzzRsAyx/WQoSe+2Ykc=
|
github.com/gethinode/mod-leaflet v0.3.1 h1:H5MaOa+BB1KuVw7abTqfIn/SNzzRsAyx/WQoSe+2Ykc=
|
||||||
@@ -158,6 +216,10 @@ github.com/gethinode/mod-leaflet v1.1.0 h1:FXzPCic5XmUluxQ6e7LYUhhLnxuQOBwry8qjG
|
|||||||
github.com/gethinode/mod-leaflet v1.1.0/go.mod h1:Ei0x9WiL7Dbi4JeG6yI1CE63bT1QJ8sKi67Jea1wFSE=
|
github.com/gethinode/mod-leaflet v1.1.0/go.mod h1:Ei0x9WiL7Dbi4JeG6yI1CE63bT1QJ8sKi67Jea1wFSE=
|
||||||
github.com/gethinode/mod-leaflet v1.1.1 h1:AIHR4k8SjmeoZxtjLgSS6/N3jKeZNZGdZTgu/7MwP4c=
|
github.com/gethinode/mod-leaflet v1.1.1 h1:AIHR4k8SjmeoZxtjLgSS6/N3jKeZNZGdZTgu/7MwP4c=
|
||||||
github.com/gethinode/mod-leaflet v1.1.1/go.mod h1:Ei0x9WiL7Dbi4JeG6yI1CE63bT1QJ8sKi67Jea1wFSE=
|
github.com/gethinode/mod-leaflet v1.1.1/go.mod h1:Ei0x9WiL7Dbi4JeG6yI1CE63bT1QJ8sKi67Jea1wFSE=
|
||||||
|
github.com/gethinode/mod-leaflet v1.2.0 h1:5q5LHmGNi9N4cdRDCsl/6oI8vY3oQ2ogNUjP3NCnk4Y=
|
||||||
|
github.com/gethinode/mod-leaflet v1.2.0/go.mod h1:Ei0x9WiL7Dbi4JeG6yI1CE63bT1QJ8sKi67Jea1wFSE=
|
||||||
|
github.com/gethinode/mod-leaflet v1.2.1 h1:p0bKi+F5vbXwYknBvFEN9KymK8PRqKaYhVz5O1QPs/c=
|
||||||
|
github.com/gethinode/mod-leaflet v1.2.1/go.mod h1:Ei0x9WiL7Dbi4JeG6yI1CE63bT1QJ8sKi67Jea1wFSE=
|
||||||
github.com/gethinode/mod-lottie v1.0.0 h1:1CUZMcgN5FAyjjyuP3qkaOQ6M5sv6HUAbosW4sIT5VE=
|
github.com/gethinode/mod-lottie v1.0.0 h1:1CUZMcgN5FAyjjyuP3qkaOQ6M5sv6HUAbosW4sIT5VE=
|
||||||
github.com/gethinode/mod-lottie v1.0.0/go.mod h1:erRCgSL2FCfKHI0jQbSpM+g0jXl7SjKVJrh7kWGteKs=
|
github.com/gethinode/mod-lottie v1.0.0/go.mod h1:erRCgSL2FCfKHI0jQbSpM+g0jXl7SjKVJrh7kWGteKs=
|
||||||
github.com/gethinode/mod-lottie v1.0.1 h1:+IE7xtnSVQpJS56oBJq9RWKZeFEfxrOZAqE3BSrS/u0=
|
github.com/gethinode/mod-lottie v1.0.1 h1:+IE7xtnSVQpJS56oBJq9RWKZeFEfxrOZAqE3BSrS/u0=
|
||||||
@@ -198,6 +260,20 @@ github.com/gethinode/mod-lottie v1.5.5 h1:uEJKsz+ovsZtbGkMhPONcIhtG6M3RjYiK+iVoS
|
|||||||
github.com/gethinode/mod-lottie v1.5.5/go.mod h1:VTvBxD8VokICwnEqM0VUZFZHBYxLf4/grDFQyEh1DL0=
|
github.com/gethinode/mod-lottie v1.5.5/go.mod h1:VTvBxD8VokICwnEqM0VUZFZHBYxLf4/grDFQyEh1DL0=
|
||||||
github.com/gethinode/mod-lottie v1.5.6 h1:dxz5nmD0XXEt/DAOc1s5fIPynj5bhzDL32EEwLFCSmk=
|
github.com/gethinode/mod-lottie v1.5.6 h1:dxz5nmD0XXEt/DAOc1s5fIPynj5bhzDL32EEwLFCSmk=
|
||||||
github.com/gethinode/mod-lottie v1.5.6/go.mod h1:VTvBxD8VokICwnEqM0VUZFZHBYxLf4/grDFQyEh1DL0=
|
github.com/gethinode/mod-lottie v1.5.6/go.mod h1:VTvBxD8VokICwnEqM0VUZFZHBYxLf4/grDFQyEh1DL0=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.7 h1:hcf04kmKv7xrI2byxtgHwkScYIHfP9aquInHNZP+qbk=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.7/go.mod h1:rhWg+MSSnWmqHKNEViE/9/78RjQD6uWWFASgjvFjgyo=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.8 h1:glg5HcjOBkFt5MoF7p24NN+RzctExPQUDXvdhPx9u6I=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.8/go.mod h1:Z/FlAcCJWYI1Z9tQnL0yRN4lqhyZl9CqYpfJUPVDaGc=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.9 h1:1MFsq8pO7s4RXu1sA0z75xdp63FPdJ6ar9OhEieDSj8=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.9/go.mod h1:TA1rPRwSilT5mXUakNSVlXNrgTpE87mUOB/fdunAdA0=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.10 h1:tYFgk74T9zWy2FRkfkRI+8QVQy6lnuABnTeWQ8nUX5w=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.10/go.mod h1:L7NpvCAm04R59GSAAm/UFoDCs/6UtrIC5zQEjgQSr4k=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.11 h1:xhxBPDS0iyUY+C1ANaD5EeQV7fO1FG0wMoCjgrCMi/0=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.11/go.mod h1:6FKqk8c+Jkbk2udCxUKVLF1K1wrGwthPsOvRzeoPXRQ=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.12 h1:ny+5DfxWpgRPszhrSUqg+BcNt05ai1OvPAEgCuioFnA=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.12/go.mod h1:0WZP8x7duK/AIZ8fWdZNRnteG03kYfLtsaph7z1mdOg=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.13 h1:Vth/OZDjfBZ9Kz5ew3tXGj9tU6w4StIta6qgfa1daZo=
|
||||||
|
github.com/gethinode/mod-lottie v1.5.13/go.mod h1:tMFSUW9z3kC8IvDfs1ph9MGjuZFRBrpCnpodrwY+L4w=
|
||||||
github.com/gethinode/mod-simple-datatables v1.0.0 h1:Dj4WGw12OkaimwkCpLn5Jhmd49dvNJW9O2P/W9F+HlQ=
|
github.com/gethinode/mod-simple-datatables v1.0.0 h1:Dj4WGw12OkaimwkCpLn5Jhmd49dvNJW9O2P/W9F+HlQ=
|
||||||
github.com/gethinode/mod-simple-datatables v1.0.0/go.mod h1:K8T7fIdb8pMOB+OSW4A5lz5IW99+HyzcTgx764fvOGw=
|
github.com/gethinode/mod-simple-datatables v1.0.0/go.mod h1:K8T7fIdb8pMOB+OSW4A5lz5IW99+HyzcTgx764fvOGw=
|
||||||
github.com/gethinode/mod-simple-datatables v1.0.2 h1:zhqxHet3iLQWYCBbGROALpOY9zQlptMycFkz1Tto5bA=
|
github.com/gethinode/mod-simple-datatables v1.0.2 h1:zhqxHet3iLQWYCBbGROALpOY9zQlptMycFkz1Tto5bA=
|
||||||
@@ -208,6 +284,34 @@ github.com/gethinode/mod-simple-datatables v1.0.5 h1:2Aa4k1Bd1WEYHbskFQj+1X35BB7
|
|||||||
github.com/gethinode/mod-simple-datatables v1.0.5/go.mod h1:mmrcvAJU2i3SMU56VmQ5PW43uDXBcsJKcZwCHrvl3Kc=
|
github.com/gethinode/mod-simple-datatables v1.0.5/go.mod h1:mmrcvAJU2i3SMU56VmQ5PW43uDXBcsJKcZwCHrvl3Kc=
|
||||||
github.com/gethinode/mod-simple-datatables v1.0.6 h1:voKiwLAfC7kfD+atv7ah0sOf8OcPRyxEB/Q92gx1d00=
|
github.com/gethinode/mod-simple-datatables v1.0.6 h1:voKiwLAfC7kfD+atv7ah0sOf8OcPRyxEB/Q92gx1d00=
|
||||||
github.com/gethinode/mod-simple-datatables v1.0.6/go.mod h1:Y7AzIYAWpzDKLvH96eqBA/Gs3jompWCgxadLuoKZ/rc=
|
github.com/gethinode/mod-simple-datatables v1.0.6/go.mod h1:Y7AzIYAWpzDKLvH96eqBA/Gs3jompWCgxadLuoKZ/rc=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.7 h1:pfxWhgmn/njJcynNIDnUyeOBW0tsy2E4TP21sEYsqRs=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.7/go.mod h1:Y7AzIYAWpzDKLvH96eqBA/Gs3jompWCgxadLuoKZ/rc=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.8 h1:J8hA+SXdTLaRNZwN70ZEyADn+VgNoAaxVDMXsMPTZBg=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.8/go.mod h1:RsTHWAt1J9/m7kzhYNSJB7CDyk+8DrG+46/aFrP6KJw=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.9 h1:8OnpY/axFkgxJ598DHW4nDtxsCYmgTakAG4ZC2wRS3A=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.9/go.mod h1:rgQWdDZ6lTR9+08dGY1zBDLZI/UneKPufakAK20+lmI=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.10 h1:/nYy4oCgooUJhTBgLdQzMnJEjolkD+dp2nkfLNT9Klg=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.10/go.mod h1:rgQWdDZ6lTR9+08dGY1zBDLZI/UneKPufakAK20+lmI=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.12 h1:myyVp1ctQA6j+5UTWcDwQmy8ipXdjs8T+qpTpRPBPII=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.12/go.mod h1:QuH7wz1igohzCgL76xI1960mFxPPrqgvGtLwR/0cFyQ=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.13 h1:3GTn46Zh56SFzCUP7CUSrmp/ZoiaVG19q4xdObSx6Pc=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.13/go.mod h1:a2qIdYegX5gBubGbspuHv/2UA/8O89oUG/U5hd7jLK8=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.14 h1:332WtbaQtTm7VP0b7zYfpogTBcOEetkJrNd01K4d/JE=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.0.14/go.mod h1:mP3yjAdVE1G6JHfv8VVsRmvaPlPwddXknI675AuVs2I=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.0 h1:Qc8eJOcVjxIHNfgrZf/bKe8+spCLrJTVwsC8d9ct7i0=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.0/go.mod h1:8q/6f3uAPNTTP5NjEJOuXr6tEWelRFLJfzVJ3AODMlQ=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.1 h1:rzX3+rsOfcW9Z8wiQ1Fp6Ry5TkcJ0nG849xKzjDBbGE=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.1/go.mod h1:8q/6f3uAPNTTP5NjEJOuXr6tEWelRFLJfzVJ3AODMlQ=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.3 h1:a+uIfgc6c+9Zc38Q+Kzd3cWeFhC8BW/rP9/rnd2/ZKM=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.3/go.mod h1:8q/6f3uAPNTTP5NjEJOuXr6tEWelRFLJfzVJ3AODMlQ=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.4 h1:8+uwaEBoh8N2T2sHlcIcxqAGaHPqT0YhPBmr2SFWBCY=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.4/go.mod h1:8q/6f3uAPNTTP5NjEJOuXr6tEWelRFLJfzVJ3AODMlQ=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.5 h1:DKJ+aR94mekzcDwOnm6MJ/+MjAzal+GSYQXSdn0HRdc=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.5/go.mod h1:bvMdmQFk4Hvyltf/QhMqUaApvPbIGTnbI3JLjOEh8go=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.6 h1:7nPeRwHlYbmlNEg7fBV6FyXqpxWW6ZAemaZyYxpIF8U=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.6/go.mod h1:bvMdmQFk4Hvyltf/QhMqUaApvPbIGTnbI3JLjOEh8go=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.7 h1:wCY2bWFUxRHWbWzb/zefCACooCSbDPYKrZthfn+qAgM=
|
||||||
|
github.com/gethinode/mod-simple-datatables v1.1.7/go.mod h1:FjkIEuxqeLLEqqDcz/nHAGHsRfV7EJP5Uhk4kYD8okY=
|
||||||
github.com/gethinode/mod-utils v1.0.0 h1:cqHm2xS5uDiJzRm1KfHaNbq6uMVDKLhQa8/BuTZ1nhY=
|
github.com/gethinode/mod-utils v1.0.0 h1:cqHm2xS5uDiJzRm1KfHaNbq6uMVDKLhQa8/BuTZ1nhY=
|
||||||
github.com/gethinode/mod-utils v1.0.0/go.mod h1:ONJm3pHCq7nvaPNjusLZNCeCbhOhSBH4HVKHwK1FdYE=
|
github.com/gethinode/mod-utils v1.0.0/go.mod h1:ONJm3pHCq7nvaPNjusLZNCeCbhOhSBH4HVKHwK1FdYE=
|
||||||
github.com/gethinode/mod-utils v1.0.1 h1:jhZGlGFHHL1f5HXbBMXfiZ2gCz4TVafAzjnRPTIBSEE=
|
github.com/gethinode/mod-utils v1.0.1 h1:jhZGlGFHHL1f5HXbBMXfiZ2gCz4TVafAzjnRPTIBSEE=
|
||||||
@@ -254,6 +358,34 @@ github.com/gethinode/mod-utils/v2 v2.3.9 h1:Z9uAr6S0wunlkfKHa2D/U83fBV6Ivtf+7sjB
|
|||||||
github.com/gethinode/mod-utils/v2 v2.3.9/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
github.com/gethinode/mod-utils/v2 v2.3.9/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
github.com/gethinode/mod-utils/v2 v2.3.10 h1:+coUXdgAbLEE8Tvb3Rfk/1Nr6oDVreXI2sil0pa/n2Q=
|
github.com/gethinode/mod-utils/v2 v2.3.10 h1:+coUXdgAbLEE8Tvb3Rfk/1Nr6oDVreXI2sil0pa/n2Q=
|
||||||
github.com/gethinode/mod-utils/v2 v2.3.10/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
github.com/gethinode/mod-utils/v2 v2.3.10/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.4.0 h1:mmG4hWaeA4krAg933pibH+TrjFmPHkAi/DUbe3SM38I=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.4.0/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.5.0 h1:9QboNU9KTpmJDS9JBjxavbknLVBJilocqo5KhC2FdME=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.5.0/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.5.2 h1:URGTpJo0dN4/oF2yL6o2d2pkcSlG1F0hgIF9UqpIs/E=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.5.2/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.6.0 h1:r7l/E6fbPZHnjFyJY4T/xzekd7Xp3czNVCMgKoKR8wc=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.6.0/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.7.0 h1:5CKygjsc7X4dFtb90ihWyDVvUp2iqoJE8C7M+jeWYus=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.7.0/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.0 h1:BdB+onItuO29g5ZLEz/HEwq9c4xBEM4GGqQc3kQ++js=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.0/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.1 h1:u7sFbgJ5sBEMYC/GwcMRyjRAd5NxTjBnbld5b0V5n98=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.1/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.2 h1:rKndAMmRBSO5Cgoa/2CvF5XchDSvLvd4TYAbfbbQVhE=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.2/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.3 h1:t1MJcIdFhYi0gCkm8f0DYZwyfq7pRdRc0eNpqZa11ic=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.3/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.4 h1:ZBkIxFezFz2IrbTt0Y3Nq5ac7klU5N8TY19Qnj5px4M=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.4/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.5 h1:e71ncO2NYpum7JTdNTwb0lw8aDe8Zc64Ehjavy8x9xM=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.5/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.6 h1:gtTtL37YPq1n/POIzbj40aYOg1VaZq8IjqwSf2V5yo0=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.8.6/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.9.0 h1:IGaYO+DNo7CcplyAUJASP1sf10/EqiG8sVVM1Q4SJKc=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.9.0/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.10.0 h1:2GN6f3wcu/TlbzPD6DFlWyx+KomXz6LnBv7mfPIXB6o=
|
||||||
|
github.com/gethinode/mod-utils/v2 v2.10.0/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||||
github.com/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3 h1:H/qVR5O4BXjRjD+5PZB+r4ug2BSJ2Of4RtwOntd+OKo=
|
github.com/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3 h1:H/qVR5O4BXjRjD+5PZB+r4ug2BSJ2Of4RtwOntd+OKo=
|
||||||
github.com/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
github.com/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||||
github.com/nextapps-de/flexsearch v0.0.0-20240108021025-afd75f742f22 h1:re7L8FxbXQpnX8BgzkdUnDpsUmloGNyLmiy2ZCln8pg=
|
github.com/nextapps-de/flexsearch v0.0.0-20240108021025-afd75f742f22 h1:re7L8FxbXQpnX8BgzkdUnDpsUmloGNyLmiy2ZCln8pg=
|
||||||
|
112
hugo_stats.json
112
hugo_stats.json
@@ -2,18 +2,12 @@
|
|||||||
"htmlElements": {
|
"htmlElements": {
|
||||||
"tags": [
|
"tags": [
|
||||||
"a",
|
"a",
|
||||||
"blockquote",
|
|
||||||
"body",
|
"body",
|
||||||
"button",
|
"button",
|
||||||
"div",
|
"div",
|
||||||
"em",
|
|
||||||
"footer",
|
"footer",
|
||||||
"form",
|
"form",
|
||||||
"h2",
|
|
||||||
"h3",
|
|
||||||
"h5",
|
|
||||||
"head",
|
"head",
|
||||||
"hr",
|
|
||||||
"html",
|
"html",
|
||||||
"img",
|
"img",
|
||||||
"input",
|
"input",
|
||||||
@@ -22,7 +16,6 @@
|
|||||||
"link",
|
"link",
|
||||||
"meta",
|
"meta",
|
||||||
"nav",
|
"nav",
|
||||||
"noscript",
|
|
||||||
"ol",
|
"ol",
|
||||||
"p",
|
"p",
|
||||||
"path",
|
"path",
|
||||||
@@ -30,46 +23,32 @@
|
|||||||
"small",
|
"small",
|
||||||
"span",
|
"span",
|
||||||
"strong",
|
"strong",
|
||||||
"sup",
|
|
||||||
"svg",
|
"svg",
|
||||||
|
"symbol",
|
||||||
"title",
|
"title",
|
||||||
"ul"
|
"ul",
|
||||||
|
"use"
|
||||||
],
|
],
|
||||||
"classes": [
|
"classes": [
|
||||||
"active",
|
"active",
|
||||||
"align-items-center",
|
"align-items-center",
|
||||||
"align-self-center",
|
"align-self-center",
|
||||||
"align-self-end",
|
"align-self-end",
|
||||||
"anchor",
|
|
||||||
"ball",
|
"ball",
|
||||||
"bg-body",
|
"bg-body",
|
||||||
"bg-body-tertiary",
|
|
||||||
"bg-opacity-10",
|
"bg-opacity-10",
|
||||||
"bg-primary",
|
"bg-primary",
|
||||||
"blockquote",
|
|
||||||
"border",
|
|
||||||
"border-0",
|
|
||||||
"bottom-0",
|
"bottom-0",
|
||||||
"bottom-bar",
|
"bottom-bar",
|
||||||
"breadcrumb",
|
"breadcrumb",
|
||||||
"breadcrumb-item",
|
"breadcrumb-item",
|
||||||
"btn",
|
"btn",
|
||||||
"btn-close",
|
"btn-close",
|
||||||
"btn-outline-secondary",
|
|
||||||
"btn-primary",
|
"btn-primary",
|
||||||
"btn-social",
|
|
||||||
"card",
|
|
||||||
"card-body",
|
|
||||||
"card-body-link",
|
|
||||||
"card-text",
|
|
||||||
"card-title",
|
|
||||||
"card-zoom",
|
|
||||||
"checkbox",
|
"checkbox",
|
||||||
"col",
|
"col",
|
||||||
"col-12",
|
"col-12",
|
||||||
"col-6",
|
"col-6",
|
||||||
"col-lg-2",
|
|
||||||
"col-lg-8",
|
|
||||||
"col-md-2",
|
"col-md-2",
|
||||||
"col-md-3",
|
"col-md-3",
|
||||||
"col-md-4",
|
"col-md-4",
|
||||||
@@ -80,14 +59,12 @@
|
|||||||
"collapsed",
|
"collapsed",
|
||||||
"container-fluid",
|
"container-fluid",
|
||||||
"container-xxl",
|
"container-xxl",
|
||||||
"d-block",
|
|
||||||
"d-flex",
|
"d-flex",
|
||||||
"d-grid",
|
|
||||||
"d-inline",
|
"d-inline",
|
||||||
"d-lg-block",
|
|
||||||
"d-md-block",
|
"d-md-block",
|
||||||
"d-md-none",
|
|
||||||
"d-none",
|
"d-none",
|
||||||
|
"d-sm-block",
|
||||||
|
"d-sm-none",
|
||||||
"display-1",
|
"display-1",
|
||||||
"display-4",
|
"display-4",
|
||||||
"emphasis",
|
"emphasis",
|
||||||
@@ -95,61 +72,40 @@
|
|||||||
"fa",
|
"fa",
|
||||||
"fa-10x",
|
"fa-10x",
|
||||||
"fa-2x",
|
"fa-2x",
|
||||||
|
"fa-angle-left",
|
||||||
"fa-book-open",
|
"fa-book-open",
|
||||||
"fa-ellipsis",
|
"fa-ellipsis",
|
||||||
"fa-face-frown",
|
"fa-face-frown",
|
||||||
"fa-facebook",
|
|
||||||
"fa-fw",
|
"fa-fw",
|
||||||
"fa-github",
|
"fa-github",
|
||||||
"fa-link",
|
|
||||||
"fa-linkedin",
|
"fa-linkedin",
|
||||||
"fa-medium",
|
"fa-medium",
|
||||||
"fa-moon",
|
"fa-moon",
|
||||||
"fa-share-nodes",
|
|
||||||
"fa-sort",
|
|
||||||
"fa-sun",
|
"fa-sun",
|
||||||
"fa-whatsapp",
|
|
||||||
"fa-x-twitter",
|
|
||||||
"fab",
|
"fab",
|
||||||
"fas",
|
"fas",
|
||||||
"fixed-top",
|
"fixed-top",
|
||||||
"flex-column",
|
"flex-column",
|
||||||
"flex-fill",
|
"flex-fill",
|
||||||
"footer",
|
"footer",
|
||||||
"footnote-backref",
|
|
||||||
"footnote-ref",
|
|
||||||
"footnotes",
|
|
||||||
"form-control",
|
"form-control",
|
||||||
"fs-3",
|
"fs-3",
|
||||||
"fs-5",
|
"fs-5",
|
||||||
"fs-6",
|
|
||||||
"fs-lg-5",
|
|
||||||
"fw-30",
|
"fw-30",
|
||||||
"fw-bold",
|
"fw-bold",
|
||||||
"g-4",
|
|
||||||
"gap-1",
|
|
||||||
"gap-2",
|
|
||||||
"h-100",
|
|
||||||
"h6",
|
|
||||||
"heading",
|
|
||||||
"hstack",
|
"hstack",
|
||||||
"img-fluid",
|
"img-fluid",
|
||||||
"img-wrap",
|
"img-wrap",
|
||||||
"invisible",
|
"invisible",
|
||||||
"is-search",
|
"is-search",
|
||||||
"justify-content-between",
|
|
||||||
"justify-content-center",
|
"justify-content-center",
|
||||||
"justify-content-end",
|
"justify-content-end",
|
||||||
"justify-content-start",
|
"justify-content-start",
|
||||||
"label",
|
"label",
|
||||||
"lead",
|
|
||||||
"link-bg-footer",
|
"link-bg-footer",
|
||||||
"link-secondary",
|
"link-secondary",
|
||||||
"main-content",
|
"main-content",
|
||||||
"main-nav-toggler",
|
"main-nav-toggler",
|
||||||
"mb-3",
|
|
||||||
"mb-5",
|
|
||||||
"mb-lg-5",
|
|
||||||
"me-auto",
|
"me-auto",
|
||||||
"middle-bar",
|
"middle-bar",
|
||||||
"min-vh-100",
|
"min-vh-100",
|
||||||
@@ -157,12 +113,12 @@
|
|||||||
"ms-auto",
|
"ms-auto",
|
||||||
"ms-md-3",
|
"ms-md-3",
|
||||||
"mt-3",
|
"mt-3",
|
||||||
|
"mt-4",
|
||||||
"mt-5",
|
"mt-5",
|
||||||
|
"mt-md-0",
|
||||||
"mx-auto",
|
"mx-auto",
|
||||||
"mx-md-0",
|
"mx-md-0",
|
||||||
"my-2",
|
|
||||||
"my-auto",
|
"my-auto",
|
||||||
"my-md-0",
|
|
||||||
"my-md-auto",
|
"my-md-auto",
|
||||||
"nav-item",
|
"nav-item",
|
||||||
"nav-link",
|
"nav-link",
|
||||||
@@ -174,30 +130,22 @@
|
|||||||
"navbar-fixed-top",
|
"navbar-fixed-top",
|
||||||
"navbar-mode-selector",
|
"navbar-mode-selector",
|
||||||
"navbar-nav",
|
"navbar-nav",
|
||||||
"navbar-nav-scroll",
|
|
||||||
"navbar-toggler",
|
"navbar-toggler",
|
||||||
"no-js",
|
"no-js",
|
||||||
"offcanvas",
|
|
||||||
"offcanvas-body",
|
|
||||||
"offcanvas-header",
|
|
||||||
"offcanvas-start",
|
|
||||||
"offcanvas-title",
|
|
||||||
"order-0",
|
"order-0",
|
||||||
"order-1",
|
"order-1",
|
||||||
"order-md-0",
|
"order-md-0",
|
||||||
"order-md-1",
|
"order-md-1",
|
||||||
"p-0",
|
"p-0",
|
||||||
"p-1",
|
|
||||||
"p-2",
|
"p-2",
|
||||||
"p-3",
|
"p-3",
|
||||||
"p-4",
|
"p-4",
|
||||||
"pb-2",
|
|
||||||
"pb-4",
|
"pb-4",
|
||||||
"pb-5",
|
|
||||||
"pb-md-0",
|
"pb-md-0",
|
||||||
"position-fixed",
|
"position-fixed",
|
||||||
"position-relative",
|
"position-relative",
|
||||||
"ps-1",
|
"ps-1",
|
||||||
|
"pt-4",
|
||||||
"pt-5",
|
"pt-5",
|
||||||
"pt-md-3",
|
"pt-md-3",
|
||||||
"px-4",
|
"px-4",
|
||||||
@@ -207,63 +155,41 @@
|
|||||||
"row",
|
"row",
|
||||||
"row-cols-1",
|
"row-cols-1",
|
||||||
"row-cols-2",
|
"row-cols-2",
|
||||||
"row-cols-lg-3",
|
|
||||||
"row-cols-md-2",
|
"row-cols-md-2",
|
||||||
"row-cols-md-3",
|
|
||||||
"row-cols-sm-2",
|
|
||||||
"row-cols-sm-3",
|
"row-cols-sm-3",
|
||||||
"search",
|
"search",
|
||||||
"search-input",
|
"search-input",
|
||||||
"search-suggestions",
|
"search-suggestions",
|
||||||
"shadow",
|
"shadow",
|
||||||
"sidebar-overflow",
|
|
||||||
"sticky-top",
|
|
||||||
"stretched-link",
|
|
||||||
"svg-inline--fa",
|
"svg-inline--fa",
|
||||||
"text-body",
|
|
||||||
"text-body-secondary",
|
|
||||||
"text-center",
|
"text-center",
|
||||||
"text-decoration-none",
|
"text-decoration-none",
|
||||||
"text-end",
|
|
||||||
"text-muted",
|
"text-muted",
|
||||||
"text-secondary",
|
"text-secondary",
|
||||||
"text-sm-start",
|
"text-sm-start",
|
||||||
"text-start",
|
"text-start",
|
||||||
"text-uppercase",
|
|
||||||
"toast",
|
"toast",
|
||||||
"toast-body",
|
"toast-body",
|
||||||
"toast-container",
|
"toast-container",
|
||||||
"toast-header",
|
"toast-header",
|
||||||
"toc",
|
|
||||||
"toc-button",
|
|
||||||
"toc-panel",
|
|
||||||
"toc-sidebar",
|
|
||||||
"toggler-icon",
|
"toggler-icon",
|
||||||
"top-bar"
|
"top-bar"
|
||||||
],
|
],
|
||||||
"ids": [
|
"ids": [
|
||||||
"TableOfContents",
|
"fa-face-frown",
|
||||||
"blogs",
|
"fab-github",
|
||||||
"btn-webshare",
|
"fab-linkedin",
|
||||||
"fn:1",
|
"fab-medium",
|
||||||
"fn:2",
|
"fas-angle-left",
|
||||||
"fnref:1",
|
"fas-book-open",
|
||||||
"fnref:2",
|
"fas-ellipsis",
|
||||||
|
"fas-moon",
|
||||||
|
"fas-sun",
|
||||||
"navbar-0-collapse",
|
"navbar-0-collapse",
|
||||||
"navbar-mode",
|
"navbar-mode",
|
||||||
"navbar-mode-checkbox",
|
"navbar-mode-checkbox",
|
||||||
"offcanvas-label",
|
|
||||||
"offcanvass-sidebar",
|
|
||||||
"reference",
|
|
||||||
"reference-1",
|
|
||||||
"simple",
|
|
||||||
"simple-1",
|
|
||||||
"toast-container",
|
"toast-container",
|
||||||
"toast-copied-code-message",
|
"toast-copied-code-message"
|
||||||
"toast-message-email-4",
|
|
||||||
"toc-collapse",
|
|
||||||
"with-attribute",
|
|
||||||
"without-attribute"
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
48
i18n/de.yaml
48
i18n/de.yaml
@@ -23,6 +23,22 @@
|
|||||||
translation: "Artikel"
|
translation: "Artikel"
|
||||||
- id: more
|
- id: more
|
||||||
translation: "Weitere {{ . }}"
|
translation: "Weitere {{ . }}"
|
||||||
|
- id: emptyList
|
||||||
|
translation: "Keine weiteren Artikel gefunden"
|
||||||
|
- id: emptyTags
|
||||||
|
translation: "Keine Schlagworte gefunden"
|
||||||
|
- id: readMore
|
||||||
|
translation: "Weiterlesen"
|
||||||
|
|
||||||
|
# Languages
|
||||||
|
- id: lang_de
|
||||||
|
translation: "Deutsch"
|
||||||
|
- id: lang_en
|
||||||
|
translation: "Englisch"
|
||||||
|
- id: lang_nl
|
||||||
|
translation: "Niederländisch"
|
||||||
|
- id: lang_fr
|
||||||
|
translation: "Französisch"
|
||||||
|
|
||||||
# Sharing
|
# Sharing
|
||||||
- id: shareLink
|
- id: shareLink
|
||||||
@@ -110,6 +126,36 @@
|
|||||||
|
|
||||||
# Comments
|
# Comments
|
||||||
- id: show
|
- id: show
|
||||||
translation: "Zeige"
|
translation: "Anzeigen"
|
||||||
- id: comments
|
- id: comments
|
||||||
translation: "Kommentare"
|
translation: "Kommentare"
|
||||||
|
|
||||||
|
# Arguments
|
||||||
|
- id: name
|
||||||
|
translation: "Name"
|
||||||
|
- id: type
|
||||||
|
translation: "Typ"
|
||||||
|
- id: required
|
||||||
|
translation: "Erforderlich"
|
||||||
|
- id: default
|
||||||
|
translation: "Standard"
|
||||||
|
- id: comment
|
||||||
|
translation: "Kommentar"
|
||||||
|
- id: supportedValues
|
||||||
|
translation: "Unterstützte Werte"
|
||||||
|
|
||||||
|
# Alerts
|
||||||
|
- id: caution
|
||||||
|
translation: Vorsicht
|
||||||
|
- id: important
|
||||||
|
translation: Wichtig
|
||||||
|
- id: note
|
||||||
|
translation: Hinweis
|
||||||
|
- id: tip
|
||||||
|
translation: Tipp
|
||||||
|
- id: warning
|
||||||
|
translation: Warnung
|
||||||
|
|
||||||
|
# Image
|
||||||
|
- id: image
|
||||||
|
translation: Bild
|
16
i18n/en.yaml
16
i18n/en.yaml
@@ -149,3 +149,19 @@
|
|||||||
translation: "Comment"
|
translation: "Comment"
|
||||||
- id: supportedValues
|
- id: supportedValues
|
||||||
translation: "Supported values"
|
translation: "Supported values"
|
||||||
|
|
||||||
|
# Alerts
|
||||||
|
- id: caution
|
||||||
|
translation: Caution
|
||||||
|
- id: important
|
||||||
|
translation: Important
|
||||||
|
- id: note
|
||||||
|
translation: Note
|
||||||
|
- id: tip
|
||||||
|
translation: Tip
|
||||||
|
- id: warning
|
||||||
|
translation: Warning
|
||||||
|
|
||||||
|
# Image
|
||||||
|
- id: image
|
||||||
|
translation: image
|
16
i18n/fr.yaml
16
i18n/fr.yaml
@@ -149,3 +149,19 @@
|
|||||||
translation: "Commentaire"
|
translation: "Commentaire"
|
||||||
- id: supportedValues
|
- id: supportedValues
|
||||||
translation: "Valeurs supportées"
|
translation: "Valeurs supportées"
|
||||||
|
|
||||||
|
# Alerts
|
||||||
|
- id: caution
|
||||||
|
translation: Prudence
|
||||||
|
- id: important
|
||||||
|
translation: Important
|
||||||
|
- id: note
|
||||||
|
translation: Remarque
|
||||||
|
- id: tip
|
||||||
|
translation: Astuce
|
||||||
|
- id: warning
|
||||||
|
translation: Attention
|
||||||
|
|
||||||
|
# Image
|
||||||
|
- id: image
|
||||||
|
translation: image
|
||||||
|
16
i18n/nl.yaml
16
i18n/nl.yaml
@@ -148,3 +148,19 @@
|
|||||||
translation: "Toelichting"
|
translation: "Toelichting"
|
||||||
- id: supportedValues
|
- id: supportedValues
|
||||||
translation: "Toegestane waarden"
|
translation: "Toegestane waarden"
|
||||||
|
|
||||||
|
# Alerts
|
||||||
|
- id: caution
|
||||||
|
translation: Voorzichtig
|
||||||
|
- id: important
|
||||||
|
translation: Belangrijk
|
||||||
|
- id: note
|
||||||
|
translation: Opmerking
|
||||||
|
- id: tip
|
||||||
|
translation: Tip
|
||||||
|
- id: warning
|
||||||
|
translation: Waarschuwing
|
||||||
|
|
||||||
|
# Image
|
||||||
|
- id: image
|
||||||
|
translation: Bild
|
||||||
|
169
i18n/pt-br.yaml
Normal file
169
i18n/pt-br.yaml
Normal file
@@ -0,0 +1,169 @@
|
|||||||
|
# Single pages
|
||||||
|
- id: postedOnDate
|
||||||
|
translation: "Publicado em {{ . }}"
|
||||||
|
- id: lastModified
|
||||||
|
translation: "Última modificação em {{ . }}"
|
||||||
|
- id: read
|
||||||
|
translation: "ler"
|
||||||
|
- id: minutesShort
|
||||||
|
translation: "min"
|
||||||
|
- id: words
|
||||||
|
translation: "palavras"
|
||||||
|
- id: photoFull
|
||||||
|
translation: "Foto de %s em %s"
|
||||||
|
- id: photoShort
|
||||||
|
translation: "Foto de {{ . }}"
|
||||||
|
- id: photoOn
|
||||||
|
translation: "em"
|
||||||
|
- id: draft
|
||||||
|
translation: "Rascunho"
|
||||||
|
|
||||||
|
# List pages
|
||||||
|
- id: article
|
||||||
|
translation: "Artigo"
|
||||||
|
- id: articles
|
||||||
|
translation: "Artigos"
|
||||||
|
- id: more
|
||||||
|
translation: "Mais {{ . }}"
|
||||||
|
- id: emptyList
|
||||||
|
translation: "Nenhum artigo encontrado"
|
||||||
|
- id: emptyTags
|
||||||
|
translation: "Nenhuma tag encontrada"
|
||||||
|
- id: readMore
|
||||||
|
translation: "Ler mais"
|
||||||
|
|
||||||
|
# Languages
|
||||||
|
- id: lang_de
|
||||||
|
translation: "Alemão"
|
||||||
|
- id: lang_en
|
||||||
|
translation: "Inglês"
|
||||||
|
- id: lang_nl
|
||||||
|
translation: "Holandês"
|
||||||
|
- id: lang_fr
|
||||||
|
translation: "Francês"
|
||||||
|
- id: lang_pt
|
||||||
|
translation: "Português"
|
||||||
|
|
||||||
|
# Sharing
|
||||||
|
- id: shareLink
|
||||||
|
translation: "Compartilhe via {{ . }}"
|
||||||
|
- id: shareSystem
|
||||||
|
translation: "sistema"
|
||||||
|
- id: copyToClipboard
|
||||||
|
translation: "copiar para área de transferência"
|
||||||
|
- id: copiedToClipboard
|
||||||
|
translation: "copiado para área de transferência"
|
||||||
|
- id: link
|
||||||
|
translation: "Link"
|
||||||
|
- id: code
|
||||||
|
translation: "Código"
|
||||||
|
- id: download
|
||||||
|
translation: "Baixar artigo"
|
||||||
|
|
||||||
|
# Pagination
|
||||||
|
- id: paginationNav
|
||||||
|
translation: "Navegação da página"
|
||||||
|
- id: paginationPrevious
|
||||||
|
translation: "Página anterior"
|
||||||
|
- id: paginationNext
|
||||||
|
translation: "Página seguinte"
|
||||||
|
- id: paginationFirst
|
||||||
|
translation: "Primeira página"
|
||||||
|
- id: paginationLast
|
||||||
|
translation: "Última página"
|
||||||
|
|
||||||
|
# Navigation
|
||||||
|
- id: colorMode
|
||||||
|
translation: "Mudar tema"
|
||||||
|
- id: colorLight
|
||||||
|
translation: "Claro"
|
||||||
|
- id: colorDark
|
||||||
|
translation: "Escuro"
|
||||||
|
- id: colorAuto
|
||||||
|
translation: "Auto"
|
||||||
|
- id: toggleMainNav
|
||||||
|
translation: "Mostrar/Ocultar menu principal"
|
||||||
|
- id: home
|
||||||
|
translation: "Início"
|
||||||
|
- id: languageSwitcherLabel
|
||||||
|
translation: "Idioma"
|
||||||
|
- id: close
|
||||||
|
translation: "Fechar"
|
||||||
|
|
||||||
|
# Table of contents
|
||||||
|
- id: toc
|
||||||
|
translation: "Nesta página"
|
||||||
|
- id: seeAlso
|
||||||
|
translation: "Veja também"
|
||||||
|
- id: sectionMenu
|
||||||
|
translation: "Selecionar um tópico"
|
||||||
|
|
||||||
|
# Sidebar
|
||||||
|
- id: toggleSidebar
|
||||||
|
translation: "Mostrar/Ocultar barra lateral"
|
||||||
|
|
||||||
|
# Feature
|
||||||
|
- id: addedFeature
|
||||||
|
translation: "Adicionado em {{ . }}"
|
||||||
|
- id: deprecatedFeature
|
||||||
|
translation: "Descontinuado em {{ . }}"
|
||||||
|
|
||||||
|
# Versioning
|
||||||
|
- id: latest
|
||||||
|
translation: "Mais recente"
|
||||||
|
- id: allVersions
|
||||||
|
translation: "Todas as versões"
|
||||||
|
- id: newerVersionAlert
|
||||||
|
translation: "Existe uma versão mais recente de {{ . }}!"
|
||||||
|
|
||||||
|
# 404 page
|
||||||
|
- id: pageNotFound
|
||||||
|
translation: "A página que você está procurando não existe ou ocorreu algum outro erro. Tente voltar para a {{ . }}."
|
||||||
|
- id: pageNotFoundTitle
|
||||||
|
translation: "Página não encontrada"
|
||||||
|
- id: pageNotFoundHome
|
||||||
|
translation: "página inicial"
|
||||||
|
|
||||||
|
# Footer
|
||||||
|
- id: copyright
|
||||||
|
translation: "Copyright"
|
||||||
|
- id: rights
|
||||||
|
translation: "Todos os direitos reservados"
|
||||||
|
- id: poweredBy
|
||||||
|
translation: "Com tecnologia {{ . }}."
|
||||||
|
|
||||||
|
# Comments
|
||||||
|
- id: show
|
||||||
|
translation: "Mostrar"
|
||||||
|
- id: comments
|
||||||
|
translation: "Comentários"
|
||||||
|
|
||||||
|
# Arguments
|
||||||
|
- id: name
|
||||||
|
translation: "Nome"
|
||||||
|
- id: type
|
||||||
|
translation: "Tipo"
|
||||||
|
- id: required
|
||||||
|
translation: "Obrigatório"
|
||||||
|
- id: default
|
||||||
|
translation: "Padrão"
|
||||||
|
- id: comment
|
||||||
|
translation: "Comentário"
|
||||||
|
- id: supportedValues
|
||||||
|
translation: "Valores suportados"
|
||||||
|
|
||||||
|
# Alerts
|
||||||
|
- id: caution
|
||||||
|
translation: Atenção
|
||||||
|
- id: important
|
||||||
|
translation: Importante
|
||||||
|
- id: note
|
||||||
|
translation: Observação
|
||||||
|
- id: tip
|
||||||
|
translation: Dica
|
||||||
|
- id: warning
|
||||||
|
translation: Aviso
|
||||||
|
|
||||||
|
# Image
|
||||||
|
- id: image
|
||||||
|
translation: imagem
|
31
layouts/_default/_markup/render-blockquote.html
Normal file
31
layouts/_default/_markup/render-blockquote.html
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
{{/* Adapted from https://gohugo.io/render-hooks/blockquotes/#alerts */}}
|
||||||
|
|
||||||
|
{{ $icons := dict
|
||||||
|
"caution" "fa hand"
|
||||||
|
"important" "fas exclamation"
|
||||||
|
"note" "fas circle-info"
|
||||||
|
"tip" "fa lightbulb"
|
||||||
|
"warning" "fas triangle-exclamation"
|
||||||
|
}}
|
||||||
|
|
||||||
|
{{ if eq .Type "alert" }}
|
||||||
|
{{ $alert := .AlertType }}
|
||||||
|
{{ $icon := (index $icons $alert) }}
|
||||||
|
|
||||||
|
<blockquote class="blockquote-alert blockquote-alert-{{ $alert }}">
|
||||||
|
<p class="blockquote-alert-heading">
|
||||||
|
{{ with $icon }}
|
||||||
|
{{ partial "assets/icon.html" (dict "icon" (printf "%s fa-fw" .)) }}
|
||||||
|
{{ or (i18n $alert) (title $alert) }}
|
||||||
|
{{ else }}
|
||||||
|
{{ title $alert }}
|
||||||
|
{{ warnf "Unsupported alert type: '%s'. See %s" $alert $.Position }}
|
||||||
|
{{ end }}
|
||||||
|
</p>
|
||||||
|
{{ trim .Text "\n\r" | safeHTML }}
|
||||||
|
</blockquote>
|
||||||
|
{{ else }}
|
||||||
|
<blockquote class="blockquote">
|
||||||
|
{{ trim .Text "\n\r" | safeHTML }}
|
||||||
|
</blockquote>
|
||||||
|
{{ end }}
|
11
layouts/_default/_markup/render-codeblock-math.html
Normal file
11
layouts/_default/_markup/render-codeblock-math.html
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
{{ with try (transform.ToMath .Inner (dict "displayMode" true)) }}
|
||||||
|
{{ with .Err }}
|
||||||
|
{{ errorf "Failed to render KaTeX: %q. See %s" . $.Position }}
|
||||||
|
{{ else }}
|
||||||
|
{{ if $.Attributes.class }}
|
||||||
|
<div class="{{ $.Attributes.class | safeHTMLAttr }}">{{ .Value }}</div>
|
||||||
|
{{ else }}
|
||||||
|
{{ .Value }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
17
layouts/_default/_markup/render-heading-new.html
Normal file
17
layouts/_default/_markup/render-heading-new.html
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
{{ $text := chomp .Text }}
|
||||||
|
{{ if site.Params.main.titleCase }}{{ $text = title $text }}{{ end }}
|
||||||
|
|
||||||
|
{{ if eq page.RelPermalink "/en/privacy/" }}
|
||||||
|
{{ warnf "title: %s" (.Text | safeHTML) }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ if and site.Params.navigation.anchor $text }}
|
||||||
|
<h{{ .Level }} id="{{ .Anchor | safeURL }}" class="heading">
|
||||||
|
{{- $text | safeHTML -}}
|
||||||
|
<a href="#{{ .Anchor | safeURL }}" aria-labelledby="{{ .Anchor | safeURL }}">
|
||||||
|
{{- partial "assets/icon.html" (dict "icon" "fas link anchor") }}
|
||||||
|
</a>
|
||||||
|
</h{{ .Level }}>
|
||||||
|
{{ else }}
|
||||||
|
<h{{ .Level }} id="{{ .Anchor | safeURL }}">{{ $text | safeHTML }}</h{{ .Level }}>
|
||||||
|
{{ end }}
|
@@ -1,5 +1,13 @@
|
|||||||
{{ if site.Params.navigation.anchor }}
|
{{ $text := chomp .Text }}
|
||||||
<h{{ .Level }} id="{{ .Anchor | safeURL }}" class="heading">{{ .Text | safeHTML }} <a href="#{{ .Anchor | safeURL }}" aria-labelledby="{{ .Anchor | safeURL }}">{{- partial "assets/icon.html" (dict "icon" "fas link anchor") }}</a></h{{ .Level }}>
|
{{ if site.Params.main.titleCase }}{{ $text = (title ($text | htmlUnescape)) | htmlEscape }}{{ end }}
|
||||||
|
|
||||||
|
{{ if and site.Params.navigation.anchor $text }}
|
||||||
|
<h{{ .Level }} id="{{ .Anchor | safeURL }}" class="heading">
|
||||||
|
{{- $text | safeHTML -}}
|
||||||
|
<a href="#{{ .Anchor | safeURL }}" aria-labelledby="{{ .Anchor | safeURL }}">
|
||||||
|
{{- partial "assets/icon.html" (dict "icon" "fas link anchor") }}
|
||||||
|
</a>
|
||||||
|
</h{{ .Level }}>
|
||||||
{{ else }}
|
{{ else }}
|
||||||
<h{{ .Level }} id="{{ .Anchor | safeURL }}">{{ .Text | safeHTML }}</h{{ .Level }}>
|
<h{{ .Level }} id="{{ .Anchor | safeURL }}">{{ $text | safeHTML }}</h{{ .Level }}>
|
||||||
{{ end }}
|
{{ end }}
|
15
layouts/_default/_markup/render-image.html
Normal file
15
layouts/_default/_markup/render-image.html
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
{{ partial "assets/image.html" (dict
|
||||||
|
"url" .Destination
|
||||||
|
"page" .Page
|
||||||
|
"caption" .Title
|
||||||
|
"title" .Text
|
||||||
|
"anchor" .Attributes.anchor
|
||||||
|
"class" .Attributes.class
|
||||||
|
"figclass" .Attributes.figclass
|
||||||
|
"loading" .Attributes.loading
|
||||||
|
"mode" .Attributes.mode
|
||||||
|
"plain" .Attributes.plain
|
||||||
|
"portrait" .Attributes.portrait
|
||||||
|
"ratio" .Attributes.ratio
|
||||||
|
"wrapper" .Attributes.wrapper
|
||||||
|
) }}
|
15
layouts/_default/_markup/render-link.html
Normal file
15
layouts/_default/_markup/render-link.html
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
{{ if gt (findRE `^HAHAHUGO` .Destination 1) 0 }}
|
||||||
|
{{ errorf "Invalid markdown link destination, use '%s' syntax when using shortcodes as input. See '%s'"
|
||||||
|
("{{% %}}" | htmlUnescape)
|
||||||
|
.Page.File.Path
|
||||||
|
}}
|
||||||
|
{{ else if not .Destination }}
|
||||||
|
{{ errorf "Missing markdown link destination, see '%s'" .Page.File.Path }}
|
||||||
|
{{ else }}
|
||||||
|
{{ partial "assets/link.html" (dict
|
||||||
|
"destination" .Destination
|
||||||
|
"page" .Page
|
||||||
|
"text" .Text
|
||||||
|
"title" .Title
|
||||||
|
) }}
|
||||||
|
{{- end }}
|
13
layouts/_default/_markup/render-passthrough.html
Normal file
13
layouts/_default/_markup/render-passthrough.html
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
{{ $opts := dict }}
|
||||||
|
|
||||||
|
{{ if eq .Type "block" }}
|
||||||
|
{{ $opts = dict "displayMode" true }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ with try (transform.ToMath .Inner $opts) }}
|
||||||
|
{{ with .Err }}
|
||||||
|
{{ errorf "Failed to render KaTeX: %q. See %s" . $.Position }}
|
||||||
|
{{ else }}
|
||||||
|
{{ .Value }}
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
74
layouts/_default/_markup/render-table.html
Normal file
74
layouts/_default/_markup/render-table.html
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
{{/* Adapted from https://gohugo.io/render-hooks/tables/ */}}
|
||||||
|
|
||||||
|
<!-- Ensure presence of `.table` class attribute to trigger Bootstrap styling -->
|
||||||
|
{{ $attr := .Attributes }}
|
||||||
|
{{ $class := split $attr.class " " }}
|
||||||
|
{{ if not (in $class "table") }}
|
||||||
|
{{ $attr = merge $attr (dict "class" (trim (delimit ($class | append "table") " ") " ")) }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ $wrap := in $class "table-wrap" }}
|
||||||
|
{{ $align := dict "left" "start" "center" "center" "right" "end" }}
|
||||||
|
|
||||||
|
{{ $header := "" }}
|
||||||
|
<table
|
||||||
|
{{- range $k, $v := $attr }}
|
||||||
|
{{- if $v }}
|
||||||
|
{{- printf " %s=%q" $k $v | safeHTMLAttr }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}>
|
||||||
|
<thead>
|
||||||
|
{{- range .THead }}
|
||||||
|
{{ $length := len . }}
|
||||||
|
{{ if $wrap }}
|
||||||
|
<tr>
|
||||||
|
{{- range . | first (sub $length 1) }}
|
||||||
|
<th {{ with .Alignment }}class="text-{{ index $align . }}"{{ end }}>
|
||||||
|
{{- .Text -}}
|
||||||
|
</th>
|
||||||
|
{{- end }}
|
||||||
|
{{- range . | last 1 }}
|
||||||
|
{{ $header = .Text }}
|
||||||
|
{{ end }}
|
||||||
|
</tr>
|
||||||
|
{{ else }}
|
||||||
|
<tr>
|
||||||
|
{{- range . }}
|
||||||
|
<th {{ with .Alignment }}class="text-{{ index $align . }}"{{ end }}>
|
||||||
|
{{- .Text -}}
|
||||||
|
</th>
|
||||||
|
{{- end }}
|
||||||
|
</tr>
|
||||||
|
{{ end }}
|
||||||
|
{{- end }}
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
{{- range .TBody }}
|
||||||
|
{{ $length := len . }}
|
||||||
|
{{ if $wrap }}
|
||||||
|
<tr>
|
||||||
|
{{- range . | first (sub $length 1) }}
|
||||||
|
<td class="{{ with .Alignment }}text-{{ index $align . }}{{ end }} table-border-bottom-wrap">
|
||||||
|
{{- .Text -}}
|
||||||
|
</td>
|
||||||
|
{{- end }}
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
{{- range . | last 1 }}
|
||||||
|
<td class="{{ with .Alignment }}text-{{ index $align . }}{{ end }}" colspan="{{ (sub $length 1) }}">
|
||||||
|
{{- .Text -}}
|
||||||
|
</td>
|
||||||
|
{{ end }}
|
||||||
|
</tr>
|
||||||
|
{{ else }}
|
||||||
|
<tr>
|
||||||
|
{{- range . }}
|
||||||
|
<td {{ with .Alignment }}class="text-{{ index $align . }}"{{ end }}>
|
||||||
|
{{- .Text -}}
|
||||||
|
</td>
|
||||||
|
{{- end }}
|
||||||
|
</tr>
|
||||||
|
{{ end }}
|
||||||
|
{{- end }}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
@@ -14,7 +14,7 @@
|
|||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{- /* Initialize module configuration */ -}}
|
{{- /* Initialize module configuration */ -}}
|
||||||
{{- $modules := partial "utilities/InitModules.html" (dict "page" .) -}}
|
{{- $modules := partialCached "utilities/InitModules.html" . -}}
|
||||||
{{- $.Scratch.Set "modules" $modules -}}
|
{{- $.Scratch.Set "modules" $modules -}}
|
||||||
|
|
||||||
{{- $fullCover := or (or (and .IsHome .Site.Params.home.fullCover) .Page.Params.fullCover) .Site.Params.main.footerBelowFold }}
|
{{- $fullCover := or (or (and .IsHome .Site.Params.home.fullCover) .Page.Params.fullCover) .Site.Params.main.footerBelowFold }}
|
||||||
@@ -27,7 +27,7 @@
|
|||||||
{{- $.Scratch.Set "sections" $sections -}}
|
{{- $.Scratch.Set "sections" $sections -}}
|
||||||
|
|
||||||
{{- /* Define main breakpoint */ -}}
|
{{- /* Define main breakpoint */ -}}
|
||||||
{{- $.Scratch.Set "breakpoint" (partial "utilities/GetBreakpoint.html") }}
|
{{- $.Scratch.Set "breakpoint" (partialCached "utilities/GetBreakpoint.html" .) }}
|
||||||
|
|
||||||
{{- /* Define base URL */ -}}
|
{{- /* Define base URL */ -}}
|
||||||
{{ $lang := site.LanguageCode | default site.Language.Lang }}
|
{{ $lang := site.LanguageCode | default site.Language.Lang }}
|
||||||
@@ -36,11 +36,12 @@
|
|||||||
<!doctype html>
|
<!doctype html>
|
||||||
<html lang="{{ .Site.Language.Lang }}" class="no-js">
|
<html lang="{{ .Site.Language.Lang }}" class="no-js">
|
||||||
<head>
|
<head>
|
||||||
|
{{- partial "footer/scripts.html" (dict "page" . "type" "critical") -}}
|
||||||
|
{{- partial "footer/scripts.html" (dict "page" . "type" "functional") -}}
|
||||||
{{ block "head" . }}{{ end -}}
|
{{ block "head" . }}{{ end -}}
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
{{- partial "footer/scripts.html" (dict "filename" "js/critical.bundle.js" "match" "js/critical/**.js" "header" true "page" .) -}}
|
|
||||||
<div class="d-flex flex-column min-vh-100">
|
<div class="d-flex flex-column min-vh-100">
|
||||||
<div class="d-flex flex-column {{ if $fullCover }} fullscreen{{ end }}{{ if .IsHome }} {{ .Site.Params.home.style }}{{ end }}">
|
<div class="d-flex flex-column {{ if $fullCover }} fullscreen{{ end }}{{ if .IsHome }} {{ .Site.Params.home.style }}{{ end }}">
|
||||||
{{- partial "assets/navbar.html" (dict
|
{{- partial "assets/navbar.html" (dict
|
||||||
@@ -73,7 +74,8 @@
|
|||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{- partial "footer/toast-container.html" . -}}
|
{{- partial "footer/toast-container.html" . -}}
|
||||||
{{- partialCached "footer/scripts.html" (dict "header" false "page" . "core" true) }}
|
{{- partial "assets/symbols.html" . -}}
|
||||||
{{- partial "footer/optional-scripts.html" . -}}
|
{{- partialCached "footer/scripts.html" (dict "page" .) -}}
|
||||||
|
{{- partial "footer/scripts.html" (dict "page" . "type" "optional") -}}
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@@ -2,11 +2,13 @@
|
|||||||
{{- $fullCover := $.Scratch.Get "fullCover" -}}
|
{{- $fullCover := $.Scratch.Get "fullCover" -}}
|
||||||
{{- $breakpoint := $.Scratch.Get "breakpoint" -}}
|
{{- $breakpoint := $.Scratch.Get "breakpoint" -}}
|
||||||
{{- $layout := .Params.layout -}}
|
{{- $layout := .Params.layout -}}
|
||||||
|
{{- $title := .Title }}
|
||||||
|
{{ if site.Params.main.titleCase }}{{ $title = title $title }}{{ end }}
|
||||||
|
|
||||||
<div class="row row-cols-1 row-cols-{{ $breakpoint.current }}-2">
|
<div class="row row-cols-1 row-cols-{{ $breakpoint.current }}-2">
|
||||||
<div class="col-12 col-{{ $breakpoint.current }}-9">
|
<div class="col-12 col-{{ $breakpoint.current }}-9">
|
||||||
{{ if not .IsHome }}
|
{{ if not .IsHome }}
|
||||||
{{ with .Title }}<p id="{{ anchorize . }}" class="display-4 mt-5{{ if and $.IsHome site.Params.home.centerHeadline }} text-center{{ end }}">{{ . }}</p>{{ end }}
|
{{ with $title }}<p id="{{ anchorize . }}" class="display-4 mt-5{{ if and $.IsHome site.Params.home.centerHeadline }} text-center{{ end }}">{{ . }}</p>{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ if (.Params.menu) }}
|
{{ if (.Params.menu) }}
|
||||||
{{- partial "assets/section-menu.html" (dict "page" .) -}}
|
{{- partial "assets/section-menu.html" (dict "page" .) -}}
|
||||||
|
@@ -1,10 +1,12 @@
|
|||||||
{{ define "main" -}}
|
{{ define "main" -}}
|
||||||
{{- $breakpoint := $.Scratch.Get "breakpoint" -}}
|
{{- $breakpoint := $.Scratch.Get "breakpoint" -}}
|
||||||
{{ $sidebar := .Render "single/sidebar" }}
|
{{- $hasSidebar := .Site.Params.navigation.sidebar | default true -}}
|
||||||
|
{{ $sidebar := "" }}
|
||||||
|
{{ if $hasSidebar }}{{ $sidebar = .Render "single/sidebar" }}{{ end }}
|
||||||
{{ $toc := .Render "single/panel-toc" }}
|
{{ $toc := .Render "single/panel-toc" }}
|
||||||
|
|
||||||
{{ with $sidebar }}
|
{{ with $sidebar }}
|
||||||
<div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvass-sidebar" aria-inledby="offcanvas-label">
|
<div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvass-sidebar" aria-labelledby="offcanvas-label">
|
||||||
<div class="offcanvas-header">
|
<div class="offcanvas-header">
|
||||||
<h5 class="offcanvas-title" id="offcanvas-label">{{ strings.FirstUpper $.Section }}</h5>
|
<h5 class="offcanvas-title" id="offcanvas-label">{{ strings.FirstUpper $.Section }}</h5>
|
||||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="{{ T "close" }}"></button>
|
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="{{ T "close" }}"></button>
|
||||||
@@ -16,7 +18,7 @@
|
|||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
<div class="container-xxl flex-fill p-4 px-xxl-0">
|
<div class="container-xxl flex-fill p-4 px-xxl-0">
|
||||||
{{ if $sidebar -}}
|
{{ if $hasSidebar -}}
|
||||||
<div class="row row-cols-1 row-cols-{{ $breakpoint.current }}-2 row-cols-{{ $breakpoint.next }}-3">
|
<div class="row row-cols-1 row-cols-{{ $breakpoint.current }}-2 row-cols-{{ $breakpoint.next }}-3">
|
||||||
<div class="col col-{{ $breakpoint.next }}-2 d-none d-{{ $breakpoint.next }}-block sidebar-overflow sticky-top pt-5">
|
<div class="col col-{{ $breakpoint.next }}-2 d-none d-{{ $breakpoint.next }}-block sidebar-overflow sticky-top pt-5">
|
||||||
{{ $sidebar | safeHTML }}
|
{{ $sidebar | safeHTML }}
|
||||||
@@ -39,4 +41,4 @@
|
|||||||
</div>
|
</div>
|
||||||
{{ end -}}
|
{{ end -}}
|
||||||
</div>
|
</div>
|
||||||
{{ end -}}
|
{{ end -}}
|
||||||
|
@@ -12,7 +12,10 @@
|
|||||||
{{- errorf "layout [_default/single/header.html] - Invalid value for param 'metadata': %s" $metadata -}}
|
{{- errorf "layout [_default/single/header.html] - Invalid value for param 'metadata': %s" $metadata -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{ with .Title }}<p class="display-4 mt-5">{{ . }}</p>{{ end }}
|
{{ $title := .Title }}
|
||||||
|
{{ if site.Params.main.titleCase }}{{ $title = title $title }}{{ end }}
|
||||||
|
|
||||||
|
{{ with $title }}<p class="display-4 mt-5">{{ . }}</p>{{ end }}
|
||||||
{{ if ne $metadata "none" }}
|
{{ if ne $metadata "none" }}
|
||||||
<small class="text-body-secondary text-uppercase">
|
<small class="text-body-secondary text-uppercase">
|
||||||
{{ if .Date }}
|
{{ if .Date }}
|
||||||
|
@@ -1,7 +1,5 @@
|
|||||||
{{- $menu := .Scratch.Get "sidebar" -}}
|
{{- $menu := .Scratch.Get "sidebar" -}}
|
||||||
{{- $version := .Scratch.Get "version" -}}
|
{{- $version := .Scratch.Get "version" -}}
|
||||||
{{ $sidebar := "" }}
|
{{ if $menu }}
|
||||||
{{- $hasSidebar := .Site.Params.navigation.sidebar | default true -}}
|
|
||||||
{{ if and $menu $hasSidebar }}
|
|
||||||
{{ partial "assets/sidebar.html" (dict "page" . "menu" $menu "version" $version) }}
|
{{ partial "assets/sidebar.html" (dict "page" . "menu" $menu "version" $version) }}
|
||||||
{{ end }}
|
{{ end -}}
|
||||||
|
@@ -7,6 +7,11 @@
|
|||||||
<meta name="robots" content="noindex">
|
<meta name="robots" content="noindex">
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<noscript><meta http-equiv="refresh" content="0; url={{ .Permalink }}"></noscript>
|
<noscript><meta http-equiv="refresh" content="0; url={{ .Permalink }}"></noscript>
|
||||||
<script src='{{ partial "utilities/GetStaticURL" (dict "url" "js/alias.js") }}'></script>
|
{{ if site.Params.main.enableLanguageSelectionStorage }}
|
||||||
|
{{- partial "footer/scripts.html" (dict "page" page "type" "critical") -}}
|
||||||
|
{{- partial "footer/scripts.html" (dict "page" page "type" "functional") -}}
|
||||||
|
{{ else }}
|
||||||
|
<script src='{{ partial "utilities/GetStaticURL" (dict "url" "js/alias.js") }}'></script>
|
||||||
|
{{ end }}
|
||||||
</head>
|
</head>
|
||||||
</html>
|
</html>
|
@@ -1,3 +1,6 @@
|
|||||||
{{ with .Title }}<p class="display-4 mt-5">{{ . }}</p>{{ end }}
|
{{ $title := .Title }}
|
||||||
|
{{ if site.Params.main.titleCase }}{{ $title = title $title }}{{ end }}
|
||||||
|
|
||||||
|
{{ with $title }}<p class="display-4 mt-5">{{ . }}</p>{{ end }}
|
||||||
{{ partial "assets/sharing.html" (dict "page" .) }}
|
{{ partial "assets/sharing.html" (dict "page" .) }}
|
||||||
<p class="lead mb-5">{{ .Description }}</p>
|
<p class="lead mb-5">{{ .Description }}</p>
|
||||||
|
@@ -1,3 +1,6 @@
|
|||||||
{{ with .Title }}<p class="display-4 mt-5">{{ . }}</p>{{ end }}
|
{{ $title := .Title }}
|
||||||
|
{{ if site.Params.main.titleCase }}{{ $title = title $title }}{{ end }}
|
||||||
|
|
||||||
|
{{ with $title }}<p class="display-4 mt-5">{{ . }}</p>{{ end }}
|
||||||
{{ partial "assets/sharing.html" (dict "page" .) }}
|
{{ partial "assets/sharing.html" (dict "page" .) }}
|
||||||
<p class="lead mb-5">{{ .Description }}</p>
|
<p class="lead mb-5">{{ .Description }}</p>
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
Copyright © 2024 The Hinode Team / Mark Dumay. All rights reserved.
|
Copyright © 2022 - 2025 The Hinode Team / Mark Dumay. All rights reserved.
|
||||||
Use of this source code is governed by The MIT License (MIT) that can be found in the LICENSE file.
|
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.
|
Visit gethinode.com/license for more details.
|
||||||
-->
|
-->
|
||||||
@@ -39,13 +39,22 @@
|
|||||||
{{ $element := "" }}
|
{{ $element := "" }}
|
||||||
|
|
||||||
<!-- Split path between upload dir and sub dir -->
|
<!-- Split path between upload dir and sub dir -->
|
||||||
{{ $newdir := urls.JoinPath (index (split $dir "upload") 0) "upload" }}
|
{{ $dir = path.Clean (trim .dir "/") }}
|
||||||
{{ $file = urls.JoinPath (index (split $dir "upload") 1) $file }}
|
{{ $api := "image/upload" }}
|
||||||
{{ $dir = $newdir }}
|
|
||||||
|
<!-- Define the account, optional API segment, and directory -->
|
||||||
|
{{ $elements := split $dir "/" }}
|
||||||
|
{{ $account := index $elements 0 }}
|
||||||
|
{{ $operation := "" }}
|
||||||
|
{{ if and (in (slice "image" "video") (index $elements 1)) (eq (index $elements 2) "upload") }}
|
||||||
|
{{ $api = delimit (slice | append (index $elements 1) | append (index $elements 2)) "/" }}
|
||||||
|
{{ $dir = delimit (after 3 $elements) "/" }}
|
||||||
|
{{ else }}
|
||||||
|
{{ $dir = delimit (after 1 $elements) "/" }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
<!-- Generate image URL -->
|
<!-- Generate image URL -->
|
||||||
{{ if not $error }}
|
{{ if not $error }}
|
||||||
{{ $operation := "" }}
|
|
||||||
{{ if $format }}
|
{{ if $format }}
|
||||||
{{ $operation = printf "%s,h_%d,w_%d" $transform $height $width }}
|
{{ $operation = printf "%s,h_%d,w_%d" $transform $height $width }}
|
||||||
{{ $file = printf "%s.%s" (strings.TrimSuffix (path.Ext $file) $file) $format }}
|
{{ $file = printf "%s.%s" (strings.TrimSuffix (path.Ext $file) $file) $format }}
|
||||||
@@ -55,7 +64,7 @@
|
|||||||
{{ with $anchor }}
|
{{ with $anchor }}
|
||||||
{{ $operation = printf "%s,g_%s" $operation . }}
|
{{ $operation = printf "%s,g_%s" $operation . }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{- $element = urls.JoinPath (slice "https://" $host $dir $operation $file) -}}
|
{{- $element = partial "utilities/URLJoin.html" (dict "elements" (slice "https://" $host $account $api $operation $dir $file)) -}}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{ return $element }}
|
{{ return $element }}
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user