diff --git a/_py/collect-icons.py b/_py/collect-icons.py index f8b6e89..00e333b 100644 --- a/_py/collect-icons.py +++ b/_py/collect-icons.py @@ -1,20 +1,27 @@ -import os, glob, shutil +import os, json, glob +from urllib.request import urlopen -# update these to match your system -fontraFolder = '/Users/gferreira/hipertipo/tools/fontra' -fontraDocsIconsFolder = '/Users/gferreira/hipertipo/tools/fontra-docs/images/icons' +# directory contents in json form +iconsFontraURL = 'https://api.github.com/repos/googlefonts/fontra/contents/src/fontra/client/images' +iconsTablerURL = 'https://api.github.com/repos/googlefonts/fontra/contents/src/fontra/client/tabler-icons' -iconsFolder = os.path.join(fontraFolder, 'src/fontra/client/images') -tablerFolder = os.path.join(fontraFolder, 'src/fontra/client/tabler-icons') +# target docs folder for icon images +baseFolder = os.path.dirname(os.getcwd()) +iconsFolder = os.path.join(baseFolder, 'images', 'icons') -assert os.path.exists(iconsFolder) -assert os.path.exists(tablerFolder) +# clear existing files +# for f in glob.glob(f'{iconsFolder}/*.*'): +# os.remove(f) -iconsFontra = glob.glob(f'{iconsFolder}/*.svg') -iconsTabler = glob.glob(f'{tablerFolder}/*.svg') - -iconsAll = iconsFontra + iconsTabler - -for svgPath in iconsAll: - dstPath = os.path.join(fontraDocsIconsFolder, os.path.split(svgPath)[-1]) - shutil.copyfile(svgPath, dstPath) +# copy icons from repository to icons folder +for URL in [iconsFontraURL, iconsTablerURL]: + response = urlopen(URL) + data = json.loads(response.read()) + for item in data: + dstPath = os.path.join(iconsFolder, item['name']) + # download from URL + with urlopen(item['download_url']) as file: + content = file.read() + # save to file + with open(dstPath, 'wb') as download: + download.write(content) diff --git a/images/icons/LICENSE.txt b/images/icons/LICENSE.txt new file mode 100644 index 0000000..fe62055 --- /dev/null +++ b/images/icons/LICENSE.txt @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020-2023 Paweł Kuna + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/images/icons/README.md b/images/icons/README.md new file mode 100644 index 0000000..c80353a --- /dev/null +++ b/images/icons/README.md @@ -0,0 +1,4 @@ +# Tabler icons + +- https://tabler-icons.io/ +- https://github.com/tabler/tabler-icons diff --git a/images/icons/antenna-bars-1.svg b/images/icons/antenna-bars-1.svg new file mode 100644 index 0000000..169db5a --- /dev/null +++ b/images/icons/antenna-bars-1.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/images/icons/antenna-bars-2.svg b/images/icons/antenna-bars-2.svg new file mode 100644 index 0000000..0a004c9 --- /dev/null +++ b/images/icons/antenna-bars-2.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/images/icons/antenna-bars-3.svg b/images/icons/antenna-bars-3.svg new file mode 100644 index 0000000..864a45d --- /dev/null +++ b/images/icons/antenna-bars-3.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/images/icons/antenna-bars-4.svg b/images/icons/antenna-bars-4.svg new file mode 100644 index 0000000..1c719fd --- /dev/null +++ b/images/icons/antenna-bars-4.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/images/icons/antenna-bars-5.svg b/images/icons/antenna-bars-5.svg new file mode 100644 index 0000000..edbc473 --- /dev/null +++ b/images/icons/antenna-bars-5.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/images/icons/bug.svg b/images/icons/bug.svg new file mode 100644 index 0000000..5383b91 --- /dev/null +++ b/images/icons/bug.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + +