monkey-style-guide 2.0.177 → 2.0.179

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 (607) hide show
  1. package/README.md +1282 -1280
  2. package/assets/data/country-codes.json +1466 -1466
  3. package/assets/icons/add-plus.svg +5 -5
  4. package/assets/icons/address-book.svg +4 -4
  5. package/assets/icons/arrow-down.svg +3 -3
  6. package/assets/icons/arrow-left.svg +3 -3
  7. package/assets/icons/arrow-line-right.svg +5 -5
  8. package/assets/icons/arrow-right.svg +3 -3
  9. package/assets/icons/arrow-up.svg +3 -3
  10. package/assets/icons/arrows.svg +6 -6
  11. package/assets/icons/auction.svg +7 -7
  12. package/assets/icons/average-tax.svg +6 -6
  13. package/assets/icons/bank-account.svg +12 -12
  14. package/assets/icons/bank-agency.svg +8 -8
  15. package/assets/icons/bank.svg +3 -3
  16. package/assets/icons/banknote-search.svg +8 -8
  17. package/assets/icons/bell.svg +4 -4
  18. package/assets/icons/block.svg +4 -4
  19. package/assets/icons/book-open-text.svg +10 -10
  20. package/assets/icons/book.svg +4 -4
  21. package/assets/icons/box.svg +6 -6
  22. package/assets/icons/build-approved.svg +9 -9
  23. package/assets/icons/build-person.svg +9 -9
  24. package/assets/icons/build-refused.svg +9 -9
  25. package/assets/icons/build-waiting.svg +8 -8
  26. package/assets/icons/calendar-box.svg +10 -10
  27. package/assets/icons/calendar.svg +6 -6
  28. package/assets/icons/camera.svg +4 -4
  29. package/assets/icons/card-machine.svg +14 -14
  30. package/assets/icons/card.svg +4 -4
  31. package/assets/icons/cash-banknote-invoice.svg +8 -8
  32. package/assets/icons/chat.svg +4 -4
  33. package/assets/icons/check-circle-out.svg +4 -4
  34. package/assets/icons/check-circle.svg +4 -4
  35. package/assets/icons/check-grey.svg +3 -3
  36. package/assets/icons/check-white.svg +4 -4
  37. package/assets/icons/check.svg +3 -3
  38. package/assets/icons/clipboard.svg +4 -4
  39. package/assets/icons/clock-closed.svg +6 -6
  40. package/assets/icons/clock.svg +4 -4
  41. package/assets/icons/close-circle.svg +5 -5
  42. package/assets/icons/close.svg +4 -4
  43. package/assets/icons/cnpj.svg +9 -9
  44. package/assets/icons/codepen.svg +7 -7
  45. package/assets/icons/company-name.svg +12 -12
  46. package/assets/icons/contract-pen.svg +7 -7
  47. package/assets/icons/contract.svg +14 -14
  48. package/assets/icons/delete.svg +5 -5
  49. package/assets/icons/document.svg +7 -7
  50. package/assets/icons/dollar-sign-circle.svg +7 -7
  51. package/assets/icons/dollar-sign.svg +5 -5
  52. package/assets/icons/domain.svg +9 -9
  53. package/assets/icons/dots-menu.svg +5 -5
  54. package/assets/icons/double-arrow-left.svg +4 -4
  55. package/assets/icons/double-arrow-right.svg +4 -4
  56. package/assets/icons/download.svg +5 -5
  57. package/assets/icons/drag-drop.svg +8 -8
  58. package/assets/icons/edit-square.svg +4 -4
  59. package/assets/icons/edit.svg +3 -3
  60. package/assets/icons/email-send-fast.svg +8 -8
  61. package/assets/icons/email.svg +4 -4
  62. package/assets/icons/empty-doc.svg +4 -4
  63. package/assets/icons/error.svg +5 -5
  64. package/assets/icons/eye-closed.svg +11 -11
  65. package/assets/icons/eye-open.svg +4 -4
  66. package/assets/icons/filter-add.svg +6 -6
  67. package/assets/icons/filter.svg +3 -3
  68. package/assets/icons/grid.svg +6 -6
  69. package/assets/icons/hands-clap.svg +10 -10
  70. package/assets/icons/help.svg +5 -5
  71. package/assets/icons/hexagon.svg +3 -3
  72. package/assets/icons/home.svg +4 -4
  73. package/assets/icons/image.svg +5 -5
  74. package/assets/icons/info.svg +6 -6
  75. package/assets/icons/invoice.svg +5 -5
  76. package/assets/icons/invoices-anticipated.svg +8 -8
  77. package/assets/icons/invoices-approval.svg +8 -8
  78. package/assets/icons/invoices-refused.svg +8 -8
  79. package/assets/icons/lighting-circle.svg +5 -5
  80. package/assets/icons/list.svg +8 -8
  81. package/assets/icons/location-pin.svg +4 -4
  82. package/assets/icons/login.svg +5 -5
  83. package/assets/icons/logout.svg +5 -5
  84. package/assets/icons/mail-box-upload.svg +6 -0
  85. package/assets/icons/mail-open-document.svg +6 -0
  86. package/assets/icons/medal.svg +12 -12
  87. package/assets/icons/menu.svg +5 -5
  88. package/assets/icons/money-cedule.svg +6 -6
  89. package/assets/icons/money-discount.svg +8 -8
  90. package/assets/icons/money-hand.svg +6 -6
  91. package/assets/icons/money-net.svg +8 -8
  92. package/assets/icons/money-new.svg +7 -7
  93. package/assets/icons/money-percent.svg +10 -10
  94. package/assets/icons/money-refused.svg +9 -9
  95. package/assets/icons/money-sign.svg +4 -4
  96. package/assets/icons/money-waiting.svg +8 -8
  97. package/assets/icons/money.svg +6 -6
  98. package/assets/icons/more-circle.svg +5 -5
  99. package/assets/icons/more.svg +4 -4
  100. package/assets/icons/new-company.svg +10 -10
  101. package/assets/icons/offered.svg +5 -5
  102. package/assets/icons/office-work.svg +10 -10
  103. package/assets/icons/open-external.svg +5 -5
  104. package/assets/icons/password.svg +4 -4
  105. package/assets/icons/people.svg +6 -6
  106. package/assets/icons/percent-box.svg +6 -6
  107. package/assets/icons/percent.svg +5 -5
  108. package/assets/icons/person-document.svg +10 -10
  109. package/assets/icons/person-sad.svg +6 -6
  110. package/assets/icons/phone-call.svg +4 -4
  111. package/assets/icons/phone.svg +3 -3
  112. package/assets/icons/pin-navigation.svg +5 -5
  113. package/assets/icons/pork.svg +5 -5
  114. package/assets/icons/radio.svg +4 -4
  115. package/assets/icons/refresh.svg +5 -5
  116. package/assets/icons/registration.svg +8 -8
  117. package/assets/icons/repeat.svg +4 -4
  118. package/assets/icons/search.svg +4 -4
  119. package/assets/icons/second-warning.svg +5 -5
  120. package/assets/icons/settings.svg +4 -4
  121. package/assets/icons/shield-chekmark.svg +3 -3
  122. package/assets/icons/star-shining.svg +13 -13
  123. package/assets/icons/star.svg +3 -3
  124. package/assets/icons/store.svg +8 -8
  125. package/assets/icons/target-dart-arrow.svg +6 -6
  126. package/assets/icons/today.svg +9 -9
  127. package/assets/icons/trash.svg +6 -6
  128. package/assets/icons/trophy.svg +8 -8
  129. package/assets/icons/unfold-more.svg +4 -4
  130. package/assets/icons/upload.svg +5 -5
  131. package/assets/icons/user-group.svg +8 -8
  132. package/assets/icons/user.svg +4 -4
  133. package/assets/icons/waiting.svg +17 -17
  134. package/assets/icons/wallet.svg +5 -5
  135. package/assets/icons/warning.svg +5 -5
  136. package/assets/scss/partials/_breakpoints.scss +35 -35
  137. package/assets/scss/partials/_forms.scss +350 -350
  138. package/assets/scss/partials/_index.scss +11 -11
  139. package/assets/scss/partials/_radio-button.scss +35 -35
  140. package/assets/scss/partials/_style-reset.scss +185 -185
  141. package/assets/scss/partials/_typography.scss +149 -149
  142. package/assets/scss/partials/_variables.scss +184 -184
  143. package/assets/scss/partials/components/_badge.scss +55 -55
  144. package/assets/scss/partials/components/_buttons.scss +831 -831
  145. package/assets/scss/partials/components/_checkbox.scss +69 -69
  146. package/assets/scss/partials/components/_date-range-picker.scss +265 -265
  147. package/assets/scss/partials/components/_expansion.scss +96 -96
  148. package/assets/scss/partials/components/_image-crop.scss +305 -305
  149. package/assets/scss/partials/components/_index.scss +23 -23
  150. package/assets/scss/partials/components/_input-phone.scss +36 -36
  151. package/assets/scss/partials/components/_input.scss +65 -65
  152. package/assets/scss/partials/components/_modal.scss +282 -282
  153. package/assets/scss/partials/components/_progressbar.scss +112 -112
  154. package/assets/scss/partials/components/_radiobutton.scss +66 -66
  155. package/assets/scss/partials/components/_select.scss +356 -356
  156. package/assets/scss/partials/components/_snackbar.scss +204 -204
  157. package/assets/scss/partials/components/_stepper.scss +86 -86
  158. package/assets/scss/partials/components/_tab.scss +82 -82
  159. package/assets/scss/partials/components/_table.scss +148 -148
  160. package/assets/scss/partials/components/_toggle.scss +103 -103
  161. package/assets/scss/partials/components/_wizard.scss +112 -112
  162. package/esm2020/lib/components/badge/badge.component.mjs +43 -43
  163. package/esm2020/lib/components/badge/badge.module.mjs +19 -19
  164. package/esm2020/lib/components/badge/index.mjs +3 -3
  165. package/esm2020/lib/components/button/button-avatar.component.mjs +53 -53
  166. package/esm2020/lib/components/button/button-dropdown.component.mjs +121 -121
  167. package/esm2020/lib/components/button/button.component.mjs +154 -154
  168. package/esm2020/lib/components/button/button.module.mjs +23 -23
  169. package/esm2020/lib/components/button/index.mjs +5 -5
  170. package/esm2020/lib/components/checkbox/checkbox.component.mjs +165 -165
  171. package/esm2020/lib/components/checkbox/checkbox.module.mjs +20 -20
  172. package/esm2020/lib/components/checkbox/index.mjs +3 -3
  173. package/esm2020/lib/components/date-range-picker/date-range-picker.component.mjs +660 -660
  174. package/esm2020/lib/components/date-range-picker/date-range-picker.module.mjs +22 -22
  175. package/esm2020/lib/components/date-range-picker/index.mjs +3 -3
  176. package/esm2020/lib/components/expansion/expansion.component.mjs +115 -115
  177. package/esm2020/lib/components/expansion/expansion.module.mjs +20 -20
  178. package/esm2020/lib/components/expansion/index.mjs +3 -3
  179. package/esm2020/lib/components/file-upload/file-upload.component.mjs +294 -294
  180. package/esm2020/lib/components/file-upload/file-upload.module.mjs +37 -37
  181. package/esm2020/lib/components/file-upload/index.mjs +3 -3
  182. package/esm2020/lib/components/icon/icon-add-plus.component.mjs +15 -15
  183. package/esm2020/lib/components/icon/icon-address-book.component.mjs +15 -15
  184. package/esm2020/lib/components/icon/icon-arrow-down.component.mjs +15 -15
  185. package/esm2020/lib/components/icon/icon-arrow-left.component.mjs +15 -15
  186. package/esm2020/lib/components/icon/icon-arrow-line-right.component.mjs +15 -15
  187. package/esm2020/lib/components/icon/icon-arrow-right.component.mjs +15 -15
  188. package/esm2020/lib/components/icon/icon-arrow-up.component.mjs +15 -15
  189. package/esm2020/lib/components/icon/icon-arrows.component.mjs +15 -15
  190. package/esm2020/lib/components/icon/icon-auction.component.mjs +15 -15
  191. package/esm2020/lib/components/icon/icon-average-tax.component.mjs +15 -0
  192. package/esm2020/lib/components/icon/icon-bank-account.component.mjs +15 -15
  193. package/esm2020/lib/components/icon/icon-bank-agency.component.mjs +15 -0
  194. package/esm2020/lib/components/icon/icon-bank.component.mjs +15 -15
  195. package/esm2020/lib/components/icon/icon-banknote-search.component.mjs +15 -15
  196. package/esm2020/lib/components/icon/icon-bell.component.mjs +15 -15
  197. package/esm2020/lib/components/icon/icon-block.component.mjs +15 -15
  198. package/esm2020/lib/components/icon/icon-book-open-text.component.mjs +15 -15
  199. package/esm2020/lib/components/icon/icon-book.component.mjs +15 -15
  200. package/esm2020/lib/components/icon/icon-box.component.mjs +15 -15
  201. package/esm2020/lib/components/icon/icon-build-approved.component.mjs +15 -15
  202. package/esm2020/lib/components/icon/icon-build-person.component.mjs +15 -15
  203. package/esm2020/lib/components/icon/icon-build-refused.component.mjs +15 -15
  204. package/esm2020/lib/components/icon/icon-build-waiting.component.mjs +15 -15
  205. package/esm2020/lib/components/icon/icon-calendar-box.component.mjs +15 -15
  206. package/esm2020/lib/components/icon/icon-calendar.component.mjs +15 -15
  207. package/esm2020/lib/components/icon/icon-camera.component.mjs +15 -15
  208. package/esm2020/lib/components/icon/icon-card-machine.component.mjs +15 -15
  209. package/esm2020/lib/components/icon/icon-card.component.mjs +15 -15
  210. package/esm2020/lib/components/icon/icon-cash-banknote-invoice.component.mjs +15 -0
  211. package/esm2020/lib/components/icon/icon-chat.component.mjs +15 -15
  212. package/esm2020/lib/components/icon/icon-check-circle-out.component.mjs +15 -15
  213. package/esm2020/lib/components/icon/icon-check-circle.component.mjs +15 -15
  214. package/esm2020/lib/components/icon/icon-check-grey.component.mjs +15 -15
  215. package/esm2020/lib/components/icon/icon-check-white.component.mjs +15 -15
  216. package/esm2020/lib/components/icon/icon-check.component.mjs +15 -15
  217. package/esm2020/lib/components/icon/icon-clipboard.component.mjs +15 -15
  218. package/esm2020/lib/components/icon/icon-clock-closed.component.mjs +15 -15
  219. package/esm2020/lib/components/icon/icon-clock.component.mjs +15 -15
  220. package/esm2020/lib/components/icon/icon-close-circle.component.mjs +15 -15
  221. package/esm2020/lib/components/icon/icon-close.component.mjs +15 -15
  222. package/esm2020/lib/components/icon/icon-cnpj.component.mjs +15 -15
  223. package/esm2020/lib/components/icon/icon-codepen.component.mjs +15 -15
  224. package/esm2020/lib/components/icon/icon-company-name.component.mjs +15 -15
  225. package/esm2020/lib/components/icon/icon-contract-pen.component.mjs +15 -15
  226. package/esm2020/lib/components/icon/icon-contract.component.mjs +15 -15
  227. package/esm2020/lib/components/icon/icon-delete.component.mjs +15 -15
  228. package/esm2020/lib/components/icon/icon-document.component.mjs +15 -15
  229. package/esm2020/lib/components/icon/icon-dollar-sign-circle.component.mjs +15 -15
  230. package/esm2020/lib/components/icon/icon-dollar-sign.component.mjs +15 -15
  231. package/esm2020/lib/components/icon/icon-domain.component.mjs +15 -15
  232. package/esm2020/lib/components/icon/icon-dots-menu.component.mjs +15 -15
  233. package/esm2020/lib/components/icon/icon-double-arrow-left.component.mjs +15 -15
  234. package/esm2020/lib/components/icon/icon-double-arrow-right.component.mjs +15 -15
  235. package/esm2020/lib/components/icon/icon-download.component.mjs +15 -15
  236. package/esm2020/lib/components/icon/icon-drag-drop.component.mjs +15 -15
  237. package/esm2020/lib/components/icon/icon-edit-square.component.mjs +15 -15
  238. package/esm2020/lib/components/icon/icon-edit.component.mjs +15 -15
  239. package/esm2020/lib/components/icon/icon-email-send-fast.component.mjs +15 -15
  240. package/esm2020/lib/components/icon/icon-email.component.mjs +15 -15
  241. package/esm2020/lib/components/icon/icon-empty-doc.component.mjs +15 -15
  242. package/esm2020/lib/components/icon/icon-error.component.mjs +15 -15
  243. package/esm2020/lib/components/icon/icon-eye-closed.component.mjs +15 -15
  244. package/esm2020/lib/components/icon/icon-eye-open.component.mjs +15 -15
  245. package/esm2020/lib/components/icon/icon-filter-add.component.mjs +15 -15
  246. package/esm2020/lib/components/icon/icon-filter.component.mjs +15 -15
  247. package/esm2020/lib/components/icon/icon-grid.component.mjs +15 -15
  248. package/esm2020/lib/components/icon/icon-hands-clap.component.mjs +15 -15
  249. package/esm2020/lib/components/icon/icon-help.component.mjs +15 -15
  250. package/esm2020/lib/components/icon/icon-hexagon.component.mjs +15 -15
  251. package/esm2020/lib/components/icon/icon-home.component.mjs +15 -15
  252. package/esm2020/lib/components/icon/icon-image.component.mjs +15 -15
  253. package/esm2020/lib/components/icon/icon-info.component.mjs +15 -15
  254. package/esm2020/lib/components/icon/icon-invoice.component.mjs +15 -15
  255. package/esm2020/lib/components/icon/icon-invoices-anticipated.component.mjs +15 -15
  256. package/esm2020/lib/components/icon/icon-invoices-approval.component.mjs +15 -15
  257. package/esm2020/lib/components/icon/icon-invoices-refused.component.mjs +15 -15
  258. package/esm2020/lib/components/icon/icon-lighting-circle.component.mjs +15 -15
  259. package/esm2020/lib/components/icon/icon-list.component.mjs +15 -15
  260. package/esm2020/lib/components/icon/icon-location-pin.component.mjs +15 -15
  261. package/esm2020/lib/components/icon/icon-login.component.mjs +15 -15
  262. package/esm2020/lib/components/icon/icon-logout.component.mjs +15 -15
  263. package/esm2020/lib/components/icon/icon-mail-box-upload.component.mjs +15 -0
  264. package/esm2020/lib/components/icon/icon-mail-open-document.component.mjs +15 -0
  265. package/esm2020/lib/components/icon/icon-medal.component.mjs +15 -15
  266. package/esm2020/lib/components/icon/icon-menu.component.mjs +15 -15
  267. package/esm2020/lib/components/icon/icon-money-cedule.component.mjs +15 -15
  268. package/esm2020/lib/components/icon/icon-money-discount.component.mjs +15 -0
  269. package/esm2020/lib/components/icon/icon-money-hand.component.mjs +15 -15
  270. package/esm2020/lib/components/icon/icon-money-net.component.mjs +15 -0
  271. package/esm2020/lib/components/icon/icon-money-new.component.mjs +15 -0
  272. package/esm2020/lib/components/icon/icon-money-percent.component.mjs +15 -15
  273. package/esm2020/lib/components/icon/icon-money-refused.component.mjs +15 -15
  274. package/esm2020/lib/components/icon/icon-money-sign.component.mjs +15 -15
  275. package/esm2020/lib/components/icon/icon-money-waiting.component.mjs +15 -15
  276. package/esm2020/lib/components/icon/icon-money.component.mjs +15 -15
  277. package/esm2020/lib/components/icon/icon-more-circle.component.mjs +15 -15
  278. package/esm2020/lib/components/icon/icon-more.component.mjs +15 -15
  279. package/esm2020/lib/components/icon/icon-new-company.component.mjs +15 -15
  280. package/esm2020/lib/components/icon/icon-offered.component.mjs +15 -15
  281. package/esm2020/lib/components/icon/icon-open-external.component.mjs +15 -15
  282. package/esm2020/lib/components/icon/icon-password.component.mjs +15 -15
  283. package/esm2020/lib/components/icon/icon-people.component.mjs +15 -15
  284. package/esm2020/lib/components/icon/icon-percent-box.component.mjs +15 -15
  285. package/esm2020/lib/components/icon/icon-percent.component.mjs +15 -15
  286. package/esm2020/lib/components/icon/icon-person-document.component.mjs +15 -15
  287. package/esm2020/lib/components/icon/icon-person-sad.component.mjs +15 -15
  288. package/esm2020/lib/components/icon/icon-phone-call.component.mjs +15 -15
  289. package/esm2020/lib/components/icon/icon-phone.component.mjs +15 -15
  290. package/esm2020/lib/components/icon/icon-pin-navigation.component.mjs +15 -15
  291. package/esm2020/lib/components/icon/icon-pork.component.mjs +15 -15
  292. package/esm2020/lib/components/icon/icon-radio.component.mjs +15 -15
  293. package/esm2020/lib/components/icon/icon-refresh.component.mjs +15 -15
  294. package/esm2020/lib/components/icon/icon-registration.component.mjs +15 -0
  295. package/esm2020/lib/components/icon/icon-repeat.component.mjs +15 -15
  296. package/esm2020/lib/components/icon/icon-search.component.mjs +15 -15
  297. package/esm2020/lib/components/icon/icon-second-warning.component.mjs +15 -15
  298. package/esm2020/lib/components/icon/icon-settings.component.mjs +15 -15
  299. package/esm2020/lib/components/icon/icon-shield-chekmark.component.mjs +15 -15
  300. package/esm2020/lib/components/icon/icon-star-shining.component.mjs +15 -15
  301. package/esm2020/lib/components/icon/icon-star.component.mjs +15 -15
  302. package/esm2020/lib/components/icon/icon-store.component.mjs +15 -15
  303. package/esm2020/lib/components/icon/icon-target-dart-arrow.component.mjs +15 -15
  304. package/esm2020/lib/components/icon/icon-today.component.mjs +15 -15
  305. package/esm2020/lib/components/icon/icon-trash.component.mjs +15 -15
  306. package/esm2020/lib/components/icon/icon-trophy.component.mjs +15 -15
  307. package/esm2020/lib/components/icon/icon-unfold-more.component.mjs +15 -15
  308. package/esm2020/lib/components/icon/icon-upload.component.mjs +15 -15
  309. package/esm2020/lib/components/icon/icon-user-group.component.mjs +15 -15
  310. package/esm2020/lib/components/icon/icon-user.component.mjs +15 -15
  311. package/esm2020/lib/components/icon/icon-waiting.component.mjs +15 -15
  312. package/esm2020/lib/components/icon/icon-wallet.component.mjs +15 -15
  313. package/esm2020/lib/components/icon/icon-warning.component.mjs +15 -15
  314. package/esm2020/lib/components/icon/icon.component.mjs +1809 -1783
  315. package/esm2020/lib/components/icon/icon.module.mjs +285 -411
  316. package/esm2020/lib/components/icon/index.mjs +136 -122
  317. package/esm2020/lib/components/image-crop/image-crop.component.mjs +516 -516
  318. package/esm2020/lib/components/image-crop/image-crop.module.mjs +41 -41
  319. package/esm2020/lib/components/image-crop/index.mjs +3 -3
  320. package/esm2020/lib/components/index.mjs +20 -20
  321. package/esm2020/lib/components/input/index.mjs +4 -4
  322. package/esm2020/lib/components/input/input-filter.component.mjs +286 -286
  323. package/esm2020/lib/components/input/input.component.mjs +384 -384
  324. package/esm2020/lib/components/input/input.module.mjs +38 -38
  325. package/esm2020/lib/components/input-phone/index.mjs +3 -3
  326. package/esm2020/lib/components/input-phone/input-phone.component.mjs +307 -307
  327. package/esm2020/lib/components/input-phone/input-phone.module.mjs +45 -45
  328. package/esm2020/lib/components/modal/index.mjs +3 -3
  329. package/esm2020/lib/components/modal/modal.component.mjs +236 -236
  330. package/esm2020/lib/components/modal/modal.module.mjs +21 -21
  331. package/esm2020/lib/components/option/index.mjs +3 -3
  332. package/esm2020/lib/components/option/option.component.mjs +131 -131
  333. package/esm2020/lib/components/option/option.module.mjs +29 -29
  334. package/esm2020/lib/components/radiobutton/index.mjs +3 -3
  335. package/esm2020/lib/components/radiobutton/radiobutton.component.mjs +165 -165
  336. package/esm2020/lib/components/radiobutton/radiobutton.module.mjs +36 -36
  337. package/esm2020/lib/components/select/index.mjs +6 -6
  338. package/esm2020/lib/components/select/select-filter.component.mjs +197 -197
  339. package/esm2020/lib/components/select/select-multiple.component.mjs +304 -304
  340. package/esm2020/lib/components/select/select-search.component.mjs +306 -306
  341. package/esm2020/lib/components/select/select.component.mjs +245 -245
  342. package/esm2020/lib/components/select/select.module.mjs +61 -61
  343. package/esm2020/lib/components/stepper/index.mjs +3 -3
  344. package/esm2020/lib/components/stepper/stepper.component.mjs +57 -57
  345. package/esm2020/lib/components/stepper/stepper.module.mjs +20 -20
  346. package/esm2020/lib/components/tab/index.mjs +3 -3
  347. package/esm2020/lib/components/tab/tab.component.mjs +100 -100
  348. package/esm2020/lib/components/tab/tab.module.mjs +21 -21
  349. package/esm2020/lib/components/table/index.mjs +4 -4
  350. package/esm2020/lib/components/table/table-column.component.mjs +34 -34
  351. package/esm2020/lib/components/table/table.component.mjs +267 -267
  352. package/esm2020/lib/components/table/table.module.mjs +23 -23
  353. package/esm2020/lib/components/toggle/index.mjs +3 -3
  354. package/esm2020/lib/components/toggle/toggle.component.mjs +56 -56
  355. package/esm2020/lib/components/toggle/toggle.module.mjs +19 -19
  356. package/esm2020/lib/components/wizard/index.mjs +3 -3
  357. package/esm2020/lib/components/wizard/wizard.component.mjs +61 -61
  358. package/esm2020/lib/components/wizard/wizard.module.mjs +33 -33
  359. package/esm2020/lib/core/index.mjs +4 -4
  360. package/esm2020/lib/core/interfaces/index.mjs +3 -3
  361. package/esm2020/lib/core/interfaces/monkey-modal-settings.mjs +2 -2
  362. package/esm2020/lib/core/interfaces/monkey-style-settings.mjs +2 -2
  363. package/esm2020/lib/core/services/index.mjs +4 -4
  364. package/esm2020/lib/core/services/modal/index.mjs +3 -3
  365. package/esm2020/lib/core/services/modal/monkey-style-guide-modal-fixed.service.mjs +52 -52
  366. package/esm2020/lib/core/services/modal/monkey-style-guide-modal.service.mjs +55 -55
  367. package/esm2020/lib/core/services/monkey-style-guide.service.mjs +17 -17
  368. package/esm2020/lib/core/services/settings/index.mjs +1 -1
  369. package/esm2020/lib/core/services/settings/monkey-style-guide-settings.service.mjs +41 -41
  370. package/esm2020/lib/core/services/settings/monkey-style-guide-theme-settings.service.mjs +80 -80
  371. package/esm2020/lib/core/services/snackbar/index.mjs +1 -1
  372. package/esm2020/lib/core/services/snackbar/mokey-style-guide-snackbar.service.mjs +226 -226
  373. package/esm2020/lib/core/utils/index.mjs +1 -1
  374. package/esm2020/lib/core/utils/utils.mjs +240 -240
  375. package/esm2020/lib/monkey-style-guide.module.mjs +31 -31
  376. package/esm2020/monkey-style-guide.mjs +4 -4
  377. package/esm2020/public-api.mjs +9 -9
  378. package/fesm2015/monkey-style-guide.mjs +9858 -9804
  379. package/fesm2015/monkey-style-guide.mjs.map +1 -1
  380. package/fesm2020/monkey-style-guide.mjs +9847 -9793
  381. package/fesm2020/monkey-style-guide.mjs.map +1 -1
  382. package/lib/components/badge/badge.component.d.ts +8 -8
  383. package/lib/components/badge/badge.module.d.ts +8 -8
  384. package/lib/components/badge/index.d.ts +2 -2
  385. package/lib/components/button/button-avatar.component.d.ts +19 -19
  386. package/lib/components/button/button-dropdown.component.d.ts +23 -23
  387. package/lib/components/button/button.component.d.ts +22 -22
  388. package/lib/components/button/button.module.d.ts +12 -12
  389. package/lib/components/button/index.d.ts +4 -4
  390. package/lib/components/checkbox/checkbox.component.d.ts +32 -32
  391. package/lib/components/checkbox/checkbox.module.d.ts +9 -9
  392. package/lib/components/checkbox/index.d.ts +2 -2
  393. package/lib/components/date-range-picker/date-range-picker.component.d.ts +69 -69
  394. package/lib/components/date-range-picker/date-range-picker.module.d.ts +11 -11
  395. package/lib/components/date-range-picker/index.d.ts +2 -2
  396. package/lib/components/expansion/expansion.component.d.ts +20 -20
  397. package/lib/components/expansion/expansion.module.d.ts +9 -9
  398. package/lib/components/expansion/index.d.ts +2 -2
  399. package/lib/components/file-upload/file-upload.component.d.ts +51 -51
  400. package/lib/components/file-upload/file-upload.module.d.ts +11 -11
  401. package/lib/components/file-upload/index.d.ts +2 -2
  402. package/lib/components/icon/icon-add-plus.component.d.ts +7 -7
  403. package/lib/components/icon/icon-address-book.component.d.ts +7 -7
  404. package/lib/components/icon/icon-arrow-down.component.d.ts +7 -7
  405. package/lib/components/icon/icon-arrow-left.component.d.ts +7 -7
  406. package/lib/components/icon/icon-arrow-line-right.component.d.ts +7 -7
  407. package/lib/components/icon/icon-arrow-right.component.d.ts +7 -7
  408. package/lib/components/icon/icon-arrow-up.component.d.ts +7 -7
  409. package/lib/components/icon/icon-arrows.component.d.ts +7 -7
  410. package/lib/components/icon/icon-auction.component.d.ts +7 -7
  411. package/lib/components/icon/{icon-average-tax.d.ts → icon-average-tax.component.d.ts} +7 -7
  412. package/lib/components/icon/icon-bank-account.component.d.ts +7 -7
  413. package/lib/components/icon/{icon-bank-agency.d.ts → icon-bank-agency.component.d.ts} +7 -7
  414. package/lib/components/icon/icon-bank.component.d.ts +7 -7
  415. package/lib/components/icon/icon-banknote-search.component.d.ts +7 -7
  416. package/lib/components/icon/icon-bell.component.d.ts +7 -7
  417. package/lib/components/icon/icon-block.component.d.ts +7 -7
  418. package/lib/components/icon/icon-book-open-text.component.d.ts +7 -7
  419. package/lib/components/icon/icon-book.component.d.ts +7 -7
  420. package/lib/components/icon/icon-box.component.d.ts +7 -7
  421. package/lib/components/icon/icon-build-approved.component.d.ts +7 -7
  422. package/lib/components/icon/icon-build-person.component.d.ts +7 -7
  423. package/lib/components/icon/icon-build-refused.component.d.ts +7 -7
  424. package/lib/components/icon/icon-build-waiting.component.d.ts +7 -7
  425. package/lib/components/icon/icon-calendar-box.component.d.ts +7 -7
  426. package/lib/components/icon/icon-calendar.component.d.ts +7 -7
  427. package/lib/components/icon/icon-camera.component.d.ts +7 -7
  428. package/lib/components/icon/icon-card-machine.component.d.ts +7 -7
  429. package/lib/components/icon/icon-card.component.d.ts +7 -7
  430. package/lib/components/icon/{icon-cash-banknote-invoice.d.ts → icon-cash-banknote-invoice.component.d.ts} +7 -7
  431. package/lib/components/icon/icon-chat.component.d.ts +7 -7
  432. package/lib/components/icon/icon-check-circle-out.component.d.ts +7 -7
  433. package/lib/components/icon/icon-check-circle.component.d.ts +7 -7
  434. package/lib/components/icon/icon-check-grey.component.d.ts +7 -7
  435. package/lib/components/icon/icon-check-white.component.d.ts +7 -7
  436. package/lib/components/icon/icon-check.component.d.ts +7 -7
  437. package/lib/components/icon/icon-clipboard.component.d.ts +7 -7
  438. package/lib/components/icon/icon-clock-closed.component.d.ts +7 -7
  439. package/lib/components/icon/icon-clock.component.d.ts +7 -7
  440. package/lib/components/icon/icon-close-circle.component.d.ts +7 -7
  441. package/lib/components/icon/icon-close.component.d.ts +7 -7
  442. package/lib/components/icon/icon-cnpj.component.d.ts +7 -7
  443. package/lib/components/icon/icon-codepen.component.d.ts +7 -7
  444. package/lib/components/icon/icon-company-name.component.d.ts +7 -7
  445. package/lib/components/icon/icon-contract-pen.component.d.ts +7 -7
  446. package/lib/components/icon/icon-contract.component.d.ts +7 -7
  447. package/lib/components/icon/icon-delete.component.d.ts +7 -7
  448. package/lib/components/icon/icon-document.component.d.ts +7 -7
  449. package/lib/components/icon/icon-dollar-sign-circle.component.d.ts +7 -7
  450. package/lib/components/icon/icon-dollar-sign.component.d.ts +7 -7
  451. package/lib/components/icon/icon-domain.component.d.ts +7 -7
  452. package/lib/components/icon/icon-dots-menu.component.d.ts +7 -7
  453. package/lib/components/icon/icon-double-arrow-left.component.d.ts +7 -7
  454. package/lib/components/icon/icon-double-arrow-right.component.d.ts +7 -7
  455. package/lib/components/icon/icon-download.component.d.ts +7 -7
  456. package/lib/components/icon/icon-drag-drop.component.d.ts +7 -7
  457. package/lib/components/icon/icon-edit-square.component.d.ts +7 -7
  458. package/lib/components/icon/icon-edit.component.d.ts +7 -7
  459. package/lib/components/icon/icon-email-send-fast.component.d.ts +7 -7
  460. package/lib/components/icon/icon-email.component.d.ts +7 -7
  461. package/lib/components/icon/icon-empty-doc.component.d.ts +7 -7
  462. package/lib/components/icon/icon-error.component.d.ts +7 -7
  463. package/lib/components/icon/icon-eye-closed.component.d.ts +7 -7
  464. package/lib/components/icon/icon-eye-open.component.d.ts +7 -7
  465. package/lib/components/icon/icon-filter-add.component.d.ts +7 -7
  466. package/lib/components/icon/icon-filter.component.d.ts +7 -7
  467. package/lib/components/icon/icon-grid.component.d.ts +7 -7
  468. package/lib/components/icon/icon-hands-clap.component.d.ts +7 -7
  469. package/lib/components/icon/icon-help.component.d.ts +7 -7
  470. package/lib/components/icon/icon-hexagon.component.d.ts +7 -7
  471. package/lib/components/icon/icon-home.component.d.ts +7 -7
  472. package/lib/components/icon/icon-image.component.d.ts +7 -7
  473. package/lib/components/icon/icon-info.component.d.ts +7 -7
  474. package/lib/components/icon/icon-invoice.component.d.ts +7 -7
  475. package/lib/components/icon/icon-invoices-anticipated.component.d.ts +7 -7
  476. package/lib/components/icon/icon-invoices-approval.component.d.ts +7 -7
  477. package/lib/components/icon/icon-invoices-refused.component.d.ts +7 -7
  478. package/lib/components/icon/icon-lighting-circle.component.d.ts +7 -7
  479. package/lib/components/icon/icon-list.component.d.ts +7 -7
  480. package/lib/components/icon/icon-location-pin.component.d.ts +7 -7
  481. package/lib/components/icon/icon-login.component.d.ts +7 -7
  482. package/lib/components/icon/icon-logout.component.d.ts +7 -7
  483. package/lib/components/icon/icon-mail-box-upload.component.d.ts +7 -0
  484. package/lib/components/icon/icon-mail-open-document.component.d.ts +7 -0
  485. package/lib/components/icon/icon-medal.component.d.ts +7 -7
  486. package/lib/components/icon/icon-menu.component.d.ts +7 -7
  487. package/lib/components/icon/icon-money-cedule.component.d.ts +7 -7
  488. package/lib/components/icon/{icon-money-discount.d.ts → icon-money-discount.component.d.ts} +7 -7
  489. package/lib/components/icon/icon-money-hand.component.d.ts +7 -7
  490. package/lib/components/icon/{icon-money-net.d.ts → icon-money-net.component.d.ts} +7 -7
  491. package/lib/components/icon/{icon-money-new.d.ts → icon-money-new.component.d.ts} +7 -7
  492. package/lib/components/icon/icon-money-percent.component.d.ts +7 -7
  493. package/lib/components/icon/icon-money-refused.component.d.ts +7 -7
  494. package/lib/components/icon/icon-money-sign.component.d.ts +7 -7
  495. package/lib/components/icon/icon-money-waiting.component.d.ts +7 -7
  496. package/lib/components/icon/icon-money.component.d.ts +7 -7
  497. package/lib/components/icon/icon-more-circle.component.d.ts +7 -7
  498. package/lib/components/icon/icon-more.component.d.ts +7 -7
  499. package/lib/components/icon/icon-new-company.component.d.ts +7 -7
  500. package/lib/components/icon/icon-offered.component.d.ts +7 -7
  501. package/lib/components/icon/icon-open-external.component.d.ts +7 -7
  502. package/lib/components/icon/icon-password.component.d.ts +7 -7
  503. package/lib/components/icon/icon-people.component.d.ts +7 -7
  504. package/lib/components/icon/icon-percent-box.component.d.ts +7 -7
  505. package/lib/components/icon/icon-percent.component.d.ts +7 -7
  506. package/lib/components/icon/icon-person-document.component.d.ts +7 -7
  507. package/lib/components/icon/icon-person-sad.component.d.ts +7 -7
  508. package/lib/components/icon/icon-phone-call.component.d.ts +7 -7
  509. package/lib/components/icon/icon-phone.component.d.ts +7 -7
  510. package/lib/components/icon/icon-pin-navigation.component.d.ts +7 -7
  511. package/lib/components/icon/icon-pork.component.d.ts +7 -7
  512. package/lib/components/icon/icon-radio.component.d.ts +7 -7
  513. package/lib/components/icon/icon-refresh.component.d.ts +7 -7
  514. package/lib/components/icon/{icon-registration.d.ts → icon-registration.component.d.ts} +7 -7
  515. package/lib/components/icon/icon-repeat.component.d.ts +7 -7
  516. package/lib/components/icon/icon-search.component.d.ts +7 -7
  517. package/lib/components/icon/icon-second-warning.component.d.ts +7 -7
  518. package/lib/components/icon/icon-settings.component.d.ts +7 -7
  519. package/lib/components/icon/icon-shield-chekmark.component.d.ts +7 -7
  520. package/lib/components/icon/icon-star-shining.component.d.ts +7 -7
  521. package/lib/components/icon/icon-star.component.d.ts +7 -7
  522. package/lib/components/icon/icon-store.component.d.ts +7 -7
  523. package/lib/components/icon/icon-target-dart-arrow.component.d.ts +7 -7
  524. package/lib/components/icon/icon-today.component.d.ts +7 -7
  525. package/lib/components/icon/icon-trash.component.d.ts +7 -7
  526. package/lib/components/icon/icon-trophy.component.d.ts +7 -7
  527. package/lib/components/icon/icon-unfold-more.component.d.ts +7 -7
  528. package/lib/components/icon/icon-upload.component.d.ts +7 -7
  529. package/lib/components/icon/icon-user-group.component.d.ts +7 -7
  530. package/lib/components/icon/icon-user.component.d.ts +7 -7
  531. package/lib/components/icon/icon-waiting.component.d.ts +7 -7
  532. package/lib/components/icon/icon-wallet.component.d.ts +7 -7
  533. package/lib/components/icon/icon-warning.component.d.ts +7 -7
  534. package/lib/components/icon/icon.component.d.ts +27 -27
  535. package/lib/components/icon/icon.module.d.ts +140 -138
  536. package/lib/components/icon/index.d.ts +135 -121
  537. package/lib/components/image-crop/image-crop.component.d.ts +77 -77
  538. package/lib/components/image-crop/image-crop.module.d.ts +12 -12
  539. package/lib/components/image-crop/index.d.ts +2 -2
  540. package/lib/components/index.d.ts +19 -19
  541. package/lib/components/input/index.d.ts +3 -3
  542. package/lib/components/input/input-filter.component.d.ts +55 -55
  543. package/lib/components/input/input.component.d.ts +64 -64
  544. package/lib/components/input/input.module.d.ts +12 -12
  545. package/lib/components/input-phone/index.d.ts +2 -2
  546. package/lib/components/input-phone/input-phone.component.d.ts +62 -62
  547. package/lib/components/input-phone/input-phone.module.d.ts +13 -13
  548. package/lib/components/modal/index.d.ts +2 -2
  549. package/lib/components/modal/modal.component.d.ts +24 -24
  550. package/lib/components/modal/modal.module.d.ts +10 -10
  551. package/lib/components/option/index.d.ts +2 -2
  552. package/lib/components/option/option.component.d.ts +22 -22
  553. package/lib/components/option/option.module.d.ts +8 -8
  554. package/lib/components/radiobutton/index.d.ts +2 -2
  555. package/lib/components/radiobutton/radiobutton.component.d.ts +39 -39
  556. package/lib/components/radiobutton/radiobutton.module.d.ts +9 -9
  557. package/lib/components/select/index.d.ts +5 -5
  558. package/lib/components/select/select-filter.component.d.ts +41 -41
  559. package/lib/components/select/select-multiple.component.d.ts +48 -48
  560. package/lib/components/select/select-search.component.d.ts +56 -56
  561. package/lib/components/select/select.component.d.ts +48 -48
  562. package/lib/components/select/select.module.d.ts +15 -15
  563. package/lib/components/stepper/index.d.ts +2 -2
  564. package/lib/components/stepper/stepper.component.d.ts +18 -18
  565. package/lib/components/stepper/stepper.module.d.ts +9 -9
  566. package/lib/components/tab/index.d.ts +2 -2
  567. package/lib/components/tab/tab.component.d.ts +24 -24
  568. package/lib/components/tab/tab.module.d.ts +10 -10
  569. package/lib/components/table/index.d.ts +3 -3
  570. package/lib/components/table/table-column.component.d.ts +5 -5
  571. package/lib/components/table/table.component.d.ts +59 -59
  572. package/lib/components/table/table.module.d.ts +12 -12
  573. package/lib/components/toggle/index.d.ts +2 -2
  574. package/lib/components/toggle/toggle.component.d.ts +18 -18
  575. package/lib/components/toggle/toggle.module.d.ts +8 -8
  576. package/lib/components/wizard/index.d.ts +2 -2
  577. package/lib/components/wizard/wizard.component.d.ts +18 -18
  578. package/lib/components/wizard/wizard.module.d.ts +9 -9
  579. package/lib/core/index.d.ts +3 -3
  580. package/lib/core/interfaces/index.d.ts +2 -2
  581. package/lib/core/interfaces/monkey-modal-settings.d.ts +58 -58
  582. package/lib/core/interfaces/monkey-style-settings.d.ts +59 -59
  583. package/lib/core/services/index.d.ts +3 -3
  584. package/lib/core/services/modal/index.d.ts +2 -2
  585. package/lib/core/services/modal/monkey-style-guide-modal-fixed.service.d.ts +16 -16
  586. package/lib/core/services/modal/monkey-style-guide-modal.service.d.ts +18 -18
  587. package/lib/core/services/monkey-style-guide.service.d.ts +10 -10
  588. package/lib/core/services/settings/index.d.ts +1 -1
  589. package/lib/core/services/settings/monkey-style-guide-settings.service.d.ts +15 -15
  590. package/lib/core/services/settings/monkey-style-guide-theme-settings.service.d.ts +12 -12
  591. package/lib/core/services/snackbar/index.d.ts +1 -1
  592. package/lib/core/services/snackbar/mokey-style-guide-snackbar.service.d.ts +58 -58
  593. package/lib/core/utils/index.d.ts +1 -1
  594. package/lib/core/utils/utils.d.ts +29 -29
  595. package/lib/monkey-style-guide.module.d.ts +8 -8
  596. package/monkey-style-guide-2.0.179.tgz +0 -0
  597. package/monkey-style-guide.d.ts +5 -5
  598. package/package.json +1 -1
  599. package/public-api.d.ts +8 -8
  600. package/esm2020/lib/components/icon/icon-average-tax.mjs +0 -15
  601. package/esm2020/lib/components/icon/icon-bank-agency.mjs +0 -15
  602. package/esm2020/lib/components/icon/icon-cash-banknote-invoice.mjs +0 -15
  603. package/esm2020/lib/components/icon/icon-money-discount.mjs +0 -15
  604. package/esm2020/lib/components/icon/icon-money-net.mjs +0 -15
  605. package/esm2020/lib/components/icon/icon-money-new.mjs +0 -15
  606. package/esm2020/lib/components/icon/icon-registration.mjs +0 -15
  607. package/monkey-style-guide-2.0.177.tgz +0 -0
package/README.md CHANGED
@@ -1,1280 +1,1282 @@
1
- [![Contributors][contributors-shield]][contributors-url]
2
- [![MIT License][license-shield]][license-url]
3
- [![LinkedIn][linkedin-shield]][linkedin-url]
4
-
5
- <br />
6
- <p align="center">
7
- <a href="https:monkey.exchange">
8
- <img src="https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/logo.png" alt="Monkey Logo" width="80" height="80">
9
- </a>
10
- <h3 align="center">Monkey Style Guide</h3>
11
- <p align="center">
12
- An style guide template to boost your projects.
13
- <br />
14
- <br />
15
- <a href="https://www.monkey.exchange/who-we-are.html">Who We Are?</a>
16
- </p>
17
- </p>
18
-
19
- ## About The Project
20
-
21
- This project was defined to be the main guide to styles, colors and html components of the entire ecosystem of Monkey Exchange systems.
22
-
23
- This style guide contains a concept to work with a range of different colors, making possible to create beautiful and useful html components.
24
-
25
- ## Components
26
-
27
- All components was developed to work with angular reactive forms, so we need to define a formGroup and set the formControlName, and the components will do the rest of the job to fill all fields properly.
28
- First developed on Angular 10, this color guide contains the following components:
29
-
30
- ---
31
-
32
- ### **Badge**
33
-
34
- ![Badge Demo Screen Shot][badge-screenshot]
35
-
36
- Parameters:
37
-
38
- - **count** (string) is used to define the content of badge.
39
- - **pulseOn** (boolean)(default: false) is used to define if badge has to pulse like a bell.
40
-
41
- Example:
42
-
43
- `example.module.ts`
44
-
45
- ```Typescript
46
- import { MonkeyBadgeModule } from 'monkey-style-guide';
47
-
48
- ...
49
-
50
- @NgModule({
51
- imports: [MonkeyBadgeModule]
52
- })
53
- ...
54
- ```
55
-
56
- `example.component.html`
57
-
58
- ```HTML
59
- <monkey-badge count="3" [pulseOn]="true"></monkey-badge>
60
- ```
61
-
62
- ---
63
-
64
- ### **Button**
65
-
66
- ![Button Demo Screen Shot][buttons-screenshot]
67
-
68
- Parameters:
69
-
70
- - **color** (string) can be _theme_, _error_, _warning_ or _success_
71
- - **disabled** (boolean)(default: false) to disable any action
72
- - **icon** (optional)(string) define the icon for button
73
- - **iconPoition** (string)(default: 'left') define the icon position. Can be _left_ or _right_
74
- - **label** (string) define the label that will be displayed inside the button
75
- - **type** (string) can be _primary_, _secondary_, _tertiary_
76
-
77
- Example:
78
-
79
- `example.module.ts`
80
-
81
- ```Typescript
82
- import { MonkeyButtonModule } from 'monkey-style-guide';
83
-
84
- ...
85
-
86
- @NgModule({
87
- imports: [MonkeyButtonModule]
88
- })
89
- ...
90
- ```
91
-
92
- `example.component.html`
93
-
94
- ```HTML
95
- <monkey-button color="theme" label="Primary" type="primary"></monkey-button>
96
- <monkey-button color="error" label="Secondary" type="secondary"></monkey-button>
97
- <monkey-button color="warning" label="Tertiary" type="tertiary"></monkey-button>
98
- ```
99
-
100
- ---
101
-
102
- There are other variations with buttons:
103
-
104
- ### **Button Avatar**
105
-
106
- ![Button Avatar Demo Screen Shot][button-avatar-screenshot]
107
-
108
- Parameters:
109
-
110
- - **label** (string) define the label that will be displayed inside the button
111
- - **size** (string) define the size of the button
112
- - **type** (string) can be _theme_, _theme-100_ or _none_
113
-
114
- Example:
115
-
116
- `example.component.html`
117
-
118
- ```HTML
119
- <monkey-button-avatar label="Amilson" size="sm" type="theme"></monkey-button-avatar>
120
- ```
121
-
122
- ### **Button Dropdown**
123
-
124
- ![Button Dropdown Demo Screen Shot][button-dropdown-screenshot1]
125
-
126
- ![Button Dropdown Demo Screen Shot][button-dropdown-screenshot2]
127
-
128
- Parameters:
129
-
130
- - **label** (ng-template) the label that will be displayed inside the button. For this particular component, label has be a ng-template.
131
- - **listenClicks** (boolean)(default: true) can be used to define if the dropdown will be closed with clicks inside
132
- - **type** (string)(default: 'filled') can be _unfilled_ or _filled_
133
-
134
- Example:
135
-
136
- `example.component.html`
137
-
138
- ```HTML
139
- <monkey-button-dropdown [label]="profileButton">
140
- <div class="mt-2">
141
- <monkey-button
142
- color="theme"
143
- label="Profile"
144
- type="tertiary"
145
- [routerLink]="'/app/user/profile/edit'"
146
- >
147
- </monkey-button>
148
- </div>
149
- <div class="mt-2">
150
- <monkey-button color="theme" label="Logout" type="tertiary"></monkey-button>
151
- </div>
152
- </monkey-button-dropdown>
153
-
154
- <ng-template #profileButton>
155
- <monkey-button-avatar label="Monkey" size="sm" type="theme"></monkey-button-avatar>
156
- </ng-template>
157
- ```
158
-
159
- ---
160
-
161
- ### **Checkbox**
162
-
163
- ![Checkbox Demo Screen Shot][checkbox-screenshot]
164
-
165
- Parameters:
166
-
167
- - **description** (optional)(string) description to be displayed by side of the checkbox
168
- - **errorMessage** (string) message to alert user
169
- - **helperMessage** (optional)(string) can be used with type single, for formfield purpose
170
- - **infoMessage** (optional)(string) message to help user knows about this component purpose
171
- - **label** (string) define the label that will be displayed inside
172
- - **type** (string)(default: 'single') can be _single_ or _multiple_. Will be used to render checkbox with formfield body or not.
173
-
174
- Events:
175
-
176
- - **onChange** event emited when user make changes
177
-
178
- Example:
179
-
180
- `example.module.ts`
181
-
182
- ```Typescript
183
- import { MonkeyCheckboxModule } from 'monkey-style-guide';
184
-
185
- ...
186
-
187
- @NgModule({
188
- imports: [MonkeyCheckboxModule]
189
- })
190
- ...
191
- ```
192
-
193
- `example.component.html`
194
-
195
- ```HTML
196
- <monkey-checkbox
197
- description="I Agree to Terms"
198
- errorMessage="Validation Message"
199
- formControlName="terms"
200
- helperMessage="Mandatory"
201
- infoMessage="Info message"
202
- label="Terms and Conditions"
203
- type="single">
204
- </monkey-checkbox>
205
- ```
206
-
207
- ---
208
-
209
- ### **Date Range Picker**
210
-
211
- ![Date Range Picker Demo Screen Shot][date-range-picker]
212
-
213
- Parameters:
214
-
215
- - **errorMessage** (string) message to alert user
216
- - **helperMessage** (optional)(string) can be used with type single, for formfield purpose
217
- - **infoMessage** (optional)(string) message to help user knows about this component purpose
218
- - **label** (string) define the label that will be displayed inside
219
- - **i18n** (Object) an i18n object (see example)
220
-
221
- Events:
222
-
223
- - **onChange** event emited when user select a range of dates or when clicked on some action
224
-
225
- Example:
226
-
227
- `example.module.ts`
228
-
229
- ```Typescript
230
- import { MonkeyDateRangePicker } from 'monkey-style-guide';
231
-
232
- ...
233
-
234
- @NgModule({
235
- imports: [MonkeyDateRangePicker]
236
- })
237
- ...
238
- ```
239
-
240
- `example.component.html`
241
-
242
- ```HTML
243
- <monkey-date-range-picker
244
- errorMessage="Error Message"
245
- helperMessage="Helper Message"
246
- infoMessage="Info Message"
247
- label="Label"
248
- [i18n]="i18n">
249
- </monkey-date-range-picker>
250
- ```
251
-
252
- `example.component.ts`
253
-
254
- ```Typescript
255
- ...
256
- i18n = {
257
- months: {
258
- '1': 'January',
259
- '2': 'Febuary',
260
- '3': 'March',
261
- '4': 'April',
262
- '5': 'May',
263
- '6': 'June',
264
- '7': 'July',
265
- '8': 'August',
266
- '9': 'September',
267
- '10': 'October',
268
- '11': 'November',
269
- '12': 'December'
270
- },
271
- days: {
272
- '1': 'Sun.',
273
- '2': 'Mon.',
274
- '3': 'Tue.',
275
- '4': 'Wed.',
276
- '5': 'Thu.',
277
- '6': 'Fri.',
278
- '7': 'Sat.'
279
- },
280
- actions: {
281
- '30': '30 days',
282
- '60': '60 days',
283
- '90': '90 days'
284
- },
285
- today: 'Today'
286
- };
287
- ...
288
- ```
289
-
290
- ---
291
-
292
- ### **Expansion**
293
-
294
- ![Expansion Demo Screen Shot][expansion-screenshot1]
295
-
296
- ![Expansion Demo Screen Shot][expansion-screenshot2]
297
-
298
- Parameters:
299
-
300
- - **color** (string) can be _theme_, _error_, _warning_ or _success_
301
- - **disabled** (boolean)(default: false) to disable any action
302
- - **helperMessage** (optional)(string) can be used with type single, for formfield purpose
303
- - **label** (string) define the label that will be displayed inside
304
- - **open** (boolean)(default: false) make expansion open or not
305
-
306
- Events:
307
-
308
- - **onChange** event emited when user make changes
309
-
310
- Example:
311
-
312
- `example.module.ts`
313
-
314
- ```Typescript
315
- import { MonkeyExpansionModule } from 'monkey-style-guide';
316
-
317
- ...
318
-
319
- @NgModule({
320
- imports: [MonkeyExpansionModule]
321
- })
322
- ...
323
- ```
324
-
325
- `example.component.html`
326
-
327
- ```HTML
328
- <monkey-expansion
329
- color="theme"
330
- label="Expansion"
331
- [helperMessage]="'helperMessage'"
332
- >
333
- <div>Content 1</div>
334
- <div>Content 2</div>
335
- </monkey-expansion>
336
- ```
337
-
338
- ---
339
-
340
- ### **File Upload**
341
-
342
- ![File Upload Demo Screen Shot][file-upload-screenshot1]
343
-
344
- Parameters:
345
-
346
- - **allowedExtensions** (array of string) for example ['.jpg', '.jpeg', '.png']
347
- - **allowedExtensionErrorMessage** (string) message to be displayed if the file extension is wrong
348
- - **errorMessage** (string) message to alert user
349
- - **fileUpload** (function) function to be used to upload file
350
- - **helperMessage** (optional)(string) message to help user to know what to do
351
- - **infoMessage** (optional)(string) required message
352
- - **label** (string) define the label that will be displayed inside
353
- - **listenFiles** (boolean)(default: false) if true, emit event to onHandleFilesReady with the selected file
354
- - **maxSize** (number) max file size in kbytes (1 \* 1024 \* 1024)
355
- - **maxSizeErrorMessage** (string) message to be displayed if the file size is wrong
356
- - **name** (string) name to identify the input
357
- - **placeholder** (optional)(string) message to help user that will be displayed inside the input
358
- - **uploadOngoingMessage** (string) message to be used when upload starts
359
-
360
- Events:
361
-
362
- - **onChange** event emited when user make changes
363
- - **onHandleFilesReady** event emited when listenFiled is true
364
-
365
- Example:
366
-
367
- `example.module.ts`
368
-
369
- ```Typescript
370
- import { MonkeyFileUploadModule } from 'monkey-style-guide';
371
-
372
- ...
373
-
374
- @NgModule({
375
- imports: [MonkeyFileUploadModule]
376
- })
377
- ...
378
- ```
379
-
380
- `example.component.ts`
381
-
382
- ```Typescript
383
- ...
384
-
385
- uploadFunction: Function = (file: any, callback?: Function) => {
386
- this.uploadService.uploadFile(file, callback);
387
- };
388
-
389
- service.uploadFile(file: File, callback?: Function) {
390
- const { httpClient, headers } = this;
391
- const formData = new FormData();
392
- formData.append('file', file);
393
-
394
- httpClient.post<any>('endpoint/upload', formData, {
395
- headers,
396
- reportProgress: true,
397
- observe: 'events'
398
- }).subscribe((event: any) => {
399
- const { loaded, total, body } = event;
400
- switch (event.type) {
401
- case HttpEventType.UploadProgress:
402
- const progress = Math.round((loaded / total * 100));
403
- if (callback) callback(progress);
404
- break;
405
- case HttpEventType.Response:
406
- const { filename, _links: { file: { href } } } = body;
407
- if (callback) {
408
- callback(null, {
409
- fileName: filename,
410
- url: href
411
- }, null);
412
- }
413
- break;
414
- default:
415
- break;
416
- }
417
- }, (err: HttpErrorResponse) => {
418
- const { error } = err;
419
- callback(null, error?.notifications?.join(''));
420
- });
421
- }
422
- ```
423
-
424
- `example.component.html`
425
-
426
- ```HTML
427
- <monkey-file-upload
428
- allowedExtensionErrorMessage="Extension not allowed"
429
- icon="upload-20"
430
- label="upload"
431
- maxSize="5242880"
432
- maxSizeErrorMessage="Max file size is 5mb"
433
- placeholder="Add File"
434
- [fileUpload]="uploadFunction"
435
- ></monkey-file-upload>
436
- ```
437
-
438
- ---
439
-
440
- ### **Icon**
441
-
442
- ![Icons Demo Screen Shot][icons-screenshot1]
443
-
444
- Parameters:
445
-
446
- - **color** (string) define color. Can be _theme_ or _#ffffff_ (hex value)
447
- - **icon** (string) icon name and size separeted by hyfhen
448
-
449
- Icons Options:
450
-
451
- - **add-plus**
452
- - **address-book**
453
- - **arrow-down**
454
- - **arrow-left**
455
- - **arrow-line-right**
456
- - **arrow-right**
457
- - **arrow-up**
458
- - **arrows**
459
- - **auction**
460
- - **average-tax**
461
- - **bank-account**
462
- - **bank-agency**
463
- - **bank**
464
- - **banknote-search**
465
- - **bell**
466
- - **block**
467
- - **book-open-text**
468
- - **book**
469
- - **box**
470
- - **build-approved**
471
- - **build-person**
472
- - **build-refused**
473
- - **build-waiting**
474
- - **calendar**
475
- - **calendar-box**
476
- - **camera**
477
- - **card-machine**
478
- - **card**
479
- - **cash-banknote-invoice**
480
- - **chat**
481
- - **check-circle-out**
482
- - **check-circle**
483
- - **check-grey**
484
- - **check-white**
485
- - **check**
486
- - **clipboard**
487
- - **clock-closed**
488
- - **clock**
489
- - **close-circle**
490
- - **close**
491
- - **cnpj**
492
- - **codepen**
493
- - **company-name**
494
- - **contract-pen**
495
- - **contract**
496
- - **delete**
497
- - **document**
498
- - **dollar-sign-circle**
499
- - **dollar-sign**
500
- - **domain**
501
- - **dots-menu**
502
- - **double-arrow-left**
503
- - **double-arrow-right**
504
- - **download**
505
- - **drag-drop**
506
- - **edit-square**
507
- - **edit**
508
- - **email-send-fast**
509
- - **email**
510
- - **empty-doc**
511
- - **error**
512
- - **eye-closed**
513
- - **eye-open**
514
- - **filter-add**
515
- - **filter**
516
- - **grid**
517
- - **hands-clap**
518
- - **help**
519
- - **hexagon**
520
- - **home**
521
- - **image**
522
- - **info**
523
- - **invoice**
524
- - **invoices-anticipated**
525
- - **invoices-approval**
526
- - **invoices-refused**
527
- - **lighting-circle**
528
- - **list**
529
- - **location-pin**
530
- - **login**
531
- - **logout**
532
- - **medal**
533
- - **menu**
534
- - **money-cedule**
535
- - **money-discount**
536
- - **money-hand**
537
- - **money-net**
538
- - **money-new**
539
- - **money-percent**
540
- - **money-refused**
541
- - **money-sign**
542
- - **money**
543
- - **money-waiting**
544
- - **more-circle**
545
- - **more**
546
- - **new-company**
547
- - **offered**
548
- - **open-external**
549
- - **password**
550
- - **people**
551
- - **percent**
552
- - **percent-box**
553
- - **person-document**
554
- - **person-sad**
555
- - **phone-call**
556
- - **phone**
557
- - **pin-navigation**
558
- - **pork**
559
- - **radio**
560
- - **refresh**
561
- - **registration**
562
- - **repeat**
563
- - **search**
564
- - **second-warning**
565
- - **settings**
566
- - **shield-chekmark**
567
- - **star-shining**
568
- - **star**
569
- - **store**
570
- - **target-dart-arrow**
571
- - **today**
572
- - **trash**
573
- - **trophy**
574
- - **unfold-more**
575
- - **upload**
576
- - **user-group**
577
- - **user**
578
- - **wallet**
579
- - **warning**
580
-
581
- Example:
582
-
583
- `example.module.ts`
584
-
585
- ```Typescript
586
- import { MonkeyIconModule } from 'monkey-style-guide';
587
-
588
- ...
589
-
590
- @NgModule({
591
- imports: [MonkeyIconModule]
592
- })
593
- ...
594
- ```
595
-
596
- `example.component.html`
597
-
598
- ```HTML
599
- <monkey-icon color="#000000" icon="password-16"></monkey-icon>
600
- ```
601
-
602
- ---
603
-
604
- ### **Input**
605
-
606
- ![Input Demo Screen Shot][input-screenshot]
607
-
608
- Parameters:
609
-
610
- - **capitalize** (optional)(boolean) makes the value capitalcase
611
- - **currency** (optional)(boolean) transforms the input in currency input
612
- - **errorMessage** (string) message to alert user
613
- - **helperMessage** (optional)(string) message to help user to know what to do
614
- - **icon** (optional)(string) icon name and size separeted by hyfhen
615
- - **infoMessage** (optional)(string) message to help user knows about this component purpose
616
- - **label** (string) define the label that will be displayed inside
617
- - **lowerCase** (optional)(boolean) makes the value lowercase
618
- - **mask** (optional)(string) mask pattern to mask the input
619
- - **maxLength** (optional)(number) max 255
620
- - **name** (optional)(string) name to identify the input
621
- - **onlyNumber** (optional)(boolean) makes the input accept only number
622
- - **onlyAlphaNumeric** (optional)(boolean) makes the input accept only alphanumeric characters
623
- - **placeholder** (optional)(string) message to help user that will be displayed inside the input
624
- - **prefix** (optional)(string) prefix value for input
625
- - **type** (string) can be _text_ or _password_
626
- - **upperCase** (optional)(boolean) makes the value uppercase
627
-
628
- Events:
629
-
630
- - **onChange** event emited when user make changes
631
-
632
- Example:
633
-
634
- `example.module.ts`
635
-
636
- ```Typescript
637
- import { MonkeyInputModule } from 'monkey-style-guide';
638
-
639
- ...
640
-
641
- @NgModule({
642
- imports: [MonkeyInputModule]
643
- })
644
- ...
645
- ```
646
-
647
- `example.component.html`
648
-
649
- ```HTML
650
- <monkey-input
651
- errorMessage="Validation Message"
652
- formControlName="name"
653
- helperMessage="Mandatory"
654
- icon="user-20"
655
- infoMessage="Info message"
656
- label="Name"
657
- placeholder="Input your full name">
658
- </monkey-input>
659
- ```
660
-
661
- ---
662
-
663
- ### **Input Filter**
664
-
665
- ![Input Filter Demo Screen Shot][input-filter-screenshot]
666
-
667
- Parameters:
668
-
669
- - **helperMessage** (optional)(string) message to help user to know what to do
670
- - **icon** (optional)(string) icon name and size separeted by hyfhen
671
- - **infoMessage** (optional)(string) message to help user knows about this component purpose
672
- - **label** (string) define the label that will be displayed inside
673
- - **maxLength** (optional)(number) max 255
674
- - **name** (optional)(string) name to identify the input
675
- - **placeholder** (optional)(string) message to help user that will be displayed inside the input
676
-
677
- Events:
678
-
679
- - **onChange** event emited when user make changes
680
-
681
- Example:
682
-
683
- `example.module.ts`
684
-
685
- ```Typescript
686
- import { MonkeyInputModule } from 'monkey-style-guide';
687
-
688
- ...
689
-
690
- @NgModule({
691
- imports: [MonkeyInputModule]
692
- })
693
- ...
694
- ```
695
-
696
- `example.component.html`
697
-
698
- ```HTML
699
- <monkey-input-filter
700
- formControlName="name"
701
- helperMessage="Mandatory"
702
- icon="user-20"
703
- infoMessage="Info message"
704
- label="Name"
705
- placeholder="Input your full name">
706
- </monkey-input-filter>
707
- ```
708
-
709
- ---
710
-
711
- ### **Modal**
712
-
713
- ![Modal Demo Screen Shot][modal-screenshot]
714
-
715
- Parameters:
716
-
717
- - **config** (MonkeyModalConfig) the configuration of modal
718
- - **modalRef** (MonkeyModalRefs) the modal reference
719
- - **onHandleConfirm** (EventEmitter) will emit and event when you click confirm
720
-
721
- Example:
722
-
723
- `example.module.ts`
724
-
725
- ```Typescript
726
- import {
727
- MonkeyModalModule,
728
- MonkeyStyleGuideModalService
729
- } from 'monkey-style-guide';
730
-
731
- ...
732
-
733
- @NgModule({
734
- imports: [MonkeyModalModule],
735
- providers: [MonkeyStyleGuideModalService]
736
- })
737
- ...
738
- ```
739
-
740
- `parent.component.ts`
741
-
742
- ```Typescript
743
- ...
744
- import { MonkeyStyleGuideModalService } from 'monkey-style-guide';
745
- import { ModalComponent } from './modal/modal.component';
746
-
747
- ...
748
-
749
- constructor(private modalService: MonkeyStyleGuideModalService) {}
750
-
751
- openModal() {
752
- this.modalService.open(ModalComponent, {
753
- color: 'theme',
754
- size: 'md',
755
- action: {
756
- cancel: {
757
- actionColor: 'theme',
758
- actionType: 'tertiary',
759
- label: 'Cancel',
760
- },
761
- confirm: {
762
- actionColor: 'theme',
763
- actionType: 'primary',
764
- label: 'Confirm',
765
- },
766
- },
767
- });
768
- }
769
- ```
770
-
771
- `modal.component.ts`
772
-
773
- ```Typescript
774
- import { Component, EventEmitter, Input } from '@angular/core';
775
- import {
776
- MonkeyModalConfig,
777
- MonkeyModalRefs,
778
- MonkeyStyleGuideModalService
779
- } from 'monkey-style-guide';
780
-
781
- @Component({
782
- selector: 'mk-modal',
783
- template: `
784
- <monkey-modal
785
- [config]="config"
786
- [modalRef]="modalRef"
787
- [onHandleConfirm]="onHandleConfirm"
788
- >
789
- <div style="align-items: center; display: flex; justify-content: center;">
790
- <img
791
- src="https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/logo.png"
792
- />
793
- </div>
794
- </monkey-modal>
795
- `,
796
- })
797
- export class ModalComponent {
798
- @Input() config: MonkeyModalConfig;
799
- @Input() modalRef: MonkeyModalRefs<this>;
800
- @Input() onHandleConfirm = new EventEmitter<any>();
801
-
802
- constructor(private modalService: MonkeyStyleGuideModalService) {
803
- this.onHandleConfirm.subscribe(() => {
804
- console.log('Confirm clicked!');
805
-
806
- this.modalService.closeAll();
807
- });
808
- }
809
- }
810
- ```
811
-
812
- In case you need the logic in your parent component you can simply pass the `action` key to `MonkeyModalConfig` and remove `onHandleConfirm` of your modal component like this:
813
-
814
- ```Typescript
815
- ...
816
-
817
- openModal() {
818
- this.modalService.open(ModalComponent, {
819
- color: 'theme',
820
- size: 'md',
821
- action: {
822
- cancel: {
823
- actionColor: 'theme',
824
- actionType: 'tertiary',
825
- label: 'Cancel',
826
- },
827
- confirm: {
828
- action: () => {
829
- console.log('Modal closed!');
830
- },
831
- actionColor: 'theme',
832
- actionType: 'primary',
833
- label: 'Confirm',
834
- },
835
- },
836
- });
837
- }
838
- ```
839
-
840
- ```Typescript
841
- ...
842
-
843
- export class ModalComponent {
844
- @Input() config: MonkeyModalConfig;
845
- @Input() modalRef: MonkeyModalRefs<this>;
846
-
847
- constructor() {}
848
- }
849
- ```
850
-
851
- ---
852
-
853
- ### **Radiobutton**
854
-
855
- ![Radiobutton Demo Screen Shot][radiobutton-screenshot]
856
-
857
- Parameters:
858
-
859
- - **errorMessage** (string) message to alert user
860
- - **helperMessage** (optional)(string) message to help user to know what to do
861
- - **infoMessage** (optional)(string) message to help user knows about this component purpose
862
- - **label** (string) define the label that will be displayed inside
863
- - **placeholder** (optional)(string) message to help user that will be displayed inside the input
864
-
865
- Events:
866
-
867
- - **onChange** event emited when user make changes
868
-
869
- Example:
870
-
871
- `example.module.ts`
872
-
873
- ```Typescript
874
- import { MonkeyRadioButtonModule } from 'monkey-style-guide';
875
-
876
- ...
877
-
878
- @NgModule({
879
- imports: [MonkeyRadioButtonModule]
880
- })
881
- ...
882
- ```
883
-
884
- `example.component.html`
885
-
886
- ```HTML
887
- <monkey-radiobutton
888
- formControlName="gender"
889
- label="Gender"
890
- helperMessage="Mandatory"
891
- icon="help-20"
892
- infoMessage="Info message"
893
- errorMessage="Validation message"
894
- >
895
- <monkey-option label="Female" value="female"></monkey-option>
896
- <monkey-option label="Male" value="male"></monkey-option>
897
- <monkey-option label="I prefer not to choose" value="not_choose"></monkey-option>
898
- </monkey-radiobutton>
899
- ```
900
-
901
- ---
902
-
903
- ### **Select**
904
-
905
- ![Select Demo Screen Shot][select-screenshot]
906
-
907
- Parameters:
908
-
909
- - **errorMessage** (string) message to alert user
910
- - **helperMessage** (optional)(string) message to help user to know what to do
911
- - **icon** (optional)(string) icon name and size separeted by hyfhen
912
- - **infoMessage** (optional)(string) message to help user knows about this component purpose
913
- - **label** (string) define the label that will be displayed inside
914
- - **placeholder** (optional)(string) message to help user that will be displayed inside the input
915
-
916
- Events:
917
-
918
- - **onChange** event emited when user make changes
919
-
920
- Example:
921
-
922
- `example.module.ts`
923
-
924
- ```Typescript
925
- import {
926
- MonkeyOptionModule,
927
- MonkeySelectModule
928
- } from 'monkey-style-guide';
929
-
930
- ...
931
-
932
- @NgModule({
933
- imports: [
934
- MonkeyOptionModule,
935
- MonkeySelectModule
936
- ]
937
- })
938
- ...
939
- ```
940
-
941
- `example.component.html`
942
-
943
- ```HTML
944
- <monkey-select
945
- errorMessage="Validation Message"
946
- formControlName="documentType"
947
- helperMessage="Mandatory"
948
- icon="upload-20"
949
- infoMessage="Info message"
950
- label="Select the document type to upload"
951
- >
952
- <monkey-option label="Personal Document" value="personal_document">
953
- </monkey-option>
954
- <monkey-option label="Social Contract" value="social_contract">
955
- </monkey-option>
956
- <monkey-option label="Procuraction Contract" value="procuration_contract">
957
- </monkey-option>
958
- </monkey-select>
959
- ```
960
-
961
- ---
962
-
963
- ### **Table**
964
-
965
- ![Table Demo Screen Shot][table-screenshot]
966
-
967
- Parameters:
968
-
969
- - **dataSource** (array) the data to be displayed
970
- - **headers** (array) column headers
971
- - **loading** (optional)(boolean) show loading progress
972
- - **rowTemplate** (TemplateRef) the template to show rows
973
- - **selectable** (optional)(boolean) enable row selection
974
-
975
- Events:
976
-
977
- - **selection** returns an array with selected rows
978
-
979
- Example:
980
-
981
- `example.module.ts`
982
-
983
- ```Typescript
984
- import { MonkeyTableModule } from 'monkey-style-guide';
985
-
986
- ...
987
-
988
- @NgModule({
989
- imports: [MonkeyTableModule]
990
- })
991
- ...
992
- ```
993
-
994
- `example.component.ts`
995
-
996
- ```Typecript
997
- _dataSourceHeaders = ['column1', 'column2', 'column3', 'column4'];
998
- _dataSource = [
999
- [1, 2, 3, 4, 5, 6],
1000
- [5, 6, 7, 8, 9, 10],
1001
- [5, 6, 7, 8, 9, 10],
1002
- [5, 6, 7, 8, 9, 10],
1003
- ];
1004
- ```
1005
-
1006
- `example.component.html`
1007
-
1008
- ```HTML
1009
- <monkey-table
1010
- [dataSource]="_dataSource"
1011
- [headers]="_dataSourceHeaders"
1012
- [loading]="true"
1013
- [rowTemplate]="rowTemplate"
1014
- [selectable]="true"
1015
- (selection)="onHandleSelection($event)"
1016
- >
1017
- <ng-template #rowTemplate let-row="row">
1018
- <monkey-table-column>{{ row[0] }}</monkey-table-column>
1019
- <monkey-table-column>{{ row[1] }}</monkey-table-column>
1020
- <monkey-table-column>{{ row[2] }}</monkey-table-column>
1021
- <monkey-table-column>{{ row[3] }}</monkey-table-column>
1022
- </ng-template>
1023
- </monkey-table>
1024
- ```
1025
-
1026
- ---
1027
-
1028
- ### **Toggle**
1029
-
1030
- ![Toggle Demo Screen Shot][toggle-screenshot]
1031
-
1032
- Parameters:
1033
-
1034
- - **value** (boolean)(default: false)
1035
- - **disabled** (boolean)(default: false) to disable any action
1036
-
1037
- Events:
1038
-
1039
- - **onChange** event emited when user make changes
1040
-
1041
- Example:
1042
-
1043
- `example.module.ts`
1044
-
1045
- ```Typescript
1046
- import { MonkeyToggleModule } from 'monkey-style-guide';
1047
-
1048
- ...
1049
-
1050
- @NgModule({
1051
- imports: [MonkeyToggleModule]
1052
- })
1053
- ...
1054
- ```
1055
-
1056
- `example.component.html`
1057
-
1058
- ```HTML
1059
- <monkey-toggle [value]="_form?.get('smsNotification').value"
1060
- (onChange)="onHandleToggleSMS($event)">
1061
- </monkey-toggle>
1062
- ```
1063
-
1064
- ## Prerequisites
1065
-
1066
- The main feature of this project is to allow changing the application theme, such as primary colors and error colors.
1067
- For this, it is necessary to have a file called monkey-style-guide-settings.json at the root of your project's assets folder.
1068
-
1069
- For example:
1070
-
1071
- ![Settings Json Screen Shot][settings-screenshot]
1072
-
1073
- Content of monkey-style-guide-settings.json:
1074
-
1075
- ```JSON
1076
- {
1077
- "theme": {
1078
- "title": "Monkey Exchange",
1079
- "favicon": "assets/favicon.svg"
1080
- },
1081
- "colors": {
1082
- "theme": {
1083
- "main": "#034EA2",
1084
- "100": "#F5FAFF",
1085
- "200": "#D7EAFE",
1086
- "300": "#A5CFFE",
1087
- "400": "#72B4FD",
1088
- "500": "#4099FC",
1089
- "600": "#0F7EFB",
1090
- "700": "#0465D2",
1091
- "800": "#023064",
1092
- "900": "#023064",
1093
- "contrast": {
1094
- "main": "white",
1095
- "100": "rgba(black, 0.87)",
1096
- "200": "white",
1097
- "300": "white",
1098
- "400": "white",
1099
- "500": "white",
1100
- "600": "white",
1101
- "700": "white",
1102
- "800": "white",
1103
- "900": "white"
1104
- }
1105
- },
1106
- "error": {
1107
- "main": "#e70c0c",
1108
- "100": "#fbb5b5",
1109
- "200": "#f87f7f",
1110
- "300": "#f53b3b",
1111
- "400": "#f31e1e",
1112
- "500": "#e70c0c",
1113
- "600": "#ca0a0a",
1114
- "700": "#ad0909",
1115
- "800": "#900707",
1116
- "900": "#730606",
1117
- "contrast": {
1118
- "main": "white",
1119
- "100": "rgba(black, 0.87)",
1120
- "200": "rgba(black, 0.87)",
1121
- "300": "white",
1122
- "400": "white",
1123
- "500": "white",
1124
- "600": "white",
1125
- "700": "white",
1126
- "800": "white",
1127
- "900": "white"
1128
- }
1129
- },
1130
- "warning": {
1131
- "main": "#efa30e",
1132
- "100": "#fbe7be",
1133
- "200": "#f8d389",
1134
- "300": "#f4b946",
1135
- "400": "#f2ae29",
1136
- "500": "#efa30e",
1137
- "600": "#d28f0c",
1138
- "700": "#b57c0b",
1139
- "800": "#986809",
1140
- "900": "#7b5407",
1141
- "contrast": {
1142
- "main": "rgba(black, 0.87)",
1143
- "100": "rgba(black, 0.87)",
1144
- "200": "rgba(black, 0.87)",
1145
- "300": "rgba(black, 0.87)",
1146
- "400": "rgba(black, 0.87)",
1147
- "500": "rgba(black, 0.87)",
1148
- "600": "rgba(black, 0.87)",
1149
- "700": "rgba(black, 0.87)",
1150
- "800": "white",
1151
- "900": "white"
1152
- }
1153
- },
1154
- "success": {
1155
- "main": "#00875a",
1156
- "100": "#45ffc1",
1157
- "200": "#0dffae",
1158
- "300": "#00c483",
1159
- "400": "#00a66e",
1160
- "500": "#00875a",
1161
- "600": "#006846",
1162
- "700": "#004a31",
1163
- "800": "#002b1d",
1164
- "900": "#000d08",
1165
- "contrast": {
1166
- "main": "white",
1167
- "100": "rgba(black, 0.87)",
1168
- "200": "rgba(black, 0.87)",
1169
- "300": "rgba(black, 0.87)",
1170
- "400": "white",
1171
- "500": "white",
1172
- "600": "white",
1173
- "700": "white",
1174
- "800": "white",
1175
- "900": "white"
1176
- }
1177
- },
1178
- "question": {
1179
- "main": "#8D38FA",
1180
- "100": "#F4EBFF",
1181
- "200": "#E8D7FE",
1182
- "300": "#D2AFFD",
1183
- "400": "#A460FB",
1184
- "500": "#8D38FA",
1185
- "600": "#7710F9",
1186
- "700": "#5104B3",
1187
- "800": "#2D0264",
1188
- "900": "#1B013C",
1189
- "contrast": {
1190
- "main": "white",
1191
- "100": "rgba(black, 0.87)",
1192
- "200": "rgba(black, 0.87)",
1193
- "300": "rgba(black, 0.87)",
1194
- "400": "white",
1195
- "500": "white",
1196
- "600": "white",
1197
- "700": "white",
1198
- "800": "white",
1199
- "900": "white"
1200
- }
1201
- }
1202
- }
1203
- }
1204
- ```
1205
-
1206
- ## Installation
1207
-
1208
- 1. Install NPM packages:
1209
-
1210
- ```sh
1211
- npm install monkey-style-guide
1212
- ```
1213
-
1214
- ## Usage
1215
-
1216
- Import `monkey-style-guide` in your `style.scss`
1217
-
1218
- ```scss
1219
- @import '~monkey-style-guide/assets/scss/theme';
1220
- ```
1221
-
1222
- Import `MonkeyStyleGuideModule` in your `app.module.ts`
1223
-
1224
- ```Typescript
1225
- import { MonkeyStyleGuideModule } from 'monkey-style-guide';
1226
-
1227
- @NgModule({
1228
- declarations: [AppComponent],
1229
- imports: [MonkeyStyleGuideModule],
1230
- bootstrap: [AppComponent],
1231
- })
1232
- export class AppModule {}
1233
- ```
1234
-
1235
- Than call the `bootstrap` method in your `app.component.ts`
1236
-
1237
- ```Typescript
1238
- import { Component } from '@angular/core';
1239
- import { MonkeyStyleGuideSettingsService } from 'monkey-style-guide';
1240
-
1241
- @Component({
1242
- selector: 'app-root',
1243
- templateUrl: './app.component.html',
1244
- styleUrls: ['./app.component.scss'],
1245
- })
1246
- export class AppComponent {
1247
- constructor(private settingsService: MonkeyStyleGuideSettingsService) {
1248
- this.settingsService.bootstrap('');
1249
- }
1250
- }
1251
- ```
1252
-
1253
- <!-- MARKDOWN LINKS & IMAGES -->
1254
- <!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->
1255
-
1256
- [badge-screenshot]: https://user-images.githubusercontent.com/10110065/111625441-9e5df280-87cb-11eb-905c-008607cf859e.png
1257
- [button-avatar-screenshot]: https://user-images.githubusercontent.com/10110065/111626956-50e28500-87cd-11eb-85c1-aaa8c06bb4e0.png
1258
- [button-dropdown-screenshot1]: https://user-images.githubusercontent.com/10110065/111631407-1e875680-87d2-11eb-9631-d1d2ccf8f076.png
1259
- [button-dropdown-screenshot2]: https://user-images.githubusercontent.com/10110065/111631726-82118400-87d2-11eb-9653-4502c3d82d51.png
1260
- [buttons-screenshot]: https://user-images.githubusercontent.com/10110065/142933460-7a84ad76-b57f-40a0-b809-292af31c1e8f.png
1261
- [checkbox-screenshot]: https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/checkbox.png
1262
- [contributors-shield]: https://img.shields.io/badge/Contributors-2-brightgreen?style=flat
1263
- [contributors-url]: https://github.com/MonkeyECX/monkey-style-guide/graphs/contributors
1264
- [date-range-picker]: https://user-images.githubusercontent.com/12416871/146080473-8543b9ae-7186-42ee-8ec8-bfd1eef09df6.png
1265
- [expansion-screenshot1]: https://user-images.githubusercontent.com/10110065/111636157-f8b08080-87d6-11eb-86ab-86839297d068.png
1266
- [expansion-screenshot2]: https://user-images.githubusercontent.com/10110065/111636340-24336b00-87d7-11eb-9f19-504ab96cc9af.png
1267
- [file-upload-screenshot1]: https://user-images.githubusercontent.com/10110065/111640018-8b065380-87da-11eb-8d47-87ddea29b943.png
1268
- [icons-screenshot1]: https://user-images.githubusercontent.com/12416871/201798118-f5ac7a0d-f3ef-4aeb-b701-4ca2278707d1.png
1269
- [input-filter-screenshot]: https://user-images.githubusercontent.com/32619691/163216159-3a9f985e-3ba9-4e10-8ba4-0f60931f83d1.png
1270
- [input-screenshot]: https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/input.png
1271
- [license-shield]: https://img.shields.io/github/license/othneildrew/Best-README-Template.svg?style=flat-square
1272
- [license-url]: https://github.com/othneildrew/Best-README-Template/blob/master/LICENSE.txt
1273
- [linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=flat-square&logo=linkedin&colorB=157
1274
- [linkedin-url]: https://www.linkedin.com/company/monkeyexchange
1275
- [modal-screenshot]: https://user-images.githubusercontent.com/12416871/119838920-2c480f00-beda-11eb-9e44-e42262f39c34.png
1276
- [radiobutton-screenshot]: https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/radiobutton.png
1277
- [select-screenshot]: https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/select.png
1278
- [settings-screenshot]: https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/style-settings-json.png
1279
- [table-screenshot]: https://user-images.githubusercontent.com/12416871/119574643-29d79f00-bd8c-11eb-9747-2e6dc86410da.png
1280
- [toggle-screenshot]: https://user-images.githubusercontent.com/12416871/119849813-53570e80-bee3-11eb-87f8-0871f8e26f58.png
1
+ [![Contributors][contributors-shield]][contributors-url]
2
+ [![MIT License][license-shield]][license-url]
3
+ [![LinkedIn][linkedin-shield]][linkedin-url]
4
+
5
+ <br />
6
+ <p align="center">
7
+ <a href="https:monkey.exchange">
8
+ <img src="https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/logo.png" alt="Monkey Logo" width="80" height="80">
9
+ </a>
10
+ <h3 align="center">Monkey Style Guide</h3>
11
+ <p align="center">
12
+ An style guide template to boost your projects.
13
+ <br />
14
+ <br />
15
+ <a href="https://www.monkey.exchange/who-we-are.html">Who We Are?</a>
16
+ </p>
17
+ </p>
18
+
19
+ ## About The Project
20
+
21
+ This project was defined to be the main guide to styles, colors and html components of the entire ecosystem of Monkey Exchange systems.
22
+
23
+ This style guide contains a concept to work with a range of different colors, making possible to create beautiful and useful html components.
24
+
25
+ ## Components
26
+
27
+ All components was developed to work with angular reactive forms, so we need to define a formGroup and set the formControlName, and the components will do the rest of the job to fill all fields properly.
28
+ First developed on Angular 10, this color guide contains the following components:
29
+
30
+ ---
31
+
32
+ ### **Badge**
33
+
34
+ ![Badge Demo Screen Shot][badge-screenshot]
35
+
36
+ Parameters:
37
+
38
+ - **count** (string) is used to define the content of badge.
39
+ - **pulseOn** (boolean)(default: false) is used to define if badge has to pulse like a bell.
40
+
41
+ Example:
42
+
43
+ `example.module.ts`
44
+
45
+ ```Typescript
46
+ import { MonkeyBadgeModule } from 'monkey-style-guide';
47
+
48
+ ...
49
+
50
+ @NgModule({
51
+ imports: [MonkeyBadgeModule]
52
+ })
53
+ ...
54
+ ```
55
+
56
+ `example.component.html`
57
+
58
+ ```HTML
59
+ <monkey-badge count="3" [pulseOn]="true"></monkey-badge>
60
+ ```
61
+
62
+ ---
63
+
64
+ ### **Button**
65
+
66
+ ![Button Demo Screen Shot][buttons-screenshot]
67
+
68
+ Parameters:
69
+
70
+ - **color** (string) can be _theme_, _error_, _warning_ or _success_
71
+ - **disabled** (boolean)(default: false) to disable any action
72
+ - **icon** (optional)(string) define the icon for button
73
+ - **iconPoition** (string)(default: 'left') define the icon position. Can be _left_ or _right_
74
+ - **label** (string) define the label that will be displayed inside the button
75
+ - **type** (string) can be _primary_, _secondary_, _tertiary_
76
+
77
+ Example:
78
+
79
+ `example.module.ts`
80
+
81
+ ```Typescript
82
+ import { MonkeyButtonModule } from 'monkey-style-guide';
83
+
84
+ ...
85
+
86
+ @NgModule({
87
+ imports: [MonkeyButtonModule]
88
+ })
89
+ ...
90
+ ```
91
+
92
+ `example.component.html`
93
+
94
+ ```HTML
95
+ <monkey-button color="theme" label="Primary" type="primary"></monkey-button>
96
+ <monkey-button color="error" label="Secondary" type="secondary"></monkey-button>
97
+ <monkey-button color="warning" label="Tertiary" type="tertiary"></monkey-button>
98
+ ```
99
+
100
+ ---
101
+
102
+ There are other variations with buttons:
103
+
104
+ ### **Button Avatar**
105
+
106
+ ![Button Avatar Demo Screen Shot][button-avatar-screenshot]
107
+
108
+ Parameters:
109
+
110
+ - **label** (string) define the label that will be displayed inside the button
111
+ - **size** (string) define the size of the button
112
+ - **type** (string) can be _theme_, _theme-100_ or _none_
113
+
114
+ Example:
115
+
116
+ `example.component.html`
117
+
118
+ ```HTML
119
+ <monkey-button-avatar label="Amilson" size="sm" type="theme"></monkey-button-avatar>
120
+ ```
121
+
122
+ ### **Button Dropdown**
123
+
124
+ ![Button Dropdown Demo Screen Shot][button-dropdown-screenshot1]
125
+
126
+ ![Button Dropdown Demo Screen Shot][button-dropdown-screenshot2]
127
+
128
+ Parameters:
129
+
130
+ - **label** (ng-template) the label that will be displayed inside the button. For this particular component, label has be a ng-template.
131
+ - **listenClicks** (boolean)(default: true) can be used to define if the dropdown will be closed with clicks inside
132
+ - **type** (string)(default: 'filled') can be _unfilled_ or _filled_
133
+
134
+ Example:
135
+
136
+ `example.component.html`
137
+
138
+ ```HTML
139
+ <monkey-button-dropdown [label]="profileButton">
140
+ <div class="mt-2">
141
+ <monkey-button
142
+ color="theme"
143
+ label="Profile"
144
+ type="tertiary"
145
+ [routerLink]="'/app/user/profile/edit'"
146
+ >
147
+ </monkey-button>
148
+ </div>
149
+ <div class="mt-2">
150
+ <monkey-button color="theme" label="Logout" type="tertiary"></monkey-button>
151
+ </div>
152
+ </monkey-button-dropdown>
153
+
154
+ <ng-template #profileButton>
155
+ <monkey-button-avatar label="Monkey" size="sm" type="theme"></monkey-button-avatar>
156
+ </ng-template>
157
+ ```
158
+
159
+ ---
160
+
161
+ ### **Checkbox**
162
+
163
+ ![Checkbox Demo Screen Shot][checkbox-screenshot]
164
+
165
+ Parameters:
166
+
167
+ - **description** (optional)(string) description to be displayed by side of the checkbox
168
+ - **errorMessage** (string) message to alert user
169
+ - **helperMessage** (optional)(string) can be used with type single, for formfield purpose
170
+ - **infoMessage** (optional)(string) message to help user knows about this component purpose
171
+ - **label** (string) define the label that will be displayed inside
172
+ - **type** (string)(default: 'single') can be _single_ or _multiple_. Will be used to render checkbox with formfield body or not.
173
+
174
+ Events:
175
+
176
+ - **onChange** event emited when user make changes
177
+
178
+ Example:
179
+
180
+ `example.module.ts`
181
+
182
+ ```Typescript
183
+ import { MonkeyCheckboxModule } from 'monkey-style-guide';
184
+
185
+ ...
186
+
187
+ @NgModule({
188
+ imports: [MonkeyCheckboxModule]
189
+ })
190
+ ...
191
+ ```
192
+
193
+ `example.component.html`
194
+
195
+ ```HTML
196
+ <monkey-checkbox
197
+ description="I Agree to Terms"
198
+ errorMessage="Validation Message"
199
+ formControlName="terms"
200
+ helperMessage="Mandatory"
201
+ infoMessage="Info message"
202
+ label="Terms and Conditions"
203
+ type="single">
204
+ </monkey-checkbox>
205
+ ```
206
+
207
+ ---
208
+
209
+ ### **Date Range Picker**
210
+
211
+ ![Date Range Picker Demo Screen Shot][date-range-picker]
212
+
213
+ Parameters:
214
+
215
+ - **errorMessage** (string) message to alert user
216
+ - **helperMessage** (optional)(string) can be used with type single, for formfield purpose
217
+ - **infoMessage** (optional)(string) message to help user knows about this component purpose
218
+ - **label** (string) define the label that will be displayed inside
219
+ - **i18n** (Object) an i18n object (see example)
220
+
221
+ Events:
222
+
223
+ - **onChange** event emited when user select a range of dates or when clicked on some action
224
+
225
+ Example:
226
+
227
+ `example.module.ts`
228
+
229
+ ```Typescript
230
+ import { MonkeyDateRangePicker } from 'monkey-style-guide';
231
+
232
+ ...
233
+
234
+ @NgModule({
235
+ imports: [MonkeyDateRangePicker]
236
+ })
237
+ ...
238
+ ```
239
+
240
+ `example.component.html`
241
+
242
+ ```HTML
243
+ <monkey-date-range-picker
244
+ errorMessage="Error Message"
245
+ helperMessage="Helper Message"
246
+ infoMessage="Info Message"
247
+ label="Label"
248
+ [i18n]="i18n">
249
+ </monkey-date-range-picker>
250
+ ```
251
+
252
+ `example.component.ts`
253
+
254
+ ```Typescript
255
+ ...
256
+ i18n = {
257
+ months: {
258
+ '1': 'January',
259
+ '2': 'Febuary',
260
+ '3': 'March',
261
+ '4': 'April',
262
+ '5': 'May',
263
+ '6': 'June',
264
+ '7': 'July',
265
+ '8': 'August',
266
+ '9': 'September',
267
+ '10': 'October',
268
+ '11': 'November',
269
+ '12': 'December'
270
+ },
271
+ days: {
272
+ '1': 'Sun.',
273
+ '2': 'Mon.',
274
+ '3': 'Tue.',
275
+ '4': 'Wed.',
276
+ '5': 'Thu.',
277
+ '6': 'Fri.',
278
+ '7': 'Sat.'
279
+ },
280
+ actions: {
281
+ '30': '30 days',
282
+ '60': '60 days',
283
+ '90': '90 days'
284
+ },
285
+ today: 'Today'
286
+ };
287
+ ...
288
+ ```
289
+
290
+ ---
291
+
292
+ ### **Expansion**
293
+
294
+ ![Expansion Demo Screen Shot][expansion-screenshot1]
295
+
296
+ ![Expansion Demo Screen Shot][expansion-screenshot2]
297
+
298
+ Parameters:
299
+
300
+ - **color** (string) can be _theme_, _error_, _warning_ or _success_
301
+ - **disabled** (boolean)(default: false) to disable any action
302
+ - **helperMessage** (optional)(string) can be used with type single, for formfield purpose
303
+ - **label** (string) define the label that will be displayed inside
304
+ - **open** (boolean)(default: false) make expansion open or not
305
+
306
+ Events:
307
+
308
+ - **onChange** event emited when user make changes
309
+
310
+ Example:
311
+
312
+ `example.module.ts`
313
+
314
+ ```Typescript
315
+ import { MonkeyExpansionModule } from 'monkey-style-guide';
316
+
317
+ ...
318
+
319
+ @NgModule({
320
+ imports: [MonkeyExpansionModule]
321
+ })
322
+ ...
323
+ ```
324
+
325
+ `example.component.html`
326
+
327
+ ```HTML
328
+ <monkey-expansion
329
+ color="theme"
330
+ label="Expansion"
331
+ [helperMessage]="'helperMessage'"
332
+ >
333
+ <div>Content 1</div>
334
+ <div>Content 2</div>
335
+ </monkey-expansion>
336
+ ```
337
+
338
+ ---
339
+
340
+ ### **File Upload**
341
+
342
+ ![File Upload Demo Screen Shot][file-upload-screenshot1]
343
+
344
+ Parameters:
345
+
346
+ - **allowedExtensions** (array of string) for example ['.jpg', '.jpeg', '.png']
347
+ - **allowedExtensionErrorMessage** (string) message to be displayed if the file extension is wrong
348
+ - **errorMessage** (string) message to alert user
349
+ - **fileUpload** (function) function to be used to upload file
350
+ - **helperMessage** (optional)(string) message to help user to know what to do
351
+ - **infoMessage** (optional)(string) required message
352
+ - **label** (string) define the label that will be displayed inside
353
+ - **listenFiles** (boolean)(default: false) if true, emit event to onHandleFilesReady with the selected file
354
+ - **maxSize** (number) max file size in kbytes (1 \* 1024 \* 1024)
355
+ - **maxSizeErrorMessage** (string) message to be displayed if the file size is wrong
356
+ - **name** (string) name to identify the input
357
+ - **placeholder** (optional)(string) message to help user that will be displayed inside the input
358
+ - **uploadOngoingMessage** (string) message to be used when upload starts
359
+
360
+ Events:
361
+
362
+ - **onChange** event emited when user make changes
363
+ - **onHandleFilesReady** event emited when listenFiled is true
364
+
365
+ Example:
366
+
367
+ `example.module.ts`
368
+
369
+ ```Typescript
370
+ import { MonkeyFileUploadModule } from 'monkey-style-guide';
371
+
372
+ ...
373
+
374
+ @NgModule({
375
+ imports: [MonkeyFileUploadModule]
376
+ })
377
+ ...
378
+ ```
379
+
380
+ `example.component.ts`
381
+
382
+ ```Typescript
383
+ ...
384
+
385
+ uploadFunction: Function = (file: any, callback?: Function) => {
386
+ this.uploadService.uploadFile(file, callback);
387
+ };
388
+
389
+ service.uploadFile(file: File, callback?: Function) {
390
+ const { httpClient, headers } = this;
391
+ const formData = new FormData();
392
+ formData.append('file', file);
393
+
394
+ httpClient.post<any>('endpoint/upload', formData, {
395
+ headers,
396
+ reportProgress: true,
397
+ observe: 'events'
398
+ }).subscribe((event: any) => {
399
+ const { loaded, total, body } = event;
400
+ switch (event.type) {
401
+ case HttpEventType.UploadProgress:
402
+ const progress = Math.round((loaded / total * 100));
403
+ if (callback) callback(progress);
404
+ break;
405
+ case HttpEventType.Response:
406
+ const { filename, _links: { file: { href } } } = body;
407
+ if (callback) {
408
+ callback(null, {
409
+ fileName: filename,
410
+ url: href
411
+ }, null);
412
+ }
413
+ break;
414
+ default:
415
+ break;
416
+ }
417
+ }, (err: HttpErrorResponse) => {
418
+ const { error } = err;
419
+ callback(null, error?.notifications?.join(''));
420
+ });
421
+ }
422
+ ```
423
+
424
+ `example.component.html`
425
+
426
+ ```HTML
427
+ <monkey-file-upload
428
+ allowedExtensionErrorMessage="Extension not allowed"
429
+ icon="upload-20"
430
+ label="upload"
431
+ maxSize="5242880"
432
+ maxSizeErrorMessage="Max file size is 5mb"
433
+ placeholder="Add File"
434
+ [fileUpload]="uploadFunction"
435
+ ></monkey-file-upload>
436
+ ```
437
+
438
+ ---
439
+
440
+ ### **Icon**
441
+
442
+ ![Icons Demo Screen Shot][icons-screenshot1]
443
+
444
+ Parameters:
445
+
446
+ - **color** (string) define color. Can be _theme_ or _#ffffff_ (hex value)
447
+ - **icon** (string) icon name and size separeted by hyfhen
448
+
449
+ Icons Options:
450
+
451
+ - **add-plus**
452
+ - **address-book**
453
+ - **arrow-down**
454
+ - **arrow-left**
455
+ - **arrow-line-right**
456
+ - **arrow-right**
457
+ - **arrow-up**
458
+ - **arrows**
459
+ - **auction**
460
+ - **average-tax**
461
+ - **bank-account**
462
+ - **bank-agency**
463
+ - **bank**
464
+ - **banknote-search**
465
+ - **bell**
466
+ - **block**
467
+ - **book-open-text**
468
+ - **book**
469
+ - **box**
470
+ - **build-approved**
471
+ - **build-person**
472
+ - **build-refused**
473
+ - **build-waiting**
474
+ - **calendar**
475
+ - **calendar-box**
476
+ - **camera**
477
+ - **card-machine**
478
+ - **card**
479
+ - **cash-banknote-invoice**
480
+ - **chat**
481
+ - **check-circle-out**
482
+ - **check-circle**
483
+ - **check-grey**
484
+ - **check-white**
485
+ - **check**
486
+ - **clipboard**
487
+ - **clock-closed**
488
+ - **clock**
489
+ - **close-circle**
490
+ - **close**
491
+ - **cnpj**
492
+ - **codepen**
493
+ - **company-name**
494
+ - **contract-pen**
495
+ - **contract**
496
+ - **delete**
497
+ - **document**
498
+ - **dollar-sign-circle**
499
+ - **dollar-sign**
500
+ - **domain**
501
+ - **dots-menu**
502
+ - **double-arrow-left**
503
+ - **double-arrow-right**
504
+ - **download**
505
+ - **drag-drop**
506
+ - **edit-square**
507
+ - **edit**
508
+ - **email-send-fast**
509
+ - **email**
510
+ - **empty-doc**
511
+ - **error**
512
+ - **eye-closed**
513
+ - **eye-open**
514
+ - **filter-add**
515
+ - **filter**
516
+ - **grid**
517
+ - **hands-clap**
518
+ - **help**
519
+ - **hexagon**
520
+ - **home**
521
+ - **image**
522
+ - **info**
523
+ - **invoice**
524
+ - **invoices-anticipated**
525
+ - **invoices-approval**
526
+ - **invoices-refused**
527
+ - **lighting-circle**
528
+ - **list**
529
+ - **location-pin**
530
+ - **login**
531
+ - **logout**
532
+ - **mail-box-upload**
533
+ - **mail-open-document**
534
+ - **medal**
535
+ - **menu**
536
+ - **money-cedule**
537
+ - **money-discount**
538
+ - **money-hand**
539
+ - **money-net**
540
+ - **money-new**
541
+ - **money-percent**
542
+ - **money-refused**
543
+ - **money-sign**
544
+ - **money**
545
+ - **money-waiting**
546
+ - **more-circle**
547
+ - **more**
548
+ - **new-company**
549
+ - **offered**
550
+ - **open-external**
551
+ - **password**
552
+ - **people**
553
+ - **percent**
554
+ - **percent-box**
555
+ - **person-document**
556
+ - **person-sad**
557
+ - **phone-call**
558
+ - **phone**
559
+ - **pin-navigation**
560
+ - **pork**
561
+ - **radio**
562
+ - **refresh**
563
+ - **registration**
564
+ - **repeat**
565
+ - **search**
566
+ - **second-warning**
567
+ - **settings**
568
+ - **shield-chekmark**
569
+ - **star-shining**
570
+ - **star**
571
+ - **store**
572
+ - **target-dart-arrow**
573
+ - **today**
574
+ - **trash**
575
+ - **trophy**
576
+ - **unfold-more**
577
+ - **upload**
578
+ - **user-group**
579
+ - **user**
580
+ - **wallet**
581
+ - **warning**
582
+
583
+ Example:
584
+
585
+ `example.module.ts`
586
+
587
+ ```Typescript
588
+ import { MonkeyIconModule } from 'monkey-style-guide';
589
+
590
+ ...
591
+
592
+ @NgModule({
593
+ imports: [MonkeyIconModule]
594
+ })
595
+ ...
596
+ ```
597
+
598
+ `example.component.html`
599
+
600
+ ```HTML
601
+ <monkey-icon color="#000000" icon="password-16"></monkey-icon>
602
+ ```
603
+
604
+ ---
605
+
606
+ ### **Input**
607
+
608
+ ![Input Demo Screen Shot][input-screenshot]
609
+
610
+ Parameters:
611
+
612
+ - **capitalize** (optional)(boolean) makes the value capitalcase
613
+ - **currency** (optional)(boolean) transforms the input in currency input
614
+ - **errorMessage** (string) message to alert user
615
+ - **helperMessage** (optional)(string) message to help user to know what to do
616
+ - **icon** (optional)(string) icon name and size separeted by hyfhen
617
+ - **infoMessage** (optional)(string) message to help user knows about this component purpose
618
+ - **label** (string) define the label that will be displayed inside
619
+ - **lowerCase** (optional)(boolean) makes the value lowercase
620
+ - **mask** (optional)(string) mask pattern to mask the input
621
+ - **maxLength** (optional)(number) max 255
622
+ - **name** (optional)(string) name to identify the input
623
+ - **onlyNumber** (optional)(boolean) makes the input accept only number
624
+ - **onlyAlphaNumeric** (optional)(boolean) makes the input accept only alphanumeric characters
625
+ - **placeholder** (optional)(string) message to help user that will be displayed inside the input
626
+ - **prefix** (optional)(string) prefix value for input
627
+ - **type** (string) can be _text_ or _password_
628
+ - **upperCase** (optional)(boolean) makes the value uppercase
629
+
630
+ Events:
631
+
632
+ - **onChange** event emited when user make changes
633
+
634
+ Example:
635
+
636
+ `example.module.ts`
637
+
638
+ ```Typescript
639
+ import { MonkeyInputModule } from 'monkey-style-guide';
640
+
641
+ ...
642
+
643
+ @NgModule({
644
+ imports: [MonkeyInputModule]
645
+ })
646
+ ...
647
+ ```
648
+
649
+ `example.component.html`
650
+
651
+ ```HTML
652
+ <monkey-input
653
+ errorMessage="Validation Message"
654
+ formControlName="name"
655
+ helperMessage="Mandatory"
656
+ icon="user-20"
657
+ infoMessage="Info message"
658
+ label="Name"
659
+ placeholder="Input your full name">
660
+ </monkey-input>
661
+ ```
662
+
663
+ ---
664
+
665
+ ### **Input Filter**
666
+
667
+ ![Input Filter Demo Screen Shot][input-filter-screenshot]
668
+
669
+ Parameters:
670
+
671
+ - **helperMessage** (optional)(string) message to help user to know what to do
672
+ - **icon** (optional)(string) icon name and size separeted by hyfhen
673
+ - **infoMessage** (optional)(string) message to help user knows about this component purpose
674
+ - **label** (string) define the label that will be displayed inside
675
+ - **maxLength** (optional)(number) max 255
676
+ - **name** (optional)(string) name to identify the input
677
+ - **placeholder** (optional)(string) message to help user that will be displayed inside the input
678
+
679
+ Events:
680
+
681
+ - **onChange** event emited when user make changes
682
+
683
+ Example:
684
+
685
+ `example.module.ts`
686
+
687
+ ```Typescript
688
+ import { MonkeyInputModule } from 'monkey-style-guide';
689
+
690
+ ...
691
+
692
+ @NgModule({
693
+ imports: [MonkeyInputModule]
694
+ })
695
+ ...
696
+ ```
697
+
698
+ `example.component.html`
699
+
700
+ ```HTML
701
+ <monkey-input-filter
702
+ formControlName="name"
703
+ helperMessage="Mandatory"
704
+ icon="user-20"
705
+ infoMessage="Info message"
706
+ label="Name"
707
+ placeholder="Input your full name">
708
+ </monkey-input-filter>
709
+ ```
710
+
711
+ ---
712
+
713
+ ### **Modal**
714
+
715
+ ![Modal Demo Screen Shot][modal-screenshot]
716
+
717
+ Parameters:
718
+
719
+ - **config** (MonkeyModalConfig) the configuration of modal
720
+ - **modalRef** (MonkeyModalRefs) the modal reference
721
+ - **onHandleConfirm** (EventEmitter) will emit and event when you click confirm
722
+
723
+ Example:
724
+
725
+ `example.module.ts`
726
+
727
+ ```Typescript
728
+ import {
729
+ MonkeyModalModule,
730
+ MonkeyStyleGuideModalService
731
+ } from 'monkey-style-guide';
732
+
733
+ ...
734
+
735
+ @NgModule({
736
+ imports: [MonkeyModalModule],
737
+ providers: [MonkeyStyleGuideModalService]
738
+ })
739
+ ...
740
+ ```
741
+
742
+ `parent.component.ts`
743
+
744
+ ```Typescript
745
+ ...
746
+ import { MonkeyStyleGuideModalService } from 'monkey-style-guide';
747
+ import { ModalComponent } from './modal/modal.component';
748
+
749
+ ...
750
+
751
+ constructor(private modalService: MonkeyStyleGuideModalService) {}
752
+
753
+ openModal() {
754
+ this.modalService.open(ModalComponent, {
755
+ color: 'theme',
756
+ size: 'md',
757
+ action: {
758
+ cancel: {
759
+ actionColor: 'theme',
760
+ actionType: 'tertiary',
761
+ label: 'Cancel',
762
+ },
763
+ confirm: {
764
+ actionColor: 'theme',
765
+ actionType: 'primary',
766
+ label: 'Confirm',
767
+ },
768
+ },
769
+ });
770
+ }
771
+ ```
772
+
773
+ `modal.component.ts`
774
+
775
+ ```Typescript
776
+ import { Component, EventEmitter, Input } from '@angular/core';
777
+ import {
778
+ MonkeyModalConfig,
779
+ MonkeyModalRefs,
780
+ MonkeyStyleGuideModalService
781
+ } from 'monkey-style-guide';
782
+
783
+ @Component({
784
+ selector: 'mk-modal',
785
+ template: `
786
+ <monkey-modal
787
+ [config]="config"
788
+ [modalRef]="modalRef"
789
+ [onHandleConfirm]="onHandleConfirm"
790
+ >
791
+ <div style="align-items: center; display: flex; justify-content: center;">
792
+ <img
793
+ src="https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/logo.png"
794
+ />
795
+ </div>
796
+ </monkey-modal>
797
+ `,
798
+ })
799
+ export class ModalComponent {
800
+ @Input() config: MonkeyModalConfig;
801
+ @Input() modalRef: MonkeyModalRefs<this>;
802
+ @Input() onHandleConfirm = new EventEmitter<any>();
803
+
804
+ constructor(private modalService: MonkeyStyleGuideModalService) {
805
+ this.onHandleConfirm.subscribe(() => {
806
+ console.log('Confirm clicked!');
807
+
808
+ this.modalService.closeAll();
809
+ });
810
+ }
811
+ }
812
+ ```
813
+
814
+ In case you need the logic in your parent component you can simply pass the `action` key to `MonkeyModalConfig` and remove `onHandleConfirm` of your modal component like this:
815
+
816
+ ```Typescript
817
+ ...
818
+
819
+ openModal() {
820
+ this.modalService.open(ModalComponent, {
821
+ color: 'theme',
822
+ size: 'md',
823
+ action: {
824
+ cancel: {
825
+ actionColor: 'theme',
826
+ actionType: 'tertiary',
827
+ label: 'Cancel',
828
+ },
829
+ confirm: {
830
+ action: () => {
831
+ console.log('Modal closed!');
832
+ },
833
+ actionColor: 'theme',
834
+ actionType: 'primary',
835
+ label: 'Confirm',
836
+ },
837
+ },
838
+ });
839
+ }
840
+ ```
841
+
842
+ ```Typescript
843
+ ...
844
+
845
+ export class ModalComponent {
846
+ @Input() config: MonkeyModalConfig;
847
+ @Input() modalRef: MonkeyModalRefs<this>;
848
+
849
+ constructor() {}
850
+ }
851
+ ```
852
+
853
+ ---
854
+
855
+ ### **Radiobutton**
856
+
857
+ ![Radiobutton Demo Screen Shot][radiobutton-screenshot]
858
+
859
+ Parameters:
860
+
861
+ - **errorMessage** (string) message to alert user
862
+ - **helperMessage** (optional)(string) message to help user to know what to do
863
+ - **infoMessage** (optional)(string) message to help user knows about this component purpose
864
+ - **label** (string) define the label that will be displayed inside
865
+ - **placeholder** (optional)(string) message to help user that will be displayed inside the input
866
+
867
+ Events:
868
+
869
+ - **onChange** event emited when user make changes
870
+
871
+ Example:
872
+
873
+ `example.module.ts`
874
+
875
+ ```Typescript
876
+ import { MonkeyRadioButtonModule } from 'monkey-style-guide';
877
+
878
+ ...
879
+
880
+ @NgModule({
881
+ imports: [MonkeyRadioButtonModule]
882
+ })
883
+ ...
884
+ ```
885
+
886
+ `example.component.html`
887
+
888
+ ```HTML
889
+ <monkey-radiobutton
890
+ formControlName="gender"
891
+ label="Gender"
892
+ helperMessage="Mandatory"
893
+ icon="help-20"
894
+ infoMessage="Info message"
895
+ errorMessage="Validation message"
896
+ >
897
+ <monkey-option label="Female" value="female"></monkey-option>
898
+ <monkey-option label="Male" value="male"></monkey-option>
899
+ <monkey-option label="I prefer not to choose" value="not_choose"></monkey-option>
900
+ </monkey-radiobutton>
901
+ ```
902
+
903
+ ---
904
+
905
+ ### **Select**
906
+
907
+ ![Select Demo Screen Shot][select-screenshot]
908
+
909
+ Parameters:
910
+
911
+ - **errorMessage** (string) message to alert user
912
+ - **helperMessage** (optional)(string) message to help user to know what to do
913
+ - **icon** (optional)(string) icon name and size separeted by hyfhen
914
+ - **infoMessage** (optional)(string) message to help user knows about this component purpose
915
+ - **label** (string) define the label that will be displayed inside
916
+ - **placeholder** (optional)(string) message to help user that will be displayed inside the input
917
+
918
+ Events:
919
+
920
+ - **onChange** event emited when user make changes
921
+
922
+ Example:
923
+
924
+ `example.module.ts`
925
+
926
+ ```Typescript
927
+ import {
928
+ MonkeyOptionModule,
929
+ MonkeySelectModule
930
+ } from 'monkey-style-guide';
931
+
932
+ ...
933
+
934
+ @NgModule({
935
+ imports: [
936
+ MonkeyOptionModule,
937
+ MonkeySelectModule
938
+ ]
939
+ })
940
+ ...
941
+ ```
942
+
943
+ `example.component.html`
944
+
945
+ ```HTML
946
+ <monkey-select
947
+ errorMessage="Validation Message"
948
+ formControlName="documentType"
949
+ helperMessage="Mandatory"
950
+ icon="upload-20"
951
+ infoMessage="Info message"
952
+ label="Select the document type to upload"
953
+ >
954
+ <monkey-option label="Personal Document" value="personal_document">
955
+ </monkey-option>
956
+ <monkey-option label="Social Contract" value="social_contract">
957
+ </monkey-option>
958
+ <monkey-option label="Procuraction Contract" value="procuration_contract">
959
+ </monkey-option>
960
+ </monkey-select>
961
+ ```
962
+
963
+ ---
964
+
965
+ ### **Table**
966
+
967
+ ![Table Demo Screen Shot][table-screenshot]
968
+
969
+ Parameters:
970
+
971
+ - **dataSource** (array) the data to be displayed
972
+ - **headers** (array) column headers
973
+ - **loading** (optional)(boolean) show loading progress
974
+ - **rowTemplate** (TemplateRef) the template to show rows
975
+ - **selectable** (optional)(boolean) enable row selection
976
+
977
+ Events:
978
+
979
+ - **selection** returns an array with selected rows
980
+
981
+ Example:
982
+
983
+ `example.module.ts`
984
+
985
+ ```Typescript
986
+ import { MonkeyTableModule } from 'monkey-style-guide';
987
+
988
+ ...
989
+
990
+ @NgModule({
991
+ imports: [MonkeyTableModule]
992
+ })
993
+ ...
994
+ ```
995
+
996
+ `example.component.ts`
997
+
998
+ ```Typecript
999
+ _dataSourceHeaders = ['column1', 'column2', 'column3', 'column4'];
1000
+ _dataSource = [
1001
+ [1, 2, 3, 4, 5, 6],
1002
+ [5, 6, 7, 8, 9, 10],
1003
+ [5, 6, 7, 8, 9, 10],
1004
+ [5, 6, 7, 8, 9, 10],
1005
+ ];
1006
+ ```
1007
+
1008
+ `example.component.html`
1009
+
1010
+ ```HTML
1011
+ <monkey-table
1012
+ [dataSource]="_dataSource"
1013
+ [headers]="_dataSourceHeaders"
1014
+ [loading]="true"
1015
+ [rowTemplate]="rowTemplate"
1016
+ [selectable]="true"
1017
+ (selection)="onHandleSelection($event)"
1018
+ >
1019
+ <ng-template #rowTemplate let-row="row">
1020
+ <monkey-table-column>{{ row[0] }}</monkey-table-column>
1021
+ <monkey-table-column>{{ row[1] }}</monkey-table-column>
1022
+ <monkey-table-column>{{ row[2] }}</monkey-table-column>
1023
+ <monkey-table-column>{{ row[3] }}</monkey-table-column>
1024
+ </ng-template>
1025
+ </monkey-table>
1026
+ ```
1027
+
1028
+ ---
1029
+
1030
+ ### **Toggle**
1031
+
1032
+ ![Toggle Demo Screen Shot][toggle-screenshot]
1033
+
1034
+ Parameters:
1035
+
1036
+ - **value** (boolean)(default: false)
1037
+ - **disabled** (boolean)(default: false) to disable any action
1038
+
1039
+ Events:
1040
+
1041
+ - **onChange** event emited when user make changes
1042
+
1043
+ Example:
1044
+
1045
+ `example.module.ts`
1046
+
1047
+ ```Typescript
1048
+ import { MonkeyToggleModule } from 'monkey-style-guide';
1049
+
1050
+ ...
1051
+
1052
+ @NgModule({
1053
+ imports: [MonkeyToggleModule]
1054
+ })
1055
+ ...
1056
+ ```
1057
+
1058
+ `example.component.html`
1059
+
1060
+ ```HTML
1061
+ <monkey-toggle [value]="_form?.get('smsNotification').value"
1062
+ (onChange)="onHandleToggleSMS($event)">
1063
+ </monkey-toggle>
1064
+ ```
1065
+
1066
+ ## Prerequisites
1067
+
1068
+ The main feature of this project is to allow changing the application theme, such as primary colors and error colors.
1069
+ For this, it is necessary to have a file called monkey-style-guide-settings.json at the root of your project's assets folder.
1070
+
1071
+ For example:
1072
+
1073
+ ![Settings Json Screen Shot][settings-screenshot]
1074
+
1075
+ Content of monkey-style-guide-settings.json:
1076
+
1077
+ ```JSON
1078
+ {
1079
+ "theme": {
1080
+ "title": "Monkey Exchange",
1081
+ "favicon": "assets/favicon.svg"
1082
+ },
1083
+ "colors": {
1084
+ "theme": {
1085
+ "main": "#034EA2",
1086
+ "100": "#F5FAFF",
1087
+ "200": "#D7EAFE",
1088
+ "300": "#A5CFFE",
1089
+ "400": "#72B4FD",
1090
+ "500": "#4099FC",
1091
+ "600": "#0F7EFB",
1092
+ "700": "#0465D2",
1093
+ "800": "#023064",
1094
+ "900": "#023064",
1095
+ "contrast": {
1096
+ "main": "white",
1097
+ "100": "rgba(black, 0.87)",
1098
+ "200": "white",
1099
+ "300": "white",
1100
+ "400": "white",
1101
+ "500": "white",
1102
+ "600": "white",
1103
+ "700": "white",
1104
+ "800": "white",
1105
+ "900": "white"
1106
+ }
1107
+ },
1108
+ "error": {
1109
+ "main": "#e70c0c",
1110
+ "100": "#fbb5b5",
1111
+ "200": "#f87f7f",
1112
+ "300": "#f53b3b",
1113
+ "400": "#f31e1e",
1114
+ "500": "#e70c0c",
1115
+ "600": "#ca0a0a",
1116
+ "700": "#ad0909",
1117
+ "800": "#900707",
1118
+ "900": "#730606",
1119
+ "contrast": {
1120
+ "main": "white",
1121
+ "100": "rgba(black, 0.87)",
1122
+ "200": "rgba(black, 0.87)",
1123
+ "300": "white",
1124
+ "400": "white",
1125
+ "500": "white",
1126
+ "600": "white",
1127
+ "700": "white",
1128
+ "800": "white",
1129
+ "900": "white"
1130
+ }
1131
+ },
1132
+ "warning": {
1133
+ "main": "#efa30e",
1134
+ "100": "#fbe7be",
1135
+ "200": "#f8d389",
1136
+ "300": "#f4b946",
1137
+ "400": "#f2ae29",
1138
+ "500": "#efa30e",
1139
+ "600": "#d28f0c",
1140
+ "700": "#b57c0b",
1141
+ "800": "#986809",
1142
+ "900": "#7b5407",
1143
+ "contrast": {
1144
+ "main": "rgba(black, 0.87)",
1145
+ "100": "rgba(black, 0.87)",
1146
+ "200": "rgba(black, 0.87)",
1147
+ "300": "rgba(black, 0.87)",
1148
+ "400": "rgba(black, 0.87)",
1149
+ "500": "rgba(black, 0.87)",
1150
+ "600": "rgba(black, 0.87)",
1151
+ "700": "rgba(black, 0.87)",
1152
+ "800": "white",
1153
+ "900": "white"
1154
+ }
1155
+ },
1156
+ "success": {
1157
+ "main": "#00875a",
1158
+ "100": "#45ffc1",
1159
+ "200": "#0dffae",
1160
+ "300": "#00c483",
1161
+ "400": "#00a66e",
1162
+ "500": "#00875a",
1163
+ "600": "#006846",
1164
+ "700": "#004a31",
1165
+ "800": "#002b1d",
1166
+ "900": "#000d08",
1167
+ "contrast": {
1168
+ "main": "white",
1169
+ "100": "rgba(black, 0.87)",
1170
+ "200": "rgba(black, 0.87)",
1171
+ "300": "rgba(black, 0.87)",
1172
+ "400": "white",
1173
+ "500": "white",
1174
+ "600": "white",
1175
+ "700": "white",
1176
+ "800": "white",
1177
+ "900": "white"
1178
+ }
1179
+ },
1180
+ "question": {
1181
+ "main": "#8D38FA",
1182
+ "100": "#F4EBFF",
1183
+ "200": "#E8D7FE",
1184
+ "300": "#D2AFFD",
1185
+ "400": "#A460FB",
1186
+ "500": "#8D38FA",
1187
+ "600": "#7710F9",
1188
+ "700": "#5104B3",
1189
+ "800": "#2D0264",
1190
+ "900": "#1B013C",
1191
+ "contrast": {
1192
+ "main": "white",
1193
+ "100": "rgba(black, 0.87)",
1194
+ "200": "rgba(black, 0.87)",
1195
+ "300": "rgba(black, 0.87)",
1196
+ "400": "white",
1197
+ "500": "white",
1198
+ "600": "white",
1199
+ "700": "white",
1200
+ "800": "white",
1201
+ "900": "white"
1202
+ }
1203
+ }
1204
+ }
1205
+ }
1206
+ ```
1207
+
1208
+ ## Installation
1209
+
1210
+ 1. Install NPM packages:
1211
+
1212
+ ```sh
1213
+ npm install monkey-style-guide
1214
+ ```
1215
+
1216
+ ## Usage
1217
+
1218
+ Import `monkey-style-guide` in your `style.scss`
1219
+
1220
+ ```scss
1221
+ @import '~monkey-style-guide/assets/scss/theme';
1222
+ ```
1223
+
1224
+ Import `MonkeyStyleGuideModule` in your `app.module.ts`
1225
+
1226
+ ```Typescript
1227
+ import { MonkeyStyleGuideModule } from 'monkey-style-guide';
1228
+
1229
+ @NgModule({
1230
+ declarations: [AppComponent],
1231
+ imports: [MonkeyStyleGuideModule],
1232
+ bootstrap: [AppComponent],
1233
+ })
1234
+ export class AppModule {}
1235
+ ```
1236
+
1237
+ Than call the `bootstrap` method in your `app.component.ts`
1238
+
1239
+ ```Typescript
1240
+ import { Component } from '@angular/core';
1241
+ import { MonkeyStyleGuideSettingsService } from 'monkey-style-guide';
1242
+
1243
+ @Component({
1244
+ selector: 'app-root',
1245
+ templateUrl: './app.component.html',
1246
+ styleUrls: ['./app.component.scss'],
1247
+ })
1248
+ export class AppComponent {
1249
+ constructor(private settingsService: MonkeyStyleGuideSettingsService) {
1250
+ this.settingsService.bootstrap('');
1251
+ }
1252
+ }
1253
+ ```
1254
+
1255
+ <!-- MARKDOWN LINKS & IMAGES -->
1256
+ <!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->
1257
+
1258
+ [badge-screenshot]: https://user-images.githubusercontent.com/10110065/111625441-9e5df280-87cb-11eb-905c-008607cf859e.png
1259
+ [button-avatar-screenshot]: https://user-images.githubusercontent.com/10110065/111626956-50e28500-87cd-11eb-85c1-aaa8c06bb4e0.png
1260
+ [button-dropdown-screenshot1]: https://user-images.githubusercontent.com/10110065/111631407-1e875680-87d2-11eb-9631-d1d2ccf8f076.png
1261
+ [button-dropdown-screenshot2]: https://user-images.githubusercontent.com/10110065/111631726-82118400-87d2-11eb-9653-4502c3d82d51.png
1262
+ [buttons-screenshot]: https://user-images.githubusercontent.com/10110065/142933460-7a84ad76-b57f-40a0-b809-292af31c1e8f.png
1263
+ [checkbox-screenshot]: https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/checkbox.png
1264
+ [contributors-shield]: https://img.shields.io/badge/Contributors-2-brightgreen?style=flat
1265
+ [contributors-url]: https://github.com/MonkeyECX/monkey-style-guide/graphs/contributors
1266
+ [date-range-picker]: https://user-images.githubusercontent.com/12416871/146080473-8543b9ae-7186-42ee-8ec8-bfd1eef09df6.png
1267
+ [expansion-screenshot1]: https://user-images.githubusercontent.com/10110065/111636157-f8b08080-87d6-11eb-86ab-86839297d068.png
1268
+ [expansion-screenshot2]: https://user-images.githubusercontent.com/10110065/111636340-24336b00-87d7-11eb-9f19-504ab96cc9af.png
1269
+ [file-upload-screenshot1]: https://user-images.githubusercontent.com/10110065/111640018-8b065380-87da-11eb-8d47-87ddea29b943.png
1270
+ [icons-screenshot1]: https://github.com/MonkeyECX/monkey-style-guide/assets/12416871/a71f2dcf-b9d2-4868-9868-9ac798ffe28a
1271
+ [input-filter-screenshot]: https://user-images.githubusercontent.com/32619691/163216159-3a9f985e-3ba9-4e10-8ba4-0f60931f83d1.png
1272
+ [input-screenshot]: https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/input.png
1273
+ [license-shield]: https://img.shields.io/github/license/othneildrew/Best-README-Template.svg?style=flat-square
1274
+ [license-url]: https://github.com/othneildrew/Best-README-Template/blob/master/LICENSE.txt
1275
+ [linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=flat-square&logo=linkedin&colorB=157
1276
+ [linkedin-url]: https://www.linkedin.com/company/monkeyexchange
1277
+ [modal-screenshot]: https://user-images.githubusercontent.com/12416871/119838920-2c480f00-beda-11eb-9e44-e42262f39c34.png
1278
+ [radiobutton-screenshot]: https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/radiobutton.png
1279
+ [select-screenshot]: https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/select.png
1280
+ [settings-screenshot]: https://dev-monkey-emails.s3-us-west-2.amazonaws.com/monkey-style-guide/demos/images/style-settings-json.png
1281
+ [table-screenshot]: https://user-images.githubusercontent.com/12416871/119574643-29d79f00-bd8c-11eb-9747-2e6dc86410da.png
1282
+ [toggle-screenshot]: https://user-images.githubusercontent.com/12416871/119849813-53570e80-bee3-11eb-87f8-0871f8e26f58.png