matcha-components 1.0.6 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (251) hide show
  1. package/index.ts +1 -0
  2. package/package.json +1 -1
  3. package/src/documentation/presentation.mdx +105 -0
  4. package/src/foundation/borders/borders.mdx +180 -0
  5. package/src/foundation/colors/base/amber.mdx +12 -9
  6. package/src/foundation/colors/base/blue.mdx +12 -9
  7. package/src/foundation/colors/base/cyan.mdx +12 -9
  8. package/src/foundation/colors/base/deep-orange.mdx +12 -9
  9. package/src/foundation/colors/base/deep-purple.mdx +12 -9
  10. package/src/foundation/colors/base/green.mdx +12 -9
  11. package/src/foundation/colors/base/indigo.mdx +12 -9
  12. package/src/foundation/colors/base/light-blue.mdx +12 -9
  13. package/src/foundation/colors/base/light-green.mdx +12 -9
  14. package/src/foundation/colors/base/lime.mdx +12 -9
  15. package/src/foundation/colors/base/orange.mdx +12 -9
  16. package/src/foundation/colors/base/pink.mdx +12 -9
  17. package/src/foundation/colors/base/purple.mdx +12 -9
  18. package/src/foundation/colors/base/red.mdx +12 -9
  19. package/src/foundation/colors/base/teal.mdx +12 -9
  20. package/src/foundation/colors/base/yellow.mdx +12 -9
  21. package/src/foundation/colors/base-colors.mdx +21 -18
  22. package/src/foundation/colors/theme/accent.mdx +12 -9
  23. package/src/foundation/colors/theme/primary.mdx +12 -9
  24. package/src/foundation/colors/theme/warn.mdx +12 -9
  25. package/src/foundation/colors/theme-colors.mdx +11 -37
  26. package/src/foundation/spacing/margins.mdx +183 -0
  27. package/src/foundation/spacing/paddings.mdx +156 -0
  28. package/src/foundation/typography/colors.mdx +26 -0
  29. package/src/foundation/typography/font-size.mdx +57 -0
  30. package/src/foundation/typography/font-weight.mdx +65 -0
  31. package/src/foundation/typography/helpers.mdx +86 -0
  32. package/src/foundation/typography/letter-spacing.mdx +35 -0
  33. package/src/foundation/typography/line-height.mdx +52 -0
  34. package/src/foundation/typography/message-box.mdx +43 -0
  35. package/src/foundation/typography/text-align.mdx +22 -0
  36. package/src/foundation/typography/text-styles.mdx +88 -0
  37. package/src/lib/matcha-autocomplete/autocomplete.mdx +1 -1
  38. package/src/lib/matcha-autocomplete/autocomplete.stories.ts +16 -25
  39. package/src/lib/matcha-autocomplete/example/autocomplete-auto-active-first-option-example.css +9 -0
  40. package/src/lib/matcha-autocomplete/example/autocomplete-auto-active-first-option-example.html +9 -0
  41. package/src/lib/matcha-autocomplete/example/autocomplete-auto-active-first-option-example.ts +37 -0
  42. package/src/lib/matcha-autocomplete/example/autocomplete-overview-example.css +19 -0
  43. package/src/lib/matcha-autocomplete/example/autocomplete-overview-example.html +17 -0
  44. package/src/lib/matcha-autocomplete/example/autocomplete-overview-example.ts +70 -0
  45. package/src/lib/matcha-badge/badge.argtypes.ts +77 -0
  46. package/src/lib/matcha-badge/badge.directive.ts +11 -0
  47. package/src/lib/matcha-badge/badge.mdx +69 -0
  48. package/src/lib/matcha-badge/badge.module.ts +5 -10
  49. package/src/lib/matcha-badge/badge.stories.ts +79 -0
  50. package/src/lib/matcha-bottom-sheet/bottom-sheet-overview-example-sheet.html +21 -0
  51. package/src/lib/matcha-bottom-sheet/bottom-sheet-overview-example.component.ts +34 -0
  52. package/src/lib/matcha-bottom-sheet/bottom-sheet-overview-example.html +2 -0
  53. package/src/lib/matcha-bottom-sheet/bottom-sheet.argtypes.ts +117 -0
  54. package/src/lib/matcha-bottom-sheet/bottom-sheet.mdx +69 -0
  55. package/src/lib/matcha-bottom-sheet/bottom-sheet.module.ts +5 -10
  56. package/src/lib/matcha-bottom-sheet/bottom-sheet.stories.ts +39 -0
  57. package/src/lib/matcha-button/button-overview-example.component.ts +18 -0
  58. package/src/lib/matcha-button/button-overview-example.html +118 -0
  59. package/src/lib/matcha-button/button-overview-example.scss +31 -0
  60. package/src/lib/matcha-button/button.argtypes.ts +20 -0
  61. package/src/lib/matcha-button/button.directive.ts +39 -0
  62. package/src/lib/matcha-button/button.mdx +171 -0
  63. package/src/lib/matcha-button/button.module.ts +10 -0
  64. package/src/lib/matcha-button/button.stories.ts +38 -0
  65. package/src/lib/matcha-button-toggle/button-toggle.argtype.ts +115 -0
  66. package/src/lib/matcha-button-toggle/button-toggle.directive.ts +13 -0
  67. package/src/lib/matcha-button-toggle/button-toggle.mdx +63 -0
  68. package/src/lib/matcha-button-toggle/button-toggle.stories.ts +64 -0
  69. package/src/lib/matcha-button-toggle/matcha-button-toggle.directive.ts +0 -1
  70. package/src/lib/matcha-card/card-argtype.ts +54 -0
  71. package/src/lib/matcha-card/card-header.html +10 -0
  72. package/src/lib/matcha-card/card-title-group.html +12 -0
  73. package/src/lib/matcha-card/card.component.spec.ts +21 -0
  74. package/src/lib/matcha-card/card.component.ts +47 -0
  75. package/src/lib/matcha-card/card.mdx +43 -0
  76. package/src/lib/matcha-card/card.module.ts +10 -0
  77. package/src/lib/matcha-card/card.stories.ts +92 -0
  78. package/src/lib/matcha-components.module.ts +12 -47
  79. package/src/lib/matcha-dialog/confirmation-dialog.component.ts +39 -0
  80. package/src/lib/matcha-dialog/confirmation-dialog.stories.ts +21 -0
  81. package/src/lib/matcha-divider/divider.argtypes.ts +18 -0
  82. package/src/lib/matcha-divider/divider.mdx +51 -0
  83. package/src/lib/matcha-divider/divider.module.ts +5 -9
  84. package/src/lib/matcha-divider/divider.stories.ts +49 -0
  85. package/src/lib/matcha-elevation/elevation.argtypes.ts +16 -0
  86. package/src/lib/matcha-elevation/elevation.directive.ts +24 -0
  87. package/src/lib/matcha-elevation/elevation.mdx +50 -0
  88. package/src/lib/matcha-elevation/elevation.module.ts +10 -0
  89. package/src/lib/matcha-elevation/elevation.stories.ts +50 -0
  90. package/src/lib/matcha-expansion/expansion.argtypes.ts +44 -0
  91. package/src/lib/matcha-expansion/expansion.directive.ts +11 -0
  92. package/src/lib/matcha-expansion/expansion.mdx +69 -0
  93. package/src/lib/matcha-expansion/expansion.module.ts +10 -0
  94. package/src/lib/matcha-expansion/expansion.stories.ts +67 -0
  95. package/src/lib/matcha-forms/form-field-argtype.ts +60 -0
  96. package/src/lib/matcha-forms/form-field.directive.ts +11 -0
  97. package/src/lib/matcha-forms/form-field.mdx +20 -0
  98. package/src/lib/matcha-forms/{matcha-form-field.stories.ts → form-field.stories.ts} +64 -68
  99. package/src/lib/matcha-forms/forms.module.ts +5 -14
  100. package/src/lib/matcha-headers/headers.argtype.ts +14 -0
  101. package/src/lib/matcha-headers/headers.mdx +94 -0
  102. package/src/lib/matcha-headers/headers.module.ts +12 -0
  103. package/src/lib/matcha-headers/headers.stories.ts +88 -0
  104. package/src/lib/matcha-headers/headine/headline.component.html +1 -0
  105. package/src/lib/matcha-headers/headine/headline.component.ts +20 -0
  106. package/src/lib/matcha-headers/subhead/subhead.component.html +1 -0
  107. package/src/lib/matcha-headers/subhead/subhead.component.ts +20 -0
  108. package/src/lib/matcha-headers/title/title.component.html +1 -0
  109. package/src/lib/matcha-headers/title/title.component.ts +20 -0
  110. package/src/lib/matcha-icon/icon-argtype.ts +36 -0
  111. package/src/lib/matcha-icon/icon.component.html +3 -0
  112. package/src/lib/matcha-icon/icon.component.scss +0 -0
  113. package/src/lib/matcha-icon/icon.component.ts +34 -0
  114. package/src/lib/matcha-icon/icon.mdx +60 -0
  115. package/src/lib/matcha-icon/icon.module.ts +5 -14
  116. package/src/lib/matcha-icon/icon.stories.ts +423 -0
  117. package/src/lib/matcha-input/input.argtypes.ts +42 -0
  118. package/src/lib/matcha-input/input.directive.ts +11 -0
  119. package/src/lib/matcha-input/input.mdx +73 -0
  120. package/src/lib/matcha-input/input.module.ts +9 -0
  121. package/src/lib/matcha-input/input.stories.ts +97 -0
  122. package/src/lib/matcha-list/list.argtypes.ts +44 -0
  123. package/src/lib/matcha-list/{matcha-list.directive.ts → list.directive.ts} +3 -8
  124. package/src/lib/matcha-list/list.mdx +69 -0
  125. package/src/lib/matcha-list/list.module.ts +5 -9
  126. package/src/lib/matcha-list/list.stories.ts +101 -0
  127. package/src/lib/matcha-menu/menu.argtypes.ts +114 -0
  128. package/src/lib/matcha-menu/menu.mdx +59 -0
  129. package/src/lib/matcha-menu/menu.module.ts +5 -9
  130. package/src/lib/matcha-menu/menu.stories.ts +122 -0
  131. package/src/lib/matcha-paginator/paginator-overview-example.component.ts +13 -0
  132. package/src/lib/matcha-paginator/paginator-overview-example.css +0 -0
  133. package/src/lib/matcha-paginator/paginator-overview-example.html +1 -0
  134. package/src/lib/matcha-paginator/paginator.argtypes.ts +11 -0
  135. package/src/lib/matcha-paginator/paginator.mdx +53 -0
  136. package/src/lib/matcha-paginator/paginator.module.ts +5 -9
  137. package/src/lib/matcha-paginator/paginator.stories.ts +34 -0
  138. package/src/lib/matcha-progress-bar/progress-bar.mdx +1 -1
  139. package/src/lib/matcha-progress-spinner/progress-spinner.mdx +33 -13
  140. package/src/lib/matcha-progress-spinner/progress-spinner.stories.ts +8 -8
  141. package/src/lib/matcha-select/select.argtypes.ts +265 -0
  142. package/src/lib/matcha-select/{matcha-select.directive.ts → select.directive.ts} +3 -8
  143. package/src/lib/matcha-select/select.mdx +54 -0
  144. package/src/lib/matcha-select/select.module.ts +5 -7
  145. package/src/lib/matcha-select/select.stories.ts +164 -0
  146. package/src/lib/matcha-sidenav/sidenav.argtypes.ts +60 -0
  147. package/src/lib/matcha-sidenav/sidenav.directive.ts +11 -0
  148. package/src/lib/matcha-sidenav/sidenav.mdx +57 -0
  149. package/src/lib/matcha-sidenav/sidenav.module.ts +10 -0
  150. package/src/lib/matcha-sidenav/sidenav.stories.ts +79 -0
  151. package/src/lib/matcha-slide-toggle/slide-toggle.mdx +1 -1
  152. package/src/lib/matcha-slider/slider.argtypes.ts +83 -0
  153. package/src/lib/matcha-slider/slider.mdx +45 -0
  154. package/src/lib/matcha-slider/slider.stories.ts +149 -0
  155. package/src/lib/matcha-snackbar/snack-bar-overview-example.component.ts +23 -0
  156. package/src/lib/matcha-snackbar/snack-bar-overview-example.css +3 -0
  157. package/src/lib/matcha-snackbar/snack-bar-overview-example.html +11 -0
  158. package/src/lib/matcha-snackbar/snack-bar.argtypes.ts +11 -0
  159. package/src/lib/matcha-snackbar/snack-bar.directive.ts +11 -0
  160. package/src/lib/matcha-snackbar/snack-bar.mdx +53 -0
  161. package/src/lib/matcha-snackbar/snack-bar.module.ts +10 -0
  162. package/src/lib/matcha-snackbar/snack-bar.stories.ts +34 -0
  163. package/src/lib/matcha-sort-header/example/sort-overview-example.component.ts +67 -0
  164. package/src/lib/matcha-sort-header/example/sort-overview-example.css +3 -0
  165. package/src/lib/matcha-sort-header/example/sort-overview-example.html +21 -0
  166. package/src/lib/matcha-sort-header/sort-header.argtypes.ts +11 -0
  167. package/src/lib/matcha-sort-header/sort-header.mdx +78 -0
  168. package/src/lib/matcha-sort-header/sort-header.module.ts +5 -7
  169. package/src/lib/matcha-sort-header/sort-header.stories.ts +34 -0
  170. package/src/lib/matcha-stepper/stepper.argtypes.ts +92 -0
  171. package/src/lib/matcha-stepper/stepper.mdx +68 -0
  172. package/src/lib/matcha-stepper/stepper.module.ts +5 -7
  173. package/src/lib/matcha-stepper/stepper.stories.ts +163 -0
  174. package/src/lib/matcha-table/example/table-basic-example.component.ts +37 -0
  175. package/src/lib/matcha-table/example/table-basic-example.css +0 -0
  176. package/src/lib/matcha-table/example/table-basic-example.html +35 -0
  177. package/src/lib/matcha-table/table.argtypes.ts +11 -0
  178. package/src/lib/matcha-table/table.mdx +78 -0
  179. package/src/lib/matcha-table/table.module.ts +5 -7
  180. package/src/lib/matcha-table/table.stories.ts +34 -0
  181. package/src/lib/matcha-tabs/tabs.argtypes.ts +11 -0
  182. package/src/lib/matcha-tabs/tabs.mdx +69 -0
  183. package/src/lib/matcha-tabs/tabs.module.ts +5 -11
  184. package/src/lib/matcha-tabs/tabs.stories.ts +49 -0
  185. package/src/lib/matcha-toolbar/toolbar.argtypes.ts +20 -0
  186. package/src/lib/matcha-toolbar/toolbar.directive.ts +11 -0
  187. package/src/lib/matcha-toolbar/toolbar.mdx +57 -0
  188. package/src/lib/matcha-toolbar/toolbar.module.ts +10 -0
  189. package/src/lib/matcha-toolbar/toolbar.stories.ts +100 -0
  190. package/src/lib/matcha-tooltip/tooltip.argtypes.ts +11 -0
  191. package/src/lib/matcha-tooltip/tooltip.mdx +69 -0
  192. package/src/lib/matcha-tooltip/tooltip.module.ts +5 -7
  193. package/src/lib/matcha-tooltip/tooltip.stories.ts +79 -0
  194. package/src/lib/matcha-tree/tree.argtypes.ts +42 -0
  195. package/src/lib/matcha-tree/tree.mdx +49 -0
  196. package/src/lib/matcha-tree/tree.module.ts +5 -7
  197. package/src/lib/matcha-tree/tree.stories.ts +130 -0
  198. package/src/public-api.ts +27 -28
  199. package/src/lib/matcha-badge/matcha-badge.directive.ts +0 -16
  200. package/src/lib/matcha-buttons/buttons.module.ts +0 -27
  201. package/src/lib/matcha-buttons/matcha-btn-md.directive.ts +0 -16
  202. package/src/lib/matcha-buttons/matcha-btn-pill.directive.ts +0 -15
  203. package/src/lib/matcha-buttons/matcha-btn-size.directive.ts +0 -17
  204. package/src/lib/matcha-buttons/matcha-btn-xl.directive.ts +0 -15
  205. package/src/lib/matcha-card/card.mdx.txt +0 -55
  206. package/src/lib/matcha-card/matcha-card-argtype.ts +0 -123
  207. package/src/lib/matcha-card/matcha-card-content/matcha-card-content.component.html +0 -3
  208. package/src/lib/matcha-card/matcha-card-content/matcha-card-content.component.spec.ts +0 -21
  209. package/src/lib/matcha-card/matcha-card-content/matcha-card-content.component.ts +0 -10
  210. package/src/lib/matcha-card/matcha-card-footer/matcha-card-footer.component.html +0 -3
  211. package/src/lib/matcha-card/matcha-card-footer/matcha-card-footer.component.spec.ts +0 -21
  212. package/src/lib/matcha-card/matcha-card-footer/matcha-card-footer.component.ts +0 -10
  213. package/src/lib/matcha-card/matcha-card-header/matcha-card-header.component.html +0 -4
  214. package/src/lib/matcha-card/matcha-card-header/matcha-card-header.component.spec.ts +0 -21
  215. package/src/lib/matcha-card/matcha-card-header/matcha-card-header.component.ts +0 -10
  216. package/src/lib/matcha-card/matcha-card.component.scss +0 -117
  217. package/src/lib/matcha-card/matcha-card.component.spec.ts +0 -21
  218. package/src/lib/matcha-card/matcha-card.component.ts +0 -43
  219. package/src/lib/matcha-card/matcha-card.module.ts +0 -27
  220. package/src/lib/matcha-card/matcha-card.stories.ts +0 -80
  221. package/src/lib/matcha-expansion-panel/expansion-panel.module.ts +0 -14
  222. package/src/lib/matcha-expansion-panel/matcha-expansion-panel.directive.ts +0 -16
  223. package/src/lib/matcha-forms/matcha-form-field-appearance.directive.ts +0 -16
  224. package/src/lib/matcha-forms/matcha-form-field-argtype.ts +0 -73
  225. package/src/lib/matcha-forms/matcha-form-field.mdx +0 -284
  226. package/src/lib/matcha-forms/matcha-form-input-text.directive.ts +0 -16
  227. package/src/lib/matcha-icon/matcha-icon-position-pos.directive.ts +0 -15
  228. package/src/lib/matcha-icon/matcha-icon-position-pre.directive.ts +0 -15
  229. package/src/lib/matcha-menu/menu.stories.txt +0 -76
  230. package/src/lib/matcha-snackbar/matcha-snackbar.directive.ts +0 -16
  231. package/src/lib/matcha-snackbar/snackbar.module.ts +0 -12
  232. package/src/lib/matcha-title/matcha-title.component.html +0 -33
  233. package/src/lib/matcha-title/matcha-title.component.spec.ts +0 -21
  234. package/src/lib/matcha-title/matcha-title.component.ts +0 -24
  235. package/src/lib/matcha-title/matcha-title.module.ts +0 -18
  236. /package/src/lib/matcha-bottom-sheet/{matcha-bottom-sheet.directive.ts → bottom-sheet.directive.ts} +0 -0
  237. /package/src/lib/{matcha-buttons/button.stories.ts → matcha-button/button.stories.ts.TXT} +0 -0
  238. /package/src/lib/matcha-card/{matcha-card.component.html → card.component.html} +0 -0
  239. /package/src/lib/matcha-card/{matcha-card-content/matcha-card-content.component.scss → card.component.scss} +0 -0
  240. /package/src/lib/matcha-divider/{matcha-divider.directive.ts → divider.directive.ts} +0 -0
  241. /package/src/lib/{matcha-card/matcha-card-footer/matcha-card-footer.component.scss → matcha-headers/headine/headline.component.scss} +0 -0
  242. /package/src/lib/{matcha-card/matcha-card-header/matcha-card-header.component.scss → matcha-headers/subhead/subhead.component.scss} +0 -0
  243. /package/src/lib/{matcha-title/matcha-title.component.scss → matcha-headers/title/title.component.scss} +0 -0
  244. /package/src/lib/matcha-menu/{matcha-menu.directive.ts → menu.directive.ts} +0 -0
  245. /package/src/lib/matcha-paginator/{matcha-paginator.directive.ts → paginator.directive.ts} +0 -0
  246. /package/src/lib/matcha-sort-header/{matcha-sort-header.directive.ts → sort-header.directive.ts} +0 -0
  247. /package/src/lib/matcha-stepper/{matcha-stepper.directive.ts → stepper.directive.ts} +0 -0
  248. /package/src/lib/matcha-table/{matcha-table.directive.ts → table.directive.ts} +0 -0
  249. /package/src/lib/matcha-tabs/{matcha-tabs.directive.ts → tabs.directive.ts} +0 -0
  250. /package/src/lib/matcha-tooltip/{matcha-tooltip.directive.ts → tooltip.directive.ts} +0 -0
  251. /package/src/lib/matcha-tree/{matcha-tree.directive.ts → tree.directive.ts} +0 -0
@@ -1,14 +1,10 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
- import { MatchaMenuDirective } from './matcha-menu.directive';
3
+ import { MatchaMenuDirective } from './menu.directive';
4
4
 
5
5
  @NgModule({
6
- declarations: [MatchaMenuDirective],
7
- imports: [
8
- CommonModule
9
- ],
10
- exports:[
11
- MatchaMenuDirective
12
- ]
6
+ declarations: [MatchaMenuDirective],
7
+ imports: [CommonModule],
8
+ exports: [MatchaMenuDirective],
13
9
  })
14
- export class MatchaMenuModule { }
10
+ export class MatchaMenuModule {}
@@ -0,0 +1,122 @@
1
+ import { applicationConfig, Meta, moduleMetadata, StoryObj } from '@storybook/angular';
2
+ import { NgIf, NgFor, AsyncPipe, JsonPipe } from '@angular/common';
3
+ import { CommonModule } from '@angular/common';
4
+ import { MatIconModule } from '@angular/material/icon';
5
+ import { MatMenuModule } from '@angular/material/menu';
6
+ import { MatButtonModule } from '@angular/material/button';
7
+ import { provideAnimations } from '@angular/platform-browser/animations';
8
+ import { menuArgtypes } from './menu.argtypes';
9
+
10
+ export default {
11
+ title: 'Atoms / Menu',
12
+ decorators: [
13
+ applicationConfig({
14
+ providers: [provideAnimations()],
15
+ }),
16
+
17
+ moduleMetadata({
18
+ imports: [CommonModule, MatButtonModule, MatIconModule, MatMenuModule, MatButtonModule, NgIf, JsonPipe, NgFor, AsyncPipe],
19
+ }),
20
+ ],
21
+ args: {
22
+ color: 'accent',
23
+ },
24
+ argTypes: menuArgtypes,
25
+ parameters: {
26
+ controls: { expanded: true },
27
+ },
28
+ } as Meta;
29
+
30
+ export const MenuWithIcons: StoryObj = {
31
+ render: (args) => ({
32
+ props: {
33
+ ...args,
34
+ },
35
+ template: `
36
+ <div class="d-flex-center-center">
37
+ <div class="matcha-card background-surface d-flex-column gap-16 max-w-256 w-256">
38
+ <button mat-icon-button [matMenuTriggerFor]="menu" aria-label="Example icon-button with a menu">
39
+ <span class="i-matcha-favorite"></span>
40
+ </button>
41
+ <mat-menu #menu="matMenu">
42
+ <button mat-menu-item>
43
+ <span class="i-matcha-favorite mr-8"></span>
44
+ <span class="par-m">Radial</span>
45
+ </button>
46
+ <button mat-menu-item disabled>
47
+ <span class="i-matcha-favorite mr-8"></span>
48
+ <span class="par-m">Check voice mail</span>
49
+ </button>
50
+ <button mat-menu-item>
51
+ <span class="i-matcha-favorite mr-8"></span>
52
+ <span class="par-m">Disable alerts</span>
53
+ </button>
54
+ </mat-menu>
55
+ </div>
56
+ </div>
57
+ `,
58
+ }),
59
+ name: 'Menu with icons',
60
+ };
61
+
62
+ export const NestedMenu: StoryObj = {
63
+ render: (args) => ({
64
+ props: {
65
+ ...args,
66
+ },
67
+ template: `
68
+ <div class="d-flex-center-center">
69
+ <div class="matcha-card background-surface d-flex gap-16 max-w-256 w-256">
70
+
71
+ <button mat-button [matMenuTriggerFor]="animals">Animal index</button>
72
+ <mat-menu #animals="matMenu">
73
+ <button mat-menu-item [matMenuTriggerFor]="vertebrates">Vertebrates</button>
74
+ <button mat-menu-item [matMenuTriggerFor]="invertebrates">Invertebrates</button>
75
+ </mat-menu>
76
+
77
+ <mat-menu #vertebrates="matMenu">
78
+ <button mat-menu-item [matMenuTriggerFor]="fish">Fishes</button>
79
+ <button mat-menu-item [matMenuTriggerFor]="amphibians">Amphibians</button>
80
+ <button mat-menu-item [matMenuTriggerFor]="reptiles">Reptiles</button>
81
+ <button mat-menu-item>Birds</button>
82
+ <button mat-menu-item>Mammals</button>
83
+ </mat-menu>
84
+
85
+ <mat-menu #invertebrates="matMenu">
86
+ <button mat-menu-item>Insects</button>
87
+ <button mat-menu-item>Molluscs</button>
88
+ <button mat-menu-item>Crustaceans</button>
89
+ <button mat-menu-item>Corals</button>
90
+ <button mat-menu-item>Arachnids</button>
91
+ <button mat-menu-item>Velvet worms</button>
92
+ <button mat-menu-item>Horseshoe crabs</button>
93
+ </mat-menu>
94
+
95
+ <mat-menu #fish="matMenu">
96
+ <button mat-menu-item>Baikal oilfish</button>
97
+ <button mat-menu-item>Bala shark</button>
98
+ <button mat-menu-item>Ballan wrasse</button>
99
+ <button mat-menu-item>Bamboo shark</button>
100
+ <button mat-menu-item>Banded killifish</button>
101
+ </mat-menu>
102
+
103
+ <mat-menu #amphibians="matMenu">
104
+ <button mat-menu-item>Sonoran desert toad</button>
105
+ <button mat-menu-item>Western toad</button>
106
+ <button mat-menu-item>Arroyo toad</button>
107
+ <button mat-menu-item>Yosemite toad</button>
108
+ </mat-menu>
109
+
110
+ <mat-menu #reptiles="matMenu">
111
+ <button mat-menu-item>Banded Day Gecko</button>
112
+ <button mat-menu-item>Banded Gila Monster</button>
113
+ <button mat-menu-item>Black Tree Monitor</button>
114
+ <button mat-menu-item>Blue Spiny Lizard</button>
115
+ <button mat-menu-item disabled>Velociraptor</button>
116
+ </mat-menu>
117
+ </div>
118
+ </div>
119
+ `,
120
+ }),
121
+ name: 'Nested menu',
122
+ };
@@ -0,0 +1,13 @@
1
+ import { Component } from '@angular/core';
2
+ import { MatPaginatorModule } from '@angular/material/paginator';
3
+
4
+ /**
5
+ * @title Paginator
6
+ */
7
+ @Component({
8
+ selector: 'paginator-overview-example',
9
+ templateUrl: 'paginator-overview-example.html',
10
+ standalone: true,
11
+ imports: [MatPaginatorModule],
12
+ })
13
+ export class PaginatorOverviewExample {}
@@ -0,0 +1 @@
1
+ <mat-paginator [length]="100" [pageSize]="10" [pageSizeOptions]="[5, 10, 25, 100]" aria-label="Select page"> </mat-paginator>
@@ -0,0 +1,11 @@
1
+ export const paginatorArgtypes = {
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,53 @@
1
+ import { Story } from "@storybook/blocks";
2
+ import { Meta } from "@storybook/addon-docs";
3
+ import * as ComponentStories from "./paginator.stories";
4
+
5
+ <Meta title="Atoms / Paginator / Documentação" />
6
+
7
+ # Paginator
8
+
9
+ > _paginator_ "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">Paginator Basic</span>
19
+ <div class="matcha-card background-bg">
20
+ <Story of={ComponentStories.PaginatorOverview} />
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)="openPaginator(message.value, action.value)">Show paginator</button>
37
+ ```
38
+
39
+ </div>
40
+ </div>
41
+ </div>
42
+
43
+ </div>
44
+
45
+ <br />
46
+
47
+ ### Installation
48
+
49
+ `import { MatPaginator, MatPaginatorModule } from '@angular/material/paginator';`
50
+
51
+ [Official documentation](https://https://material.angular.io/components/paginator/overview)
52
+
53
+ <br />
@@ -1,14 +1,10 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
- import { MatchaPaginatorDirective } from './matcha-paginator.directive';
3
+ import { MatchaPaginatorDirective } from './paginator.directive';
4
4
 
5
5
  @NgModule({
6
- declarations: [MatchaPaginatorDirective],
7
- imports: [
8
- CommonModule
9
- ],
10
- exports:[
11
- MatchaPaginatorDirective
12
- ]
6
+ declarations: [MatchaPaginatorDirective],
7
+ imports: [CommonModule],
8
+ exports: [MatchaPaginatorDirective],
13
9
  })
14
- export class MatchaPaginatorModule { }
10
+ export class MatchaPaginatorModule {}
@@ -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 { paginatorArgtypes } from './paginator.argtypes';
5
+ import { PaginatorOverviewExample } from './paginator-overview-example.component';
6
+ import { MatchaPaginatorModule } from './paginator.module';
7
+
8
+ export default {
9
+ title: 'Atoms / Paginator',
10
+ component: PaginatorOverviewExample,
11
+ decorators: [
12
+ applicationConfig({
13
+ providers: [provideAnimations()],
14
+ }),
15
+
16
+ moduleMetadata({
17
+ imports: [CommonModule, MatchaPaginatorModule],
18
+ }),
19
+ ],
20
+ args: {},
21
+ argTypes: paginatorArgtypes,
22
+ parameters: {
23
+ controls: { expanded: true },
24
+ },
25
+ } as Meta;
26
+
27
+ export const PaginatorOverview: StoryObj<PaginatorOverviewExample> = {
28
+ render: (args) => ({
29
+ props: {
30
+ ...args,
31
+ },
32
+ }),
33
+ name: 'Paginator Overview',
34
+ };
@@ -6,7 +6,7 @@ import * as ComponentStories from "./progress-bar.stories";
6
6
 
7
7
  # Progress bar
8
8
 
9
- > _mat-progress-bar_ is a horizontal progress-bar for indicating progress and activity.
9
+ > _mat-progress-bar_ "ESCREVER DEFINIÇÃO DO ATÔMICO"
10
10
 
11
11
  ---
12
12
 
@@ -1,23 +1,43 @@
1
- import { Story } from '@storybook/blocks';
2
- import * as ComponentStories from './progress-spinner.stories';
3
- import { Meta } from '@storybook/addon-docs';
1
+ import { Story } from "@storybook/blocks";
2
+ import { Meta } from "@storybook/addon-docs";
3
+ import * as ComponentStories from "./progress-spinner.stories";
4
4
 
5
+ <Meta title="Atoms / Progress Spinner / Documentação" />
5
6
 
6
- <Meta of={ComponentStories} />
7
+ # Progress Spinner
7
8
 
8
- # Progress spinner
9
+ > _progress-spinner_ "ESCREVER DEFINIÇÃO DO ATÔMICO"
9
10
 
10
- > *mat-progress-spinner* and *mat-spinner* are a circular indicators of progress and activity.
11
+ ---
11
12
 
12
- <br/>
13
+ ### Modes
13
14
 
14
- ## Installation
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">Progress Spinner overview</span>
19
+ <div class="matcha-card background-bg">
20
+ <Story of={ComponentStories.ProgressSpinnerOverview} />
21
+ </div>
15
22
 
16
- `import {MatProgressSpinnerModule} from '@angular/material/progress-spinner';`
23
+ <div class="d-flex-column">
24
+
25
+ ```html
26
+
27
+ ```
28
+
29
+ </div>
30
+ </div>
31
+ </div>
17
32
 
18
- [Official documentation](https://material.angular.io/components/progress-spinner/overview)
33
+ </div>
34
+
35
+ <br />
36
+
37
+ ### Installation
38
+
39
+ `import {MatProgressSpinnerModule} from '@angular/material/progress-spinner';`
19
40
 
20
- <br/>
41
+ [Official documentation](https://https://material.angular.io/components/progress-spinner/overview)
21
42
 
22
- ## Example
23
- <Story of={ComponentStories.WithBasicUsage}></Story>
43
+ <br />
@@ -1,21 +1,21 @@
1
- import { Meta, moduleMetadata, StoryObj } from '@storybook/angular';
1
+ import { applicationConfig, Meta, moduleMetadata, StoryObj } from '@storybook/angular';
2
2
  import { progressSpinnerArgtypes } from './progress-spinner.argtype';
3
3
  import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
4
4
  import { MatchaProgressSpinnerDirective } from './progress-spinner.directive';
5
-
6
- const meta: Meta<typeof MatProgressSpinnerModule> = {
7
- component: MatProgressSpinnerModule,
8
- };
5
+ import { provideAnimations } from '@angular/platform-browser/animations';
6
+ import { config } from '@storybook/addon-designs';
9
7
 
10
8
  export default {
11
9
  title: 'Atoms/Progress spinner',
12
10
  decorators: [
11
+ applicationConfig({
12
+ providers: [provideAnimations()],
13
+ }),
13
14
  moduleMetadata({
14
15
  imports: [MatProgressSpinnerModule],
15
16
  declarations: [MatchaProgressSpinnerDirective],
16
17
  }),
17
18
  ],
18
- // tags: ['autodocs'],
19
19
  args: {
20
20
  color: 'primary',
21
21
  diameter: 50,
@@ -32,7 +32,7 @@ export default {
32
32
  } as Meta;
33
33
 
34
34
  /** Ce é pixuloko ce é biruleibe? */
35
- export const WithBasicUsage: StoryObj = {
35
+ export const ProgressSpinnerOverview: StoryObj = {
36
36
  render: (args) => ({
37
37
  props: args,
38
38
  template: `
@@ -40,5 +40,5 @@ export const WithBasicUsage: StoryObj = {
40
40
  <mat-progress-spinner matcha-progress-spinner [color]="color" mode="indeterminate" [value]="value" [diameter]="diameter" [strokeWidth]="strokeWidth"></mat-progress-spinner>
41
41
  `,
42
42
  }),
43
- name: 'basic usage',
43
+ name: 'Progress Spinner Overview',
44
44
  };
@@ -0,0 +1,265 @@
1
+ export const selectArgtypes = {
2
+ 'aria-label': {
3
+ description: 'Aria label of the select.',
4
+ control: 'text',
5
+ defaultValue: '',
6
+ table: {
7
+ type: { summary: 'string' },
8
+ },
9
+ },
10
+ 'aria-labelledby': {
11
+ description: 'Input that can be used to specify the aria-labelledby attribute.',
12
+ control: 'text',
13
+ defaultValue: '',
14
+ table: {
15
+ type: { summary: 'string' },
16
+ },
17
+ },
18
+ compareWith: {
19
+ description: 'Function to compare the option values with the selected values.',
20
+ control: null, // Como é uma função, não é necessário um controle.
21
+ table: {
22
+ disable: true,
23
+ },
24
+ },
25
+ disableOptionCentering: {
26
+ description: 'Whether to center the active option over the trigger.',
27
+ control: 'boolean',
28
+ defaultValue: false,
29
+ table: {
30
+ type: { summary: 'boolean' },
31
+ },
32
+ },
33
+ disableRipple: {
34
+ description: 'Whether ripples are disabled.',
35
+ control: 'boolean',
36
+ defaultValue: false,
37
+ table: {
38
+ type: { summary: 'boolean' },
39
+ },
40
+ },
41
+ disabled: {
42
+ description: 'Whether the component is disabled.',
43
+ control: 'boolean',
44
+ defaultValue: false,
45
+ table: {
46
+ type: { summary: 'boolean' },
47
+ },
48
+ },
49
+ errorStateMatcher: {
50
+ description: 'Object used to control when error messages are shown.',
51
+ control: null, // Como é um objeto, não é necessário um controle.
52
+ table: {
53
+ disable: true,
54
+ },
55
+ },
56
+ hideSingleSelectionIndicator: {
57
+ description: 'Whether checkmark indicator for single-selection options is hidden.',
58
+ control: 'boolean',
59
+ defaultValue: false,
60
+ table: {
61
+ type: { summary: 'boolean' },
62
+ },
63
+ },
64
+ id: {
65
+ description: 'Unique id of the element.',
66
+ control: 'text',
67
+ defaultValue: '',
68
+ table: {
69
+ type: { summary: 'string' },
70
+ },
71
+ },
72
+ multiple: {
73
+ description: 'Whether the user should be allowed to select multiple options.',
74
+ control: 'boolean',
75
+ defaultValue: false,
76
+ table: {
77
+ type: { summary: 'boolean' },
78
+ },
79
+ },
80
+ panelClass: {
81
+ description: 'Classes to be passed to the select panel.',
82
+ control: 'text',
83
+ defaultValue: '',
84
+ table: {
85
+ type: { summary: 'string' },
86
+ },
87
+ },
88
+ panelWidth: {
89
+ description: 'Width of the panel.',
90
+ control: 'text',
91
+ defaultValue: 'auto',
92
+ table: {
93
+ type: { summary: 'string' },
94
+ },
95
+ },
96
+ placeholder: {
97
+ description: 'Placeholder to be shown if no value has been selected.',
98
+ control: 'text',
99
+ defaultValue: '',
100
+ table: {
101
+ type: { summary: 'string' },
102
+ },
103
+ },
104
+ required: {
105
+ description: 'Whether the component is required.',
106
+ control: 'boolean',
107
+ defaultValue: false,
108
+ table: {
109
+ type: { summary: 'boolean' },
110
+ },
111
+ },
112
+ sortComparator: {
113
+ description: 'Function used to sort the values in a select in multiple mode.',
114
+ control: null, // Como é uma função, não é necessário um controle.
115
+ table: {
116
+ disable: true,
117
+ },
118
+ },
119
+ typeaheadDebounceInterval: {
120
+ description: 'Time to wait in milliseconds after the last keystroke before moving focus to an item.',
121
+ control: 'number',
122
+ defaultValue: 200,
123
+ table: {
124
+ type: { summary: 'number' },
125
+ },
126
+ },
127
+ value: {
128
+ description: 'Value of the select control.',
129
+ control: 'text',
130
+ defaultValue: '',
131
+ table: {
132
+ type: { summary: 'any' },
133
+ },
134
+ },
135
+ openedChange: {
136
+ description: 'Event emitted when the select panel has been toggled.',
137
+ action: 'openedChange',
138
+ },
139
+ selectionChange: {
140
+ description: 'Event emitted when the selected value has been changed by the user.',
141
+ action: 'selectionChange',
142
+ },
143
+ controlType: {
144
+ description: 'A name for this control that can be used by mat-form-field.',
145
+ control: 'text',
146
+ defaultValue: 'mat-select',
147
+ table: {
148
+ type: { summary: 'string' },
149
+ },
150
+ },
151
+ customTrigger: {
152
+ description: 'Custom trigger for the select.',
153
+ control: null, // Como é um componente, não é necessário um controle.
154
+ table: {
155
+ disable: true,
156
+ },
157
+ },
158
+ defaultTabIndex: {
159
+ description: 'Tabindex to which to fall back to if no value is set.',
160
+ control: 'number',
161
+ defaultValue: 0,
162
+ table: {
163
+ type: { summary: 'number' },
164
+ },
165
+ },
166
+ empty: {
167
+ description: 'Whether the select has a value.',
168
+ control: 'boolean',
169
+ defaultValue: false,
170
+ table: {
171
+ type: { summary: 'boolean' },
172
+ },
173
+ },
174
+ errorState: {
175
+ description: 'Whether the component is in an error state.',
176
+ control: 'boolean',
177
+ defaultValue: false,
178
+ table: {
179
+ type: { summary: 'boolean' },
180
+ },
181
+ },
182
+ focused: {
183
+ description: 'Whether the select is focused.',
184
+ control: 'boolean',
185
+ defaultValue: false,
186
+ table: {
187
+ type: { summary: 'boolean' },
188
+ },
189
+ },
190
+ optionGroups: {
191
+ description: 'Option groups within the select.',
192
+ control: null, // Como é uma QueryList, não é necessário um controle.
193
+ table: {
194
+ disable: true,
195
+ },
196
+ },
197
+ optionSelectionChanges: {
198
+ description: "Combined stream of all of the child options' change events.",
199
+ control: null, // Como é um Observable, não é necessário um controle.
200
+ table: {
201
+ disable: true,
202
+ },
203
+ },
204
+ options: {
205
+ description: 'List of child options.',
206
+ control: null, // Como é uma QueryList, não é necessário um controle.
207
+ table: {
208
+ disable: true,
209
+ },
210
+ },
211
+ panel: {
212
+ description: 'Panel containing the select options.',
213
+ control: null, // Como é um ElementRef, não é necessário um controle.
214
+ table: {
215
+ disable: true,
216
+ },
217
+ },
218
+ panelOpen: {
219
+ description: 'Whether or not the overlay panel is open.',
220
+ control: 'boolean',
221
+ defaultValue: false,
222
+ table: {
223
+ type: { summary: 'boolean' },
224
+ },
225
+ },
226
+ selected: {
227
+ description: 'The currently selected option.',
228
+ control: null, // Como é um MatOption ou MatOption[], não é necessário um controle.
229
+ table: {
230
+ disable: true,
231
+ },
232
+ },
233
+ shouldLabelFloat: {
234
+ description: 'Whether the label should float when the select has a value.',
235
+ control: 'boolean',
236
+ defaultValue: true,
237
+ table: {
238
+ type: { summary: 'boolean' },
239
+ },
240
+ },
241
+ trigger: {
242
+ description: 'Trigger that opens the select.',
243
+ control: null, // Como é um ElementRef, não é necessário um controle.
244
+ table: {
245
+ disable: true,
246
+ },
247
+ },
248
+ triggerValue: {
249
+ description: 'The value displayed in the trigger.',
250
+ control: 'text',
251
+ defaultValue: '',
252
+ table: {
253
+ type: { summary: 'string' },
254
+ },
255
+ },
256
+ color: {
257
+ description: 'Theme color palette',
258
+ control: 'select',
259
+ defaultValue: 'accent',
260
+ table: {
261
+ defaultValue: { summary: 'accent' },
262
+ },
263
+ options: ['primary', 'accent', 'warn'],
264
+ },
265
+ };
@@ -1,16 +1,11 @@
1
1
  import { Directive, ElementRef, Renderer2 } from '@angular/core';
2
2
 
3
3
  @Directive({
4
- selector: '[matchaSelect]'
4
+ selector: '[matcha-select]',
5
5
  })
6
6
  export class MatchaSelectDirective {
7
-
8
- constructor(
9
- private _elementRef: ElementRef,
10
- private _renderer: Renderer2
11
- ) {
7
+ constructor(private _elementRef: ElementRef, private _renderer: Renderer2) {
12
8
  //this._elementRef.nativeElement.style.backgroundColor = 'grey';
13
- this._renderer.addClass(this._elementRef.nativeElement, 'matcha-select')
9
+ this._renderer.addClass(this._elementRef.nativeElement, 'matcha-select');
14
10
  }
15
-
16
11
  }