simple-icons 8.10.0 → 8.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -283,6 +283,11 @@
283
283
  "hex": "000000",
284
284
  "source": "https://commons.wikimedia.org/wiki/File:AEW_Logo_(simplified).svg"
285
285
  },
286
+ {
287
+ "title": "AFFiNE",
288
+ "hex": "1E96EB",
289
+ "source": "https://affine.pro/"
290
+ },
286
291
  {
287
292
  "title": "Affinity",
288
293
  "hex": "222324",
@@ -1012,6 +1017,11 @@
1012
1017
  "source": "https://www.arangodb.com",
1013
1018
  "guidelines": "https://www.arangodb.com/resources/logos"
1014
1019
  },
1020
+ {
1021
+ "title": "ArcGIS",
1022
+ "hex": "2C7AC3",
1023
+ "source": "https://www.esri.com/en-us/arcgis/products/arcgis-pro/overview"
1024
+ },
1015
1025
  {
1016
1026
  "title": "Arch Linux",
1017
1027
  "hex": "1793D1",
@@ -1927,6 +1937,11 @@
1927
1937
  "hex": "FF9C42",
1928
1938
  "source": "https://www.carthrottle.com/"
1929
1939
  },
1940
+ {
1941
+ "title": "Cardano",
1942
+ "hex": "0133AD",
1943
+ "source": "https://cardano.org/brand-assets/"
1944
+ },
1930
1945
  {
1931
1946
  "title": "Carrefour",
1932
1947
  "hex": "004E9F",
@@ -2270,6 +2285,11 @@
2270
2285
  "hex": "00B1E7",
2271
2286
  "source": "https://www.co-operative.coop/media/assets"
2272
2287
  },
2288
+ {
2289
+ "title": "Coca Cola",
2290
+ "hex": "D00013",
2291
+ "source": "https://upload.wikimedia.org/wikipedia/commons/c/ce/Coca-Cola_logo.svg"
2292
+ },
2273
2293
  {
2274
2294
  "title": "Cockpit",
2275
2295
  "hex": "0066CC",
@@ -2522,6 +2542,12 @@
2522
2542
  "hex": "575757",
2523
2543
  "source": "https://cncf-branding.netlify.app/projects/containerd/"
2524
2544
  },
2545
+ {
2546
+ "title": "Contao",
2547
+ "hex": "F47C00",
2548
+ "source": "https://contao.org",
2549
+ "guidelines": "https://contao.org/en/media"
2550
+ },
2525
2551
  {
2526
2552
  "title": "Contentful",
2527
2553
  "hex": "2478CC",
@@ -3593,6 +3619,11 @@
3593
3619
  "hex": "E7352C",
3594
3620
  "source": "https://www.espressif.com/"
3595
3621
  },
3622
+ {
3623
+ "title": "ESRI",
3624
+ "hex": "000000",
3625
+ "source": "https://www.esri.com/en-us/arcgis/products/arcgis-pro/overview"
3626
+ },
3596
3627
  {
3597
3628
  "title": "etcd",
3598
3629
  "hex": "419EDA",
@@ -3961,7 +3992,7 @@
3961
3992
  },
3962
3993
  {
3963
3994
  "title": "Flathub",
3964
- "hex": "4A86CF",
3995
+ "hex": "000000",
3965
3996
  "source": "https://flathub.org/"
3966
3997
  },
3967
3998
  {
@@ -7321,6 +7352,11 @@
7321
7352
  "hex": "47A248",
7322
7353
  "source": "https://www.mongodb.com/pressroom"
7323
7354
  },
7355
+ {
7356
+ "title": "Mongoose",
7357
+ "hex": "880000",
7358
+ "source": "https://github.com/Automattic/mongoose/blob/7971a4dbd55888f0b005e65b06024109af8352f7/docs/images/mongoose.svg"
7359
+ },
7324
7360
  {
7325
7361
  "title": "Monica",
7326
7362
  "hex": "2C2B29",
@@ -9985,6 +10021,11 @@
9985
10021
  "hex": "E9573F",
9986
10022
  "source": "https://rubygems.org/pages/about"
9987
10023
  },
10024
+ {
10025
+ "title": "Ruff",
10026
+ "hex": "FCC21B",
10027
+ "source": "https://github.com/charliermarsh/ruff/blob/e04ef423344837c916e75a7b09ea674711a104e0/assets/badge/v1.json"
10028
+ },
9988
10029
  {
9989
10030
  "title": "Runkeeper",
9990
10031
  "hex": "001E62",
@@ -11191,8 +11232,8 @@
11191
11232
  },
11192
11233
  {
11193
11234
  "title": "Supabase",
11194
- "hex": "3ECF8E",
11195
- "source": "https://github.com/supabase/supabase/blob/2a983c3290148d17cfce9e34c0a39102b22fdf78/web/static/img/showcase-logo/supabase-logo.svg"
11235
+ "hex": "3FCF8E",
11236
+ "source": "https://github.com/supabase/supabase/blob/4031a7549f5d46da7bc79c01d56be4177dc7c114/packages/common/assets/images/supabase-logo-wordmark--light.svg"
11196
11237
  },
11197
11238
  {
11198
11239
  "title": "Super User",
@@ -0,0 +1 @@
1
+ <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>AFFiNE</title><path d="M11.9948 1.3766c-.5962.0055-1.1835.3117-1.496.8633C9.3218 4.294 1.088 18.5025.1273 20.2343c-.3903.9368.1537 2.0479 1.131 2.3204.4061.1076.8337.0533 1.203.0664 5.3733.005 14.2336-.0065 19.6234 0 .1562.0029.4285-.0014.6583-.0664.709-.1974 1.2348-.8705 1.2558-1.6055.008-.2436-.0369-.4874-.125-.713-.1113-.2414-.1953-.3671-.287-.5312l-.545-.9434L14.321 3.656l-.5449-.9434-.2734-.4726c-.1236-.2046-.2846-.39-.4805-.5352-.3071-.2255-.6696-.3314-1.0274-.3281Zm.006 1.3008c.1467.0004.2936.0735.375.2148.1655.2769.6486 1.1385.8164 1.416 1.8312 3.1736 4.1148 7.1296 6.3047 10.9221L10.3581 5.0895c.329-.5697 1.1259-1.952 1.2676-2.1973v-.002c.0814-.1421.2287-.2133.375-.2128zm-2.213 3.4668 7.5548 7.8459c-.0189-.0085-.0377-.017-.0567-.0254L9.2858 8.5232c.0712-.622.1933-1.2419.3496-1.8555zM8.3698 8.535 4.2213 21.3203c-.5326-.0002-1.2787.0002-1.7598 0-.1099-.0007-.6827.0033-.7579-.004-.2804-.005-.478-.3305-.371-.5878.6398-1.1206 4.1786-7.2439 7.0372-12.1936Zm.8437 1.205 5.5743 3.4318-5.504-2.2774A9.1593 9.1593 0 0 1 9.2135 9.74zm-.8594 1.377-.6972 9.465c-.7194.3027-1.4733.537-2.2403.7247zm1.1524.9083 3.5528 1.2246h-3.086a7.1294 7.1294 0 0 1-.33-.7734c-.0508-.1501-.0956-.3-.1368-.4512zm-.5527.8516c.0161.0437.0318.0873.0488.1308l.834 6.338c-.3456.2621-.7092.496-1.088.707zm1.8652 1.168h2.3653c.18 0 .2928.1935.2031.3496l-1.1836 2.0488a.233.233 0 0 1-.4043 0h-.002l-1.1816-2.0488c-.0904-.1561.0224-.3496.203-.3496zm3.6778.0156a7.161 7.161 0 0 1 .832.0996 7.847 7.847 0 0 1 .463.1094l-2.8419 2.4668zm2.381.58a9.1839 9.1839 0 0 1 1.0566.5274l-5.879 3.1739zm-6.8889.2579 1.543 2.6719a7.1154 7.1154 0 0 1-.5039.67 7.8136 7.8136 0 0 1-.3223.3456zm8.965.9453c.2738.2038.5382.4222.797.6485l.9863 1.0234L10.028 20.168c.0195-.0135.0392-.0274.0586-.041zm2.4473 2.6856c.3799.6581.848 1.4656 1.1934 2.0645.0608.0998.0519.1041.0742.1367.0948.2291-.0458.5041-.2793.5742-.0303.0015-.0577.0146-.0918.0118-.0057.005-.129.0039-.2129.0039-3.7797-.001-8.9869-.0003-13.7893 0z"/></svg>
@@ -0,0 +1 @@
1
+ <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>ArcGIS</title><path d="M12 0a.84923.84923 0 0 0-.33766.07031l-8.5183 3.69444C2.1458 4.19776 1.4997 5.1816 1.4997 6.2697v13.2521l10.16264 4.40783c.21517.09333.46015.09407.67532.00073l8.5183-3.6959c.99824-.43301 1.64434-1.41685 1.64434-2.50495V4.47814L12.33766.06958C12.23007.02291 12.11516-.00005 12 0Zm0 4.83705c4.16294 0 7.53757 3.3746 7.53757 7.53757S16.163 19.91218 12 19.91218c-4.163 0-7.53757-3.37462-7.53757-7.53756S7.837 4.83705 12 4.83705zm-.3501 1.38871c-.89685-.02267-2.32742.2409-3.74645 1.6143.34958.55454.64544.97782.49 1.41801-.23127.65503-.5139.51378-1.07083.99466-.39567.34169.2067 1.01292-.31275 1.30595-.51945.29306-1.21315.6636-.94925 1.17557.2639.51196 1.4691.83013 1.95929 1.07522.49018.2451.92812.70605.6072 1.2371-.31403.51948-.53713 1.13083-.60134 1.60917 1.0549.94423 2.44706 1.51909 3.97423 1.51909 3.2928 0 5.81772-2.71048 5.96208-6.00017.04062-.92531-.93924-.93972-1.53447-.93972 0 0 .34061.92356.01831 1.43632-.3223.51278-.84968.76166-.83498 1.37699.01464.61533-.93743 1.5967-1.2598 1.9483-.32223.35163-.9228.74718-1.12796-.0586-.2051-.80579-.12596-1.47799.1084-2.04938.23442-.57136-.2174-.74707-.92068-.76174-.7032-.01463-1.0798-.10795-1.18656-1.19315-.08787-.89369 1.2429-1.84356 1.81426-1.84356.33406 0 1.45485.21963 1.50737-.34058.08056-.8593-.8204-1.04164-1.03934-1.60185C13.2877 7.58747 14.98596 6.60707 12 6.24993c-.10475-.01253-.22199-.02093-.3501-.02417z"/></svg>
@@ -0,0 +1 @@
1
+ <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Cardano</title><path d="M6.5765 11.92c-.0488.8906.6316 1.653 1.5219 1.7056h.0934c.8928-.0006 1.6161-.725 1.6155-1.6178-.0006-.8928-.725-1.6161-1.6178-1.6155-.8578.0006-1.5658.6711-1.613 1.5277Zm-6.025-.416c-.288-.0161-.5345.2042-.5507.4922-.0161.288.2042.5345.4922.5507.2878.0161.5343-.204.5506-.4918.0167-.2876-.2029-.5343-.4905-.5509H.5514Zm5.9226-8.9645c.257-.1309.3593-.4453.2284-.7024-.1309-.257-.4453-.3593-.7024-.2284-.2558.1302-.3585.4424-.2301.6991.13.2582.4448.3622.703.2322.0003-.0002.0007-.0003.001-.0005Zm1.6397 2.8589c.398-.2006.558-.6859.3573-1.0839-.2006-.398-.6859-.558-1.0839-.3573-.3978.2006-.5579.6856-.3575 1.0835.2007.398.686.5581 1.0842.3578ZM2.597 7.3645c.3072.2013.7194.1154.9206-.1918.2013-.3072.1154-.7194-.1918-.9206-.3072-.2013-.7194-.1154-.9206.1918 0 .0001-.0001.0002-.0002.0003-.201.3072-.1151.7191.192.9203Zm.9824 3.8515c-.4453-.0254-.827.3149-.8524.7603s.3149.827.7603.8524c.4453.0254.827-.3149.8524-.7603v-.0006c.0251-.4451-.3152-.8264-.7603-.8518Zm-.8915 5.4221c-.328.1652-.46.565-.2948.893.1652.328.565.46.893.2948.328-.1652.46-.565.2948-.893l-.0002-.0004c-.1645-.3276-.5633-.4598-.8909-.2954-.0006.0003-.0013.0006-.0019.001Zm3.136-7.0931c.4386.2876 1.0274.1653 1.315-.2734.2876-.4386.1653-1.0274-.2734-1.315-.4386-.2876-1.0273-.1653-1.3149.2732-.2878.4381-.166 1.0266.2721 1.3144.0004.0003.0008.0005.0012.0008Zm9.9501-4.2106c.3729.2447.8737.1408 1.1184-.2321.2447-.3729.1408-.8737-.2321-1.1184-.3729-.2447-.8737-.1408-1.1184.2321 0 .0001-.0001.0002-.0002.0003-.2447.3726-.141.8729.2316 1.1176.0003.0002.0005.0003.0008.0005Zm1.6563-2.8499c.2413.1579.565.0904.723-.151s.0904-.565-.151-.723c-.241-.1577-.5642-.0906-.7224.1501-.1584.241-.0915.5648.1495.7233l.0009.0006Zm-1.5296 7.8938c-.8911-.0507-1.6546.6305-1.7053 1.5216-.0507.8911.6305 1.6546 1.5216 1.7053h.0928c.8925 0 1.616-.7235 1.616-1.616 0-.8572-.6693-1.5652-1.5251-1.6134v.0026ZM8.645 9.433c.2737.5459.8331.8896 1.4438.887.8925-.0002 1.6159-.7238 1.6157-1.6163 0-.2526-.0593-.5018-.1731-.7273-.4017-.7971-1.3735-1.1176-2.1706-.7158-.7971.4017-1.1176 1.3735-.7158 2.1706v.0019Zm12.6669-2.0704c.3273-.1666.4575-.567.2909-.8943-.1666-.3273-.567-.4575-.8943-.2909-.3259.1659-.4567.5639-.2927.8908.1652.3284.5653.4607.8937.2956.0008-.0004.0015-.0008.0023-.0012Zm-4.096.5146c-.4683.2362-.6565.8074-.4203 1.2757.2362.4683.8074.6565 1.2757.4203.468-.2361.6563-.8066.4207-1.2749-.2364-.4683-.8074-.6568-1.2762-.4211Zm-5.2768-5.6365c.3667.0205.6806-.2601.7011-.6267s-.2601-.6806-.6267-.7011c-.3655-.0205-.6789.2584-.7009.6238-.0225.3662.2562.6813.6224.7038.0014 0 .0028.0002.0042.0002Zm-.0077 4.1837c.5237.0288.9717-.3724 1.0006-.8961.0288-.5237-.3723-.9717-.8961-1.0006-.5231-.0288-.9707.3714-1.0005.8944-.0298.5237.3706.9724.8943 1.0021h.0017Zm-5.1475 9.6992c.4685-.2359.657-.807.421-1.2755-.2359-.4685-.807-.657-1.2755-.421-.4684.2359-.6569.8069-.4211 1.2754.2362.4682.807.6567 1.2755.4211Zm5.76-8.313c-.4881.7459-.2792 1.7463.4667 2.2344s1.7463.2792 2.2344-.4667.2792-1.7463-.4667-2.2344c-.262-.1715-.5683-.263-.8815-.2635-.5452-.0001-1.0538.2744-1.353.7302Zm2.8109 6.7571c-.4015-.7975-1.3735-1.1185-2.171-.7169-.7975.4015-1.1185 1.3735-.7169 2.171.4015.7975 1.3735 1.1185 2.171.7169.0005-.0002.0009-.0005.0014-.0007.7947-.3952 1.1186-1.3598.7235-2.1545-.0026-.0053-.0053-.0105-.0079-.0158Zm2.8211-.112c-.4386-.2876-1.0274-.1653-1.315.2734-.2876.4386-.1653 1.0274.2734 1.315.4386.2876 1.0273.1653 1.3149-.2732.2877-.4386.1654-1.0274-.2731-1.3151h-.0002Zm3.0963-2.4282c.0254-.4453-.3149-.827-.7603-.8524-.4453-.0254-.827.3149-.8524.7603-.0254.4453.3149.827.7603.8524h.0006c.4451.0251.8264-.3152.8518-.7603Zm2.2349-.5741c-.288-.0161-.5345.2042-.5507.4922s.2042.5345.4922.5507c.2878.0161.5343-.204.5506-.4918.016-.288-.2042-.5345-.4922-.551Zm-2.1043 5.1821c-.3073-.2011-.7194-.115-.9205.1923-.2011.3073-.115.7194.1923.9205.3071.201.719.1151.9202-.1918.2013-.3071.1156-.7193-.1916-.9207l-.0004-.0003ZM6.5695 21.5161c-.2411-.1584-.5649-.0913-.7232.1497-.1584.2411-.0913.5649.1497.7232.2411.1584.5649.0913.7232-.1497.158-.2411.091-.5646-.1498-.7232Zm10.9555-.055c-.257.1309-.3593.4453-.2284.7024.1309.257.4453.3593.7023.2284.2558-.1302.3585-.4424.2301-.6991-.1291-.2579-.4428-.3624-.7007-.2333-.0011.0005-.0022.0011-.0033.0016Zm-6.0691-5.2717c.4892-.7465.2806-1.7482-.4659-2.2374-.7465-.4892-1.7482-.2806-2.2374.4659s-.2806 1.7482.4659 2.2374c.2628.1722.5702.2641.8844.2644.5458.0022 1.0553-.2728 1.353-.7302Zm-3.2301 2.4768c-.3729-.2447-.8737-.1408-1.1184.2321-.2447.3729-.1408.8737.2321 1.1184s.8737.1408 1.1184-.2321c0-.0001.0001-.0002.0002-.0003.2445-.3729.1405-.8734-.2323-1.1181Zm3.7664 3.0931c-.3667-.0209-.6808.2594-.7017.6261s.2594.6808.6261.7017c.3658.0208.6795-.2581.7016-.6238.0222-.3666-.2571-.6817-.6236-.7039-.0008 0-.0015 0-.0023-.0001Zm.007-4.1837c-.5237-.0288-.9717.3724-1.0005.8961-.0288.5237.3724.9717.8961 1.0005.5228.0288.9703-.371 1.0004-.8938.0298-.524-.3709-.973-.8949-1.0028h-.0011Zm3.8861 1.0259c-.3976.2022-.556.6884-.3539 1.086.2022.3976.6884.556 1.086.3539.3961-.2014.5551-.685.3558-1.0821-.2-.3987-.6854-.5598-1.0841-.3597-.0013.0007-.0026.0013-.0039.002Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Coca Cola</title><path d="M16.813 8.814s-.45.18-.973.756c-.524.577-.828 1.225-.603 1.397.087.066.287.079.65-.25a2.864 2.864 0 0 0 .766-1.063c.234-.57.16-.833.16-.84m2.863 1.038c-.581-.299-1.006-.664-1.448-.89-.422-.216-.695-.307-1.036-.261a1.057 1.057 0 0 0-.14.035s.176.6-.523 1.607c-.708 1.022-1.35 1.015-1.533.734-.191-.296.056-.9.468-1.437.432-.562 1.19-1.028 1.19-1.028s-.241-.148-.835.19c-.58.326-1.577 1.107-2.502 2.423-.926 1.316-1.11 2.04-1.242 2.61-.132.57-.012 1.18.62 1.18s1.368-.964 1.576-1.299c.386-.624.637-1.581.112-1.45-.259.065-.468.351-.6.627a2.683 2.683 0 0 0-.19.554 2.185 2.185 0 0 0-.513.298 3.788 3.788 0 0 0-.486.43s.002-.456.365-1.194c.364-.737 1.03-1.074 1.408-1.106.34-.027.783.262.408 1.327-.375 1.065-1.483 2.36-2.646 2.376-1.073.015-1.776-1.355-.282-3.745C13.501 9.19 15.441 8.38 16.07 8.29c.63-.09.835.187.835.187a2.709 2.709 0 0 1 1.197-.197c.77.052 1.364.596 2.15.979-.205.195-.4.4-.575.592m3.454-.89c-.533.342-1.27.652-1.979.586-.179.185-.371.4-.563.634 1.228.243 2.305-.519 2.877-1.167A3.82 3.82 0 0 0 24 8.248a4.792 4.792 0 0 1-.869.714m-1.636 3.462a.268.268 0 0 0 .023-.051.124.124 0 0 0-.113-.108c-.117-.005-.277.017-.695.48a6.303 6.303 0 0 0-.89 1.263c-.24.438-.337.764-.2.848a.199.199 0 0 0 .146.015c.093-.022.199-.11.36-.295.075-.088.158-.212.258-.349.277-.376.973-1.563 1.111-1.803m-4.349.504c.07-.182.159-.541-.026-.682-.199-.15-.705.201-.708.561-.003.369.357.535.443.559.05.013.066.01.09-.029a3.284 3.284 0 0 0 .201-.409m-.383.67a1.531 1.531 0 0 1-.348-.222 1.116 1.116 0 0 1-.26-.317c-.008-.012-.015-.003-.023.008-.007.01-.039.039-.309.434-.27.396-.684 1.216-.31 1.355.241.09.641-.331.86-.61a5.21 5.21 0 0 0 .402-.614c.012-.023 0-.029-.012-.034m4.258.947c-.102.163-.218.476.117.281.41-.236.994-1.123.994-1.123h.265a8.88 8.88 0 0 1-.803 1.054c-.415.46-.922.879-1.28.837-.416-.048-.286-.596-.286-.596s-.596.635-1.01.59c-.557-.062-.387-.751-.387-.751s-.63.774-1.06.75c-.673-.04-.504-.859-.316-1.436.1-.308.193-.55.193-.55s-.067.017-.21.038c-.076.011-.212.019-.212.019s-.28.495-.505.792c-.224.297-1.178 1.322-1.74 1.117-.518-.19-.346-.984-.044-1.615.44-.92 1.68-2.243 2.396-2.068.741.18.017 1.532.017 1.532s0 .005.007.009c.015.005.054.01.143-.008a1.605 1.605 0 0 0 .271-.08s.746-1.561 1.569-2.583c.823-1.02 2.465-2.78 3.11-2.354.156.105.086.465-.126.902a2.891 2.891 0 0 1-.291.078c.142-.258.236-.475.264-.627.097-.528-1.135.585-2.015 1.78a16.594 16.594 0 0 0-1.409 2.28 3.86 3.86 0 0 0 .454-.324 13.002 13.002 0 0 0 1.118-1.043 12.169 12.169 0 0 0 .951-1.098 2.58 2.58 0 0 0 .28-.029 12.054 12.054 0 0 1-1.05 1.24c-.35.355-.73.737-1.061 1.015a8.84 8.84 0 0 1-.931.691s-.77 1.553-.351 1.652c.246.06.732-.69.732-.69s.635-.967 1.017-1.404c.522-.593.97-.936 1.42-.942.261-.005.415.273.415.273l.123-.19h.757s-1.414 2.398-1.527 2.579m2.111-5.58c-.533.341-1.27.651-1.979.585-.18.185-.371.4-.564.634 1.229.243 2.305-.518 2.878-1.167A3.82 3.82 0 0 0 24 8.248a4.792 4.792 0 0 1-.869.714m-10.63 1.177h-.72l-.407.658h.72zm-3.41 2.277c.307-.42 1.152-1.891 1.152-1.891a.124.124 0 0 0-.112-.108c-.117-.006-.312.034-.7.519-.387.485-.688.87-.907 1.272-.24.438-.346.747-.207.831a.205.205 0 0 0 .144.015c.09-.022.208-.113.369-.298a5.57 5.57 0 0 0 .262-.34m-3.863-1.99c-.199-.15-.705.201-.708.56-.003.369.456.482.515.484a.09.09 0 0 0 .05-.01.06.06 0 0 0 .024-.027 3.483 3.483 0 0 0 .146-.325c.07-.183.158-.541-.027-.682m-.3 1.27a1.678 1.678 0 0 1-.39-.18.812.812 0 0 1-.279-.309c-.007-.012-.015-.003-.022.008-.007.01-.047.061-.318.458-.27.398-.672 1.21-.296 1.35.24.09.644-.334.864-.612a7.24 7.24 0 0 0 .455-.681c.009-.024 0-.03-.014-.034m5.88.244h.263s-1.321 1.912-2.068 1.823c-.416-.049-.293-.563-.293-.563s-.585.685-1.123.546c-.487-.125-.172-.936-.172-.936-.056.022-1.111 1.211-1.853.926-.776-.3-.373-1.296-.225-1.595.125-.253.263-.499.263-.499s-.119.034-.195.051l-.186.04s-.367.596-.591.894c-.225.297-1.178 1.32-1.74 1.117-.562-.204-.423-.99-.107-1.615.512-1.012 1.726-2.256 2.458-2.068.739.189.127 1.388.127 1.388s.147.019.5-.222c.507-.346 1.176-1.277 1.901-1.167.342.051.66.4.225 1.064-.139.213-.372.403-.55.215-.111-.118-.014-.33.103-.477a.457.457 0 0 1 .39-.179s.12-.273-.185-.269c-.247.005-.871.58-1.223 1.16-.323.533-.813 1.441-.322 1.639.451.182 1.309-.836 1.706-1.37.397-.533 1.302-1.742 2.062-1.79.261-.017.417.221.417.221l.088-.139h.759s-1.43 2.387-1.542 2.567c-.088.141-.204.46.117.281.322-.178.996-1.043.996-1.043m-.414 3.824a3.144 3.144 0 0 0-1.908-.557 1.17 1.17 0 0 0-.93.504c-.29-.505-.862-.815-1.747-.808-1.43.016-2.849.676-3.972.675-1.077 0-1.863-.677-1.837-1.88.047-2.109 1.83-4.009 3.16-4.864.767-.49 1.409-.637 1.828-.59.306.034.674.388.442.909-.341.761-.812.699-.795.335.01-.237.168-.386.286-.469a.582.582 0 0 1 .278-.068c.068-.057.117-.474-.429-.337-.546.137-1.21.676-1.84 1.371-.63.696-1.61 2.011-1.852 3.392-.113.64-.039 1.808 1.48 1.795 1.287-.01 3.185-.859 4.929-.841a3.34 3.34 0 0 1 1.725.472c.451.278.992.684 1.184.961"/></svg>
@@ -0,0 +1 @@
1
+ <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Contao</title><path d="M2.133 14.233c.672 3.125 1.23 6.1 3.189 8.242H1.588A1.602 1.602 0 0 1 0 20.897V3.109a1.6 1.6 0 0 1 1.588-1.584h2.698a10.317 10.317 0 0 0-1.718 2.028c-2.135 3.271-1.257 6.838-.435 10.68ZM22.411 1.525h-4.234c1.002 1.002 1.847 2.3 2.486 3.913l-6.437 1.358c-.706-1.351-1.779-2.476-3.877-2.034-1.156.245-1.923.894-2.264 1.604-.418.876-.624 1.858.377 6.525.999 4.667 1.588 5.481 2.327 6.112.601.511 1.57.794 2.727.55 2.1-.442 2.617-1.902 2.708-3.422l6.437-1.359c.153 3.329-.879 5.911-2.699 7.696h2.449A1.602 1.602 0 0 0 24 20.891V3.109a1.602 1.602 0 0 0-1.589-1.584Z"/></svg>
package/icons/esri.svg ADDED
@@ -0,0 +1 @@
1
+ <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>ESRI</title><path d="M11.63907.00273c-1.58143.03682-3.04264.4449-4.5349 1.06205-2.07095.87293-4.70641 2.88139-6.3117 6.6711-.37592 1.05578-1.8789 6.09024.79149 10.4125 2.16748 3.50692 4.95741 5.1768 8.37118 5.65348 3.407.47497 5.25533.06419 7.4101-.89245 5.03853-2.2369 8.88662-10.6343 5.03765-16.72016-1.51892-2.81012-5.49826-5.27459-9.85522-5.0841v.00203c-1.0304-.032-1.63648.10168-2.24524.22008-.18288-.04736-.52568.0027-.54516.39978 0 .21344.06847.37913.20393.4765.13463.09665 1.26407.93091 2.0938 1.81316-.39793.04416-.83039.11644-1.27404.20796-.4953-1.07017-2.08625-.09707-3.14374-.0545-.12362.0064-.24269.02388-.36546.03028-.116-.89409-.19886-1.82146-.17768-2.4734C8.46399.95065 11.11512.37795 12.91514.35002l.31498-.00807c.26416-.00253.28524-.21242.03635-.24634-.55902-.0764-1.10025-.10515-1.6274-.09288zm-.19181 1.53048c3.91137-.0172 7.3504 1.64094 8.92442 3.56977-.55965-.2912-1.76629-.7065-2.25735-.81572-.26503-.27008-.59885-.49013-.8884-.6764-.22862-.1456-.51429-.0915-.39575.16355.04487.0992.21919.26655.36142.4341-.83482-.2304-3.05425-.4063-4.11089-.30892-.69003-.77552-1.47719-1.71613-2.42292-2.34013.26453-.01646.5287-.0251.78947-.02625zm-4.85594.42603c-.01343.33869.07398 1.32823.18576 2.28158-.4826.04832-.96112.1076-1.43356.17768a10.2312 10.2312 0 0 0-2.63694 3.46074c-.09908-.89239-.15119-1.63544-.11307-2.09179 1.11167-1.55617 2.62028-3.07211 3.99781-3.82821Zm8.41763 2.64906c.48821.01708.98834.052 1.46587.10095-.85852.3072-1.23689 1.06143-1.65768 1.66172-.0086.0128-.02414.0228-.03432.03433a19.52175 19.52175 0 0 0-1.16503-1.7869c.4263-.02577.90295-.02717 1.39116-.0101zm-2.37446.12114a13.32749 13.32749 0 0 1 1.48 2.15236c-.68157.33021-1.59055.58218-1.96055 1.1105-.15324.22017-.1908.51855-.19585.84197a19.97303 19.97303 0 0 0-3.28305 1.0883c-.38355-1.12775-.71901-2.252-.951-3.25277 1.09728-1.04734 2.38035-1.21677 2.90952-1.6274a15.03184 15.03184 0 0 1 2.00093-.31296zm6.88917.634c.45127.17088 1.02885.40728 1.48606.6562.34713.43687 1.34084 1.41794 1.8717 4.16541.47752 2.47396-.05031 4.35392-.212 4.89834l-.16355.64005c-.116.43603-.50231 1.46609-.70467 1.8818.07706-.56134.14464-2.01894.12519-2.31187.13545.0416.4242-.12255.47246-.28671.04827-.16512-.4765-.41997-.4765-.41997a17.5617 17.5617 0 0 0-.14538-2.28562c.12023-.19489.24217-.38338.36748-.55526a10.22951 10.22951 0 0 0-.1575-1.3326c.10583.03456.20231.06196.27259.06259.23962.0032.23974-.1612.16354-.25239-.04912-.0592-.27844-.20134-.54515-.35536a10.17702 10.17702 0 0 0-2.35427-4.50461ZM1.86865 7.00497s.0517.8962.0949 1.55067c0 0-.66164.75067-.99946 1.34674.13463-1.22175.4228-1.85091.90456-2.89741Zm5.35263.2322c.19812 1.00074.4353 1.8284.7511 2.97817-1.18702.52323-3.28675 1.81816-4.21385 2.5158-.16765-.42503-.34209-1.02781-.49872-1.6476.21082-.62396.64191-1.06046 1.24982-1.1206 1.03971-.104 1.92998-1.65176 2.6632-2.6652.016-.0224.03322-.03914.04845-.06058zm-5.15274 2.2412.01413.11105c-.19472.7366-.31465 1.50207-.3392 2.2937.31328.3302.68222.87924 1.09031 1.44567-.26246.19488-.76785.54326-.88638.62794-.34714.24736-.34214.6363-.0949.85812.13632.12192.41646.07068.5189-.01013.30311-.24129.5554-.43255.90254-.65016.12701.33277.2466.63252.36344.9187-.14816.15904-.25318.3699-.28873.6764-.1143.99228.82833 1.76997 1.62336 1.99688.02976.0096.04997.01378.07874.0202.04233.06431.08029.1245.12519.18979-.41234.32006-.69452.64618-.8884.8985-.11179.1456-.23689.36469-.13529.40786.10413.04224.45398.0005.60977-.02826.39455-.07616.69856-.51352.97119-.67438.32766.45213.86082 1.03223 1.41539 1.59105.02463.10176.04676.20986.0747.29883.10583.34118.24894.67966.41998 1.01156.39877.18625.8147.33987 1.23972.4745a7.06464 7.06464 0 0 0-.52698.60979c-3.42563-1.07271-5.96304-3.96041-6.86898-6.9881a14.79562 14.79562 0 0 1-.55121-5.47984c.04742.0096.15677.06126.32103.01616.1143-.07872.52297-.3635.81168-.61583zm9.89157.18171c-.0066.28193-.03747.5502-.15345.76524-.16595.30976-.09014 1.20842.11307 1.50221.63923.9305 1.70123.41263 2.49964.74707.36661.15328.60998.40762.81572.71072-1.67133.10496-3.31108.49595-4.8317 1.19531C9.6219 12.92116 8.9476 10.7504 8.9476 10.7504v-.0021c.94828-.44874 1.9457-.81904 3.0125-1.0883ZM8.20257 11.0775c.42333 1.2624 1.02859 2.94991 1.44769 3.85244-.05927.0288-.12278.06248-.18374.09287a34.54682 34.54682 0 0 0-2.75607-.66023c-.84244-.1728-.87296-.1278-1.82123.14739-.13545.03904-.26553.075-.3917.11307a30.62419 30.62419 0 0 1-.37555-1.01763c1.21582-.93642 2.4406-1.72272 4.0806-2.5279Zm13.13626 1.9767c.05165.46314.08702.91557.10903 1.32453a7.83681 7.83681 0 0 0-.6562-.24835c.16594-.34458.3499-.71211.54717-1.07618zm-5.61108 1.17512c.16087.27936.34.55903.58554.80966.64093.6553-.372 1.59527-.08077 3.44862h-.0021c-.29971.032-.59767.06936-.86014.10903-.65194.1024-1.49203.32254-2.2735.6138-.44874-.71373-1.6503-2.44857-2.25736-3.75754 1.2209-.6003 2.92566-1.10421 4.88824-1.22357zm4.75498.55525c.35391.09984.68651.20722.97522.32507.03641.52157.03498 2.31123-.06663 3.18412-.1016.21409-.3635.58273-.53708.75717-.26416-.10657-.66046-.22014-1.07618-.31902.06605-.07968.13875-.15432.20393-.23624.22692-1.5206-.28641-2.0062.35536-3.39814zm-9.66947 2.3785c.48175.8111 1.05687 1.69252 1.50221 2.38254-.69342.33613-1.49939.85598-2.26139 1.4275.05248-.87802.07056-1.7466.24835-2.2089.24807-.64768.43971-1.12786.51083-1.60114zm8.54483 2.05342c.46313.05345.92549.13087 1.20742.20191-.62653.79249-1.49164 1.45313-2.41282 2.02718.01952-.34461.0334-.77986.04442-1.18117.41232-.32004.802-.66862 1.16098-1.04792zm-2.95192.01013c.09229.2896.21333.59656.37757.92677.16086.32343.34768.55909.5492.72082.07195-.0448.13884-.09663.20998-.14336-.0051.35559-.0153.71607-.03635 1.06407-.24215.16-1.41046.68857-1.86767.8359a19.83756 19.83756 0 0 1-2.06553-2.70962c.71459-.29985 1.81425-.56757 2.8328-.69458zm-3.62832 1.00148c.34036.5334 1.46049 2.1227 1.91006 2.63492-.81534.14208-1.95564.24903-2.85904.20999 0 0-1.35718-.89952-1.70008-1.24579.67987-.56474 1.78037-1.23506 2.64905-1.59912zM9.62198 22.2815c.39624.2624.81913.56327 1.15695.75716-.5207-.0592-1.13118-.07328-1.585-.22816.13124-.17183.26465-.38337.42805-.529Z"/></svg>
package/icons/flathub.svg CHANGED
@@ -1 +1 @@
1
- <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Flathub</title><path d="M12 2.604l-.43.283L0 10.459v6.752l6.393 4.184L12 17.725l5.607 3.671L24 17.211v-6.752L12 2.604zm0 .828l5.434 3.556-2.717 1.778L12 10.545l-2.717-1.78-2.717-1.777L12 3.432zM6.39 7.104l5.434 3.556-5.408 3.54-5.434-3.557 5.409-3.54zm11.22 0l5.431 3.554-5.434 3.557-5.433-3.555 5.435-3.556zM.925 10.867l5.379 3.52a.123.08 0 00.027.013v5.647l-5.406-3.54v-5.64zm11.213.115l5.408 3.54v5.664l-5.408-3.54v-5.664z"/></svg>
1
+ <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Flathub</title><path d="M6.068 0a6 6 0 0 0-6 6 6 6 0 0 0 6 6 6 6 0 0 0 5.998-6 6 6 0 0 0-5.998-6Zm9.15.08a1.656 1.656 0 0 0-1.654 1.656v8.15a1.656 1.656 0 0 0 2.483 1.434l7.058-4.074a1.656 1.656 0 0 0 0-2.869l-1.044-.604-6.014-3.47a1.656 1.656 0 0 0-.828-.223Zm3.575 13.135a.815.815 0 0 0-.816.818v2.453h-2.454a.817.817 0 1 0 0 1.635h2.454v2.453a.817.817 0 1 0 1.635 0v-2.453h2.452a.817.817 0 1 0 0-1.635h-2.453v-2.453a.817.817 0 0 0-.818-.818zM2.865 13.5a2.794 2.794 0 0 0-2.799 2.8v4.9c0 1.55 1.248 2.8 2.8 2.8h4.9c1.55 0 2.8-1.25 2.8-2.8v-4.9c0-1.55-1.25-2.8-2.8-2.8Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Mongoose</title><path d="M14.014 7.37a9.162 9.162 0 0 0-.808.025c-.218.017-.434.072-.65.11.229.118.456.213.68.315.225.103.436.232.629.387-.253-.097-.499-.208-.752-.298a8.046 8.046 0 0 0-1.624-.421c-.273-.037-.546-.073-.819.005-.276.078-.354.18-.38.458-.04.46.098.887.281 1.298a4.432 4.432 0 0 0 1.185 1.573c.391.335.825.598 1.305.787.136.053.274.103.411.155l-.009.032c-.263-.072-.532-.126-.787-.22a4.14 4.14 0 0 1-1.222-.73 4.16 4.16 0 0 1-1.007-1.22 3.43 3.43 0 0 1-.43-1.609l-.012.005C4.891 7.488.402 11.595.035 11.94l-.034.014c-.002.005 0 .01.003.016L0 11.974l.005-.002c.004.008.01.016.013.024.087-.019.173-.042.26-.054l.069-.01c.324-.115.655-.205.997-.253.484-.069.985-.159 1.48-.156.468.002.943.074 1.402.153.129.022.255.052.38.087.335.075.65.21.933.391l.06.03c.403.19.758.47 1.038.811.052.057.141.116.187.178.096.114.142.236.303.363v-1.737h2.01l.939 1.733.942-1.733h2.07v3.357l.343-.226s.375-1 2.116-1.14l1.996-.064c-.308-.637-.307-.637-.159-.83.147-.19 1.28-.314 1.48-.433l2.912-.588c.007-.022.015.012.03.007.072-.022.147-.037.25-.061l.66-.16c.042-.025.093-.034.14-.05.308-.107.577-.245.726-.573.145-.319.339-.616.41-.967.022-.111.003-.208-.078-.288-.097-.096-.222-.138-.35-.171-.421-.173-.84-.35-1.264-.513-.261-.101-.529-.185-.795-.27a30.574 30.574 0 0 0-.794-.243c-.244-.072-.49-.138-.736-.205-.24-.066-.48-.133-.72-.192-.282-.07-.565-.13-.847-.195-.215-.05-.428-.102-.644-.146-.234-.047-.47-.089-.706-.13-.302-.053-.602-.112-.905-.153-.366-.05-.734-.082-1.101-.125-.345-.04-.691-.065-1.038-.07zm-3.303.767a.154.154 0 0 1 .056.007c.42.13.83.277 1.216.491.365.203.695.45.979.756.012.013.02.028.036.05l-.645-.293-.021.026.37.551-.022.022a1.986 1.986 0 0 0-.665-.322l-.02.02.633.74-.416-.136-.017.02c.163.27.376.505.58.775-.354-.2-.665-.42-.956-.669a4.488 4.488 0 0 1-1.01-1.185c-.107-.19-.201-.385-.222-.606a.468.468 0 0 1 .011-.15.123.123 0 0 1 .113-.097zm5.424.668c.154.002.311-.006.464.015.278.037.555.092.832.14.158.027.317.052.474.086.297.064.594.133.89.2.196.046.392.092.587.14l-.329.161c-.365.027-.731.055-1.097.057a3.268 3.268 0 0 1-.675-.074c-.28-.058-.514-.196-.652-.466-.02-.04-.09-.063-.14-.078-.18-.054-.362-.1-.544-.168.063-.005.126-.014.19-.013zm3.223 2.635.005.02c-.08.022-.16.042-.239.067-.455.14-.916.266-1.363.428-.28.101-.544.25-.81.388-.233.119-.315.322-.287.575.019.162.04.324.055.488a1.786 1.786 0 0 1-.288-.701c-.035-.169.058-.273.18-.365.238-.178.496-.318.777-.41.35-.117.702-.233 1.059-.325.251-.065.513-.09.77-.133.048-.008.094-.021.141-.032zM9.141 13.955v2.676h1.869l.064-.066v-2.61l-.97 1.495z"/></svg>
@@ -1 +1 @@
1
- <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Polkadot</title><path d="M12 0C6.985 0 2.886 4.075 2.886 9.114a9.55 9.55 0 0 0 .482 2.966c.217.651.94 1.013 1.615.796.651-.217 1.013-.94.796-1.616a6.42 6.42 0 0 1-.362-2.338c.097-3.4 2.846-6.197 6.245-6.366 3.786-.193 6.92 2.821 6.92 6.558a6.579 6.579 0 0 1-6.196 6.559s-1.278.072-1.905.169c-.314.048-.555.096-.723.12-.073.024-.145-.048-.121-.12l.217-1.061 1.182-5.45a1.264 1.264 0 0 0-.965-1.494 1.264 1.264 0 0 0-1.495.964s-2.845 13.262-2.87 13.406c-.144.676.29 1.35.965 1.495.675.145 1.35-.289 1.495-.964.024-.145.41-1.905.41-1.905a3.203 3.203 0 0 1 2.7-2.508c.29-.048 1.423-.12 1.423-.12 4.702-.362 8.415-4.292 8.415-9.09C21.114 4.074 17.015 0 12 0Zm.651 20.978a1.518 1.518 0 0 0-1.808 1.181c-.17.82.337 1.64 1.181 1.809.82.168 1.64-.338 1.809-1.182.168-.844-.338-1.64-1.182-1.808z"/></svg>
1
+ <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Polkadot</title><path d="M12,0c2.39,0,4.328,1.127,4.328,2.517S14.39,5.034,12,5.034,7.672,3.907,7.672,2.517,9.61,0,12,0Zm0,18.966c2.39,0,4.328,1.127,4.328,2.517S14.39,24,12,24s-4.328-1.127-4.328-2.517S9.61,18.966,12,18.966ZM1.606,6C2.8,3.93,4.747,2.816,5.952,3.511s1.212,2.937.017,5.007S2.828,11.7,1.624,11.007.411,8.07,1.606,6Zm16.427,9.483c1.2-2.07,3.139-3.184,4.343-2.489s1.211,2.936.016,5.006-3.14,3.185-4.344,2.49S16.837,17.553,18.033,15.483ZM1.624,12.993c1.205-.7,3.15.419,4.346,2.489s1.187,4.311-.018,5.007S2.8,20.07,1.607,18,.42,13.689,1.624,12.993ZM18.049,3.512c1.2-.695,3.149.419,4.344,2.489s1.188,4.311-.016,5.007-3.148-.42-4.343-2.49S16.846,4.207,18.049,3.512Z"/></svg>
package/icons/ruff.svg ADDED
@@ -0,0 +1 @@
1
+ <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Ruff</title><path d="m21.683 11.593-8.51-2.14 8.34-9.066a.23.23 0 0 0-.29-.352L2.252 11.62a.227.227 0 0 0-.108.226.23.23 0 0 0 .164.19l8.497 2.497-8.35 9.08a.228.228 0 0 0-.007.303.227.227 0 0 0 .3.047l19-11.953a.228.228 0 0 0 .105-.23.225.225 0 0 0-.172-.187z"/></svg>
@@ -1 +1 @@
1
- <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Supabase</title><path d="M21.362 9.354H12V.396a.396.396 0 0 0-.716-.233L2.203 12.424l-.401.562a1.04 1.04 0 0 0 .836 1.659H12v8.959a.396.396 0 0 0 .716.233l9.081-12.261.401-.562a1.04 1.04 0 0 0-.836-1.66z"/></svg>
1
+ <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Supabase</title><path d="M11.9 1.036c-.015-.986-1.26-1.41-1.874-.637L.764 12.05C-.33 13.427.65 15.455 2.409 15.455h9.579l.113 7.51c.014.985 1.259 1.408 1.873.636l9.262-11.653c1.093-1.375.113-3.403-1.645-3.403h-9.642z"/></svg>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "simple-icons",
3
- "version": "8.10.0",
3
+ "version": "8.12.0",
4
4
  "description": "SVG icons for popular brands https://simpleicons.org",
5
5
  "homepage": "https://simpleicons.org",
6
6
  "keywords": [
@@ -25,7 +25,25 @@
25
25
  },
26
26
  "./icons/*": [
27
27
  "./icons/*"
28
- ]
28
+ ],
29
+ "./sdk": {
30
+ "import": {
31
+ "types": "./sdk.d.ts",
32
+ "default": "./sdk.mjs"
33
+ },
34
+ "module": {
35
+ "types": "./sdk.d.ts",
36
+ "default": "./sdk.mjs"
37
+ },
38
+ "require": {
39
+ "types": "./sdk.d.ts",
40
+ "default": "./sdk.js"
41
+ },
42
+ "default": {
43
+ "types": "./sdk.d.ts",
44
+ "default": "./sdk.js"
45
+ }
46
+ }
29
47
  },
30
48
  "sideEffects": false,
31
49
  "repository": {
@@ -44,27 +62,27 @@
44
62
  "devDependencies": {
45
63
  "chalk": "5.2.0",
46
64
  "editorconfig-checker": "5.0.1",
47
- "esbuild": "0.17.4",
65
+ "esbuild": "0.17.18",
48
66
  "fake-diff": "1.0.0",
49
67
  "get-relative-luminance": "1.0.0",
50
68
  "husky": "8.0.3",
51
- "inquirer": "9.1.4",
69
+ "inquirer": "9.2.0",
52
70
  "is-ci": "3.0.1",
53
71
  "jsonschema": "1.4.1",
54
72
  "mocha": "10.2.0",
55
73
  "named-html-entities-json": "1.0.0",
56
74
  "npm-run-all": "4.1.5",
57
- "prettier": "2.8.3",
58
- "rimraf": "4.1.1",
59
- "svg-path-bbox": "1.2.3",
75
+ "prettier": "2.8.8",
76
+ "rimraf": "5.0.0",
77
+ "svg-path-bbox": "1.2.4",
60
78
  "svg-path-segments": "1.0.0",
61
- "svglint": "2.2.0",
79
+ "svglint": "2.3.1",
62
80
  "svgo": "3.0.2",
63
81
  "svgpath": "2.6.0"
64
82
  },
65
83
  "scripts": {
66
84
  "build": "node scripts/build/package.js",
67
- "clean": "rimraf index.js index.mjs index.d.ts",
85
+ "clean": "rimraf index.js index.mjs index.d.ts sdk.js",
68
86
  "format": "prettier --write .",
69
87
  "lint": "run-s our-lint jslint jsonlint svglint wslint",
70
88
  "our-lint": "node scripts/lint/ourlint.js",
package/sdk.d.ts ADDED
@@ -0,0 +1,79 @@
1
+ /**
2
+ * @fileoverview
3
+ * Types for Simple Icons SDK.
4
+ */
5
+
6
+ import type { License } from './types.d.ts';
7
+
8
+ /**
9
+ * The data for a third-party extension.
10
+ *
11
+ * Includes the module and author of the extension,
12
+ * both including a name and URL.
13
+ *
14
+ * @see {@link https://github.com/simple-icons/simple-icons#third-party-extensions Third-Party Extensions}
15
+ */
16
+ export type ThirdPartyExtension = {
17
+ module: ThirdPartyExtensionSubject;
18
+ author: ThirdPartyExtensionSubject;
19
+ };
20
+
21
+ type ThirdPartyExtensionSubject = {
22
+ name: string;
23
+ url: string;
24
+ };
25
+
26
+ /**
27
+ * The aliases for a Simple Icon.
28
+ *
29
+ * Corresponds to the `aliases` property in the *_data/simple-icons.json* file.
30
+ *
31
+ * @see {@link https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md#aliases Aliases}
32
+ */
33
+ export type Aliases = {
34
+ aka?: string[];
35
+ dup?: DuplicateAlias[];
36
+ loc?: { [key: string]: string };
37
+ };
38
+
39
+ type DuplicateAlias = {
40
+ title: string;
41
+ hex?: string;
42
+ guidelines?: string;
43
+ };
44
+
45
+ /**
46
+ * The data for a Simple Icon.
47
+ *
48
+ * Corresponds to the data stored for each icon in the *_data/simple-icons.json* file.
49
+ *
50
+ * @see {@link https://github.com/mondeja/simple-icons/blob/utils-entrypoint/CONTRIBUTING.md#7-update-the-json-data-for-simpleiconsorg Update the JSON Data for SimpleIcons.org}
51
+ */
52
+ export type IconData = {
53
+ title: string;
54
+ hex: string;
55
+ source: string;
56
+ slug?: string;
57
+ guidelines?: string;
58
+ license?: License;
59
+ aliases?: Aliases;
60
+ };
61
+
62
+ export const URL_REGEX: RegExp;
63
+
64
+ export function getDirnameFromImportMeta(importMetaUrl: string): string;
65
+ export function getIconSlug(icon: IconData): string;
66
+ export function svgToPath(svg: string): string;
67
+ export function titleToSlug(title: string): string;
68
+ export function slugToVariableName(slug: string): string;
69
+ export function titleToHtmlFriendly(brandTitle: string): string;
70
+ export function htmlFriendlyToTitle(htmlFriendlyTitle: string): string;
71
+ export function getIconDataPath(rootDir?: string): string;
72
+ export function getIconsDataString(rootDir?: string): string;
73
+ export function getIconsData(rootDir?: string): IconData[];
74
+ export function normalizeNewlines(text: string): string;
75
+ export function normalizeColor(text: string): string;
76
+ export function getThirdPartyExtensions(
77
+ readmePath?: string,
78
+ ): Promise<ThirdPartyExtension[]>;
79
+ export const collator: Intl.Collator;
package/sdk.mjs ADDED
@@ -0,0 +1,222 @@
1
+ /**
2
+ * @fileoverview
3
+ * Simple Icons SDK.
4
+ */
5
+
6
+ import path from 'node:path';
7
+ import fs from 'node:fs/promises';
8
+ import { fileURLToPath } from 'node:url';
9
+
10
+ /**
11
+ * @typedef {import("./sdk").ThirdPartyExtension} ThirdPartyExtension
12
+ * @typedef {import("./sdk").IconData} IconData
13
+ */
14
+
15
+ const TITLE_TO_SLUG_REPLACEMENTS = {
16
+ '+': 'plus',
17
+ '.': 'dot',
18
+ '&': 'and',
19
+ đ: 'd',
20
+ ħ: 'h',
21
+ ı: 'i',
22
+ ĸ: 'k',
23
+ ŀ: 'l',
24
+ ł: 'l',
25
+ ß: 'ss',
26
+ ŧ: 't',
27
+ };
28
+
29
+ const TITLE_TO_SLUG_CHARS_REGEX = RegExp(
30
+ `[${Object.keys(TITLE_TO_SLUG_REPLACEMENTS).join('')}]`,
31
+ 'g',
32
+ );
33
+
34
+ const TITLE_TO_SLUG_RANGE_REGEX = /[^a-z0-9]/g;
35
+
36
+ /**
37
+ * Regex to validate HTTPs URLs.
38
+ */
39
+ export const URL_REGEX = /^https:\/\/[^\s]+$/;
40
+
41
+ /**
42
+ * Get the directory name where this file is located from `import.meta.url`,
43
+ * equivalent to the `__dirname` global variable in CommonJS.
44
+ * @param {String} importMetaUrl import.meta.url
45
+ * @returns {String} Directory name in which this file is located
46
+ */
47
+ export const getDirnameFromImportMeta = (importMetaUrl) =>
48
+ path.dirname(fileURLToPath(importMetaUrl));
49
+
50
+ /**
51
+ * Get the slug/filename for an icon.
52
+ * @param {IconData} icon The icon data as it appears in *_data/simple-icons.json*
53
+ * @returns {String} The slug/filename for the icon
54
+ */
55
+ export const getIconSlug = (icon) => icon.slug || titleToSlug(icon.title);
56
+
57
+ /**
58
+ * Extract the path from an icon SVG content.
59
+ * @param {String} svg The icon SVG content
60
+ * @returns {String} The path from the icon SVG content
61
+ **/
62
+ export const svgToPath = (svg) => svg.match(/<path\s+d="([^"]*)/)[1];
63
+
64
+ /**
65
+ * Converts a brand title into a slug/filename.
66
+ * @param {String} title The title to convert
67
+ * @returns {String} The slug/filename for the title
68
+ */
69
+ export const titleToSlug = (title) =>
70
+ title
71
+ .toLowerCase()
72
+ .replace(
73
+ TITLE_TO_SLUG_CHARS_REGEX,
74
+ (char) => TITLE_TO_SLUG_REPLACEMENTS[char],
75
+ )
76
+ .normalize('NFD')
77
+ .replace(TITLE_TO_SLUG_RANGE_REGEX, '');
78
+
79
+ /**
80
+ * Converts a slug into a variable name that can be exported.
81
+ * @param {String} slug The slug to convert
82
+ * @returns {String} The variable name for the slug
83
+ */
84
+ export const slugToVariableName = (slug) => {
85
+ const slugFirstLetter = slug[0].toUpperCase();
86
+ const slugRest = slug.slice(1);
87
+ return `si${slugFirstLetter}${slugRest}`;
88
+ };
89
+
90
+ /**
91
+ * Converts a brand title as defined in *_data/simple-icons.json* into a brand
92
+ * title in HTML/SVG friendly format.
93
+ * @param {String} brandTitle The title to convert
94
+ * @returns {String} The brand title in HTML/SVG friendly format
95
+ */
96
+ export const titleToHtmlFriendly = (brandTitle) =>
97
+ brandTitle
98
+ .replace(/&/g, '&amp;')
99
+ .replace(/"/g, '&quot;')
100
+ .replace(/</g, '&lt;')
101
+ .replace(/>/g, '&gt;')
102
+ .replace(/./g, (char) => {
103
+ const charCode = char.charCodeAt(0);
104
+ return charCode > 127 ? `&#${charCode};` : char;
105
+ });
106
+
107
+ /**
108
+ * Converts a brand title in HTML/SVG friendly format into a brand title (as
109
+ * it is seen in *_data/simple-icons.json*)
110
+ * @param {String} htmlFriendlyTitle The title to convert
111
+ * @returns {String} The brand title in HTML/SVG friendly format
112
+ */
113
+ export const htmlFriendlyToTitle = (htmlFriendlyTitle) =>
114
+ htmlFriendlyTitle
115
+ .replace(/&#([0-9]+);/g, (_, num) => String.fromCharCode(parseInt(num)))
116
+ .replace(
117
+ /&(quot|amp|lt|gt);/g,
118
+ (_, ref) => ({ quot: '"', amp: '&', lt: '<', gt: '>' }[ref]),
119
+ );
120
+
121
+ /**
122
+ * Get path of *_data/simpe-icons.json*.
123
+ * @param {String|undefined} rootDir Path to the root directory of the project
124
+ * @returns {String} Path of *_data/simple-icons.json*
125
+ */
126
+ export const getIconDataPath = (
127
+ rootDir = getDirnameFromImportMeta(import.meta.url),
128
+ ) => {
129
+ return path.resolve(rootDir, '_data', 'simple-icons.json');
130
+ };
131
+
132
+ /**
133
+ * Get contents of *_data/simple-icons.json*.
134
+ * @param {String|undefined} rootDir Path to the root directory of the project
135
+ * @returns {String} Content of *_data/simple-icons.json*
136
+ */
137
+ export const getIconsDataString = (
138
+ rootDir = getDirnameFromImportMeta(import.meta.url),
139
+ ) => {
140
+ return fs.readFile(getIconDataPath(rootDir), 'utf8');
141
+ };
142
+
143
+ /**
144
+ * Get icons data as object from *_data/simple-icons.json*.
145
+ * @param {String|undefined} rootDir Path to the root directory of the project
146
+ * @returns {IconData[]} Icons data as array from *_data/simple-icons.json*
147
+ */
148
+ export const getIconsData = async (
149
+ rootDir = getDirnameFromImportMeta(import.meta.url),
150
+ ) => {
151
+ const fileContents = await getIconsDataString(rootDir);
152
+ return JSON.parse(fileContents).icons;
153
+ };
154
+
155
+ /**
156
+ * Replace Windows newline characters by Unix ones.
157
+ * @param {String} text The text to replace
158
+ * @returns {String} The text with Windows newline characters replaced by Unix ones
159
+ */
160
+ export const normalizeNewlines = (text) => {
161
+ return text.replace(/\r\n/g, '\n');
162
+ };
163
+
164
+ /**
165
+ * Convert non-6-digit hex color to 6-digit with the character `#` stripped.
166
+ * @param {String} text The color text
167
+ * @returns {String} The color text in 6-digit hex format
168
+ */
169
+ export const normalizeColor = (text) => {
170
+ let color = text.replace('#', '').toUpperCase();
171
+ if (color.length < 6) {
172
+ color = [...color.slice(0, 3)].map((x) => x.repeat(2)).join('');
173
+ } else if (color.length > 6) {
174
+ color = color.slice(0, 6);
175
+ }
176
+ return color;
177
+ };
178
+
179
+ /**
180
+ * Get information about third party extensions from the README table.
181
+ * @param {String|undefined} readmePath Path to the README file
182
+ * @returns {Promise<ThirdPartyExtension[]>} Information about third party extensions
183
+ */
184
+ export const getThirdPartyExtensions = async (
185
+ readmePath = path.join(
186
+ getDirnameFromImportMeta(import.meta.url),
187
+ 'README.md',
188
+ ),
189
+ ) =>
190
+ normalizeNewlines(await fs.readFile(readmePath, 'utf8'))
191
+ .split('## Third-Party Extensions\n\n')[1]
192
+ .split('\n\n')[0]
193
+ .split('\n')
194
+ .slice(2)
195
+ .map((line) => {
196
+ let [module, author] = line.split(' | ');
197
+
198
+ // README shipped with package has not Github theme image links
199
+ module = module.split(
200
+ module.includes('<picture>') ? '<picture>' : '<img src="',
201
+ )[0];
202
+ return {
203
+ module: {
204
+ name: /\[(.+)\]/.exec(module)[1],
205
+ url: /\((.+)\)/.exec(module)[1],
206
+ },
207
+ author: {
208
+ name: /\[(.+)\]/.exec(author)[1],
209
+ url: /\((.+)\)/.exec(author)[1],
210
+ },
211
+ };
212
+ });
213
+
214
+ /**
215
+ * `Intl.Collator` object ready to be used for icon titles sorting.
216
+ * @type {Intl.Collator}
217
+ * @see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Collator Intl.Collator}
218
+ **/
219
+ export const collator = new Intl.Collator('en', {
220
+ usage: 'search',
221
+ caseFirst: 'upper',
222
+ });
package/types.d.ts CHANGED
@@ -1,3 +1,23 @@
1
+ /**
2
+ * The license for a Simple Icon.
3
+ *
4
+ * @see {@link https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md#optional-data Optional Data}
5
+ */
6
+ export type License = SPDXLicense | CustomLicense;
7
+
8
+ type SPDXLicense = {
9
+ type: string;
10
+ url?: string;
11
+ };
12
+
13
+ type CustomLicense = {
14
+ type: 'custom';
15
+ url: string;
16
+ };
17
+
18
+ /**
19
+ * The data for a Simple Icon as is exported by the npm package.
20
+ */
1
21
  export interface SimpleIcon {
2
22
  title: string;
3
23
  slug: string;
@@ -5,11 +25,6 @@ export interface SimpleIcon {
5
25
  path: string;
6
26
  source: string;
7
27
  hex: string;
8
- guidelines?: string | undefined;
9
- license?:
10
- | {
11
- type: string;
12
- url: string;
13
- }
14
- | undefined;
28
+ guidelines: string | undefined;
29
+ license: License | undefined;
15
30
  }