webfont-awesome-pro 1.2.7 → 1.2.8

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.
Files changed (92) hide show
  1. package/README.md +2 -2
  2. package/dist/css/allstyles.css +30 -25
  3. package/dist/css/brands.css +2 -2
  4. package/dist/css/chisel-regular.css +1 -1
  5. package/dist/css/duotone-light.css +1 -1
  6. package/dist/css/duotone-regular.css +1 -1
  7. package/dist/css/duotone-thin.css +1 -1
  8. package/dist/css/duotone.css +1 -1
  9. package/dist/css/etch-solid.css +1 -1
  10. package/dist/css/fontawesome.css +3 -3
  11. package/dist/css/graphite-thin.css +1 -1
  12. package/dist/css/jelly-duo-regular.css +1 -1
  13. package/dist/css/jelly-fill-regular.css +1 -1
  14. package/dist/css/jelly-regular.css +1 -1
  15. package/dist/css/light.css +1 -1
  16. package/dist/css/mosaic-solid.css +6 -0
  17. package/dist/css/notdog-duo-solid.css +1 -1
  18. package/dist/css/notdog-solid.css +1 -1
  19. package/dist/css/pixel-regular.css +6 -0
  20. package/dist/css/regular.css +1 -1
  21. package/dist/css/sharp-duotone-light.css +1 -1
  22. package/dist/css/sharp-duotone-regular.css +1 -1
  23. package/dist/css/sharp-duotone-solid.css +1 -1
  24. package/dist/css/sharp-duotone-thin.css +1 -1
  25. package/dist/css/sharp-light.css +1 -1
  26. package/dist/css/sharp-regular.css +1 -1
  27. package/dist/css/sharp-solid.css +1 -1
  28. package/dist/css/sharp-thin.css +1 -1
  29. package/dist/css/slab-duo-regular.css +6 -0
  30. package/dist/css/slab-press-duo-regular.css +6 -0
  31. package/dist/css/slab-press-regular.css +1 -1
  32. package/dist/css/slab-regular.css +1 -1
  33. package/dist/css/solid.css +1 -1
  34. package/dist/css/thin.css +1 -1
  35. package/dist/css/thumbprint-light.css +1 -1
  36. package/dist/css/utility-duo-semibold.css +1 -1
  37. package/dist/css/utility-fill-semibold.css +1 -1
  38. package/dist/css/utility-semibold.css +1 -1
  39. package/dist/css/vellum-solid.css +6 -0
  40. package/dist/css/whiteboard-semibold.css +1 -1
  41. package/dist/index.cjs +2 -2
  42. package/dist/index.cjs.map +1 -1
  43. package/dist/module.mjs +2 -2
  44. package/dist/module.mjs.map +1 -1
  45. package/dist/scss/mosaic-solid.scss +1 -0
  46. package/dist/scss/pixel-regular.scss +1 -0
  47. package/dist/scss/slab-duo-regular.scss +1 -0
  48. package/dist/scss/slab-press-duo-regular.scss +1 -0
  49. package/dist/scss/vellum-solid.scss +1 -0
  50. package/dist/types/create/devCheckVersion.d.ts +5 -0
  51. package/dist/types/create/release.d.ts +1 -0
  52. package/dist/types/create/start.d.ts +1 -0
  53. package/dist/webfapro.js +1 -1
  54. package/dist/webfapro.js.map +1 -1
  55. package/dist/webfonts/fa-brands-400.woff2 +0 -0
  56. package/dist/webfonts/fa-chisel-regular-400.woff2 +0 -0
  57. package/dist/webfonts/fa-duotone-900.woff2 +0 -0
  58. package/dist/webfonts/fa-duotone-light-300.woff2 +0 -0
  59. package/dist/webfonts/fa-duotone-regular-400.woff2 +0 -0
  60. package/dist/webfonts/fa-duotone-thin-100.woff2 +0 -0
  61. package/dist/webfonts/fa-etch-solid-900.woff2 +0 -0
  62. package/dist/webfonts/fa-graphite-thin-100.woff2 +0 -0
  63. package/dist/webfonts/fa-jelly-duo-regular-400.woff2 +0 -0
  64. package/dist/webfonts/fa-jelly-fill-regular-400.woff2 +0 -0
  65. package/dist/webfonts/fa-jelly-regular-400.woff2 +0 -0
  66. package/dist/webfonts/fa-light-300.woff2 +0 -0
  67. package/dist/webfonts/fa-mosaic-solid-900.woff2 +0 -0
  68. package/dist/webfonts/fa-notdog-duo-solid-900.woff2 +0 -0
  69. package/dist/webfonts/fa-notdog-solid-900.woff2 +0 -0
  70. package/dist/webfonts/fa-pixel-regular-400.woff2 +0 -0
  71. package/dist/webfonts/fa-regular-400.woff2 +0 -0
  72. package/dist/webfonts/fa-sharp-duotone-light-300.woff2 +0 -0
  73. package/dist/webfonts/fa-sharp-duotone-regular-400.woff2 +0 -0
  74. package/dist/webfonts/fa-sharp-duotone-solid-900.woff2 +0 -0
  75. package/dist/webfonts/fa-sharp-duotone-thin-100.woff2 +0 -0
  76. package/dist/webfonts/fa-sharp-light-300.woff2 +0 -0
  77. package/dist/webfonts/fa-sharp-regular-400.woff2 +0 -0
  78. package/dist/webfonts/fa-sharp-solid-900.woff2 +0 -0
  79. package/dist/webfonts/fa-sharp-thin-100.woff2 +0 -0
  80. package/dist/webfonts/fa-slab-duo-regular-400.woff2 +0 -0
  81. package/dist/webfonts/fa-slab-press-duo-regular-400.woff2 +0 -0
  82. package/dist/webfonts/fa-slab-press-regular-400.woff2 +0 -0
  83. package/dist/webfonts/fa-slab-regular-400.woff2 +0 -0
  84. package/dist/webfonts/fa-solid-900.woff2 +0 -0
  85. package/dist/webfonts/fa-thin-100.woff2 +0 -0
  86. package/dist/webfonts/fa-thumbprint-light-300.woff2 +0 -0
  87. package/dist/webfonts/fa-utility-duo-semibold-600.woff2 +0 -0
  88. package/dist/webfonts/fa-utility-fill-semibold-600.woff2 +0 -0
  89. package/dist/webfonts/fa-utility-semibold-600.woff2 +0 -0
  90. package/dist/webfonts/fa-vellum-solid-900.woff2 +0 -0
  91. package/dist/webfonts/fa-whiteboard-semibold-600.woff2 +0 -0
  92. package/package.json +14 -15
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license (Commercial License)
4
+ * Copyright 2026 Fonticons, Inc.
5
+ */
6
+ :host,:root{--fa-family-mosaic:"Font Awesome 7 Mosaic";--fa-font-mosaic-solid:normal 900 1em/1 var(--fa-family-mosaic);--fa-style-family-mosaic:var(--fa-family-mosaic)}@font-face{font-family:"Font Awesome 7 Mosaic";font-style:normal;font-weight:900;font-display:block;src:url(webfont-awesome-pro/webfonts/fa-mosaic-solid-900.woff2)}.fams{--fa-style:900}.fa-mosaic,.fams{--fa-family:var(--fa-family-mosaic)}.fa-solid{--fa-style:900}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license (Commercial License)
4
+ * Copyright 2026 Fonticons, Inc.
5
+ */
6
+ :host,:root{--fa-family-pixel:"Font Awesome 7 Pixel";--fa-font-pixel-regular:normal 400 1em/1 var(--fa-family-pixel);--fa-style-family-pixel:var(--fa-family-pixel)}@font-face{font-family:"Font Awesome 7 Pixel";font-style:normal;font-weight:400;font-display:block;src:url(webfont-awesome-pro/webfonts/fa-pixel-regular-400.woff2)}.fapr{--fa-style:400}.fa-pixel,.fapr{--fa-family:var(--fa-family-pixel)}.fa-regular{--fa-style:400}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license (Commercial License)
4
+ * Copyright 2026 Fonticons, Inc.
5
+ */
6
+ :host,:root{--fa-family-slab-duo:"Font Awesome 7 Slab Duo";--fa-font-slab-duo-regular:normal 400 1em/1 var(--fa-family-slab-duo);--fa-style-family-slab-duo:var(--fa-family-slab-duo)}@font-face{font-family:"Font Awesome 7 Slab Duo";font-style:normal;font-weight:400;font-display:block;src:url(webfont-awesome-pro/webfonts/fa-slab-duo-regular-400.woff2)}.fasldr{--fa-style:400}.fa-slab-duo,.fasldr{--fa-family:var(--fa-family-slab-duo);position:relative;letter-spacing:normal}.fa-regular{--fa-style:400}.fa-slab-duo:before,.fasldr:before{position:absolute;color:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.fa-slab-duo:after,.fasldr:after{color:var(--fa-secondary-color,currentColor)}.fa-slab-duo:after,.fa-swap-opacity.fa-slab-duo:before,.fa-swap-opacity .fa-slab-duo:before,.fa-swap-opacity.fasldr:before,.fa-swap-opacity .fasldr:before,.fasldr:after{opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity.fa-slab-duo:after,.fa-swap-opacity .fa-slab-duo:after,.fa-swap-opacity.fasldr:after,.fa-swap-opacity .fasldr:after{opacity:var(--fa-primary-opacity,1)}.fa-li.fa-slab-duo,.fa-li.fasldr,.fa-stack-1x.fa-slab-duo,.fa-stack-1x.fasldr,.fa-stack-2x.fa-slab-duo,.fa-stack-2x.fasldr{position:absolute}
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license (Commercial License)
4
+ * Copyright 2026 Fonticons, Inc.
5
+ */
6
+ :host,:root{--fa-family-slab-press-duo:"Font Awesome 7 Slab Press Duo";--fa-font-slab-press-duo-regular:normal 400 1em/1 var(--fa-family-slab-press-duo);--fa-style-family-slab-press-duo:var(--fa-family-slab-press-duo)}@font-face{font-family:"Font Awesome 7 Slab Press Duo";font-style:normal;font-weight:400;font-display:block;src:url(webfont-awesome-pro/webfonts/fa-slab-press-duo-regular-400.woff2)}.faslpdr{--fa-style:400}.fa-slab-press-duo,.faslpdr{--fa-family:var(--fa-family-slab-press-duo);position:relative;letter-spacing:normal}.fa-regular{--fa-style:400}.fa-slab-press-duo:before,.faslpdr:before{position:absolute;color:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.fa-slab-press-duo:after,.faslpdr:after{color:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity.fa-slab-press-duo:before,.fa-swap-opacity .fa-slab-press-duo:before,.fa-swap-opacity.faslpdr:before,.fa-swap-opacity .faslpdr:before{opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity.fa-slab-press-duo:after,.fa-swap-opacity .fa-slab-press-duo:after,.fa-swap-opacity.faslpdr:after,.fa-swap-opacity .faslpdr:after{opacity:var(--fa-primary-opacity,1)}.fa-li.fa-slab-press-duo,.fa-li.faslpdr,.fa-stack-1x.fa-slab-press-duo,.fa-stack-1x.faslpdr,.fa-stack-2x.fa-slab-press-duo,.fa-stack-2x.faslpdr{position:absolute}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
package/dist/css/thin.css CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license (Commercial License)
4
+ * Copyright 2026 Fonticons, Inc.
5
+ */
6
+ :host,:root{--fa-family-vellum:"Font Awesome 7 Vellum";--fa-font-vellum-solid:normal 900 1em/1 var(--fa-family-vellum);--fa-style-family-vellum:var(--fa-family-vellum)}@font-face{font-family:"Font Awesome 7 Vellum";font-style:normal;font-weight:900;font-display:block;src:url(webfont-awesome-pro/webfonts/fa-vellum-solid-900.woff2)}.favs{--fa-style:900}.fa-vellum,.favs{--fa-family:var(--fa-family-vellum);position:relative;letter-spacing:normal}.fa-solid{--fa-style:900}.fa-vellum:before,.favs:before{position:absolute;color:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.fa-vellum:after,.favs:after{color:var(--fa-secondary-color,currentColor)}.fa-swap-opacity.fa-vellum:before,.fa-swap-opacity .fa-vellum:before,.fa-swap-opacity.favs:before,.fa-swap-opacity .favs:before,.fa-vellum:after,.favs:after{opacity:var(--fa-secondary-opacity,.4)}.fa-swap-opacity.fa-vellum:after,.fa-swap-opacity .fa-vellum:after,.fa-swap-opacity.favs:after,.fa-swap-opacity .favs:after{opacity:var(--fa-primary-opacity,1)}.fa-li.fa-vellum,.fa-li.favs,.fa-stack-1x.fa-vellum,.fa-stack-1x.favs,.fa-stack-2x.fa-vellum,.fa-stack-2x.favs{position:absolute}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.3.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
4
  * Copyright 2026 Fonticons, Inc.
5
5
  */
package/dist/index.cjs CHANGED
@@ -122,7 +122,7 @@ async function $27d6a850902385a7$export$bb3b75778e3e272(fileurl, filedir, progre
122
122
  console.log(`\u{1F680} ${progress ? progress + " " : ""}${filename}`);
123
123
  $27d6a850902385a7$var$filesDownloaded.push(filename);
124
124
  } catch (_error) {
125
- throw new Error("The version you wanted to download is not available. Please use other release version.");
125
+ console.error("The version you wanted to download is not available. Please use other release version.");
126
126
  }
127
127
  }
128
128
  function $27d6a850902385a7$export$8de8b92fd301c83e() {
@@ -212,7 +212,7 @@ async function $7348ac6bfe35f15e$export$6c18a7d4cf131851(fonts, filedir, baseUrl
212
212
 
213
213
 
214
214
  var $76e709583c343c63$exports = {};
215
- $76e709583c343c63$exports = JSON.parse("{\"version\":\"7.2.0\",\"root\":\"https://site-assets.fontawesome.com/releases/v7.2.0\",\"css\":[\"fontawesome.css\",\"brands.css\",\"chisel-regular.css\",\"duotone-light.css\",\"duotone-regular.css\",\"duotone-thin.css\",\"duotone.css\",\"etch-solid.css\",\"graphite-thin.css\",\"jelly-duo-regular.css\",\"jelly-fill-regular.css\",\"jelly-regular.css\",\"light.css\",\"notdog-duo-solid.css\",\"notdog-solid.css\",\"regular.css\",\"sharp-duotone-light.css\",\"sharp-duotone-regular.css\",\"sharp-duotone-solid.css\",\"sharp-duotone-thin.css\",\"sharp-light.css\",\"sharp-regular.css\",\"sharp-solid.css\",\"sharp-thin.css\",\"slab-press-regular.css\",\"slab-regular.css\",\"solid.css\",\"thin.css\",\"thumbprint-light.css\",\"utility-duo-semibold.css\",\"utility-fill-semibold.css\",\"utility-semibold.css\",\"whiteboard-semibold.css\"]}");
215
+ $76e709583c343c63$exports = JSON.parse("{\"version\":\"7.3.0\",\"root\":\"https://site-assets.fontawesome.com/releases/v7.3.0\",\"css\":[\"fontawesome.css\",\"jelly-duo-regular.css\",\"sharp-duotone-regular.css\",\"graphite-thin.css\",\"whiteboard-semibold.css\",\"jelly-fill-regular.css\",\"slab-duo-regular.css\",\"duotone-light.css\",\"sharp-duotone-light.css\",\"notdog-duo-solid.css\",\"slab-regular.css\",\"sharp-thin.css\",\"utility-fill-semibold.css\",\"light.css\",\"duotone.css\",\"pixel-regular.css\",\"thin.css\",\"utility-semibold.css\",\"solid.css\",\"vellum-solid.css\",\"sharp-solid.css\",\"sharp-duotone-thin.css\",\"sharp-duotone-solid.css\",\"thumbprint-light.css\",\"utility-duo-semibold.css\",\"etch-solid.css\",\"duotone-regular.css\",\"jelly-regular.css\",\"sharp-light.css\",\"brands.css\",\"chisel-regular.css\",\"regular.css\",\"sharp-regular.css\",\"mosaic-solid.css\",\"duotone-thin.css\",\"notdog-solid.css\",\"slab-press-duo-regular.css\",\"slab-press-regular.css\"]}");
216
216
 
217
217
 
218
218
 
@@ -1 +1 @@
1
- {"mappings":"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","sources":["src/index.ts","src/helper/waittime.ts","src/pages/askQuestions.ts","src/main/question.ts","src/pages/cssDownload.ts","src/main/file-downloader.ts","src/main/dir-checker.ts","src/pages/fontsDownload.ts","src/main/font-extractor.ts","src/pages/versionCheck.ts","src/json/fonts.json","src/pages/noticeOfficial.ts"],"sourcesContent":["import waittime from \"./helper/waittime\"\nimport askQuestion from \"./pages/askQuestions\"\nimport cssDownload from \"./pages/cssDownload\"\nimport { downloadFonts, readFonts } from \"./pages/fontsDownload\"\nimport checkVersion from \"./pages/versionCheck\"\nimport unofficialNotice from \"./pages/noticeOfficial\"\n\nasync function startDownloader(): Promise<void> {\n await waittime(100)\n console.clear()\n const { isOk } = await unofficialNotice()\n if (!isOk) return\n const { useDir } = await askQuestion()\n const { fontlist, useVer, baseUrl } = await checkVersion()\n const cssUrls: string[] = await cssDownload(useVer, useDir, fontlist)\n const fontUrls: string[] = await readFonts(cssUrls, useDir)\n await downloadFonts(fontUrls, useDir, baseUrl)\n await waittime(1000)\n console.log(\"--------\")\n await waittime(1000)\n console.log(`✅ Font Awesome ${useVer.split(\".\")[0]} Pro Plus v${useVer} Downloaded Successfully!`)\n await waittime(1000)\n console.log(\"DONE\")\n await waittime(1000)\n}\nexport function getFontAwesomePro(): void {\n startDownloader()\n}\nexport function getFapro(): void {\n startDownloader()\n}\n","export default function waittime(ms: number = 500, n: number = 5): Promise<void> {\n return new Promise((resolve) => setTimeout(resolve, ms - n))\n}\n","import { question } from \"../main/question\"\nimport waittime from \"../helper/waittime\"\n\nexport default async function askQuestion(): Promise<{ useDir: string }> {\n console.log(\"--------\")\n await waittime(1000)\n console.log(\" \")\n await waittime(100)\n console.log(`Set the Download Path!`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(\"Download path can be \" + \"`path/to/your/public/folder`\" + \" or \" + \"`anything`\" + \".\")\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(\"if the path does not exist, it will be created automatically.\")\n await waittime(500)\n console.log(\"--------\")\n const dir = await question(`Enter download path: (fapro) `)\n const useDir = dir ? dir : \"fapro\"\n console.log(`${useDir}${dir ? \"\" : \" (default)\"}`)\n console.log(\"--------\")\n await waittime(750)\n console.log(\" \")\n console.log(\"Preparing Downloader\")\n await waittime(2250)\n console.log(\" \")\n return { useDir }\n}\n","import readline from \"readline\"\n\nexport function question(text: string): Promise<string> {\n return new Promise((resolve) => {\n const rl = readline.createInterface({\n input: process.stdin,\n output: process.stdout\n })\n rl.question(text, (anwer) => {\n resolve(anwer)\n rl.close()\n })\n })\n}\n","import { downloadFile, getDownloaded } from \"../main/file-downloader\"\nimport waittime from \"../helper/waittime\"\n\nexport default async function cssDownload(useVer: string, useDir: string, fontlist: string[]): Promise<string[]> {\n console.log(\"--------\")\n console.log(`🕗 Downloading All Stylesheets`)\n await waittime(1000)\n\n const dir = `${useDir}/css`\n\n for (let i = 0; i < fontlist.length; i++) {\n const url = fontlist[i]\n const progress = `[${i + 1}/${fontlist.length}]`\n await downloadFile(url, dir, progress)\n }\n console.log(\"✅ Stylesheets Downloaded\")\n await waittime(1000)\n return getDownloaded()\n}\n","import { Downloader } from \"nodejs-file-downloader\"\nimport { addDir } from \"./dir-checker\"\n\nlet filesDownloaded: string[] = []\n\nexport async function downloadFile(fileurl: string, filedir: string, progress: string | null = null): Promise<void> {\n await addDir(`${filedir}`)\n const downloader = new Downloader({\n url: fileurl,\n directory: `./${filedir}`,\n cloneFiles: false,\n headers: {\n // manipulate downloader ariving\n \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36\",\n\n // manipulate extension (for strict cdn)\n Accept: \"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8\",\n\n // anti-bot bypass\n \"Accept-Language\": \"en-US,en;q=0.9,id;q=0.8\",\n\n // anti-bot bypass\n Connection: \"keep-alive\",\n\n // anti-bot bypass\n \"Upgrade-Insecure-Requests\": \"1\",\n\n // same site bypass\n Referer: \"https://site-assets.fontawesome.com/\",\n Origin: \"https://site-assets.fontawesome.com\",\n\n // same site bypass\n \"Sec-Fetch-Dest\": \"document\",\n \"Sec-Fetch-Mode\": \"navigate\",\n \"Sec-Fetch-Site\": \"same-origin\",\n \"Sec-Fetch-User\": \"?1\",\n\n // anti-bot bypass\n \"sec-ch-ua\": '\"Chromium\";v=\"122\", \"Not(A:Brand\";v=\"24\", \"Google Chrome\";v=\"122\"',\n \"sec-ch-ua-mobile\": \"?0\",\n \"sec-ch-ua-platform\": '\"Windows\"'\n }\n })\n try {\n await downloader.download()\n const fileorigin = fileurl.split(\"/\")\n const filename = fileorigin[fileorigin.length - 1]\n console.log(`🚀 ${progress ? progress + \" \" : \"\"}${filename}`)\n filesDownloaded.push(filename)\n } catch (_error) {\n throw new Error(\"The version you wanted to download is not available. Please use other release version.\")\n }\n}\nexport function getDownloaded(): string[] {\n const files: string[] = [...filesDownloaded]\n filesDownloaded = []\n return files\n}\n","import fs from \"fs\"\nimport waittime from \"../helper/waittime\"\n\nexport async function addDir(dirpath: string): Promise<void> {\n let curpath = \".\"\n const dirs: string[] = dirpath.split(\"/\")\n\n for (const dir of dirs) {\n curpath += `/${dir}`\n if (!fs.existsSync(curpath)) {\n fs.mkdirSync(curpath)\n await waittime(100)\n }\n }\n}\n","import { addDir } from \"../main/dir-checker\"\nimport waittime from \"../helper/waittime\"\nimport { extractFont, getFonts } from \"../main/font-extractor\"\nimport { downloadFile } from \"../main/file-downloader\"\n\nexport async function readFonts(sheets: string[], useDir: string): Promise<string[]> {\n console.log(\"--------\")\n console.log(\"🕗 Reading Available Webfonts\")\n const dir = `${useDir}/css`\n for (const sheet of sheets) {\n await extractFont(sheet, dir)\n }\n const fonts = getFonts()\n console.log(\"✅ Found \" + fonts.length.toString() + \" Webfonts\")\n await waittime(1000)\n return fonts\n}\nexport async function downloadFonts(fonts: string[], filedir: string, baseUrl: string): Promise<void> {\n const dir = `${filedir}/webfonts`\n await addDir(dir)\n const fonturl = baseUrl\n console.log(\"--------\")\n console.log(\"🕗 Downloading All Webfonts\")\n await waittime(1000)\n for (let i = 0; i < fonts.length; i++) {\n const font = fonts[i].replace(\"..\", \"\")\n const url = `${fonturl}${font}`\n const progress = `[${i + 1}/${fonts.length}]`\n await downloadFile(url, dir, progress)\n }\n console.log(\"✅ Webfonts Downloaded\")\n}\n","import fs from \"fs\"\nimport postcss from \"postcss\"\nimport safeParser from \"postcss-safe-parser\"\n\nlet fontUrls: string[] = []\n\nexport async function extractFont(filename: string, filedir: string): Promise<void> {\n const css = fs.readFileSync(`./${filedir}/${filename}`, \"utf8\")\n postcss()\n .process(css, { parser: safeParser, from: undefined })\n .then((result) => {\n result.root.walkAtRules(\"font-face\", (rule) => {\n rule.walkDecls(\"src\", (decl) => {\n const matches = decl.value.match(/url\\(([^)]+)\\)/g)\n if (matches) {\n matches.forEach((url) => {\n const cleanUrl = url.replace(/url\\([\"']?/, \"\").replace(/[\"']?\\)/, \"\")\n fontUrls.push(cleanUrl)\n })\n }\n })\n })\n })\n}\n\nexport function getFonts(): string[] {\n const fixedFonts: string[] = [...fontUrls]\n fontUrls = []\n return fixedFonts\n}\n","import { Ver } from \"./fa.types\"\nimport defVer from \"../json/fonts.json\"\nimport waittime from \"../helper/waittime\"\n\nasync function getVersion(): Promise<Ver> {\n const url = `https://raw.githubusercontent.com/devanka761/webfont-awesome-pro/refs/heads/master/src/json/fonts.json?ts=${Date.now().toString(36)}`\n\n return await fetch(url, {\n method: \"GET\"\n })\n .then((res) => res.json())\n .then((res) => {\n console.log(`✅ Found: v${res.version}`)\n return res\n })\n .catch(() => {\n console.log(`⛔ Error getting the latest version!`)\n console.log(`⛔ Forced Using v${defVer.version}`)\n return defVer\n })\n}\n\nexport default async function checkVersion(): Promise<{ fontlist: string[]; useVer: string; baseUrl: string }> {\n console.log(\"--------\")\n console.log(\"🕗 Checking Latest Version\")\n await waittime(1000)\n const curFonts = await getVersion()\n await waittime(100)\n console.log(\"--------\")\n await waittime(1000)\n console.log(\" \")\n console.log(`Downloading Version ${curFonts.version} of Font Awesome ${curFonts.version.split(\".\")[0]} Pro Plus`)\n await waittime(1000)\n console.log(\" \")\n console.log(\"--------\")\n await waittime(100)\n console.log(\"🕗 Reading Available Stylesheets\")\n await waittime(500)\n const fontlist = curFonts.css.map((file) => `${curFonts.root}/css/${file}`)\n console.log(\"✅ Found \" + fontlist.length.toString() + \" Sytlesheets\")\n await waittime(1000)\n return { fontlist, useVer: curFonts.version, baseUrl: curFonts.root }\n}\n","{\n \"version\": \"7.2.0\",\n \"root\": \"https://site-assets.fontawesome.com/releases/v7.2.0\",\n \"css\": [\n \"fontawesome.css\",\n \"brands.css\",\n \"chisel-regular.css\",\n \"duotone-light.css\",\n \"duotone-regular.css\",\n \"duotone-thin.css\",\n \"duotone.css\",\n \"etch-solid.css\",\n \"graphite-thin.css\",\n \"jelly-duo-regular.css\",\n \"jelly-fill-regular.css\",\n \"jelly-regular.css\",\n \"light.css\",\n \"notdog-duo-solid.css\",\n \"notdog-solid.css\",\n \"regular.css\",\n \"sharp-duotone-light.css\",\n \"sharp-duotone-regular.css\",\n \"sharp-duotone-solid.css\",\n \"sharp-duotone-thin.css\",\n \"sharp-light.css\",\n \"sharp-regular.css\",\n \"sharp-solid.css\",\n \"sharp-thin.css\",\n \"slab-press-regular.css\",\n \"slab-regular.css\",\n \"solid.css\",\n \"thin.css\",\n \"thumbprint-light.css\",\n \"utility-duo-semibold.css\",\n \"utility-fill-semibold.css\",\n \"utility-semibold.css\",\n \"whiteboard-semibold.css\"\n ]\n}","import waittime from \"../helper/waittime\"\nimport { question } from \"../main/question\"\n\nexport default async function unofficialNotice(): Promise<{ isOk: boolean }> {\n console.log(\"Font Awesome Pro Plus Downloader | Devanka761\")\n await waittime(500)\n console.log(\"\")\n console.log(\"--------\")\n console.log(`Font Awesome Pro Plus Downloader was made for educational purposes only!`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`This downloader provides Paid (Pro Plus) Version for the latest Official Package. It is intended for experimental and personal use only. It is licensed for commercial use.`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`DO NOT use this downloader if you are not a Creator or you have never buy the official product from the official website.`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`To unlock commercial use for your own projects, and get an official product license, please consider to go to the Font Awesome webiste: https://fontawesome.com/plans`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(500)\n let agree = await question(`Continue to download? (Y/n) `)\n agree = agree ? agree.toLowerCase() : \"y\"\n const notAgrees = [\"no\", \"n\", \"nope\"]\n const isOk = notAgrees.find((textNo) => textNo === agree) ? false : true\n console.log(isOk ? \"y\" : \"n\")\n if (!isOk) {\n console.log(\"--------\")\n await waittime(1000)\n console.log(\"⛔ Font Awesome Pro Plus Downloader Canceled\")\n await waittime(1000)\n console.log(\"DONE\")\n }\n\n return { isOk }\n}\n"],"names":[],"version":3,"file":"index.cjs.map","sourceRoot":"../"}
1
+ {"mappings":"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","sources":["src/index.ts","src/helper/waittime.ts","src/pages/askQuestions.ts","src/main/question.ts","src/pages/cssDownload.ts","src/main/file-downloader.ts","src/main/dir-checker.ts","src/pages/fontsDownload.ts","src/main/font-extractor.ts","src/pages/versionCheck.ts","src/json/fonts.json","src/pages/noticeOfficial.ts"],"sourcesContent":["import waittime from \"./helper/waittime\"\nimport askQuestion from \"./pages/askQuestions\"\nimport cssDownload from \"./pages/cssDownload\"\nimport { downloadFonts, readFonts } from \"./pages/fontsDownload\"\nimport checkVersion from \"./pages/versionCheck\"\nimport unofficialNotice from \"./pages/noticeOfficial\"\n\nasync function startDownloader(): Promise<void> {\n await waittime(100)\n console.clear()\n const { isOk } = await unofficialNotice()\n if (!isOk) return\n const { useDir } = await askQuestion()\n const { fontlist, useVer, baseUrl } = await checkVersion()\n const cssUrls: string[] = await cssDownload(useVer, useDir, fontlist)\n const fontUrls: string[] = await readFonts(cssUrls, useDir)\n await downloadFonts(fontUrls, useDir, baseUrl)\n await waittime(1000)\n console.log(\"--------\")\n await waittime(1000)\n console.log(`✅ Font Awesome ${useVer.split(\".\")[0]} Pro Plus v${useVer} Downloaded Successfully!`)\n await waittime(1000)\n console.log(\"DONE\")\n await waittime(1000)\n}\nexport function getFontAwesomePro(): void {\n startDownloader()\n}\nexport function getFapro(): void {\n startDownloader()\n}\n","export default function waittime(ms: number = 500, n: number = 5): Promise<void> {\n return new Promise((resolve) => setTimeout(resolve, ms - n))\n}\n","import { question } from \"../main/question\"\nimport waittime from \"../helper/waittime\"\n\nexport default async function askQuestion(): Promise<{ useDir: string }> {\n console.log(\"--------\")\n await waittime(1000)\n console.log(\" \")\n await waittime(100)\n console.log(`Set the Download Path!`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(\"Download path can be \" + \"`path/to/your/public/folder`\" + \" or \" + \"`anything`\" + \".\")\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(\"if the path does not exist, it will be created automatically.\")\n await waittime(500)\n console.log(\"--------\")\n const dir = await question(`Enter download path: (fapro) `)\n const useDir = dir ? dir : \"fapro\"\n console.log(`${useDir}${dir ? \"\" : \" (default)\"}`)\n console.log(\"--------\")\n await waittime(750)\n console.log(\" \")\n console.log(\"Preparing Downloader\")\n await waittime(2250)\n console.log(\" \")\n return { useDir }\n}\n","import readline from \"readline\"\n\nexport function question(text: string): Promise<string> {\n return new Promise((resolve) => {\n const rl = readline.createInterface({\n input: process.stdin,\n output: process.stdout\n })\n rl.question(text, (anwer) => {\n resolve(anwer)\n rl.close()\n })\n })\n}\n","import { downloadFile, getDownloaded } from \"../main/file-downloader\"\nimport waittime from \"../helper/waittime\"\n\nexport default async function cssDownload(useVer: string, useDir: string, fontlist: string[]): Promise<string[]> {\n console.log(\"--------\")\n console.log(`🕗 Downloading All Stylesheets`)\n await waittime(1000)\n\n const dir = `${useDir}/css`\n\n for (let i = 0; i < fontlist.length; i++) {\n const url = fontlist[i]\n const progress = `[${i + 1}/${fontlist.length}]`\n await downloadFile(url, dir, progress)\n }\n console.log(\"✅ Stylesheets Downloaded\")\n await waittime(1000)\n return getDownloaded()\n}\n","import { Downloader } from \"nodejs-file-downloader\"\nimport { addDir } from \"./dir-checker\"\n\nlet filesDownloaded: string[] = []\n\nexport async function downloadFile(fileurl: string, filedir: string, progress: string | null = null): Promise<void> {\n await addDir(`${filedir}`)\n const downloader = new Downloader({\n url: fileurl,\n directory: `./${filedir}`,\n cloneFiles: false,\n headers: {\n // manipulate downloader ariving\n \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36\",\n\n // manipulate extension (for strict cdn)\n Accept: \"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8\",\n\n // anti-bot bypass\n \"Accept-Language\": \"en-US,en;q=0.9,id;q=0.8\",\n\n // anti-bot bypass\n Connection: \"keep-alive\",\n\n // anti-bot bypass\n \"Upgrade-Insecure-Requests\": \"1\",\n\n // same site bypass\n Referer: \"https://site-assets.fontawesome.com/\",\n Origin: \"https://site-assets.fontawesome.com\",\n\n // same site bypass\n \"Sec-Fetch-Dest\": \"document\",\n \"Sec-Fetch-Mode\": \"navigate\",\n \"Sec-Fetch-Site\": \"same-origin\",\n \"Sec-Fetch-User\": \"?1\",\n\n // anti-bot bypass\n \"sec-ch-ua\": '\"Chromium\";v=\"122\", \"Not(A:Brand\";v=\"24\", \"Google Chrome\";v=\"122\"',\n \"sec-ch-ua-mobile\": \"?0\",\n \"sec-ch-ua-platform\": '\"Windows\"'\n }\n })\n try {\n await downloader.download()\n const fileorigin = fileurl.split(\"/\")\n const filename = fileorigin[fileorigin.length - 1]\n console.log(`🚀 ${progress ? progress + \" \" : \"\"}${filename}`)\n filesDownloaded.push(filename)\n } catch (_error) {\n console.error(\"The version you wanted to download is not available. Please use other release version.\")\n }\n}\nexport function getDownloaded(): string[] {\n const files: string[] = [...filesDownloaded]\n filesDownloaded = []\n return files\n}\n","import fs from \"fs\"\nimport waittime from \"../helper/waittime\"\n\nexport async function addDir(dirpath: string): Promise<void> {\n let curpath = \".\"\n const dirs: string[] = dirpath.split(\"/\")\n\n for (const dir of dirs) {\n curpath += `/${dir}`\n if (!fs.existsSync(curpath)) {\n fs.mkdirSync(curpath)\n await waittime(100)\n }\n }\n}\n","import { addDir } from \"../main/dir-checker\"\nimport waittime from \"../helper/waittime\"\nimport { extractFont, getFonts } from \"../main/font-extractor\"\nimport { downloadFile } from \"../main/file-downloader\"\n\nexport async function readFonts(sheets: string[], useDir: string): Promise<string[]> {\n console.log(\"--------\")\n console.log(\"🕗 Reading Available Webfonts\")\n const dir = `${useDir}/css`\n for (const sheet of sheets) {\n await extractFont(sheet, dir)\n }\n const fonts = getFonts()\n console.log(\"✅ Found \" + fonts.length.toString() + \" Webfonts\")\n await waittime(1000)\n return fonts\n}\nexport async function downloadFonts(fonts: string[], filedir: string, baseUrl: string): Promise<void> {\n const dir = `${filedir}/webfonts`\n await addDir(dir)\n const fonturl = baseUrl\n console.log(\"--------\")\n console.log(\"🕗 Downloading All Webfonts\")\n await waittime(1000)\n for (let i = 0; i < fonts.length; i++) {\n const font = fonts[i].replace(\"..\", \"\")\n const url = `${fonturl}${font}`\n const progress = `[${i + 1}/${fonts.length}]`\n await downloadFile(url, dir, progress)\n }\n console.log(\"✅ Webfonts Downloaded\")\n}\n","import fs from \"fs\"\nimport postcss from \"postcss\"\nimport safeParser from \"postcss-safe-parser\"\n\nlet fontUrls: string[] = []\n\nexport async function extractFont(filename: string, filedir: string): Promise<void> {\n const css = fs.readFileSync(`./${filedir}/${filename}`, \"utf8\")\n postcss()\n .process(css, { parser: safeParser, from: undefined })\n .then((result) => {\n result.root.walkAtRules(\"font-face\", (rule) => {\n rule.walkDecls(\"src\", (decl) => {\n const matches = decl.value.match(/url\\(([^)]+)\\)/g)\n if (matches) {\n matches.forEach((url) => {\n const cleanUrl = url.replace(/url\\([\"']?/, \"\").replace(/[\"']?\\)/, \"\")\n fontUrls.push(cleanUrl)\n })\n }\n })\n })\n })\n}\n\nexport function getFonts(): string[] {\n const fixedFonts: string[] = [...fontUrls]\n fontUrls = []\n return fixedFonts\n}\n","import { Ver } from \"./fa.types\"\nimport defVer from \"../json/fonts.json\"\nimport waittime from \"../helper/waittime\"\n\nasync function getVersion(): Promise<Ver> {\n const url = `https://raw.githubusercontent.com/devanka761/webfont-awesome-pro/refs/heads/master/src/json/fonts.json?ts=${Date.now().toString(36)}`\n\n return await fetch(url, {\n method: \"GET\"\n })\n .then((res) => res.json())\n .then((res) => {\n console.log(`✅ Found: v${res.version}`)\n return res\n })\n .catch(() => {\n console.log(`⛔ Error getting the latest version!`)\n console.log(`⛔ Forced Using v${defVer.version}`)\n return defVer\n })\n}\n\nexport default async function checkVersion(): Promise<{ fontlist: string[]; useVer: string; baseUrl: string }> {\n console.log(\"--------\")\n console.log(\"🕗 Checking Latest Version\")\n await waittime(1000)\n const curFonts = await getVersion()\n await waittime(100)\n console.log(\"--------\")\n await waittime(1000)\n console.log(\" \")\n console.log(`Downloading Version ${curFonts.version} of Font Awesome ${curFonts.version.split(\".\")[0]} Pro Plus`)\n await waittime(1000)\n console.log(\" \")\n console.log(\"--------\")\n await waittime(100)\n console.log(\"🕗 Reading Available Stylesheets\")\n await waittime(500)\n const fontlist = curFonts.css.map((file) => `${curFonts.root}/css/${file}`)\n console.log(\"✅ Found \" + fontlist.length.toString() + \" Sytlesheets\")\n await waittime(1000)\n return { fontlist, useVer: curFonts.version, baseUrl: curFonts.root }\n}\n","{\n \"version\": \"7.3.0\",\n \"root\": \"https://site-assets.fontawesome.com/releases/v7.3.0\",\n \"css\": [\n \"fontawesome.css\",\n \"jelly-duo-regular.css\",\n \"sharp-duotone-regular.css\",\n \"graphite-thin.css\",\n \"whiteboard-semibold.css\",\n \"jelly-fill-regular.css\",\n \"slab-duo-regular.css\",\n \"duotone-light.css\",\n \"sharp-duotone-light.css\",\n \"notdog-duo-solid.css\",\n \"slab-regular.css\",\n \"sharp-thin.css\",\n \"utility-fill-semibold.css\",\n \"light.css\",\n \"duotone.css\",\n \"pixel-regular.css\",\n \"thin.css\",\n \"utility-semibold.css\",\n \"solid.css\",\n \"vellum-solid.css\",\n \"sharp-solid.css\",\n \"sharp-duotone-thin.css\",\n \"sharp-duotone-solid.css\",\n \"thumbprint-light.css\",\n \"utility-duo-semibold.css\",\n \"etch-solid.css\",\n \"duotone-regular.css\",\n \"jelly-regular.css\",\n \"sharp-light.css\",\n \"brands.css\",\n \"chisel-regular.css\",\n \"regular.css\",\n \"sharp-regular.css\",\n \"mosaic-solid.css\",\n \"duotone-thin.css\",\n \"notdog-solid.css\",\n \"slab-press-duo-regular.css\",\n \"slab-press-regular.css\"\n ]\n}","import waittime from \"../helper/waittime\"\nimport { question } from \"../main/question\"\n\nexport default async function unofficialNotice(): Promise<{ isOk: boolean }> {\n console.log(\"Font Awesome Pro Plus Downloader | Devanka761\")\n await waittime(500)\n console.log(\"\")\n console.log(\"--------\")\n console.log(`Font Awesome Pro Plus Downloader was made for educational purposes only!`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`This downloader provides Paid (Pro Plus) Version for the latest Official Package. It is intended for experimental and personal use only. It is licensed for commercial use.`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`DO NOT use this downloader if you are not a Creator or you have never buy the official product from the official website.`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`To unlock commercial use for your own projects, and get an official product license, please consider to go to the Font Awesome webiste: https://fontawesome.com/plans`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(500)\n let agree = await question(`Continue to download? (Y/n) `)\n agree = agree ? agree.toLowerCase() : \"y\"\n const notAgrees = [\"no\", \"n\", \"nope\"]\n const isOk = notAgrees.find((textNo) => textNo === agree) ? false : true\n console.log(isOk ? \"y\" : \"n\")\n if (!isOk) {\n console.log(\"--------\")\n await waittime(1000)\n console.log(\"⛔ Font Awesome Pro Plus Downloader Canceled\")\n await waittime(1000)\n console.log(\"DONE\")\n }\n\n return { isOk }\n}\n"],"names":[],"version":3,"file":"index.cjs.map","sourceRoot":"../"}
package/dist/module.mjs CHANGED
@@ -115,7 +115,7 @@ async function $79f93e09d37d22af$export$bb3b75778e3e272(fileurl, filedir, progre
115
115
  console.log(`\u{1F680} ${progress ? progress + " " : ""}${filename}`);
116
116
  $79f93e09d37d22af$var$filesDownloaded.push(filename);
117
117
  } catch (_error) {
118
- throw new Error("The version you wanted to download is not available. Please use other release version.");
118
+ console.error("The version you wanted to download is not available. Please use other release version.");
119
119
  }
120
120
  }
121
121
  function $79f93e09d37d22af$export$8de8b92fd301c83e() {
@@ -205,7 +205,7 @@ async function $9ff909d4a69662c1$export$6c18a7d4cf131851(fonts, filedir, baseUrl
205
205
 
206
206
 
207
207
  var $2fec5fa9afe64cbe$exports = {};
208
- $2fec5fa9afe64cbe$exports = JSON.parse("{\"version\":\"7.2.0\",\"root\":\"https://site-assets.fontawesome.com/releases/v7.2.0\",\"css\":[\"fontawesome.css\",\"brands.css\",\"chisel-regular.css\",\"duotone-light.css\",\"duotone-regular.css\",\"duotone-thin.css\",\"duotone.css\",\"etch-solid.css\",\"graphite-thin.css\",\"jelly-duo-regular.css\",\"jelly-fill-regular.css\",\"jelly-regular.css\",\"light.css\",\"notdog-duo-solid.css\",\"notdog-solid.css\",\"regular.css\",\"sharp-duotone-light.css\",\"sharp-duotone-regular.css\",\"sharp-duotone-solid.css\",\"sharp-duotone-thin.css\",\"sharp-light.css\",\"sharp-regular.css\",\"sharp-solid.css\",\"sharp-thin.css\",\"slab-press-regular.css\",\"slab-regular.css\",\"solid.css\",\"thin.css\",\"thumbprint-light.css\",\"utility-duo-semibold.css\",\"utility-fill-semibold.css\",\"utility-semibold.css\",\"whiteboard-semibold.css\"]}");
208
+ $2fec5fa9afe64cbe$exports = JSON.parse("{\"version\":\"7.3.0\",\"root\":\"https://site-assets.fontawesome.com/releases/v7.3.0\",\"css\":[\"fontawesome.css\",\"jelly-duo-regular.css\",\"sharp-duotone-regular.css\",\"graphite-thin.css\",\"whiteboard-semibold.css\",\"jelly-fill-regular.css\",\"slab-duo-regular.css\",\"duotone-light.css\",\"sharp-duotone-light.css\",\"notdog-duo-solid.css\",\"slab-regular.css\",\"sharp-thin.css\",\"utility-fill-semibold.css\",\"light.css\",\"duotone.css\",\"pixel-regular.css\",\"thin.css\",\"utility-semibold.css\",\"solid.css\",\"vellum-solid.css\",\"sharp-solid.css\",\"sharp-duotone-thin.css\",\"sharp-duotone-solid.css\",\"thumbprint-light.css\",\"utility-duo-semibold.css\",\"etch-solid.css\",\"duotone-regular.css\",\"jelly-regular.css\",\"sharp-light.css\",\"brands.css\",\"chisel-regular.css\",\"regular.css\",\"sharp-regular.css\",\"mosaic-solid.css\",\"duotone-thin.css\",\"notdog-solid.css\",\"slab-press-duo-regular.css\",\"slab-press-regular.css\"]}");
209
209
 
210
210
 
211
211
 
@@ -1 +1 @@
1
- {"mappings":"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","sources":["src/index.ts","src/helper/waittime.ts","src/pages/askQuestions.ts","src/main/question.ts","src/pages/cssDownload.ts","src/main/file-downloader.ts","src/main/dir-checker.ts","src/pages/fontsDownload.ts","src/main/font-extractor.ts","src/pages/versionCheck.ts","src/json/fonts.json","src/pages/noticeOfficial.ts"],"sourcesContent":["import waittime from \"./helper/waittime\"\nimport askQuestion from \"./pages/askQuestions\"\nimport cssDownload from \"./pages/cssDownload\"\nimport { downloadFonts, readFonts } from \"./pages/fontsDownload\"\nimport checkVersion from \"./pages/versionCheck\"\nimport unofficialNotice from \"./pages/noticeOfficial\"\n\nasync function startDownloader(): Promise<void> {\n await waittime(100)\n console.clear()\n const { isOk } = await unofficialNotice()\n if (!isOk) return\n const { useDir } = await askQuestion()\n const { fontlist, useVer, baseUrl } = await checkVersion()\n const cssUrls: string[] = await cssDownload(useVer, useDir, fontlist)\n const fontUrls: string[] = await readFonts(cssUrls, useDir)\n await downloadFonts(fontUrls, useDir, baseUrl)\n await waittime(1000)\n console.log(\"--------\")\n await waittime(1000)\n console.log(`✅ Font Awesome ${useVer.split(\".\")[0]} Pro Plus v${useVer} Downloaded Successfully!`)\n await waittime(1000)\n console.log(\"DONE\")\n await waittime(1000)\n}\nexport function getFontAwesomePro(): void {\n startDownloader()\n}\nexport function getFapro(): void {\n startDownloader()\n}\n","export default function waittime(ms: number = 500, n: number = 5): Promise<void> {\n return new Promise((resolve) => setTimeout(resolve, ms - n))\n}\n","import { question } from \"../main/question\"\nimport waittime from \"../helper/waittime\"\n\nexport default async function askQuestion(): Promise<{ useDir: string }> {\n console.log(\"--------\")\n await waittime(1000)\n console.log(\" \")\n await waittime(100)\n console.log(`Set the Download Path!`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(\"Download path can be \" + \"`path/to/your/public/folder`\" + \" or \" + \"`anything`\" + \".\")\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(\"if the path does not exist, it will be created automatically.\")\n await waittime(500)\n console.log(\"--------\")\n const dir = await question(`Enter download path: (fapro) `)\n const useDir = dir ? dir : \"fapro\"\n console.log(`${useDir}${dir ? \"\" : \" (default)\"}`)\n console.log(\"--------\")\n await waittime(750)\n console.log(\" \")\n console.log(\"Preparing Downloader\")\n await waittime(2250)\n console.log(\" \")\n return { useDir }\n}\n","import readline from \"readline\"\n\nexport function question(text: string): Promise<string> {\n return new Promise((resolve) => {\n const rl = readline.createInterface({\n input: process.stdin,\n output: process.stdout\n })\n rl.question(text, (anwer) => {\n resolve(anwer)\n rl.close()\n })\n })\n}\n","import { downloadFile, getDownloaded } from \"../main/file-downloader\"\nimport waittime from \"../helper/waittime\"\n\nexport default async function cssDownload(useVer: string, useDir: string, fontlist: string[]): Promise<string[]> {\n console.log(\"--------\")\n console.log(`🕗 Downloading All Stylesheets`)\n await waittime(1000)\n\n const dir = `${useDir}/css`\n\n for (let i = 0; i < fontlist.length; i++) {\n const url = fontlist[i]\n const progress = `[${i + 1}/${fontlist.length}]`\n await downloadFile(url, dir, progress)\n }\n console.log(\"✅ Stylesheets Downloaded\")\n await waittime(1000)\n return getDownloaded()\n}\n","import { Downloader } from \"nodejs-file-downloader\"\nimport { addDir } from \"./dir-checker\"\n\nlet filesDownloaded: string[] = []\n\nexport async function downloadFile(fileurl: string, filedir: string, progress: string | null = null): Promise<void> {\n await addDir(`${filedir}`)\n const downloader = new Downloader({\n url: fileurl,\n directory: `./${filedir}`,\n cloneFiles: false,\n headers: {\n // manipulate downloader ariving\n \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36\",\n\n // manipulate extension (for strict cdn)\n Accept: \"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8\",\n\n // anti-bot bypass\n \"Accept-Language\": \"en-US,en;q=0.9,id;q=0.8\",\n\n // anti-bot bypass\n Connection: \"keep-alive\",\n\n // anti-bot bypass\n \"Upgrade-Insecure-Requests\": \"1\",\n\n // same site bypass\n Referer: \"https://site-assets.fontawesome.com/\",\n Origin: \"https://site-assets.fontawesome.com\",\n\n // same site bypass\n \"Sec-Fetch-Dest\": \"document\",\n \"Sec-Fetch-Mode\": \"navigate\",\n \"Sec-Fetch-Site\": \"same-origin\",\n \"Sec-Fetch-User\": \"?1\",\n\n // anti-bot bypass\n \"sec-ch-ua\": '\"Chromium\";v=\"122\", \"Not(A:Brand\";v=\"24\", \"Google Chrome\";v=\"122\"',\n \"sec-ch-ua-mobile\": \"?0\",\n \"sec-ch-ua-platform\": '\"Windows\"'\n }\n })\n try {\n await downloader.download()\n const fileorigin = fileurl.split(\"/\")\n const filename = fileorigin[fileorigin.length - 1]\n console.log(`🚀 ${progress ? progress + \" \" : \"\"}${filename}`)\n filesDownloaded.push(filename)\n } catch (_error) {\n throw new Error(\"The version you wanted to download is not available. Please use other release version.\")\n }\n}\nexport function getDownloaded(): string[] {\n const files: string[] = [...filesDownloaded]\n filesDownloaded = []\n return files\n}\n","import fs from \"fs\"\nimport waittime from \"../helper/waittime\"\n\nexport async function addDir(dirpath: string): Promise<void> {\n let curpath = \".\"\n const dirs: string[] = dirpath.split(\"/\")\n\n for (const dir of dirs) {\n curpath += `/${dir}`\n if (!fs.existsSync(curpath)) {\n fs.mkdirSync(curpath)\n await waittime(100)\n }\n }\n}\n","import { addDir } from \"../main/dir-checker\"\nimport waittime from \"../helper/waittime\"\nimport { extractFont, getFonts } from \"../main/font-extractor\"\nimport { downloadFile } from \"../main/file-downloader\"\n\nexport async function readFonts(sheets: string[], useDir: string): Promise<string[]> {\n console.log(\"--------\")\n console.log(\"🕗 Reading Available Webfonts\")\n const dir = `${useDir}/css`\n for (const sheet of sheets) {\n await extractFont(sheet, dir)\n }\n const fonts = getFonts()\n console.log(\"✅ Found \" + fonts.length.toString() + \" Webfonts\")\n await waittime(1000)\n return fonts\n}\nexport async function downloadFonts(fonts: string[], filedir: string, baseUrl: string): Promise<void> {\n const dir = `${filedir}/webfonts`\n await addDir(dir)\n const fonturl = baseUrl\n console.log(\"--------\")\n console.log(\"🕗 Downloading All Webfonts\")\n await waittime(1000)\n for (let i = 0; i < fonts.length; i++) {\n const font = fonts[i].replace(\"..\", \"\")\n const url = `${fonturl}${font}`\n const progress = `[${i + 1}/${fonts.length}]`\n await downloadFile(url, dir, progress)\n }\n console.log(\"✅ Webfonts Downloaded\")\n}\n","import fs from \"fs\"\nimport postcss from \"postcss\"\nimport safeParser from \"postcss-safe-parser\"\n\nlet fontUrls: string[] = []\n\nexport async function extractFont(filename: string, filedir: string): Promise<void> {\n const css = fs.readFileSync(`./${filedir}/${filename}`, \"utf8\")\n postcss()\n .process(css, { parser: safeParser, from: undefined })\n .then((result) => {\n result.root.walkAtRules(\"font-face\", (rule) => {\n rule.walkDecls(\"src\", (decl) => {\n const matches = decl.value.match(/url\\(([^)]+)\\)/g)\n if (matches) {\n matches.forEach((url) => {\n const cleanUrl = url.replace(/url\\([\"']?/, \"\").replace(/[\"']?\\)/, \"\")\n fontUrls.push(cleanUrl)\n })\n }\n })\n })\n })\n}\n\nexport function getFonts(): string[] {\n const fixedFonts: string[] = [...fontUrls]\n fontUrls = []\n return fixedFonts\n}\n","import { Ver } from \"./fa.types\"\nimport defVer from \"../json/fonts.json\"\nimport waittime from \"../helper/waittime\"\n\nasync function getVersion(): Promise<Ver> {\n const url = `https://raw.githubusercontent.com/devanka761/webfont-awesome-pro/refs/heads/master/src/json/fonts.json?ts=${Date.now().toString(36)}`\n\n return await fetch(url, {\n method: \"GET\"\n })\n .then((res) => res.json())\n .then((res) => {\n console.log(`✅ Found: v${res.version}`)\n return res\n })\n .catch(() => {\n console.log(`⛔ Error getting the latest version!`)\n console.log(`⛔ Forced Using v${defVer.version}`)\n return defVer\n })\n}\n\nexport default async function checkVersion(): Promise<{ fontlist: string[]; useVer: string; baseUrl: string }> {\n console.log(\"--------\")\n console.log(\"🕗 Checking Latest Version\")\n await waittime(1000)\n const curFonts = await getVersion()\n await waittime(100)\n console.log(\"--------\")\n await waittime(1000)\n console.log(\" \")\n console.log(`Downloading Version ${curFonts.version} of Font Awesome ${curFonts.version.split(\".\")[0]} Pro Plus`)\n await waittime(1000)\n console.log(\" \")\n console.log(\"--------\")\n await waittime(100)\n console.log(\"🕗 Reading Available Stylesheets\")\n await waittime(500)\n const fontlist = curFonts.css.map((file) => `${curFonts.root}/css/${file}`)\n console.log(\"✅ Found \" + fontlist.length.toString() + \" Sytlesheets\")\n await waittime(1000)\n return { fontlist, useVer: curFonts.version, baseUrl: curFonts.root }\n}\n","{\n \"version\": \"7.2.0\",\n \"root\": \"https://site-assets.fontawesome.com/releases/v7.2.0\",\n \"css\": [\n \"fontawesome.css\",\n \"brands.css\",\n \"chisel-regular.css\",\n \"duotone-light.css\",\n \"duotone-regular.css\",\n \"duotone-thin.css\",\n \"duotone.css\",\n \"etch-solid.css\",\n \"graphite-thin.css\",\n \"jelly-duo-regular.css\",\n \"jelly-fill-regular.css\",\n \"jelly-regular.css\",\n \"light.css\",\n \"notdog-duo-solid.css\",\n \"notdog-solid.css\",\n \"regular.css\",\n \"sharp-duotone-light.css\",\n \"sharp-duotone-regular.css\",\n \"sharp-duotone-solid.css\",\n \"sharp-duotone-thin.css\",\n \"sharp-light.css\",\n \"sharp-regular.css\",\n \"sharp-solid.css\",\n \"sharp-thin.css\",\n \"slab-press-regular.css\",\n \"slab-regular.css\",\n \"solid.css\",\n \"thin.css\",\n \"thumbprint-light.css\",\n \"utility-duo-semibold.css\",\n \"utility-fill-semibold.css\",\n \"utility-semibold.css\",\n \"whiteboard-semibold.css\"\n ]\n}","import waittime from \"../helper/waittime\"\nimport { question } from \"../main/question\"\n\nexport default async function unofficialNotice(): Promise<{ isOk: boolean }> {\n console.log(\"Font Awesome Pro Plus Downloader | Devanka761\")\n await waittime(500)\n console.log(\"\")\n console.log(\"--------\")\n console.log(`Font Awesome Pro Plus Downloader was made for educational purposes only!`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`This downloader provides Paid (Pro Plus) Version for the latest Official Package. It is intended for experimental and personal use only. It is licensed for commercial use.`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`DO NOT use this downloader if you are not a Creator or you have never buy the official product from the official website.`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`To unlock commercial use for your own projects, and get an official product license, please consider to go to the Font Awesome webiste: https://fontawesome.com/plans`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(500)\n let agree = await question(`Continue to download? (Y/n) `)\n agree = agree ? agree.toLowerCase() : \"y\"\n const notAgrees = [\"no\", \"n\", \"nope\"]\n const isOk = notAgrees.find((textNo) => textNo === agree) ? false : true\n console.log(isOk ? \"y\" : \"n\")\n if (!isOk) {\n console.log(\"--------\")\n await waittime(1000)\n console.log(\"⛔ Font Awesome Pro Plus Downloader Canceled\")\n await waittime(1000)\n console.log(\"DONE\")\n }\n\n return { isOk }\n}\n"],"names":[],"version":3,"file":"module.mjs.map","sourceRoot":"../"}
1
+ {"mappings":";;;;;;;;;;ACAe,kDAAkB,KAAa,GAAG,EAAE,IAAY,CAAC;IAC9D,OAAO,IAAI,QAAQ,CAAC,UAAY,WAAW,SAAS,KAAK;AAC3D;;;;AEAO,SAAS,0CAAS,IAAY;IACnC,OAAO,IAAI,QAAQ,CAAC;QAClB,MAAM,KAAK,CAAA,GAAA,eAAO,EAAE,eAAe,CAAC;YAClC,OAAO,QAAQ,KAAK;YACpB,QAAQ,QAAQ,MAAM;QACxB;QACA,GAAG,QAAQ,CAAC,MAAM,CAAC;YACjB,QAAQ;YACR,GAAG,KAAK;QACV;IACF;AACF;;;;ADVe;IACb,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC,CAAC,sBAAsB,CAAC;IACpC,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,MAAM,MAAM,CAAA,GAAA,yCAAO,EAAE,CAAC,6BAA6B,CAAC;IAC1D,MAAM,SAAS,MAAM,MAAM;IAC3B,QAAQ,GAAG,CAAC,GAAG,SAAS,MAAM,KAAK,cAAc;IACjD,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,OAAO;gBAAE;IAAO;AAClB;;;;;;AI1BO,eAAe,0CAAO,OAAe;IAC1C,IAAI,UAAU;IACd,MAAM,OAAiB,QAAQ,KAAK,CAAC;IAErC,KAAK,MAAM,OAAO,KAAM;QACtB,WAAW,CAAC,CAAC,EAAE,KAAK;QACpB,IAAI,CAAC,CAAA,GAAA,SAAC,EAAE,UAAU,CAAC,UAAU;YAC3B,CAAA,GAAA,SAAC,EAAE,SAAS,CAAC;YACb,MAAM,CAAA,GAAA,wCAAO,EAAE;QACjB;IACF;AACF;;;ADXA,IAAI,wCAA4B,EAAE;AAE3B,eAAe,yCAAa,OAAe,EAAE,OAAe,EAAE,WAA0B,IAAI;IACjG,MAAM,CAAA,GAAA,yCAAK,EAAE,GAAG,SAAS;IACzB,MAAM,aAAa,IAAI,CAAA,GAAA,iBAAS,EAAE;QAChC,KAAK;QACL,WAAW,CAAC,EAAE,EAAE,SAAS;QACzB,YAAY;QACZ,SAAS;YACP,gCAAgC;YAChC,cAAc;YAEd,wCAAwC;YACxC,QAAQ;YAER,kBAAkB;YAClB,mBAAmB;YAEnB,kBAAkB;YAClB,YAAY;YAEZ,kBAAkB;YAClB,6BAA6B;YAE7B,mBAAmB;YACnB,SAAS;YACT,QAAQ;YAER,mBAAmB;YACnB,kBAAkB;YAClB,kBAAkB;YAClB,kBAAkB;YAClB,kBAAkB;YAElB,kBAAkB;YAClB,aAAa;YACb,oBAAoB;YACpB,sBAAsB;QACxB;IACF;IACA,IAAI;QACF,MAAM,WAAW,QAAQ;QACzB,MAAM,aAAa,QAAQ,KAAK,CAAC;QACjC,MAAM,WAAW,UAAU,CAAC,WAAW,MAAM,GAAG,EAAE;QAClD,QAAQ,GAAG,CAAC,CAAC,UAAG,EAAE,WAAW,WAAW,MAAM,KAAK,UAAU;QAC7D,sCAAgB,IAAI,CAAC;IACvB,EAAE,OAAO,QAAQ;QACf,QAAQ,KAAK,CAAC;IAChB;AACF;AACO,SAAS;IACd,MAAM,QAAkB;WAAI;KAAgB;IAC5C,wCAAkB,EAAE;IACpB,OAAO;AACT;;;;ADtDe,wDAA2B,MAAc,EAAE,MAAc,EAAE,QAAkB;IAC1F,QAAQ,GAAG,CAAC;IACZ,QAAQ,GAAG,CAAC,CAAC,qCAA8B,CAAC;IAC5C,MAAM,CAAA,GAAA,wCAAO,EAAE;IAEf,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC;IAE3B,IAAK,IAAI,IAAI,GAAG,IAAI,SAAS,MAAM,EAAE,IAAK;QACxC,MAAM,MAAM,QAAQ,CAAC,EAAE;QACvB,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,MAAM,CAAC,CAAC,CAAC;QAChD,MAAM,CAAA,GAAA,wCAAW,EAAE,KAAK,KAAK;IAC/B;IACA,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,OAAO,CAAA,GAAA,yCAAY;AACrB;;;;;;;;AIdA,IAAI,iCAAqB,EAAE;AAEpB,eAAe,0CAAY,QAAgB,EAAE,OAAe;IACjE,MAAM,MAAM,CAAA,GAAA,SAAC,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,UAAU,EAAE;IACxD,CAAA,GAAA,cAAM,IACH,OAAO,CAAC,KAAK;QAAE,QAAQ,CAAA,GAAA,wBAAS;QAAG,MAAM;IAAU,GACnD,IAAI,CAAC,CAAC;QACL,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;YACpC,KAAK,SAAS,CAAC,OAAO,CAAC;gBACrB,MAAM,UAAU,KAAK,KAAK,CAAC,KAAK,CAAC;gBACjC,IAAI,SACF,QAAQ,OAAO,CAAC,CAAC;oBACf,MAAM,WAAW,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,WAAW;oBAClE,+BAAS,IAAI,CAAC;gBAChB;YAEJ;QACF;IACF;AACJ;AAEO,SAAS;IACd,MAAM,aAAuB;WAAI;KAAS;IAC1C,iCAAW,EAAE;IACb,OAAO;AACT;;;;ADxBO,eAAe,0CAAU,MAAgB,EAAE,MAAc;IAC9D,QAAQ,GAAG,CAAC;IACZ,QAAQ,GAAG,CAAC;IACZ,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC;IAC3B,KAAK,MAAM,SAAS,OAClB,MAAM,CAAA,GAAA,yCAAU,EAAE,OAAO;IAE3B,MAAM,QAAQ,CAAA,GAAA,yCAAO;IACrB,QAAQ,GAAG,CAAC,kBAAa,MAAM,MAAM,CAAC,QAAQ,KAAK;IACnD,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,OAAO;AACT;AACO,eAAe,0CAAc,KAAe,EAAE,OAAe,EAAE,OAAe;IACnF,MAAM,MAAM,GAAG,QAAQ,SAAS,CAAC;IACjC,MAAM,CAAA,GAAA,yCAAK,EAAE;IACb,MAAM,UAAU;IAChB,QAAQ,GAAG,CAAC;IACZ,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,IAAK,IAAI,IAAI,GAAG,IAAI,MAAM,MAAM,EAAE,IAAK;QACrC,MAAM,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM;QACpC,MAAM,MAAM,GAAG,UAAU,MAAM;QAC/B,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC;QAC7C,MAAM,CAAA,GAAA,wCAAW,EAAE,KAAK,KAAK;IAC/B;IACA,QAAQ,GAAG,CAAC;AACd;;;;AG/BA,4BAAiB,KAAK,KAAK,CAAC;;;;ADI5B,eAAe;IACb,MAAM,MAAM,CAAC,0GAA0G,EAAE,KAAK,GAAG,GAAG,QAAQ,CAAC,KAAK;IAElJ,OAAO,MAAM,MAAM,KAAK;QACtB,QAAQ;IACV,GACG,IAAI,CAAC,CAAC,MAAQ,IAAI,IAAI,IACtB,IAAI,CAAC,CAAC;QACL,QAAQ,GAAG,CAAC,CAAC,iBAAU,EAAE,IAAI,OAAO,EAAE;QACtC,OAAO;IACT,GACC,KAAK,CAAC;QACL,QAAQ,GAAG,CAAC,CAAC,0CAAmC,CAAC;QACjD,QAAQ,GAAG,CAAC,CAAC,uBAAgB,EAAE,CAAA,GAAA,gEAAK,EAAE,OAAO,EAAE;QAC/C,OAAO,GAAA;IACT;AACJ;AAEe;IACb,QAAQ,GAAG,CAAC;IACZ,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,MAAM,WAAW,MAAM;IACvB,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,QAAQ,GAAG,CAAC,CAAC,oBAAoB,EAAE,SAAS,OAAO,CAAC,iBAAiB,EAAE,SAAS,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC;IAChH,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,MAAM,WAAW,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,OAAS,GAAG,SAAS,IAAI,CAAC,KAAK,EAAE,MAAM;IAC1E,QAAQ,GAAG,CAAC,kBAAa,SAAS,MAAM,CAAC,QAAQ,KAAK;IACtD,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,OAAO;kBAAE;QAAU,QAAQ,SAAS,OAAO;QAAE,SAAS,SAAS,IAAI;IAAC;AACtE;;;;;AEvCe;IACb,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,QAAQ,GAAG,CAAC;IACZ,QAAQ,GAAG,CAAC,CAAC,wEAAwE,CAAC;IACtF,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC,CAAC,2KAA2K,CAAC;IACzL,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC,CAAC,yHAAyH,CAAC;IACvI,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC,CAAC,qKAAqK,CAAC;IACnL,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,IAAI,QAAQ,MAAM,CAAA,GAAA,yCAAO,EAAE,CAAC,4BAA4B,CAAC;IACzD,QAAQ,QAAQ,MAAM,WAAW,KAAK;IACtC,MAAM,YAAY;QAAC;QAAM;QAAK;KAAO;IACrC,MAAM,OAAO,UAAU,IAAI,CAAC,CAAC,SAAW,WAAW,SAAS,QAAQ;IACpE,QAAQ,GAAG,CAAC,OAAO,MAAM;IACzB,IAAI,CAAC,MAAM;QACT,QAAQ,GAAG,CAAC;QACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;QACf,QAAQ,GAAG,CAAC;QACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;QACf,QAAQ,GAAG,CAAC;IACd;IAEA,OAAO;cAAE;IAAK;AAChB;;;AX/BA,eAAe;IACb,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,KAAK;IACb,MAAM,QAAE,IAAI,EAAE,GAAG,MAAM,CAAA,GAAA,wCAAe;IACtC,IAAI,CAAC,MAAM;IACX,MAAM,UAAE,MAAM,EAAE,GAAG,MAAM,CAAA,GAAA,wCAAU;IACnC,MAAM,YAAE,QAAQ,UAAE,MAAM,WAAE,OAAO,EAAE,GAAG,MAAM,CAAA,GAAA,wCAAW;IACvD,MAAM,UAAoB,MAAM,CAAA,GAAA,wCAAU,EAAE,QAAQ,QAAQ;IAC5D,MAAM,WAAqB,MAAM,CAAA,GAAA,yCAAQ,EAAE,SAAS;IACpD,MAAM,CAAA,GAAA,yCAAY,EAAE,UAAU,QAAQ;IACtC,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC,CAAC,sBAAe,EAAE,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,yBAAyB,CAAC;IACjG,MAAM,CAAA,GAAA,wCAAO,EAAE;IACf,QAAQ,GAAG,CAAC;IACZ,MAAM,CAAA,GAAA,wCAAO,EAAE;AACjB;AACO,SAAS;IACd;AACF;AACO,SAAS;IACd;AACF","sources":["src/index.ts","src/helper/waittime.ts","src/pages/askQuestions.ts","src/main/question.ts","src/pages/cssDownload.ts","src/main/file-downloader.ts","src/main/dir-checker.ts","src/pages/fontsDownload.ts","src/main/font-extractor.ts","src/pages/versionCheck.ts","src/json/fonts.json","src/pages/noticeOfficial.ts"],"sourcesContent":["import waittime from \"./helper/waittime\"\nimport askQuestion from \"./pages/askQuestions\"\nimport cssDownload from \"./pages/cssDownload\"\nimport { downloadFonts, readFonts } from \"./pages/fontsDownload\"\nimport checkVersion from \"./pages/versionCheck\"\nimport unofficialNotice from \"./pages/noticeOfficial\"\n\nasync function startDownloader(): Promise<void> {\n await waittime(100)\n console.clear()\n const { isOk } = await unofficialNotice()\n if (!isOk) return\n const { useDir } = await askQuestion()\n const { fontlist, useVer, baseUrl } = await checkVersion()\n const cssUrls: string[] = await cssDownload(useVer, useDir, fontlist)\n const fontUrls: string[] = await readFonts(cssUrls, useDir)\n await downloadFonts(fontUrls, useDir, baseUrl)\n await waittime(1000)\n console.log(\"--------\")\n await waittime(1000)\n console.log(`✅ Font Awesome ${useVer.split(\".\")[0]} Pro Plus v${useVer} Downloaded Successfully!`)\n await waittime(1000)\n console.log(\"DONE\")\n await waittime(1000)\n}\nexport function getFontAwesomePro(): void {\n startDownloader()\n}\nexport function getFapro(): void {\n startDownloader()\n}\n","export default function waittime(ms: number = 500, n: number = 5): Promise<void> {\n return new Promise((resolve) => setTimeout(resolve, ms - n))\n}\n","import { question } from \"../main/question\"\nimport waittime from \"../helper/waittime\"\n\nexport default async function askQuestion(): Promise<{ useDir: string }> {\n console.log(\"--------\")\n await waittime(1000)\n console.log(\" \")\n await waittime(100)\n console.log(`Set the Download Path!`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(\"Download path can be \" + \"`path/to/your/public/folder`\" + \" or \" + \"`anything`\" + \".\")\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(\"if the path does not exist, it will be created automatically.\")\n await waittime(500)\n console.log(\"--------\")\n const dir = await question(`Enter download path: (fapro) `)\n const useDir = dir ? dir : \"fapro\"\n console.log(`${useDir}${dir ? \"\" : \" (default)\"}`)\n console.log(\"--------\")\n await waittime(750)\n console.log(\" \")\n console.log(\"Preparing Downloader\")\n await waittime(2250)\n console.log(\" \")\n return { useDir }\n}\n","import readline from \"readline\"\n\nexport function question(text: string): Promise<string> {\n return new Promise((resolve) => {\n const rl = readline.createInterface({\n input: process.stdin,\n output: process.stdout\n })\n rl.question(text, (anwer) => {\n resolve(anwer)\n rl.close()\n })\n })\n}\n","import { downloadFile, getDownloaded } from \"../main/file-downloader\"\nimport waittime from \"../helper/waittime\"\n\nexport default async function cssDownload(useVer: string, useDir: string, fontlist: string[]): Promise<string[]> {\n console.log(\"--------\")\n console.log(`🕗 Downloading All Stylesheets`)\n await waittime(1000)\n\n const dir = `${useDir}/css`\n\n for (let i = 0; i < fontlist.length; i++) {\n const url = fontlist[i]\n const progress = `[${i + 1}/${fontlist.length}]`\n await downloadFile(url, dir, progress)\n }\n console.log(\"✅ Stylesheets Downloaded\")\n await waittime(1000)\n return getDownloaded()\n}\n","import { Downloader } from \"nodejs-file-downloader\"\nimport { addDir } from \"./dir-checker\"\n\nlet filesDownloaded: string[] = []\n\nexport async function downloadFile(fileurl: string, filedir: string, progress: string | null = null): Promise<void> {\n await addDir(`${filedir}`)\n const downloader = new Downloader({\n url: fileurl,\n directory: `./${filedir}`,\n cloneFiles: false,\n headers: {\n // manipulate downloader ariving\n \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36\",\n\n // manipulate extension (for strict cdn)\n Accept: \"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8\",\n\n // anti-bot bypass\n \"Accept-Language\": \"en-US,en;q=0.9,id;q=0.8\",\n\n // anti-bot bypass\n Connection: \"keep-alive\",\n\n // anti-bot bypass\n \"Upgrade-Insecure-Requests\": \"1\",\n\n // same site bypass\n Referer: \"https://site-assets.fontawesome.com/\",\n Origin: \"https://site-assets.fontawesome.com\",\n\n // same site bypass\n \"Sec-Fetch-Dest\": \"document\",\n \"Sec-Fetch-Mode\": \"navigate\",\n \"Sec-Fetch-Site\": \"same-origin\",\n \"Sec-Fetch-User\": \"?1\",\n\n // anti-bot bypass\n \"sec-ch-ua\": '\"Chromium\";v=\"122\", \"Not(A:Brand\";v=\"24\", \"Google Chrome\";v=\"122\"',\n \"sec-ch-ua-mobile\": \"?0\",\n \"sec-ch-ua-platform\": '\"Windows\"'\n }\n })\n try {\n await downloader.download()\n const fileorigin = fileurl.split(\"/\")\n const filename = fileorigin[fileorigin.length - 1]\n console.log(`🚀 ${progress ? progress + \" \" : \"\"}${filename}`)\n filesDownloaded.push(filename)\n } catch (_error) {\n console.error(\"The version you wanted to download is not available. Please use other release version.\")\n }\n}\nexport function getDownloaded(): string[] {\n const files: string[] = [...filesDownloaded]\n filesDownloaded = []\n return files\n}\n","import fs from \"fs\"\nimport waittime from \"../helper/waittime\"\n\nexport async function addDir(dirpath: string): Promise<void> {\n let curpath = \".\"\n const dirs: string[] = dirpath.split(\"/\")\n\n for (const dir of dirs) {\n curpath += `/${dir}`\n if (!fs.existsSync(curpath)) {\n fs.mkdirSync(curpath)\n await waittime(100)\n }\n }\n}\n","import { addDir } from \"../main/dir-checker\"\nimport waittime from \"../helper/waittime\"\nimport { extractFont, getFonts } from \"../main/font-extractor\"\nimport { downloadFile } from \"../main/file-downloader\"\n\nexport async function readFonts(sheets: string[], useDir: string): Promise<string[]> {\n console.log(\"--------\")\n console.log(\"🕗 Reading Available Webfonts\")\n const dir = `${useDir}/css`\n for (const sheet of sheets) {\n await extractFont(sheet, dir)\n }\n const fonts = getFonts()\n console.log(\"✅ Found \" + fonts.length.toString() + \" Webfonts\")\n await waittime(1000)\n return fonts\n}\nexport async function downloadFonts(fonts: string[], filedir: string, baseUrl: string): Promise<void> {\n const dir = `${filedir}/webfonts`\n await addDir(dir)\n const fonturl = baseUrl\n console.log(\"--------\")\n console.log(\"🕗 Downloading All Webfonts\")\n await waittime(1000)\n for (let i = 0; i < fonts.length; i++) {\n const font = fonts[i].replace(\"..\", \"\")\n const url = `${fonturl}${font}`\n const progress = `[${i + 1}/${fonts.length}]`\n await downloadFile(url, dir, progress)\n }\n console.log(\"✅ Webfonts Downloaded\")\n}\n","import fs from \"fs\"\nimport postcss from \"postcss\"\nimport safeParser from \"postcss-safe-parser\"\n\nlet fontUrls: string[] = []\n\nexport async function extractFont(filename: string, filedir: string): Promise<void> {\n const css = fs.readFileSync(`./${filedir}/${filename}`, \"utf8\")\n postcss()\n .process(css, { parser: safeParser, from: undefined })\n .then((result) => {\n result.root.walkAtRules(\"font-face\", (rule) => {\n rule.walkDecls(\"src\", (decl) => {\n const matches = decl.value.match(/url\\(([^)]+)\\)/g)\n if (matches) {\n matches.forEach((url) => {\n const cleanUrl = url.replace(/url\\([\"']?/, \"\").replace(/[\"']?\\)/, \"\")\n fontUrls.push(cleanUrl)\n })\n }\n })\n })\n })\n}\n\nexport function getFonts(): string[] {\n const fixedFonts: string[] = [...fontUrls]\n fontUrls = []\n return fixedFonts\n}\n","import { Ver } from \"./fa.types\"\nimport defVer from \"../json/fonts.json\"\nimport waittime from \"../helper/waittime\"\n\nasync function getVersion(): Promise<Ver> {\n const url = `https://raw.githubusercontent.com/devanka761/webfont-awesome-pro/refs/heads/master/src/json/fonts.json?ts=${Date.now().toString(36)}`\n\n return await fetch(url, {\n method: \"GET\"\n })\n .then((res) => res.json())\n .then((res) => {\n console.log(`✅ Found: v${res.version}`)\n return res\n })\n .catch(() => {\n console.log(`⛔ Error getting the latest version!`)\n console.log(`⛔ Forced Using v${defVer.version}`)\n return defVer\n })\n}\n\nexport default async function checkVersion(): Promise<{ fontlist: string[]; useVer: string; baseUrl: string }> {\n console.log(\"--------\")\n console.log(\"🕗 Checking Latest Version\")\n await waittime(1000)\n const curFonts = await getVersion()\n await waittime(100)\n console.log(\"--------\")\n await waittime(1000)\n console.log(\" \")\n console.log(`Downloading Version ${curFonts.version} of Font Awesome ${curFonts.version.split(\".\")[0]} Pro Plus`)\n await waittime(1000)\n console.log(\" \")\n console.log(\"--------\")\n await waittime(100)\n console.log(\"🕗 Reading Available Stylesheets\")\n await waittime(500)\n const fontlist = curFonts.css.map((file) => `${curFonts.root}/css/${file}`)\n console.log(\"✅ Found \" + fontlist.length.toString() + \" Sytlesheets\")\n await waittime(1000)\n return { fontlist, useVer: curFonts.version, baseUrl: curFonts.root }\n}\n","{\n \"version\": \"7.3.0\",\n \"root\": \"https://site-assets.fontawesome.com/releases/v7.3.0\",\n \"css\": [\n \"fontawesome.css\",\n \"jelly-duo-regular.css\",\n \"sharp-duotone-regular.css\",\n \"graphite-thin.css\",\n \"whiteboard-semibold.css\",\n \"jelly-fill-regular.css\",\n \"slab-duo-regular.css\",\n \"duotone-light.css\",\n \"sharp-duotone-light.css\",\n \"notdog-duo-solid.css\",\n \"slab-regular.css\",\n \"sharp-thin.css\",\n \"utility-fill-semibold.css\",\n \"light.css\",\n \"duotone.css\",\n \"pixel-regular.css\",\n \"thin.css\",\n \"utility-semibold.css\",\n \"solid.css\",\n \"vellum-solid.css\",\n \"sharp-solid.css\",\n \"sharp-duotone-thin.css\",\n \"sharp-duotone-solid.css\",\n \"thumbprint-light.css\",\n \"utility-duo-semibold.css\",\n \"etch-solid.css\",\n \"duotone-regular.css\",\n \"jelly-regular.css\",\n \"sharp-light.css\",\n \"brands.css\",\n \"chisel-regular.css\",\n \"regular.css\",\n \"sharp-regular.css\",\n \"mosaic-solid.css\",\n \"duotone-thin.css\",\n \"notdog-solid.css\",\n \"slab-press-duo-regular.css\",\n \"slab-press-regular.css\"\n ]\n}","import waittime from \"../helper/waittime\"\nimport { question } from \"../main/question\"\n\nexport default async function unofficialNotice(): Promise<{ isOk: boolean }> {\n console.log(\"Font Awesome Pro Plus Downloader | Devanka761\")\n await waittime(500)\n console.log(\"\")\n console.log(\"--------\")\n console.log(`Font Awesome Pro Plus Downloader was made for educational purposes only!`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`This downloader provides Paid (Pro Plus) Version for the latest Official Package. It is intended for experimental and personal use only. It is licensed for commercial use.`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`DO NOT use this downloader if you are not a Creator or you have never buy the official product from the official website.`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(100)\n console.log(`To unlock commercial use for your own projects, and get an official product license, please consider to go to the Font Awesome webiste: https://fontawesome.com/plans`)\n await waittime(100)\n console.log(\"--------\")\n await waittime(500)\n let agree = await question(`Continue to download? (Y/n) `)\n agree = agree ? agree.toLowerCase() : \"y\"\n const notAgrees = [\"no\", \"n\", \"nope\"]\n const isOk = notAgrees.find((textNo) => textNo === agree) ? false : true\n console.log(isOk ? \"y\" : \"n\")\n if (!isOk) {\n console.log(\"--------\")\n await waittime(1000)\n console.log(\"⛔ Font Awesome Pro Plus Downloader Canceled\")\n await waittime(1000)\n console.log(\"DONE\")\n }\n\n return { isOk }\n}\n"],"names":[],"version":3,"file":"module.mjs.map","sourceRoot":"../"}
@@ -0,0 +1 @@
1
+ @use "webfont-awesome-pro/css/mosaic-solid.css";
@@ -0,0 +1 @@
1
+ @use "webfont-awesome-pro/css/pixel-regular.css";
@@ -0,0 +1 @@
1
+ @use "webfont-awesome-pro/css/slab-duo-regular.css";
@@ -0,0 +1 @@
1
+ @use "webfont-awesome-pro/css/slab-press-duo-regular.css";
@@ -0,0 +1 @@
1
+ @use "webfont-awesome-pro/css/vellum-solid.css";
@@ -0,0 +1,5 @@
1
+ export default function devCheckVersion(): Promise<{
2
+ fontlist: string[];
3
+ useVer: string;
4
+ baseUrl: string;
5
+ }>;
@@ -0,0 +1 @@
1
+ export declare function createRelease(useDir: string, cssUrls: string[]): Promise<void>;
@@ -0,0 +1 @@
1
+ export {};
package/dist/webfapro.js CHANGED
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import o from"readline";import{Downloader as e}from"nodejs-file-downloader";import s from"fs";import t from"postcss";import l from"postcss-safe-parser";function a(o){return o&&o.__esModule?o.default:o}function n(o=500,e=5){return new Promise(s=>setTimeout(s,o-e))}function i(e){return new Promise(s=>{let t=o.createInterface({input:process.stdin,output:process.stdout});t.question(e,o=>{s(o),t.close()})})}async function c(){console.log("--------"),await n(1e3),console.log(" "),await n(100),console.log("Set the Download Path!"),await n(100),console.log("--------"),await n(100),console.log("Download path can be `path/to/your/public/folder` or `anything`."),await n(100),console.log("--------"),await n(100),console.log("if the path does not exist, it will be created automatically."),await n(500),console.log("--------");let o=await i("Enter download path: (fapro) "),e=o||"fapro";return console.log(`${e}${o?"":" (default)"}`),console.log("--------"),await n(750),console.log(" "),console.log("Preparing Downloader"),await n(2250),console.log(" "),{useDir:e}}async function r(o){let e=".";for(let t of o.split("/"))e+=`/${t}`,s.existsSync(e)||(s.mkdirSync(e),await n(100))}let u=[];async function g(o,s,t=null){await r(`${s}`);let l=new e({url:o,directory:`./${s}`,cloneFiles:!1,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8","Accept-Language":"en-US,en;q=0.9,id;q=0.8",Connection:"keep-alive","Upgrade-Insecure-Requests":"1",Referer:"https://site-assets.fontawesome.com/",Origin:"https://site-assets.fontawesome.com","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin","Sec-Fetch-User":"?1","sec-ch-ua":'"Chromium";v="122", "Not(A:Brand";v="24", "Google Chrome";v="122"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"'}});try{await l.download();let e=o.split("/"),s=e[e.length-1];console.log(`\u{1F680} ${t?t+" ":""}${s}`),u.push(s)}catch(o){throw Error("The version you wanted to download is not available. Please use other release version.")}}async function w(o,e,s){let t;console.log("--------"),console.log("🕗 Downloading All Stylesheets"),await n(1e3);let l=`${e}/css`;for(let o=0;o<s.length;o++){let e=s[o],t=`[${o+1}/${s.length}]`;await g(e,l,t)}return console.log("✅ Stylesheets Downloaded"),await n(1e3),t=[...u],u=[],t}let d=[];async function h(o,e){let a=s.readFileSync(`./${e}/${o}`,"utf8");t().process(a,{parser:l,from:void 0}).then(o=>{o.root.walkAtRules("font-face",o=>{o.walkDecls("src",o=>{let e=o.value.match(/url\(([^)]+)\)/g);e&&e.forEach(o=>{let e=o.replace(/url\(["']?/,"").replace(/["']?\)/,"");d.push(e)})})})})}async function f(o,e){let s;console.log("--------"),console.log("🕗 Reading Available Webfonts");let t=`${e}/css`;for(let e of o)await h(e,t);let l=(s=[...d],d=[],s);return console.log("✅ Found "+l.length.toString()+" Webfonts"),await n(1e3),l}async function p(o,e,s){let t=`${e}/webfonts`;await r(t),console.log("--------"),console.log("🕗 Downloading All Webfonts"),await n(1e3);for(let e=0;e<o.length;e++){let l=o[e].replace("..",""),a=`${s}${l}`,n=`[${e+1}/${o.length}]`;await g(a,t,n)}console.log("✅ Webfonts Downloaded")}var m={};async function y(){let o=`https://raw.githubusercontent.com/devanka761/webfont-awesome-pro/refs/heads/master/src/json/fonts.json?ts=${Date.now().toString(36)}`;return await fetch(o,{method:"GET"}).then(o=>o.json()).then(o=>(console.log(`\u{2705} Found: v${o.version}`),o)).catch(()=>(console.log("⛔ Error getting the latest version!"),console.log(`\u{26D4} Forced Using v${a(m).version}`),a(m)))}async function b(){console.log("--------"),console.log("🕗 Checking Latest Version"),await n(1e3);let o=await y();await n(100),console.log("--------"),await n(1e3),console.log(" "),console.log(`Downloading Version ${o.version} of Font Awesome ${o.version.split(".")[0]} Pro Plus`),await n(1e3),console.log(" "),console.log("--------"),await n(100),console.log("🕗 Reading Available Stylesheets"),await n(500);let e=o.css.map(e=>`${o.root}/css/${e}`);return console.log("✅ Found "+e.length.toString()+" Sytlesheets"),await n(1e3),{fontlist:e,useVer:o.version,baseUrl:o.root}}async function v(){console.log("Font Awesome Pro Plus Downloader | Devanka761"),await n(500),console.log(""),console.log("--------"),console.log("Font Awesome Pro Plus Downloader was made for educational purposes only!"),await n(100),console.log("--------"),await n(100),console.log("This downloader provides Paid (Pro Plus) Version for the latest Official Package. It is intended for experimental and personal use only. It is licensed for commercial use."),await n(100),console.log("--------"),await n(100),console.log("DO NOT use this downloader if you are not a Creator or you have never buy the official product from the official website."),await n(100),console.log("--------"),await n(100),console.log("To unlock commercial use for your own projects, and get an official product license, please consider to go to the Font Awesome webiste: https://fontawesome.com/plans"),await n(100),console.log("--------"),await n(500);let o=await i("Continue to download? (Y/n) ");o=o?o.toLowerCase():"y";let e=!["no","n","nope"].find(e=>e===o);return console.log(e?"y":"n"),e||(console.log("--------"),await n(1e3),console.log("⛔ Font Awesome Pro Plus Downloader Canceled"),await n(1e3),console.log("DONE")),{isOk:e}}async function $(){await n(100),console.clear();let{isOk:o}=await v();if(!o)return;let{useDir:e}=await c(),{fontlist:s,useVer:t,baseUrl:l}=await b(),a=await w(t,e,s),i=await f(a,e);await p(i,e,l),await n(1e3),console.log("--------"),await n(1e3),console.log(`\u{2705} Font Awesome ${t.split(".")[0]} Pro Plus v${t} Downloaded Successfully!`),await n(1e3),console.log("DONE"),await n(1e3)}m=JSON.parse('{"version":"7.2.0","root":"https://site-assets.fontawesome.com/releases/v7.2.0","css":["fontawesome.css","brands.css","chisel-regular.css","duotone-light.css","duotone-regular.css","duotone-thin.css","duotone.css","etch-solid.css","graphite-thin.css","jelly-duo-regular.css","jelly-fill-regular.css","jelly-regular.css","light.css","notdog-duo-solid.css","notdog-solid.css","regular.css","sharp-duotone-light.css","sharp-duotone-regular.css","sharp-duotone-solid.css","sharp-duotone-thin.css","sharp-light.css","sharp-regular.css","sharp-solid.css","sharp-thin.css","slab-press-regular.css","slab-regular.css","solid.css","thin.css","thumbprint-light.css","utility-duo-semibold.css","utility-fill-semibold.css","utility-semibold.css","whiteboard-semibold.css"]}'),$();
2
+ import o from"readline";import{Downloader as e}from"nodejs-file-downloader";import s from"fs";import t from"postcss";import l from"postcss-safe-parser";function a(o){return o&&o.__esModule?o.default:o}function n(o=500,e=5){return new Promise(s=>setTimeout(s,o-e))}function i(e){return new Promise(s=>{let t=o.createInterface({input:process.stdin,output:process.stdout});t.question(e,o=>{s(o),t.close()})})}async function c(){console.log("--------"),await n(1e3),console.log(" "),await n(100),console.log("Set the Download Path!"),await n(100),console.log("--------"),await n(100),console.log("Download path can be `path/to/your/public/folder` or `anything`."),await n(100),console.log("--------"),await n(100),console.log("if the path does not exist, it will be created automatically."),await n(500),console.log("--------");let o=await i("Enter download path: (fapro) "),e=o||"fapro";return console.log(`${e}${o?"":" (default)"}`),console.log("--------"),await n(750),console.log(" "),console.log("Preparing Downloader"),await n(2250),console.log(" "),{useDir:e}}async function r(o){let e=".";for(let t of o.split("/"))e+=`/${t}`,s.existsSync(e)||(s.mkdirSync(e),await n(100))}let u=[];async function g(o,s,t=null){await r(`${s}`);let l=new e({url:o,directory:`./${s}`,cloneFiles:!1,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8","Accept-Language":"en-US,en;q=0.9,id;q=0.8",Connection:"keep-alive","Upgrade-Insecure-Requests":"1",Referer:"https://site-assets.fontawesome.com/",Origin:"https://site-assets.fontawesome.com","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin","Sec-Fetch-User":"?1","sec-ch-ua":'"Chromium";v="122", "Not(A:Brand";v="24", "Google Chrome";v="122"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":'"Windows"'}});try{await l.download();let e=o.split("/"),s=e[e.length-1];console.log(`\u{1F680} ${t?t+" ":""}${s}`),u.push(s)}catch(o){console.error("The version you wanted to download is not available. Please use other release version.")}}async function d(o,e,s){let t;console.log("--------"),console.log("🕗 Downloading All Stylesheets"),await n(1e3);let l=`${e}/css`;for(let o=0;o<s.length;o++){let e=s[o],t=`[${o+1}/${s.length}]`;await g(e,l,t)}return console.log("✅ Stylesheets Downloaded"),await n(1e3),t=[...u],u=[],t}let w=[];async function h(o,e){let a=s.readFileSync(`./${e}/${o}`,"utf8");t().process(a,{parser:l,from:void 0}).then(o=>{o.root.walkAtRules("font-face",o=>{o.walkDecls("src",o=>{let e=o.value.match(/url\(([^)]+)\)/g);e&&e.forEach(o=>{let e=o.replace(/url\(["']?/,"").replace(/["']?\)/,"");w.push(e)})})})})}async function f(o,e){let s;console.log("--------"),console.log("🕗 Reading Available Webfonts");let t=`${e}/css`;for(let e of o)await h(e,t);let l=(s=[...w],w=[],s);return console.log("✅ Found "+l.length.toString()+" Webfonts"),await n(1e3),l}async function p(o,e,s){let t=`${e}/webfonts`;await r(t),console.log("--------"),console.log("🕗 Downloading All Webfonts"),await n(1e3);for(let e=0;e<o.length;e++){let l=o[e].replace("..",""),a=`${s}${l}`,n=`[${e+1}/${o.length}]`;await g(a,t,n)}console.log("✅ Webfonts Downloaded")}var m={};async function y(){let o=`https://raw.githubusercontent.com/devanka761/webfont-awesome-pro/refs/heads/master/src/json/fonts.json?ts=${Date.now().toString(36)}`;return await fetch(o,{method:"GET"}).then(o=>o.json()).then(o=>(console.log(`\u{2705} Found: v${o.version}`),o)).catch(()=>(console.log("⛔ Error getting the latest version!"),console.log(`\u{26D4} Forced Using v${a(m).version}`),a(m)))}async function b(){console.log("--------"),console.log("🕗 Checking Latest Version"),await n(1e3);let o=await y();await n(100),console.log("--------"),await n(1e3),console.log(" "),console.log(`Downloading Version ${o.version} of Font Awesome ${o.version.split(".")[0]} Pro Plus`),await n(1e3),console.log(" "),console.log("--------"),await n(100),console.log("🕗 Reading Available Stylesheets"),await n(500);let e=o.css.map(e=>`${o.root}/css/${e}`);return console.log("✅ Found "+e.length.toString()+" Sytlesheets"),await n(1e3),{fontlist:e,useVer:o.version,baseUrl:o.root}}async function v(){console.log("Font Awesome Pro Plus Downloader | Devanka761"),await n(500),console.log(""),console.log("--------"),console.log("Font Awesome Pro Plus Downloader was made for educational purposes only!"),await n(100),console.log("--------"),await n(100),console.log("This downloader provides Paid (Pro Plus) Version for the latest Official Package. It is intended for experimental and personal use only. It is licensed for commercial use."),await n(100),console.log("--------"),await n(100),console.log("DO NOT use this downloader if you are not a Creator or you have never buy the official product from the official website."),await n(100),console.log("--------"),await n(100),console.log("To unlock commercial use for your own projects, and get an official product license, please consider to go to the Font Awesome webiste: https://fontawesome.com/plans"),await n(100),console.log("--------"),await n(500);let o=await i("Continue to download? (Y/n) ");o=o?o.toLowerCase():"y";let e=!["no","n","nope"].find(e=>e===o);return console.log(e?"y":"n"),e||(console.log("--------"),await n(1e3),console.log("⛔ Font Awesome Pro Plus Downloader Canceled"),await n(1e3),console.log("DONE")),{isOk:e}}async function $(){await n(100),console.clear();let{isOk:o}=await v();if(!o)return;let{useDir:e}=await c(),{fontlist:s,useVer:t,baseUrl:l}=await b(),a=await d(t,e,s),i=await f(a,e);await p(i,e,l),await n(1e3),console.log("--------"),await n(1e3),console.log(`\u{2705} Font Awesome ${t.split(".")[0]} Pro Plus v${t} Downloaded Successfully!`),await n(1e3),console.log("DONE"),await n(1e3)}m=JSON.parse('{"version":"7.3.0","root":"https://site-assets.fontawesome.com/releases/v7.3.0","css":["fontawesome.css","jelly-duo-regular.css","sharp-duotone-regular.css","graphite-thin.css","whiteboard-semibold.css","jelly-fill-regular.css","slab-duo-regular.css","duotone-light.css","sharp-duotone-light.css","notdog-duo-solid.css","slab-regular.css","sharp-thin.css","utility-fill-semibold.css","light.css","duotone.css","pixel-regular.css","thin.css","utility-semibold.css","solid.css","vellum-solid.css","sharp-solid.css","sharp-duotone-thin.css","sharp-duotone-solid.css","thumbprint-light.css","utility-duo-semibold.css","etch-solid.css","duotone-regular.css","jelly-regular.css","sharp-light.css","brands.css","chisel-regular.css","regular.css","sharp-regular.css","mosaic-solid.css","duotone-thin.css","notdog-solid.css","slab-press-duo-regular.css","slab-press-regular.css"]}'),$();
3
3
  //# sourceMappingURL=webfapro.js.map