@masmarino/gabarit 2.0.0 → 2.1.1

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 (333) hide show
  1. package/README.md +131 -85
  2. package/accordion/README.md +56 -0
  3. package/alert/README.md +87 -0
  4. package/app-shell/README.md +133 -0
  5. package/auth/README.md +155 -0
  6. package/auth-activate/README.md +119 -0
  7. package/auth-login/README.md +113 -0
  8. package/auth-register/README.md +104 -0
  9. package/auth-reset-password/README.md +120 -0
  10. package/autocomplete/README.md +77 -0
  11. package/avatar/README.md +34 -0
  12. package/avatar-group/README.md +47 -0
  13. package/badge/README.md +177 -0
  14. package/bar-chart/README.md +44 -0
  15. package/breadcrumb/README.md +38 -0
  16. package/button/README.md +175 -0
  17. package/card/README.md +179 -0
  18. package/checkbox/README.md +50 -0
  19. package/checkbox-group/README.md +78 -0
  20. package/confirm-danger-modal/README.md +77 -0
  21. package/copy-button/README.md +90 -0
  22. package/copy-field/README.md +54 -0
  23. package/date-picker/README.md +84 -0
  24. package/description-list/README.md +63 -0
  25. package/dimension-card/README.md +39 -0
  26. package/disclosure/README.md +48 -0
  27. package/divider/README.md +31 -0
  28. package/drawer/README.md +49 -0
  29. package/empty-state/README.md +84 -0
  30. package/fesm2022/masmarino-gabarit-accordion.mjs +243 -0
  31. package/fesm2022/masmarino-gabarit-accordion.mjs.map +1 -0
  32. package/fesm2022/masmarino-gabarit-alert.mjs +208 -0
  33. package/fesm2022/masmarino-gabarit-alert.mjs.map +1 -0
  34. package/fesm2022/masmarino-gabarit-app-shell.mjs +378 -0
  35. package/fesm2022/masmarino-gabarit-app-shell.mjs.map +1 -0
  36. package/fesm2022/masmarino-gabarit-auth-activate.mjs +415 -0
  37. package/fesm2022/masmarino-gabarit-auth-activate.mjs.map +1 -0
  38. package/fesm2022/masmarino-gabarit-auth-login.mjs +467 -0
  39. package/fesm2022/masmarino-gabarit-auth-login.mjs.map +1 -0
  40. package/fesm2022/masmarino-gabarit-auth-register.mjs +457 -0
  41. package/fesm2022/masmarino-gabarit-auth-register.mjs.map +1 -0
  42. package/fesm2022/masmarino-gabarit-auth-reset-password.mjs +364 -0
  43. package/fesm2022/masmarino-gabarit-auth-reset-password.mjs.map +1 -0
  44. package/fesm2022/masmarino-gabarit-auth.mjs +844 -0
  45. package/fesm2022/masmarino-gabarit-auth.mjs.map +1 -0
  46. package/fesm2022/masmarino-gabarit-autocomplete.mjs +475 -0
  47. package/fesm2022/masmarino-gabarit-autocomplete.mjs.map +1 -0
  48. package/fesm2022/masmarino-gabarit-avatar-group.mjs +202 -0
  49. package/fesm2022/masmarino-gabarit-avatar-group.mjs.map +1 -0
  50. package/fesm2022/masmarino-gabarit-avatar.mjs +107 -0
  51. package/fesm2022/masmarino-gabarit-avatar.mjs.map +1 -0
  52. package/fesm2022/masmarino-gabarit-badge.mjs +449 -0
  53. package/fesm2022/masmarino-gabarit-badge.mjs.map +1 -0
  54. package/fesm2022/masmarino-gabarit-bar-chart.mjs +408 -0
  55. package/fesm2022/masmarino-gabarit-bar-chart.mjs.map +1 -0
  56. package/fesm2022/masmarino-gabarit-breadcrumb.mjs +59 -0
  57. package/fesm2022/masmarino-gabarit-breadcrumb.mjs.map +1 -0
  58. package/fesm2022/masmarino-gabarit-button.mjs +374 -0
  59. package/fesm2022/masmarino-gabarit-button.mjs.map +1 -0
  60. package/fesm2022/masmarino-gabarit-card.mjs +400 -0
  61. package/fesm2022/masmarino-gabarit-card.mjs.map +1 -0
  62. package/fesm2022/masmarino-gabarit-chart.mjs +1289 -0
  63. package/fesm2022/masmarino-gabarit-chart.mjs.map +1 -0
  64. package/fesm2022/masmarino-gabarit-checkbox-group.mjs +335 -0
  65. package/fesm2022/masmarino-gabarit-checkbox-group.mjs.map +1 -0
  66. package/fesm2022/masmarino-gabarit-checkbox.mjs +170 -0
  67. package/fesm2022/masmarino-gabarit-checkbox.mjs.map +1 -0
  68. package/fesm2022/masmarino-gabarit-confirm-danger-modal.mjs +387 -0
  69. package/fesm2022/masmarino-gabarit-confirm-danger-modal.mjs.map +1 -0
  70. package/fesm2022/masmarino-gabarit-copy-button.mjs +407 -0
  71. package/fesm2022/masmarino-gabarit-copy-button.mjs.map +1 -0
  72. package/fesm2022/masmarino-gabarit-copy-field.mjs +229 -0
  73. package/fesm2022/masmarino-gabarit-copy-field.mjs.map +1 -0
  74. package/fesm2022/masmarino-gabarit-date-picker.mjs +1242 -0
  75. package/fesm2022/masmarino-gabarit-date-picker.mjs.map +1 -0
  76. package/fesm2022/masmarino-gabarit-description-list.mjs +127 -0
  77. package/fesm2022/masmarino-gabarit-description-list.mjs.map +1 -0
  78. package/fesm2022/masmarino-gabarit-dimension-card.mjs +162 -0
  79. package/fesm2022/masmarino-gabarit-dimension-card.mjs.map +1 -0
  80. package/fesm2022/masmarino-gabarit-disclosure.mjs +154 -0
  81. package/fesm2022/masmarino-gabarit-disclosure.mjs.map +1 -0
  82. package/fesm2022/masmarino-gabarit-divider.mjs +90 -0
  83. package/fesm2022/masmarino-gabarit-divider.mjs.map +1 -0
  84. package/fesm2022/masmarino-gabarit-docs.mjs +16 -2
  85. package/fesm2022/masmarino-gabarit-docs.mjs.map +1 -1
  86. package/fesm2022/masmarino-gabarit-drawer.mjs +209 -0
  87. package/fesm2022/masmarino-gabarit-drawer.mjs.map +1 -0
  88. package/fesm2022/masmarino-gabarit-empty-state.mjs +226 -0
  89. package/fesm2022/masmarino-gabarit-empty-state.mjs.map +1 -0
  90. package/fesm2022/masmarino-gabarit-file-upload.mjs +335 -0
  91. package/fesm2022/masmarino-gabarit-file-upload.mjs.map +1 -0
  92. package/fesm2022/masmarino-gabarit-floating-panel.mjs +24 -0
  93. package/fesm2022/masmarino-gabarit-floating-panel.mjs.map +1 -0
  94. package/fesm2022/masmarino-gabarit-format.mjs +345 -0
  95. package/fesm2022/masmarino-gabarit-format.mjs.map +1 -0
  96. package/fesm2022/masmarino-gabarit-funnel-chart.mjs +247 -0
  97. package/fesm2022/masmarino-gabarit-funnel-chart.mjs.map +1 -0
  98. package/fesm2022/masmarino-gabarit-gauge-bar.mjs +180 -0
  99. package/fesm2022/masmarino-gabarit-gauge-bar.mjs.map +1 -0
  100. package/fesm2022/masmarino-gabarit-git-field.mjs +127 -0
  101. package/fesm2022/masmarino-gabarit-git-field.mjs.map +1 -0
  102. package/fesm2022/masmarino-gabarit-icon-marker.mjs +150 -0
  103. package/fesm2022/masmarino-gabarit-icon-marker.mjs.map +1 -0
  104. package/fesm2022/masmarino-gabarit-icon.mjs +308 -0
  105. package/fesm2022/masmarino-gabarit-icon.mjs.map +1 -0
  106. package/fesm2022/masmarino-gabarit-input.mjs +493 -0
  107. package/fesm2022/masmarino-gabarit-input.mjs.map +1 -0
  108. package/fesm2022/masmarino-gabarit-job-graph.mjs +216 -0
  109. package/fesm2022/masmarino-gabarit-job-graph.mjs.map +1 -0
  110. package/fesm2022/masmarino-gabarit-job-status.mjs +104 -0
  111. package/fesm2022/masmarino-gabarit-job-status.mjs.map +1 -0
  112. package/fesm2022/masmarino-gabarit-line-chart.mjs +574 -0
  113. package/fesm2022/masmarino-gabarit-line-chart.mjs.map +1 -0
  114. package/fesm2022/masmarino-gabarit-list-card.mjs +320 -0
  115. package/fesm2022/masmarino-gabarit-list-card.mjs.map +1 -0
  116. package/fesm2022/masmarino-gabarit-list-row.mjs +58 -0
  117. package/fesm2022/masmarino-gabarit-list-row.mjs.map +1 -0
  118. package/fesm2022/masmarino-gabarit-list-toolbar.mjs +369 -0
  119. package/fesm2022/masmarino-gabarit-list-toolbar.mjs.map +1 -0
  120. package/fesm2022/masmarino-gabarit-menu.mjs +464 -0
  121. package/fesm2022/masmarino-gabarit-menu.mjs.map +1 -0
  122. package/fesm2022/masmarino-gabarit-mfa-enrollment.mjs +897 -0
  123. package/fesm2022/masmarino-gabarit-mfa-enrollment.mjs.map +1 -0
  124. package/fesm2022/masmarino-gabarit-mfa-settings.mjs +629 -0
  125. package/fesm2022/masmarino-gabarit-mfa-settings.mjs.map +1 -0
  126. package/fesm2022/masmarino-gabarit-modal.mjs +260 -0
  127. package/fesm2022/masmarino-gabarit-modal.mjs.map +1 -0
  128. package/fesm2022/masmarino-gabarit-nav-tabs.mjs +332 -0
  129. package/fesm2022/masmarino-gabarit-nav-tabs.mjs.map +1 -0
  130. package/fesm2022/masmarino-gabarit-notification-dot.mjs +119 -0
  131. package/fesm2022/masmarino-gabarit-notification-dot.mjs.map +1 -0
  132. package/fesm2022/masmarino-gabarit-page-header.mjs +78 -0
  133. package/fesm2022/masmarino-gabarit-page-header.mjs.map +1 -0
  134. package/fesm2022/masmarino-gabarit-page-layout.mjs +157 -0
  135. package/fesm2022/masmarino-gabarit-page-layout.mjs.map +1 -0
  136. package/fesm2022/masmarino-gabarit-pagination.mjs +415 -0
  137. package/fesm2022/masmarino-gabarit-pagination.mjs.map +1 -0
  138. package/fesm2022/masmarino-gabarit-panel.mjs +80 -0
  139. package/fesm2022/masmarino-gabarit-panel.mjs.map +1 -0
  140. package/fesm2022/masmarino-gabarit-passkey-settings.mjs +606 -0
  141. package/fesm2022/masmarino-gabarit-passkey-settings.mjs.map +1 -0
  142. package/fesm2022/masmarino-gabarit-pie-chart.mjs +317 -0
  143. package/fesm2022/masmarino-gabarit-pie-chart.mjs.map +1 -0
  144. package/fesm2022/masmarino-gabarit-popover.mjs +142 -0
  145. package/fesm2022/masmarino-gabarit-popover.mjs.map +1 -0
  146. package/fesm2022/masmarino-gabarit-radio-group.mjs +202 -0
  147. package/fesm2022/masmarino-gabarit-radio-group.mjs.map +1 -0
  148. package/fesm2022/masmarino-gabarit-save-status.mjs +142 -0
  149. package/fesm2022/masmarino-gabarit-save-status.mjs.map +1 -0
  150. package/fesm2022/masmarino-gabarit-search-bar.mjs +576 -0
  151. package/fesm2022/masmarino-gabarit-search-bar.mjs.map +1 -0
  152. package/fesm2022/masmarino-gabarit-secret-reveal.mjs +348 -0
  153. package/fesm2022/masmarino-gabarit-secret-reveal.mjs.map +1 -0
  154. package/fesm2022/masmarino-gabarit-segmented-control.mjs +272 -0
  155. package/fesm2022/masmarino-gabarit-segmented-control.mjs.map +1 -0
  156. package/fesm2022/masmarino-gabarit-select.mjs +512 -0
  157. package/fesm2022/masmarino-gabarit-select.mjs.map +1 -0
  158. package/fesm2022/masmarino-gabarit-skeleton-list.mjs +189 -0
  159. package/fesm2022/masmarino-gabarit-skeleton-list.mjs.map +1 -0
  160. package/fesm2022/masmarino-gabarit-skeleton.mjs +109 -0
  161. package/fesm2022/masmarino-gabarit-skeleton.mjs.map +1 -0
  162. package/fesm2022/masmarino-gabarit-slider.mjs +239 -0
  163. package/fesm2022/masmarino-gabarit-slider.mjs.map +1 -0
  164. package/fesm2022/masmarino-gabarit-sparkline.mjs +276 -0
  165. package/fesm2022/masmarino-gabarit-sparkline.mjs.map +1 -0
  166. package/fesm2022/masmarino-gabarit-spinner.mjs +86 -0
  167. package/fesm2022/masmarino-gabarit-spinner.mjs.map +1 -0
  168. package/fesm2022/masmarino-gabarit-stat-grid.mjs +139 -0
  169. package/fesm2022/masmarino-gabarit-stat-grid.mjs.map +1 -0
  170. package/fesm2022/masmarino-gabarit-stat-tile.mjs +312 -0
  171. package/fesm2022/masmarino-gabarit-stat-tile.mjs.map +1 -0
  172. package/fesm2022/masmarino-gabarit-stepper.mjs +219 -0
  173. package/fesm2022/masmarino-gabarit-stepper.mjs.map +1 -0
  174. package/fesm2022/masmarino-gabarit-switch.mjs +151 -0
  175. package/fesm2022/masmarino-gabarit-switch.mjs.map +1 -0
  176. package/fesm2022/masmarino-gabarit-table.mjs +206 -0
  177. package/fesm2022/masmarino-gabarit-table.mjs.map +1 -0
  178. package/fesm2022/masmarino-gabarit-tabs.mjs +210 -0
  179. package/fesm2022/masmarino-gabarit-tabs.mjs.map +1 -0
  180. package/fesm2022/masmarino-gabarit-tag-input.mjs +288 -0
  181. package/fesm2022/masmarino-gabarit-tag-input.mjs.map +1 -0
  182. package/fesm2022/masmarino-gabarit-tag.mjs +155 -0
  183. package/fesm2022/masmarino-gabarit-tag.mjs.map +1 -0
  184. package/fesm2022/masmarino-gabarit-textarea.mjs +369 -0
  185. package/fesm2022/masmarino-gabarit-textarea.mjs.map +1 -0
  186. package/fesm2022/masmarino-gabarit-timeline-chart.mjs +521 -0
  187. package/fesm2022/masmarino-gabarit-timeline-chart.mjs.map +1 -0
  188. package/fesm2022/masmarino-gabarit-toaster.mjs +220 -0
  189. package/fesm2022/masmarino-gabarit-toaster.mjs.map +1 -0
  190. package/fesm2022/masmarino-gabarit-tooltip.mjs +185 -0
  191. package/fesm2022/masmarino-gabarit-tooltip.mjs.map +1 -0
  192. package/fesm2022/masmarino-gabarit-tree.mjs +258 -0
  193. package/fesm2022/masmarino-gabarit-tree.mjs.map +1 -0
  194. package/fesm2022/masmarino-gabarit-user-chip.mjs +106 -0
  195. package/fesm2022/masmarino-gabarit-user-chip.mjs.map +1 -0
  196. package/fesm2022/masmarino-gabarit.mjs +83 -24785
  197. package/fesm2022/masmarino-gabarit.mjs.map +1 -1
  198. package/file-upload/README.md +47 -0
  199. package/funnel-chart/README.md +39 -0
  200. package/gauge-bar/README.md +35 -0
  201. package/git-field/README.md +34 -0
  202. package/icon/README.md +52 -0
  203. package/icon-marker/README.md +37 -0
  204. package/input/README.md +120 -0
  205. package/job-graph/README.md +76 -0
  206. package/job-status/README.md +34 -0
  207. package/line-chart/README.md +52 -0
  208. package/list-card/README.md +144 -0
  209. package/list-row/README.md +72 -0
  210. package/list-toolbar/README.md +52 -0
  211. package/menu/README.md +90 -0
  212. package/mfa-enrollment/README.md +189 -0
  213. package/mfa-settings/README.md +154 -0
  214. package/modal/README.md +72 -0
  215. package/nav-tabs/README.md +106 -0
  216. package/notification-dot/README.md +43 -0
  217. package/package.json +329 -1
  218. package/page-header/README.md +56 -0
  219. package/page-layout/README.md +76 -0
  220. package/pagination/README.md +73 -0
  221. package/panel/README.md +56 -0
  222. package/passkey-settings/README.md +120 -0
  223. package/pie-chart/README.md +85 -0
  224. package/popover/README.md +62 -0
  225. package/radio-group/README.md +47 -0
  226. package/save-status/README.md +44 -0
  227. package/search-bar/README.md +84 -0
  228. package/secret-reveal/README.md +60 -0
  229. package/segmented-control/README.md +79 -0
  230. package/select/README.md +61 -0
  231. package/skeleton/README.md +49 -0
  232. package/skeleton-list/README.md +40 -0
  233. package/slider/README.md +44 -0
  234. package/sparkline/README.md +37 -0
  235. package/spinner/README.md +41 -0
  236. package/stat-grid/README.md +47 -0
  237. package/stat-tile/README.md +75 -0
  238. package/stepper/README.md +67 -0
  239. package/switch/README.md +51 -0
  240. package/table/README.md +75 -0
  241. package/tabs/README.md +34 -0
  242. package/tag/README.md +34 -0
  243. package/tag-input/README.md +45 -0
  244. package/textarea/README.md +76 -0
  245. package/timeline-chart/README.md +49 -0
  246. package/toaster/README.md +92 -0
  247. package/tooltip/README.md +50 -0
  248. package/tree/README.md +79 -0
  249. package/types/masmarino-gabarit-accordion.d.ts +54 -0
  250. package/types/masmarino-gabarit-alert.d.ts +65 -0
  251. package/types/masmarino-gabarit-app-shell.d.ts +102 -0
  252. package/types/masmarino-gabarit-auth-activate.d.ts +70 -0
  253. package/types/masmarino-gabarit-auth-login.d.ts +63 -0
  254. package/types/masmarino-gabarit-auth-register.d.ts +66 -0
  255. package/types/masmarino-gabarit-auth-reset-password.d.ts +53 -0
  256. package/types/masmarino-gabarit-auth.d.ts +543 -0
  257. package/types/masmarino-gabarit-autocomplete.d.ts +140 -0
  258. package/types/masmarino-gabarit-avatar-group.d.ts +60 -0
  259. package/types/masmarino-gabarit-avatar.d.ts +31 -0
  260. package/types/masmarino-gabarit-badge.d.ts +139 -0
  261. package/types/masmarino-gabarit-bar-chart.d.ts +111 -0
  262. package/types/masmarino-gabarit-breadcrumb.d.ts +12 -0
  263. package/types/masmarino-gabarit-button.d.ts +108 -0
  264. package/types/masmarino-gabarit-card.d.ts +102 -0
  265. package/types/masmarino-gabarit-chart.d.ts +361 -0
  266. package/types/masmarino-gabarit-checkbox-group.d.ts +113 -0
  267. package/types/masmarino-gabarit-checkbox.d.ts +49 -0
  268. package/types/masmarino-gabarit-confirm-danger-modal.d.ts +94 -0
  269. package/types/masmarino-gabarit-copy-button.d.ts +111 -0
  270. package/types/masmarino-gabarit-copy-field.d.ts +64 -0
  271. package/types/masmarino-gabarit-date-picker.d.ts +399 -0
  272. package/types/masmarino-gabarit-description-list.d.ts +40 -0
  273. package/types/masmarino-gabarit-dimension-card.d.ts +55 -0
  274. package/types/masmarino-gabarit-disclosure.d.ts +44 -0
  275. package/types/masmarino-gabarit-divider.d.ts +20 -0
  276. package/types/masmarino-gabarit-docs.d.ts +2 -1
  277. package/types/masmarino-gabarit-drawer.d.ts +51 -0
  278. package/types/masmarino-gabarit-empty-state.d.ts +67 -0
  279. package/types/masmarino-gabarit-file-upload.d.ts +95 -0
  280. package/types/masmarino-gabarit-floating-panel.d.ts +14 -0
  281. package/types/masmarino-gabarit-format.d.ts +54 -0
  282. package/types/masmarino-gabarit-funnel-chart.d.ts +78 -0
  283. package/types/masmarino-gabarit-gauge-bar.d.ts +54 -0
  284. package/types/masmarino-gabarit-git-field.d.ts +39 -0
  285. package/types/masmarino-gabarit-icon-marker.d.ts +47 -0
  286. package/types/masmarino-gabarit-icon.d.ts +23 -0
  287. package/types/masmarino-gabarit-input.d.ts +181 -0
  288. package/types/masmarino-gabarit-job-graph.d.ts +63 -0
  289. package/types/masmarino-gabarit-job-status.d.ts +20 -0
  290. package/types/masmarino-gabarit-line-chart.d.ts +153 -0
  291. package/types/masmarino-gabarit-list-card.d.ts +87 -0
  292. package/types/masmarino-gabarit-list-row.d.ts +14 -0
  293. package/types/masmarino-gabarit-list-toolbar.d.ts +100 -0
  294. package/types/masmarino-gabarit-menu.d.ts +93 -0
  295. package/types/masmarino-gabarit-mfa-enrollment.d.ts +142 -0
  296. package/types/masmarino-gabarit-mfa-settings.d.ts +89 -0
  297. package/types/masmarino-gabarit-modal.d.ts +60 -0
  298. package/types/masmarino-gabarit-nav-tabs.d.ts +65 -0
  299. package/types/masmarino-gabarit-notification-dot.d.ts +34 -0
  300. package/types/masmarino-gabarit-page-header.d.ts +20 -0
  301. package/types/masmarino-gabarit-page-layout.d.ts +46 -0
  302. package/types/masmarino-gabarit-pagination.d.ts +109 -0
  303. package/types/masmarino-gabarit-panel.d.ts +21 -0
  304. package/types/masmarino-gabarit-passkey-settings.d.ts +94 -0
  305. package/types/masmarino-gabarit-pie-chart.d.ts +94 -0
  306. package/types/masmarino-gabarit-popover.d.ts +33 -0
  307. package/types/masmarino-gabarit-radio-group.d.ts +66 -0
  308. package/types/masmarino-gabarit-save-status.d.ts +39 -0
  309. package/types/masmarino-gabarit-search-bar.d.ts +183 -0
  310. package/types/masmarino-gabarit-secret-reveal.d.ts +95 -0
  311. package/types/masmarino-gabarit-segmented-control.d.ts +76 -0
  312. package/types/masmarino-gabarit-select.d.ts +146 -0
  313. package/types/masmarino-gabarit-skeleton-list.d.ts +54 -0
  314. package/types/masmarino-gabarit-skeleton.d.ts +26 -0
  315. package/types/masmarino-gabarit-slider.d.ts +73 -0
  316. package/types/masmarino-gabarit-sparkline.d.ts +70 -0
  317. package/types/masmarino-gabarit-spinner.d.ts +20 -0
  318. package/types/masmarino-gabarit-stat-grid.d.ts +39 -0
  319. package/types/masmarino-gabarit-stat-tile.d.ts +79 -0
  320. package/types/masmarino-gabarit-stepper.d.ts +67 -0
  321. package/types/masmarino-gabarit-switch.d.ts +42 -0
  322. package/types/masmarino-gabarit-table.d.ts +60 -0
  323. package/types/masmarino-gabarit-tabs.d.ts +40 -0
  324. package/types/masmarino-gabarit-tag-input.d.ts +78 -0
  325. package/types/masmarino-gabarit-tag.d.ts +35 -0
  326. package/types/masmarino-gabarit-textarea.d.ts +109 -0
  327. package/types/masmarino-gabarit-timeline-chart.d.ts +145 -0
  328. package/types/masmarino-gabarit-toaster.d.ts +62 -0
  329. package/types/masmarino-gabarit-tooltip.d.ts +39 -0
  330. package/types/masmarino-gabarit-tree.d.ts +71 -0
  331. package/types/masmarino-gabarit-user-chip.d.ts +26 -0
  332. package/types/masmarino-gabarit.d.ts +83 -6599
  333. package/user-chip/README.md +42 -0
@@ -0,0 +1,47 @@
1
+ # FileUpload
2
+
3
+ Select one or more files by drag-and-drop or by clicking, with a
4
+ visual selected-files list (each removable) and optional size
5
+ validation. Integrates with Angular forms via `ControlValueAccessor`
6
+ (`File[]`), like `Select`.
7
+
8
+ **Selector**: `gbt-file-upload`
9
+
10
+ ## Inputs
11
+
12
+ | Input | Type | Default | Role |
13
+ | ------------------ | ------------------------------------------------ | ------------------------------------------------------- | --------------------------------------------------------------- |
14
+ | `label` | `string` | `''` | Field label. |
15
+ | `multiple` | `boolean` | `false` | Accept more than one file. Selecting again replaces the current file when `false` — dropping or picking several files at once also keeps only the first and reports the rest as rejected (`extraFileMessage`), the same way an oversized file is reported. |
16
+ | `accept` | `string` | `''` | Native `accept` attribute (e.g. `'image/*'`) — a hint to the OS picker and drag source, not enforced by this component. |
17
+ | `maxSizeMb` | `number \| null` | `null` | Rejects (and reports) a file larger than this, in megabytes. |
18
+ | `disabled` | `boolean` | `false` | — |
19
+ | `errorMessage` | `string \| null` | `null` | Rendered as `role="alert"` below the file list. |
20
+ | `dropLabel` | `string` | `'Drag and drop a file here, or click to browse'` | The dropzone's own instructional text. |
21
+ | `removeLabel` | `(name: string) => string` | `` (name) => `Remove ${name}` `` | Accessible name of each file's remove button. |
22
+ | `oversizeMessage` | `(name: string, maxSizeMb: number) => string` | `` (name, max) => `${name} exceeds ${max} MB and was not added.` `` | Message shown per rejected file. |
23
+ | `extraFileMessage` | `(name: string) => string` | `` (name) => `${name} was not added — only one file is allowed.` `` | Message shown per extra file when more than one is dropped/picked while `multiple` is `false`. |
24
+
25
+ ## Example
26
+
27
+ ```html
28
+ <gbt-file-upload label="Justificatif de domicile" [maxSizeMb]="5" [formControl]="proof" />
29
+ ```
30
+
31
+ ## Behavior
32
+
33
+ - The whole dropzone is one `<button>` — clicking anywhere in it (not
34
+ just a nested "browse" link) opens the native file picker via a
35
+ hidden `<input type="file">`. A `<button>` can't contain another
36
+ interactive element, so there's no separate clickable "browse" word
37
+ inside it; the entire zone is the control.
38
+ - The hidden native input is `tabindex="-1"` and `aria-hidden="true"`
39
+ — it's a pure trigger mechanism, triggered programmatically via
40
+ `.click()` from the visible button, never meant to be independently
41
+ focused or perceived.
42
+ - Drag-and-drop has no direct keyboard equivalent, but every capability
43
+ it offers is also reachable via the same button (click → native
44
+ picker), so keyboard users lose nothing.
45
+ - A rejected (oversized) file is never silently dropped — its name and
46
+ reason appear in a `role="alert"` list, replaced (not appended to)
47
+ on the next selection attempt.
@@ -0,0 +1,39 @@
1
+ # FunnelChart
2
+
3
+ Step-by-step conversion funnel.
4
+
5
+ **Selector**: `gbt-funnel-chart`
6
+
7
+ Standalone, outside the dataviz base — has its own hover behavior, with
8
+ the same keyboard/pointer parity, and its own visually-hidden
9
+ `gbt-chart-table`.
10
+
11
+ ## Inputs
12
+
13
+ | Input | Type | Role |
14
+ | ------------------ | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
15
+ | `steps` | `FunnelStep[]` | Required. `{ label, value }` — the steps, in order. |
16
+ | `label` | `string` | Required. Accessible name of the chart. |
17
+ | `locale` | `string` | Required. Locale used to format numbers. |
18
+ | `emptyMessage` | `string` | Required. Message shown when `steps` is empty. |
19
+ | `tableCaption` | `string` | Required. Caption of the `sr-only` table. |
20
+ | `stepColumn` | `string` | Required. Header of that table's step column. |
21
+ | `valueColumn` | `string` | Required. Header of that table's value column. |
22
+ | `conversionColumn` | `string` | Required. Header of that table's conversion column. |
23
+ | `stepAnnouncement` | `(label: string, conversion: string) => string` | Required. Builds the wording of the announcement region (hover/focus on a step) from the label and the **already formatted** conversion from the previous step. |
24
+
25
+ ## Example
26
+
27
+ ```html
28
+ <gbt-funnel-chart
29
+ [steps]="[{ label: 'Visite', value: 1000 }, { label: 'Inscription', value: 320 }]"
30
+ label="Tunnel d'inscription"
31
+ locale="fr-FR"
32
+ emptyMessage="Aucune donnée"
33
+ tableCaption="Détail du tunnel d'inscription"
34
+ stepColumn="Étape"
35
+ valueColumn="Valeur"
36
+ conversionColumn="Conversion"
37
+ [stepAnnouncement]="(label, conversion) => label + ', ' + conversion"
38
+ />
39
+ ```
@@ -0,0 +1,35 @@
1
+ # GaugeBar
2
+
3
+ Progress gauge with alert thresholds — standalone, outside the dataviz
4
+ base (no tooltip, no keyboard navigation).
5
+
6
+ **Selector**: `gbt-gauge-bar`
7
+
8
+ ## Inputs
9
+
10
+ | Input | Type | Default | Role |
11
+ | ---------------- | --------------------------------------- | ------------------------------- | ---------------------------------------------------------- |
12
+ | `value` | `number` | required | Current value. |
13
+ | `max` | `number` | required | Maximum value. |
14
+ | `label` | `string` | required | Accessible name of the gauge (`role="progressbar"`). |
15
+ | `formattedValue` | `string` | required | Displayed value, **already formatted** — "62 GB / 100 GB". |
16
+ | `warningLabel` | `string` | required | Label announced at the warning threshold. |
17
+ | `criticalLabel` | `string` | required | Label announced at the critical threshold. |
18
+ | `thresholds` | `{ warning: number; critical: number }` | `{ warning: 70, critical: 90 }` | Thresholds as a percentage of `max`. |
19
+
20
+ `GaugeBar` accepts no formatting function: `formattedValue`,
21
+ `warningLabel`, and `criticalLabel` are strings already ready to
22
+ display — Gabarit ships no translation mechanism.
23
+
24
+ ## Example
25
+
26
+ ```html
27
+ <gbt-gauge-bar
28
+ [value]="257"
29
+ [max]="500"
30
+ label="Quota du registre Docker"
31
+ formattedValue="257 Gio / 500 Gio"
32
+ warningLabel="Avertissement"
33
+ criticalLabel="Critique"
34
+ />
35
+ ```
@@ -0,0 +1,34 @@
1
+ # GitField
2
+
3
+ The family's animated commit graph, drawn on the graphite frame: lanes that drift slowly
4
+ sideways, commits that blink in turn, pushes running along some lanes, over two soft fields of
5
+ colour (the rust accent and the indigo). It sits behind the sign-in panel or a dark band.
6
+
7
+ **Selector**: `gbt-git-field` · **Import**: `@masmarino/gabarit/git-field`
8
+
9
+ ## Usage
10
+
11
+ Behind the sign-in pages, in the `[auth-backdrop]` slot of `gbt-auth-panel` and of the pages built
12
+ on it (`gbt-auth-login`, `gbt-auth-register`, `gbt-auth-activate`, `gbt-auth-reset-password`):
13
+
14
+ ```html
15
+ <gbt-auth-login (loggedIn)="signedIn()">
16
+ <img auth-logo src="logo.svg" alt="Acme" />
17
+ <gbt-git-field auth-backdrop />
18
+ </gbt-auth-login>
19
+ ```
20
+
21
+ Anywhere else, it fills its nearest positioned ancestor (`position: absolute; inset: 0`), under
22
+ the content (`z-index: 0`): give that ancestor `position: relative` and `isolation: isolate`, and
23
+ lift the content above it.
24
+
25
+ ## Behaviour
26
+
27
+ - Decoration only: `aria-hidden="true"` on the host, `focusable="false"` on the SVG, no pointer
28
+ events.
29
+ - The drawing comes from a seeded generator, so it is the same on the server and in the browser.
30
+ - Two identical tiles scroll by one width and start again, so the loop has no seam.
31
+ - It reads the frame's colours (`frame-tokens`) in both themes, since it is drawn on the graphite.
32
+ - The graph fades out towards the middle, where a centred panel sits, and stands further back
33
+ (half opacity) below 48rem, where the panel takes the whole width.
34
+ - Still under `prefers-reduced-motion: reduce`: the graph stays drawn, nothing moves.
package/icon/README.md ADDED
@@ -0,0 +1,52 @@
1
+ # Icon
2
+
3
+ Renders an SVG icon registered in `IconRegistry` — always `aria-hidden`,
4
+ never meaningful on its own.
5
+
6
+ **Selector**: `gbt-icon`
7
+
8
+ ## Inputs
9
+
10
+ | Input | Type | Role |
11
+ | ------ | -------- | ------------------------------------------------------------------------------ |
12
+ | `name` | `string` | Name of the registered icon. Required. Nothing renders if the name is unknown. |
13
+
14
+ ## Built-in icons
15
+
16
+ Gabarit ships the icons its own components use plus the generic UI glyphs
17
+ most applications need (Lucide, inner markup only). Browse them in Storybook
18
+ (`Atoms/Icon`, story `Gallery`).
19
+
20
+ - Components' own: `search`, `x`, `eye`, `eye-off`, `chevron-down`,
21
+ `chevron-left`, `chevron-right`, `chevrons-left`, `chevrons-right`,
22
+ `ellipsis-vertical`, `check`, `copy`, `check-circle`, `alert-circle`,
23
+ `alert-triangle`, `info`, `arrow-up`, `arrow-down`, `calendar`, `upload`,
24
+ `folder`, `file`.
25
+ - General-purpose UI glyphs: `home`, `folders`, `folder-open`, `server`, `lock`, `key`,
26
+ `settings`, `log-out`, `user`, `users`, `user-plus`, `bell`, `activity`,
27
+ `layout-dashboard`, `arrow-left`, `plus`, `list`, `kanban`, `layers`,
28
+ `download`, `refresh-cw`, `trash-2`, `pencil`, `send`, `mail`,
29
+ `message-circle`, `star`, `flag`, `tag`, `globe`, `book-open`, `bug`,
30
+ `sparkles`, `play`, `clock`, `database`, `hard-drive`, `smartphone`,
31
+ `shield-check`, `shield-alert`, `square-check`, `flask-conical`, and the
32
+ circled `circle-dot`, `circle-check`, `circle-x`, `circle-play`,
33
+ `circle-slash`.
34
+
35
+ Domain glyphs (a `git-branch`, an issue ring…) stay with the application. An
36
+ application overrides any of them, or adds its own, at startup:
37
+
38
+ ```typescript
39
+ inject(IconRegistry).registerAll({
40
+ package: '<path d="…" />',
41
+ user: '<circle cx="12" cy="7" r="4" />',
42
+ })
43
+ ```
44
+
45
+ The expected markup is the **inner** content of an `<svg>` — without
46
+ the `<svg>` tag itself.
47
+
48
+ ## Example
49
+
50
+ ```html
51
+ <gbt-icon name="check" />
52
+ ```
@@ -0,0 +1,37 @@
1
+ # IconMarker
2
+
3
+ An icon on a soft tinted disc (or rounded tile): the marker of an activity on a timeline, the icon of a stat
4
+ tile, a key, a decision.
5
+
6
+ **Selector**: `gbt-icon-marker`. The icon is a registered [`gbt-icon`](../icon/README.md) name.
7
+
8
+ ## Inputs
9
+
10
+ | Input | Type | Default | Role |
11
+ | ------------ | ----------------------------------------------------------------------- | ----------- | --------------------------------------------------------------------------------------------------------------------------------- |
12
+ | `icon` | `string` | — | Required. A registered icon name. |
13
+ | `tone` | `'neutral' \| 'primary' \| 'success' \| 'warning' \| 'error' \| 'info'` | `'neutral'` | The tint. `neutral` is quiet (the wash of the empty-state disc), `primary` is the brand colour. |
14
+ | `size` | `'sm' \| 'md' \| 'lg' \| 'xl'` | `'md'` | 24, 32, 40 and 52 px. The glyph scales with it. |
15
+ | `shape` | `'disc' \| 'tile'` | `'disc'` | Round, or a square with 8 px corners. |
16
+ | `appearance` | `'soft' \| 'outline'` | `'soft'` | `soft`: a tinted fill. `outline`: the page background, a hairline border and the tone's colour on the glyph (a marker on a rail). |
17
+ | `label` | `string \| null` | `null` | Makes the marker an image (`role="img"`) with this name. Empty: decorative (`aria-hidden`). |
18
+
19
+ ## Colours
20
+
21
+ Status tones use the pair designed for a tinted background (`--color-<tone>-bg` + `--color-<tone>-bg-text`,
22
+ the alert and badge pairs, 7:1 in both themes). `neutral` is 18 % of `--border-color` under `--text-secondary`;
23
+ `primary` is 12 % of `--primary` under `--primary`. No new token: all pairs are asserted in
24
+ `tokens/contrast.spec.ts`.
25
+
26
+ ## Accessibility
27
+
28
+ The marker is decorative unless it has a `label`: the meaning (approved, blocked) must be told by the text
29
+ next to it, never by the tint alone. See [AUDIT.md](AUDIT.md).
30
+
31
+ ## Example
32
+
33
+ ```html
34
+ <li><gbt-icon-marker icon="check" size="sm" tone="success" /> bastien approved these changes</li>
35
+ <gbt-icon-marker icon="key" shape="tile" tone="info" />
36
+ <gbt-icon-marker icon="git-commit" size="sm" appearance="outline" label="Commit" />
37
+ ```
@@ -0,0 +1,120 @@
1
+ # Input
2
+
3
+ Text, email, password, number, search or URL field, with a visibility toggle, a
4
+ hint, an error message, a compact size, a monospace mode and a leading icon.
5
+ Integrated with reactive forms and `ngModel`.
6
+
7
+ **Selector**: `gbt-input`
8
+
9
+ **The exported class is called `GbtInput`, not `Input`** — `Input`
10
+ would collide with `@angular/core`'s `Input` decorator.
11
+
12
+ ## Inputs
13
+
14
+ | Input | Type | Default | Role |
15
+ | ------------------- | --------------------------------------------------------------------------------------------- | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
16
+ | `id` | `string` | generated (`gbt-input-N`) | DOM id, associates the `<label>`. |
17
+ | `label` | `string` | `''` | Visible label. |
18
+ | `type` | `'text' \| 'password' \| 'email' \| 'number' \| 'search' \| 'url'` | `'text'` | In `password` mode, a button toggles visibility. |
19
+ | `required` | `boolean` | `false` | Native `required` attribute. |
20
+ | `disabled` | `boolean` | `false` | Disables the field. |
21
+ | `placeholder` | `string` | `''` | Placeholder text. |
22
+ | `errorMessage` | `string \| null` | `null` | Error message shown under the field, associated via `aria-describedby`. |
23
+ | `autocomplete` | `string` | `'off'` | Native `autocomplete` attribute. |
24
+ | `showPasswordLabel` | `string` | `'Show password'` | Accessible name of the button when the password is hidden. |
25
+ | `hidePasswordLabel` | `string` | `'Hide password'` | Accessible name of the button when the password is visible. |
26
+ | `hint` | `string` | `''` | Help text under the field, linked with `aria-describedby`. Hidden (and unlinked) while an error shows. |
27
+ | `hideLabel` | `boolean` | `false` | Hides the label visually; it stays in the DOM and keeps naming the field. |
28
+ | `size` | `'md' \| 'sm'` | `'md'` | The field is 38px tall (`md`) or 32px (`sm`): the shared `--gbt-control-height-md` / `-sm` scale, the height of `gbt-select` and `gbt-button` (`medium` / `small`) of the same tier. |
29
+ | `mono` | `boolean` | `false` | Monospace text (`--gbt-font-mono` when defined, else the system monospace stack). |
30
+ | `leadingIcon` | `string \| null` | `null` | Icon name shown inside the field, at its start (decorative, `aria-hidden`). |
31
+ | `inputmode` | `'none' \| 'text' \| 'tel' \| 'url' \| 'email' \| 'numeric' \| 'decimal' \| 'search' \| null` | `null` | Native `inputmode` (virtual keyboard). Attribute left out when `null`. |
32
+ | `spellcheck` | `boolean \| null` | `null` | Native `spellcheck`. Left to the browser when `null`. |
33
+ | `autocapitalize` | `'off' \| 'none' \| 'on' \| 'sentences' \| 'words' \| 'characters' \| null` | `null` | Native `autocapitalize`. Left to the browser when `null`. |
34
+ | `enterkeyhint` | `'enter' \| 'done' \| 'go' \| 'next' \| 'previous' \| 'search' \| 'send' \| null` | `null` | Native `enterkeyhint` (label of the virtual keyboard's enter key). |
35
+ | `maxlength` | `number \| null` | `null` | Native `maxlength`. |
36
+ | `min` / `max` | `number \| string \| null` | `null` | Native `min` / `max` (number, date types…). |
37
+ | `combobox` | `InputCombobox \| null` | `null` | Makes the field the combobox of a list of suggestions: `role`, `aria-autocomplete="list"`, `aria-expanded`, `aria-controls`, `aria-activedescendant` (see below). |
38
+
39
+ Every optional input defaults to "off": a field that leaves them unset renders
40
+ the same markup and the same pixels.
41
+
42
+ ## Outputs
43
+
44
+ | Output | Payload | Role |
45
+ | ----------- | -------- | -------------------------------------------------- |
46
+ | `committed` | `string` | Fires on blur, with the value the user settled on. |
47
+
48
+ `committed` is for anything that persists. A field bound straight to a
49
+ request sends `2` and then `24` while the user types `24`, and walking away
50
+ mid-edit saves the half-typed value; listening to `committed` instead sends
51
+ one request, with what the user actually settled on. Local state — a signal
52
+ backing another control — is better served by the form binding, which
53
+ updates on every keystroke.
54
+
55
+ ## Hint, hidden label and compact search
56
+
57
+ ```html
58
+ <gbt-input label="Repository name" hint="Letters, digits, - and _ only." formControlName="name" />
59
+
60
+ <gbt-input
61
+ label="Search repositories"
62
+ [hideLabel]="true"
63
+ size="sm"
64
+ type="search"
65
+ leadingIcon="search"
66
+ placeholder="Search…"
67
+ />
68
+ ```
69
+
70
+ The hint sits under the field (`<p id="<id>-hint">`) and is the field's
71
+ `aria-describedby`. While `errorMessage` is set the hint is not rendered at
72
+ all and the error takes its place, so a screen reader only reads one
73
+ description.
74
+
75
+ ## Search with suggestions
76
+
77
+ The field does not render the suggestions: the caller keeps the listbox, the active option and the keys, and
78
+ hands the field what it must announce. Keys typed in the field reach the host, so `(keydown)` listens to them.
79
+
80
+ ```html
81
+ <gbt-input
82
+ label="Search packages"
83
+ [hideLabel]="true"
84
+ type="search"
85
+ leadingIcon="search"
86
+ [combobox]="{ expanded: open(), controls: 'suggestions', activeDescendant: activeId() }"
87
+ [ngModel]="text()"
88
+ (ngModelChange)="suggest($event)"
89
+ (keydown)="onKeydown($event)"
90
+ (committed)="close()"
91
+ />
92
+ <ul id="suggestions" role="listbox" [hidden]="!open()">…</ul>
93
+ ```
94
+
95
+ ## One-time code
96
+
97
+ ```html
98
+ <gbt-input
99
+ label="6-digit code"
100
+ [mono]="true"
101
+ inputmode="numeric"
102
+ autocomplete="one-time-code"
103
+ [maxlength]="6"
104
+ [spellcheck]="false"
105
+ autocapitalize="off"
106
+ enterkeyhint="go"
107
+ />
108
+ ```
109
+
110
+ ## Example
111
+
112
+ ```html
113
+ <gbt-input
114
+ label="Mot de passe"
115
+ type="password"
116
+ showPasswordLabel="Afficher le mot de passe"
117
+ hidePasswordLabel="Masquer le mot de passe"
118
+ formControlName="password"
119
+ />
120
+ ```
@@ -0,0 +1,76 @@
1
+ # JobGraph
2
+
3
+ A read-only graph of pipeline jobs, laid out as one column per stage,
4
+ with a curved link drawn from each job to every job it depends on
5
+ (GitHub-Actions style). Each job is a native button: clicking one only
6
+ emits its id — this component never navigates anywhere and never keeps
7
+ a selection of its own.
8
+
9
+ **Selector**: `gbt-job-graph`
10
+
11
+ ## Inputs
12
+
13
+ | Input | Type | Default | Role |
14
+ | --------------- | -------------------------------- | ----------------- | ------------------------------------------------------------------------------------------------------------- |
15
+ | `stages` | `JobGraphStage[]` | required | The stages, in order, each with its jobs. |
16
+ | `selectedJobId` | `string \| null` | `null` | The job being viewed; gets `aria-current="true"` and a highlight. |
17
+ | `statusLabels` | `Record<JobGraphStatus, string>` | English labels | Visually-hidden status text announced for each job (`Pending`, `Running`, `Succeeded`, `Failed`, `Canceled`). |
18
+ | `needsLabel` | `string` | `'Needs'` | Visually-hidden prefix announced before a job's dependencies. |
19
+ | `ariaLabel` | `string` | `'Pipeline jobs'` | Accessible name of the list of stages. |
20
+
21
+ ## Outputs
22
+
23
+ | Output | Payload | Role |
24
+ | ------------- | -------- | ------------------------------------------------- |
25
+ | `jobSelected` | `string` | Emits the `id` of the job whose node was clicked. |
26
+
27
+ ## Types
28
+
29
+ ```ts
30
+ type JobGraphStatus = 'pending' | 'running' | 'success' | 'failed' | 'canceled'
31
+
32
+ interface JobGraphJob {
33
+ id: string
34
+ name: string
35
+ status: JobGraphStatus
36
+ durationLabel?: string
37
+ needs: string[] // job NAMES (not ids)
38
+ }
39
+
40
+ interface JobGraphStage {
41
+ name: string
42
+ jobs: JobGraphJob[]
43
+ }
44
+ ```
45
+
46
+ `needs` holds the **names** of the jobs a job depends on, not their
47
+ ids, so job names must be unique within a graph. A name that matches no
48
+ job simply draws no link.
49
+
50
+ ## Example
51
+
52
+ ```html
53
+ <gbt-job-graph
54
+ [stages]="[
55
+ { name: 'build', jobs: [{ id: 'a', name: 'compile', status: 'success', durationLabel: '3s', needs: [] }] },
56
+ { name: 'test', jobs: [{ id: 'b', name: 'unit', status: 'running', needs: ['compile'] }] },
57
+ ]"
58
+ [selectedJobId]="selected()"
59
+ (jobSelected)="selected.set($event)"
60
+ />
61
+ ```
62
+
63
+ ## Behavior
64
+
65
+ - Each job renders a glyph whose **shape** depends on its status
66
+ (check for `success`, alert for `failed`, cross for `canceled`, a
67
+ ring for `pending`, a spinning ring for `running`), so status never
68
+ relies on colour alone; a visually-hidden text also states it. The glyph
69
+ is [`gbt-job-status`](../job-status/README.md), which you can use on its own
70
+ (a pipeline sidebar, a job header).
71
+ - The links are measured from the rendered nodes and redrawn when
72
+ `stages` changes or the container is resized. They scroll with the
73
+ content when the graph overflows horizontally. A link is drawn as
74
+ "done" when the job it starts from succeeded.
75
+ - The running spinner is replaced by a solid dot under
76
+ `prefers-reduced-motion: reduce`.
@@ -0,0 +1,34 @@
1
+ # JobStatus
2
+
3
+ The status glyph of a CI job: a check (`success`), an alert (`failed`), a cross (`canceled`), a spinning ring
4
+ (`running`) or a still ring (`pending`). [`gbt-job-graph`](../job-graph/README.md) renders its
5
+ nodes with this same component (same DOM position, same size, same colours), so a pipeline sidebar, a job
6
+ header or a summary shows the glyph the graph shows.
7
+
8
+ **Selector**: `gbt-job-status`
9
+
10
+ ## Inputs
11
+
12
+ | Input | Type | Default | Role |
13
+ | -------- | ---------------- | ------- | ----------------------------------------------------------------------------------------------------- |
14
+ | `status` | `JobStatusValue` | — | Required. `'pending' \| 'running' \| 'success' \| 'failed' \| 'canceled'` (same as `JobGraphStatus`). |
15
+ | `label` | `string \| null` | `null` | The status in words, read by screen readers and hidden visually. Empty: the glyph is decorative. |
16
+
17
+ ## Colours and motion
18
+
19
+ `success` `--color-success-text`, `failed` `--color-error-text`, `canceled` `--text-secondary`; the rings take
20
+ `--border-color` (pending) and `--primary` (running, spinning). Under `prefers-reduced-motion: reduce` the running
21
+ ring stops and becomes a filled dot. The host carries `data-status`.
22
+
23
+ ## Accessibility
24
+
25
+ The glyph tells the status by its **shape**, never colour alone. Without `label` the host is `aria-hidden`:
26
+ say the status in text next to it (as `gbt-job-graph` does in its node text). With `label` the host is exposed,
27
+ the glyph stays hidden and the label is announced. See [AUDIT.md](AUDIT.md).
28
+
29
+ ## Example
30
+
31
+ ```html
32
+ <gbt-job-status status="failed" label="Failed" />
33
+ <li><gbt-job-status status="running" /> integration <span class="sr-only">Running</span></li>
34
+ ```
@@ -0,0 +1,52 @@
1
+ # LineChart
2
+
3
+ Line(s) on the dataviz base — measures its container, reacts to the
4
+ pointer and keyboard, carries its own visually-hidden
5
+ `gbt-chart-table`.
6
+
7
+ **Selector**: `gbt-line-chart`
8
+
9
+ ## Inputs
10
+
11
+ | Input | Type | Default | Role |
12
+ | -------------- | ------------------------------------------- | -------- | ----------------------------------------------------------- |
13
+ | `series` | `ChartSeries<X>[]` | required | `{ label, points, pattern? }[]` — one or more series. |
14
+ | `xKind` | `'linear' \| 'time'` | required | Nature of the x-axis. |
15
+ | `locale` | `string` | required | Locale used to format numbers and dates. |
16
+ | `label` | `string` | required | Accessible name of the chart. |
17
+ | `tableCaption` | `string` | required | Caption of the `sr-only` table. |
18
+ | `xColumn` | `string` | required | Header of that table's x-axis column. |
19
+ | `emptyMessage` | `string` | required | Message shown when the series are empty. |
20
+ | `area` | `boolean` | `false` | Fills the area under the line. |
21
+ | `yZero` | `boolean` | `true` | Forces the y-axis domain to contain zero. |
22
+ | `yTickCount` | `number` | `5` | Target number of ticks on the y-axis. |
23
+ | `xTickCount` | `number` | `5` | Target number of ticks on the x-axis. |
24
+ | `size` | `{ width: number; height: number } \| null` | `null` | Explicit dimensions — reserved for server rendering, tests. |
25
+ | `heading` | `string` | `''` | Block title. Empty by default. |
26
+ | `headingLevel` | `1 \| 2 \| 3 \| 4 \| 5 \| 6` | `2` | Level of the rendered heading. |
27
+ | `headline` | `string` | `''` | Current value, already formatted. |
28
+ | `trend` | `string` | `''` | Change over the period, already formatted. |
29
+
30
+ `x` is a number on a linear axis, a `Date` on a time axis — `xKind`
31
+ must match the actual type of `series`' `x` values.
32
+
33
+ **Fluid width with a chosen height** — the common case — is achieved by
34
+ setting the height in CSS on the wrapping container, without passing
35
+ `[size]`. See [`../chart-frame/README.md`](../chart/chart-frame/README.md) for
36
+ the full sizing contract and hover behavior.
37
+
38
+ ## Example
39
+
40
+ ```html
41
+ <div style="height: 18rem">
42
+ <gbt-line-chart
43
+ [series]="[{ label: 'Requêtes', points: [{ x: 0, y: 12 }, { x: 1, y: 40 }] }]"
44
+ xKind="linear"
45
+ locale="fr-FR"
46
+ label="Requêtes"
47
+ tableCaption="Détail des requêtes"
48
+ xColumn="Jour"
49
+ emptyMessage="Aucune donnée"
50
+ />
51
+ </div>
52
+ ```