matcha-components 1.0.6 → 1.0.7

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 (250) hide show
  1. package/package.json +1 -1
  2. package/src/documentation/presentation.mdx +105 -0
  3. package/src/foundation/borders/borders.mdx +180 -0
  4. package/src/foundation/colors/base/amber.mdx +12 -9
  5. package/src/foundation/colors/base/blue.mdx +12 -9
  6. package/src/foundation/colors/base/cyan.mdx +12 -9
  7. package/src/foundation/colors/base/deep-orange.mdx +12 -9
  8. package/src/foundation/colors/base/deep-purple.mdx +12 -9
  9. package/src/foundation/colors/base/green.mdx +12 -9
  10. package/src/foundation/colors/base/indigo.mdx +12 -9
  11. package/src/foundation/colors/base/light-blue.mdx +12 -9
  12. package/src/foundation/colors/base/light-green.mdx +12 -9
  13. package/src/foundation/colors/base/lime.mdx +12 -9
  14. package/src/foundation/colors/base/orange.mdx +12 -9
  15. package/src/foundation/colors/base/pink.mdx +12 -9
  16. package/src/foundation/colors/base/purple.mdx +12 -9
  17. package/src/foundation/colors/base/red.mdx +12 -9
  18. package/src/foundation/colors/base/teal.mdx +12 -9
  19. package/src/foundation/colors/base/yellow.mdx +12 -9
  20. package/src/foundation/colors/base-colors.mdx +21 -18
  21. package/src/foundation/colors/theme/accent.mdx +12 -9
  22. package/src/foundation/colors/theme/primary.mdx +12 -9
  23. package/src/foundation/colors/theme/warn.mdx +12 -9
  24. package/src/foundation/colors/theme-colors.mdx +11 -37
  25. package/src/foundation/spacing/margins.mdx +183 -0
  26. package/src/foundation/spacing/paddings.mdx +156 -0
  27. package/src/foundation/typography/colors.mdx +26 -0
  28. package/src/foundation/typography/font-size.mdx +57 -0
  29. package/src/foundation/typography/font-weight.mdx +65 -0
  30. package/src/foundation/typography/helpers.mdx +86 -0
  31. package/src/foundation/typography/letter-spacing.mdx +35 -0
  32. package/src/foundation/typography/line-height.mdx +52 -0
  33. package/src/foundation/typography/message-box.mdx +43 -0
  34. package/src/foundation/typography/text-align.mdx +22 -0
  35. package/src/foundation/typography/text-styles.mdx +88 -0
  36. package/src/lib/matcha-autocomplete/autocomplete.mdx +1 -1
  37. package/src/lib/matcha-autocomplete/autocomplete.stories.ts +16 -25
  38. package/src/lib/matcha-autocomplete/example/autocomplete-auto-active-first-option-example.css +9 -0
  39. package/src/lib/matcha-autocomplete/example/autocomplete-auto-active-first-option-example.html +9 -0
  40. package/src/lib/matcha-autocomplete/example/autocomplete-auto-active-first-option-example.ts +37 -0
  41. package/src/lib/matcha-autocomplete/example/autocomplete-overview-example.css +19 -0
  42. package/src/lib/matcha-autocomplete/example/autocomplete-overview-example.html +17 -0
  43. package/src/lib/matcha-autocomplete/example/autocomplete-overview-example.ts +70 -0
  44. package/src/lib/matcha-badge/badge.argtypes.ts +77 -0
  45. package/src/lib/matcha-badge/badge.directive.ts +11 -0
  46. package/src/lib/matcha-badge/badge.mdx +69 -0
  47. package/src/lib/matcha-badge/badge.module.ts +5 -10
  48. package/src/lib/matcha-badge/badge.stories.ts +79 -0
  49. package/src/lib/matcha-bottom-sheet/bottom-sheet-overview-example-sheet.html +21 -0
  50. package/src/lib/matcha-bottom-sheet/bottom-sheet-overview-example.component.ts +34 -0
  51. package/src/lib/matcha-bottom-sheet/bottom-sheet-overview-example.html +2 -0
  52. package/src/lib/matcha-bottom-sheet/bottom-sheet.argtypes.ts +117 -0
  53. package/src/lib/matcha-bottom-sheet/bottom-sheet.mdx +69 -0
  54. package/src/lib/matcha-bottom-sheet/bottom-sheet.module.ts +5 -10
  55. package/src/lib/matcha-bottom-sheet/bottom-sheet.stories.ts +39 -0
  56. package/src/lib/matcha-button/button-overview-example.component.ts +18 -0
  57. package/src/lib/matcha-button/button-overview-example.html +118 -0
  58. package/src/lib/matcha-button/button-overview-example.scss +31 -0
  59. package/src/lib/matcha-button/button.argtypes.ts +20 -0
  60. package/src/lib/matcha-button/button.directive.ts +39 -0
  61. package/src/lib/matcha-button/button.mdx +171 -0
  62. package/src/lib/matcha-button/button.module.ts +10 -0
  63. package/src/lib/matcha-button/button.stories.ts +38 -0
  64. package/src/lib/matcha-button-toggle/button-toggle.argtype.ts +115 -0
  65. package/src/lib/matcha-button-toggle/button-toggle.directive.ts +13 -0
  66. package/src/lib/matcha-button-toggle/button-toggle.mdx +63 -0
  67. package/src/lib/matcha-button-toggle/button-toggle.stories.ts +64 -0
  68. package/src/lib/matcha-button-toggle/matcha-button-toggle.directive.ts +0 -1
  69. package/src/lib/matcha-card/card-argtype.ts +54 -0
  70. package/src/lib/matcha-card/card-header.html +10 -0
  71. package/src/lib/matcha-card/card-title-group.html +12 -0
  72. package/src/lib/matcha-card/card.component.spec.ts +21 -0
  73. package/src/lib/matcha-card/card.component.ts +47 -0
  74. package/src/lib/matcha-card/card.mdx +43 -0
  75. package/src/lib/matcha-card/card.module.ts +10 -0
  76. package/src/lib/matcha-card/card.stories.ts +92 -0
  77. package/src/lib/matcha-components.module.ts +12 -47
  78. package/src/lib/matcha-dialog/confirmation-dialog.component.ts +39 -0
  79. package/src/lib/matcha-dialog/confirmation-dialog.stories.ts +21 -0
  80. package/src/lib/matcha-divider/divider.argtypes.ts +18 -0
  81. package/src/lib/matcha-divider/divider.mdx +51 -0
  82. package/src/lib/matcha-divider/divider.module.ts +5 -9
  83. package/src/lib/matcha-divider/divider.stories.ts +49 -0
  84. package/src/lib/matcha-elevation/elevation.argtypes.ts +16 -0
  85. package/src/lib/matcha-elevation/elevation.directive.ts +24 -0
  86. package/src/lib/matcha-elevation/elevation.mdx +50 -0
  87. package/src/lib/matcha-elevation/elevation.module.ts +10 -0
  88. package/src/lib/matcha-elevation/elevation.stories.ts +50 -0
  89. package/src/lib/matcha-expansion/expansion.argtypes.ts +44 -0
  90. package/src/lib/matcha-expansion/expansion.directive.ts +11 -0
  91. package/src/lib/matcha-expansion/expansion.mdx +69 -0
  92. package/src/lib/matcha-expansion/expansion.module.ts +10 -0
  93. package/src/lib/matcha-expansion/expansion.stories.ts +67 -0
  94. package/src/lib/matcha-forms/form-field-argtype.ts +60 -0
  95. package/src/lib/matcha-forms/form-field.directive.ts +11 -0
  96. package/src/lib/matcha-forms/form-field.mdx +20 -0
  97. package/src/lib/matcha-forms/{matcha-form-field.stories.ts → form-field.stories.ts} +64 -68
  98. package/src/lib/matcha-forms/forms.module.ts +5 -14
  99. package/src/lib/matcha-headers/headers.argtype.ts +14 -0
  100. package/src/lib/matcha-headers/headers.mdx +94 -0
  101. package/src/lib/matcha-headers/headers.module.ts +12 -0
  102. package/src/lib/matcha-headers/headers.stories.ts +88 -0
  103. package/src/lib/matcha-headers/headine/headline.component.html +1 -0
  104. package/src/lib/matcha-headers/headine/headline.component.ts +20 -0
  105. package/src/lib/matcha-headers/subhead/subhead.component.html +1 -0
  106. package/src/lib/matcha-headers/subhead/subhead.component.ts +20 -0
  107. package/src/lib/matcha-headers/title/title.component.html +1 -0
  108. package/src/lib/matcha-headers/title/title.component.ts +20 -0
  109. package/src/lib/matcha-icon/icon-argtype.ts +36 -0
  110. package/src/lib/matcha-icon/icon.component.html +3 -0
  111. package/src/lib/matcha-icon/icon.component.scss +0 -0
  112. package/src/lib/matcha-icon/icon.component.ts +34 -0
  113. package/src/lib/matcha-icon/icon.mdx +60 -0
  114. package/src/lib/matcha-icon/icon.module.ts +5 -14
  115. package/src/lib/matcha-icon/icon.stories.ts +416 -0
  116. package/src/lib/matcha-input/input.argtypes.ts +42 -0
  117. package/src/lib/matcha-input/input.directive.ts +11 -0
  118. package/src/lib/matcha-input/input.mdx +73 -0
  119. package/src/lib/matcha-input/input.module.ts +9 -0
  120. package/src/lib/matcha-input/input.stories.ts +97 -0
  121. package/src/lib/matcha-list/list.argtypes.ts +44 -0
  122. package/src/lib/matcha-list/{matcha-list.directive.ts → list.directive.ts} +3 -8
  123. package/src/lib/matcha-list/list.mdx +69 -0
  124. package/src/lib/matcha-list/list.module.ts +5 -9
  125. package/src/lib/matcha-list/list.stories.ts +101 -0
  126. package/src/lib/matcha-menu/menu.argtypes.ts +114 -0
  127. package/src/lib/matcha-menu/menu.mdx +59 -0
  128. package/src/lib/matcha-menu/menu.module.ts +5 -9
  129. package/src/lib/matcha-menu/menu.stories.ts +122 -0
  130. package/src/lib/matcha-paginator/paginator-overview-example.component.ts +13 -0
  131. package/src/lib/matcha-paginator/paginator-overview-example.css +0 -0
  132. package/src/lib/matcha-paginator/paginator-overview-example.html +1 -0
  133. package/src/lib/matcha-paginator/paginator.argtypes.ts +11 -0
  134. package/src/lib/matcha-paginator/paginator.mdx +53 -0
  135. package/src/lib/matcha-paginator/paginator.module.ts +5 -9
  136. package/src/lib/matcha-paginator/paginator.stories.ts +34 -0
  137. package/src/lib/matcha-progress-bar/progress-bar.mdx +1 -1
  138. package/src/lib/matcha-progress-spinner/progress-spinner.mdx +33 -13
  139. package/src/lib/matcha-progress-spinner/progress-spinner.stories.ts +8 -8
  140. package/src/lib/matcha-select/select.argtypes.ts +265 -0
  141. package/src/lib/matcha-select/{matcha-select.directive.ts → select.directive.ts} +3 -8
  142. package/src/lib/matcha-select/select.mdx +54 -0
  143. package/src/lib/matcha-select/select.module.ts +5 -7
  144. package/src/lib/matcha-select/select.stories.ts +164 -0
  145. package/src/lib/matcha-sidenav/sidenav.argtypes.ts +60 -0
  146. package/src/lib/matcha-sidenav/sidenav.directive.ts +11 -0
  147. package/src/lib/matcha-sidenav/sidenav.mdx +57 -0
  148. package/src/lib/matcha-sidenav/sidenav.module.ts +10 -0
  149. package/src/lib/matcha-sidenav/sidenav.stories.ts +79 -0
  150. package/src/lib/matcha-slide-toggle/slide-toggle.mdx +1 -1
  151. package/src/lib/matcha-slider/slider.argtypes.ts +83 -0
  152. package/src/lib/matcha-slider/slider.mdx +45 -0
  153. package/src/lib/matcha-slider/slider.stories.ts +149 -0
  154. package/src/lib/matcha-snackbar/snack-bar-overview-example.component.ts +23 -0
  155. package/src/lib/matcha-snackbar/snack-bar-overview-example.css +3 -0
  156. package/src/lib/matcha-snackbar/snack-bar-overview-example.html +11 -0
  157. package/src/lib/matcha-snackbar/snack-bar.argtypes.ts +11 -0
  158. package/src/lib/matcha-snackbar/snack-bar.directive.ts +11 -0
  159. package/src/lib/matcha-snackbar/snack-bar.mdx +53 -0
  160. package/src/lib/matcha-snackbar/snack-bar.module.ts +10 -0
  161. package/src/lib/matcha-snackbar/snack-bar.stories.ts +34 -0
  162. package/src/lib/matcha-sort-header/example/sort-overview-example.component.ts +67 -0
  163. package/src/lib/matcha-sort-header/example/sort-overview-example.css +3 -0
  164. package/src/lib/matcha-sort-header/example/sort-overview-example.html +21 -0
  165. package/src/lib/matcha-sort-header/sort-header.argtypes.ts +11 -0
  166. package/src/lib/matcha-sort-header/sort-header.mdx +78 -0
  167. package/src/lib/matcha-sort-header/sort-header.module.ts +5 -7
  168. package/src/lib/matcha-sort-header/sort-header.stories.ts +34 -0
  169. package/src/lib/matcha-stepper/stepper.argtypes.ts +92 -0
  170. package/src/lib/matcha-stepper/stepper.mdx +68 -0
  171. package/src/lib/matcha-stepper/stepper.module.ts +5 -7
  172. package/src/lib/matcha-stepper/stepper.stories.ts +163 -0
  173. package/src/lib/matcha-table/example/table-basic-example.component.ts +37 -0
  174. package/src/lib/matcha-table/example/table-basic-example.css +0 -0
  175. package/src/lib/matcha-table/example/table-basic-example.html +35 -0
  176. package/src/lib/matcha-table/table.argtypes.ts +11 -0
  177. package/src/lib/matcha-table/table.mdx +78 -0
  178. package/src/lib/matcha-table/table.module.ts +5 -7
  179. package/src/lib/matcha-table/table.stories.ts +34 -0
  180. package/src/lib/matcha-tabs/tabs.argtypes.ts +11 -0
  181. package/src/lib/matcha-tabs/tabs.mdx +69 -0
  182. package/src/lib/matcha-tabs/tabs.module.ts +5 -11
  183. package/src/lib/matcha-tabs/tabs.stories.ts +49 -0
  184. package/src/lib/matcha-toolbar/toolbar.argtypes.ts +20 -0
  185. package/src/lib/matcha-toolbar/toolbar.directive.ts +11 -0
  186. package/src/lib/matcha-toolbar/toolbar.mdx +57 -0
  187. package/src/lib/matcha-toolbar/toolbar.module.ts +10 -0
  188. package/src/lib/matcha-toolbar/toolbar.stories.ts +100 -0
  189. package/src/lib/matcha-tooltip/tooltip.argtypes.ts +11 -0
  190. package/src/lib/matcha-tooltip/tooltip.mdx +69 -0
  191. package/src/lib/matcha-tooltip/tooltip.module.ts +5 -7
  192. package/src/lib/matcha-tooltip/tooltip.stories.ts +79 -0
  193. package/src/lib/matcha-tree/tree.argtypes.ts +42 -0
  194. package/src/lib/matcha-tree/tree.mdx +49 -0
  195. package/src/lib/matcha-tree/tree.module.ts +5 -7
  196. package/src/lib/matcha-tree/tree.stories.ts +130 -0
  197. package/src/public-api.ts +27 -28
  198. package/src/lib/matcha-badge/matcha-badge.directive.ts +0 -16
  199. package/src/lib/matcha-buttons/buttons.module.ts +0 -27
  200. package/src/lib/matcha-buttons/matcha-btn-md.directive.ts +0 -16
  201. package/src/lib/matcha-buttons/matcha-btn-pill.directive.ts +0 -15
  202. package/src/lib/matcha-buttons/matcha-btn-size.directive.ts +0 -17
  203. package/src/lib/matcha-buttons/matcha-btn-xl.directive.ts +0 -15
  204. package/src/lib/matcha-card/card.mdx.txt +0 -55
  205. package/src/lib/matcha-card/matcha-card-argtype.ts +0 -123
  206. package/src/lib/matcha-card/matcha-card-content/matcha-card-content.component.html +0 -3
  207. package/src/lib/matcha-card/matcha-card-content/matcha-card-content.component.spec.ts +0 -21
  208. package/src/lib/matcha-card/matcha-card-content/matcha-card-content.component.ts +0 -10
  209. package/src/lib/matcha-card/matcha-card-footer/matcha-card-footer.component.html +0 -3
  210. package/src/lib/matcha-card/matcha-card-footer/matcha-card-footer.component.spec.ts +0 -21
  211. package/src/lib/matcha-card/matcha-card-footer/matcha-card-footer.component.ts +0 -10
  212. package/src/lib/matcha-card/matcha-card-header/matcha-card-header.component.html +0 -4
  213. package/src/lib/matcha-card/matcha-card-header/matcha-card-header.component.spec.ts +0 -21
  214. package/src/lib/matcha-card/matcha-card-header/matcha-card-header.component.ts +0 -10
  215. package/src/lib/matcha-card/matcha-card.component.scss +0 -117
  216. package/src/lib/matcha-card/matcha-card.component.spec.ts +0 -21
  217. package/src/lib/matcha-card/matcha-card.component.ts +0 -43
  218. package/src/lib/matcha-card/matcha-card.module.ts +0 -27
  219. package/src/lib/matcha-card/matcha-card.stories.ts +0 -80
  220. package/src/lib/matcha-expansion-panel/expansion-panel.module.ts +0 -14
  221. package/src/lib/matcha-expansion-panel/matcha-expansion-panel.directive.ts +0 -16
  222. package/src/lib/matcha-forms/matcha-form-field-appearance.directive.ts +0 -16
  223. package/src/lib/matcha-forms/matcha-form-field-argtype.ts +0 -73
  224. package/src/lib/matcha-forms/matcha-form-field.mdx +0 -284
  225. package/src/lib/matcha-forms/matcha-form-input-text.directive.ts +0 -16
  226. package/src/lib/matcha-icon/matcha-icon-position-pos.directive.ts +0 -15
  227. package/src/lib/matcha-icon/matcha-icon-position-pre.directive.ts +0 -15
  228. package/src/lib/matcha-menu/menu.stories.txt +0 -76
  229. package/src/lib/matcha-snackbar/matcha-snackbar.directive.ts +0 -16
  230. package/src/lib/matcha-snackbar/snackbar.module.ts +0 -12
  231. package/src/lib/matcha-title/matcha-title.component.html +0 -33
  232. package/src/lib/matcha-title/matcha-title.component.spec.ts +0 -21
  233. package/src/lib/matcha-title/matcha-title.component.ts +0 -24
  234. package/src/lib/matcha-title/matcha-title.module.ts +0 -18
  235. /package/src/lib/matcha-bottom-sheet/{matcha-bottom-sheet.directive.ts → bottom-sheet.directive.ts} +0 -0
  236. /package/src/lib/{matcha-buttons/button.stories.ts → matcha-button/button.stories.ts.TXT} +0 -0
  237. /package/src/lib/matcha-card/{matcha-card.component.html → card.component.html} +0 -0
  238. /package/src/lib/matcha-card/{matcha-card-content/matcha-card-content.component.scss → card.component.scss} +0 -0
  239. /package/src/lib/matcha-divider/{matcha-divider.directive.ts → divider.directive.ts} +0 -0
  240. /package/src/lib/{matcha-card/matcha-card-footer/matcha-card-footer.component.scss → matcha-headers/headine/headline.component.scss} +0 -0
  241. /package/src/lib/{matcha-card/matcha-card-header/matcha-card-header.component.scss → matcha-headers/subhead/subhead.component.scss} +0 -0
  242. /package/src/lib/{matcha-title/matcha-title.component.scss → matcha-headers/title/title.component.scss} +0 -0
  243. /package/src/lib/matcha-menu/{matcha-menu.directive.ts → menu.directive.ts} +0 -0
  244. /package/src/lib/matcha-paginator/{matcha-paginator.directive.ts → paginator.directive.ts} +0 -0
  245. /package/src/lib/matcha-sort-header/{matcha-sort-header.directive.ts → sort-header.directive.ts} +0 -0
  246. /package/src/lib/matcha-stepper/{matcha-stepper.directive.ts → stepper.directive.ts} +0 -0
  247. /package/src/lib/matcha-table/{matcha-table.directive.ts → table.directive.ts} +0 -0
  248. /package/src/lib/matcha-tabs/{matcha-tabs.directive.ts → tabs.directive.ts} +0 -0
  249. /package/src/lib/matcha-tooltip/{matcha-tooltip.directive.ts → tooltip.directive.ts} +0 -0
  250. /package/src/lib/matcha-tree/{matcha-tree.directive.ts → tree.directive.ts} +0 -0
@@ -0,0 +1,52 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Fundamentos / Typography / Line-height" />
4
+
5
+ ### Line-height
6
+
7
+ O line-height é usado para controlar a altura da linha em um bloco de texto,
8
+ afetando o espaço entre as linhas de texto.
9
+
10
+ #### Pixels
11
+
12
+ Os tamanhos em pixels dessas classes são sempre múltiplos de **2**, sendo o
13
+ mínimo **2** e o máximo **72**.
14
+
15
+ <div class="h-256 w-100-p overflow-y-scroll">
16
+ <table class="w-100-p">
17
+ <thead>
18
+ <tr>
19
+ <th>Classe</th>
20
+ <th>Propriedade</th>
21
+ </tr>
22
+ </thead>
23
+ <tbody>
24
+ {Array.from({ length: 36 }, (_, index) => {
25
+ const fontSizeValue = (index + 1)* 2;
26
+ return (
27
+ <tr key={`lh-${fontSizeValue}`}>
28
+ <td>lh-{fontSizeValue}</td>
29
+ <td>line-height: {fontSizeValue}px;</td>
30
+ </tr>
31
+ );
32
+ })}
33
+ </tbody>
34
+ </table>
35
+ </div>
36
+
37
+ <div class="h-24"></div>
38
+
39
+ <p class="h5 mb-8 font-size-16 mt-4">Exemplos</p>
40
+
41
+ <div class="matcha-card background-surface d-flex-column gap-16">
42
+ <div class="matcha-card background-bg d-flex-row gap-8">
43
+ <p class="fs-16 lh-20 background-surface p-8 border-radius-6">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed tortor massa, finibus at nunc vel, consectetur adipiscing elit. Sed tortor massa, finibus at nunc vel, varius tincidunt tortor. Etiam id arcu porttitor, congue sem ac, posuere lorem. </p>
44
+ <p class="fs-16 lh-32 background-surface p-8 border-radius-6">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed tortor massa, finibus at nunc vel, consectetur adipiscing elit. Sed tortor massa, finibus at nunc vel, varius tincidunt tortor. Etiam id arcu porttitor, congue sem ac, posuere lorem. </p>
45
+ </div>
46
+ <div>
47
+ ```html
48
+ <p class="fs-16 lh-20">line-height: 20px</p>
49
+ <p class="fs-16 lh-32">line-height: 32px</p>
50
+ ```
51
+ </div>
52
+ </div>
@@ -0,0 +1,43 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Fundamentos / Typography / Message Boxes" />
4
+
5
+ ### Message Boxes
6
+
7
+ Um message box é geralmente usado para exibição de mensagens.
8
+
9
+ <p class="h5 mb-8 font-size-16 mt-4">Classes</p>
10
+
11
+
12
+ <div class="matcha-card background-surface d-flex-column gap-16">
13
+ <div class="matcha-card background-bg d-flex-column gap-16">
14
+ <div class="message-box error w-200">
15
+ <p>Message box error</p>
16
+ </div>
17
+ <div class="message-box warning w-200">
18
+ <p>Message box warning</p>
19
+ </div>
20
+ <div class="message-box success w-200">
21
+ <p>Message box success</p>
22
+ </div>
23
+ <div class="message-box info w-200">
24
+ <p>Message box info</p>
25
+ </div>
26
+ </div>
27
+ <div>
28
+ ```html
29
+ <div class="message-box error w-200">
30
+ <p>Message box error</p>
31
+ </div>
32
+ <div class="message-box warning w-200">
33
+ <p>Message box warning</p>
34
+ </div>
35
+ <div class="message-box success w-200">
36
+ <p>Message box success</p>
37
+ </div>
38
+ <div class="message-box info w-200">
39
+ <p>Message box info</p>
40
+ </div>
41
+ ```
42
+ </div>
43
+ </div>
@@ -0,0 +1,22 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Fundamentos / Typography / Text-align" />
4
+
5
+ ### Text-align
6
+
7
+ O text-align controla o alinhamento horizontal do texto dentro de um elemento.
8
+
9
+ <div class="matcha-card background-surface d-flex-column gap-16">
10
+ <div class="matcha-card background-bg">
11
+ <p class="text-center">text-center</p>
12
+ <p class="text-right">text-right</p>
13
+ <p class="text-left">text-left</p>
14
+ </div>
15
+ <div>
16
+ ```html
17
+ <p class="text-center">text-align: center</p>
18
+ <p class="text-right">text-align: right</p>
19
+ <p class="text-left">text-align: left</p>
20
+ ```
21
+ </div>
22
+ </div>
@@ -0,0 +1,88 @@
1
+ import { Meta } from '@storybook/addon-docs';
2
+
3
+ <Meta title="Fundamentos / Typography / Text Styles" />
4
+
5
+ ### Text styles
6
+
7
+ Estilização de trechos específicos de um texto.
8
+
9
+ <div class="matcha-card background-surface d-flex-column gap-16">
10
+ <div class="matcha-card background-bg">
11
+ <p>Exemplo de um <span class="text-super">texto</span> estilizado</p>
12
+ <p>Exemplo de um <span class="text-sub">texto</span> estilizado</p>
13
+ <p>Exemplo de um <span class="text-capitalize">texto</span> estilizado</p>
14
+ <p>Exemplo de um <span class="text-uppercase">texto</span> estilizado</p>
15
+ <p>Exemplo de um <span class="text-lowercase">TEXTO</span> estilizado</p>
16
+ </div>
17
+ <div>
18
+ ```html
19
+ <p>Exemplo de um <span class="text-super">texto</span> estilizado</p>
20
+ <p>Exemplo de um <span class="text-sub">texto</span> estilizado</p>
21
+ <p>Exemplo de um <span class="text-capitalize">texto</span> estilizado</p>
22
+ <p>Exemplo de um <span class="text-uppercase">texto</span> estilizado</p>
23
+ <p>Exemplo de um <span class="text-lowercase">TEXTO</span> estilizado</p>
24
+ ```
25
+ </div>
26
+ </div>
27
+
28
+ <div class="h-24"></div>
29
+
30
+ ### Para quebra de palavras
31
+
32
+ <div class="h-24"></div>
33
+
34
+ <div class="matcha-card background-surface d-flex-column gap-16">
35
+ <div class="matcha-card background-bg gap-16">
36
+ <p class="word-break w-124 background-surface border-radius-6">
37
+ Palavra palavra palavra palavra palavra palavra
38
+ </p>
39
+ <p class="word-break-all w-124 background-surface border-radius-6">
40
+ Palavra palavra palavra palavra palavra palavra
41
+ </p>
42
+ </div>
43
+ <div>
44
+ ```html
45
+ <p class="word-break w-124">
46
+ Palavra palavra palavra palavra palavra palavra
47
+ </p>
48
+ <p class="word-break-all w-124">
49
+ Palavra palavra palavra palavra palavra palavra
50
+ </p>
51
+ ```
52
+ </div>
53
+ </div>
54
+
55
+ <div class="h-24"></div>
56
+
57
+ ### Outras estilizações
58
+
59
+ <div class="h-24"></div>
60
+
61
+ <div class="matcha-card background-surface d-flex-column gap-16">
62
+ <div class="matcha-card background-bg">
63
+ <p class="text-truncate w-64">
64
+ Sed tortortia massa, finibus at nunc vel, consectetur
65
+ </p>
66
+ <p class="text-nowrap background-surface-alpha-inverse border-radius-6 w-64">
67
+ Sed tortortia massa, finibus at nunc vel, consectetur
68
+ </p>
69
+ <p class="text-boxed">
70
+ Sed tortortia massa, finibus at nunc vel, consectetur
71
+ </p>
72
+ <p class="text-strike">
73
+ Sed tortortia massa, finibus at nunc vel, consectetur
74
+ </p>
75
+ <p class="text-none">
76
+ Sed tortortia massa, finibus at nunc vel, consectetur
77
+ </p>
78
+ </div>
79
+ <div>
80
+ ```html
81
+ <p class="text-truncate w-64"></p>
82
+ <p class="text-nowrap background-surface w-64"></p>
83
+ <p class="text-boxed"></p>
84
+ <p class="text-strike"></p>
85
+ <p class="text-none"></p>
86
+ ```
87
+ </div>
88
+ </div>
@@ -6,7 +6,7 @@ import * as ComponentStories from "./autocomplete.stories";
6
6
 
7
7
  # Autocomplete
8
8
 
9
- > _autocomplete_ é uma entrada de texto normal aprimorada por um painel de opções sugeridas.
9
+ > _autocomplete_ "ESCREVER DEFINIÇÃO DO ATÔMICO"
10
10
 
11
11
  ---
12
12
 
@@ -1,9 +1,4 @@
1
- import {
2
- applicationConfig,
3
- Meta,
4
- moduleMetadata,
5
- StoryObj,
6
- } from '@storybook/angular';
1
+ import { applicationConfig, Meta, moduleMetadata, StoryObj } from '@storybook/angular';
7
2
  import { NgFor, AsyncPipe } from '@angular/common';
8
3
  import { CommonModule } from '@angular/common';
9
4
  import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';
@@ -13,30 +8,19 @@ import { MatFormFieldModule } from '@angular/material/form-field';
13
8
  import { MatInputModule } from '@angular/material/input';
14
9
  import { provideAnimations } from '@angular/platform-browser/animations';
15
10
  import { autocompleteArgtypes } from './autocomplete.argtypes';
16
- import { MatchaAutocompleteDirective } from './autocomplete.directive';
17
- import { MatchaAutocompleteOverviewDirective } from './autocomplete-overview.directive';
11
+ import { AutocompleteAutoActiveFirstOptionExample } from './example/autocomplete-auto-active-first-option-example';
12
+ import { AutocompleteOverviewExample } from './example/autocomplete-overview-example';
13
+ import { MatchaAutocompleteModule } from './autocomplete.module';
18
14
 
19
15
  export default {
20
16
  title: 'Atoms / Autocomplete',
17
+ component: AutocompleteOverviewExample,
21
18
  decorators: [
22
19
  applicationConfig({
23
20
  providers: [provideAnimations()],
24
21
  }),
25
22
  moduleMetadata({
26
- imports: [
27
- CommonModule,
28
- FormsModule,
29
- MatFormFieldModule,
30
- MatInputModule,
31
- MatAutocompleteModule,
32
- ReactiveFormsModule,
33
- NgFor,
34
- AsyncPipe,
35
- ],
36
- declarations: [
37
- MatchaAutocompleteDirective,
38
- MatchaAutocompleteOverviewDirective,
39
- ],
23
+ imports: [CommonModule, FormsModule, MatFormFieldModule, MatInputModule, MatAutocompleteModule, ReactiveFormsModule, NgFor, AsyncPipe, MatchaAutocompleteModule],
40
24
  }),
41
25
  ],
42
26
  // tags: ['autodocs'],
@@ -58,9 +42,7 @@ export default {
58
42
 
59
43
  function _filter(value: string): string[] {
60
44
  const filterValue = value.toLowerCase();
61
- return options.filter((option) =>
62
- option.toLowerCase().includes(filterValue)
63
- );
45
+ return options.filter((option) => option.toLowerCase().includes(filterValue));
64
46
  }
65
47
 
66
48
  const myControl = new FormControl();
@@ -111,3 +93,12 @@ export const AutocompleteDefault: StoryObj = {
111
93
  }),
112
94
  name: 'Autocomplete Default',
113
95
  };
96
+
97
+ export const AutocompleteAutoActiveFirstOptionOverview: StoryObj<AutocompleteOverviewExample> = {
98
+ render: (args) => ({
99
+ props: {
100
+ ...args,
101
+ },
102
+ }),
103
+ name: 'Active First Option',
104
+ };
@@ -0,0 +1,9 @@
1
+ .example-form {
2
+ min-width: 150px;
3
+ max-width: 500px;
4
+ width: 100%;
5
+ }
6
+
7
+ .example-full-width {
8
+ width: 100%;
9
+ }
@@ -0,0 +1,9 @@
1
+ <form class="example-form">
2
+ <mat-form-field class="example-full-width" appearance="outline" [color]="color">
3
+ <mat-label>Number</mat-label>
4
+ <input type="text" placeholder="Pick one" aria-label="Number" matInput [formControl]="myControl" [matAutocomplete]="auto" />
5
+ <mat-autocomplete autoActiveFirstOption #auto="matAutocomplete">
6
+ <mat-option *ngFor="let option of filteredOptions | async" [value]="option"> {{option}} </mat-option>
7
+ </mat-autocomplete>
8
+ </mat-form-field>
9
+ </form>
@@ -0,0 +1,37 @@
1
+ import { Component, OnInit } from '@angular/core';
2
+ import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';
3
+ import { Observable } from 'rxjs';
4
+ import { map, startWith } from 'rxjs/operators';
5
+ import { NgFor, AsyncPipe } from '@angular/common';
6
+ import { MatAutocompleteModule } from '@angular/material/autocomplete';
7
+ import { MatInputModule } from '@angular/material/input';
8
+ import { MatFormFieldModule } from '@angular/material/form-field';
9
+
10
+ /**
11
+ * @title Highlight the first autocomplete option
12
+ */
13
+ @Component({
14
+ selector: 'autocomplete-auto-active-first-option-example',
15
+ templateUrl: 'autocomplete-auto-active-first-option-example.html',
16
+ styleUrls: ['autocomplete-auto-active-first-option-example.css'],
17
+ standalone: true,
18
+ imports: [FormsModule, MatFormFieldModule, MatInputModule, MatAutocompleteModule, ReactiveFormsModule, NgFor, AsyncPipe],
19
+ })
20
+ export class AutocompleteAutoActiveFirstOptionExample implements OnInit {
21
+ myControl = new FormControl('');
22
+ options: string[] = ['One', 'Two', 'Three'];
23
+ filteredOptions!: Observable<string[]>;
24
+
25
+ ngOnInit() {
26
+ this.filteredOptions = this.myControl.valueChanges.pipe(
27
+ startWith(''),
28
+ map((value) => this._filter(value || ''))
29
+ );
30
+ }
31
+
32
+ private _filter(value: string): string[] {
33
+ const filterValue = value.toLowerCase();
34
+
35
+ return this.options.filter((option) => option.toLowerCase().includes(filterValue));
36
+ }
37
+ }
@@ -0,0 +1,19 @@
1
+ .example-form {
2
+ min-width: 150px;
3
+ max-width: 500px;
4
+ width: 100%;
5
+ }
6
+
7
+ .example-full-width {
8
+ width: 100%;
9
+ }
10
+
11
+ .example-option-img {
12
+ vertical-align: middle;
13
+ margin-right: 8px;
14
+ }
15
+
16
+ [dir='rtl'] .example-option-img {
17
+ margin-right: 0;
18
+ margin-left: 8px;
19
+ }
@@ -0,0 +1,17 @@
1
+ <form class="example-form">
2
+ <mat-form-field class="example-full-width" appearance="outline" [color]="color">
3
+ <mat-label>State</mat-label>
4
+ <input matInput aria-label="State" [matAutocomplete]="auto" [formControl]="stateCtrl" />
5
+ <mat-autocomplete #auto="matAutocomplete">
6
+ <mat-option *ngFor="let state of filteredStates | async" [value]="state.name">
7
+ <img alt="" class="example-option-img" [src]="state.flag" height="25" />
8
+ <span>{{state.name}}</span> |
9
+ <small>Population: {{state.population}}</small>
10
+ </mat-option>
11
+ </mat-autocomplete>
12
+ </mat-form-field>
13
+
14
+ <br />
15
+
16
+ <mat-slide-toggle [checked]="stateCtrl.disabled" (change)="stateCtrl.disabled ? stateCtrl.enable() : stateCtrl.disable()"> Disable Input? </mat-slide-toggle>
17
+ </form>
@@ -0,0 +1,70 @@
1
+ import { Component } from '@angular/core';
2
+ import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';
3
+ import { Observable } from 'rxjs';
4
+ import { map, startWith } from 'rxjs/operators';
5
+ import { MatSlideToggleModule } from '@angular/material/slide-toggle';
6
+ import { NgFor, AsyncPipe } from '@angular/common';
7
+ import { MatAutocompleteModule } from '@angular/material/autocomplete';
8
+ import { MatInputModule } from '@angular/material/input';
9
+ import { MatFormFieldModule } from '@angular/material/form-field';
10
+
11
+ export interface State {
12
+ flag: string;
13
+ name: string;
14
+ population: string;
15
+ }
16
+
17
+ /**
18
+ * @title Autocomplete overview
19
+ */
20
+ @Component({
21
+ selector: 'autocomplete-overview-example',
22
+ templateUrl: 'autocomplete-overview-example.html',
23
+ styleUrls: ['autocomplete-overview-example.css'],
24
+ standalone: true,
25
+ imports: [FormsModule, MatFormFieldModule, MatInputModule, MatAutocompleteModule, ReactiveFormsModule, NgFor, MatSlideToggleModule, AsyncPipe],
26
+ })
27
+ export class AutocompleteOverviewExample {
28
+ stateCtrl = new FormControl('');
29
+ filteredStates: Observable<State[]>;
30
+
31
+ states: State[] = [
32
+ {
33
+ name: 'Arkansas',
34
+ population: '2.978M',
35
+ // https://commons.wikimedia.org/wiki/File:Flag_of_Arkansas.svg
36
+ flag: 'https://upload.wikimedia.org/wikipedia/commons/9/9d/Flag_of_Arkansas.svg',
37
+ },
38
+ {
39
+ name: 'California',
40
+ population: '39.14M',
41
+ // https://commons.wikimedia.org/wiki/File:Flag_of_California.svg
42
+ flag: 'https://upload.wikimedia.org/wikipedia/commons/0/01/Flag_of_California.svg',
43
+ },
44
+ {
45
+ name: 'Florida',
46
+ population: '20.27M',
47
+ // https://commons.wikimedia.org/wiki/File:Flag_of_Florida.svg
48
+ flag: 'https://upload.wikimedia.org/wikipedia/commons/f/f7/Flag_of_Florida.svg',
49
+ },
50
+ {
51
+ name: 'Texas',
52
+ population: '27.47M',
53
+ // https://commons.wikimedia.org/wiki/File:Flag_of_Texas.svg
54
+ flag: 'https://upload.wikimedia.org/wikipedia/commons/f/f7/Flag_of_Texas.svg',
55
+ },
56
+ ];
57
+
58
+ constructor() {
59
+ this.filteredStates = this.stateCtrl.valueChanges.pipe(
60
+ startWith(''),
61
+ map((state) => (state ? this._filterStates(state) : this.states.slice()))
62
+ );
63
+ }
64
+
65
+ private _filterStates(value: string): State[] {
66
+ const filterValue = value.toLowerCase();
67
+
68
+ return this.states.filter((state) => state.name.toLowerCase().includes(filterValue));
69
+ }
70
+ }
@@ -0,0 +1,77 @@
1
+ export const badgeArgtypes = {
2
+ matBadgeColor: {
3
+ description: 'The color of the badge. Can be primary, accent, or warn.',
4
+ control: 'select',
5
+ options: ['primary', 'accent', 'warn'],
6
+ defaultValue: 'primary',
7
+ table: {
8
+ type: { summary: 'ThemePalette' },
9
+ },
10
+ },
11
+ matBadge: {
12
+ description: 'The content for the badge',
13
+ control: 'text',
14
+ defaultValue: '',
15
+ table: {
16
+ type: { summary: 'string | number | undefined | null' },
17
+ },
18
+ },
19
+ matBadgeDescription: {
20
+ description: 'Message used to describe the decorated element via aria-describedby',
21
+ control: 'text',
22
+ defaultValue: '',
23
+ table: {
24
+ type: { summary: 'string' },
25
+ },
26
+ },
27
+ matBadgeDisabled: {
28
+ description: 'Whether the component is disabled.',
29
+ control: 'boolean',
30
+ defaultValue: false,
31
+ table: {
32
+ type: { summary: 'boolean' },
33
+ },
34
+ },
35
+ matBadgeHidden: {
36
+ description: 'Whether the badge is hidden.',
37
+ control: 'boolean',
38
+ defaultValue: false,
39
+ table: {
40
+ type: { summary: 'boolean' },
41
+ },
42
+ },
43
+ matBadgeOverlap: {
44
+ description: 'Whether the badge should overlap its contents or not',
45
+ control: 'boolean',
46
+ defaultValue: true,
47
+ table: {
48
+ type: { summary: 'boolean' },
49
+ },
50
+ },
51
+ matBadgePosition: {
52
+ description: 'Position the badge should reside. Accepts any combination of "above"|"below" and "before"|"after"',
53
+ control: 'text',
54
+ defaultValue: 'above after',
55
+ table: {
56
+ type: { summary: 'MatBadgePosition' },
57
+ },
58
+ },
59
+ matBadgeSize: {
60
+ description: 'Size of the badge. Can be "small", "medium", or "large".',
61
+ control: 'select',
62
+ options: ['small', 'medium', 'large'],
63
+ defaultValue: 'medium',
64
+ table: {
65
+ type: { summary: 'MatBadgeSize' },
66
+ },
67
+ },
68
+ color: {
69
+ description: 'Theme color palette',
70
+ control: 'select',
71
+ defaultValue: 'accent',
72
+ table: {
73
+ defaultValue: { summary: 'accent' },
74
+ },
75
+ options: ['primary', 'accent', 'warn'],
76
+ },
77
+ };
@@ -0,0 +1,11 @@
1
+ import { Directive, ElementRef, Renderer2 } from '@angular/core';
2
+
3
+ @Directive({
4
+ selector: '[matcha-badge]',
5
+ })
6
+ export class MatchaBadgeDirective {
7
+ constructor(private _elementRef: ElementRef, private _renderer: Renderer2) {
8
+ //this._elementRef.nativeElement.style.backgroundColor = 'grey';
9
+ this._renderer.addClass(this._elementRef.nativeElement, 'matcha-badge');
10
+ }
11
+ }
@@ -0,0 +1,69 @@
1
+ import { Story } from "@storybook/blocks";
2
+ import { Meta } from "@storybook/addon-docs";
3
+ import * as ComponentStories from "./badge.stories";
4
+
5
+ <Meta title="Atoms / Badge / Documentação" />
6
+
7
+ # Badge
8
+
9
+ > _badge_ "ESCREVER DEFINIÇÃO DO ATÔMICO"
10
+
11
+ ---
12
+
13
+ ### Modes
14
+
15
+ <div class="d-flex-column gap-16">
16
+ <div class="d-flex-column">
17
+ <div class="matcha-card background-surface d-flex-column gap-16">
18
+ <span class="h5">Badge overview</span>
19
+ <div class="matcha-card background-bg">
20
+ <Story of={ComponentStories.BadgeOverview} />
21
+ </div>
22
+
23
+ <div class="d-flex-column">
24
+
25
+ ```html
26
+ <div matBadge="4" matBadgeOverlap="false" class="demo-section">Text with a badge</div>
27
+
28
+ <div matBadge="1" matBadgeSize="large" class="demo-section">Text with large badge</div>
29
+
30
+ <div class="demo-section">
31
+ Button with a badge on the left
32
+ <button mat-raised-button color="primary"
33
+ matBadge="8" matBadgePosition="before" matBadgeColor="accent">
34
+ Action
35
+ </button>
36
+ </div>
37
+
38
+ <div class="demo-section">
39
+ Button toggles badge visibility
40
+ <button mat-raised-button matBadge="7" [matBadgeHidden]="hidden" (click)="toggleBadgeVisibility()">
41
+ Hide
42
+ </button>
43
+ </div>
44
+
45
+ <div class="demo-section">
46
+ Icon with a badge
47
+ <mat-icon matBadge="15" matBadgeColor="warn">home</mat-icon>
48
+ <!-- Include text description of the icon's meaning for screen-readers -->
49
+ <span class="cdk-visually-hidden">
50
+ Example with a home icon with overlaid badge showing the number 15
51
+ </span>
52
+ </div>
53
+ ```
54
+
55
+ </div>
56
+ </div>
57
+ </div>
58
+
59
+ </div>
60
+
61
+ <br />
62
+
63
+ ### Installation
64
+
65
+ `import {MatBadgeModule} from '@angular/material/badge';`
66
+
67
+ [Official documentation](https://https://material.angular.io/components/badge/overview)
68
+
69
+ <br />
@@ -1,14 +1,9 @@
1
1
  import { NgModule } from '@angular/core';
2
- import { MatchaBadgeDirective } from './matcha-badge.directive';
2
+ import { MatchaBadgeDirective } from './badge.directive';
3
3
 
4
4
  @NgModule({
5
- declarations: [
6
- MatchaBadgeDirective
7
- ],
8
- imports: [
9
- ],
10
- exports: [
11
- MatchaBadgeDirective
12
- ]
5
+ declarations: [MatchaBadgeDirective],
6
+ imports: [],
7
+ exports: [MatchaBadgeDirective],
13
8
  })
14
- export class MatchaBadgeModule { }
9
+ export class MatchaBadgeModule {}