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,23 @@
1
+ import { Component } from '@angular/core';
2
+ import { MatSnackBar, MatSnackBarModule } from '@angular/material/snack-bar';
3
+ import { MatButtonModule } from '@angular/material/button';
4
+ import { MatInputModule } from '@angular/material/input';
5
+ import { MatFormFieldModule } from '@angular/material/form-field';
6
+
7
+ /**
8
+ * @title Basic snack-bar
9
+ */
10
+ @Component({
11
+ selector: 'snack-bar-overview-example',
12
+ templateUrl: 'snack-bar-overview-example.html',
13
+ styleUrls: ['snack-bar-overview-example.css'],
14
+ standalone: true,
15
+ imports: [MatFormFieldModule, MatInputModule, MatButtonModule, MatSnackBarModule],
16
+ })
17
+ export class SnackBarOverviewExample {
18
+ constructor(private _snackBar: MatSnackBar) {}
19
+
20
+ openSnackBar(message: string, action: string) {
21
+ this._snackBar.open(message, action);
22
+ }
23
+ }
@@ -0,0 +1,3 @@
1
+ mat-form-field {
2
+ margin-right: 12px;
3
+ }
@@ -0,0 +1,11 @@
1
+ <mat-form-field>
2
+ <mat-label>Message</mat-label>
3
+ <input matInput value="Disco party!" #message />
4
+ </mat-form-field>
5
+
6
+ <mat-form-field>
7
+ <mat-label>Action</mat-label>
8
+ <input matInput value="Dance" #action />
9
+ </mat-form-field>
10
+
11
+ <button mat-stroked-button (click)="openSnackBar(message.value, action.value)">Show snack-bar</button>
@@ -0,0 +1,11 @@
1
+ export const snackBarArgtypes = {
2
+ color: {
3
+ description: 'Theme color palette',
4
+ control: 'select',
5
+ defaultValue: 'accent',
6
+ table: {
7
+ defaultValue: { summary: 'accent' },
8
+ },
9
+ options: ['primary', 'accent', 'warn'],
10
+ },
11
+ };
@@ -0,0 +1,11 @@
1
+ import { Directive, ElementRef, Renderer2 } from '@angular/core';
2
+
3
+ @Directive({
4
+ selector: '[matchaSnackBar]',
5
+ })
6
+ export class MatchaSnackBarDirective {
7
+ constructor(private _elementRef: ElementRef, private _renderer: Renderer2) {
8
+ //this._elementRef.nativeElement.style.backgroundColor = 'grey';
9
+ this._renderer.addClass(this._elementRef.nativeElement, 'matcha-snackbar');
10
+ }
11
+ }
@@ -0,0 +1,53 @@
1
+ import { Story } from "@storybook/blocks";
2
+ import { Meta } from "@storybook/addon-docs";
3
+ import * as ComponentStories from "./snack-bar.stories";
4
+
5
+ <Meta title="Atoms / Snack Bar / Documentação" />
6
+
7
+ # Snack Bar
8
+
9
+ > _snack-bar_ "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">Snack Bar Basic</span>
19
+ <div class="matcha-card background-bg">
20
+ <Story of={ComponentStories.SnackBarOverview} />
21
+ </div>
22
+
23
+ <div class="d-flex-column">
24
+
25
+ ```html
26
+ <mat-form-field>
27
+ <mat-label>Message</mat-label>
28
+ <input matInput value="Disco party!" #message />
29
+ </mat-form-field>
30
+
31
+ <mat-form-field>
32
+ <mat-label>Action</mat-label>
33
+ <input matInput value="Dance" #action />
34
+ </mat-form-field>
35
+
36
+ <button mat-stroked-button (click)="openSnackBar(message.value, action.value)">Show snack-bar</button>
37
+ ```
38
+
39
+ </div>
40
+ </div>
41
+ </div>
42
+
43
+ </div>
44
+
45
+ <br />
46
+
47
+ ### Installation
48
+
49
+ `import { MatSnackBar, MatSnackBarModule } from '@angular/material/snack-bar';`
50
+
51
+ [Official documentation](https://https://material.angular.io/components/snack-bar/overview)
52
+
53
+ <br />
@@ -0,0 +1,10 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { MatchaSnackBarDirective } from './snack-bar.directive';
4
+
5
+ @NgModule({
6
+ declarations: [MatchaSnackBarDirective],
7
+ imports: [CommonModule],
8
+ exports: [MatchaSnackBarDirective],
9
+ })
10
+ export class MatchaSnackBarModule {}
@@ -0,0 +1,34 @@
1
+ import { applicationConfig, Meta, moduleMetadata, StoryObj } from '@storybook/angular';
2
+ import { CommonModule } from '@angular/common';
3
+ import { provideAnimations } from '@angular/platform-browser/animations';
4
+ import { snackBarArgtypes } from './snack-bar.argtypes';
5
+ import { SnackBarOverviewExample } from './snack-bar-overview-example.component';
6
+ import { MatchaSnackBarModule } from './snack-bar.module';
7
+
8
+ export default {
9
+ title: 'Atoms / Snack Bar',
10
+ component: SnackBarOverviewExample,
11
+ decorators: [
12
+ applicationConfig({
13
+ providers: [provideAnimations()],
14
+ }),
15
+
16
+ moduleMetadata({
17
+ imports: [CommonModule, MatchaSnackBarModule],
18
+ }),
19
+ ],
20
+ args: {},
21
+ argTypes: snackBarArgtypes,
22
+ parameters: {
23
+ controls: { expanded: true },
24
+ },
25
+ } as Meta;
26
+
27
+ export const SnackBarOverview: StoryObj<SnackBarOverviewExample> = {
28
+ render: (args) => ({
29
+ props: {
30
+ ...args,
31
+ },
32
+ }),
33
+ name: 'Snack Bar Overview',
34
+ };
@@ -0,0 +1,67 @@
1
+ import { Component } from '@angular/core';
2
+ import { Sort, MatSortModule } from '@angular/material/sort';
3
+ import { NgFor } from '@angular/common';
4
+
5
+ export interface Dessert {
6
+ calories: number;
7
+ carbs: number;
8
+ fat: number;
9
+ name: string;
10
+ protein: number;
11
+ }
12
+
13
+ /**
14
+ * @title Sorting overview
15
+ */
16
+ @Component({
17
+ selector: 'sort-overview-example',
18
+ templateUrl: 'sort-overview-example.html',
19
+ styleUrls: ['sort-overview-example.css'],
20
+ standalone: true,
21
+ imports: [MatSortModule, NgFor],
22
+ })
23
+ export class SortOverviewExample {
24
+ desserts: Dessert[] = [
25
+ { name: 'Frozen yogurt', calories: 159, fat: 6, carbs: 24, protein: 4 },
26
+ { name: 'Ice cream sandwich', calories: 237, fat: 9, carbs: 37, protein: 4 },
27
+ { name: 'Eclair', calories: 262, fat: 16, carbs: 24, protein: 6 },
28
+ { name: 'Cupcake', calories: 305, fat: 4, carbs: 67, protein: 4 },
29
+ { name: 'Gingerbread', calories: 356, fat: 16, carbs: 49, protein: 4 },
30
+ ];
31
+
32
+ sortedData: Dessert[];
33
+
34
+ constructor() {
35
+ this.sortedData = this.desserts.slice();
36
+ }
37
+
38
+ sortData(sort: Sort) {
39
+ const data = this.desserts.slice();
40
+ if (!sort.active || sort.direction === '') {
41
+ this.sortedData = data;
42
+ return;
43
+ }
44
+
45
+ this.sortedData = data.sort((a, b) => {
46
+ const isAsc = sort.direction === 'asc';
47
+ switch (sort.active) {
48
+ case 'name':
49
+ return compare(a.name, b.name, isAsc);
50
+ case 'calories':
51
+ return compare(a.calories, b.calories, isAsc);
52
+ case 'fat':
53
+ return compare(a.fat, b.fat, isAsc);
54
+ case 'carbs':
55
+ return compare(a.carbs, b.carbs, isAsc);
56
+ case 'protein':
57
+ return compare(a.protein, b.protein, isAsc);
58
+ default:
59
+ return 0;
60
+ }
61
+ });
62
+ }
63
+ }
64
+
65
+ function compare(a: number | string, b: number | string, isAsc: boolean) {
66
+ return (a < b ? -1 : 1) * (isAsc ? 1 : -1);
67
+ }
@@ -0,0 +1,3 @@
1
+ .mat-sort-header-container {
2
+ align-items: center;
3
+ }
@@ -0,0 +1,21 @@
1
+ <div class="table-container">
2
+ <div class="table-container-shadow">
3
+ <table matSort (matSortChange)="sortData($event)">
4
+ <tr>
5
+ <th class="par-m" mat-sort-header="name">Dessert (100g)</th>
6
+ <th class="par-m" mat-sort-header="calories">Calories</th>
7
+ <th class="par-m" mat-sort-header="fat">Fat (g)</th>
8
+ <th class="par-m" mat-sort-header="carbs">Carbs (g)</th>
9
+ <th class="par-m" mat-sort-header="protein">Protein (g)</th>
10
+ </tr>
11
+
12
+ <tr *ngFor="let dessert of sortedData">
13
+ <td class="par-m color-label">{{dessert.name}}</td>
14
+ <td class="par-m color-label">{{dessert.calories}}</td>
15
+ <td class="par-m color-label">{{dessert.fat}}</td>
16
+ <td class="par-m color-label">{{dessert.carbs}}</td>
17
+ <td class="par-m color-label">{{dessert.protein}}</td>
18
+ </tr>
19
+ </table>
20
+ </div>
21
+ </div>
@@ -0,0 +1,11 @@
1
+ export const sortHeaderArgtypes = {
2
+ color: {
3
+ description: 'Theme color palette',
4
+ control: 'select',
5
+ defaultValue: 'accent',
6
+ table: {
7
+ defaultValue: { summary: 'accent' },
8
+ },
9
+ options: ['primary', 'accent', 'warn'],
10
+ },
11
+ };
@@ -0,0 +1,78 @@
1
+ import { Story } from "@storybook/blocks";
2
+ import { Meta } from "@storybook/addon-docs";
3
+ import * as ComponentStories from "./sort-header.stories";
4
+
5
+ <Meta title="Atoms / Sort Header / Documentação" />
6
+
7
+ # Sort Header
8
+
9
+ > _table_ "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">Sort Header Overview</span>
19
+ <div class="matcha-card background-bg">
20
+ <Story of={ComponentStories.SortOverview} />
21
+ </div>
22
+
23
+ <div class="d-flex-column">
24
+
25
+ ```html
26
+ <div class="table-container">
27
+ <div class="table-container-shadow">
28
+ <table mat-table [dataSource]="dataSource" class="mat-elevation-z8">
29
+ <!--- Note that these columns can be defined in any order.
30
+ The actual rendered columns are set as a property on the row definition" -->
31
+
32
+ <!-- Position Column -->
33
+ <ng-container matColumnDef="position">
34
+ <th class="par-m" mat-header-cell *matHeaderCellDef>No.</th>
35
+ <td class="par-m color-label" mat-cell *matCellDef="let element">{{ element.position }}</td>
36
+ </ng-container>
37
+
38
+ <!-- Name Column -->
39
+ <ng-container matColumnDef="name">
40
+ <th class="par-m" mat-header-cell *matHeaderCellDef>Name</th>
41
+ <td class="par-m color-blue" mat-cell *matCellDef="let element">{{ element.name }}</td>
42
+ </ng-container>
43
+
44
+ <!-- Weight Column -->
45
+ <ng-container matColumnDef="weight">
46
+ <th class="par-m" mat-header-cell *matHeaderCellDef>Weight</th>
47
+ <td class="par-m color-label" mat-cell *matCellDef="let element">{{ element.weight }}</td>
48
+ </ng-container>
49
+
50
+ <!-- Symbol Column -->
51
+ <ng-container matColumnDef="symbol">
52
+ <th class="par-m" mat-header-cell *matHeaderCellDef>Symbol</th>
53
+ <td class="par-m color-label" mat-cell *matCellDef="let element">{{ element.symbol }}</td>
54
+ </ng-container>
55
+
56
+ <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
57
+ <tr mat-row *matRowDef="let row; columns: displayedColumns"></tr>
58
+ </table>
59
+ </div>
60
+ </div>
61
+
62
+ ```
63
+
64
+ </div>
65
+ </div>
66
+ </div>
67
+
68
+ </div>
69
+
70
+ <br />
71
+
72
+ ### Installation
73
+
74
+ `import {MatSortModule} from '@angular/material/table';`
75
+
76
+ [Official documentation](https://material.angular.io/components/sort/overview)
77
+
78
+ <br />
@@ -1,12 +1,10 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
- import { MatchaSortHeaderDirective } from './matcha-sort-header.directive';
3
+ import { MatchaSortHeaderDirective } from './sort-header.directive';
4
4
 
5
5
  @NgModule({
6
- declarations: [MatchaSortHeaderDirective],
7
- imports: [
8
- CommonModule
9
- ],
10
- exports:[MatchaSortHeaderDirective]
6
+ declarations: [MatchaSortHeaderDirective],
7
+ imports: [CommonModule],
8
+ exports: [MatchaSortHeaderDirective],
11
9
  })
12
- export class MatchaSortHeaderModule { }
10
+ export class MatchaSortHeaderModule {}
@@ -0,0 +1,34 @@
1
+ import { applicationConfig, Meta, moduleMetadata, StoryObj } from '@storybook/angular';
2
+ import { CommonModule } from '@angular/common';
3
+ import { provideAnimations } from '@angular/platform-browser/animations';
4
+ import { sortHeaderArgtypes } from './sort-header.argtypes';
5
+ import { SortOverviewExample } from './example/sort-overview-example.component';
6
+ import { MatchaSortHeaderModule } from './sort-header.module';
7
+
8
+ export default {
9
+ title: 'Atoms / Sort Header',
10
+ component: SortOverviewExample,
11
+ decorators: [
12
+ applicationConfig({
13
+ providers: [provideAnimations()],
14
+ }),
15
+
16
+ moduleMetadata({
17
+ imports: [CommonModule, MatchaSortHeaderModule],
18
+ }),
19
+ ],
20
+ args: {},
21
+ argTypes: sortHeaderArgtypes,
22
+ parameters: {
23
+ controls: { expanded: true },
24
+ },
25
+ } as Meta;
26
+
27
+ export const SortOverview: StoryObj<SortOverviewExample> = {
28
+ render: (args) => ({
29
+ props: {
30
+ ...args,
31
+ },
32
+ }),
33
+ name: 'Sort Overview Example',
34
+ };
@@ -0,0 +1,92 @@
1
+ export const stepperArgtypes = {
2
+ ariaLabel: {
3
+ description: 'Aria label for the step.',
4
+ control: 'text',
5
+ defaultValue: '',
6
+ table: {
7
+ type: { summary: 'string' },
8
+ },
9
+ },
10
+ ariaLabelledby: {
11
+ description: 'Reference to the element that the step is labelled by.',
12
+ control: 'text',
13
+ defaultValue: '',
14
+ table: {
15
+ type: { summary: 'string' },
16
+ },
17
+ },
18
+ color: {
19
+ description: 'Theme color for the particular step.',
20
+ control: 'select',
21
+ options: ['primary', 'accent', 'warn'],
22
+ defaultValue: 'primary',
23
+ table: {
24
+ type: { summary: 'ThemePalette' },
25
+ },
26
+ },
27
+ completed: {
28
+ description: 'Whether the step is marked as completed.',
29
+ control: 'boolean',
30
+ defaultValue: false,
31
+ table: {
32
+ type: { summary: 'boolean' },
33
+ },
34
+ },
35
+ editable: {
36
+ description: 'Whether the user can return to this step once it has been marked as completed.',
37
+ control: 'boolean',
38
+ defaultValue: true,
39
+ table: {
40
+ type: { summary: 'boolean' },
41
+ },
42
+ },
43
+ errorMessage: {
44
+ description: 'Error message to display when there is an error.',
45
+ control: 'text',
46
+ defaultValue: '',
47
+ table: {
48
+ type: { summary: 'string' },
49
+ },
50
+ },
51
+ hasError: {
52
+ description: 'Whether the step has an error.',
53
+ control: 'boolean',
54
+ defaultValue: false,
55
+ table: {
56
+ type: { summary: 'boolean' },
57
+ },
58
+ },
59
+ label: {
60
+ description: 'Plain text label of the step.',
61
+ control: 'text',
62
+ defaultValue: '',
63
+ table: {
64
+ type: { summary: 'string' },
65
+ },
66
+ },
67
+ optional: {
68
+ description: 'Whether the completion of the step is optional.',
69
+ control: 'boolean',
70
+ defaultValue: false,
71
+ table: {
72
+ type: { summary: 'boolean' },
73
+ },
74
+ },
75
+ state: {
76
+ description: 'State of the step.',
77
+ control: 'select',
78
+ options: ['number', 'edit', 'done'],
79
+ defaultValue: 'number',
80
+ table: {
81
+ type: { summary: 'StepState' },
82
+ },
83
+ },
84
+ stepControl: {
85
+ description: 'The top-level abstract control of the step.',
86
+ control: null,
87
+ defaultValue: undefined,
88
+ table: {
89
+ type: { summary: 'AbstractControlLike' },
90
+ },
91
+ },
92
+ };
@@ -0,0 +1,68 @@
1
+ import { Story } from "@storybook/blocks";
2
+ import { Meta } from "@storybook/addon-docs";
3
+ import * as ComponentStories from "./stepper.stories";
4
+
5
+ <Meta title="Atoms / Stepper / Documentação" />
6
+
7
+ # Stepper
8
+
9
+ > _stepper_ "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">Stepper overview</span>
19
+ <div class="matcha-card background-bg">
20
+ <Story of={ComponentStories.StepperOverview} />
21
+ </div>
22
+
23
+ <div class="d-flex-column">
24
+
25
+ ```html
26
+ <div matStepper="4" matStepperOverlap="false" class="demo-section">Text with a stepper</div>
27
+
28
+ <div matStepper="1" matStepperSize="large" class="demo-section">Text with large stepper</div>
29
+
30
+ <div class="demo-section">
31
+ Button with a stepper on the left
32
+ <button mat-raised-button color="primary"
33
+ matStepper="8" matStepperPosition="before" matStepperColor="accent">
34
+ Action
35
+ </button>
36
+ </div>
37
+
38
+ <div class="demo-section">
39
+ Button toggles stepper visibility
40
+ <button mat-raised-button matStepper="7" [matStepperHidden]="hidden" (click)="toggleStepperVisibility()">
41
+ Hide
42
+ </button>
43
+ </div>
44
+
45
+ <div class="demo-section">
46
+ Icon with a stepper
47
+ <mat-icon matStepper="15" matStepperColor="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 stepper 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 {MatStepperModule} from '@angular/material/stepper';`
66
+ [Official documentation](https://https://material.angular.io/components/stepper/overview)
67
+
68
+ <br />
@@ -1,12 +1,10 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
- import { MatchaStepperDirective } from './matcha-stepper.directive';
3
+ import { MatchaStepperDirective } from './stepper.directive';
4
4
 
5
5
  @NgModule({
6
- declarations: [MatchaStepperDirective],
7
- imports: [
8
- CommonModule
9
- ],
10
- exports:[MatchaStepperDirective]
6
+ declarations: [MatchaStepperDirective],
7
+ imports: [CommonModule],
8
+ exports: [MatchaStepperDirective],
11
9
  })
12
- export class MatchaStepperModule { }
10
+ export class MatchaStepperModule {}