mirror of
https://github.com/gethinode/hinode.git
synced 2025-10-07 18:14:28 +00:00
Compare commits
956 Commits
v0.24.0-be
...
v0.29.0
Author | SHA1 | Date | |
---|---|---|---|
![]() |
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 | ||
![]() |
54e0f720bd | ||
![]() |
423670f95f | ||
![]() |
78560aa07a | ||
![]() |
1c6ff7ac55 | ||
![]() |
eb9b7ea8f0 | ||
![]() |
753b949af2 | ||
![]() |
2322cdcdc0 | ||
![]() |
edc8128395 | ||
![]() |
cc22f73f5c | ||
![]() |
8312de35c8 | ||
![]() |
a3a8d7e08c | ||
![]() |
0513692cf5 | ||
![]() |
bfa6e00c2f | ||
![]() |
c61fa6b4c7 | ||
![]() |
c754451002 | ||
![]() |
8d4cb82863 | ||
![]() |
ae18134218 | ||
![]() |
fb20543d88 | ||
![]() |
14d1489b60 | ||
![]() |
e99ac83fbc | ||
![]() |
d96b103180 | ||
![]() |
7f1dc95402 | ||
![]() |
e3420e357c | ||
![]() |
5ee51ebb18 | ||
![]() |
684ec0f823 | ||
![]() |
5335e3d607 | ||
![]() |
3fc51e6158 | ||
![]() |
4a20e8beef | ||
![]() |
163ac52332 | ||
![]() |
176c5447a8 | ||
![]() |
1a88fa93bb | ||
![]() |
b0d266aedc | ||
![]() |
eba81c236a | ||
![]() |
cdca92ea02 | ||
![]() |
a4743aabf5 | ||
![]() |
cf8465e627 | ||
![]() |
86941f05d0 | ||
![]() |
cbb777f524 | ||
![]() |
d20d00e42f | ||
![]() |
348981a1a0 | ||
![]() |
0942d79e2c | ||
![]() |
0251bd1838 | ||
![]() |
ae5e240cf1 | ||
![]() |
dd127b973a | ||
![]() |
63b186a2e5 | ||
![]() |
bc71ba1d19 | ||
![]() |
9c3bd970a5 | ||
![]() |
9f143786af | ||
![]() |
e8ccada6f3 | ||
![]() |
a40092b1eb | ||
![]() |
00965b5224 | ||
![]() |
92dc97d325 | ||
![]() |
2394f148e5 | ||
![]() |
8d259a3e3a | ||
![]() |
1c8912e92e | ||
![]() |
207c08431f | ||
![]() |
d2703d4885 | ||
![]() |
4728191370 | ||
![]() |
cd40d75962 | ||
![]() |
2d4732d03b | ||
![]() |
e3c256b41f | ||
![]() |
f0a53f252c | ||
![]() |
a1273d99d5 | ||
![]() |
4e62956c82 | ||
![]() |
cf096a7f6a | ||
![]() |
ee790dc6fd | ||
![]() |
df9bc9ed6c | ||
![]() |
69338b4abf | ||
![]() |
c206054dc8 | ||
![]() |
a2bcba5916 | ||
![]() |
788b68f6bc | ||
![]() |
73697f43aa | ||
![]() |
129df382cd | ||
![]() |
c15eb4edc3 | ||
![]() |
12725caa1c | ||
![]() |
6077c33fcc | ||
![]() |
b944d818c8 | ||
![]() |
f25fbb3440 | ||
![]() |
0b9d43f130 | ||
![]() |
884da31fd0 | ||
![]() |
6dbfb0ac64 | ||
![]() |
3bef9579b4 | ||
![]() |
0ea1f92d4c | ||
![]() |
77d44d44c6 | ||
![]() |
e8c1eac2af | ||
![]() |
2f992b82cf | ||
![]() |
fe70b24859 | ||
![]() |
d18f0469fc | ||
![]() |
497c5d0e5e | ||
![]() |
834435db00 | ||
![]() |
3d8195e24b | ||
![]() |
ce31587f22 | ||
![]() |
6342ae1a33 | ||
![]() |
88eb894fde | ||
![]() |
8870668c21 | ||
![]() |
cd379fa8d7 | ||
![]() |
fd029492f7 | ||
![]() |
29b0d6f978 | ||
![]() |
bed2afe44d | ||
![]() |
1922fc825e | ||
![]() |
8c3ea99429 | ||
![]() |
d8929da5ec | ||
![]() |
4a5e8c7311 | ||
![]() |
600b487f43 | ||
![]() |
ed013e9b6f | ||
![]() |
5a299a73dc | ||
![]() |
82f3837db1 | ||
![]() |
69cf1ccf6c | ||
![]() |
bf76ee7108 | ||
![]() |
7a1c3970ea | ||
![]() |
a679b1c7e0 | ||
![]() |
bb448f3194 | ||
![]() |
b017a0a785 | ||
![]() |
00d141a4da | ||
![]() |
88dfc50c50 | ||
![]() |
61ad1106c5 | ||
![]() |
f47d738577 | ||
![]() |
323f36a514 | ||
![]() |
151b1d2230 | ||
![]() |
f58f8f1a0a | ||
![]() |
7c786048cc | ||
![]() |
2c0a34c0e1 | ||
![]() |
b6320787e7 | ||
![]() |
c695e0a1f5 | ||
![]() |
8acd6538a5 | ||
![]() |
e18bb8f1b2 | ||
![]() |
d74f9565e4 | ||
![]() |
3016267a7b | ||
![]() |
d1b347b46f | ||
![]() |
777440ef22 | ||
![]() |
f104ff1519 | ||
![]() |
a7a0d26b27 | ||
![]() |
058cebb0b4 | ||
![]() |
af146e3989 | ||
![]() |
69c306bb69 | ||
![]() |
1cfe6190b6 | ||
![]() |
4b40e66534 | ||
![]() |
96af9412b3 | ||
![]() |
1ec9568997 | ||
![]() |
9a0f907bd4 | ||
![]() |
1d59a914b8 | ||
![]() |
91090aa87e | ||
![]() |
e1a3109a95 | ||
![]() |
c53d653751 | ||
![]() |
e95b99a742 | ||
![]() |
548f1f7107 | ||
![]() |
0a59f1ea2b | ||
![]() |
4b96b405ec | ||
![]() |
aaa6ced022 | ||
![]() |
0582716f19 | ||
![]() |
71df26f256 | ||
![]() |
8db0f6585e | ||
![]() |
0d703ac531 | ||
![]() |
55d73b3fbd | ||
![]() |
741bff8a8a | ||
![]() |
f8dcebb14d | ||
![]() |
d054c3e07f | ||
![]() |
c962f93dda | ||
![]() |
2bea049d20 | ||
![]() |
407a7b3703 | ||
![]() |
e57e8d32cb | ||
![]() |
417475643c | ||
![]() |
99801eb90a | ||
![]() |
28a061e4ee | ||
![]() |
be776f10a8 | ||
![]() |
57bfea7b71 | ||
![]() |
9126df161a | ||
![]() |
6ced4573b0 | ||
![]() |
be38c8eab7 | ||
![]() |
cab8e0e9f1 | ||
![]() |
e1378b9f92 | ||
![]() |
23d051e6bc | ||
![]() |
c3c1b4b246 | ||
![]() |
caa3a2a7c7 | ||
![]() |
f235eb42b6 | ||
![]() |
7aae640999 | ||
![]() |
7c606ef48c | ||
![]() |
cca70f538c | ||
![]() |
ac8f0c3e95 | ||
![]() |
7c1a19f6a1 | ||
![]() |
41e02bf064 | ||
![]() |
d8fcae856b | ||
![]() |
c4c7f55334 | ||
![]() |
76c10271f3 | ||
![]() |
88a271cf9d | ||
![]() |
fb74835018 | ||
![]() |
c801ff0241 | ||
![]() |
dfc3cd706a | ||
![]() |
95a1a3b860 | ||
![]() |
f5462ca5ba | ||
![]() |
f42722c526 | ||
![]() |
4d02900162 | ||
![]() |
3ca8bdd0a5 | ||
![]() |
371b054302 | ||
![]() |
055614e6ee | ||
![]() |
7d712b13fe | ||
![]() |
5ee8383868 | ||
![]() |
54f012f5be | ||
![]() |
d28a642283 | ||
![]() |
91becdeeb5 | ||
![]() |
b7c5b8a47e | ||
![]() |
776aad8427 | ||
![]() |
bcf9b8aa7c | ||
![]() |
15d0161240 | ||
![]() |
998db85994 | ||
![]() |
e6586b52cd | ||
![]() |
937964a02b | ||
![]() |
9b4afdfb35 | ||
![]() |
2121e663a0 | ||
![]() |
46699664dc | ||
![]() |
98ec788fb3 | ||
![]() |
e248862905 | ||
![]() |
8ba8acf675 | ||
![]() |
a7cf1ad918 | ||
![]() |
492ce3e38b | ||
![]() |
eaa5c217db | ||
![]() |
410d681d23 | ||
![]() |
deaf9f0fec | ||
![]() |
7ed3313c55 | ||
![]() |
1477ff7bb2 | ||
![]() |
7e2f6606bf | ||
![]() |
2acc8fc737 | ||
![]() |
96fe90ce9d | ||
![]() |
acf25e5375 | ||
![]() |
aa35e03692 | ||
![]() |
31cf9eb577 | ||
![]() |
9a8ebd3558 | ||
![]() |
148c587283 | ||
![]() |
7c9c4cbabb | ||
![]() |
20f14934c2 | ||
![]() |
840e67d12d | ||
![]() |
8ef57a265e | ||
![]() |
8677357450 | ||
![]() |
79ac2dae4f | ||
![]() |
20cad07a0b | ||
![]() |
2c97af2fef | ||
![]() |
95ded6296c | ||
![]() |
3b46095821 | ||
![]() |
1bf4e74e56 | ||
![]() |
9b75b46c49 | ||
![]() |
107077f5ec | ||
![]() |
528b70bfa2 | ||
![]() |
75ab4625b1 | ||
![]() |
bac3054ec2 | ||
![]() |
d63fd5f212 | ||
![]() |
c8b9df7ae5 | ||
![]() |
12daa88f39 | ||
![]() |
c5d895388b | ||
![]() |
5678d2cab5 | ||
![]() |
99d939a3a0 | ||
![]() |
c9a87e8514 | ||
![]() |
af08829f7d | ||
![]() |
28a59a4eac | ||
![]() |
727387931c | ||
![]() |
13a085099c | ||
![]() |
473f390ee6 | ||
![]() |
65cfc0933a | ||
![]() |
321e7f6df5 | ||
![]() |
dda623f040 | ||
![]() |
80d1147d08 | ||
![]() |
b28abcd6f2 | ||
![]() |
93885492d7 | ||
![]() |
ed5daa780d | ||
![]() |
00501edadd | ||
![]() |
fdb1472f9e | ||
![]() |
b176fbd365 | ||
![]() |
f2b0e49aa9 | ||
![]() |
5b8df68db5 | ||
![]() |
fce4b7dde9 | ||
![]() |
ba43672bf6 | ||
![]() |
1b93485064 | ||
![]() |
8d9f12d676 | ||
![]() |
1a89aa39c2 | ||
![]() |
6b60188702 | ||
![]() |
5e410040cc | ||
![]() |
b00f39f850 | ||
![]() |
7e396c5a4d | ||
![]() |
4d43f0bb9b | ||
![]() |
3512bb9dfe | ||
![]() |
7dde897e41 | ||
![]() |
f2cad0fe88 | ||
![]() |
eed2d8f68d | ||
![]() |
d1aebe2fbe | ||
![]() |
013614b149 | ||
![]() |
d55446d5cc |
@@ -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
|
2
.github/workflows/lint-build.yml
vendored
2
.github/workflows/lint-build.yml
vendored
@@ -43,7 +43,7 @@ jobs:
|
||||
matrix:
|
||||
os: [macos-latest, windows-latest, ubuntu-latest]
|
||||
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||
node-version: [18.x, 20.x]
|
||||
node-version: [20.x, 22.x]
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
|
3
.gitignore
vendored
3
.gitignore
vendored
@@ -1,4 +1,5 @@
|
||||
/_vendor
|
||||
_vendor/
|
||||
prebuild/
|
||||
public/
|
||||
resources/
|
||||
node_modules/
|
||||
|
2
LICENSE
2
LICENSE
@@ -1,6 +1,6 @@
|
||||
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
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
@@ -123,7 +123,7 @@ Hinode is inspired by the following themes:
|
||||
## Donate
|
||||
|
||||
<!-- 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 -->
|
||||
|
||||
## License
|
||||
|
@@ -1,14 +1,15 @@
|
||||
/* eslint-disable no-undef */
|
||||
const alert = document.getElementById('page-alert')
|
||||
const closeBtn = document.getElementById('page-alert-btn-close')
|
||||
if (alert !== null && closeBtn !== null) {
|
||||
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) {
|
||||
alert.classList.add('d-none')
|
||||
}
|
||||
|
||||
closeBtn.addEventListener('click', () => {
|
||||
sessionStorage.setItem(`page-alert-${version}`, 'seen')
|
||||
setSessionStorage(`page-alert-${version}`, 'seen', 'functional')
|
||||
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)
|
||||
}
|
||||
}
|
@@ -9,44 +9,49 @@
|
||||
(() => {
|
||||
'use strict'
|
||||
|
||||
const storedTheme = localStorage.getItem('theme')
|
||||
const supportedThemes = ['auto', 'dark', 'light'];
|
||||
|
||||
const getPreferredTheme = () => {
|
||||
if (storedTheme) {
|
||||
return storedTheme
|
||||
}
|
||||
// retrieves the currently stored theme from local storage
|
||||
const storedTheme = getLocalStorage('theme', 'auto', 'functional')
|
||||
|
||||
// retrieves the theme preferred by the client, defaults to light
|
||||
function getPreferredTheme() {
|
||||
return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'
|
||||
}
|
||||
|
||||
const setTheme = function (theme) {
|
||||
// retrieves the current theme, either from local storage or client's preferences
|
||||
function getTheme() {
|
||||
if (storedTheme) {
|
||||
return storedTheme
|
||||
} else {
|
||||
const preference = getPreferredTheme()
|
||||
setLocalStorage('theme', preference, 'functional')
|
||||
return preference
|
||||
}
|
||||
}
|
||||
|
||||
// applies and stores requested theme
|
||||
function setTheme(theme) {
|
||||
if (!supportedThemes.includes(theme)) {
|
||||
theme = 'auto'
|
||||
}
|
||||
setLocalStorage('theme', theme, 'functional')
|
||||
|
||||
if (theme === 'auto') {
|
||||
document.documentElement.setAttribute('data-bs-theme', (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'))
|
||||
document.documentElement.setAttribute('data-bs-theme', (getPreferredTheme()))
|
||||
} else {
|
||||
document.documentElement.setAttribute('data-bs-theme', theme)
|
||||
}
|
||||
}
|
||||
|
||||
setTheme(getPreferredTheme())
|
||||
|
||||
const showActiveTheme = theme => {
|
||||
const activeSelectors = document.querySelectorAll('.theme-icon-active')
|
||||
const activeButtons = document.querySelectorAll(`[data-bs-theme-value="${theme}"]`)
|
||||
if (activeButtons.length > 0) {
|
||||
const activeIcon = activeButtons[0].querySelector('span')
|
||||
|
||||
document.querySelectorAll('[data-bs-theme-value]').forEach(element => {
|
||||
element.classList.remove('active')
|
||||
document.querySelectorAll('.navbar-mode-selector').forEach(chk => {
|
||||
chk.checked = (document.documentElement.getAttribute('data-bs-theme') === 'light')
|
||||
})
|
||||
|
||||
for (let i = 0; i < activeSelectors.length; ++i) {
|
||||
activeSelectors[i].innerHTML = activeIcon.innerHTML
|
||||
}
|
||||
|
||||
for (let i = 0; i < activeButtons.length; ++i) {
|
||||
activeButtons[i].classList.add('active')
|
||||
}
|
||||
}
|
||||
// alternates the currently active theme
|
||||
function toggleTheme() {
|
||||
const target = document.documentElement.getAttribute('data-bs-theme') === 'dark' ? 'light' : 'dark'
|
||||
setTheme(target)
|
||||
}
|
||||
|
||||
window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', () => {
|
||||
@@ -56,18 +61,16 @@
|
||||
})
|
||||
|
||||
window.addEventListener('DOMContentLoaded', () => {
|
||||
showActiveTheme(getPreferredTheme())
|
||||
document.querySelectorAll('.navbar-mode-selector').forEach(chk => {
|
||||
chk.addEventListener('change', function () {
|
||||
document.documentElement.setAttribute('data-bs-theme-animate', 'true')
|
||||
toggleTheme()
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
document.querySelectorAll('[data-bs-theme-value]')
|
||||
.forEach(toggle => {
|
||||
toggle.addEventListener('click', () => {
|
||||
const theme = toggle.getAttribute('data-bs-theme-value')
|
||||
localStorage.setItem('theme', theme)
|
||||
setTheme(theme)
|
||||
showActiveTheme(theme)
|
||||
})
|
||||
})
|
||||
})
|
||||
// initialize theme directly when script is invoked
|
||||
setTheme(getTheme())
|
||||
})()
|
||||
|
||||
{{- 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 togglers = document.querySelectorAll('.main-nav-toggler')
|
||||
const modeSelectors = document.querySelectorAll('.switch-mode-collapsed')
|
||||
const colorsBG = ['body', 'secondary', 'tertiary']
|
||||
|
||||
function updateNavbar () {
|
||||
let storedTheme
|
||||
if (typeof getLocalStorage === "function") {
|
||||
storedTheme = getLocalStorage('theme', null, 'functional')
|
||||
}
|
||||
|
||||
if (window.scrollY > 75) {
|
||||
navbar.classList.add('nav-active')
|
||||
const storedTheme = localStorage.getItem('theme')
|
||||
if (storedTheme) {
|
||||
navbar.setAttribute('data-bs-theme', storedTheme)
|
||||
}
|
||||
} else {
|
||||
navbar.classList.remove('nav-active')
|
||||
const defaultTheme = navbar.getAttribute('data-bs-overlay')
|
||||
|
||||
const targetTheme = defaultTheme ? defaultTheme : storedTheme
|
||||
if (targetTheme) {
|
||||
navbar.setAttribute('data-bs-theme', defaultTheme)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ((navbar !== null) && (window.performance.getEntriesByType)) {
|
||||
if (window.performance.getEntriesByType('navigation')[0].type === 'reload') {
|
||||
updateNavbar()
|
||||
fixed && updateNavbar()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +40,7 @@ if (navbar !== null && togglers !== null) {
|
||||
attributeFilter: ['data-bs-theme']
|
||||
}
|
||||
const Observer = new MutationObserver((mutationrecords) => {
|
||||
updateNavbar()
|
||||
fixed && updateNavbar()
|
||||
})
|
||||
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
|
||||
window.onscroll = () => {
|
||||
updateNavbar()
|
||||
fixed && updateNavbar()
|
||||
}
|
||||
|
||||
// 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))
|
||||
}
|
||||
|
||||
const shareBtn = document.getElementById('btn-webshare')
|
||||
|
||||
if (shareBtn !== null) {
|
||||
const shareButtons = document.querySelectorAll('[data-sharing-url]')
|
||||
shareButtons.forEach(btn => {
|
||||
if (navigator.share) {
|
||||
const title = shareBtn.getAttribute('data-sharing-title')
|
||||
const description = shareBtn.getAttribute('data-sharing-description')
|
||||
const url = shareBtn.getAttribute('data-sharing-url')
|
||||
const title = btn.getAttribute('data-sharing-title')
|
||||
const description = btn.getAttribute('data-sharing-description')
|
||||
const url = btn.getAttribute('data-sharing-url')
|
||||
|
||||
// show button if it supports webShareAPI
|
||||
shareBtn.style.display = 'block'
|
||||
shareBtn.addEventListener('click', () =>
|
||||
btn.style.display = 'block'
|
||||
btn.addEventListener('click', () =>
|
||||
webShareAPI(title, description, url)
|
||||
)
|
||||
} else {
|
||||
// hide button if host does not support Web Share API
|
||||
shareBtn.style.display = 'none'
|
||||
btn.style.display = 'none'
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
{{- 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')
|
||||
})
|
@@ -39,6 +39,8 @@
|
||||
@import "components/toc.scss";
|
||||
@import "components/video.scss";
|
||||
@import "common/animation.scss";
|
||||
@import "common/masonry.scss";
|
||||
@import "common/scrollbar.scss";
|
||||
@import "common/styles.scss";
|
||||
@import "layouts/reboot.scss";
|
||||
@import "layouts/type.scss";
|
||||
|
@@ -37,6 +37,8 @@
|
||||
@import "components/toc.scss";
|
||||
@import "components/video.scss";
|
||||
@import "common/animation.scss";
|
||||
@import "common/masonry.scss";
|
||||
@import "common/scrollbar.scss";
|
||||
@import "common/styles.scss";
|
||||
@import "layouts/reboot.scss";
|
||||
@import "layouts/type.scss";
|
||||
|
@@ -1,25 +1,25 @@
|
||||
// scss-docs-start icons
|
||||
$form-check-input-checked-bg-image: url("/icons/form-check-input-checked-bg-image.svg") !default;
|
||||
$form-check-radio-checked-bg-image: url("/icons/form-check-radio-checked-bg-image.svg") !default;
|
||||
$form-check-input-indeterminate-bg-image: url("/icons/form-check-input-indeterminate-bg-image.svg") !default;
|
||||
$form-switch-bg-image: url("/icons/form-switch-bg-image.svg") !default;
|
||||
$form-switch-bg-image-dark: url("/icons/form-switch-bg-image-dark.svg") !default;
|
||||
$form-switch-focus-bg-image: url("/icons/form-switch-focus-bg-image.svg") !default;
|
||||
$form-switch-checked-bg-image: url("/icons/form-switch-checked-bg-image.svg") !default;
|
||||
$form-select-indicator: url("/icons/form-select-indicator.svg") !default;
|
||||
$form-select-indicator-dark: url("/icons/form-select-indicator-dark.svg") !default;
|
||||
$form-feedback-icon-valid: url("/icons/form-feedback-icon-valid.svg") !default;
|
||||
$form-feedback-icon-invalid: url("/icons/form-feedback-icon-invalid.svg") !default;
|
||||
$navbar-light-toggler-icon-bg: url("/icons/navbar-light-toggler-icon-bg.svg") !default;
|
||||
$navbar-dark-toggler-icon-bg: url("/icons/navbar-dark-toggler-icon-bg.svg") !default;
|
||||
$accordion-button-icon: url("/icons/accordion-button-icon.svg") !default;
|
||||
$accordion-button-icon-dark: url("/icons/accordion-button-icon-dark.svg") !default;
|
||||
$accordion-button-active-icon: url("/icons/accordion-button-active-icon.svg") !default;
|
||||
$accordion-button-active-icon-dark: url("/icons/accordion-button-active-icon-dark.svg") !default;
|
||||
$carousel-control-prev-icon-bg: url("/icons/carousel-control-prev-icon-bg.svg") !default;
|
||||
$carousel-control-next-icon-bg: url("/icons/carousel-control-next-icon-bg.svg") !default;
|
||||
$btn-close-bg: url("/icons/btn-close-bg.svg") !default;
|
||||
$btn-toggle: url("/icons/btn-toggle.svg") !default;
|
||||
$btn-toggle-dark: url("/icons/btn-toggle-dark.svg") !default;
|
||||
$form-check-input-checked-bg-image: url("#{$base-url}icons/form-check-input-checked-bg-image.svg") !default;
|
||||
$form-check-radio-checked-bg-image: url("#{$base-url}icons/form-check-radio-checked-bg-image.svg") !default;
|
||||
$form-check-input-indeterminate-bg-image: url("#{$base-url}icons/form-check-input-indeterminate-bg-image.svg") !default;
|
||||
$form-switch-bg-image: url("#{$base-url}icons/form-switch-bg-image.svg") !default;
|
||||
$form-switch-bg-image-dark: url("#{$base-url}icons/form-switch-bg-image-dark.svg") !default;
|
||||
$form-switch-focus-bg-image: url("#{$base-url}icons/form-switch-focus-bg-image.svg") !default;
|
||||
$form-switch-checked-bg-image: url("#{$base-url}icons/form-switch-checked-bg-image.svg") !default;
|
||||
$form-select-indicator: url("#{$base-url}icons/form-select-indicator.svg") !default;
|
||||
$form-select-indicator-dark: url("#{$base-url}icons/form-select-indicator-dark.svg") !default;
|
||||
$form-feedback-icon-valid: url("#{$base-url}icons/form-feedback-icon-valid.svg") !default;
|
||||
$form-feedback-icon-invalid: url("#{$base-url}icons/form-feedback-icon-invalid.svg") !default;
|
||||
$navbar-light-toggler-icon-bg: url("#{$base-url}icons/navbar-light-toggler-icon-bg.svg") !default;
|
||||
$navbar-dark-toggler-icon-bg: url("#{$base-url}icons/navbar-dark-toggler-icon-bg.svg") !default;
|
||||
$accordion-button-icon: url("#{$base-url}icons/accordion-button-icon.svg") !default;
|
||||
$accordion-button-icon-dark: url("#{$base-url}icons/accordion-button-icon-dark.svg") !default;
|
||||
$accordion-button-active-icon: url("#{$base-url}icons/accordion-button-active-icon.svg") !default;
|
||||
$accordion-button-active-icon-dark: url("#{$base-url}icons/accordion-button-active-icon-dark.svg") !default;
|
||||
$carousel-control-prev-icon-bg: url("#{$base-url}icons/carousel-control-prev-icon-bg.svg") !default;
|
||||
$carousel-control-next-icon-bg: url("#{$base-url}icons/carousel-control-next-icon-bg.svg") !default;
|
||||
$btn-close-bg: url("#{$base-url}icons/btn-close-bg.svg") !default;
|
||||
$btn-toggle: url("#{$base-url}icons/btn-toggle.svg") !default;
|
||||
$btn-toggle-dark: url("#{$base-url}icons/btn-toggle-dark.svg") !default;
|
||||
|
||||
// scss-docs-end icons
|
||||
|
38
assets/scss/common/_masonry.scss
Normal file
38
assets/scss/common/_masonry.scss
Normal file
@@ -0,0 +1,38 @@
|
||||
.masonry {
|
||||
--masonry-padding: 4px;
|
||||
}
|
||||
|
||||
.m-row {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
padding: 0 var(--masonry-padding);
|
||||
}
|
||||
|
||||
.m-col {
|
||||
flex: 100%;
|
||||
max-width: 100%;
|
||||
padding: 0 var(--masonry-padding);
|
||||
}
|
||||
|
||||
.m-col div {
|
||||
margin-top: calc(2 * var(--masonry-padding));
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
$utilities: map-merge(
|
||||
$utilities,
|
||||
(
|
||||
"m-col": (
|
||||
property: max-width,
|
||||
responsive: true,
|
||||
class: m-col,
|
||||
values: (
|
||||
1: 100%,
|
||||
2: 50%,
|
||||
3: 33.3%,
|
||||
4: 25%,
|
||||
5: 20%,
|
||||
)
|
||||
)
|
||||
)
|
||||
);
|
34
assets/scss/common/_scrollbar.scss
Normal file
34
assets/scss/common/_scrollbar.scss
Normal file
@@ -0,0 +1,34 @@
|
||||
@mixin scrollbar(
|
||||
$foreground-color: var(--bs-primary),
|
||||
$background-color: var(--bs-tertiary-bg),
|
||||
$size: 10px
|
||||
) {
|
||||
// For Safari and Chrome (to force appearance in Chrome)
|
||||
&::-webkit-scrollbar {
|
||||
width: $size;
|
||||
height: $size;
|
||||
}
|
||||
|
||||
&::-webkit-scrollbar-thumb {
|
||||
border-radius: calc($size / 2);
|
||||
background: $foreground-color;
|
||||
}
|
||||
|
||||
&::-webkit-scrollbar-track {
|
||||
border-radius: calc($size / 2);
|
||||
background: $background-color;
|
||||
}
|
||||
|
||||
// Standard version (Firefox, only appears on scroll)
|
||||
@supports (-moz-appearance:none) {
|
||||
scrollbar-color: $foreground-color $background-color;
|
||||
}
|
||||
}
|
||||
|
||||
.scrollbar-horizontal
|
||||
{
|
||||
@include scrollbar;
|
||||
|
||||
overflow-x: scroll;
|
||||
margin: auto;
|
||||
}
|
@@ -1,3 +1,9 @@
|
||||
@if $enable-dark-mode {
|
||||
[data-bs-theme-animate="true"] body {
|
||||
transition: background-color 0.5s, color 0.5s;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Remove underline from all links
|
||||
//
|
||||
@@ -140,6 +146,24 @@ $utilities: map-merge(
|
||||
}
|
||||
}
|
||||
|
||||
.main-cover {
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(xxl) {
|
||||
.main-cover {
|
||||
min-height: calc(min(100vh, 1000px));
|
||||
}
|
||||
}
|
||||
|
||||
/* stylelint-disable media-feature-range-notation */
|
||||
@media (min-height: 1400px) {
|
||||
.main-cover {
|
||||
min-height: calc(min(100vh, 1000px));
|
||||
}
|
||||
}
|
||||
/* stylelint-enable media-feature-range-notation */
|
||||
|
||||
$utilities: map-merge(
|
||||
$utilities,
|
||||
(
|
||||
|
@@ -5,6 +5,8 @@ $enable-important-utilities: true !default;
|
||||
// Remove the border from the focused navigation toggler
|
||||
$navbar-toggler-focus-width: 0 !default;
|
||||
|
||||
$base-url: h.$base-url;
|
||||
|
||||
$font-family-sans-serif: h.$theme-font, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !default;
|
||||
$font-size-base: h.$font-size-base !default;
|
||||
$headings-font-weight: 600 !default;
|
||||
|
@@ -5,6 +5,8 @@ $enable-important-utilities: true !default;
|
||||
// Remove the border from the focused navigation toggler
|
||||
$navbar-toggler-focus-width: 0 !default;
|
||||
|
||||
$base-url: $base-url;
|
||||
|
||||
// scss-docs-start font
|
||||
$font-family-sans-serif: $theme-font, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !default;
|
||||
$font-size-base: $font-size-base !default;;
|
||||
@@ -23,6 +25,8 @@ strong {
|
||||
$black: #000 !default;
|
||||
$btn-toggle-color: $black !default;
|
||||
|
||||
$card-color: var(--bs-body-color);
|
||||
|
||||
$carousel-dark-indicator-active-bg: #fff !default;
|
||||
$carousel-dark-caption-color: #fff !default;
|
||||
$carousel-dark-control-icon-filter: invert(0) grayscale(100) !default;
|
||||
|
@@ -1,6 +1,54 @@
|
||||
.blockquote {
|
||||
// background: var(--bs-light);
|
||||
border-left: 0.3rem solid;
|
||||
border-color: $secondary;
|
||||
padding: 1rem 1.5rem;
|
||||
}
|
||||
|
||||
.blockquote-alert {
|
||||
--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 {
|
||||
--bs-btn-padding-x: 0;
|
||||
--bs-btn-padding-y: 0;
|
||||
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
@@ -5,11 +5,21 @@
|
||||
background-color: var(--#{$prefix}secondary-bg);
|
||||
}
|
||||
|
||||
.card-img-wrap {
|
||||
.card .card-img-wrap {
|
||||
overflow: hidden;
|
||||
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 {
|
||||
cursor: pointer;
|
||||
}
|
||||
@@ -97,3 +107,56 @@
|
||||
.card-button-link {
|
||||
text-decoration: underline if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
// support horizontally scrollable card groups
|
||||
.card-container-wrapper {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
div.card-container-wrapper::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
inset: 0;
|
||||
height: calc(100% - 2rem);
|
||||
background: linear-gradient(
|
||||
90deg,
|
||||
var(--bs-body-bg) 0%,
|
||||
transparent 1.5rem,
|
||||
transparent calc(100% - 1.5rem),
|
||||
var(--bs-body-bg) 100%
|
||||
);
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.card-container {
|
||||
padding-left: 1.5rem;
|
||||
padding-right: 1.5rem;
|
||||
gap: 1.5rem;
|
||||
margin-bottom: 2rem;
|
||||
scroll-snap-type: x proximity;
|
||||
}
|
||||
|
||||
.card-block-1 {
|
||||
width: 80%;
|
||||
scroll-snap-align: center;
|
||||
}
|
||||
|
||||
.card-block-2 {
|
||||
width: 40%;
|
||||
scroll-snap-align: center;
|
||||
}
|
||||
|
||||
.card-block-3 {
|
||||
width: 27%;
|
||||
scroll-snap-align: center;
|
||||
}
|
||||
|
||||
.card-block-4 {
|
||||
width: 20%;
|
||||
scroll-snap-align: center;
|
||||
}
|
||||
|
||||
.card-block-5 {
|
||||
width: 16%;
|
||||
scroll-snap-align: center;
|
||||
}
|
||||
|
@@ -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-style: solid !important;
|
||||
z-index: 1;
|
||||
@@ -12,13 +16,13 @@
|
||||
column-gap: var(--#{$prefix}nav-callout-gap) !important;
|
||||
}
|
||||
|
||||
.nav-callout > .tab-content {
|
||||
.nav-callout + .tab-content {
|
||||
background-color: var(--#{$prefix}nav-callout-bg);
|
||||
padding: 2 * $spacer;
|
||||
margin-top: 0 !important;
|
||||
}
|
||||
|
||||
.nav-callout > .nav-link {
|
||||
.nav-callout .nav-link {
|
||||
display: flex;
|
||||
text-align: start;
|
||||
vertical-align: text-top;
|
||||
@@ -27,7 +31,7 @@
|
||||
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-size: 50% (3 * $spacer);
|
||||
background-repeat: no-repeat;
|
||||
@@ -53,7 +57,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
.nav-callout > .accordion-item {
|
||||
.nav-callout .accordion-item {
|
||||
margin-top: 2 * $spacer;
|
||||
margin-bottom: 2 * $spacer;
|
||||
border: none;
|
||||
|
@@ -1,13 +1,81 @@
|
||||
// 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/
|
||||
|
||||
@if $enable-dark-mode {
|
||||
[data-bs-theme-animate="true"] .navbar {
|
||||
transition: 0.5s ease-in-out;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar {
|
||||
--bs-navbar-expanded-color: var(--bs-body-bg);
|
||||
--bs-navbar-toggler-color: var(--bs-navbar-hover-color);
|
||||
|
||||
transition: 0.5s ease-in-out;
|
||||
background-color: transparent;
|
||||
|
||||
@each $state, $val in $theme-colors {
|
||||
@@ -24,6 +92,15 @@
|
||||
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 {
|
||||
border-bottom: solid 1px var(--bs-navbar-hover-color);
|
||||
margin-bottom: -1px;
|
||||
@@ -35,6 +112,16 @@
|
||||
--bs-navbar-disabled-color: white !important;
|
||||
--bs-navbar-active-color: white !important;
|
||||
--bs-navbar-toggler-color: white;
|
||||
|
||||
.navbar-title, .mode-switch {
|
||||
--#{$prefix}border-color: white;
|
||||
|
||||
color: white !important;
|
||||
}
|
||||
|
||||
.mode-switch .fa-moon {
|
||||
color: $white;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-expanded {
|
||||
@@ -114,7 +201,7 @@
|
||||
background-color: var(--bs-navbar-toggler-color);
|
||||
}
|
||||
|
||||
.emphasis, .emphasis-dark, .emphasis-light {
|
||||
.emphasis {
|
||||
background-color: var(--bs-navbar-toggler-color);
|
||||
}
|
||||
|
||||
@@ -135,15 +222,6 @@
|
||||
--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 {
|
||||
width: 100% !important;
|
||||
}
|
||||
@@ -236,3 +314,8 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-overlay {
|
||||
position: absolute;
|
||||
z-index: $zindex-fixed;
|
||||
}
|
||||
|
@@ -7,22 +7,45 @@
|
||||
top: var(--navbar-offset);
|
||||
max-height: 90vh;
|
||||
overflow-y: auto;
|
||||
scrollbar-gutter: stable;
|
||||
}
|
||||
|
||||
.sidebar-item {
|
||||
color: rgba(0, 0, 0, 0.65);
|
||||
margin-left: 0 !important;
|
||||
padding-left: 0.85rem !important;
|
||||
display: inline-block;
|
||||
padding: 0.1875rem 0.5rem !important;
|
||||
|
||||
&.active {
|
||||
color: $primary;
|
||||
}
|
||||
|
||||
&.active,
|
||||
&:hover,
|
||||
&: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;
|
||||
font-weight: 600;
|
||||
color: rgba(0, 0, 0, 0.65);
|
||||
@@ -30,8 +53,7 @@
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: black;
|
||||
background-color: tint-color($primary, 90%);
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
&::before {
|
||||
@@ -43,50 +65,49 @@
|
||||
}
|
||||
}
|
||||
|
||||
.btn-toggle[aria-expanded="true"] {
|
||||
color: black;
|
||||
|
||||
.btn-toggle-group[aria-expanded="true"] {
|
||||
&::before {
|
||||
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 {
|
||||
@include color-mode(dark) {
|
||||
.sidebar-item {
|
||||
color: var(--bs-body-color);
|
||||
margin-left: 0 !important;
|
||||
padding-left: 0.85rem !important;
|
||||
|
||||
&.active,
|
||||
&.active {
|
||||
color: $primary-text-emphasis-dark !important;
|
||||
}
|
||||
|
||||
&: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,
|
||||
&:focus {
|
||||
color: white !important;
|
||||
background-color: transparent;
|
||||
box-shadow: inset 0 0 0 1px $primary-bg-subtle-dark;
|
||||
}
|
||||
}
|
||||
|
||||
.btn-toggle {
|
||||
.btn-toggle-group {
|
||||
color: var(--bs-body-color);
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
color: white !important;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
@@ -95,25 +116,9 @@
|
||||
}
|
||||
}
|
||||
|
||||
.btn-toggle[aria-expanded="true"] {
|
||||
.btn-toggle-group[aria-expanded="true"] {
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -1,3 +1,20 @@
|
||||
.datatable-container {
|
||||
border-bottom: none if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
.datatable-bottom {
|
||||
padding-top: 0 if($enable-important-utilities, !important, null);
|
||||
}
|
||||
|
||||
.datatable-sorter {
|
||||
padding-left: 0;
|
||||
padding-right: 1rem;
|
||||
}
|
||||
|
||||
.table-border-bottom-wrap {
|
||||
border-bottom-style: none !important
|
||||
}
|
||||
|
||||
@if $enable-dark-mode {
|
||||
@include color-mode(dark) {
|
||||
.table-striped, .table-striped-columns {
|
||||
@@ -9,5 +26,13 @@
|
||||
--bs-table-hover-bg: var(--bs-tertiary-bg);
|
||||
--bs-table-striped-color: var(--bs-body-color);
|
||||
}
|
||||
|
||||
.datatable-pagination-list-item {
|
||||
&:hover,
|
||||
&:focus,
|
||||
&.datatable-active {
|
||||
color: var(--bs-body-bg) !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -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 {
|
||||
[data-bs-theme="dark"] {
|
||||
.toc-button {
|
||||
|
@@ -1,11 +1,11 @@
|
||||
.youtube-embedded {
|
||||
.video-embedded {
|
||||
position: relative;
|
||||
padding-bottom: 56.25%;
|
||||
height: 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.youtube-embedded > iframe {
|
||||
.video-embedded > iframe {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
|
@@ -1,7 +1,6 @@
|
||||
# toml-docs-start main
|
||||
title = "Hinode"
|
||||
copyright = "Copyright © 2024 Mark Dumay."
|
||||
paginate = 9
|
||||
copyright = "Copyright © 2022 - 2025 Mark Dumay."
|
||||
enableGitInfo = true
|
||||
# toml-docs-end main
|
||||
|
||||
@@ -27,20 +26,48 @@ defaultContentLanguage = "en"
|
||||
defaultContentLanguageInSubdir = false
|
||||
# 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
|
||||
[outputFormats.REDIR]
|
||||
mediaType = "text/netlify"
|
||||
baseName = "_redirects"
|
||||
isPlainText = true
|
||||
notAlternative = true
|
||||
[outputFormats.REDIR]
|
||||
mediaType = "text/netlify"
|
||||
baseName = "_redirects"
|
||||
isPlainText = true
|
||||
notAlternative = true
|
||||
|
||||
[mediaTypes."text/netlify"]
|
||||
delimiter = ""
|
||||
|
||||
[outputs]
|
||||
home = ["HTML", "RSS", "REDIR"]
|
||||
# toml-docs-end redirect
|
||||
|
||||
# toml-docs-start outputs
|
||||
[outputs]
|
||||
home = ["HTML", "RSS", "REDIR", "netlify", "server"]
|
||||
# toml-docs-end outputs
|
||||
|
||||
# toml-docs-start build
|
||||
[build]
|
||||
writeStats = true
|
||||
@@ -49,6 +76,9 @@ home = ["HTML", "RSS", "REDIR"]
|
||||
[taxonomies]
|
||||
tag = 'tags'
|
||||
|
||||
[pagination]
|
||||
pagerSize = 9
|
||||
|
||||
[privacy]
|
||||
[privacy.vimeo]
|
||||
disabled = false
|
||||
@@ -75,15 +105,6 @@ home = ["HTML", "RSS", "REDIR"]
|
||||
[services.googleAnalytics]
|
||||
# ID = "G-xxxxxxxxxx"
|
||||
|
||||
[outputFormats]
|
||||
[outputFormats.XML]
|
||||
isPlainText = false
|
||||
mediaType = "application/xml"
|
||||
isHtml = false
|
||||
noUgly = true
|
||||
permalinkable = false
|
||||
name = "xml"
|
||||
|
||||
[minify]
|
||||
[minify.tdewolff.js]
|
||||
keepVarNames = true
|
||||
@@ -95,8 +116,7 @@ home = ["HTML", "RSS", "REDIR"]
|
||||
[module]
|
||||
[module.hugoVersion]
|
||||
extended = true
|
||||
min = "0.120.0"
|
||||
max = ""
|
||||
min = "0.141.0"
|
||||
[[module.mounts]]
|
||||
source = "archetypes"
|
||||
target = "archetypes"
|
||||
@@ -118,6 +138,11 @@ home = ["HTML", "RSS", "REDIR"]
|
||||
[[module.mounts]]
|
||||
source = "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]]
|
||||
source = "netlify.toml"
|
||||
target = "assets/config/netlify.toml"
|
||||
@@ -125,15 +150,29 @@ home = ["HTML", "RSS", "REDIR"]
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-bootstrap"
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-flexsearch"
|
||||
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"
|
||||
# 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"
|
||||
caption = "I work on everything coding and tweet developer memes"
|
||||
[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
|
||||
|
@@ -24,9 +24,15 @@ defaultMarkdownHandler = "goldmark"
|
||||
table = true
|
||||
taskList = true
|
||||
typographer = true
|
||||
[goldmark.extensions.passthrough]
|
||||
enable = true
|
||||
[goldmark.extensions.passthrough.delimiters]
|
||||
block = [['\[', '\]'], ['$$', '$$']]
|
||||
inline = [['\(', '\)'], ['$', '$']]
|
||||
[goldmark.parser]
|
||||
autoHeadingID = true
|
||||
autoHeadingIDType = 'github'
|
||||
wrapStandAloneImageWithinParagraph = false
|
||||
[goldmark.parser.attribute]
|
||||
block = true
|
||||
[goldmark.renderer]
|
||||
|
@@ -3,12 +3,17 @@
|
||||
separator = "-"
|
||||
description = "Hinode is a clean documentation and blog theme for your Hugo site based on Bootstrap 5."
|
||||
enableDarkMode = true
|
||||
enableLanguageSelectionStorage = false
|
||||
modes = ["light", "dark"]
|
||||
canonifyAssetsURLs = false
|
||||
endorse = true
|
||||
footerBelowFold = false
|
||||
loading = "lazy"
|
||||
breakpoint = "md"
|
||||
titleCase = false
|
||||
[main.internalLinks]
|
||||
validate = true
|
||||
pretty = false
|
||||
[main.externalLinks]
|
||||
cue = false
|
||||
tab = false
|
||||
@@ -26,11 +31,24 @@
|
||||
host = "imgix"
|
||||
# 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
|
||||
|
||||
|
||||
# toml-docs-start debugging
|
||||
[debugging]
|
||||
showJS = false
|
||||
showSCSS = false
|
||||
purgeHTMLComments = false
|
||||
includeSVGOrigin = true
|
||||
# toml-docs-end debugging
|
||||
|
||||
# toml-docs-start docs
|
||||
@@ -170,16 +188,16 @@
|
||||
# linkedIn = ""
|
||||
github = "https://github.com/gethinode/hinode"
|
||||
section = "blog"
|
||||
[author]
|
||||
[schema.author]
|
||||
name = "Mark Dumay"
|
||||
# twitter = "https://twitter.com/markdumay"
|
||||
linkedin = "https://www.linkedin.com/in/markdumay/"
|
||||
github = "https://github.com/markdumay"
|
||||
[logo]
|
||||
[schema.logo]
|
||||
url = "img/logo512x512.png"
|
||||
width = 512
|
||||
height = 512
|
||||
[image]
|
||||
[schema.image]
|
||||
url = "img/logo1280x640.png"
|
||||
width = 1280
|
||||
height = 640
|
||||
@@ -190,3 +208,38 @@
|
||||
|
||||
[links]
|
||||
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]]
|
||||
for = '/**'
|
||||
[headers.values]
|
||||
Strict-Transport-Security = "max-age=31536000; includeSubDomains; preload"
|
||||
X-Content-Type-Options = "nosniff"
|
||||
X-XSS-Protection = "1; mode=block"
|
||||
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'; \
|
||||
for = '/**'
|
||||
|
||||
[headers.values]
|
||||
Access-Control-Allow-Origin = '*'
|
||||
Content-Security-Policy = """
|
||||
base-uri 'self'; \
|
||||
connect-src 'self'
|
||||
https://*.google-analytics.com https://*.analytics.google.com https://*.googletagmanager.com; \
|
||||
font-src 'self' https://fonts.gstatic.com; \
|
||||
frame-src 'self' https://www.youtube-nocookie.com https://www.youtube.com; \
|
||||
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; \
|
||||
connect-src 'self' *.google-analytics.com *.analytics.google.com *.googletagmanager.com; \
|
||||
default-src 'none'; \
|
||||
font-src 'self' fonts.gstatic.com; \
|
||||
form-action 'self'; \
|
||||
frame-src player.cloudinary.com www.youtube-nocookie.com www.youtube.com player.vimeo.com; \
|
||||
img-src 'self' *.google-analytics.com *.googletagmanager.com data: *.imgix.net *.imagekit.io *.cloudinary.com i.ytimg.com tile.openstreetmap.org i.vimeocdn.com; \
|
||||
manifest-src 'self'; \
|
||||
media-src 'self' \
|
||||
media-src 'self'; \
|
||||
object-src 'none'; \
|
||||
script-src 'self' *.google-analytics.com *.googletagmanager.com player.vimeo.com; \
|
||||
style-src 'self' www.youtube.com; \
|
||||
"""
|
||||
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 = "*"
|
||||
# toml-docs-end server-config
|
||||
Permissions-Policy = 'geolocation=(), midi=(), sync-xhr=(), microphone=(), camera=(), magnetometer=(), gyroscope=(), fullscreen=(), payment=() '
|
||||
Referrer-Policy = 'strict-origin'
|
||||
Strict-Transport-Security = 'max-age=31536000; includeSubDomains; preload'
|
||||
X-Content-Type-Options = 'nosniff'
|
||||
X-Frame-Options = 'SAMEORIGIN'
|
||||
X-XSS-Protection = '1; mode=block'
|
||||
cache-control = 'max-age=0, no-cache, no-store, must-revalidate '
|
||||
|
||||
|
@@ -3,14 +3,16 @@ const cssnano = require('cssnano')({
|
||||
preset: 'advanced'
|
||||
})
|
||||
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'],
|
||||
defaultExtractor: (content) => {
|
||||
const els = JSON.parse(content).htmlElements
|
||||
return [...(els.tags || []), ...(els.classes || []), ...(els.ids || [])]
|
||||
},
|
||||
dynamicAttributes: ['data-bs-theme'],
|
||||
safelist: [
|
||||
dynamicAttributes: ['data-bs-theme', 'data-bs-theme-animate'],
|
||||
safelist: ['was-validated',
|
||||
...whitelister([
|
||||
'./assets/scss/components/_clipboard.scss',
|
||||
'./assets/scss/components/_command.scss',
|
||||
@@ -24,9 +26,11 @@ const purgecss = require('@fullhuman/postcss-purgecss')({
|
||||
'./assets/scss/components/_video.scss',
|
||||
'./assets/scss/theme/fonts.scss',
|
||||
'./assets/scss/theme/theme.scss',
|
||||
'./_vendor/github.com/gethinode/mod-flexsearch/assets/scss/modules/flexsearch/flexsearch.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-katex/dist/katex.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/_dropdown.scss',
|
||||
'./_vendor/github.com/twbs/bootstrap/scss/_modal.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
|
@@ -92,17 +92,21 @@ arguments:
|
||||
type: bool
|
||||
optional: true
|
||||
comment: >-
|
||||
Flag to indicate a horizontal line should be added between items on small screens.
|
||||
Flag to indicate a horizontal line should be added between items on small
|
||||
screens.
|
||||
wrapper:
|
||||
type: string
|
||||
default: p-0
|
||||
optional: true
|
||||
comment: >-
|
||||
Class attributes of the wrapper element, e.g. `p-4 px-xxl-0`.
|
||||
responsive:
|
||||
type: bool
|
||||
optional: true
|
||||
default: true
|
||||
comment: >-
|
||||
Flag indicating if the number of columns should be responsive, defaults to `true`.
|
||||
Flag indicating if the number of columns should be responsive, defaults to
|
||||
`true`.
|
||||
buttonType:
|
||||
type: select
|
||||
optional: true
|
||||
@@ -113,8 +117,50 @@ arguments:
|
||||
values:
|
||||
- link
|
||||
- button
|
||||
scroll:
|
||||
type: bool
|
||||
optional: true
|
||||
comment: >-
|
||||
Enables horizontal scrolling of the cards. By default, the card group
|
||||
wraps any cards beyond the amount of defined columns to a new line. When
|
||||
`scroll` is set to true, a horizontal scroll bar is added instead.
|
||||
spacer:
|
||||
type: bool
|
||||
optional: true
|
||||
comment: >-
|
||||
Inserts a spacer before the card.
|
||||
release: v0.24.16
|
||||
group: partial
|
||||
hook:
|
||||
type: string
|
||||
optional: true
|
||||
default: assets/card.html
|
||||
comment: Render hook for the card partial.
|
||||
group: partial
|
||||
bento:
|
||||
type: bool
|
||||
optional: true
|
||||
default: false
|
||||
comment: >-
|
||||
Trigger to use a bento-style layout instead of default grid layout.
|
||||
release: v0.27.0
|
||||
valign:
|
||||
type: select
|
||||
optional: true
|
||||
comment: >-
|
||||
Defines the vertical card alignment, only applicable in bento layout.
|
||||
release: v0.27.0
|
||||
options:
|
||||
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
|
||||
|
@@ -90,6 +90,19 @@ arguments:
|
||||
- publication
|
||||
- tags
|
||||
- none
|
||||
body:
|
||||
type: select
|
||||
optional: true
|
||||
default: full
|
||||
parent: cascade
|
||||
release: v0.24.16
|
||||
comment: >-
|
||||
Body of the card.
|
||||
options:
|
||||
values:
|
||||
- full
|
||||
- title
|
||||
- none
|
||||
footer:
|
||||
type: select
|
||||
optional: true
|
||||
@@ -146,6 +159,16 @@ arguments:
|
||||
- 16x9
|
||||
- 21x9
|
||||
group: partial
|
||||
portrait:
|
||||
type: bool
|
||||
parent: cascade
|
||||
optional: true
|
||||
default: false
|
||||
release: v0.24.16
|
||||
comment: >-
|
||||
Flag to adjust the ratio from landscape to portrait. The image itself is
|
||||
not rotated, only the crop area is adjusted. Not applicable to vector
|
||||
graphics.
|
||||
alt:
|
||||
type: string
|
||||
optional: true
|
||||
@@ -157,6 +180,12 @@ arguments:
|
||||
optional: true
|
||||
comment: >-
|
||||
Font Awesome icon, displayed on top or the left of the card.
|
||||
iconRounded:
|
||||
type: bool
|
||||
parent: cascade
|
||||
optional: true
|
||||
release: v0.24.8
|
||||
comment: Stack the icon in a round container.
|
||||
align:
|
||||
type: select
|
||||
parent: cascade
|
||||
@@ -169,6 +198,19 @@ arguments:
|
||||
- start
|
||||
- end
|
||||
- center
|
||||
scroll:
|
||||
type: bool
|
||||
parent: cascade
|
||||
optional: true
|
||||
group: partial
|
||||
comment: >-
|
||||
Enables horizontal scrolling of the cards. By default, the card group
|
||||
wraps any cards beyond the amount of defined columns to a new line. When
|
||||
`scroll` is set to true, a horizontal scroll bar is added instead.
|
||||
wrapper:
|
||||
type: string
|
||||
optional: true
|
||||
comment: Element class of the card wrapper.
|
||||
style:
|
||||
type: string
|
||||
parent: cascade
|
||||
@@ -186,6 +228,7 @@ arguments:
|
||||
- stacked
|
||||
- horizontal
|
||||
- horizontal-sm
|
||||
- overlay
|
||||
- none
|
||||
subtle:
|
||||
type: bool
|
||||
@@ -230,6 +273,25 @@ arguments:
|
||||
One or more strings separated by commas, indicating the source sizes of an
|
||||
image set.
|
||||
group: partial
|
||||
anchor:
|
||||
type: select
|
||||
optional: true
|
||||
comment:
|
||||
Anchor of the thumbnail's crop box, defaults to anchor value set in
|
||||
`imaging` section of the site configuration (usually `Smart`).
|
||||
options:
|
||||
values:
|
||||
- TopLeft
|
||||
- Top
|
||||
- TopRight
|
||||
- Left
|
||||
- Center
|
||||
- Right
|
||||
- BottomLeft
|
||||
- Bottom
|
||||
- BottomRight
|
||||
- Smart
|
||||
release: v0.24.23
|
||||
body:
|
||||
optional: true
|
||||
comment: >-
|
||||
|
@@ -38,3 +38,8 @@ arguments:
|
||||
type: string
|
||||
optional: true
|
||||
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
|
||||
|
29
data/structures/image-adapter-rewrite.yml
Normal file
29
data/structures/image-adapter-rewrite.yml
Normal file
@@ -0,0 +1,29 @@
|
||||
comment: >-
|
||||
Rewrites an origin URL to a target URL as supported by a CDN image adapter.
|
||||
arguments:
|
||||
account:
|
||||
type: string
|
||||
optional: true
|
||||
comment: Account name of the origin server.
|
||||
container:
|
||||
type: string
|
||||
optional: true
|
||||
comment: Container name of the origin server.
|
||||
host:
|
||||
type: string
|
||||
optional: true
|
||||
comment: >-
|
||||
Host of an URL. For example, the host of the URL
|
||||
'https://example.com/first/second/third.webp' equals 'example.com'.
|
||||
dir:
|
||||
type: string
|
||||
optional: true
|
||||
comment: >-
|
||||
All but the last element of an URL extension. For example, the dir of the
|
||||
URL 'https://example.com/first/second/third.webp' equals '/first/second/'.
|
||||
file:
|
||||
type: string
|
||||
optional: false
|
||||
comment: >-
|
||||
The last element of an URL extension. For example, the file of the
|
||||
URL 'https://example.com/first/second/third.webp' equals 'third.webp'.
|
@@ -60,3 +60,20 @@ arguments:
|
||||
type: int
|
||||
optional: false
|
||||
comment: Width of the image in pixels.
|
||||
anchor:
|
||||
type: select
|
||||
optional: true
|
||||
comment: Anchor of the crop box.
|
||||
options:
|
||||
values:
|
||||
- TopLeft
|
||||
- Top
|
||||
- TopRight
|
||||
- Left
|
||||
- Center
|
||||
- Right
|
||||
- BottomLeft
|
||||
- Bottom
|
||||
- BottomRight
|
||||
- Smart
|
||||
|
||||
|
@@ -19,7 +19,9 @@ comment: >-
|
||||
reference.
|
||||
arguments:
|
||||
url:
|
||||
type: string
|
||||
type:
|
||||
- string
|
||||
- template.URL
|
||||
optional: true
|
||||
comment: >-
|
||||
Path or url of the image, e.g. `img/example.jpg`. Images with multiple
|
||||
@@ -34,6 +36,7 @@ arguments:
|
||||
page:
|
||||
type:
|
||||
- '*hugolib.pageState'
|
||||
- '*hugolib.pageForRenderHooks'
|
||||
- '*hugolib.pageForShortcode'
|
||||
optional: true
|
||||
comment: Page context, used to match page resources.
|
||||
@@ -107,7 +110,10 @@ arguments:
|
||||
image set.
|
||||
group: partial
|
||||
title:
|
||||
type: string
|
||||
type:
|
||||
- string
|
||||
- hstring.RenderedString
|
||||
- hstring.HTML
|
||||
optional: true
|
||||
comment: Alternate text of the image.
|
||||
caption:
|
||||
@@ -128,3 +134,30 @@ arguments:
|
||||
optional: true
|
||||
comment: Class attribute of the figure caption, e.g. `px-4`.
|
||||
release: v0.23.0
|
||||
plain:
|
||||
type: bool
|
||||
default: false
|
||||
optional: true
|
||||
comment:
|
||||
Flag to indicate if the image should render a plain image instead of an
|
||||
image set. When set, no transformations are applied to the image.
|
||||
release: v0.24.0
|
||||
anchor:
|
||||
type: select
|
||||
optional: true
|
||||
comment:
|
||||
Anchor of the crop box, defaults to anchor value set in `imaging` section
|
||||
of the site configuration (usually `Smart`).
|
||||
options:
|
||||
values:
|
||||
- TopLeft
|
||||
- Top
|
||||
- TopRight
|
||||
- Left
|
||||
- Center
|
||||
- Right
|
||||
- BottomLeft
|
||||
- Bottom
|
||||
- BottomRight
|
||||
- Smart
|
||||
release: v0.24.22
|
||||
|
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:
|
||||
type:
|
||||
- '*hugolib.pageState'
|
||||
- '*hugolib.pageForRenderHooks'
|
||||
- '*hugolib.pageForShortcode'
|
||||
optional: false
|
||||
group: partial
|
||||
@@ -62,6 +63,15 @@ arguments:
|
||||
default: false
|
||||
comment: >-
|
||||
Flag to indicate if a link that contains baseURL host should be forced as external.
|
||||
force:
|
||||
type: bool
|
||||
optional: true
|
||||
default: false
|
||||
comment: >-
|
||||
Flag to indicate a link should bypass any language redirection. Only applicable when
|
||||
the site param `enableLanguageSelectionStorage` is set to true. When `force` is true,
|
||||
the link to a local page is kept as is.
|
||||
release: v0.27.20
|
||||
class:
|
||||
type: string
|
||||
optional: true
|
||||
@@ -70,11 +80,18 @@ arguments:
|
||||
type:
|
||||
- string
|
||||
- template.HTML
|
||||
- hstring.RenderedString
|
||||
- hstring.HTML
|
||||
optional: true
|
||||
group: partial
|
||||
comment: Link description.
|
||||
title:
|
||||
type: string
|
||||
optional: true
|
||||
comment: Link title.
|
||||
release: v0.26.0
|
||||
body:
|
||||
type: string
|
||||
optional: true
|
||||
group: shortcode
|
||||
comment: Link title.
|
||||
comment: Link description.
|
||||
|
@@ -32,3 +32,8 @@ arguments:
|
||||
comment: >-
|
||||
Flag to indicate if an external link should open in a new tab, defaults
|
||||
to setting `main.externalLinks.tab` in the site's parameters.
|
||||
plain:
|
||||
type: bool
|
||||
optional: true
|
||||
comment: >-
|
||||
Renders the navigation item as plain item, ignoring any children.
|
||||
|
@@ -38,3 +38,12 @@ arguments:
|
||||
optional: true
|
||||
default: false
|
||||
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).
|
24
data/structures/scripts.yml
Normal file
24
data/structures/scripts.yml
Normal file
@@ -0,0 +1,24 @@
|
||||
comment: >-
|
||||
Bundles a JavaScript file for client-side processing. Scripts can be included
|
||||
as critical, core, or optional file.
|
||||
arguments:
|
||||
page:
|
||||
type:
|
||||
- '*hugolib.pageState'
|
||||
- '*hugolib.pageForShortcode'
|
||||
optional: false
|
||||
comment: Context of the current page.
|
||||
type:
|
||||
type: select
|
||||
default: core
|
||||
optional: true
|
||||
comment: >-
|
||||
Type of script bundle. Critical scripts are included in the page header
|
||||
and are loaded immediately. Core scripts are bundled by category and are
|
||||
loaded asynchronously. Optional scripts are loaded individually on the
|
||||
pages that require them. They use the synchronization method as defined
|
||||
in their containing module.
|
||||
values:
|
||||
- critical
|
||||
- core
|
||||
- optional
|
@@ -1,7 +1,22 @@
|
||||
comment: >-
|
||||
Makes a markdown table responsive. Responsive tables scroll horizontally to
|
||||
improve their layout on smaller screens.
|
||||
improve their layout on smaller screens. To features `sortable`, `paging`,
|
||||
and `searchable` require the module `simple-datatables`.
|
||||
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:
|
||||
type: select
|
||||
optional: true
|
||||
@@ -24,6 +39,43 @@ arguments:
|
||||
type: string
|
||||
optional: true
|
||||
comment: Class attribute of the table element, e.g. `table-striped-columns w-auto`.
|
||||
sortable:
|
||||
type: bool
|
||||
optional: true
|
||||
comment: Toggle the ability to sort the columns.
|
||||
release: v0.24.13
|
||||
paging:
|
||||
type: bool
|
||||
optional: true
|
||||
comment: Whether paging is enabled for the table.
|
||||
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:
|
||||
type: bool
|
||||
optional: true
|
||||
comment: Toggle the ability to search the dataset.
|
||||
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:
|
||||
type: string
|
||||
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,26 +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.
|
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/
|
||||
resources/
|
||||
|
||||
|
@@ -1,7 +1,6 @@
|
||||
resourcedir = '../resources/'
|
||||
title = "Hinode"
|
||||
copyright = "Copyright © 2024 Mark Dumay."
|
||||
paginate = 9
|
||||
copyright = "Copyright © 2022 - 2025 Mark Dumay."
|
||||
enableGitInfo = true
|
||||
|
||||
# additional settings
|
||||
@@ -21,17 +20,39 @@ languageCode = "en-us"
|
||||
defaultContentLanguage = "en"
|
||||
defaultContentLanguageInSubdir = true
|
||||
|
||||
[outputFormats.REDIR]
|
||||
mediaType = "text/netlify"
|
||||
baseName = "_redirects"
|
||||
isPlainText = true
|
||||
notAlternative = true
|
||||
[outputFormats]
|
||||
[outputFormats.netlify]
|
||||
mediaType = "application/toml"
|
||||
baseName = "netlify"
|
||||
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"]
|
||||
delimiter = ""
|
||||
|
||||
[outputs]
|
||||
home = ["HTML", "RSS", "REDIR"]
|
||||
home = ["HTML", "RSS", "REDIR", "netlify", "server"]
|
||||
|
||||
[build]
|
||||
writeStats = true
|
||||
@@ -39,6 +60,9 @@ home = ["HTML", "RSS", "REDIR"]
|
||||
[taxonomies]
|
||||
tag = 'tags'
|
||||
|
||||
[pagination]
|
||||
pagerSize = 9
|
||||
|
||||
[privacy]
|
||||
[privacy.vimeo]
|
||||
disabled = false
|
||||
@@ -65,15 +89,6 @@ home = ["HTML", "RSS", "REDIR"]
|
||||
[services.googleAnalytics]
|
||||
ID = "G-T85PPZ36GN"
|
||||
|
||||
[outputFormats]
|
||||
[outputFormats.XML]
|
||||
isPlainText = false
|
||||
mediaType = "application/xml"
|
||||
isHtml = false
|
||||
noUgly = true
|
||||
permalinkable = false
|
||||
name = "xml"
|
||||
|
||||
[minify]
|
||||
[minify.tdewolff.js]
|
||||
keepVarNames = true
|
||||
@@ -82,8 +97,36 @@ home = ["HTML", "RSS", "REDIR"]
|
||||
[minify.tdewolff.html]
|
||||
keepWhitespace = true
|
||||
|
||||
[segments]
|
||||
[segments.headers]
|
||||
[[segments.headers.includes]]
|
||||
kind = '{home}'
|
||||
output = '{netlify,server}'
|
||||
|
||||
[module]
|
||||
# Build and serve using local hinode clone declared in the named Hugo workspace:
|
||||
workspace = "hinode.work"
|
||||
[[module.imports]]
|
||||
path = "github.com/gethinode/mod-cookieyes/v2"
|
||||
[[module.imports]]
|
||||
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"
|
||||
caption = "I work on everything coding and tweet developer memes"
|
||||
[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
|
||||
[en.params.sections.blog]
|
||||
reference = "More Posts"
|
||||
@@ -22,13 +22,15 @@ reference = "More Projects"
|
||||
languageName = "Nederlands"
|
||||
contentDir = "content/nl"
|
||||
weight = 2
|
||||
[nl.params.opengraph]
|
||||
locale = "nl_NL"
|
||||
[nl.params.head]
|
||||
tagline = "Een Hugo Thema"
|
||||
[nl.params.social]
|
||||
title = "Volg mij"
|
||||
caption = "Ik doe aan programmeren en tweet memes"
|
||||
[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]
|
||||
reference = "Meer artikelen"
|
||||
[nl.params.sections.projects]
|
||||
@@ -39,13 +41,15 @@ reference = "Meer projecten"
|
||||
languageName = "Français"
|
||||
contentDir = "content/fr"
|
||||
weight = 2
|
||||
[fr.params.opengraph]
|
||||
locale = "fr_FR"
|
||||
[fr.params.head]
|
||||
tagline = "Un thème Hugo"
|
||||
[fr.params.social]
|
||||
title = "Suivez-moi"
|
||||
caption = "Je code et je tweet des mèmes de développeurs."
|
||||
[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]
|
||||
reference = "Plus d'articles"
|
||||
[fr.params.sections.projects]
|
||||
|
@@ -24,9 +24,15 @@ defaultMarkdownHandler = "goldmark"
|
||||
table = true
|
||||
taskList = true
|
||||
typographer = true
|
||||
[goldmark.extensions.passthrough]
|
||||
enable = true
|
||||
[goldmark.extensions.passthrough.delimiters]
|
||||
block = [['\[', '\]'], ['$$', '$$']]
|
||||
inline = [['\(', '\)'], ['$', '$']]
|
||||
[goldmark.parser]
|
||||
autoHeadingID = true
|
||||
autoHeadingIDType = 'github'
|
||||
wrapStandAloneImageWithinParagraph = false
|
||||
[goldmark.parser.attribute]
|
||||
block = true
|
||||
[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 = "-"
|
||||
description = "Hinode is a clean documentation and blog theme for your Hugo site based on Bootstrap 5."
|
||||
enableDarkMode = true
|
||||
enableLanguageSelectionStorage = true
|
||||
modes = ["light", "dark"]
|
||||
canonifyAssetsURLs = false
|
||||
footerBelowFold = false
|
||||
loading = "lazy"
|
||||
breakpoint = "md"
|
||||
titleCase = true
|
||||
[main.internalLinks]
|
||||
validate = true
|
||||
pretty = true
|
||||
[main.externalLinks]
|
||||
cue = true
|
||||
tab = true
|
||||
[main.build]
|
||||
transpiler = "dartsass"
|
||||
silenceDeprecations = true
|
||||
|
||||
[debugging]
|
||||
showJS = false
|
||||
showSCSS = false
|
||||
purgeHTMLComments = true # prevents a Goldmark warning when processing HTML comments (as used by markdownlint)
|
||||
includeSVGOrigin = true
|
||||
|
||||
[docs]
|
||||
basePath = "/" # TODO: replace
|
||||
@@ -152,7 +159,7 @@
|
||||
# themeFontPath = "https://fonts.googleapis.com/css2?family=Inter:wght@200;300;600&display=swap" # external path
|
||||
themeFontPath = "/fonts" # local path
|
||||
themeFontPreload = "/fonts/inter-v12-latin-regular.woff2"
|
||||
purge = false # TODO: fix purge setting of example site
|
||||
purge = true
|
||||
# toml-docs-end theme-colors
|
||||
|
||||
[schema]
|
||||
@@ -163,16 +170,16 @@
|
||||
# linkedIn = ""
|
||||
github = "https://github.com/gethinode/hinode"
|
||||
section = "blog"
|
||||
[author]
|
||||
[schema.author]
|
||||
name = "Mark Dumay"
|
||||
# twitter = "https://twitter.com/markdumay"
|
||||
linkedin = "https://www.linkedin.com/in/markdumay/"
|
||||
github = "https://github.com/markdumay"
|
||||
[logo]
|
||||
[schema.logo]
|
||||
url = "img/logo512x512.png"
|
||||
width = 512
|
||||
height = 512
|
||||
[image]
|
||||
[schema.image]
|
||||
url = "img/logo1280x640.png"
|
||||
width = 1280
|
||||
height = 640
|
||||
@@ -189,3 +196,6 @@
|
||||
observatory = "https://observatory.mozilla.org/analyze/demo.gethinode.com"
|
||||
pagespeed = "https://pagespeed.web.dev/report?url=https%3A%2F%2Fdemo.gethinode.com%2F"
|
||||
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]]
|
||||
for = '/**'
|
||||
[headers.values]
|
||||
Strict-Transport-Security = "max-age=31536000; includeSubDomains; preload"
|
||||
X-Content-Type-Options = "nosniff"
|
||||
X-XSS-Protection = "1; mode=block"
|
||||
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'; \
|
||||
for = '/**'
|
||||
|
||||
[headers.values]
|
||||
Access-Control-Allow-Origin = '*'
|
||||
Content-Security-Policy = """
|
||||
base-uri 'self'; \
|
||||
connect-src 'self'
|
||||
https://*.google-analytics.com https://*.analytics.google.com https://*.googletagmanager.com; \
|
||||
font-src 'self' https://fonts.gstatic.com; \
|
||||
frame-src 'self' https://www.youtube-nocookie.com https://www.youtube.com; \
|
||||
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; \
|
||||
connect-src 'self' *.cookieyes.com cdn-cookieyes.com *.google-analytics.com *.analytics.google.com *.googletagmanager.com; \
|
||||
default-src 'none'; \
|
||||
font-src 'self' fonts.gstatic.com; \
|
||||
form-action 'self'; \
|
||||
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'; \
|
||||
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"
|
||||
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 = "*"
|
||||
# toml-docs-end server-config
|
||||
Permissions-Policy = 'geolocation=(), midi=(), sync-xhr=(), microphone=(), camera=(), magnetometer=(), gyroscope=(), fullscreen=(), payment=() '
|
||||
Referrer-Policy = 'strict-origin'
|
||||
Strict-Transport-Security = 'max-age=31536000; includeSubDomains; preload'
|
||||
X-Content-Type-Options = 'nosniff'
|
||||
X-Frame-Options = 'SAMEORIGIN'
|
||||
X-XSS-Protection = '1; mode=block'
|
||||
cache-control = 'max-age=0, no-cache, no-store, must-revalidate '
|
||||
|
||||
[[redirects]]
|
||||
from = '/fr/*'
|
||||
status = 404
|
||||
to = '/fr/404.html'
|
||||
|
||||
[[redirects]]
|
||||
from = '/nl/*'
|
||||
status = 404
|
||||
to = '/nl/404.html'
|
||||
|
||||
[[redirects]]
|
||||
from = '/en/*'
|
||||
status = 404
|
||||
to = '/en/404.html'
|
||||
|
||||
[[redirects]]
|
||||
from = '/*'
|
||||
status = 404
|
||||
to = '/en/404.html'
|
||||
|
||||
|
@@ -3,30 +3,34 @@ const cssnano = require('cssnano')({
|
||||
preset: 'advanced'
|
||||
})
|
||||
const whitelister = require('purgecss-whitelister')
|
||||
const purgecss = require('@fullhuman/postcss-purgecss')({
|
||||
content: ['./hugo_stats.json'],
|
||||
const purgeImport = require('@fullhuman/postcss-purgecss')
|
||||
const purgeCSSPlugin = purgeImport.purgeCSSPlugin || purgeImport.default || purgeImport
|
||||
const purgecss = purgeCSSPlugin({
|
||||
content: ['./exampleSite/hugo_stats.json'],
|
||||
defaultExtractor: (content) => {
|
||||
const els = JSON.parse(content).htmlElements
|
||||
return [...(els.tags || []), ...(els.classes || []), ...(els.ids || [])]
|
||||
},
|
||||
dynamicAttributes: ['data-bs-theme'],
|
||||
safelist: [
|
||||
dynamicAttributes: ['data-bs-theme', 'data-bs-theme-animate'],
|
||||
safelist: ['was-validated',
|
||||
...whitelister([
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_clipboard.scss',
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_command.scss',
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_nav.scss',
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_navbar.scss',
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_search.scss',
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_syntax.scss',
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_syntax-dark.scss',
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_syntax-light.scss',
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_table.scss',
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/components/_video.scss',
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/theme/fonts.scss',
|
||||
'./_vendor/github.com/gethinode/hinode/assets/scss/theme/theme.scss',
|
||||
'./_vendor/github.com/gethinode/mod-flexsearch/assets/scss/modules/flexsearch/flexsearch.scss',
|
||||
'./assets/scss/components/_clipboard.scss',
|
||||
'./assets/scss/components/_command.scss',
|
||||
'./assets/scss/components/_nav.scss',
|
||||
'./assets/scss/components/_navbar.scss',
|
||||
'./assets/scss/components/_search.scss',
|
||||
'./assets/scss/components/_syntax.scss',
|
||||
'./assets/scss/components/_syntax-dark.scss',
|
||||
'./assets/scss/components/_syntax-light.scss',
|
||||
'./assets/scss/components/_table.scss',
|
||||
'./assets/scss/components/_video.scss',
|
||||
'./assets/scss/theme/fonts.scss',
|
||||
'./assets/scss/theme/theme.scss',
|
||||
'./_vendor/github.com/gethinode/mod-cookieyes/v2/assets/scss/cookieyes.scss',
|
||||
'./_vendor/github.com/gethinode/mod-flexsearch/v2/assets/scss/modules/flexsearch/flexsearch.scss',
|
||||
'./_vendor/github.com/gethinode/mod-katex/dist/katex.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/_dropdown.scss',
|
||||
'./_vendor/github.com/twbs/bootstrap/scss/_modal.scss',
|
||||
|
@@ -27,6 +27,6 @@ Additional features include:
|
||||
* Reusable Bootstrap components through configurable shortcodes and partials
|
||||
* Versioned documentation, including sidebar navigation and version switcher
|
||||
* Responsive image handling for multiple screen sizes and resolutions
|
||||
* 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" >}})
|
||||
* 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" %}})
|
||||
{.tickmark}
|
||||
|
@@ -12,23 +12,23 @@ thumbnail:
|
||||
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
|
||||
|
||||
As an example, the following shortcode displays the full text of an abbreviation on hover.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* abbr "CI/CD" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Accordion
|
||||
|
||||
As an example, the following shortcode displays an accordion with three elements, of which the first element is expanded.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* accordion */>}}
|
||||
{{</* accordion-item header="Accordion Item #1" show="true" */>}}
|
||||
@@ -43,25 +43,25 @@ As an example, the following shortcode displays an accordion with three elements
|
||||
{{</* /accordion-item */>}}
|
||||
{{</* /accordion */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Alert
|
||||
|
||||
As an example, the following shortcode displays a simple alert.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* alert color="danger" dismissible="true" */>}}
|
||||
A simple danger alert—check it out!
|
||||
{{</* /alert */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Badge
|
||||
|
||||
Use the badge shortcode to display a badge for a heading.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example >}}
|
||||
Heading 1 {{</* badge title="New" */>}}
|
||||
{.h1}
|
||||
@@ -81,35 +81,35 @@ Heading 5 {{</* badge title="New" */>}}
|
||||
Heading 6 {{</* badge title="New" */>}}
|
||||
{.h6}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Breadcrumb
|
||||
|
||||
As an example, the following shortcode displays a breadcrumb for the blog page.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* breadcrumb path="blog" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Button
|
||||
|
||||
As an example, the following shortcode displays a tooltip for a dark button with a badge.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button color="secondary" tooltip="Click on the inbox to view your unread messages" href="#!" badge="99+" */>}}
|
||||
Inbox
|
||||
{{</* /button */>}}
|
||||
{{< /example>}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Button group
|
||||
|
||||
As an example, the following shortcode displays a group of three buttons.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button-group aria-label="Basic example" */>}}
|
||||
{{</* button color="primary" href="#!" */>}}Left{{</* /button */>}}
|
||||
@@ -117,26 +117,26 @@ As an example, the following shortcode displays a group of three buttons.
|
||||
{{</* button color="primary" href="#!" */>}}Right{{</* /button */>}}
|
||||
{{</* /button-group */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## 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 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* card path="about" padding="3" class="col-6 mx-auto" color="body-tertiary"
|
||||
header="publication" footer="none" button=true /*/>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Card group
|
||||
|
||||
As an example, the following shortcode displays a card group of three elements.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* card-group padding="3" gutter="3" button=true buttonType="link" */>}}
|
||||
{{</* card-group padding="3" gutter="3" button=true buttonType="link" cols=2 scroll=true */>}}
|
||||
{{</* card title="Bootstrap framework" icon="fab bootstrap" */>}}
|
||||
Build fast, responsive sites with Bootstrap 5. Easily customize your site with the source
|
||||
Sass files.
|
||||
@@ -149,13 +149,13 @@ As an example, the following shortcode displays a card group of three elements.
|
||||
{{</* /card */>}}
|
||||
{{</* /card-group */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Carousel
|
||||
|
||||
As an example, the following shortcode displays a centered carousel with three slides, 16x9 aspect ratio, and a relative width of 67% on large screens.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* carousel ratio="16x9" class="col-sm-12 col-lg-8 mx-auto" */>}}
|
||||
{{</* img src="img/coffee.jpg" caption="slide 1" */>}}
|
||||
@@ -163,13 +163,13 @@ As an example, the following shortcode displays a centered carousel with three s
|
||||
{{</* img src="img/dunes.jpg" caption="slide 3" */>}}
|
||||
{{</* /carousel */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Collapse
|
||||
|
||||
As an example, the following shortcode displays a button that, when clicked, triggers a panel to appear or disappear.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button collapse="collapse-1" */>}}
|
||||
Trigger panel
|
||||
@@ -180,23 +180,23 @@ As an example, the following shortcode displays a button that, when clicked, tri
|
||||
revealed when the user activates the relevant trigger.
|
||||
{{</* /collapse */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Command prompt
|
||||
|
||||
Use the `command` shortcode to generate a block with a default bash command prompt.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* command */>}}
|
||||
export MY_VAR=123
|
||||
{{</* /command */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
Specify `user` and `host` to add the user context to the prompt. In addition, use `(out)` to specify an output line and use `\` to denote a line continuation.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* command user="user" host="localhost" */>}}
|
||||
export MY_VAR=123
|
||||
@@ -210,7 +210,7 @@ echo "goodbye"
|
||||
(out)goodbye
|
||||
{{</* /command */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Docs
|
||||
|
||||
@@ -222,68 +222,86 @@ Use the `docs` shortcode to display the content of a `js`, `scss` or `toml` file
|
||||
|
||||
Use the `example` shortcode to display a code example and to render a preview of the same input.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* command */>}}
|
||||
export MY_VAR=123
|
||||
{{</* /command */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## File
|
||||
|
||||
Use the `file` shortcode to print and highlight the full content of a given input file.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* file path="./config/_default/languages.toml" id="file-collapse-1" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Icon
|
||||
|
||||
As an example, the following shortcodes show a square check, a brand logo, a circle check, and a custom icon.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* fa square-check */>}}
|
||||
{{</* fab linkedin */>}}
|
||||
{{</* fas circle-check */>}}
|
||||
{{</* icon custom activity */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Image
|
||||
|
||||
As an example, the following shortcode displays an image with rounded corners and a 21x9 aspect ratio.
|
||||
As an example, the following shortcode displays an image with rounded corners and a 4x3 aspect ratio in portrait mode.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="img/flowers.jpg" ratio="21x9" caption="Figure caption" class="rounded" */>}}
|
||||
{{</* image src="img/flowers.jpg" ratio="4x3" caption="Figure caption" class="rounded col-md-6"
|
||||
portrait=true wrapper="text-center" */>}}
|
||||
{{< /example >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
The same image, but then using Markdown syntax:
|
||||
|
||||
{{< example lang="hugo" >}}
|
||||

|
||||
{class="rounded col-md-6" ratio="4x3" portrait=true wrapper="text-center"}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
As an example, the following shortcode displays a regular vector image.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="/img/logo_icon.svg" class="col-sm-6 col-lg-4" wrapper="text-center" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
As an example, the following shortcode displays a vector image with a symbol reference.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="/img/logo_var.svg#logo" class="col-sm-6 col-lg-4" wrapper="text-center" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Ins
|
||||
|
||||
As an example, the following shortcode displays underlined text.
|
||||
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example >}}
|
||||
This is an {{</* ins */>}}underlined text{{</* /ins */>}}.
|
||||
{{< /example >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Link
|
||||
|
||||
As an example, the following shortcodes render links in different formats.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
|
||||
- {{</* link hinode >}}Named link with default settings{{< /link */>}}
|
||||
@@ -298,28 +316,28 @@ As an example, the following shortcodes render links in different formats.
|
||||
- {{</* link url="../projects/another-project" case=false /*/>}}
|
||||
- {{</* link "about" /*/>}}
|
||||
- {{</* link "/fr/a-propos/" /*/>}}
|
||||
- {{</* link "/fr/a-propos" >}}About (French){{< /link */>}}
|
||||
- {{</* link href="/fr/a-propos" force=true >}}About (French){{< /link */>}}
|
||||
- {{</* link "#image" /*/>}}
|
||||
- {{</* link "components/#map" /*/>}}
|
||||
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Mark
|
||||
|
||||
Use the `mark` shortcode to highlight text. The inner content is used as input.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
Use the mark shortcode to {{</* mark >}}highlight{{< /mark */>}} specific text.
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Nav
|
||||
|
||||
As an example, the following shortcode displays a tab group with vertically aligned pills.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* nav type="pills" vertical="true" */>}}
|
||||
{{</* nav-item header="Nav Item #1" show="true" */>}}
|
||||
@@ -334,23 +352,23 @@ As an example, the following shortcode displays a tab group with vertically alig
|
||||
{{</* /nav-item */>}}
|
||||
{{</* /nav */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Navbar
|
||||
|
||||
As an example, the following shortcode displays a light navigation header.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* navbar id="navbar-sample" path="blog" color="primary" size="md" search="false" menus="sample" title="Brand" mode="false" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Persona
|
||||
|
||||
As an example, the following shortcode displays a persona card with a primary color.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* persona thumbnail="/img/creator-1x1.jpg" title="Creators" color="primary" */>}}
|
||||
As a content creator you value your independence. You like to take control of your
|
||||
@@ -362,55 +380,55 @@ As an example, the following shortcode displays a persona card with a primary co
|
||||
Hinode.
|
||||
{{</* /persona */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Release
|
||||
|
||||
As an example, the following shortcode displays a default release button.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* release version="v0.14.1" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Spinner
|
||||
|
||||
As an example, the following shortcode displays a centered spinner.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* spinner color="info" class="text-center" */>}}
|
||||
Loading...
|
||||
{{</* /spinner */>}}
|
||||
{{< /example>}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Sub
|
||||
|
||||
As an example, the following shortcode displays subscript text.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example >}}
|
||||
H{{</* sub 2 */>}}O is a liquid.
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Sup
|
||||
|
||||
As an example, the following shortcode displays superscript text.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example >}}
|
||||
2{{</* sup 10 */>}} is 1024.
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Table
|
||||
|
||||
As an example, the following shortcode displays a responsive table.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 MD058 -->{{% /comment %}}
|
||||
{{< example lang="markdown" >}}
|
||||
{{</* table */>}}
|
||||
| # | Heading | Heading | Heading | Heading | Heading | Heading | Heading | Heading | Heading |
|
||||
@@ -420,23 +438,23 @@ As an example, the following shortcode displays a responsive table.
|
||||
| 3. | cell | cel | cel | cel | cel | cel | cel | cel | cel |
|
||||
{{</* /table */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 MD058 -->{{% /comment %}}
|
||||
|
||||
## Timeline
|
||||
|
||||
As an example, the following shortcode displays a timeline with the file `data/timeline.en.yml` as data.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* timeline data="timeline" background="dark" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Toast
|
||||
|
||||
As an example, the following shortcode displays a button that, when clicked, triggers the toast message.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button toast="toast-example-1" */>}}
|
||||
Show toast 1
|
||||
@@ -454,14 +472,24 @@ As an example, the following shortcode displays a button that, when clicked, tri
|
||||
This is the second toast message. It supports `markdown.`
|
||||
{{</* /toast */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Tooltip
|
||||
|
||||
As an example, the following shortcode displays a tooltip for a colored hyperlink.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* tooltip color="primary" title="Tooltip caption" href="#!" */>}}Tooltip{{</* /tooltip */>}} demonstration
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Video
|
||||
|
||||
As an example, the following shortcode displays an Elephants video hosted by Cloudinary.
|
||||
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* video host="cloudinary" account="demo" id="elephants" autoplay=true */>}}
|
||||
{{< /example >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
@@ -10,24 +10,67 @@ thumbnail:
|
||||
authorURL: https://unsplash.com/@ryoji__iwata
|
||||
origin: Unsplash
|
||||
originURL: https://unsplash.com/photos/5siQcvSxCP8
|
||||
modules: ["katex", "leaflet", "lottie"]
|
||||
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
|
||||
|
||||
As an example, the following shortcode shows an animation that plays on hover.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* animation data="gatin.json" auto=false hover=true class="col-6 mx-auto" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Data tables
|
||||
|
||||
As an example, the following shortcode displays a responsive table that uses advanced controls.
|
||||
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 MD058 -->{{% /comment %}}
|
||||
{{< 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 >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## 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" >}}
|
||||
This is an inline $-b \pm \sqrt{b^2 - 4ac} \over 2a$ formula
|
||||
@@ -42,8 +85,8 @@ $$\forall x \in X, \quad \exists y \leq \epsilon$$
|
||||
|
||||
As an example, the following shortcode displays an interactive map of the city of Amsterdam.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< 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 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
@@ -12,31 +12,31 @@ thumbnail:
|
||||
|
||||
As an example, the following shortcode displays an image with rounded corners and a 21x9 aspect ratio.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="https://res.cloudinary.com/demo/image/upload/dog.webp"
|
||||
ratio="21x9" caption="Cloudinary image" class="rounded" */>}}
|
||||
{{</* image src="https://res.cloudinary.com/demo/dog.webp"
|
||||
ratio="21x9" caption="Cloudinary image" class="rounded" plain=true */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## ImageKit.io
|
||||
|
||||
As an example, the following shortcode displays an image with rounded corners and a 21x9 aspect ratio.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="https://ik.imagekit.io/demo/default-image.jpg"
|
||||
ratio="21x9" caption="ImageKit.io image" class="rounded" */>}}
|
||||
ratio="21x9" caption="ImageKit.io image" class="rounded" anchor="Center" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Imgix
|
||||
|
||||
As an example, the following shortcode displays an image with rounded corners and a 21x9 aspect ratio.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="https://assets.imgix.net/examples/bluehat.jpg"
|
||||
ratio="21x9" caption="imgix image" class="rounded" */>}}
|
||||
ratio="21x9" caption="imgix image" class="rounded" anchor="Top" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
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
|
||||
---
|
||||
{{% comment %}}<!-- markdownlint-disable MD036 -->{{% /comment %}}
|
||||
*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
|
||||
---
|
||||
{{% comment %}}<!-- markdownlint-disable MD036 -->{{% /comment %}}
|
||||
*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. {{% comment %}}<!-- To exercise these rights, you can write to us at privacy@gethinode.com. We will respond to your request in accordance with applicable law. -->{{% /comment %}}
|
||||
|
||||
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.
|
||||
|
||||
{{% comment %}}<!-- ## 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. -->{{% /comment %}}
|
||||
|
||||
*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
|
||||
- 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.
|
||||
- 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" >}})
|
||||
- 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" %}})
|
||||
{.tickmark}
|
||||
|
@@ -13,23 +13,23 @@ thumbnail:
|
||||
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
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche le texte complet d'une abréviation lorsque survolé.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* abbr "CI/CD" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Accordéon
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche un accordéon avec trois éléments, dont le premier élément est déplié.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* accordion */>}}
|
||||
{{</* accordion-item header="Élément d'accordéon #1" show="true" */>}}
|
||||
@@ -43,25 +43,25 @@ Hinode propose plusieurs shortcodes qui enveloppent des composants Bootstrap cou
|
||||
{{</* /accordion-item */>}}
|
||||
{{</* /accordion */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Alerte
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une alerte simple.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* alert color="danger" dismissible="true" */>}}
|
||||
Une simple alerte de danger — vérifiez-la !
|
||||
{{</* /alert */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Badge
|
||||
|
||||
Utilisez le shortcode "badge" pour afficher un badge avec un en-tête.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example >}}
|
||||
En-tête 1 {{</* badge title="Nouveau" */>}}
|
||||
{.h1}
|
||||
@@ -81,35 +81,35 @@ En-tête 5 {{</* badge title="Nouveau" */>}}
|
||||
En-tête 6 {{</* badge title="Nouveau" */>}}
|
||||
{.h6}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Fil d'Ariane
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche un fil d'Ariane pour la page du blog.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* breadcrumb path="blog" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Bouton
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une infobulle pour un bouton sombre avec un badge.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button color="secondary" tooltip="Cliquez sur la boîte de réception pour voir vos messages non lus." href="#!" badge="99+" */>}}
|
||||
Boîte de réception
|
||||
{{</* /button */>}}
|
||||
{{< /example>}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Groupe de boutons
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche un groupe de trois boutons.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button-group aria-label="Basic example" */>}}
|
||||
{{</* button color="primary" href="#!" */>}}Gauche{{</* /button */>}}
|
||||
@@ -117,26 +117,26 @@ En-tête 6 {{</* badge title="Nouveau" */>}}
|
||||
{{</* button color="primary" href="#!" */>}}Droite{{</* /button */>}}
|
||||
{{</* /button-group */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## 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 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* card path="about" padding="3" class="col-6 mx-auto" color="body-tertiary"
|
||||
header="publication" footer="none" button=true /*/>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Groupe de cartes
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche un groupe de cartes avec trois éléments.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< 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" */>}}
|
||||
Créez des sites rapides et réactifs avec Bootstrap 5. Personnalisez facilement votre site
|
||||
avec les fichiers source Sass.
|
||||
@@ -151,13 +151,13 @@ En-tête 6 {{</* badge title="Nouveau" */>}}
|
||||
{{</* /card */>}}
|
||||
{{</* /card-group */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Carrousel
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche un carrousel centré avec trois slides, un rapport hauteur/largeur de 16:9 et une largeur relative de 67 % sur les grands écrans.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* carousel ratio="16x9" class="col-sm-12 col-lg-8 mx-auto" */>}}
|
||||
{{</* img src="img/coffee.jpg" caption="slide 1" */>}}
|
||||
@@ -165,13 +165,13 @@ En-tête 6 {{</* badge title="Nouveau" */>}}
|
||||
{{</* img src="img/dunes.jpg" caption="slide 3" */>}}
|
||||
{{</* /carousel */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Réduire
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche un bouton qui, lorsqu'il est cliqué, déclenche l'apparition ou la disparition d'un panneau.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button collapse="collapse-1" */>}}
|
||||
Déclencher le panneau
|
||||
@@ -182,23 +182,23 @@ En-tête 6 {{</* badge title="Nouveau" */>}}
|
||||
sera révélé lorsque l'utilisateur active le déclencheur correspondant.
|
||||
{{</* /collapse */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Invite de commandes
|
||||
|
||||
Utilisez le shortcode `command` pour générer un bloc avec un invite de commandes bash par défaut.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* command */>}}
|
||||
export MY_VAR=123
|
||||
{{</* /command */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
Spécifiez `user` et `host` pour ajouter le contexte de l'utilisateur à l'invite. De plus, utilisez `(out)` pour spécifier une ligne de sortie et utilisez `\` pour indiquer une continuation de ligne.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* command user="user" host="localhost" */>}}
|
||||
export MY_VAR=123
|
||||
@@ -212,7 +212,7 @@ echo "goodbye"
|
||||
(out)goodbye
|
||||
{{</* /command */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Documentation
|
||||
|
||||
@@ -224,67 +224,67 @@ Utilisez le shortcode `docs` pour afficher le contenu d'un fichier `js`, `scss`
|
||||
|
||||
Utilisez le shortcode `example` pour afficher un exemple de code et pour afficher un aperçu de la même entrée.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* command */>}}
|
||||
export MY_VAR=123
|
||||
{{</* /command */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Fichier
|
||||
|
||||
Utilisez le shortcode `file` pour afficher et mettre en évidence le contenu complet d'un fichier d'entrée donné.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* file path="./config/_default/languages.toml" id="file-collapse-1" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Icon
|
||||
|
||||
À titre d'exemple, les shortcodes suivants affichent une coche carrée, un logo de marque et une coche circulaire.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* fa square-check */>}}
|
||||
{{</* fab linkedin */>}}
|
||||
{{</* fas circle-check */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Image
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une image avec des coins arrondis et un ratio d'aspect de 21:9.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="img/flowers.jpg" ratio="21x9" caption="Légende de l'image" class="rounded" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une image vectorielle classique.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="/img/logo_icon.svg" class="col-sm-6 col-lg-4" wrapper="text-center" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une image vectorielle avec une référence de symbole.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="/img/logo_var.svg#logo" class="col-sm-6 col-lg-4" wrapper="text-center" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Lien
|
||||
|
||||
À titre d'exemple, les shortcodes suivants rendent des liens dans différents formats.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
|
||||
- {{</* link hinode >}}Lien nommé avec les paramètres par défaut{{< /link */>}}
|
||||
@@ -298,28 +298,28 @@ Utilisez le shortcode `file` pour afficher et mettre en évidence le contenu com
|
||||
- {{</* link url="../projects/another-project" case=false /*/>}}
|
||||
- {{</* link "about" /*/>}}
|
||||
- {{</* link "/en/about/" /*/>}}
|
||||
- {{</* link "/en/about" >}}About (Anglais){{< /link */>}}
|
||||
- {{</* link url="/en/about/" force=true >}}About (Anglais){{< /link */>}}
|
||||
- {{</* link "#image" /*/>}}
|
||||
- {{</* link "components/#map" /*/>}}
|
||||
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Mark
|
||||
|
||||
Utilisez le shortcode `mark` pour mettre en évidence le texte. Le contenu interne est utilisé en tant qu'entrée.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
Utilisez le shortcode `mark` pour {{</* mark >}}mettre en évidence{{< /mark */>}} un texte spécifique.
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Navigation
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche un groupe d'onglets avec des onglets alignés verticalement.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* nav type="pills" vertical="true" */>}}
|
||||
{{</* nav-item header="Élément de navigation #1" show="true" */>}}
|
||||
@@ -334,75 +334,75 @@ Utilisez le shortcode `mark` pour {{</* mark >}}mettre en évidence{{< /mark */>
|
||||
{{</* /nav-item */>}}
|
||||
{{</* /nav */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Barre de navigation
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche un en-tête de navigation clair.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* navbar id="navbar-sample" path="blog" color="primary" size="md" search="false" menus="sample" title="Marque" mode="false" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Publication
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche un bouton de publication par défaut.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* release version="v0.14.1" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Indicateur de chargement
|
||||
|
||||
À titre d'exemple, le raccourci suivant affiche un indicateur de chargement centré.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* spinner color="info" class="text-center" */>}}
|
||||
Chargement...
|
||||
{{</* /spinner */>}}
|
||||
{{< /example>}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Sub
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche du texte en indice.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example >}}
|
||||
H{{</* sub 2 */>}}O est un liquide.
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Sup
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche du texte en exposant.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example >}}
|
||||
2{{</* sup 10 */>}} équivaut à 1024.
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Chronologie
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une chronologie avec le fichier `data/timeline-fr.yml` en tant que données.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* timeline data="timeline-fr" background="dark" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Notification
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche un bouton qui, lorsqu'il est cliqué, déclenche le message de notification.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* button toast="toast-example-1" */>}}
|
||||
Affiche la notification #1
|
||||
@@ -420,14 +420,24 @@ H{{</* sub 2 */>}}O est un liquide.
|
||||
Ceci est le deuxième message de notification. Il prend en charge le `markdown`.
|
||||
{{</* /toast */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Infobulle
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une infobulle pour un lien hypertexte coloré.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* tooltip color="primary" title="Légende de l'infobulle" href="#!" */>}}Démonstration{{</* /tooltip */>}} d'une infobulle
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Vidéo
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une vidéo d'éléphant hébergée par Cloudinary.
|
||||
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* video host="cloudinary" account="demo" id="elephants" autoplay=true */>}}
|
||||
{{< /example >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
@@ -11,27 +11,70 @@ thumbnail:
|
||||
authorURL: https://unsplash.com/@ryoji__iwata
|
||||
origin: Unsplash
|
||||
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
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une animation qui se déclenche au survol.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* animation data="gatin.json" auto=false hover=true class="col-6 mx-auto" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Data tables
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche un tableau réactif utilisant des contrôles avancés.
|
||||
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 MD058 -->{{% /comment %}}
|
||||
{{< 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 >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## 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" >}}
|
||||
Voici une formule en ligne $-b \pm \sqrt{b^2 - 4ac} \over 2a$.
|
||||
{{{< example lang="markdown" >}}
|
||||
Voici une formule $-b \pm \sqrt{b^2 - 4ac} \over 2a$ en ligne
|
||||
|
||||
Il s'agit d'une formule non en ligne:
|
||||
|
||||
@@ -43,8 +86,8 @@ $$\forall x \in X, \quad \exists y \leq \epsilon$$
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une carte interactive de la ville d'Amsterdam.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* map lat=52.377 long=4.90 zoom=13 popup="Gare centrale d'Amsterdam" popup-lat=52.378062 popup-long=4.900562 */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
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.
|
||||
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="https://res.cloudinary.com/demo/dog.webp"
|
||||
ratio="21x9" caption="Image Cloudinary" class="rounded" plain=true */>}}
|
||||
{{< /example >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## ImageKit.io
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une image avec des coins arrondis et un ratio d'aspect de 21x9.
|
||||
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="https://ik.imagekit.io/demo/default-image.jpg"
|
||||
ratio="21x9" caption="Image ImageKit.io" class="rounded" anchor="Center" */>}}
|
||||
{{< /example >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Imgix
|
||||
|
||||
À titre d'exemple, le shortcode suivant affiche une image avec des coins arrondis et un ratio d'aspect de 21x9.
|
||||
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* image src="https://assets.imgix.net/examples/bluehat.jpg"
|
||||
ratio="21x9" caption="Image imgix" class="rounded" anchor="Top" */>}}
|
||||
{{< /example >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
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
|
||||
---
|
||||
{{% comment %}}<!-- markdownlint-disable MD036 -->{{% /comment %}}
|
||||
*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
|
||||
---
|
||||
{{% comment %}}<!-- markdownlint-disable MD036 -->{{% /comment %}}
|
||||
*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. {{% comment %}}<!-- Pour exercer ces droits, vous pouvez nous écrire à privacy@gethinode.com. Nous répondrons à votre demande conformément aux lois applicables. -->{{% /comment %}}
|
||||
|
||||
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.
|
||||
|
||||
{{% comment %}}<!-- ## 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. -->{{% /comment %}}
|
||||
|
||||
*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
|
||||
* Versiebeheer van documentatiepagina's, inclusief secundaire navigatie en selectie van versies
|
||||
* Optimalisering van foto's voor meerdere schermafmetingen en resoluties
|
||||
* 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" >}})
|
||||
* 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" %}})
|
||||
{.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.
|
||||
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* animation data="gatin.json" auto=false hover=true class="col-6 mx-auto" */>}}
|
||||
{{< /example >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
||||
|
||||
## Gegevenstabellen
|
||||
|
||||
Het volgende voorbeeld gebruikt een shortcode om een responsieve tabel met geavanceerde mogelijkheden te tonen.
|
||||
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 MD058 -->{{% /comment %}}
|
||||
{{< 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 >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 MD058 -->{{% /comment %}}
|
||||
|
||||
## 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.
|
||||
|
||||
{{% comment %}}<!-- markdownlint-disable MD037 -->{{% /comment %}}
|
||||
{{< 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 >}}
|
||||
{{% comment %}}<!-- markdownlint-enable MD037 -->{{% /comment %}}
|
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
|
||||
|
||||
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/hinode v0.22.5/go.mod h1:hsskrlBRnTbpCjrDtGbK8C1VYGML7ezHtCDGDiYL2mQ=
|
||||
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=
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.2.4 h1:MxKKNSpX2cb9+4l3mH/xfZUqiJ1buaGLj0AFRnPci5M=
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.2.4/go.mod h1:tULb7D7CoTycGUyL7ryqHJKaX11XuL2SN+XwP7/DI0Y=
|
||||
|
@@ -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/go.mod h1:hsskrlBRnTbpCjrDtGbK8C1VYGML7ezHtCDGDiYL2mQ=
|
||||
github.com/gethinode/mod-flexsearch v1.8.1 h1:xwPvmmxd8Tdyxp8/rnd9KRGqIDtZs/YwAQJ1i9oQMiM=
|
||||
github.com/gethinode/mod-flexsearch v1.8.1/go.mod h1:L8hrnpupx27cez2ObMX8gWnhbW6qss4HGH1Ea4UaBRQ=
|
||||
github.com/gethinode/mod-fontawesome v1.8.0 h1:YEuCmvCdzcemF1eFK35Wnp1asKKO3/xbxGArnjq6PRY=
|
||||
github.com/gethinode/mod-fontawesome v1.8.0/go.mod h1:uvuC2YL8mdXNp6NRzFOu4TWsHvtY9AZ8YxJkF23/M/8=
|
||||
github.com/gethinode/mod-leaflet v0.4.0 h1:Xc6c1UTf4m1saQLFfFWT5sEpwj25xVGuS8csGC82UUI=
|
||||
github.com/gethinode/mod-leaflet v0.4.0/go.mod h1:yr+bUKAstifdB16mbYh69OayAmgPOlNUubAmVn5eL2M=
|
||||
github.com/gethinode/mod-lottie v1.4.1 h1:RzCjYsxFPqyBsYAcdPeUP0rvF+hD9eEl7NrxuaRiKQQ=
|
||||
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=
|
||||
github.com/gethinode/mod-cookieyes v1.0.2 h1:WL9sjpYKjkV+jRKIrm6H82UpthQjFksvKGptW6HD/QU=
|
||||
github.com/gethinode/mod-cookieyes v1.0.2/go.mod h1:VrBUKm5apop6KIb+R8eRqvlf3AAPnv5aMajL0RorIjY=
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.0.3 h1:o5PAAOjx8baRcSkhTAQuZ+hX9cK8oWjeC3sYxt1DT2c=
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.0.4 h1:QgYSD3S23351e7xEeQb+Mon+e+I6RbnnrTyvpxBST1A=
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.0.4/go.mod h1:tULb7D7CoTycGUyL7ryqHJKaX11XuL2SN+XwP7/DI0Y=
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.1.2 h1:hzGCbRbpNAVkLr+jFWpAQaXHG0lgK+KgIpaZYsI1J+U=
|
||||
github.com/gethinode/mod-cookieyes/v2 v2.1.2/go.mod h1:tULb7D7CoTycGUyL7ryqHJKaX11XuL2SN+XwP7/DI0Y=
|
||||
|
@@ -3,8 +3,8 @@
|
||||
"tags": [
|
||||
"a",
|
||||
"abbr",
|
||||
"annotation",
|
||||
"body",
|
||||
"br",
|
||||
"button",
|
||||
"code",
|
||||
"div",
|
||||
@@ -14,18 +14,29 @@
|
||||
"footer",
|
||||
"form",
|
||||
"h2",
|
||||
"h3",
|
||||
"h5",
|
||||
"head",
|
||||
"hr",
|
||||
"html",
|
||||
"i",
|
||||
"iframe",
|
||||
"img",
|
||||
"input",
|
||||
"ins",
|
||||
"label",
|
||||
"li",
|
||||
"link",
|
||||
"mark",
|
||||
"math",
|
||||
"meta",
|
||||
"mfrac",
|
||||
"mi",
|
||||
"mn",
|
||||
"mo",
|
||||
"mrow",
|
||||
"mspace",
|
||||
"msqrt",
|
||||
"msub",
|
||||
"msup",
|
||||
"nav",
|
||||
"noscript",
|
||||
"ol",
|
||||
@@ -33,12 +44,14 @@
|
||||
"path",
|
||||
"pre",
|
||||
"script",
|
||||
"semantics",
|
||||
"small",
|
||||
"span",
|
||||
"strong",
|
||||
"sub",
|
||||
"sup",
|
||||
"svg",
|
||||
"symbol",
|
||||
"table",
|
||||
"tbody",
|
||||
"td",
|
||||
@@ -51,6 +64,7 @@
|
||||
"use"
|
||||
],
|
||||
"classes": [
|
||||
"%!s(<nil>)",
|
||||
"accordion",
|
||||
"accordion-body",
|
||||
"accordion-button",
|
||||
@@ -69,6 +83,7 @@
|
||||
"align-self-end",
|
||||
"anchor",
|
||||
"badge",
|
||||
"ball",
|
||||
"bg-body",
|
||||
"bg-body-tertiary",
|
||||
"bg-danger",
|
||||
@@ -101,11 +116,14 @@
|
||||
"btn-sm",
|
||||
"btn-social",
|
||||
"card",
|
||||
"card-block-2",
|
||||
"card-body",
|
||||
"card-body-link",
|
||||
"card-body-margin",
|
||||
"card-button",
|
||||
"card-button-link",
|
||||
"card-container",
|
||||
"card-container-wrapper",
|
||||
"card-emphasize",
|
||||
"card-icon",
|
||||
"card-img-bg",
|
||||
@@ -123,7 +141,10 @@
|
||||
"carousel-indicators",
|
||||
"carousel-inner",
|
||||
"carousel-item",
|
||||
"checkbox",
|
||||
"chroma",
|
||||
"cky-audit-table-element",
|
||||
"cky-banner-element",
|
||||
"col",
|
||||
"col-10",
|
||||
"col-12",
|
||||
@@ -131,22 +152,24 @@
|
||||
"col-3",
|
||||
"col-4",
|
||||
"col-6",
|
||||
"col-8",
|
||||
"col-9",
|
||||
"col-auto",
|
||||
"col-lg-2",
|
||||
"col-lg-4",
|
||||
"col-lg-8",
|
||||
"col-md-10",
|
||||
"col-md-2",
|
||||
"col-md-3",
|
||||
"col-md-4",
|
||||
"col-md-6",
|
||||
"col-md-8",
|
||||
"col-md-9",
|
||||
"col-md-auto",
|
||||
"col-sm-12",
|
||||
"col-sm-3",
|
||||
"col-sm-6",
|
||||
"col-sm-9",
|
||||
"col-xl-10",
|
||||
"col-xl-2",
|
||||
"collapse",
|
||||
"collapsed",
|
||||
"container",
|
||||
@@ -167,6 +190,7 @@
|
||||
"d-none-light",
|
||||
"d-sm-block",
|
||||
"d-sm-none",
|
||||
"data-table",
|
||||
"display-1",
|
||||
"display-4",
|
||||
"dropdown",
|
||||
@@ -176,7 +200,6 @@
|
||||
"dropdown-menu-end",
|
||||
"dropdown-toggle",
|
||||
"emphasis",
|
||||
"emphasis-dark",
|
||||
"end-0",
|
||||
"fa",
|
||||
"fa-10x",
|
||||
@@ -184,11 +207,11 @@
|
||||
"fa-2xs",
|
||||
"fa-4x",
|
||||
"fa-activity",
|
||||
"fa-angle-left",
|
||||
"fa-arrow-left",
|
||||
"fa-arrow-right",
|
||||
"fa-bootstrap",
|
||||
"fa-circle-check",
|
||||
"fa-circle-half-stroke",
|
||||
"fa-code",
|
||||
"fa-docker",
|
||||
"fa-ellipsis",
|
||||
@@ -223,12 +246,16 @@
|
||||
"flex-fill",
|
||||
"flex-grow-1",
|
||||
"flex-md-grow-0",
|
||||
"flex-nowrap",
|
||||
"flex-row",
|
||||
"font-monospace",
|
||||
"footer",
|
||||
"form-control",
|
||||
"fs-2",
|
||||
"fs-3",
|
||||
"fs-5",
|
||||
"fs-6",
|
||||
"fs-lg-5",
|
||||
"fs-md-5",
|
||||
"fw-30",
|
||||
"fw-bold",
|
||||
@@ -257,6 +284,8 @@
|
||||
"justify-content-center",
|
||||
"justify-content-end",
|
||||
"justify-content-start",
|
||||
"katex",
|
||||
"label",
|
||||
"lead",
|
||||
"leaflet-map",
|
||||
"link-bg-body",
|
||||
@@ -278,6 +307,7 @@
|
||||
"me-auto",
|
||||
"middle-bar",
|
||||
"min-vh-100",
|
||||
"mode-switch",
|
||||
"ms-1",
|
||||
"ms-3",
|
||||
"ms-auto",
|
||||
@@ -287,7 +317,8 @@
|
||||
"mt-4",
|
||||
"mt-5",
|
||||
"mt-auto",
|
||||
"multi-docs-collapse-15",
|
||||
"mt-md-0",
|
||||
"multi-docs-collapse-41",
|
||||
"multi-file-collapse-1",
|
||||
"mx-auto",
|
||||
"mx-md-0",
|
||||
@@ -309,17 +340,13 @@
|
||||
"navbar-contrast",
|
||||
"navbar-expand-md",
|
||||
"navbar-fixed-top",
|
||||
"navbar-mode-selector",
|
||||
"navbar-nav",
|
||||
"navbar-nav-scroll",
|
||||
"navbar-title",
|
||||
"navbar-toggler",
|
||||
"next",
|
||||
"no-js",
|
||||
"offcanvas",
|
||||
"offcanvas-body",
|
||||
"offcanvas-header",
|
||||
"offcanvas-start",
|
||||
"offcanvas-title",
|
||||
"order-0",
|
||||
"order-1",
|
||||
"order-first",
|
||||
@@ -330,7 +357,6 @@
|
||||
"p-2",
|
||||
"p-3",
|
||||
"p-4",
|
||||
"pb-2",
|
||||
"pb-3",
|
||||
"pb-4",
|
||||
"pb-5",
|
||||
@@ -346,6 +372,7 @@
|
||||
"ps-1",
|
||||
"ps-3",
|
||||
"pt-1",
|
||||
"pt-4",
|
||||
"pt-5",
|
||||
"pt-md-3",
|
||||
"ptw-3",
|
||||
@@ -376,6 +403,7 @@
|
||||
"row-cols-md-3",
|
||||
"row-cols-sm-2",
|
||||
"row-cols-sm-3",
|
||||
"scrollbar-horizontal",
|
||||
"search",
|
||||
"search-input",
|
||||
"search-suggestions",
|
||||
@@ -391,7 +419,6 @@
|
||||
"sticky-top",
|
||||
"stretched-link",
|
||||
"svg-inline--fa",
|
||||
"switch-mode-collapsed",
|
||||
"syntax-highlight",
|
||||
"tab-content",
|
||||
"tab-pane",
|
||||
@@ -419,8 +446,6 @@
|
||||
"text-sm-start",
|
||||
"text-start",
|
||||
"text-uppercase",
|
||||
"theme-icon",
|
||||
"theme-icon-active",
|
||||
"tickmark",
|
||||
"timeline",
|
||||
"timeline-bg-dark",
|
||||
@@ -444,6 +469,8 @@
|
||||
"toast-header",
|
||||
"toc",
|
||||
"toc-button",
|
||||
"toc-item",
|
||||
"toc-level-1",
|
||||
"toc-panel",
|
||||
"toc-sidebar",
|
||||
"toggler-icon",
|
||||
@@ -453,15 +480,13 @@
|
||||
"top-bar",
|
||||
"translate-middle",
|
||||
"translate-middle-y",
|
||||
"video-embedded",
|
||||
"visually-hidden",
|
||||
"vr",
|
||||
"w-100",
|
||||
"w-50"
|
||||
],
|
||||
"ids": [
|
||||
"-theme",
|
||||
"-theme-collapsed",
|
||||
"TableOfContents",
|
||||
"abbr",
|
||||
"accordion",
|
||||
"accordion-0",
|
||||
@@ -474,15 +499,15 @@
|
||||
"accordéon",
|
||||
"alert",
|
||||
"alerte",
|
||||
"animatie",
|
||||
"animation",
|
||||
"badge",
|
||||
"barre-de-navigation",
|
||||
"blog",
|
||||
"body-docs-collapse-15",
|
||||
"body-docs-collapse-41",
|
||||
"body-file-collapse-1",
|
||||
"bouton",
|
||||
"breadcrumb",
|
||||
"btn-webshare",
|
||||
"button",
|
||||
"button-group",
|
||||
"card",
|
||||
@@ -496,58 +521,106 @@
|
||||
"collapse",
|
||||
"collapse-1",
|
||||
"command-prompt",
|
||||
"comment-nous-partageons-vos-informations",
|
||||
"comment-utilisons-nous-les-cookies-",
|
||||
"cookies-etc",
|
||||
"custom-activity",
|
||||
"data-tables",
|
||||
"docs",
|
||||
"documentation",
|
||||
"example",
|
||||
"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",
|
||||
"fil-dariane",
|
||||
"file",
|
||||
"footer-docs-collapse-15",
|
||||
"footer-docs-collapse-41",
|
||||
"footer-file-collapse-1",
|
||||
"formula-katex",
|
||||
"formule-katex",
|
||||
"gegevenstabellen",
|
||||
"groupe-de-boutons",
|
||||
"groupe-de-cartes",
|
||||
"gérer-les-préférences-des-cookies",
|
||||
"how-do-we-use-cookies",
|
||||
"how-we-share-your-information",
|
||||
"icon",
|
||||
"image",
|
||||
"imagekitio",
|
||||
"imgix",
|
||||
"indicateur-de-chargement",
|
||||
"infobulle",
|
||||
"ins",
|
||||
"invite-de-commandes",
|
||||
"kaart",
|
||||
"language-selector",
|
||||
"leaflet-map-0",
|
||||
"lien",
|
||||
"liens-vers-des-tiers-et-utilisation-de-vos-informations",
|
||||
"link",
|
||||
"lottie-animation-0",
|
||||
"manage-cookie-preferences",
|
||||
"map",
|
||||
"mark",
|
||||
"nav",
|
||||
"nav-0",
|
||||
"nav-0-0",
|
||||
"nav-0-1",
|
||||
"nav-0-2",
|
||||
"nav-0-btn-0",
|
||||
"nav-0-btn-1",
|
||||
"nav-0-btn-2",
|
||||
"nav-nav-0",
|
||||
"navbar",
|
||||
"navbar-0-collapse",
|
||||
"navbar-mode",
|
||||
"navbar-mode-checkbox",
|
||||
"navbar-sample-collapse",
|
||||
"navigation",
|
||||
"notification",
|
||||
"offcanvas-label",
|
||||
"offcanvass-sidebar",
|
||||
"persona",
|
||||
"projecten",
|
||||
"projects",
|
||||
"projets",
|
||||
"publication",
|
||||
"que-sont-les-cookies-",
|
||||
"release",
|
||||
"réduire",
|
||||
"security",
|
||||
"spinner",
|
||||
"sub",
|
||||
"sup",
|
||||
"sécurité",
|
||||
"table",
|
||||
"third-party-links--use-of-your-information",
|
||||
"timeline",
|
||||
"toast",
|
||||
"toast-container",
|
||||
@@ -556,7 +629,14 @@
|
||||
"toast-example-2",
|
||||
"toast-message-email-4",
|
||||
"toc-collapse",
|
||||
"tooltip"
|
||||
"tooltip",
|
||||
"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>
|
19
go.mod
19
go.mod
@@ -4,13 +4,16 @@ go 1.19
|
||||
|
||||
require (
|
||||
github.com/airbnb/lottie-web v5.12.2+incompatible // indirect
|
||||
github.com/gethinode/mod-bootstrap v1.3.0 // indirect
|
||||
github.com/gethinode/mod-flexsearch v1.12.0 // indirect
|
||||
github.com/gethinode/mod-fontawesome v1.9.0 // indirect
|
||||
github.com/gethinode/mod-katex v1.1.0 // indirect
|
||||
github.com/gethinode/mod-leaflet v1.1.0 // indirect
|
||||
github.com/gethinode/mod-lottie v1.5.0 // indirect
|
||||
github.com/gethinode/mod-utils/v2 v2.3.1 // indirect
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20240110101704-4c3966709f85 // indirect
|
||||
github.com/gethinode/mod-bootstrap v1.3.2 // indirect
|
||||
github.com/gethinode/mod-csp v1.0.7 // indirect
|
||||
github.com/gethinode/mod-flexsearch/v2 v2.1.0 // indirect
|
||||
github.com/gethinode/mod-fontawesome v1.10.1 // indirect
|
||||
github.com/gethinode/mod-google-analytics v1.3.1 // indirect
|
||||
github.com/gethinode/mod-katex v1.1.3 // indirect
|
||||
github.com/gethinode/mod-leaflet v1.2.1 // 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.9.0 // indirect
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20240501124520-961c3ae84a87 // indirect
|
||||
github.com/twbs/bootstrap v5.3.3+incompatible // indirect
|
||||
)
|
||||
|
184
go.sum
184
go.sum
@@ -22,6 +22,26 @@ github.com/gethinode/mod-bootstrap v1.2.8 h1:kIKSO6qqE8xA0KQC5s6kkEv5UDc8oT17Hal
|
||||
github.com/gethinode/mod-bootstrap v1.2.8/go.mod h1:CL9IDot6nbXIWJYE/KxfsTdYYEJIGL17BXbAYPn+wVQ=
|
||||
github.com/gethinode/mod-bootstrap v1.3.0 h1:UxNmXgXo7gA8C8z1ar47+tSccmKYpaYBBN+txB0pwBk=
|
||||
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/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/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
|
||||
github.com/gethinode/mod-flexsearch v1.1.0 h1:7BCMyQDlYlskNXuazt8Jg/jg9WREexu2xVkYqThkAX4=
|
||||
@@ -68,6 +88,16 @@ github.com/gethinode/mod-flexsearch v1.11.3 h1:ykxpUg8M4vr1C4QzxJOPGt+1ZmPAD/gOC
|
||||
github.com/gethinode/mod-flexsearch v1.11.3/go.mod h1:L8hrnpupx27cez2ObMX8gWnhbW6qss4HGH1Ea4UaBRQ=
|
||||
github.com/gethinode/mod-flexsearch v1.12.0 h1:zg1IHvc8VO9WEtQuQnuG6HeWFNByvyqC9JYWDtpsP6s=
|
||||
github.com/gethinode/mod-flexsearch v1.12.0/go.mod h1:L8hrnpupx27cez2ObMX8gWnhbW6qss4HGH1Ea4UaBRQ=
|
||||
github.com/gethinode/mod-flexsearch v1.12.1 h1:clkGUWaNPe9Dt/66Apy7oH9NwVQfnD6OpGSLffeC9sY=
|
||||
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/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/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
|
||||
github.com/gethinode/mod-fontawesome v1.1.0 h1:rsDzUI+3ZlS/do2ff3ne8/z3KwHeysmuA+WsXlumXXk=
|
||||
@@ -108,6 +138,38 @@ github.com/gethinode/mod-fontawesome v1.8.2 h1:LAzLytyh9c9gLzBWMju6Gtp3uEojhBQEY
|
||||
github.com/gethinode/mod-fontawesome v1.8.2/go.mod h1:xBKsZH3WJtMOItZVlp9SbO51uaBy6IbvUZSKpNu3b6Y=
|
||||
github.com/gethinode/mod-fontawesome v1.9.0 h1:xqUB8AnezMHAt8lye4ksqvmHSVPCOkiHsHGUbqNoeP0=
|
||||
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/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/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||
github.com/gethinode/mod-katex v1.0.1 h1:809QUztxmKgMNchU+v03iMO7Ma+ISc3ZzhXYauc21rs=
|
||||
@@ -128,6 +190,12 @@ github.com/gethinode/mod-katex v1.0.9 h1:cCJoR28tZwkDvXps17o9Jwfe3aQQAZ3Rxk0jCNR
|
||||
github.com/gethinode/mod-katex v1.0.9/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
|
||||
github.com/gethinode/mod-katex v1.1.0 h1:PxST3HPUt6F2X/xKakTVeTkwWqCtEr53K1vYEOyQu3I=
|
||||
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/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/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=
|
||||
github.com/gethinode/mod-leaflet v0.3.1 h1:H5MaOa+BB1KuVw7abTqfIn/SNzzRsAyx/WQoSe+2Ykc=
|
||||
@@ -146,6 +214,12 @@ github.com/gethinode/mod-leaflet v1.0.1 h1:L4Coe6HTD9O0Txs1S8AtVg+6/TEneSF9i6fJK
|
||||
github.com/gethinode/mod-leaflet v1.0.1/go.mod h1:Ei0x9WiL7Dbi4JeG6yI1CE63bT1QJ8sKi67Jea1wFSE=
|
||||
github.com/gethinode/mod-leaflet v1.1.0 h1:FXzPCic5XmUluxQ6e7LYUhhLnxuQOBwry8qjG9k30UY=
|
||||
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/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/go.mod h1:erRCgSL2FCfKHI0jQbSpM+g0jXl7SjKVJrh7kWGteKs=
|
||||
github.com/gethinode/mod-lottie v1.0.1 h1:+IE7xtnSVQpJS56oBJq9RWKZeFEfxrOZAqE3BSrS/u0=
|
||||
@@ -174,6 +248,70 @@ github.com/gethinode/mod-lottie v1.4.7 h1:5Hes0xY/l8ygzJ8YQIzdqCmvGrDQs8D8qZ/vR1
|
||||
github.com/gethinode/mod-lottie v1.4.7/go.mod h1:FvcG3NjXOBOnwou0QvXYNPHpybxwT6yxmSh4N+nBD9s=
|
||||
github.com/gethinode/mod-lottie v1.5.0 h1:LwEEY+p+sPrN01yz7GyVOsF5lZ4qMln69+gAxJs1DDA=
|
||||
github.com/gethinode/mod-lottie v1.5.0/go.mod h1:FvcG3NjXOBOnwou0QvXYNPHpybxwT6yxmSh4N+nBD9s=
|
||||
github.com/gethinode/mod-lottie v1.5.1 h1:84ZmOTKJH75wsd/YjPaaBRkTeLnmRROv9iFlQVMC+jA=
|
||||
github.com/gethinode/mod-lottie v1.5.1/go.mod h1:z0Q6EADM7pN7gmhCzDx2VR4uG5mxn9qbsphtxjIkssY=
|
||||
github.com/gethinode/mod-lottie v1.5.2 h1:UvrNAQeD/97Q5fbv3uKIY48fY3IWJeLy/v206Gb0F6Y=
|
||||
github.com/gethinode/mod-lottie v1.5.2/go.mod h1:HM1pA85EiPO7RtNysw/a2ZzRqktO2WvB/KyWLOuynzg=
|
||||
github.com/gethinode/mod-lottie v1.5.3 h1:fvCjCoZoCEhY2aou30oEsEo6N4tVSI0ijFyXS3wNib0=
|
||||
github.com/gethinode/mod-lottie v1.5.3/go.mod h1:XHVMuPsuJIm9/Eb2ql4jsT49/BQqMlBiirQoty4uHAo=
|
||||
github.com/gethinode/mod-lottie v1.5.4 h1:+xbamSsjcnP2tyzGl0CA1enma7gkAp67wenmuP0XELY=
|
||||
github.com/gethinode/mod-lottie v1.5.4/go.mod h1:gALqz48aYpoDLxJOI3LzIpdy0Eq/lOBNtlcOxABa9tg=
|
||||
github.com/gethinode/mod-lottie v1.5.5 h1:uEJKsz+ovsZtbGkMhPONcIhtG6M3RjYiK+iVoScLOVo=
|
||||
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/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/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/go.mod h1:mmrcvAJU2i3SMU56VmQ5PW43uDXBcsJKcZwCHrvl3Kc=
|
||||
github.com/gethinode/mod-simple-datatables v1.0.3 h1:JL2nBlEHWMmkE7EZrpfpmzka47dklJUh23/xKJkOQoI=
|
||||
github.com/gethinode/mod-simple-datatables v1.0.3/go.mod h1:mmrcvAJU2i3SMU56VmQ5PW43uDXBcsJKcZwCHrvl3Kc=
|
||||
github.com/gethinode/mod-simple-datatables v1.0.5 h1:2Aa4k1Bd1WEYHbskFQj+1X35BB7abB8RXHE7Uk2N4pg=
|
||||
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/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/go.mod h1:ONJm3pHCq7nvaPNjusLZNCeCbhOhSBH4HVKHwK1FdYE=
|
||||
github.com/gethinode/mod-utils v1.0.1 h1:jhZGlGFHHL1f5HXbBMXfiZ2gCz4TVafAzjnRPTIBSEE=
|
||||
@@ -202,12 +340,58 @@ github.com/gethinode/mod-utils/v2 v2.3.0 h1:e3uhlAGasvXe+cgvcmzRe05Zo4UEx86uk0Tb
|
||||
github.com/gethinode/mod-utils/v2 v2.3.0/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.1 h1:blqynoRJ+H2SPfSU28iYheYWPH39MKNtK5HKJPghL3M=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.1/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.2 h1:QxYtHqeiLfAg+38ULFr3qYwNuypcnV1KzsmmNUjbX+U=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.2/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.3 h1:dewgQgAyPJJ1lA2WhowHaFqVaeLjUNYgxDO4mE3v0F0=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.3/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.4 h1:4OmUsLW7FyQL7vJhg/Iy9E7nFXWL955qCtsj6yWU51M=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.4/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.5 h1:r8V330xQkHTjzAFNCde1Kpz6fgidzmMRW82eIonUnOo=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.5/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.6 h1:Ta+WKc83sK9ZROKmUwS4pA32Qm0bQqoMmWHEOzDvZ5Y=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.6/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.7 h1:FFsUPO7NBp9Bhjovf0Ki5hnDGfeMKV/3RNz1Qpv7+oQ=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.7/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.8 h1:zAiDRCb3SsP9z6PUkCaiRLHOpqFhVf0xVhVOoTZNmAI=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.8/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
|
||||
github.com/gethinode/mod-utils/v2 v2.3.9 h1:Z9uAr6S0wunlkfKHa2D/U83fBV6Ivtf+7sjBAcrddrg=
|
||||
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/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/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3 h1:H/qVR5O4BXjRjD+5PZB+r4ug2BSJ2Of4RtwOntd+OKo=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20240108021025-afd75f742f22 h1:re7L8FxbXQpnX8BgzkdUnDpsUmloGNyLmiy2ZCln8pg=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20240108021025-afd75f742f22/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20240110101704-4c3966709f85 h1:H6xa5YyCHr78M+qqCApM4Kvz/eMA7pfGskYmfkEBRCA=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20240110101704-4c3966709f85/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20240501124520-961c3ae84a87 h1:6PNbL0/LxO8Xl8MZSe5uvCidYNpFTz9nlWTqj2qdlzA=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20240501124520-961c3ae84a87/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/twbs/bootstrap v5.3.2+incompatible h1:tuiO5acc6xnZUR77Sbi5aKWXxjYxbmsSbJwYrhAKoQQ=
|
||||
github.com/twbs/bootstrap v5.3.2+incompatible/go.mod h1:fZTSrkpSf0/HkL0IIJzvVspTt1r9zuf7XlZau8kpcY0=
|
||||
github.com/twbs/bootstrap v5.3.3+incompatible h1:goFoqinzdHfkeegpFP7pvhbd0g+A3O2hbU3XCjuNrEQ=
|
||||
|
@@ -11,6 +11,7 @@
|
||||
"html",
|
||||
"img",
|
||||
"input",
|
||||
"label",
|
||||
"li",
|
||||
"link",
|
||||
"meta",
|
||||
@@ -23,14 +24,17 @@
|
||||
"span",
|
||||
"strong",
|
||||
"svg",
|
||||
"symbol",
|
||||
"title",
|
||||
"ul"
|
||||
"ul",
|
||||
"use"
|
||||
],
|
||||
"classes": [
|
||||
"active",
|
||||
"align-items-center",
|
||||
"align-self-center",
|
||||
"align-self-end",
|
||||
"ball",
|
||||
"bg-body",
|
||||
"bg-opacity-10",
|
||||
"bg-primary",
|
||||
@@ -41,6 +45,7 @@
|
||||
"btn",
|
||||
"btn-close",
|
||||
"btn-primary",
|
||||
"checkbox",
|
||||
"col",
|
||||
"col-12",
|
||||
"col-6",
|
||||
@@ -57,22 +62,18 @@
|
||||
"d-flex",
|
||||
"d-inline",
|
||||
"d-md-block",
|
||||
"d-md-none",
|
||||
"d-none",
|
||||
"d-sm-block",
|
||||
"d-sm-none",
|
||||
"display-1",
|
||||
"display-4",
|
||||
"dropdown",
|
||||
"dropdown-item",
|
||||
"dropdown-menu",
|
||||
"dropdown-menu-end",
|
||||
"dropdown-toggle",
|
||||
"emphasis",
|
||||
"end-0",
|
||||
"fa",
|
||||
"fa-10x",
|
||||
"fa-2x",
|
||||
"fa-angle-left",
|
||||
"fa-book-open",
|
||||
"fa-circle-half-stroke",
|
||||
"fa-ellipsis",
|
||||
"fa-face-frown",
|
||||
"fa-fw",
|
||||
@@ -100,6 +101,7 @@
|
||||
"justify-content-center",
|
||||
"justify-content-end",
|
||||
"justify-content-start",
|
||||
"label",
|
||||
"link-bg-footer",
|
||||
"link-secondary",
|
||||
"main-content",
|
||||
@@ -107,10 +109,13 @@
|
||||
"me-auto",
|
||||
"middle-bar",
|
||||
"min-vh-100",
|
||||
"mode-switch",
|
||||
"ms-auto",
|
||||
"ms-md-3",
|
||||
"mt-3",
|
||||
"mt-4",
|
||||
"mt-5",
|
||||
"mt-md-0",
|
||||
"mx-auto",
|
||||
"mx-md-0",
|
||||
"my-auto",
|
||||
@@ -123,6 +128,7 @@
|
||||
"navbar-container",
|
||||
"navbar-expand-md",
|
||||
"navbar-fixed-top",
|
||||
"navbar-mode-selector",
|
||||
"navbar-nav",
|
||||
"navbar-toggler",
|
||||
"no-js",
|
||||
@@ -156,15 +162,12 @@
|
||||
"search-suggestions",
|
||||
"shadow",
|
||||
"svg-inline--fa",
|
||||
"switch-mode-collapsed",
|
||||
"text-center",
|
||||
"text-decoration-none",
|
||||
"text-muted",
|
||||
"text-secondary",
|
||||
"text-sm-start",
|
||||
"text-start",
|
||||
"theme-icon",
|
||||
"theme-icon-active",
|
||||
"toast",
|
||||
"toast-body",
|
||||
"toast-container",
|
||||
@@ -173,9 +176,18 @@
|
||||
"top-bar"
|
||||
],
|
||||
"ids": [
|
||||
"-theme",
|
||||
"-theme-collapsed",
|
||||
"fa-face-frown",
|
||||
"fab-github",
|
||||
"fab-linkedin",
|
||||
"fab-medium",
|
||||
"fas-angle-left",
|
||||
"fas-book-open",
|
||||
"fas-ellipsis",
|
||||
"fas-moon",
|
||||
"fas-sun",
|
||||
"navbar-0-collapse",
|
||||
"navbar-mode",
|
||||
"navbar-mode-checkbox",
|
||||
"toast-container",
|
||||
"toast-copied-code-message"
|
||||
]
|
||||
|
54
i18n/de.yaml
54
i18n/de.yaml
@@ -23,12 +23,28 @@
|
||||
translation: "Artikel"
|
||||
- id: more
|
||||
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
|
||||
- id: shareLink
|
||||
translation: "Diese Seite teilen per {{ . }}"
|
||||
- id: shareSystem
|
||||
translation: "Betriebssystem"
|
||||
translation: "System"
|
||||
- id: copyToClipboard
|
||||
translation: "In die Zwischenablage kopieren"
|
||||
- id: copiedToClipboard
|
||||
@@ -52,7 +68,7 @@
|
||||
|
||||
# Navigation
|
||||
- id: colorMode
|
||||
translation: "Thema umschalten"
|
||||
translation: "Modus umschalten"
|
||||
- id: colorLight
|
||||
translation: "Light"
|
||||
- id: colorDark
|
||||
@@ -76,7 +92,7 @@
|
||||
|
||||
# Sidebar
|
||||
- id: toggleSidebar
|
||||
translation: "Menünavigation anzuzeigen oder auszublenden"
|
||||
translation: "Menünavigation anzeigen oder ausblenden"
|
||||
|
||||
# Feature
|
||||
- id: addedFeature
|
||||
@@ -110,6 +126,36 @@
|
||||
|
||||
# Comments
|
||||
- id: show
|
||||
translation: "Zeige"
|
||||
translation: "Anzeigen"
|
||||
- id: comments
|
||||
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"
|
||||
- id: supportedValues
|
||||
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"
|
||||
- id: supportedValues
|
||||
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"
|
||||
- id: supportedValues
|
||||
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
|
||||
|
@@ -1,4 +1,5 @@
|
||||
{{ define "main" }}
|
||||
{{ $base := partial "utilities/GetStaticURL" (dict "url" "/") }}
|
||||
<div class="d-flex flex-fill">
|
||||
<div class="container-xxl my-auto">
|
||||
<div class="text-center">
|
||||
@@ -7,7 +8,7 @@
|
||||
<p class="display-1 mt-3 fw-bold">404</p>
|
||||
<p class="fs-3">{{ T "pageNotFoundTitle" }}</p>
|
||||
</span>
|
||||
{{- $home := printf "<a href=\"%s\">%s</a>" ("/" | relLangURL) (T "pageNotFoundHome") -}}
|
||||
{{- $home := printf "<a href=\"%s\">%s</a>" $base (T "pageNotFoundHome") -}}
|
||||
<p>{{ T "pageNotFound" $home | safeHTML }}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
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 }}">{{ . }}</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 }}
|
||||
<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 }}>
|
||||
{{ $text := chomp .Text }}
|
||||
{{ 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 }}
|
||||
<h{{ .Level }} id="{{ .Anchor | safeURL }}">{{ .Text | safeHTML }}</h{{ .Level }}>
|
||||
<h{{ .Level }} id="{{ .Anchor | safeURL }}">{{ $text | safeHTML }}</h{{ .Level }}>
|
||||
{{ 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 }}
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user