From cf43545f577da9c38b84808041aa63f48a51f967 Mon Sep 17 00:00:00 2001 From: Jonah Aragon Date: Fri, 5 Apr 2024 10:44:23 +0000 Subject: [PATCH] Enable new mkdocs-material features (#2451) Signed-off-by: Daniel Gray --- .github/workflows/publish-release.yml | 1 + .gitignore | 6 +- Pipfile.lock | 408 ++++++++++-------- config/layouts/home.yml | 2 +- config/mkdocs-common.yml | 163 ++++++- config/mkdocs-offline.yml | 25 ++ config/mkdocs.es.yml | 2 +- config/mkdocs.fr.yml | 2 +- config/mkdocs.he.yml | 2 +- config/mkdocs.it.yml | 2 +- config/mkdocs.nl.yml | 2 +- config/mkdocs.ru.yml | 2 +- config/mkdocs.zh-Hant.yml | 2 +- crowdin.yml | 10 - docs/about/criteria.md | 25 +- docs/index.md | 16 +- includes/strings.en.env | 30 +- modules/mkdocs-material | 2 +- theme/assets/stylesheets/extra.css | 2 +- theme/assets/stylesheets/home.css | 13 +- theme/{overrides/home.en.html => home.html} | 38 +- theme/main.html | 73 +--- theme/partials/content.html | 64 +++ .../partials/{footer.html => copyright.html} | 37 +- theme/partials/header.html | 29 ++ 25 files changed, 599 insertions(+), 359 deletions(-) rename theme/{overrides/home.en.html => home.html} (56%) create mode 100644 theme/partials/content.html rename theme/partials/{footer.html => copyright.html} (61%) diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index 0445172d..86b557b8 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -29,6 +29,7 @@ permissions: contents: write pages: write id-token: write + deployments: write jobs: submodule: diff --git a/.gitignore b/.gitignore index 5a0abb6f..bc001812 100644 --- a/.gitignore +++ b/.gitignore @@ -2,10 +2,8 @@ site /i18n/ /includes/* !/includes/*.en.* -/static/i18n/* -!/static/i18n/*.en.* -/theme/overrides/* -!/theme/overrides/*.en.* +/static/i18n/ +/theme/overrides/*.*.* # commit social card fonts to repo # see: https://github.com/squidfunk/mkdocs-material/issues/6983 diff --git a/Pipfile.lock b/Pipfile.lock index 8509d8ae..5d6ef6c8 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -290,122 +290,163 @@ }, "lxml": { "hashes": [ - "sha256:0382e6a3eefa3f6699b14fa77c2eb32af2ada261b75120eaf4fc028a20394975", - "sha256:03e3962d6ad13a862dacd5b3a3ea60b4d092a550f36465234b8639311fd60989", - "sha256:05fc3720250d221792b6e0d150afc92d20cb10c9cdaa8c8f93c2a00fbdd16015", - "sha256:06036d60fccb21e22dd167f6d0e422b9cbdf3588a7e999a33799f9cbf01e41a5", - "sha256:0947d1114e337dc2aae2fa14bbc9ed5d9ca1a0acd6d2f948df9926aef65305e9", - "sha256:0e95ae029396382a0d2e8174e4077f96befcd4a2184678db363ddc074eb4d3b2", - "sha256:11acfcdf5a38cf89c48662123a5d02ae0a7d99142c7ee14ad90de5c96a9b6f06", - "sha256:11e41ffd3cd27b0ca1c76073b27bd860f96431d9b70f383990f1827ca19f2f52", - "sha256:1459a998c10a99711ac532abe5cc24ba354e4396dafef741c7797f8830712d56", - "sha256:16e65223f34fd3d65259b174f0f75a4bb3d9893698e5e7d01e54cd8c5eb98d85", - "sha256:1cce2eaad7e38b985b0f91f18468dda0d6b91862d32bec945b0e46e2ffe7222e", - "sha256:1eace37a9f4a1bef0bb5c849434933fd6213008ec583c8e31ee5b8e99c7c8500", - "sha256:1ede2a7a86a977b0c741654efaeca0af7860a9b1ae39f9268f0936246a977ee0", - "sha256:1effc10bf782f0696e76ecfeba0720ea02c0c31d5bffb7b29ba10debd57d1c3d", - "sha256:200f70b5d95fc79eb9ed7f8c4888eef4e274b9bf380b829d3d52e9ed962e9231", - "sha256:21dc490cdb33047bc7f7ad76384f3366fa8f5146b86cc04c4af45de901393b90", - "sha256:246c93e2503c710cf02c7e9869dc0258223cbefe5e8f9ecded0ac0aa07fd2bf8", - "sha256:25fef8794f0dc89f01bdd02df6a7fec4bcb2fbbe661d571e898167a83480185e", - "sha256:27877732946843f4b6bfc56eb40d865653eef34ad2edeed16b015d5c29c248df", - "sha256:281ee1ffeb0ab06204dfcd22a90e9003f0bb2dab04101ad983d0b1773bc10588", - "sha256:2a34e74ffe92c413f197ff4967fb1611d938ee0691b762d062ef0f73814f3aa4", - "sha256:2ad364026c2cebacd7e01d1138bd53639822fefa8f7da90fc38cd0e6319a2699", - "sha256:2bbe335f0d1a86391671d975a1b5e9b08bb72fba6b567c43bdc2e55ca6e6c086", - "sha256:32d44af078485c4da9a7ec460162392d49d996caf89516fa0b75ad0838047122", - "sha256:347ec08250d5950f5b016caa3e2e13fb2cb9714fe6041d52e3716fb33c208663", - "sha256:356f8873b1e27b81793e30144229adf70f6d3e36e5cb7b6d289da690f4398953", - "sha256:35e39c6fd089ad6674eb52d93aa874d6027b3ae44d2381cca6e9e4c2e102c9c8", - "sha256:3603a8a41097daf7672cae22cc4a860ab9ea5597f1c5371cb21beca3398b8d6a", - "sha256:371aab9a397dcc76625ad3b02fa9b21be63406d69237b773156e7d1fc2ce0cae", - "sha256:3ac7c8a60b8ad51fe7bca99a634dd625d66492c502fd548dc6dc769ce7d94b6a", - "sha256:3cefb133c859f06dab2ae63885d9f405000c4031ec516e0ed4f9d779f690d8e3", - "sha256:3f06e4460e76468d99cc36d5b9bc6fc5f43e6662af44960e13e3f4e040aacb35", - "sha256:4add722393c99da4d51c8d9f3e1ddf435b30677f2d9ba9aeaa656f23c1b7b580", - "sha256:4c232726f7b6df5143415a06323faaa998ef8abbe1c0ed00d718755231d76f08", - "sha256:4d16b44ad0dd8c948129639e34c8d301ad87ebc852568ace6fe9a5ad9ce67ee1", - "sha256:50a26f68d090594477df8572babac64575cd5c07373f7a8319c527c8e56c0f99", - "sha256:5188f22c00381cb44283ecb28c8d85c2db4a3035774dd851876c8647cb809c27", - "sha256:5261c858c390ae9a19aba96796948b6a2d56649cbd572968970dc8da2b2b2a42", - "sha256:52d6cdea438eb7282c41c5ac00bd6d47d14bebb6e8a8d2a1c168ed9e0cacfbab", - "sha256:53c0e56f41ef68c1ce4e96f27ecdc2df389730391a2fd45439eb3facb02d36c8", - "sha256:56591e477bea531e5e1854f5dfb59309d5708669bc921562a35fd9ca5182bdcd", - "sha256:56835b9e9a7767202fae06310c6b67478963e535fe185bed3bf9af5b18d2b67e", - "sha256:57402d6cdd8a897ce21cf8d1ff36683583c17a16322a321184766c89a1980600", - "sha256:57cbadf028727705086047994d2e50124650e63ce5a035b0aa79ab50f001989f", - "sha256:5810fa80e64a0c689262a71af999c5735f48c0da0affcbc9041d1ef5ef3920be", - "sha256:59ec2948385336e9901008fdf765780fe30f03e7fdba8090aafdbe5d1b7ea0cd", - "sha256:5f6e4e5a62114ae76690c4a04c5108d067442d0a41fd092e8abd25af1288c450", - "sha256:60847dfbdfddf08a56c4eefe48234e8c1ab756c7eda4a2a7c1042666a5516564", - "sha256:60a3983d32f722a8422c01e4dc4badc7a307ca55c59e2485d0e14244a52c482f", - "sha256:641a8da145aca67671205f3e89bfec9815138cf2fe06653c909eab42e486d373", - "sha256:6a7e0935f05e1cf1a3aa1d49a87505773b04f128660eac2a24a5594ea6b1baa7", - "sha256:6e45fd5213e5587a610b7e7c8c5319a77591ab21ead42df46bb342e21bc1418d", - "sha256:6f0d2b97a5a06c00c963d4542793f3e486b1ed3a957f8c19f6006ed39d104bb0", - "sha256:703d60e59ab45c17485c2c14b11880e4f7f0eab07134afa9007573fa5a779a5a", - "sha256:7250030a7835bfd5ba6ca7d1ad483ec90f9cbc29978c5e75c1cc3e031d3c4160", - "sha256:73e69762cf740ac3ae81137ef9d6f15f93095f50854e233d50b29e7b8a91dbc6", - "sha256:75a4117b43694c72a0d89f6c18a28dc57407bde4650927d4ef5fd384bdf6dcc7", - "sha256:7a1611fb9de0a269c05575c024e6d8cdf2186e3fa52b364e3b03dcad82514d57", - "sha256:7c556bbf88a8b667c849d326dd4dd9c6290ede5a33383ffc12b0ed17777f909d", - "sha256:7c61ce3cdd6e6c9f4003ac118be7eb3036d0ce2afdf23929e533e54482780f74", - "sha256:7efbce96719aa275d49ad5357886845561328bf07e1d5ab998f4e3066c5ccf15", - "sha256:7fac15090bb966719df06f0c4f8139783746d1e60e71016d8a65db2031ca41b8", - "sha256:80cc2b55bb6e35d3cb40936b658837eb131e9f16357241cd9ba106ae1e9c5ecb", - "sha256:883e382695f346c2ea3ad96bdbdf4ca531788fbeedb4352be3a8fcd169fc387d", - "sha256:8aa11638902ac23f944f16ce45c9f04c9d5d57bb2da66822abb721f4efe5fdbb", - "sha256:92bb37c96215c4b2eb26f3c791c0bf02c64dd251effa532b43ca5049000c4478", - "sha256:931a3a13e0f574abce8f3152b207938a54304ccf7a6fd7dff1fdb2f6691d08af", - "sha256:93eede9bcc842f891b2267c7f0984d811940d1bc18472898a1187fe560907a99", - "sha256:947fa8bf15d1c62c6db36c6ede9389cac54f59af27010251747f05bddc227745", - "sha256:a00f5931b7cccea775123c3c0a2513aee58afdad8728550cc970bff32280bdd2", - "sha256:a3c39def0965e8fb5c8d50973e0c7b4ce429a2fa730f3f9068a7f4f9ce78410b", - "sha256:a9b67b850ab1d304cb706cf71814b0e0c3875287083d7ec55ee69504a9c48180", - "sha256:ada8ce9e6e1d126ef60d215baaa0c81381ba5841c25f1d00a71cdafdc038bd27", - "sha256:ae550cbd7f229cdf2841d9b01406bcca379a5fb327b9efb53ba620a10452e835", - "sha256:ae69524fd6a68b288574013f8fadac23cacf089c75cd3fc5b216277a445eb736", - "sha256:af64df85fecd3cf3b2e792f0b5b4d92740905adfa8ce3b24977a55415f1a0c40", - "sha256:b0181c22fdb89cc19e70240a850e5480817c3e815b1eceb171b3d7a3aa3e596a", - "sha256:b03531f6cd6ce4b511dcece060ca20aa5412f8db449274b44f4003f282e6272f", - "sha256:b3b4bb89a785f4fd60e05f3c3a526c07d0d68e3536f17f169ca13bf5b5dd75a5", - "sha256:b7150e630b879390e02121e71ceb1807f682b88342e2ea2082e2c8716cf8bd93", - "sha256:b8f842df9ba26135c5414e93214e04fe0af259bb4f96a32f756f89467f7f3b45", - "sha256:ba3a86b0d5a5c93104cb899dff291e3ae13729c389725a876d00ef9696de5425", - "sha256:ba4d02aed47c25be6775a40d55c5774327fdedba79871b7c2485e80e45750cb2", - "sha256:bc2259243ee734cc736e237719037efb86603c891fd363cc7973a2d0ac8a0e3f", - "sha256:be5c8e776ecbcf8c1bce71a7d90e3a3680c9ceae516cac0be08b47e9fac0ca43", - "sha256:be5faa2d5c8c8294d770cfd09d119fb27b5589acc59635b0cf90f145dbe81dca", - "sha256:c53164f29ed3c3868787144e8ea8a399ffd7d8215f59500a20173593c19e96eb", - "sha256:c54f8d6160080831a76780d850302fdeb0e8d0806f661777b0714dfb55d9a08a", - "sha256:c74e77df9e36c8c91157853e6cd400f6f9ca7a803ba89981bfe3f3fc7e5651ef", - "sha256:c84dce8fb2e900d4fb094e76fdad34a5fd06de53e41bddc1502c146eb11abd74", - "sha256:ca3236f31d565555139d5b00b790ed2a98ac6f0c4470c4032f8b5e5a5dba3c1a", - "sha256:d2b339fb790fc923ae2e9345c8633e3d0064d37ea7920c027f20c8ae6f65a91f", - "sha256:d46df6f0b1a0cda39d12c5c4615a7d92f40342deb8001c7b434d7c8c78352e58", - "sha256:da12b4efc93d53068888cb3b58e355b31839f2428b8f13654bd25d68b201c240", - "sha256:dc7b630c4fb428b8a40ddd0bfc4bc19de11bb3c9b031154f77360e48fe8b4451", - "sha256:dd0f25a431cd16f70ec1c47c10b413e7ddfe1ccaaddd1a7abd181e507c012374", - "sha256:ddbea6e58cce1a640d9d65947f1e259423fc201c9cf9761782f355f53b7f3097", - "sha256:ddda5ba8831f258ac7e6364be03cb27aa62f50c67fd94bc1c3b6247959cc0369", - "sha256:df7dfbdef11702fd22c2eaf042d7098d17edbc62d73f2199386ad06cbe466f6d", - "sha256:e08784288a179b59115b5e57abf6d387528b39abb61105fe17510a199a277a40", - "sha256:e283b24c14361fe9e04026a1d06c924450415491b83089951d469509900d9f32", - "sha256:e4366e58c0508da4dee4c7c70cee657e38553d73abdffa53abbd7d743711ee11", - "sha256:e6cb8f7a332eaa2d876b649a748a445a38522e12f2168e5e838d1505a91cdbb7", - "sha256:e8359fb610c8c444ac473cfd82dae465f405ff807cabb98a9b9712bbd0028751", - "sha256:eaf5e308a5e50bc0548c4fdca0117a31ec9596f8cfc96592db170bcecc71a957", - "sha256:ed1fe80e1fcdd1205a443bddb1ad3c3135bb1cd3f36cc996a1f4aed35960fbe8", - "sha256:f1f164e4cc6bc646b1fc86664c3543bf4a941d45235797279b120dc740ee7af5", - "sha256:f2cb157e279d28c66b1c27e0948687dc31dc47d1ab10ce0cd292a8334b7de3d5", - "sha256:f354d62345acdf22aa3e171bd9723790324a66fafe61bfe3873b86724cf6daaa", - "sha256:f46f8033da364bacc74aca5e319509a20bb711c8a133680ca5f35020f9eaf025", - "sha256:f90c36ca95a44d2636bbf55a51ca30583b59b71b6547b88d954e029598043551", - "sha256:f9e27841cddfaebc4e3ffbe5dbdff42891051acf5befc9f5323944b2c61cef16", - "sha256:fadda215e32fe375d65e560b7f7e2a37c7f9c4ecee5315bb1225ca6ac9bf5838" + "sha256:04ab5415bf6c86e0518d57240a96c4d1fcfc3cb370bb2ac2a732b67f579e5a04", + "sha256:057cdc6b86ab732cf361f8b4d8af87cf195a1f6dc5b0ff3de2dced242c2015e0", + "sha256:058a1308914f20784c9f4674036527e7c04f7be6fb60f5d61353545aa7fcb739", + "sha256:08802f0c56ed150cc6885ae0788a321b73505d2263ee56dad84d200cab11c07a", + "sha256:0a15438253b34e6362b2dc41475e7f80de76320f335e70c5528b7148cac253a1", + "sha256:0c3f67e2aeda739d1cc0b1102c9a9129f7dc83901226cc24dd72ba275ced4218", + "sha256:0e7259016bc4345a31af861fdce942b77c99049d6c2107ca07dc2bba2435c1d9", + "sha256:0ed777c1e8c99b63037b91f9d73a6aad20fd035d77ac84afcc205225f8f41188", + "sha256:0f5d65c39f16717a47c36c756af0fb36144069c4718824b7533f803ecdf91138", + "sha256:0f8c09ed18ecb4ebf23e02b8e7a22a05d6411911e6fabef3a36e4f371f4f2585", + "sha256:11a04306fcba10cd9637e669fd73aa274c1c09ca64af79c041aa820ea992b637", + "sha256:1ae67b4e737cddc96c99461d2f75d218bdf7a0c3d3ad5604d1f5e7464a2f9ffe", + "sha256:1c5bb205e9212d0ebddf946bc07e73fa245c864a5f90f341d11ce7b0b854475d", + "sha256:1f7785f4f789fdb522729ae465adcaa099e2a3441519df750ebdccc481d961a1", + "sha256:200e63525948e325d6a13a76ba2911f927ad399ef64f57898cf7c74e69b71095", + "sha256:21c2e6b09565ba5b45ae161b438e033a86ad1736b8c838c766146eff8ceffff9", + "sha256:2213afee476546a7f37c7a9b4ad4d74b1e112a6fafffc9185d6d21f043128c81", + "sha256:27aa20d45c2e0b8cd05da6d4759649170e8dfc4f4e5ef33a34d06f2d79075d57", + "sha256:2a66bf12fbd4666dd023b6f51223aed3d9f3b40fef06ce404cb75bafd3d89536", + "sha256:2c9d147f754b1b0e723e6afb7ba1566ecb162fe4ea657f53d2139bbf894d050a", + "sha256:2ddfe41ddc81f29a4c44c8ce239eda5ade4e7fc305fb7311759dd6229a080052", + "sha256:31e9a882013c2f6bd2f2c974241bf4ba68c85eba943648ce88936d23209a2e01", + "sha256:3249cc2989d9090eeac5467e50e9ec2d40704fea9ab72f36b034ea34ee65ca98", + "sha256:3545039fa4779be2df51d6395e91a810f57122290864918b172d5dc7ca5bb433", + "sha256:394ed3924d7a01b5bd9a0d9d946136e1c2f7b3dc337196d99e61740ed4bc6fe1", + "sha256:3a6b45da02336895da82b9d472cd274b22dc27a5cea1d4b793874eead23dd14f", + "sha256:3a74c4f27167cb95c1d4af1c0b59e88b7f3e0182138db2501c353555f7ec57f4", + "sha256:3d0c3dd24bb4605439bf91068598d00c6370684f8de4a67c2992683f6c309d6b", + "sha256:3dbe858ee582cbb2c6294dc85f55b5f19c918c2597855e950f34b660f1a5ede6", + "sha256:3dc773b2861b37b41a6136e0b72a1a44689a9c4c101e0cddb6b854016acc0aa8", + "sha256:3e183c6e3298a2ed5af9d7a356ea823bccaab4ec2349dc9ed83999fd289d14d5", + "sha256:3f7765e69bbce0906a7c74d5fe46d2c7a7596147318dbc08e4a2431f3060e306", + "sha256:417d14450f06d51f363e41cace6488519038f940676ce9664b34ebf5653433a5", + "sha256:44f6c7caff88d988db017b9b0e4ab04934f11e3e72d478031efc7edcac6c622f", + "sha256:491755202eb21a5e350dae00c6d9a17247769c64dcf62d8c788b5c135e179dc4", + "sha256:4951e4f7a5680a2db62f7f4ab2f84617674d36d2d76a729b9a8be4b59b3659be", + "sha256:52421b41ac99e9d91934e4d0d0fe7da9f02bfa7536bb4431b4c05c906c8c6919", + "sha256:530e7c04f72002d2f334d5257c8a51bf409db0316feee7c87e4385043be136af", + "sha256:533658f8fbf056b70e434dff7e7aa611bcacb33e01f75de7f821810e48d1bb66", + "sha256:5670fb70a828663cc37552a2a85bf2ac38475572b0e9b91283dc09efb52c41d1", + "sha256:56c22432809085b3f3ae04e6e7bdd36883d7258fcd90e53ba7b2e463efc7a6af", + "sha256:58278b29cb89f3e43ff3e0c756abbd1518f3ee6adad9e35b51fb101c1c1daaec", + "sha256:588008b8497667f1ddca7c99f2f85ce8511f8f7871b4a06ceede68ab62dff64b", + "sha256:59565f10607c244bc4c05c0c5fa0c190c990996e0c719d05deec7030c2aa8289", + "sha256:59689a75ba8d7ffca577aefd017d08d659d86ad4585ccc73e43edbfc7476781a", + "sha256:5aea8212fb823e006b995c4dda533edcf98a893d941f173f6c9506126188860d", + "sha256:5c670c0406bdc845b474b680b9a5456c561c65cf366f8db5a60154088c92d102", + "sha256:5ca1e8188b26a819387b29c3895c47a5e618708fe6f787f3b1a471de2c4a94d9", + "sha256:5d077bc40a1fe984e1a9931e801e42959a1e6598edc8a3223b061d30fbd26bbc", + "sha256:5d5792e9b3fb8d16a19f46aa8208987cfeafe082363ee2745ea8b643d9cc5b45", + "sha256:5dd1537e7cc06efd81371f5d1a992bd5ab156b2b4f88834ca852de4a8ea523fa", + "sha256:5ea7b6766ac2dfe4bcac8b8595107665a18ef01f8c8343f00710b85096d1b53a", + "sha256:622020d4521e22fb371e15f580d153134bfb68d6a429d1342a25f051ec72df1c", + "sha256:627402ad8dea044dde2eccde4370560a2b750ef894c9578e1d4f8ffd54000461", + "sha256:644df54d729ef810dcd0f7732e50e5ad1bd0a135278ed8d6bcb06f33b6b6f708", + "sha256:64641a6068a16201366476731301441ce93457eb8452056f570133a6ceb15fca", + "sha256:64c2baa7774bc22dd4474248ba16fe1a7f611c13ac6123408694d4cc93d66dbd", + "sha256:6588c459c5627fefa30139be4d2e28a2c2a1d0d1c265aad2ba1935a7863a4913", + "sha256:66bc5eb8a323ed9894f8fa0ee6cb3e3fb2403d99aee635078fd19a8bc7a5a5da", + "sha256:68a2610dbe138fa8c5826b3f6d98a7cfc29707b850ddcc3e21910a6fe51f6ca0", + "sha256:6935bbf153f9a965f1e07c2649c0849d29832487c52bb4a5c5066031d8b44fd5", + "sha256:6992030d43b916407c9aa52e9673612ff39a575523c5f4cf72cdef75365709a5", + "sha256:6a014510830df1475176466b6087fc0c08b47a36714823e58d8b8d7709132a96", + "sha256:6ab833e4735a7e5533711a6ea2df26459b96f9eec36d23f74cafe03631647c41", + "sha256:6cc6ee342fb7fa2471bd9b6d6fdfc78925a697bf5c2bcd0a302e98b0d35bfad3", + "sha256:6cf58416653c5901e12624e4013708b6e11142956e7f35e7a83f1ab02f3fe456", + "sha256:70a9768e1b9d79edca17890175ba915654ee1725975d69ab64813dd785a2bd5c", + "sha256:70ac664a48aa64e5e635ae5566f5227f2ab7f66a3990d67566d9907edcbbf867", + "sha256:71e97313406ccf55d32cc98a533ee05c61e15d11b99215b237346171c179c0b0", + "sha256:7221d49259aa1e5a8f00d3d28b1e0b76031655ca74bb287123ef56c3db92f213", + "sha256:74b28c6334cca4dd704e8004cba1955af0b778cf449142e581e404bd211fb619", + "sha256:764b521b75701f60683500d8621841bec41a65eb739b8466000c6fdbc256c240", + "sha256:78bfa756eab503673991bdcf464917ef7845a964903d3302c5f68417ecdc948c", + "sha256:794f04eec78f1d0e35d9e0c36cbbb22e42d370dda1609fb03bcd7aeb458c6377", + "sha256:79bd05260359170f78b181b59ce871673ed01ba048deef4bf49a36ab3e72e80b", + "sha256:7a7efd5b6d3e30d81ec68ab8a88252d7c7c6f13aaa875009fe3097eb4e30b84c", + "sha256:7c17b64b0a6ef4e5affae6a3724010a7a66bda48a62cfe0674dabd46642e8b54", + "sha256:804f74efe22b6a227306dd890eecc4f8c59ff25ca35f1f14e7482bbce96ef10b", + "sha256:853e074d4931dbcba7480d4dcab23d5c56bd9607f92825ab80ee2bd916edea53", + "sha256:857500f88b17a6479202ff5fe5f580fc3404922cd02ab3716197adf1ef628029", + "sha256:865bad62df277c04beed9478fe665b9ef63eb28fe026d5dedcb89b537d2e2ea6", + "sha256:88e22fc0a6684337d25c994381ed8a1580a6f5ebebd5ad41f89f663ff4ec2885", + "sha256:8b9c07e7a45bb64e21df4b6aa623cb8ba214dfb47d2027d90eac197329bb5e94", + "sha256:8de8f9d6caa7f25b204fc861718815d41cbcf27ee8f028c89c882a0cf4ae4134", + "sha256:8e77c69d5892cb5ba71703c4057091e31ccf534bd7f129307a4d084d90d014b8", + "sha256:9123716666e25b7b71c4e1789ec829ed18663152008b58544d95b008ed9e21e9", + "sha256:958244ad566c3ffc385f47dddde4145088a0ab893504b54b52c041987a8c1863", + "sha256:96323338e6c14e958d775700ec8a88346014a85e5de73ac7967db0367582049b", + "sha256:9676bfc686fa6a3fa10cd4ae6b76cae8be26eb5ec6811d2a325636c460da1806", + "sha256:9b0ff53900566bc6325ecde9181d89afadc59c5ffa39bddf084aaedfe3b06a11", + "sha256:9b9ec9c9978b708d488bec36b9e4c94d88fd12ccac3e62134a9d17ddba910ea9", + "sha256:9c6ad0fbf105f6bcc9300c00010a2ffa44ea6f555df1a2ad95c88f5656104817", + "sha256:9ca66b8e90daca431b7ca1408cae085d025326570e57749695d6a01454790e95", + "sha256:9e2addd2d1866fe112bc6f80117bcc6bc25191c5ed1bfbcf9f1386a884252ae8", + "sha256:a0af35bd8ebf84888373630f73f24e86bf016642fb8576fba49d3d6b560b7cbc", + "sha256:a2b44bec7adf3e9305ce6cbfa47a4395667e744097faed97abb4728748ba7d47", + "sha256:a2dfe7e2473f9b59496247aad6e23b405ddf2e12ef0765677b0081c02d6c2c0b", + "sha256:a55ee573116ba208932e2d1a037cc4b10d2c1cb264ced2184d00b18ce585b2c0", + "sha256:a7baf9ffc238e4bf401299f50e971a45bfcc10a785522541a6e3179c83eabf0a", + "sha256:a8d5c70e04aac1eda5c829a26d1f75c6e5286c74743133d9f742cda8e53b9c2f", + "sha256:a91481dbcddf1736c98a80b122afa0f7296eeb80b72344d7f45dc9f781551f56", + "sha256:ab31a88a651039a07a3ae327d68ebdd8bc589b16938c09ef3f32a4b809dc96ef", + "sha256:abc25c3cab9ec7fcd299b9bcb3b8d4a1231877e425c650fa1c7576c5107ab851", + "sha256:adfb84ca6b87e06bc6b146dc7da7623395db1e31621c4785ad0658c5028b37d7", + "sha256:afbbdb120d1e78d2ba8064a68058001b871154cc57787031b645c9142b937a62", + "sha256:afd5562927cdef7c4f5550374acbc117fd4ecc05b5007bdfa57cc5355864e0a4", + "sha256:b070bbe8d3f0f6147689bed981d19bbb33070225373338df755a46893528104a", + "sha256:b0b58fbfa1bf7367dde8a557994e3b1637294be6cf2169810375caf8571a085c", + "sha256:b560e3aa4b1d49e0e6c847d72665384db35b2f5d45f8e6a5c0072e0283430533", + "sha256:b6787b643356111dfd4032b5bffe26d2f8331556ecb79e15dacb9275da02866e", + "sha256:bcbf4af004f98793a95355980764b3d80d47117678118a44a80b721c9913436a", + "sha256:beb72935a941965c52990f3a32d7f07ce869fe21c6af8b34bf6a277b33a345d3", + "sha256:bf2e2458345d9bffb0d9ec16557d8858c9c88d2d11fed53998512504cd9df49b", + "sha256:c2d35a1d047efd68027817b32ab1586c1169e60ca02c65d428ae815b593e65d4", + "sha256:c38d7b9a690b090de999835f0443d8aa93ce5f2064035dfc48f27f02b4afc3d0", + "sha256:c6f2c8372b98208ce609c9e1d707f6918cc118fea4e2c754c9f0812c04ca116d", + "sha256:c817d420c60a5183953c783b0547d9eb43b7b344a2c46f69513d5952a78cddf3", + "sha256:c8ba129e6d3b0136a0f50345b2cb3db53f6bda5dd8c7f5d83fbccba97fb5dcb5", + "sha256:c94e75445b00319c1fad60f3c98b09cd63fe1134a8a953dcd48989ef42318534", + "sha256:cc4691d60512798304acb9207987e7b2b7c44627ea88b9d77489bbe3e6cc3bd4", + "sha256:cc518cea79fd1e2f6c90baafa28906d4309d24f3a63e801d855e7424c5b34144", + "sha256:cd53553ddad4a9c2f1f022756ae64abe16da1feb497edf4d9f87f99ec7cf86bd", + "sha256:cf22b41fdae514ee2f1691b6c3cdeae666d8b7fa9434de445f12bbeee0cf48dd", + "sha256:d38c8f50ecf57f0463399569aa388b232cf1a2ffb8f0a9a5412d0db57e054860", + "sha256:d3be9b2076112e51b323bdf6d5a7f8a798de55fb8d95fcb64bd179460cdc0704", + "sha256:d4f2cc7060dc3646632d7f15fe68e2fa98f58e35dd5666cd525f3b35d3fed7f8", + "sha256:d7520db34088c96cc0e0a3ad51a4fd5b401f279ee112aa2b7f8f976d8582606d", + "sha256:d793bebb202a6000390a5390078e945bbb49855c29c7e4d56a85901326c3b5d9", + "sha256:da052e7962ea2d5e5ef5bc0355d55007407087392cf465b7ad84ce5f3e25fe0f", + "sha256:dae0ed02f6b075426accbf6b2863c3d0a7eacc1b41fb40f2251d931e50188dad", + "sha256:ddc678fb4c7e30cf830a2b5a8d869538bc55b28d6c68544d09c7d0d8f17694dc", + "sha256:df2e6f546c4df14bc81f9498bbc007fbb87669f1bb707c6138878c46b06f6510", + "sha256:e02c5175f63effbd7c5e590399c118d5db6183bbfe8e0d118bdb5c2d1b48d937", + "sha256:e196a4ff48310ba62e53a8e0f97ca2bca83cdd2fe2934d8b5cb0df0a841b193a", + "sha256:e233db59c8f76630c512ab4a4daf5a5986da5c3d5b44b8e9fc742f2a24dbd460", + "sha256:e32be23d538753a8adb6c85bd539f5fd3b15cb987404327c569dfc5fd8366e85", + "sha256:e3d30321949861404323c50aebeb1943461a67cd51d4200ab02babc58bd06a86", + "sha256:e89580a581bf478d8dcb97d9cd011d567768e8bc4095f8557b21c4d4c5fea7d0", + "sha256:e998e304036198b4f6914e6a1e2b6f925208a20e2042563d9734881150c6c246", + "sha256:ec42088248c596dbd61d4ae8a5b004f97a4d91a9fd286f632e42e60b706718d7", + "sha256:efa7b51824aa0ee957ccd5a741c73e6851de55f40d807f08069eb4c5a26b2baa", + "sha256:f0a1bc63a465b6d72569a9bba9f2ef0334c4e03958e043da1920299100bc7c08", + "sha256:f18a5a84e16886898e51ab4b1d43acb3083c39b14c8caeb3589aabff0ee0b270", + "sha256:f2a9efc53d5b714b8df2b4b3e992accf8ce5bbdfe544d74d5c6766c9e1146a3a", + "sha256:f3bbbc998d42f8e561f347e798b85513ba4da324c2b3f9b7969e9c45b10f6169", + "sha256:f42038016852ae51b4088b2862126535cc4fc85802bfe30dea3500fdfaf1864e", + "sha256:f443cdef978430887ed55112b491f670bba6462cea7a7742ff8f14b7abb98d75", + "sha256:f51969bac61441fd31f028d7b3b45962f3ecebf691a510495e5d2cd8c8092dbd", + "sha256:f8aca2e3a72f37bfc7b14ba96d4056244001ddcc18382bd0daa087fd2e68a354", + "sha256:f9737bf36262046213a28e789cc82d82c6ef19c85a0cf05e75c670a33342ac2c", + "sha256:fd6037392f2d57793ab98d9e26798f44b8b4da2f2464388588f48ac52c489ea1", + "sha256:feaa45c0eae424d3e90d78823f3828e7dc42a42f21ed420db98da2c4ecf0a2cb", + "sha256:ff097ae562e637409b429a7ac958a20aab237a0378c42dabaa1e3abf2f896e5f", + "sha256:ff46d772d5f6f73564979cd77a4fffe55c916a05f3cb70e7c9c0590059fb29ef" ], "markers": "python_version >= '3.6'", - "version": "==5.2.0" + "version": "==5.2.1" }, "markdown": { "hashes": [ @@ -562,77 +603,78 @@ }, "pillow": { "hashes": [ - "sha256:0304004f8067386b477d20a518b50f3fa658a28d44e4116970abfcd94fac34a8", - "sha256:0689b5a8c5288bc0504d9fcee48f61a6a586b9b98514d7d29b840143d6734f39", - "sha256:0eae2073305f451d8ecacb5474997c08569fb4eb4ac231ffa4ad7d342fdc25ac", - "sha256:0fb3e7fc88a14eacd303e90481ad983fd5b69c761e9e6ef94c983f91025da869", - "sha256:11fa2e5984b949b0dd6d7a94d967743d87c577ff0b83392f17cb3990d0d2fd6e", - "sha256:127cee571038f252a552760076407f9cff79761c3d436a12af6000cd182a9d04", - "sha256:154e939c5f0053a383de4fd3d3da48d9427a7e985f58af8e94d0b3c9fcfcf4f9", - "sha256:15587643b9e5eb26c48e49a7b33659790d28f190fc514a322d55da2fb5c2950e", - "sha256:170aeb00224ab3dc54230c797f8404507240dd868cf52066f66a41b33169bdbe", - "sha256:1b5e1b74d1bd1b78bc3477528919414874748dd363e6272efd5abf7654e68bef", - "sha256:1da3b2703afd040cf65ec97efea81cfba59cdbed9c11d8efc5ab09df9509fc56", - "sha256:1e23412b5c41e58cec602f1135c57dfcf15482013ce6e5f093a86db69646a5aa", - "sha256:2247178effb34a77c11c0e8ac355c7a741ceca0a732b27bf11e747bbc950722f", - "sha256:257d8788df5ca62c980314053197f4d46eefedf4e6175bc9412f14412ec4ea2f", - "sha256:3031709084b6e7852d00479fd1d310b07d0ba82765f973b543c8af5061cf990e", - "sha256:322209c642aabdd6207517e9739c704dc9f9db943015535783239022002f054a", - "sha256:322bdf3c9b556e9ffb18f93462e5f749d3444ce081290352c6070d014c93feb2", - "sha256:33870dc4653c5017bf4c8873e5488d8f8d5f8935e2f1fb9a2208c47cdd66efd2", - "sha256:35bb52c37f256f662abdfa49d2dfa6ce5d93281d323a9af377a120e89a9eafb5", - "sha256:3c31822339516fb3c82d03f30e22b1d038da87ef27b6a78c9549888f8ceda39a", - "sha256:3eedd52442c0a5ff4f887fab0c1c0bb164d8635b32c894bc1faf4c618dd89df2", - "sha256:3ff074fc97dd4e80543a3e91f69d58889baf2002b6be64347ea8cf5533188213", - "sha256:47c0995fc4e7f79b5cfcab1fc437ff2890b770440f7696a3ba065ee0fd496563", - "sha256:49d9ba1ed0ef3e061088cd1e7538a0759aab559e2e0a80a36f9fd9d8c0c21591", - "sha256:51f1a1bffc50e2e9492e87d8e09a17c5eea8409cda8d3f277eb6edc82813c17c", - "sha256:52a50aa3fb3acb9cf7213573ef55d31d6eca37f5709c69e6858fe3bc04a5c2a2", - "sha256:54f1852cd531aa981bc0965b7d609f5f6cc8ce8c41b1139f6ed6b3c54ab82bfb", - "sha256:609448742444d9290fd687940ac0b57fb35e6fd92bdb65386e08e99af60bf757", - "sha256:69ffdd6120a4737710a9eee73e1d2e37db89b620f702754b8f6e62594471dee0", - "sha256:6fad5ff2f13d69b7e74ce5b4ecd12cc0ec530fcee76356cac6742785ff71c452", - "sha256:7049e301399273a0136ff39b84c3678e314f2158f50f517bc50285fb5ec847ad", - "sha256:70c61d4c475835a19b3a5aa42492409878bbca7438554a1f89d20d58a7c75c01", - "sha256:716d30ed977be8b37d3ef185fecb9e5a1d62d110dfbdcd1e2a122ab46fddb03f", - "sha256:753cd8f2086b2b80180d9b3010dd4ed147efc167c90d3bf593fe2af21265e5a5", - "sha256:773efe0603db30c281521a7c0214cad7836c03b8ccff897beae9b47c0b657d61", - "sha256:7823bdd049099efa16e4246bdf15e5a13dbb18a51b68fa06d6c1d4d8b99a796e", - "sha256:7c8f97e8e7a9009bcacbe3766a36175056c12f9a44e6e6f2d5caad06dcfbf03b", - "sha256:823ef7a27cf86df6597fa0671066c1b596f69eba53efa3d1e1cb8b30f3533068", - "sha256:8373c6c251f7ef8bda6675dd6d2b3a0fcc31edf1201266b5cf608b62a37407f9", - "sha256:83b2021f2ade7d1ed556bc50a399127d7fb245e725aa0113ebd05cfe88aaf588", - "sha256:870ea1ada0899fd0b79643990809323b389d4d1d46c192f97342eeb6ee0b8483", - "sha256:8d12251f02d69d8310b046e82572ed486685c38f02176bd08baf216746eb947f", - "sha256:9c23f307202661071d94b5e384e1e1dc7dfb972a28a2310e4ee16103e66ddb67", - "sha256:9d189550615b4948f45252d7f005e53c2040cea1af5b60d6f79491a6e147eef7", - "sha256:a086c2af425c5f62a65e12fbf385f7c9fcb8f107d0849dba5839461a129cf311", - "sha256:a2b56ba36e05f973d450582fb015594aaa78834fefe8dfb8fcd79b93e64ba4c6", - "sha256:aebb6044806f2e16ecc07b2a2637ee1ef67a11840a66752751714a0d924adf72", - "sha256:b1b3020d90c2d8e1dae29cf3ce54f8094f7938460fb5ce8bc5c01450b01fbaf6", - "sha256:b4b6b1e20608493548b1f32bce8cca185bf0480983890403d3b8753e44077129", - "sha256:b6f491cdf80ae540738859d9766783e3b3c8e5bd37f5dfa0b76abdecc5081f13", - "sha256:b792a349405fbc0163190fde0dc7b3fef3c9268292586cf5645598b48e63dc67", - "sha256:b7c2286c23cd350b80d2fc9d424fc797575fb16f854b831d16fd47ceec078f2c", - "sha256:babf5acfede515f176833ed6028754cbcd0d206f7f614ea3447d67c33be12516", - "sha256:c365fd1703040de1ec284b176d6af5abe21b427cb3a5ff68e0759e1e313a5e7e", - "sha256:c4225f5220f46b2fde568c74fca27ae9771536c2e29d7c04f4fb62c83275ac4e", - "sha256:c570f24be1e468e3f0ce7ef56a89a60f0e05b30a3669a459e419c6eac2c35364", - "sha256:c6dafac9e0f2b3c78df97e79af707cdc5ef8e88208d686a4847bab8266870023", - "sha256:c8de2789052ed501dd829e9cae8d3dcce7acb4777ea4a479c14521c942d395b1", - "sha256:cb28c753fd5eb3dd859b4ee95de66cc62af91bcff5db5f2571d32a520baf1f04", - "sha256:cb4c38abeef13c61d6916f264d4845fab99d7b711be96c326b84df9e3e0ff62d", - "sha256:d1b35bcd6c5543b9cb547dee3150c93008f8dd0f1fef78fc0cd2b141c5baf58a", - "sha256:d8e6aeb9201e655354b3ad049cb77d19813ad4ece0df1249d3c793de3774f8c7", - "sha256:d8ecd059fdaf60c1963c58ceb8997b32e9dc1b911f5da5307aab614f1ce5c2fb", - "sha256:da2b52b37dad6d9ec64e653637a096905b258d2fc2b984c41ae7d08b938a67e4", - "sha256:e87f0b2c78157e12d7686b27d63c070fd65d994e8ddae6f328e0dcf4a0cd007e", - "sha256:edca80cbfb2b68d7b56930b84a0e45ae1694aeba0541f798e908a49d66b837f1", - "sha256:f379abd2f1e3dddb2b61bc67977a6b5a0a3f7485538bcc6f39ec76163891ee48", - "sha256:fe4c15f6c9285dc54ce6553a3ce908ed37c8f3825b5a51a15c91442bb955b868" + "sha256:048ad577748b9fa4a99a0548c64f2cb8d672d5bf2e643a739ac8faff1164238c", + "sha256:048eeade4c33fdf7e08da40ef402e748df113fd0b4584e32c4af74fe78baaeb2", + "sha256:0ba26351b137ca4e0db0342d5d00d2e355eb29372c05afd544ebf47c0956ffeb", + "sha256:0ea2a783a2bdf2a561808fe4a7a12e9aa3799b701ba305de596bc48b8bdfce9d", + "sha256:1530e8f3a4b965eb6a7785cf17a426c779333eb62c9a7d1bbcf3ffd5bf77a4aa", + "sha256:16563993329b79513f59142a6b02055e10514c1a8e86dca8b48a893e33cf91e3", + "sha256:19aeb96d43902f0a783946a0a87dbdad5c84c936025b8419da0a0cd7724356b1", + "sha256:1a1d1915db1a4fdb2754b9de292642a39a7fb28f1736699527bb649484fb966a", + "sha256:1b87bd9d81d179bd8ab871603bd80d8645729939f90b71e62914e816a76fc6bd", + "sha256:1dfc94946bc60ea375cc39cff0b8da6c7e5f8fcdc1d946beb8da5c216156ddd8", + "sha256:2034f6759a722da3a3dbd91a81148cf884e91d1b747992ca288ab88c1de15999", + "sha256:261ddb7ca91fcf71757979534fb4c128448b5b4c55cb6152d280312062f69599", + "sha256:2ed854e716a89b1afcedea551cd85f2eb2a807613752ab997b9974aaa0d56936", + "sha256:3102045a10945173d38336f6e71a8dc71bcaeed55c3123ad4af82c52807b9375", + "sha256:339894035d0ede518b16073bdc2feef4c991ee991a29774b33e515f1d308e08d", + "sha256:412444afb8c4c7a6cc11a47dade32982439925537e483be7c0ae0cf96c4f6a0b", + "sha256:4203efca580f0dd6f882ca211f923168548f7ba334c189e9eab1178ab840bf60", + "sha256:45ebc7b45406febf07fef35d856f0293a92e7417ae7933207e90bf9090b70572", + "sha256:4b5ec25d8b17217d635f8935dbc1b9aa5907962fae29dff220f2659487891cd3", + "sha256:4c8e73e99da7db1b4cad7f8d682cf6abad7844da39834c288fbfa394a47bbced", + "sha256:4e6f7d1c414191c1199f8996d3f2282b9ebea0945693fb67392c75a3a320941f", + "sha256:4eaa22f0d22b1a7e93ff0a596d57fdede2e550aecffb5a1ef1106aaece48e96b", + "sha256:50b8eae8f7334ec826d6eeffaeeb00e36b5e24aa0b9df322c247539714c6df19", + "sha256:50fd3f6b26e3441ae07b7c979309638b72abc1a25da31a81a7fbd9495713ef4f", + "sha256:51243f1ed5161b9945011a7360e997729776f6e5d7005ba0c6879267d4c5139d", + "sha256:5d512aafa1d32efa014fa041d38868fda85028e3f930a96f85d49c7d8ddc0383", + "sha256:5f77cf66e96ae734717d341c145c5949c63180842a545c47a0ce7ae52ca83795", + "sha256:6b02471b72526ab8a18c39cb7967b72d194ec53c1fd0a70b050565a0f366d355", + "sha256:6fb1b30043271ec92dc65f6d9f0b7a830c210b8a96423074b15c7bc999975f57", + "sha256:7161ec49ef0800947dc5570f86568a7bb36fa97dd09e9827dc02b718c5643f09", + "sha256:72d622d262e463dfb7595202d229f5f3ab4b852289a1cd09650362db23b9eb0b", + "sha256:74d28c17412d9caa1066f7a31df8403ec23d5268ba46cd0ad2c50fb82ae40462", + "sha256:78618cdbccaa74d3f88d0ad6cb8ac3007f1a6fa5c6f19af64b55ca170bfa1edf", + "sha256:793b4e24db2e8742ca6423d3fde8396db336698c55cd34b660663ee9e45ed37f", + "sha256:798232c92e7665fe82ac085f9d8e8ca98826f8e27859d9a96b41d519ecd2e49a", + "sha256:81d09caa7b27ef4e61cb7d8fbf1714f5aec1c6b6c5270ee53504981e6e9121ad", + "sha256:8ab74c06ffdab957d7670c2a5a6e1a70181cd10b727cd788c4dd9005b6a8acd9", + "sha256:8eb0908e954d093b02a543dc963984d6e99ad2b5e36503d8a0aaf040505f747d", + "sha256:90b9e29824800e90c84e4022dd5cc16eb2d9605ee13f05d47641eb183cd73d45", + "sha256:9797a6c8fe16f25749b371c02e2ade0efb51155e767a971c61734b1bf6293994", + "sha256:9d2455fbf44c914840c793e89aa82d0e1763a14253a000743719ae5946814b2d", + "sha256:9d3bea1c75f8c53ee4d505c3e67d8c158ad4df0d83170605b50b64025917f338", + "sha256:9e2ec1e921fd07c7cda7962bad283acc2f2a9ccc1b971ee4b216b75fad6f0463", + "sha256:9e91179a242bbc99be65e139e30690e081fe6cb91a8e77faf4c409653de39451", + "sha256:a0eaa93d054751ee9964afa21c06247779b90440ca41d184aeb5d410f20ff591", + "sha256:a2c405445c79c3f5a124573a051062300936b0281fee57637e706453e452746c", + "sha256:aa7e402ce11f0885305bfb6afb3434b3cd8f53b563ac065452d9d5654c7b86fd", + "sha256:aff76a55a8aa8364d25400a210a65ff59d0168e0b4285ba6bf2bd83cf675ba32", + "sha256:b09b86b27a064c9624d0a6c54da01c1beaf5b6cadfa609cf63789b1d08a797b9", + "sha256:b14f16f94cbc61215115b9b1236f9c18403c15dd3c52cf629072afa9d54c1cbf", + "sha256:b50811d664d392f02f7761621303eba9d1b056fb1868c8cdf4231279645c25f5", + "sha256:b7bc2176354defba3edc2b9a777744462da2f8e921fbaf61e52acb95bafa9828", + "sha256:c78e1b00a87ce43bb37642c0812315b411e856a905d58d597750eb79802aaaa3", + "sha256:c83341b89884e2b2e55886e8fbbf37c3fa5efd6c8907124aeb72f285ae5696e5", + "sha256:ca2870d5d10d8726a27396d3ca4cf7976cec0f3cb706debe88e3a5bd4610f7d2", + "sha256:ccce24b7ad89adb5a1e34a6ba96ac2530046763912806ad4c247356a8f33a67b", + "sha256:cd5e14fbf22a87321b24c88669aad3a51ec052eb145315b3da3b7e3cc105b9a2", + "sha256:ce49c67f4ea0609933d01c0731b34b8695a7a748d6c8d186f95e7d085d2fe475", + "sha256:d33891be6df59d93df4d846640f0e46f1a807339f09e79a8040bc887bdcd7ed3", + "sha256:d3b2348a78bc939b4fed6552abfd2e7988e0f81443ef3911a4b8498ca084f6eb", + "sha256:d886f5d353333b4771d21267c7ecc75b710f1a73d72d03ca06df49b09015a9ef", + "sha256:d93480005693d247f8346bc8ee28c72a2191bdf1f6b5db469c096c0c867ac015", + "sha256:dc1a390a82755a8c26c9964d457d4c9cbec5405896cba94cf51f36ea0d855002", + "sha256:dd78700f5788ae180b5ee8902c6aea5a5726bac7c364b202b4b3e3ba2d293170", + "sha256:e46f38133e5a060d46bd630faa4d9fa0202377495df1f068a8299fd78c84de84", + "sha256:e4b878386c4bf293578b48fc570b84ecfe477d3b77ba39a6e87150af77f40c57", + "sha256:f0d0591a0aeaefdaf9a5e545e7485f89910c977087e7de2b6c388aec32011e9f", + "sha256:fdcbb4068117dfd9ce0138d068ac512843c52295ed996ae6dd1faf537b6dbc27", + "sha256:ff61bfd9253c3915e6d41c651d5f962da23eda633cf02262990094a18a55371a" ], "markers": "python_version >= '3.8'", - "version": "==10.2.0" + "version": "==10.3.0" }, "platformdirs": { "hashes": [ diff --git a/config/layouts/home.yml b/config/layouts/home.yml index d42c5d8d..4c476c02 100644 --- a/config/layouts/home.yml +++ b/config/layouts/home.yml @@ -24,7 +24,7 @@ definitions: {{ page.meta.get("title", page.title) }} - &page_description >- - {{ config.extra.homepage_description }} + {{ config.extra.privacy_guides.homepage.description }} - &og_description >- {{ page.meta.get("description", config.site_description) or "" }} diff --git a/config/mkdocs-common.yml b/config/mkdocs-common.yml index f72ec040..85f7e571 100644 --- a/config/mkdocs-common.yml +++ b/config/mkdocs-common.yml @@ -28,22 +28,139 @@ site_description: SITE_DESCRIPTION, "Privacy Guides is your central privacy and security resource to protect yourself online.", ] -copyright: - !ENV [FOOTER_COPYRIGHT, "© 2019 Privacy Guides and contributors."] -edit_uri: edit/main/docs/ +edit_uri_template: blob/main/docs/{path}?plain=1 extra: generator: false context: !ENV [CONTEXT, "production"] deploy: !ENV DEPLOY_ID - homepage_description: - !ENV [ - DESCRIPTION_HOMEPAGE, - "A socially motivated website which provides information about protecting your online data privacy and security.", - ] - translation_notice: !ENV DESCRIPTION_TRANSLATION - translation_notice_cta: !ENV [DESCRIPTION_TRANSLATION_CTA, "Visit Crowdin"] - translation_notice_language: !ENV LANG_ENGLISH + privacy_guides: + footer: + intro: + !ENV [ + FOOTER_INTRO, + "Privacy Guides is a non-profit, socially motivated website that provides information for protecting your data security and privacy.", + ] + note: + !ENV [ + FOOTER_NOTE, + "We do not make money from recommending certain products, and we do not use affiliate links.", + ] + copyright: + author: + !ENV [FOOTER_COPYRIGHT_AUTHOR, "Privacy Guides and contributors."] + date: !ENV [FOOTER_COPYRIGHT_DATE, "2019-2024"] + license: + - fontawesome/brands/creative-commons + - fontawesome/brands/creative-commons-by + - fontawesome/brands/creative-commons-nd + analytics: !ENV [FOOTER_ANALYTICS, "Anonymous statistics preferences."] + homepage: + description: + !ENV [ + HOMEPAGE_DESCRIPTION, + "A socially motivated website which provides information about protecting your online data privacy and security.", + ] + hero: + header: + !ENV [HOMEPAGE_HEADER, "The guide to restoring your online privacy."] + subheader: + !ENV [ + HOMEPAGE_SUBHEADER, + "Massive organizations are monitoring your online activities. Privacy Guides is your central privacy and security resource to protect yourself online.", + ] + buttons: + - name: + !ENV [ + HOMEPAGE_BUTTON_GET_STARTED_NAME, + "Start Your Privacy Journey", + ] + title: + !ENV [ + HOMEPAGE_BUTTON_GET_STARTED_TITLE, + "The first step of your privacy journey", + ] + link: basics/why-privacy-matters/ + class: md-button md-button--primary + - name: !ENV [HOMEPAGE_BUTTON_TOOLS_NAME, "Recommended Tools"] + title: + !ENV [ + HOMEPAGE_BUTTON_TOOLS_TITLE, + "Recommended privacy tools, services, and knowledge", + ] + link: tools/ + class: md-button + cta: + - title: + !ENV [ + HOMEPAGE_CTA_TITLE, + "We need you! Here's how to get involved:", + ] + links: + - icon: simple/discourse + name: !ENV [HOMEPAGE_CTA_FORUM_NAME, "Join the forum"] + link: https://discuss.privacyguides.net/ + - icon: simple/mastodon + name: !ENV [HOMEPAGE_CTA_MASTODON_NAME, "Follow us on Mastodon"] + link: https://mastodon.neat.computer/@privacyguides + - icon: simple/github + name: !ENV [HOMEPAGE_CTA_GITHUB_NAME, "Contribute on GitHub"] + link: https://github.com/privacyguides/privacyguides.org + - icon: material/translate + name: !ENV [HOMEPAGE_CTA_TRANSLATE_NAME, "Help translate"] + link: https://crowdin.com/project/privacyguides + - icon: simple/matrix + name: !ENV [HOMEPAGE_CTA_MATRIX_NAME, "Join the Matrix chat"] + link: https://matrix.to/#/#privacyguides:matrix.org + - icon: material/information-outline + name: !ENV [HOMEPAGE_CTA_ABOUT_NAME, "Learn more about us"] + link: about/ + - icon: material/hand-coin + name: !ENV [HOMEPAGE_CTA_DONATE_NAME, "Donate to Privacy Guides"] + link: about/donate/ + description: + !ENV [ + HOMEPAGE_CTA_DESCRIPTION, + "If you spot an error, think a provider should not be listed, notice a qualified provider is missing, believe a browser plugin is no longer the best choice, or uncover any other issue, please let us know.", + ] + rss: + - title: + !ENV [ + HOMEPAGE_RSS_CHANGELOG_TITLE, + "Privacy Guides release changelog", + ] + link: + !ENV [ + HOMEPAGE_RSS_CHANGELOG_LINK, + "https://discuss.privacyguides.net/c/site-development/changelog/9.rss", + ] + - title: !ENV [HOMEPAGE_RSS_BLOG_TITLE, "Privacy Guides blog feed"] + link: + !ENV [ + HOMEPAGE_RSS_BLOG_LINK, + "https://blog.privacyguides.org/feed_rss_created.xml", + ] + - title: + !ENV [HOMEPAGE_RSS_STORIES_TITLE, "Privacy Guides Web Stories feed"] + link: + !ENV [ + HOMEPAGE_RSS_STORIES_LINK, + "https://share.privacyguides.org/web-stories/feed/", + ] + - title: + !ENV [ + HOMEPAGE_RSS_FORUM_TITLE, + "Latest Privacy Guides forum topics", + ] + link: + !ENV [ + HOMEPAGE_RSS_FORUM_LINK, + "https://discuss.privacyguides.net/latest.rss", + ] + translation_notice: + notice: !ENV TRANSLATION_NOTICE + cta: !ENV [TRANSLATION_NOTICE_CTA, "Visit Crowdin"] + language: !ENV LANG_ENGLISH social: - icon: simple/mastodon link: https://mastodon.neat.computer/@privacyguides @@ -95,19 +212,22 @@ extra: icon: https://raw.githubusercontent.com/twitter/twemoji/master/assets/svg/1f1f7-1f1fa.svg analytics: feedback: - title: Was this page helpful? + title: !ENV [ANALYTICS_FEEDBACK_TITLE, "Was this page helpful?"] ratings: - icon: material/emoticon-happy-outline - name: This page was helpful + name: !ENV [ANALYTICS_FEEDBACK_POSITIVE_NAME, "This page was helpful"] data: 1 - note: >- - Thanks for your feedback! + note: + !ENV [ANALYTICS_FEEDBACK_POSITIVE_NOTE, "Thanks for your feedback!"] - icon: material/emoticon-sad-outline - name: This page could be improved + name: + !ENV [ + ANALYTICS_FEEDBACK_NEGATIVE_NAME, + "This page could be improved", + ] data: 0 - note: >- - Thanks for your feedback! If you want to let us know more, please leave a post on our - forum. + note: + !ENV [ANALYTICS_FEEDBACK_NEGATIVE_NOTE, "Thanks for your feedback!"] consent: title: !ENV [ANALYTICS_CONSENT_TITLE, "Contribute anonymous statistics"] description: @@ -167,6 +287,7 @@ theme: - navigation.expand - navigation.path - navigation.indexes + - content.action.edit - content.tabs.link - content.tooltips - search.highlight @@ -212,6 +333,10 @@ plugins: markdown_extensions: admonition: {} + material.extensions.preview: + sources: + exclude: + - tools.md pymdownx.details: {} pymdownx.superfences: custom_fences: diff --git a/config/mkdocs-offline.yml b/config/mkdocs-offline.yml index e970090f..a03f625f 100644 --- a/config/mkdocs-offline.yml +++ b/config/mkdocs-offline.yml @@ -22,11 +22,36 @@ INHERIT: mkdocs-common.yml # Disable any GitHub integrations repo_url: "" +edit_uri_template: "" extra: # Disable language switcher alternate: false offline: true + privacy_guides: + homepage: + hero: + buttons: + - name: + !ENV [ + HOMEPAGE_BUTTON_GET_STARTED_NAME, + "Start Your Privacy Journey", + ] + title: + !ENV [ + HOMEPAGE_BUTTON_GET_STARTED_TITLE, + "The first step of your privacy journey", + ] + link: basics/why-privacy-matters.html + class: md-button md-button--primary + - name: !ENV [HOMEPAGE_BUTTON_TOOLS_NAME, "Recommended Tools"] + title: + !ENV [ + HOMEPAGE_BUTTON_TOOLS_TITLE, + "Recommended privacy tools, services, and knowledge", + ] + link: tools.html + class: md-button theme: # OFFLINE ONLY: this logo needs to be set separately because the relative path is different diff --git a/config/mkdocs.es.yml b/config/mkdocs.es.yml index 0aa4b39e..df38b550 100644 --- a/config/mkdocs.es.yml +++ b/config/mkdocs.es.yml @@ -23,7 +23,7 @@ docs_dir: "../i18n/es" site_url: "https://www.privacyguides.org/es/" site_dir: "../site/es" -edit_uri: edit/main/i18n/es/ +edit_uri_template: https://github.com/privacyguides/i18n/blob/main/i18n/es/{path}?plain=1 theme: language: es diff --git a/config/mkdocs.fr.yml b/config/mkdocs.fr.yml index 5a247301..fa1d47db 100644 --- a/config/mkdocs.fr.yml +++ b/config/mkdocs.fr.yml @@ -23,7 +23,7 @@ docs_dir: "../i18n/fr" site_url: "https://www.privacyguides.org/fr/" site_dir: "../site/fr" -edit_uri: edit/main/i18n/fr/ +edit_uri_template: https://github.com/privacyguides/i18n/blob/main/i18n/fr/{path}?plain=1 theme: language: fr diff --git a/config/mkdocs.he.yml b/config/mkdocs.he.yml index cd3495f9..6dc11746 100644 --- a/config/mkdocs.he.yml +++ b/config/mkdocs.he.yml @@ -23,7 +23,7 @@ docs_dir: "../i18n/he" site_url: "https://www.privacyguides.org/he/" site_dir: "../site/he" -edit_uri: edit/main/i18n/he/ +edit_uri_template: https://github.com/privacyguides/i18n/blob/main/i18n/he/{path}?plain=1 extra_css: - assets/stylesheets/extra.css?v=3.2.0 diff --git a/config/mkdocs.it.yml b/config/mkdocs.it.yml index b4bee1f6..2aa94c2d 100644 --- a/config/mkdocs.it.yml +++ b/config/mkdocs.it.yml @@ -23,7 +23,7 @@ docs_dir: "../i18n/it" site_url: "https://www.privacyguides.org/it/" site_dir: "../site/it" -edit_uri: edit/main/i18n/it/ +edit_uri_template: https://github.com/privacyguides/i18n/blob/main/i18n/it/{path}?plain=1 theme: language: it diff --git a/config/mkdocs.nl.yml b/config/mkdocs.nl.yml index 98d06fb1..b3b17195 100644 --- a/config/mkdocs.nl.yml +++ b/config/mkdocs.nl.yml @@ -23,7 +23,7 @@ docs_dir: "../i18n/nl" site_url: "https://www.privacyguides.org/nl/" site_dir: "../site/nl" -edit_uri: edit/main/i18n/nl/ +edit_uri_template: https://github.com/privacyguides/i18n/blob/main/i18n/nl/{path}?plain=1 theme: language: nl diff --git a/config/mkdocs.ru.yml b/config/mkdocs.ru.yml index e1f4e9de..bf0f8d91 100644 --- a/config/mkdocs.ru.yml +++ b/config/mkdocs.ru.yml @@ -23,7 +23,7 @@ docs_dir: "../i18n/ru" site_url: "https://www.privacyguides.org/ru/" site_dir: "../site/ru" -edit_uri: edit/main/docs/ +edit_uri_template: https://github.com/privacyguides/i18n/blob/main/i18n/ru/{path}?plain=1 extra_css: - assets/stylesheets/extra.css?v=3.2.0 diff --git a/config/mkdocs.zh-Hant.yml b/config/mkdocs.zh-Hant.yml index b17635e8..018cb7c6 100644 --- a/config/mkdocs.zh-Hant.yml +++ b/config/mkdocs.zh-Hant.yml @@ -23,7 +23,7 @@ docs_dir: "../i18n/zh-Hant" site_url: "https://www.privacyguides.org/zh-Hant/" site_dir: "../site/zh-Hant" -edit_uri: edit/main/i18n/zh-Hant/ +edit_uri_template: https://github.com/privacyguides/i18n/blob/main/i18n/zh-Hant/{path}?plain=1 extra_css: - assets/stylesheets/extra.css?v=3.2.0 diff --git a/crowdin.yml b/crowdin.yml index c145d351..d99cd9ed 100644 --- a/crowdin.yml +++ b/crowdin.yml @@ -26,18 +26,8 @@ files: - source: "/docs/**/*.*" translation: "/i18n/%two_letters_code%/**/%file_name%.%file_extension%" skip_untranslated_files: false - - source: "/theme/overrides/*.en.html" - translation: "/theme/overrides/%file_name%.%two_letters_code%.html" - translation_replace: - "en.": "" - skip_untranslated_files: false - source: "/includes/*.en.*" translation: "/includes/%file_name%.%two_letters_code%.%file_extension%" translation_replace: "en.": "" skip_untranslated_files: false - - source: "/static/i18n/*.en.*" - translation: "/static/i18n/%file_name%.%two_letters_code%.%file_extension%" - translation_replace: - "en.": "" - skip_untranslated_files: false diff --git a/docs/about/criteria.md b/docs/about/criteria.md index ccb7e87d..d7a6af77 100644 --- a/docs/about/criteria.md +++ b/docs/about/criteria.md @@ -2,30 +2,19 @@ title: General Criteria --- -
-

Work in Progress

+Below are some general priorities we consider for all submissions to Privacy Guides. Each category will have additional requirements for inclusion. -The following page is a work in progress, and does not reflect the full criteria for our recommendations at this time. Past discussion on this topic: [#24](https://github.com/privacyguides/privacyguides.org/discussions/24) - -
- -Below are some things that must apply to all submissions to Privacy Guides. Each category will have additional requirements for inclusion. +- **Security**: Tools should follow security best-practices wherever applicable. +- **Source Availability**: Open-source projects are generally preferred over equivalent proprietary alternatives. +- **Cross-Platform Availability**: We typically prefer recommendations to be cross-platform, to avoid vendor lock-in. +- **Active Development**: The tools that we recommend should be actively developed, unmaintained projects will be removed in most cases. +- **Usability**: Tools should be accessible to most computer users, an overly technical background should not be required. +- **Documentation**: Tools should have clear and extensive documentation for use. ## Financial Disclosure We do not make money from recommending certain products, we do not use affiliate links, and we do not provide special consideration to project donors. -## General Guidelines - -We apply these priorities when considering new recommendations: - -- **Secure**: Tools should follow security best-practices wherever applicable. -- **Source Availability**: Open-source projects are generally preferred over equivalent proprietary alternatives. -- **Cross-Platform**: We typically prefer recommendations to be cross-platform, to avoid vendor lock-in. -- **Active Development**: The tools that we recommend should be actively developed, unmaintained projects will be removed in most cases. -- **Usability**: Tools should be accessible to most computer users, an overly technical background should not be required. -- **Documented**: Tools should have clear and extensive documentation for use. - ## Developer Self-Submissions We have these requirements in regard to developers which wish to submit their project or software for consideration. diff --git a/docs/index.md b/docs/index.md index 1194a5ff..02f7affe 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,6 +1,6 @@ --- meta_title: "Privacy Guides: Your Independent Privacy and Security Resource" -template: overrides/home.en.html +template: home.html social: cards_layout: home hide: @@ -56,17 +56,3 @@ Trying to protect all your data from everyone all the time is impractical, expen ==This process of identifying threats and defining countermeasures is called **threat modeling**==, and it forms the basis of every good security and privacy plan. [:material-book-outline: Learn More About Threat Modeling](basics/threat-modeling.md){ class="md-button md-button--primary" } - ---- - -## We need you! Here's how to get involved: - -[:simple-discourse:](https://discuss.privacyguides.net){ title="Join our Forum" } -[:simple-mastodon:](https://mastodon.neat.computer/@privacyguides){ rel=me title="Follow us on Mastodon" } -[:material-book-edit:](https://github.com/privacyguides/privacyguides.org){ title="Contribute to this website" } -[:material-translate:](https://matrix.to/#/#pg-i18n:aragon.sh){ title="Help translate this website" } -[:simple-matrix:](https://matrix.to/#/#privacyguides:matrix.org){ title="Chat with us on Matrix" } -[:material-information-outline:](about/index.md){ title="Learn more about us" } -[:material-hand-coin-outline:](about/donate.md){ title="Support the project" } - -It's important for a website like Privacy Guides to always stay up-to-date. We need our audience to keep an eye on software updates for the applications listed on our site and follow recent news about providers that we recommend. It's hard to keep up with the fast pace of the internet, but we try our best. If you spot an error, think a provider should not be listed, notice a qualified provider is missing, believe a browser plugin is no longer the best choice, or uncover any other issue, please let us know. diff --git a/includes/strings.en.env b/includes/strings.en.env index 2ac810d3..182f4b92 100644 --- a/includes/strings.en.env +++ b/includes/strings.en.env @@ -1,15 +1,25 @@ ANALYTICS_CONSENT_BODY="We collect anonymous statistics about your visits to help us improve the site. We do not track you across other websites. If you disable this, we will not know when you have visited our site. We will save a single cookie in your browser to remember your preference." ANALYTICS_CONSENT_TITLE="Contribute anonymous statistics" +ANALYTICS_FEEDBACK_NEGATIVE_NAME="This page could be improved" +ANALYTICS_FEEDBACK_NEGATIVE_NOTE='Thanks for your feedback! If you want to let us know more, please leave a post on our forum.' +ANALYTICS_FEEDBACK_POSITIVE_NAME="This page was helpful" +ANALYTICS_FEEDBACK_POSITIVE_NOTE="Thanks for your feedback!" +ANALYTICS_FEEDBACK_TITLE="Was this page helpful?" DESCRIPTION_HOMEPAGE="A socially motivated website which provides information about protecting your online data privacy and security." -DESCRIPTION_TRANSLATION="You're viewing the $LANG copy of Privacy Guides, translated by our fantastic language team on Crowdin. If you notice an error, or see any untranslated sections on this page, please consider helping out!" -DESCRIPTION_TRANSLATION_CTA="Visit Crowdin" -FOOTER_COPYRIGHT_AFFILIATE="We do not make money from recommending certain products, and we do not use affiliate links." -FOOTER_COPYRIGHT_ANALYTICS="Anonymous statistics preferences." -FOOTER_COPYRIGHT_DATE="2019 - 2024 Privacy Guides and contributors." -FOOTER_COPYRIGHT_ICON='' -FOOTER_COPYRIGHT_INTRO="Privacy Guides is a non-profit, socially motivated website that provides information for protecting your data security and privacy." -FOOTER_COPYRIGHT_LICENSE="Content license:" -FOOTER_COPYRIGHT="$FOOTER_COPYRIGHT_INTRO
$FOOTER_COPYRIGHT_AFFILIATE
© $FOOTER_COPYRIGHT_DATE $FOOTER_COPYRIGHT_ICON $FOOTER_COPYRIGHT_LICENSE CC BY-ND 4.0. $FOOTER_COPYRIGHT_ANALYTICS" +FOOTER_ANALYTICS="Anonymous statistics preferences." +FOOTER_COPYRIGHT_AUTHOR="Privacy Guides and contributors." +FOOTER_INTRO="Privacy Guides is a non-profit, socially motivated website that provides information for protecting your data security and privacy." +FOOTER_NOTE="We do not make money from recommending certain products, and we do not use affiliate links." +HOMEPAGE_CTA_DESCRIPTION="It's important for a website like Privacy Guides to always stay up-to-date. We need our audience to keep an eye on software updates for the applications listed on our site and follow recent news about providers that we recommend. It's hard to keep up with the fast pace of the internet, but we try our best. If you spot an error, think a provider should not be listed, notice a qualified provider is missing, believe a browser plugin is no longer the best choice, or uncover any other issue, please let us know." +HOMEPAGE_DESCRIPTION="A socially motivated website which provides information about protecting your online data privacy and security." +HOMEPAGE_RSS_CHANGELOG_LINK="https://discuss.privacyguides.net/c/site-development/changelog/9.rss" +HOMEPAGE_RSS_CHANGELOG_TITLE="Privacy Guides release changelog" +HOMEPAGE_RSS_BLOG_LINK="https://blog.privacyguides.org/feed_rss_created.xml" +HOMEPAGE_RSS_BLOG_TITLE="Privacy Guides blog feed" +HOMEPAGE_RSS_STORIES_LINK="https://share.privacyguides.org/web-stories/feed/" +HOMEPAGE_RSS_STORIES_TITLE="Privacy Guides web stories feed" +HOMEPAGE_RSS_FORUM_LINK="https://discuss.privacyguides.net/latest.rss" +HOMEPAGE_RSS_FORUM_TITLE="Latest Privacy Guides forum topics" LANG="English" LANG_ENGLISH="English" NAV_ABOUT="About" @@ -42,3 +52,5 @@ SOCIAL_TOR_SITE="Hidden service" THEME_AUTO="Switch to system theme" THEME_DARK="Switch to dark mode" THEME_LIGHT="Switch to light mode" +TRANSLATION_NOTICE="You're viewing the $LANG copy of Privacy Guides, translated by our fantastic language team on Crowdin. If you notice an error, or see any untranslated sections on this page, please consider helping out!" +TRANSLATION_NOTICE_CTA="Visit Crowdin" diff --git a/modules/mkdocs-material b/modules/mkdocs-material index b248bcf9..fa7ed016 160000 --- a/modules/mkdocs-material +++ b/modules/mkdocs-material @@ -1 +1 @@ -Subproject commit b248bcf9c332018019bc3efdc30befc895ca17d3 +Subproject commit fa7ed01691e0ca1c24791a3944361b6c59543360 diff --git a/theme/assets/stylesheets/extra.css b/theme/assets/stylesheets/extra.css index c4c7e463..3cf3f312 100644 --- a/theme/assets/stylesheets/extra.css +++ b/theme/assets/stylesheets/extra.css @@ -22,7 +22,7 @@ @font-face { font-family: 'Bagnard'; - src: url("/en/assets/brand/fonts/Bagnard/Bold.woff") format("woff"); + src: url("../brand/fonts/Bagnard/Bold.woff") format("woff"); font-display: swap; } diff --git a/theme/assets/stylesheets/home.css b/theme/assets/stylesheets/home.css index ef5c93d6..d253daeb 100644 --- a/theme/assets/stylesheets/home.css +++ b/theme/assets/stylesheets/home.css @@ -109,23 +109,28 @@ article.md-content__inner { article.md-content__inner > * { max-width: 38rem; } -article.md-content__inner > *:nth-child(n+7):nth-child(-n+12) { +/* article.md-content__inner > *:nth-child(n+8):nth-child(-n+12) { margin-left: auto; margin-right: 0; text-align: right; +} */ +#what-should-i-do, #what-should-i-do ~ :not( .mdx-cat ~ * ):not( .mdx-cta ) { + margin-left: auto; + margin-right: 0; + text-align: right; } article.md-content__inner > hr { margin: 3rem; } -article.md-content__inner > *:nth-child(n+13) { +.pg-end-right-align, .mdx-cta { margin-left: auto; margin-right: auto; text-align: center; } -article.md-content__inner > *:nth-child(n+13) a:has(.twemoji) { +.mdx-cta a:has(.twemoji) { display: inline-block; } -article.md-content__inner > *:nth-child(n+13) .twemoji { +.mdx-cta .twemoji { --md-icon-size: 1.8em; margin: 0.4rem; } diff --git a/theme/overrides/home.en.html b/theme/home.html similarity index 56% rename from theme/overrides/home.en.html rename to theme/home.html index c459d529..ea622206 100644 --- a/theme/overrides/home.en.html +++ b/theme/home.html @@ -21,12 +21,12 @@ IN THE SOFTWARE. #} --> {% extends "main.html" %} +{% set homepage = config.extra.privacy_guides.homepage %} {% block extrahead %} - - - - + {% for feed in homepage.rss %} + + {% endfor %} {{ super() }} {% endblock %} {% block tabs %} @@ -36,16 +36,30 @@
-

The guide to restoring your online privacy.

-

Massive organizations are monitoring your online activities. Privacy Guides is your central privacy and security resource to protect yourself online.

- - Start Your Privacy Journey - - - Recommended Tools - +

{{ homepage.hero.header }}

+

{{ homepage.hero.subheader }}

+ {% for button in homepage.hero.buttons %} + + {{ button.name }} + + {% endfor %}
{% endblock %} +{% block content %} + {{ page.content }} +
+
+ {% for cta in homepage.cta %} +

{{ cta.title }}

+ {% for icon in cta.links %} + + {% include ".icons/" ~ icon.icon ~ ".svg" %} + + {% endfor %} +

{{ cta.description }}

+ {% endfor %} +
+{% endblock %} diff --git a/theme/main.html b/theme/main.html index 70dcfb80..c29ae827 100644 --- a/theme/main.html +++ b/theme/main.html @@ -69,66 +69,17 @@ {{ config.site_name }} {% endif %} {% endblock %} -{% block announce %}{% if config.extra.offline %} - You're viewing an offline copy of Privacy Guides built on {{ build_date_utc }}. - - Visit privacyguides.org for the latest version. - -{% elif config.extra.context == "deploy-preview" %} - You're viewing an unreviewed preview of Privacy Guides built on {{ build_date_utc }}. - These previews are user-submitted and may not necessarily reflect the opinion of the site. - - Visit privacyguides.org for current advice. - -{% elif config.extra.context == "branch-deploy" %} - You're viewing a staging branch of Privacy Guides built on {{ build_date_utc }}. - The information on this page may be incomplete or otherwise not yet meet our editorial release standards. - - Visit privacyguides.org for current advice. - -{% else %}{% endif %}{% endblock %} + {% block extrahead %} - -{% if config.extra.context == "production" %} - -{% elif config.extra.deploy %} - -{% endif %} -{% if page and page.meta and page.meta.schema %} - -{% endif %}{% endblock %} -{% block content %} - {% if page and page.meta and page.meta.cover %} -
-

{{ page.title | d(config.site_name, true)}}

- -
- {% endif %} - {% if "material/tags" in config.plugins %} - {% include "partials/tags.html" %} - {% endif %} - {% include "partials/actions.html" %} - {% if "\x3ch1" not in page.content and not page.meta.cover %} -

{{ page.title | d(config.site_name, true)}}

- {% endif %} - {{ page.content }} - {% include "partials/source-file.html" %} - - {% include "partials/feedback.html" %} - - {% if config.theme.language == "en" %} -
-

Share this website and spread privacy knowledge

-

-

Copy this text to easily share Privacy Guides with your friends and family on any social network!

- {% elif config.extra.translation_notice %} -
-

{{ config.extra.translation_notice }} {{ config.extra.translation_notice_cta }}

-

You're viewing the {{ config.extra.translation_notice_language }} copy of Privacy Guides, translated by our fantastic language team on Crowdin. If you notice an error, or see any untranslated sections on this page, please consider helping out!

-
- {% endif %} - - {% include "partials/comments.html" %} + + {% if config.extra.context == "production" %} + + {% elif config.extra.deploy %} + + {% endif %} + {% if page and page.meta and page.meta.schema %} + + {% endif %} {% endblock %} diff --git a/theme/partials/content.html b/theme/partials/content.html new file mode 100644 index 00000000..47c86da2 --- /dev/null +++ b/theme/partials/content.html @@ -0,0 +1,64 @@ + + +{% if page and page.meta and page.meta.cover %} +
+ +
+

{{ page.title | d(config.site_name, true)}}

+{% endif %} + + +{% include "partials/tags.html" %} + + +{% include "partials/actions.html" %} + +{% if "\x3ch1" not in page.content and not page.meta.cover %} +

{{ page.title | d(config.site_name, true)}}

+{% endif %} + + +{{ page.content }} + + +{% include "partials/source-file.html" %} + + +{% include "partials/feedback.html" %} + +{% set translation_notice = config.extra.privacy_guides.translation_notice %} +{% if config.theme.language == "fr" %} +
+

Share this website and spread privacy knowledge

+

+

Copy this text to easily share Privacy Guides with your friends and family on any social network!

+{% elif translation_notice %} +
+

{{ translation_notice.notice }} {{ translation_notice.cta }}

+

You're viewing the {{ translation_notice.language }} copy of Privacy Guides, translated by our fantastic language team on Crowdin. If you notice an error, or see any untranslated sections on this page, please consider helping out!

+
+{% endif %} + + +{% include "partials/comments.html" %} diff --git a/theme/partials/footer.html b/theme/partials/copyright.html similarity index 61% rename from theme/partials/footer.html rename to theme/partials/copyright.html index 600105c5..4ca43a5f 100644 --- a/theme/partials/footer.html +++ b/theme/partials/copyright.html @@ -1,6 +1,5 @@ - - + {% endif %} + diff --git a/theme/partials/header.html b/theme/partials/header.html index 2ce3b759..b4516c3b 100644 --- a/theme/partials/header.html +++ b/theme/partials/header.html @@ -21,6 +21,35 @@ IN THE SOFTWARE. --> +{% macro notice() %}{% if config.extra.offline %} + You're viewing an offline copy of Privacy Guides built on {{ build_date_utc.strftime('%B %d, %Y at %I:%M%p') }}. + + Visit privacyguides.org for the latest version. + +{% elif config.extra.context == "deploy-preview" %} + You're viewing an unreviewed preview of Privacy Guides built on {{ build_date_utc.strftime('%B %d, %Y at %I:%M%p') }}. + These previews are user-submitted and may not necessarily reflect the opinion of the site. + + Visit privacyguides.org for current advice. + +{% elif config.extra.context == "branch-deploy" %} + You're viewing a staging branch of Privacy Guides built on {{ build_date_utc.strftime('%B %d, %Y at %I:%M%p') }}. + The information on this page may be incomplete or otherwise not yet meet our editorial release standards. + + Visit privacyguides.org for current advice. + +{% else %}{% endif %}{% endmacro %} + +{% if notice() %} +
+ +
+{% endif %} + {% set class = "md-header" %} {% if "navigation.tabs.sticky" in features %}