phlex-icons-flag 2.18.0 → 2.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (555) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +5 -1
  3. data/README.md +44 -0
  4. data/generators/flag.rb +1 -1
  5. data/generators/hero.rb +1 -1
  6. data/generators/tabler.rb +1 -1
  7. data/lib/phlex-icons/configuration.rb +24 -1
  8. data/lib/phlex-icons/flag/ad_rectangle.rb +1 -1
  9. data/lib/phlex-icons/flag/ad_square.rb +1 -1
  10. data/lib/phlex-icons/flag/ae_rectangle.rb +1 -1
  11. data/lib/phlex-icons/flag/ae_square.rb +1 -1
  12. data/lib/phlex-icons/flag/af_rectangle.rb +1 -1
  13. data/lib/phlex-icons/flag/af_square.rb +1 -1
  14. data/lib/phlex-icons/flag/ag_rectangle.rb +1 -1
  15. data/lib/phlex-icons/flag/ag_square.rb +1 -1
  16. data/lib/phlex-icons/flag/ai_rectangle.rb +1 -1
  17. data/lib/phlex-icons/flag/ai_square.rb +1 -1
  18. data/lib/phlex-icons/flag/al_rectangle.rb +1 -1
  19. data/lib/phlex-icons/flag/al_square.rb +1 -1
  20. data/lib/phlex-icons/flag/am_rectangle.rb +1 -1
  21. data/lib/phlex-icons/flag/am_square.rb +1 -1
  22. data/lib/phlex-icons/flag/ao_rectangle.rb +1 -1
  23. data/lib/phlex-icons/flag/ao_square.rb +1 -1
  24. data/lib/phlex-icons/flag/aq_rectangle.rb +1 -1
  25. data/lib/phlex-icons/flag/aq_square.rb +1 -1
  26. data/lib/phlex-icons/flag/ar_rectangle.rb +1 -1
  27. data/lib/phlex-icons/flag/ar_square.rb +1 -1
  28. data/lib/phlex-icons/flag/arab_rectangle.rb +1 -1
  29. data/lib/phlex-icons/flag/arab_square.rb +1 -1
  30. data/lib/phlex-icons/flag/as_rectangle.rb +1 -1
  31. data/lib/phlex-icons/flag/as_square.rb +1 -1
  32. data/lib/phlex-icons/flag/asean_rectangle.rb +1 -1
  33. data/lib/phlex-icons/flag/asean_square.rb +1 -1
  34. data/lib/phlex-icons/flag/at_rectangle.rb +1 -1
  35. data/lib/phlex-icons/flag/at_square.rb +1 -1
  36. data/lib/phlex-icons/flag/au_rectangle.rb +1 -1
  37. data/lib/phlex-icons/flag/au_square.rb +1 -1
  38. data/lib/phlex-icons/flag/aw_rectangle.rb +1 -1
  39. data/lib/phlex-icons/flag/aw_square.rb +1 -1
  40. data/lib/phlex-icons/flag/ax_rectangle.rb +1 -1
  41. data/lib/phlex-icons/flag/ax_square.rb +1 -1
  42. data/lib/phlex-icons/flag/az_rectangle.rb +1 -1
  43. data/lib/phlex-icons/flag/az_square.rb +1 -1
  44. data/lib/phlex-icons/flag/ba_rectangle.rb +1 -1
  45. data/lib/phlex-icons/flag/ba_square.rb +1 -1
  46. data/lib/phlex-icons/flag/bb_rectangle.rb +1 -1
  47. data/lib/phlex-icons/flag/bb_square.rb +1 -1
  48. data/lib/phlex-icons/flag/bd_rectangle.rb +1 -1
  49. data/lib/phlex-icons/flag/bd_square.rb +1 -1
  50. data/lib/phlex-icons/flag/be_rectangle.rb +1 -1
  51. data/lib/phlex-icons/flag/be_square.rb +1 -1
  52. data/lib/phlex-icons/flag/bf_rectangle.rb +1 -1
  53. data/lib/phlex-icons/flag/bf_square.rb +1 -1
  54. data/lib/phlex-icons/flag/bg_rectangle.rb +1 -1
  55. data/lib/phlex-icons/flag/bg_square.rb +1 -1
  56. data/lib/phlex-icons/flag/bh_rectangle.rb +1 -1
  57. data/lib/phlex-icons/flag/bh_square.rb +1 -1
  58. data/lib/phlex-icons/flag/bi_rectangle.rb +1 -1
  59. data/lib/phlex-icons/flag/bi_square.rb +1 -1
  60. data/lib/phlex-icons/flag/bj_rectangle.rb +1 -1
  61. data/lib/phlex-icons/flag/bj_square.rb +1 -1
  62. data/lib/phlex-icons/flag/bl_rectangle.rb +1 -1
  63. data/lib/phlex-icons/flag/bl_square.rb +1 -1
  64. data/lib/phlex-icons/flag/bm_rectangle.rb +1 -1
  65. data/lib/phlex-icons/flag/bm_square.rb +1 -1
  66. data/lib/phlex-icons/flag/bn_rectangle.rb +1 -1
  67. data/lib/phlex-icons/flag/bn_square.rb +1 -1
  68. data/lib/phlex-icons/flag/bo_rectangle.rb +1 -1
  69. data/lib/phlex-icons/flag/bo_square.rb +1 -1
  70. data/lib/phlex-icons/flag/bq_rectangle.rb +1 -1
  71. data/lib/phlex-icons/flag/bq_square.rb +1 -1
  72. data/lib/phlex-icons/flag/br_rectangle.rb +1 -1
  73. data/lib/phlex-icons/flag/br_square.rb +1 -1
  74. data/lib/phlex-icons/flag/bs_rectangle.rb +1 -1
  75. data/lib/phlex-icons/flag/bs_square.rb +1 -1
  76. data/lib/phlex-icons/flag/bt_rectangle.rb +1 -1
  77. data/lib/phlex-icons/flag/bt_square.rb +1 -1
  78. data/lib/phlex-icons/flag/bv_rectangle.rb +1 -1
  79. data/lib/phlex-icons/flag/bv_square.rb +1 -1
  80. data/lib/phlex-icons/flag/bw_rectangle.rb +1 -1
  81. data/lib/phlex-icons/flag/bw_square.rb +1 -1
  82. data/lib/phlex-icons/flag/by_rectangle.rb +1 -1
  83. data/lib/phlex-icons/flag/by_square.rb +1 -1
  84. data/lib/phlex-icons/flag/bz_rectangle.rb +1 -1
  85. data/lib/phlex-icons/flag/bz_square.rb +1 -1
  86. data/lib/phlex-icons/flag/ca_rectangle.rb +1 -1
  87. data/lib/phlex-icons/flag/ca_square.rb +1 -1
  88. data/lib/phlex-icons/flag/cc_rectangle.rb +1 -1
  89. data/lib/phlex-icons/flag/cc_square.rb +1 -1
  90. data/lib/phlex-icons/flag/cd_rectangle.rb +1 -1
  91. data/lib/phlex-icons/flag/cd_square.rb +1 -1
  92. data/lib/phlex-icons/flag/cefta_rectangle.rb +1 -1
  93. data/lib/phlex-icons/flag/cefta_square.rb +1 -1
  94. data/lib/phlex-icons/flag/cf_rectangle.rb +1 -1
  95. data/lib/phlex-icons/flag/cf_square.rb +1 -1
  96. data/lib/phlex-icons/flag/cg_rectangle.rb +1 -1
  97. data/lib/phlex-icons/flag/cg_square.rb +1 -1
  98. data/lib/phlex-icons/flag/ch_rectangle.rb +1 -1
  99. data/lib/phlex-icons/flag/ch_square.rb +1 -1
  100. data/lib/phlex-icons/flag/ci_rectangle.rb +1 -1
  101. data/lib/phlex-icons/flag/ci_square.rb +1 -1
  102. data/lib/phlex-icons/flag/ck_rectangle.rb +1 -1
  103. data/lib/phlex-icons/flag/ck_square.rb +1 -1
  104. data/lib/phlex-icons/flag/cl_rectangle.rb +1 -1
  105. data/lib/phlex-icons/flag/cl_square.rb +1 -1
  106. data/lib/phlex-icons/flag/cm_rectangle.rb +1 -1
  107. data/lib/phlex-icons/flag/cm_square.rb +1 -1
  108. data/lib/phlex-icons/flag/cn_rectangle.rb +1 -1
  109. data/lib/phlex-icons/flag/cn_square.rb +1 -1
  110. data/lib/phlex-icons/flag/co_rectangle.rb +1 -1
  111. data/lib/phlex-icons/flag/co_square.rb +1 -1
  112. data/lib/phlex-icons/flag/cp_rectangle.rb +1 -1
  113. data/lib/phlex-icons/flag/cp_square.rb +1 -1
  114. data/lib/phlex-icons/flag/cr_rectangle.rb +1 -1
  115. data/lib/phlex-icons/flag/cr_square.rb +1 -1
  116. data/lib/phlex-icons/flag/cu_rectangle.rb +1 -1
  117. data/lib/phlex-icons/flag/cu_square.rb +1 -1
  118. data/lib/phlex-icons/flag/cv_rectangle.rb +1 -1
  119. data/lib/phlex-icons/flag/cv_square.rb +1 -1
  120. data/lib/phlex-icons/flag/cw_rectangle.rb +1 -1
  121. data/lib/phlex-icons/flag/cw_square.rb +1 -1
  122. data/lib/phlex-icons/flag/cx_rectangle.rb +1 -1
  123. data/lib/phlex-icons/flag/cx_square.rb +1 -1
  124. data/lib/phlex-icons/flag/cy_rectangle.rb +1 -1
  125. data/lib/phlex-icons/flag/cy_square.rb +1 -1
  126. data/lib/phlex-icons/flag/cz_rectangle.rb +1 -1
  127. data/lib/phlex-icons/flag/cz_square.rb +1 -1
  128. data/lib/phlex-icons/flag/de_rectangle.rb +1 -1
  129. data/lib/phlex-icons/flag/de_square.rb +1 -1
  130. data/lib/phlex-icons/flag/dg_rectangle.rb +1 -1
  131. data/lib/phlex-icons/flag/dg_square.rb +1 -1
  132. data/lib/phlex-icons/flag/dj_rectangle.rb +1 -1
  133. data/lib/phlex-icons/flag/dj_square.rb +1 -1
  134. data/lib/phlex-icons/flag/dk_rectangle.rb +1 -1
  135. data/lib/phlex-icons/flag/dk_square.rb +1 -1
  136. data/lib/phlex-icons/flag/dm_rectangle.rb +1 -1
  137. data/lib/phlex-icons/flag/dm_square.rb +1 -1
  138. data/lib/phlex-icons/flag/do_rectangle.rb +1 -1
  139. data/lib/phlex-icons/flag/do_square.rb +1 -1
  140. data/lib/phlex-icons/flag/dz_rectangle.rb +1 -1
  141. data/lib/phlex-icons/flag/dz_square.rb +1 -1
  142. data/lib/phlex-icons/flag/eac_rectangle.rb +1 -1
  143. data/lib/phlex-icons/flag/eac_square.rb +1 -1
  144. data/lib/phlex-icons/flag/ec_rectangle.rb +1 -1
  145. data/lib/phlex-icons/flag/ec_square.rb +1 -1
  146. data/lib/phlex-icons/flag/ee_rectangle.rb +1 -1
  147. data/lib/phlex-icons/flag/ee_square.rb +1 -1
  148. data/lib/phlex-icons/flag/eg_rectangle.rb +1 -1
  149. data/lib/phlex-icons/flag/eg_square.rb +1 -1
  150. data/lib/phlex-icons/flag/eh_rectangle.rb +1 -1
  151. data/lib/phlex-icons/flag/eh_square.rb +1 -1
  152. data/lib/phlex-icons/flag/er_rectangle.rb +1 -1
  153. data/lib/phlex-icons/flag/er_square.rb +1 -1
  154. data/lib/phlex-icons/flag/es_ct_rectangle.rb +1 -1
  155. data/lib/phlex-icons/flag/es_ct_square.rb +1 -1
  156. data/lib/phlex-icons/flag/es_ga_rectangle.rb +1 -1
  157. data/lib/phlex-icons/flag/es_ga_square.rb +1 -1
  158. data/lib/phlex-icons/flag/es_pv_rectangle.rb +1 -1
  159. data/lib/phlex-icons/flag/es_pv_square.rb +1 -1
  160. data/lib/phlex-icons/flag/es_rectangle.rb +1 -1
  161. data/lib/phlex-icons/flag/es_square.rb +1 -1
  162. data/lib/phlex-icons/flag/et_rectangle.rb +1 -1
  163. data/lib/phlex-icons/flag/et_square.rb +1 -1
  164. data/lib/phlex-icons/flag/eu_rectangle.rb +1 -1
  165. data/lib/phlex-icons/flag/eu_square.rb +1 -1
  166. data/lib/phlex-icons/flag/fi_rectangle.rb +1 -1
  167. data/lib/phlex-icons/flag/fi_square.rb +1 -1
  168. data/lib/phlex-icons/flag/fj_rectangle.rb +1 -1
  169. data/lib/phlex-icons/flag/fj_square.rb +1 -1
  170. data/lib/phlex-icons/flag/fk_rectangle.rb +1 -1
  171. data/lib/phlex-icons/flag/fk_square.rb +1 -1
  172. data/lib/phlex-icons/flag/fm_rectangle.rb +1 -1
  173. data/lib/phlex-icons/flag/fm_square.rb +1 -1
  174. data/lib/phlex-icons/flag/fo_rectangle.rb +1 -1
  175. data/lib/phlex-icons/flag/fo_square.rb +1 -1
  176. data/lib/phlex-icons/flag/fr_rectangle.rb +1 -1
  177. data/lib/phlex-icons/flag/fr_square.rb +1 -1
  178. data/lib/phlex-icons/flag/ga_rectangle.rb +1 -1
  179. data/lib/phlex-icons/flag/ga_square.rb +1 -1
  180. data/lib/phlex-icons/flag/gb_eng_rectangle.rb +1 -1
  181. data/lib/phlex-icons/flag/gb_eng_square.rb +1 -1
  182. data/lib/phlex-icons/flag/gb_nir_rectangle.rb +1 -1
  183. data/lib/phlex-icons/flag/gb_nir_square.rb +1 -1
  184. data/lib/phlex-icons/flag/gb_rectangle.rb +1 -1
  185. data/lib/phlex-icons/flag/gb_sct_rectangle.rb +1 -1
  186. data/lib/phlex-icons/flag/gb_sct_square.rb +1 -1
  187. data/lib/phlex-icons/flag/gb_square.rb +1 -1
  188. data/lib/phlex-icons/flag/gb_wls_rectangle.rb +1 -1
  189. data/lib/phlex-icons/flag/gb_wls_square.rb +1 -1
  190. data/lib/phlex-icons/flag/gd_rectangle.rb +1 -1
  191. data/lib/phlex-icons/flag/gd_square.rb +1 -1
  192. data/lib/phlex-icons/flag/ge_rectangle.rb +1 -1
  193. data/lib/phlex-icons/flag/ge_square.rb +1 -1
  194. data/lib/phlex-icons/flag/gf_rectangle.rb +1 -1
  195. data/lib/phlex-icons/flag/gf_square.rb +1 -1
  196. data/lib/phlex-icons/flag/gg_rectangle.rb +1 -1
  197. data/lib/phlex-icons/flag/gg_square.rb +1 -1
  198. data/lib/phlex-icons/flag/gh_rectangle.rb +1 -1
  199. data/lib/phlex-icons/flag/gh_square.rb +1 -1
  200. data/lib/phlex-icons/flag/gi_rectangle.rb +1 -1
  201. data/lib/phlex-icons/flag/gi_square.rb +1 -1
  202. data/lib/phlex-icons/flag/gl_rectangle.rb +1 -1
  203. data/lib/phlex-icons/flag/gl_square.rb +1 -1
  204. data/lib/phlex-icons/flag/gm_rectangle.rb +1 -1
  205. data/lib/phlex-icons/flag/gm_square.rb +1 -1
  206. data/lib/phlex-icons/flag/gn_rectangle.rb +1 -1
  207. data/lib/phlex-icons/flag/gn_square.rb +1 -1
  208. data/lib/phlex-icons/flag/gp_rectangle.rb +1 -1
  209. data/lib/phlex-icons/flag/gp_square.rb +1 -1
  210. data/lib/phlex-icons/flag/gq_rectangle.rb +1 -1
  211. data/lib/phlex-icons/flag/gq_square.rb +1 -1
  212. data/lib/phlex-icons/flag/gr_rectangle.rb +1 -1
  213. data/lib/phlex-icons/flag/gr_square.rb +1 -1
  214. data/lib/phlex-icons/flag/gs_rectangle.rb +1 -1
  215. data/lib/phlex-icons/flag/gs_square.rb +1 -1
  216. data/lib/phlex-icons/flag/gt_rectangle.rb +1 -1
  217. data/lib/phlex-icons/flag/gt_square.rb +1 -1
  218. data/lib/phlex-icons/flag/gu_rectangle.rb +1 -1
  219. data/lib/phlex-icons/flag/gu_square.rb +1 -1
  220. data/lib/phlex-icons/flag/gw_rectangle.rb +1 -1
  221. data/lib/phlex-icons/flag/gw_square.rb +1 -1
  222. data/lib/phlex-icons/flag/gy_rectangle.rb +1 -1
  223. data/lib/phlex-icons/flag/gy_square.rb +1 -1
  224. data/lib/phlex-icons/flag/hk_rectangle.rb +1 -1
  225. data/lib/phlex-icons/flag/hk_square.rb +1 -1
  226. data/lib/phlex-icons/flag/hm_rectangle.rb +1 -1
  227. data/lib/phlex-icons/flag/hm_square.rb +1 -1
  228. data/lib/phlex-icons/flag/hn_rectangle.rb +1 -1
  229. data/lib/phlex-icons/flag/hn_square.rb +1 -1
  230. data/lib/phlex-icons/flag/hr_rectangle.rb +1 -1
  231. data/lib/phlex-icons/flag/hr_square.rb +1 -1
  232. data/lib/phlex-icons/flag/ht_rectangle.rb +1 -1
  233. data/lib/phlex-icons/flag/ht_square.rb +1 -1
  234. data/lib/phlex-icons/flag/hu_rectangle.rb +1 -1
  235. data/lib/phlex-icons/flag/hu_square.rb +1 -1
  236. data/lib/phlex-icons/flag/ic_rectangle.rb +1 -1
  237. data/lib/phlex-icons/flag/ic_square.rb +1 -1
  238. data/lib/phlex-icons/flag/id_rectangle.rb +1 -1
  239. data/lib/phlex-icons/flag/id_square.rb +1 -1
  240. data/lib/phlex-icons/flag/ie_rectangle.rb +1 -1
  241. data/lib/phlex-icons/flag/ie_square.rb +1 -1
  242. data/lib/phlex-icons/flag/il_rectangle.rb +1 -1
  243. data/lib/phlex-icons/flag/il_square.rb +1 -1
  244. data/lib/phlex-icons/flag/im_rectangle.rb +1 -1
  245. data/lib/phlex-icons/flag/im_square.rb +1 -1
  246. data/lib/phlex-icons/flag/in_rectangle.rb +1 -1
  247. data/lib/phlex-icons/flag/in_square.rb +1 -1
  248. data/lib/phlex-icons/flag/io_rectangle.rb +1 -1
  249. data/lib/phlex-icons/flag/io_square.rb +1 -1
  250. data/lib/phlex-icons/flag/iq_rectangle.rb +1 -1
  251. data/lib/phlex-icons/flag/iq_square.rb +1 -1
  252. data/lib/phlex-icons/flag/ir_rectangle.rb +1 -1
  253. data/lib/phlex-icons/flag/ir_square.rb +1 -1
  254. data/lib/phlex-icons/flag/is_rectangle.rb +1 -1
  255. data/lib/phlex-icons/flag/is_square.rb +1 -1
  256. data/lib/phlex-icons/flag/it_rectangle.rb +1 -1
  257. data/lib/phlex-icons/flag/it_square.rb +1 -1
  258. data/lib/phlex-icons/flag/je_rectangle.rb +1 -1
  259. data/lib/phlex-icons/flag/je_square.rb +1 -1
  260. data/lib/phlex-icons/flag/jm_rectangle.rb +1 -1
  261. data/lib/phlex-icons/flag/jm_square.rb +1 -1
  262. data/lib/phlex-icons/flag/jo_rectangle.rb +1 -1
  263. data/lib/phlex-icons/flag/jo_square.rb +1 -1
  264. data/lib/phlex-icons/flag/jp_rectangle.rb +1 -1
  265. data/lib/phlex-icons/flag/jp_square.rb +1 -1
  266. data/lib/phlex-icons/flag/ke_rectangle.rb +1 -1
  267. data/lib/phlex-icons/flag/ke_square.rb +1 -1
  268. data/lib/phlex-icons/flag/kg_rectangle.rb +1 -1
  269. data/lib/phlex-icons/flag/kg_square.rb +1 -1
  270. data/lib/phlex-icons/flag/kh_rectangle.rb +1 -1
  271. data/lib/phlex-icons/flag/kh_square.rb +1 -1
  272. data/lib/phlex-icons/flag/ki_rectangle.rb +1 -1
  273. data/lib/phlex-icons/flag/ki_square.rb +1 -1
  274. data/lib/phlex-icons/flag/km_rectangle.rb +1 -1
  275. data/lib/phlex-icons/flag/km_square.rb +1 -1
  276. data/lib/phlex-icons/flag/kn_rectangle.rb +1 -1
  277. data/lib/phlex-icons/flag/kn_square.rb +1 -1
  278. data/lib/phlex-icons/flag/kp_rectangle.rb +1 -1
  279. data/lib/phlex-icons/flag/kp_square.rb +1 -1
  280. data/lib/phlex-icons/flag/kr_rectangle.rb +1 -1
  281. data/lib/phlex-icons/flag/kr_square.rb +1 -1
  282. data/lib/phlex-icons/flag/kw_rectangle.rb +1 -1
  283. data/lib/phlex-icons/flag/kw_square.rb +1 -1
  284. data/lib/phlex-icons/flag/ky_rectangle.rb +1 -1
  285. data/lib/phlex-icons/flag/ky_square.rb +1 -1
  286. data/lib/phlex-icons/flag/kz_rectangle.rb +1 -1
  287. data/lib/phlex-icons/flag/kz_square.rb +1 -1
  288. data/lib/phlex-icons/flag/la_rectangle.rb +1 -1
  289. data/lib/phlex-icons/flag/la_square.rb +1 -1
  290. data/lib/phlex-icons/flag/lb_rectangle.rb +1 -1
  291. data/lib/phlex-icons/flag/lb_square.rb +1 -1
  292. data/lib/phlex-icons/flag/lc_rectangle.rb +1 -1
  293. data/lib/phlex-icons/flag/lc_square.rb +1 -1
  294. data/lib/phlex-icons/flag/li_rectangle.rb +1 -1
  295. data/lib/phlex-icons/flag/li_square.rb +1 -1
  296. data/lib/phlex-icons/flag/lk_rectangle.rb +1 -1
  297. data/lib/phlex-icons/flag/lk_square.rb +1 -1
  298. data/lib/phlex-icons/flag/lr_rectangle.rb +1 -1
  299. data/lib/phlex-icons/flag/lr_square.rb +1 -1
  300. data/lib/phlex-icons/flag/ls_rectangle.rb +1 -1
  301. data/lib/phlex-icons/flag/ls_square.rb +1 -1
  302. data/lib/phlex-icons/flag/lt_rectangle.rb +1 -1
  303. data/lib/phlex-icons/flag/lt_square.rb +1 -1
  304. data/lib/phlex-icons/flag/lu_rectangle.rb +1 -1
  305. data/lib/phlex-icons/flag/lu_square.rb +1 -1
  306. data/lib/phlex-icons/flag/lv_rectangle.rb +1 -1
  307. data/lib/phlex-icons/flag/lv_square.rb +1 -1
  308. data/lib/phlex-icons/flag/ly_rectangle.rb +1 -1
  309. data/lib/phlex-icons/flag/ly_square.rb +1 -1
  310. data/lib/phlex-icons/flag/ma_rectangle.rb +1 -1
  311. data/lib/phlex-icons/flag/ma_square.rb +1 -1
  312. data/lib/phlex-icons/flag/mc_rectangle.rb +1 -1
  313. data/lib/phlex-icons/flag/mc_square.rb +1 -1
  314. data/lib/phlex-icons/flag/md_rectangle.rb +1 -1
  315. data/lib/phlex-icons/flag/md_square.rb +1 -1
  316. data/lib/phlex-icons/flag/me_rectangle.rb +1 -1
  317. data/lib/phlex-icons/flag/me_square.rb +1 -1
  318. data/lib/phlex-icons/flag/mf_rectangle.rb +1 -1
  319. data/lib/phlex-icons/flag/mf_square.rb +1 -1
  320. data/lib/phlex-icons/flag/mg_rectangle.rb +1 -1
  321. data/lib/phlex-icons/flag/mg_square.rb +1 -1
  322. data/lib/phlex-icons/flag/mh_rectangle.rb +1 -1
  323. data/lib/phlex-icons/flag/mh_square.rb +1 -1
  324. data/lib/phlex-icons/flag/mk_rectangle.rb +1 -1
  325. data/lib/phlex-icons/flag/mk_square.rb +1 -1
  326. data/lib/phlex-icons/flag/ml_rectangle.rb +1 -1
  327. data/lib/phlex-icons/flag/ml_square.rb +1 -1
  328. data/lib/phlex-icons/flag/mm_rectangle.rb +1 -1
  329. data/lib/phlex-icons/flag/mm_square.rb +1 -1
  330. data/lib/phlex-icons/flag/mn_rectangle.rb +1 -1
  331. data/lib/phlex-icons/flag/mn_square.rb +1 -1
  332. data/lib/phlex-icons/flag/mo_rectangle.rb +1 -1
  333. data/lib/phlex-icons/flag/mo_square.rb +1 -1
  334. data/lib/phlex-icons/flag/mp_rectangle.rb +1 -1
  335. data/lib/phlex-icons/flag/mp_square.rb +1 -1
  336. data/lib/phlex-icons/flag/mq_rectangle.rb +1 -1
  337. data/lib/phlex-icons/flag/mq_square.rb +1 -1
  338. data/lib/phlex-icons/flag/mr_rectangle.rb +1 -1
  339. data/lib/phlex-icons/flag/mr_square.rb +1 -1
  340. data/lib/phlex-icons/flag/ms_rectangle.rb +1 -1
  341. data/lib/phlex-icons/flag/ms_square.rb +1 -1
  342. data/lib/phlex-icons/flag/mt_rectangle.rb +1 -1
  343. data/lib/phlex-icons/flag/mt_square.rb +1 -1
  344. data/lib/phlex-icons/flag/mu_rectangle.rb +1 -1
  345. data/lib/phlex-icons/flag/mu_square.rb +1 -1
  346. data/lib/phlex-icons/flag/mv_rectangle.rb +1 -1
  347. data/lib/phlex-icons/flag/mv_square.rb +1 -1
  348. data/lib/phlex-icons/flag/mw_rectangle.rb +1 -1
  349. data/lib/phlex-icons/flag/mw_square.rb +1 -1
  350. data/lib/phlex-icons/flag/mx_rectangle.rb +1 -1
  351. data/lib/phlex-icons/flag/mx_square.rb +1 -1
  352. data/lib/phlex-icons/flag/my_rectangle.rb +1 -1
  353. data/lib/phlex-icons/flag/my_square.rb +1 -1
  354. data/lib/phlex-icons/flag/mz_rectangle.rb +1 -1
  355. data/lib/phlex-icons/flag/mz_square.rb +1 -1
  356. data/lib/phlex-icons/flag/na_rectangle.rb +1 -1
  357. data/lib/phlex-icons/flag/na_square.rb +1 -1
  358. data/lib/phlex-icons/flag/nc_rectangle.rb +1 -1
  359. data/lib/phlex-icons/flag/nc_square.rb +1 -1
  360. data/lib/phlex-icons/flag/ne_rectangle.rb +1 -1
  361. data/lib/phlex-icons/flag/ne_square.rb +1 -1
  362. data/lib/phlex-icons/flag/nf_rectangle.rb +1 -1
  363. data/lib/phlex-icons/flag/nf_square.rb +1 -1
  364. data/lib/phlex-icons/flag/ng_rectangle.rb +1 -1
  365. data/lib/phlex-icons/flag/ng_square.rb +1 -1
  366. data/lib/phlex-icons/flag/ni_rectangle.rb +1 -1
  367. data/lib/phlex-icons/flag/ni_square.rb +1 -1
  368. data/lib/phlex-icons/flag/nl_rectangle.rb +1 -1
  369. data/lib/phlex-icons/flag/nl_square.rb +1 -1
  370. data/lib/phlex-icons/flag/no_rectangle.rb +1 -1
  371. data/lib/phlex-icons/flag/no_square.rb +1 -1
  372. data/lib/phlex-icons/flag/np_rectangle.rb +1 -1
  373. data/lib/phlex-icons/flag/np_square.rb +1 -1
  374. data/lib/phlex-icons/flag/nr_rectangle.rb +1 -1
  375. data/lib/phlex-icons/flag/nr_square.rb +1 -1
  376. data/lib/phlex-icons/flag/nu_rectangle.rb +1 -1
  377. data/lib/phlex-icons/flag/nu_square.rb +1 -1
  378. data/lib/phlex-icons/flag/nz_rectangle.rb +1 -1
  379. data/lib/phlex-icons/flag/nz_square.rb +1 -1
  380. data/lib/phlex-icons/flag/om_rectangle.rb +1 -1
  381. data/lib/phlex-icons/flag/om_square.rb +1 -1
  382. data/lib/phlex-icons/flag/pa_rectangle.rb +1 -1
  383. data/lib/phlex-icons/flag/pa_square.rb +1 -1
  384. data/lib/phlex-icons/flag/pc_rectangle.rb +1 -1
  385. data/lib/phlex-icons/flag/pc_square.rb +1 -1
  386. data/lib/phlex-icons/flag/pe_rectangle.rb +1 -1
  387. data/lib/phlex-icons/flag/pe_square.rb +1 -1
  388. data/lib/phlex-icons/flag/pf_rectangle.rb +1 -1
  389. data/lib/phlex-icons/flag/pf_square.rb +1 -1
  390. data/lib/phlex-icons/flag/pg_rectangle.rb +1 -1
  391. data/lib/phlex-icons/flag/pg_square.rb +1 -1
  392. data/lib/phlex-icons/flag/ph_rectangle.rb +1 -1
  393. data/lib/phlex-icons/flag/ph_square.rb +1 -1
  394. data/lib/phlex-icons/flag/pk_rectangle.rb +1 -1
  395. data/lib/phlex-icons/flag/pk_square.rb +1 -1
  396. data/lib/phlex-icons/flag/pl_rectangle.rb +1 -1
  397. data/lib/phlex-icons/flag/pl_square.rb +1 -1
  398. data/lib/phlex-icons/flag/pm_rectangle.rb +1 -1
  399. data/lib/phlex-icons/flag/pm_square.rb +1 -1
  400. data/lib/phlex-icons/flag/pn_rectangle.rb +1 -1
  401. data/lib/phlex-icons/flag/pn_square.rb +1 -1
  402. data/lib/phlex-icons/flag/pr_rectangle.rb +1 -1
  403. data/lib/phlex-icons/flag/pr_square.rb +1 -1
  404. data/lib/phlex-icons/flag/ps_rectangle.rb +1 -1
  405. data/lib/phlex-icons/flag/ps_square.rb +1 -1
  406. data/lib/phlex-icons/flag/pt_rectangle.rb +1 -1
  407. data/lib/phlex-icons/flag/pt_square.rb +1 -1
  408. data/lib/phlex-icons/flag/pw_rectangle.rb +1 -1
  409. data/lib/phlex-icons/flag/pw_square.rb +1 -1
  410. data/lib/phlex-icons/flag/py_rectangle.rb +1 -1
  411. data/lib/phlex-icons/flag/py_square.rb +1 -1
  412. data/lib/phlex-icons/flag/qa_rectangle.rb +1 -1
  413. data/lib/phlex-icons/flag/qa_square.rb +1 -1
  414. data/lib/phlex-icons/flag/re_rectangle.rb +1 -1
  415. data/lib/phlex-icons/flag/re_square.rb +1 -1
  416. data/lib/phlex-icons/flag/ro_rectangle.rb +1 -1
  417. data/lib/phlex-icons/flag/ro_square.rb +1 -1
  418. data/lib/phlex-icons/flag/rs_rectangle.rb +1 -1
  419. data/lib/phlex-icons/flag/rs_square.rb +1 -1
  420. data/lib/phlex-icons/flag/ru_rectangle.rb +1 -1
  421. data/lib/phlex-icons/flag/ru_square.rb +1 -1
  422. data/lib/phlex-icons/flag/rw_rectangle.rb +1 -1
  423. data/lib/phlex-icons/flag/rw_square.rb +1 -1
  424. data/lib/phlex-icons/flag/sa_rectangle.rb +1 -1
  425. data/lib/phlex-icons/flag/sa_square.rb +1 -1
  426. data/lib/phlex-icons/flag/sb_rectangle.rb +1 -1
  427. data/lib/phlex-icons/flag/sb_square.rb +1 -1
  428. data/lib/phlex-icons/flag/sc_rectangle.rb +1 -1
  429. data/lib/phlex-icons/flag/sc_square.rb +1 -1
  430. data/lib/phlex-icons/flag/sd_rectangle.rb +1 -1
  431. data/lib/phlex-icons/flag/sd_square.rb +1 -1
  432. data/lib/phlex-icons/flag/se_rectangle.rb +1 -1
  433. data/lib/phlex-icons/flag/se_square.rb +1 -1
  434. data/lib/phlex-icons/flag/sg_rectangle.rb +1 -1
  435. data/lib/phlex-icons/flag/sg_square.rb +1 -1
  436. data/lib/phlex-icons/flag/sh_ac_rectangle.rb +1 -1
  437. data/lib/phlex-icons/flag/sh_ac_square.rb +1 -1
  438. data/lib/phlex-icons/flag/sh_hl_rectangle.rb +1 -1
  439. data/lib/phlex-icons/flag/sh_hl_square.rb +1 -1
  440. data/lib/phlex-icons/flag/sh_rectangle.rb +1 -1
  441. data/lib/phlex-icons/flag/sh_square.rb +1 -1
  442. data/lib/phlex-icons/flag/sh_ta_rectangle.rb +1 -1
  443. data/lib/phlex-icons/flag/sh_ta_square.rb +1 -1
  444. data/lib/phlex-icons/flag/si_rectangle.rb +1 -1
  445. data/lib/phlex-icons/flag/si_square.rb +1 -1
  446. data/lib/phlex-icons/flag/sj_rectangle.rb +1 -1
  447. data/lib/phlex-icons/flag/sj_square.rb +1 -1
  448. data/lib/phlex-icons/flag/sk_rectangle.rb +1 -1
  449. data/lib/phlex-icons/flag/sk_square.rb +1 -1
  450. data/lib/phlex-icons/flag/sl_rectangle.rb +1 -1
  451. data/lib/phlex-icons/flag/sl_square.rb +1 -1
  452. data/lib/phlex-icons/flag/sm_rectangle.rb +1 -1
  453. data/lib/phlex-icons/flag/sm_square.rb +1 -1
  454. data/lib/phlex-icons/flag/sn_rectangle.rb +1 -1
  455. data/lib/phlex-icons/flag/sn_square.rb +1 -1
  456. data/lib/phlex-icons/flag/so_rectangle.rb +1 -1
  457. data/lib/phlex-icons/flag/so_square.rb +1 -1
  458. data/lib/phlex-icons/flag/sr_rectangle.rb +1 -1
  459. data/lib/phlex-icons/flag/sr_square.rb +1 -1
  460. data/lib/phlex-icons/flag/ss_rectangle.rb +1 -1
  461. data/lib/phlex-icons/flag/ss_square.rb +1 -1
  462. data/lib/phlex-icons/flag/st_rectangle.rb +1 -1
  463. data/lib/phlex-icons/flag/st_square.rb +1 -1
  464. data/lib/phlex-icons/flag/sv_rectangle.rb +1 -1
  465. data/lib/phlex-icons/flag/sv_square.rb +1 -1
  466. data/lib/phlex-icons/flag/sx_rectangle.rb +1 -1
  467. data/lib/phlex-icons/flag/sx_square.rb +1 -1
  468. data/lib/phlex-icons/flag/sy_rectangle.rb +1 -1
  469. data/lib/phlex-icons/flag/sy_square.rb +1 -1
  470. data/lib/phlex-icons/flag/sz_rectangle.rb +1 -1
  471. data/lib/phlex-icons/flag/sz_square.rb +1 -1
  472. data/lib/phlex-icons/flag/tc_rectangle.rb +1 -1
  473. data/lib/phlex-icons/flag/tc_square.rb +1 -1
  474. data/lib/phlex-icons/flag/td_rectangle.rb +1 -1
  475. data/lib/phlex-icons/flag/td_square.rb +1 -1
  476. data/lib/phlex-icons/flag/tf_rectangle.rb +1 -1
  477. data/lib/phlex-icons/flag/tf_square.rb +1 -1
  478. data/lib/phlex-icons/flag/tg_rectangle.rb +1 -1
  479. data/lib/phlex-icons/flag/tg_square.rb +1 -1
  480. data/lib/phlex-icons/flag/th_rectangle.rb +1 -1
  481. data/lib/phlex-icons/flag/th_square.rb +1 -1
  482. data/lib/phlex-icons/flag/tj_rectangle.rb +1 -1
  483. data/lib/phlex-icons/flag/tj_square.rb +1 -1
  484. data/lib/phlex-icons/flag/tk_rectangle.rb +1 -1
  485. data/lib/phlex-icons/flag/tk_square.rb +1 -1
  486. data/lib/phlex-icons/flag/tl_rectangle.rb +1 -1
  487. data/lib/phlex-icons/flag/tl_square.rb +1 -1
  488. data/lib/phlex-icons/flag/tm_rectangle.rb +1 -1
  489. data/lib/phlex-icons/flag/tm_square.rb +1 -1
  490. data/lib/phlex-icons/flag/tn_rectangle.rb +1 -1
  491. data/lib/phlex-icons/flag/tn_square.rb +1 -1
  492. data/lib/phlex-icons/flag/to_rectangle.rb +1 -1
  493. data/lib/phlex-icons/flag/to_square.rb +1 -1
  494. data/lib/phlex-icons/flag/tr_rectangle.rb +1 -1
  495. data/lib/phlex-icons/flag/tr_square.rb +1 -1
  496. data/lib/phlex-icons/flag/tt_rectangle.rb +1 -1
  497. data/lib/phlex-icons/flag/tt_square.rb +1 -1
  498. data/lib/phlex-icons/flag/tv_rectangle.rb +1 -1
  499. data/lib/phlex-icons/flag/tv_square.rb +1 -1
  500. data/lib/phlex-icons/flag/tw_rectangle.rb +1 -1
  501. data/lib/phlex-icons/flag/tw_square.rb +1 -1
  502. data/lib/phlex-icons/flag/tz_rectangle.rb +1 -1
  503. data/lib/phlex-icons/flag/tz_square.rb +1 -1
  504. data/lib/phlex-icons/flag/ua_rectangle.rb +1 -1
  505. data/lib/phlex-icons/flag/ua_square.rb +1 -1
  506. data/lib/phlex-icons/flag/ug_rectangle.rb +1 -1
  507. data/lib/phlex-icons/flag/ug_square.rb +1 -1
  508. data/lib/phlex-icons/flag/um_rectangle.rb +1 -1
  509. data/lib/phlex-icons/flag/um_square.rb +1 -1
  510. data/lib/phlex-icons/flag/un_rectangle.rb +1 -1
  511. data/lib/phlex-icons/flag/un_square.rb +1 -1
  512. data/lib/phlex-icons/flag/us_rectangle.rb +1 -1
  513. data/lib/phlex-icons/flag/us_square.rb +1 -1
  514. data/lib/phlex-icons/flag/uy_rectangle.rb +1 -1
  515. data/lib/phlex-icons/flag/uy_square.rb +1 -1
  516. data/lib/phlex-icons/flag/uz_rectangle.rb +1 -1
  517. data/lib/phlex-icons/flag/uz_square.rb +1 -1
  518. data/lib/phlex-icons/flag/va_rectangle.rb +1 -1
  519. data/lib/phlex-icons/flag/va_square.rb +1 -1
  520. data/lib/phlex-icons/flag/vc_rectangle.rb +1 -1
  521. data/lib/phlex-icons/flag/vc_square.rb +1 -1
  522. data/lib/phlex-icons/flag/ve_rectangle.rb +1 -1
  523. data/lib/phlex-icons/flag/ve_square.rb +1 -1
  524. data/lib/phlex-icons/flag/vg_rectangle.rb +1 -1
  525. data/lib/phlex-icons/flag/vg_square.rb +1 -1
  526. data/lib/phlex-icons/flag/vi_rectangle.rb +1 -1
  527. data/lib/phlex-icons/flag/vi_square.rb +1 -1
  528. data/lib/phlex-icons/flag/vn_rectangle.rb +1 -1
  529. data/lib/phlex-icons/flag/vn_square.rb +1 -1
  530. data/lib/phlex-icons/flag/vu_rectangle.rb +1 -1
  531. data/lib/phlex-icons/flag/vu_square.rb +1 -1
  532. data/lib/phlex-icons/flag/wf_rectangle.rb +1 -1
  533. data/lib/phlex-icons/flag/wf_square.rb +1 -1
  534. data/lib/phlex-icons/flag/ws_rectangle.rb +1 -1
  535. data/lib/phlex-icons/flag/ws_square.rb +1 -1
  536. data/lib/phlex-icons/flag/xk_rectangle.rb +1 -1
  537. data/lib/phlex-icons/flag/xk_square.rb +1 -1
  538. data/lib/phlex-icons/flag/xx_rectangle.rb +1 -1
  539. data/lib/phlex-icons/flag/xx_square.rb +1 -1
  540. data/lib/phlex-icons/flag/ye_rectangle.rb +1 -1
  541. data/lib/phlex-icons/flag/ye_square.rb +1 -1
  542. data/lib/phlex-icons/flag/yt_rectangle.rb +1 -1
  543. data/lib/phlex-icons/flag/yt_square.rb +1 -1
  544. data/lib/phlex-icons/flag/za_rectangle.rb +1 -1
  545. data/lib/phlex-icons/flag/za_square.rb +1 -1
  546. data/lib/phlex-icons/flag/zm_rectangle.rb +1 -1
  547. data/lib/phlex-icons/flag/zm_square.rb +1 -1
  548. data/lib/phlex-icons/flag/zw_rectangle.rb +1 -1
  549. data/lib/phlex-icons/flag/zw_square.rb +1 -1
  550. data/lib/phlex-icons/icon.rb +31 -0
  551. data/lib/phlex-icons/name_parser.rb +117 -0
  552. data/lib/phlex-icons/railtie.rb +17 -0
  553. data/lib/phlex-icons/version.rb +1 -1
  554. data/lib/phlex-icons-flag.rb +3 -0
  555. metadata +5 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 70ca1aa3873b55d858a0c34282ebe7c477ae7ddca2e9ccae1487754d064fc45b
4
- data.tar.gz: a9050aa2f6b87ebede2a77a66f358894be0078fe18a2a66a23442fb8fca3dc57
3
+ metadata.gz: fc89d8e8f56d6db6d8c07c15fe5fba25275cbca73eedcb472100cc58cde42b54
4
+ data.tar.gz: 96126d470cb3d89dd1547d277ee4ffb7ddc978141233243c8d28025e4c70f5c4
5
5
  SHA512:
6
- metadata.gz: 16799c23023faa6c39e5695dec9b08081ab660bb16de870664393a86ba8434e69a918ce4d31f2bfbe28a44c6df6a7ddb58c662d0b21dbf6575f1544c56b6bdd1
7
- data.tar.gz: 459943f5f31bea1d749c926b62be0fe9856c40c2b68442f73ce07c41d071075c2dfa1bdd1d0c2bce2775d15e0c92fd16097130657784282eb4aafc561961503d
6
+ metadata.gz: d8448dfabad49f18de482d1f840e6f89e8820806e30afae0dbaa913da447c8f18514ddad1ba5b8b2448f1bd38468d7b995109ed153773ef61de80e6d670df255
7
+ data.tar.gz: 20edf5b20d23bae692bf546002bbe09e6ea8a5a3d6e0ea17f1e522d905d697383eb102fe5085163c943a6f427b82070ef9b1a1944e491cfa7a3eee559e3e4bcf
data/.rubocop.yml CHANGED
@@ -25,4 +25,8 @@ Metrics/MethodLength:
25
25
  CountAsOne: ['array', 'method_call']
26
26
 
27
27
  Metrics/ClassLength:
28
- CountAsOne: ['array', 'method_call']
28
+ CountAsOne: ['array', 'method_call']
29
+
30
+ Metrics/BlockLength:
31
+ Exclude:
32
+ - 'spec/**/*'
data/README.md CHANGED
@@ -62,11 +62,15 @@ The gem provides global configuration options, and per icons pack configuration
62
62
  ```ruby
63
63
  PhlexIcons.configure do |config|
64
64
  config.default_classes = 'size-6'
65
+ config.helper_method_name = :phlex_icon # Default: :phlex_icon
66
+ config.default_pack = :hero # Default: nil. Accepts :symbol, "string", or Class (e.g., PhlexIcons::Hero)
65
67
  end
66
68
 
67
69
  # OR
68
70
 
69
71
  PhlexIcons.configuration.default_classes = 'size-6'
72
+ PhlexIcons.configuration.helper_method_name = :phlex_icon
73
+ PhlexIcons.configuration.default_pack = :hero
70
74
  ```
71
75
 
72
76
  ### Bootstrap Icons configuration
@@ -153,6 +157,9 @@ class PhlexIcons < Phlex::HTML
153
157
  Radix::Home(class: 'size-4')
154
158
  Remix::HomeLine(class: 'size-4')
155
159
  Tabler::Home(variant: :filled, class: 'size-4')
160
+
161
+ # or with a string
162
+ Icon('bootstrap/house', class: 'size-4')
156
163
  end
157
164
  end
158
165
  end
@@ -174,11 +181,48 @@ class PhlexIcons < Phlex::HTML
174
181
  render PhlexIcons::Radix::Home.new(class: 'size-4')
175
182
  render PhlexIcons::Remix::HomeLine.new(class: 'size-4')
176
183
  render PhlexIcons::Tabler::Home.new(variant: :filled, class: 'size-4')
184
+
185
+ # or with a string
186
+ render PhlexIcons::Icon('bootstrap/house', class: 'size-4')
177
187
  end
178
188
  end
179
189
  end
180
190
  ```
181
191
 
192
+ ### Rails View Helper
193
+
194
+ `phlex-icons` provides a convenient helper method to render icons directly in your ERB or Phlex views.
195
+
196
+ By default, the helper method is named `phlex_icon`, but is configurable.
197
+
198
+ ```erb
199
+ <%# Render a Bootstrap house icon with default size %>
200
+ <%= phlex_icon 'bootstrap/house' %>
201
+
202
+ <%# Render a Heroicons solid home icon with a specific class %>
203
+ <%= phlex_icon 'hero/home', variant: :solid, class: 'w-5 h-5 text-blue-500' %>
204
+
205
+ <%# Render a Tabler home icon, filled variant %>
206
+ <%= phlex_icon 'tabler/home:filled' %>
207
+
208
+ <%# If default_pack = :hero, render a Heroicons home icon %>
209
+ <%= phlex_icon 'home', class: 'w-6 h-6' %>
210
+
211
+ <%# Render a Flag icon (rectangle variant is default for flags if not configured otherwise) %>
212
+ <%= phlex_icon 'flag/sa' %>
213
+
214
+ <%# Render a custom icon %>
215
+ <%= phlex_icon 'custom/my_awesome_icon:variant_name' %>
216
+ ```
217
+
218
+ The first argument is the icon identifier. Such as: `'pack/icon_name:variant'`.
219
+
220
+ * If `default_pack` is configured, you can omit the pack name (e.g., `'icon_name:variant'` instead of `'pack/icon_name:variant'`).
221
+ * The `:variant` part is optional.
222
+ * Examples: `'hero/house:solid'`, `'house:solid'`, `'house'`
223
+
224
+ Subsequent arguments are passed as options to the icon component, such as `variant`, `class`, etc.
225
+
182
226
  ### Specific icon pack(s)
183
227
 
184
228
  Let's say you want to use only Heroicons and Flag Icons, you can use the following gems:
data/generators/flag.rb CHANGED
@@ -36,7 +36,7 @@ VARIANT_TEMPLATE = ERB.new <<~VARIANT_TEMPLATE
36
36
  module Flag
37
37
  class <%= icon_name %><%= variant.to_s.capitalize %> < Base
38
38
  def view_template
39
- render <%= icon_name %>.new(variant: :<%= variant %>)
39
+ render <%= icon_name %>.new(variant: :<%= variant %>, **attrs)
40
40
  end
41
41
  end
42
42
  end
data/generators/hero.rb CHANGED
@@ -36,7 +36,7 @@ VARIANT_TEMPLATE = ERB.new <<~VARIANT_TEMPLATE
36
36
  module Hero
37
37
  class <%= icon_name %><%= variant.to_s.capitalize %> < Base
38
38
  def view_template
39
- render <%= icon_name %>.new(variant: :<%= variant %>)
39
+ render <%= icon_name %>.new(variant: :<%= variant %>, **attrs)
40
40
  end
41
41
  end
42
42
  end
data/generators/tabler.rb CHANGED
@@ -36,7 +36,7 @@ VARIANT_TEMPLATE = ERB.new <<~VARIANT_TEMPLATE
36
36
  module Tabler
37
37
  class <%= icon_name %><%= variant.to_s.capitalize %> < Base
38
38
  def view_template
39
- render <%= icon_name %>.new(variant: :<%= variant %>)
39
+ render <%= icon_name %>.new(variant: :<%= variant %>, **attrs)
40
40
  end
41
41
  end
42
42
  end
@@ -2,10 +2,33 @@
2
2
 
3
3
  module PhlexIcons
4
4
  class Configuration
5
- attr_accessor :default_variant, :default_classes
5
+ attr_accessor :default_variant, :default_classes, :helper_method_name
6
+ attr_reader :default_pack
6
7
 
7
8
  def initialize(default_classes: 'size-6')
8
9
  @default_classes = default_classes
10
+ @helper_method_name = :phlex_icon
11
+ @default_pack = nil
12
+ end
13
+
14
+ # Custom setter for default_pack
15
+ # Accepts Class (PhlexIcons::Hero), String ('hero'), or Symbol (:hero)
16
+ #
17
+ # @param value [Class, String, Symbol, nil] The value to set the default pack to.
18
+ # @raise [ArgumentError] If the value is not a Class, String, Symbol, or nil.
19
+ def default_pack=(value)
20
+ @default_pack = case value
21
+ when Class
22
+ # Extract 'Hero' from PhlexIcons::Hero, lowercase, symbolize
23
+ value.name.split('::').last&.downcase&.to_sym
24
+ when String, Symbol
25
+ value.to_sym
26
+ when nil
27
+ nil
28
+ else
29
+ raise ArgumentError,
30
+ "Invalid type for default_pack: #{value.class}. Expected Class, String, Symbol, or nil."
31
+ end
9
32
  end
10
33
  end
11
34
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AdRectangle < Base
6
6
  def view_template
7
- render Ad.new(variant: :rectangle)
7
+ render Ad.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AdSquare < Base
6
6
  def view_template
7
- render Ad.new(variant: :square)
7
+ render Ad.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AeRectangle < Base
6
6
  def view_template
7
- render Ae.new(variant: :rectangle)
7
+ render Ae.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AeSquare < Base
6
6
  def view_template
7
- render Ae.new(variant: :square)
7
+ render Ae.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AfRectangle < Base
6
6
  def view_template
7
- render Af.new(variant: :rectangle)
7
+ render Af.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AfSquare < Base
6
6
  def view_template
7
- render Af.new(variant: :square)
7
+ render Af.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AgRectangle < Base
6
6
  def view_template
7
- render Ag.new(variant: :rectangle)
7
+ render Ag.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AgSquare < Base
6
6
  def view_template
7
- render Ag.new(variant: :square)
7
+ render Ag.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AiRectangle < Base
6
6
  def view_template
7
- render Ai.new(variant: :rectangle)
7
+ render Ai.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AiSquare < Base
6
6
  def view_template
7
- render Ai.new(variant: :square)
7
+ render Ai.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AlRectangle < Base
6
6
  def view_template
7
- render Al.new(variant: :rectangle)
7
+ render Al.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AlSquare < Base
6
6
  def view_template
7
- render Al.new(variant: :square)
7
+ render Al.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AmRectangle < Base
6
6
  def view_template
7
- render Am.new(variant: :rectangle)
7
+ render Am.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AmSquare < Base
6
6
  def view_template
7
- render Am.new(variant: :square)
7
+ render Am.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AoRectangle < Base
6
6
  def view_template
7
- render Ao.new(variant: :rectangle)
7
+ render Ao.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AoSquare < Base
6
6
  def view_template
7
- render Ao.new(variant: :square)
7
+ render Ao.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AqRectangle < Base
6
6
  def view_template
7
- render Aq.new(variant: :rectangle)
7
+ render Aq.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AqSquare < Base
6
6
  def view_template
7
- render Aq.new(variant: :square)
7
+ render Aq.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class ArRectangle < Base
6
6
  def view_template
7
- render Ar.new(variant: :rectangle)
7
+ render Ar.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class ArSquare < Base
6
6
  def view_template
7
- render Ar.new(variant: :square)
7
+ render Ar.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class ArabRectangle < Base
6
6
  def view_template
7
- render Arab.new(variant: :rectangle)
7
+ render Arab.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class ArabSquare < Base
6
6
  def view_template
7
- render Arab.new(variant: :square)
7
+ render Arab.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AsRectangle < Base
6
6
  def view_template
7
- render As.new(variant: :rectangle)
7
+ render As.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AsSquare < Base
6
6
  def view_template
7
- render As.new(variant: :square)
7
+ render As.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AseanRectangle < Base
6
6
  def view_template
7
- render Asean.new(variant: :rectangle)
7
+ render Asean.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AseanSquare < Base
6
6
  def view_template
7
- render Asean.new(variant: :square)
7
+ render Asean.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AtRectangle < Base
6
6
  def view_template
7
- render At.new(variant: :rectangle)
7
+ render At.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AtSquare < Base
6
6
  def view_template
7
- render At.new(variant: :square)
7
+ render At.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AuRectangle < Base
6
6
  def view_template
7
- render Au.new(variant: :rectangle)
7
+ render Au.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AuSquare < Base
6
6
  def view_template
7
- render Au.new(variant: :square)
7
+ render Au.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AwRectangle < Base
6
6
  def view_template
7
- render Aw.new(variant: :rectangle)
7
+ render Aw.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AwSquare < Base
6
6
  def view_template
7
- render Aw.new(variant: :square)
7
+ render Aw.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AxRectangle < Base
6
6
  def view_template
7
- render Ax.new(variant: :rectangle)
7
+ render Ax.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AxSquare < Base
6
6
  def view_template
7
- render Ax.new(variant: :square)
7
+ render Ax.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AzRectangle < Base
6
6
  def view_template
7
- render Az.new(variant: :rectangle)
7
+ render Az.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class AzSquare < Base
6
6
  def view_template
7
- render Az.new(variant: :square)
7
+ render Az.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BaRectangle < Base
6
6
  def view_template
7
- render Ba.new(variant: :rectangle)
7
+ render Ba.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BaSquare < Base
6
6
  def view_template
7
- render Ba.new(variant: :square)
7
+ render Ba.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BbRectangle < Base
6
6
  def view_template
7
- render Bb.new(variant: :rectangle)
7
+ render Bb.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BbSquare < Base
6
6
  def view_template
7
- render Bb.new(variant: :square)
7
+ render Bb.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BdRectangle < Base
6
6
  def view_template
7
- render Bd.new(variant: :rectangle)
7
+ render Bd.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BdSquare < Base
6
6
  def view_template
7
- render Bd.new(variant: :square)
7
+ render Bd.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BeRectangle < Base
6
6
  def view_template
7
- render Be.new(variant: :rectangle)
7
+ render Be.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BeSquare < Base
6
6
  def view_template
7
- render Be.new(variant: :square)
7
+ render Be.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BfRectangle < Base
6
6
  def view_template
7
- render Bf.new(variant: :rectangle)
7
+ render Bf.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BfSquare < Base
6
6
  def view_template
7
- render Bf.new(variant: :square)
7
+ render Bf.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BgRectangle < Base
6
6
  def view_template
7
- render Bg.new(variant: :rectangle)
7
+ render Bg.new(variant: :rectangle, **attrs)
8
8
  end
9
9
  end
10
10
  end
@@ -4,7 +4,7 @@ module PhlexIcons
4
4
  module Flag
5
5
  class BgSquare < Base
6
6
  def view_template
7
- render Bg.new(variant: :square)
7
+ render Bg.new(variant: :square, **attrs)
8
8
  end
9
9
  end
10
10
  end