@seedgrid/fe-components 2026.4.11 → 2026.4.13

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 (261) hide show
  1. package/dist/ai/seedgrid-components.manifest.json +12888 -0
  2. package/dist/ai-meta/types.d.ts +58 -0
  3. package/dist/ai-meta/types.d.ts.map +1 -0
  4. package/dist/ai-meta/types.js +1 -0
  5. package/dist/buttons/SgButton.meta.d.ts +4 -0
  6. package/dist/buttons/SgButton.meta.d.ts.map +1 -0
  7. package/dist/buttons/SgButton.meta.js +139 -0
  8. package/dist/buttons/SgFloatActionButton.meta.d.ts +4 -0
  9. package/dist/buttons/SgFloatActionButton.meta.d.ts.map +1 -0
  10. package/dist/buttons/SgFloatActionButton.meta.js +132 -0
  11. package/dist/buttons/SgSplitButton.meta.d.ts +4 -0
  12. package/dist/buttons/SgSplitButton.meta.d.ts.map +1 -0
  13. package/dist/buttons/SgSplitButton.meta.js +132 -0
  14. package/dist/commons/SgAvatar.meta.d.ts +4 -0
  15. package/dist/commons/SgAvatar.meta.d.ts.map +1 -0
  16. package/dist/commons/SgAvatar.meta.js +123 -0
  17. package/dist/commons/SgAvatarGroup.meta.d.ts +4 -0
  18. package/dist/commons/SgAvatarGroup.meta.d.ts.map +1 -0
  19. package/dist/commons/SgAvatarGroup.meta.js +46 -0
  20. package/dist/commons/SgBadge.meta.d.ts +4 -0
  21. package/dist/commons/SgBadge.meta.d.ts.map +1 -0
  22. package/dist/commons/SgBadge.meta.js +132 -0
  23. package/dist/commons/SgBadgeOverlay.meta.d.ts +4 -0
  24. package/dist/commons/SgBadgeOverlay.meta.d.ts.map +1 -0
  25. package/dist/commons/SgBadgeOverlay.meta.js +46 -0
  26. package/dist/commons/SgSkeleton.meta.d.ts +4 -0
  27. package/dist/commons/SgSkeleton.meta.d.ts.map +1 -0
  28. package/dist/commons/SgSkeleton.meta.js +114 -0
  29. package/dist/commons/SgToastHost.meta.d.ts +4 -0
  30. package/dist/commons/SgToastHost.meta.d.ts.map +1 -0
  31. package/dist/commons/SgToastHost.meta.js +46 -0
  32. package/dist/commons/SgToaster.meta.d.ts +4 -0
  33. package/dist/commons/SgToaster.meta.d.ts.map +1 -0
  34. package/dist/commons/SgToaster.meta.js +48 -0
  35. package/dist/commons/SgWhistleHost.meta.d.ts +4 -0
  36. package/dist/commons/SgWhistleHost.meta.d.ts.map +1 -0
  37. package/dist/commons/SgWhistleHost.meta.js +46 -0
  38. package/dist/digits/discard-digit/SgDiscardDigit.meta.d.ts +4 -0
  39. package/dist/digits/discard-digit/SgDiscardDigit.meta.d.ts.map +1 -0
  40. package/dist/digits/discard-digit/SgDiscardDigit.meta.js +48 -0
  41. package/dist/digits/fade-digit/SgFadeDigit.meta.d.ts +4 -0
  42. package/dist/digits/fade-digit/SgFadeDigit.meta.d.ts.map +1 -0
  43. package/dist/digits/fade-digit/SgFadeDigit.meta.js +48 -0
  44. package/dist/digits/flip-digit/SgFlipDigit.meta.d.ts +4 -0
  45. package/dist/digits/flip-digit/SgFlipDigit.meta.d.ts.map +1 -0
  46. package/dist/digits/flip-digit/SgFlipDigit.meta.js +48 -0
  47. package/dist/digits/matrix-digit/SgMatrixDigit.meta.d.ts +4 -0
  48. package/dist/digits/matrix-digit/SgMatrixDigit.meta.d.ts.map +1 -0
  49. package/dist/digits/matrix-digit/SgMatrixDigit.meta.js +48 -0
  50. package/dist/digits/neon-digit/SgNeonDigit.meta.d.ts +4 -0
  51. package/dist/digits/neon-digit/SgNeonDigit.meta.d.ts.map +1 -0
  52. package/dist/digits/neon-digit/SgNeonDigit.meta.js +48 -0
  53. package/dist/digits/roller3d-digit/SgRoller3DDigit.meta.d.ts +4 -0
  54. package/dist/digits/roller3d-digit/SgRoller3DDigit.meta.d.ts.map +1 -0
  55. package/dist/digits/roller3d-digit/SgRoller3DDigit.meta.js +48 -0
  56. package/dist/digits/segment-digit/SgSegmentDigit.meta.d.ts +4 -0
  57. package/dist/digits/segment-digit/SgSegmentDigit.meta.d.ts.map +1 -0
  58. package/dist/digits/segment-digit/SgSegmentDigit.meta.js +48 -0
  59. package/dist/digits/seven-segment-digit/SgSevenSegmentDigit.meta.d.ts +4 -0
  60. package/dist/digits/seven-segment-digit/SgSevenSegmentDigit.meta.d.ts.map +1 -0
  61. package/dist/digits/seven-segment-digit/SgSevenSegmentDigit.meta.js +48 -0
  62. package/dist/environment/SgEnvironmentProvider.meta.d.ts +4 -0
  63. package/dist/environment/SgEnvironmentProvider.meta.d.ts.map +1 -0
  64. package/dist/environment/SgEnvironmentProvider.meta.js +53 -0
  65. package/dist/gadgets/calendar/SgCalendar.meta.d.ts +4 -0
  66. package/dist/gadgets/calendar/SgCalendar.meta.d.ts.map +1 -0
  67. package/dist/gadgets/calendar/SgCalendar.meta.js +51 -0
  68. package/dist/gadgets/clock/SgClock.meta.d.ts +4 -0
  69. package/dist/gadgets/clock/SgClock.meta.d.ts.map +1 -0
  70. package/dist/gadgets/clock/SgClock.meta.js +50 -0
  71. package/dist/gadgets/clock/SgTimeProvider.meta.d.ts +4 -0
  72. package/dist/gadgets/clock/SgTimeProvider.meta.d.ts.map +1 -0
  73. package/dist/gadgets/clock/SgTimeProvider.meta.js +49 -0
  74. package/dist/gadgets/clock/themes/SgClockThemePicker.meta.d.ts +4 -0
  75. package/dist/gadgets/clock/themes/SgClockThemePicker.meta.d.ts.map +1 -0
  76. package/dist/gadgets/clock/themes/SgClockThemePicker.meta.js +56 -0
  77. package/dist/gadgets/clock/themes/SgClockThemePreview.meta.d.ts +4 -0
  78. package/dist/gadgets/clock/themes/SgClockThemePreview.meta.d.ts.map +1 -0
  79. package/dist/gadgets/clock/themes/SgClockThemePreview.meta.js +50 -0
  80. package/dist/gadgets/clock/themes/SgClockThemeProvider.meta.d.ts +4 -0
  81. package/dist/gadgets/clock/themes/SgClockThemeProvider.meta.d.ts.map +1 -0
  82. package/dist/gadgets/clock/themes/SgClockThemeProvider.meta.js +51 -0
  83. package/dist/gadgets/gauge/SgLinearGauge.meta.d.ts +4 -0
  84. package/dist/gadgets/gauge/SgLinearGauge.meta.d.ts.map +1 -0
  85. package/dist/gadgets/gauge/SgLinearGauge.meta.js +57 -0
  86. package/dist/gadgets/gauge/SgRadialGauge.meta.d.ts +4 -0
  87. package/dist/gadgets/gauge/SgRadialGauge.meta.d.ts.map +1 -0
  88. package/dist/gadgets/gauge/SgRadialGauge.meta.js +57 -0
  89. package/dist/gadgets/qr-code/SgQRCode.meta.d.ts +4 -0
  90. package/dist/gadgets/qr-code/SgQRCode.meta.d.ts.map +1 -0
  91. package/dist/gadgets/qr-code/SgQRCode.meta.js +48 -0
  92. package/dist/gadgets/string-animator/SgStringAnimator.meta.d.ts +4 -0
  93. package/dist/gadgets/string-animator/SgStringAnimator.meta.d.ts.map +1 -0
  94. package/dist/gadgets/string-animator/SgStringAnimator.meta.js +48 -0
  95. package/dist/i18n/SgComponentsI18nProvider.meta.d.ts +4 -0
  96. package/dist/i18n/SgComponentsI18nProvider.meta.d.ts.map +1 -0
  97. package/dist/i18n/SgComponentsI18nProvider.meta.js +50 -0
  98. package/dist/index.d.ts +4 -6
  99. package/dist/index.d.ts.map +1 -1
  100. package/dist/index.js +2 -3
  101. package/dist/inputs/SgAutocomplete.meta.d.ts +4 -0
  102. package/dist/inputs/SgAutocomplete.meta.d.ts.map +1 -0
  103. package/dist/inputs/SgAutocomplete.meta.js +52 -0
  104. package/dist/inputs/SgCheckboxGroup.meta.d.ts +4 -0
  105. package/dist/inputs/SgCheckboxGroup.meta.d.ts.map +1 -0
  106. package/dist/inputs/SgCheckboxGroup.meta.js +51 -0
  107. package/dist/inputs/SgCombobox.meta.d.ts +4 -0
  108. package/dist/inputs/SgCombobox.meta.d.ts.map +1 -0
  109. package/dist/inputs/SgCombobox.meta.js +52 -0
  110. package/dist/inputs/SgDatatable.meta.d.ts +4 -0
  111. package/dist/inputs/SgDatatable.meta.d.ts.map +1 -0
  112. package/dist/inputs/SgDatatable.meta.js +51 -0
  113. package/dist/inputs/SgInputBirthDate.meta.d.ts +4 -0
  114. package/dist/inputs/SgInputBirthDate.meta.d.ts.map +1 -0
  115. package/dist/inputs/SgInputBirthDate.meta.js +80 -0
  116. package/dist/inputs/SgInputCNPJ.meta.d.ts +4 -0
  117. package/dist/inputs/SgInputCNPJ.meta.d.ts.map +1 -0
  118. package/dist/inputs/SgInputCNPJ.meta.js +81 -0
  119. package/dist/inputs/SgInputCPF.meta.d.ts +4 -0
  120. package/dist/inputs/SgInputCPF.meta.d.ts.map +1 -0
  121. package/dist/inputs/SgInputCPF.meta.js +80 -0
  122. package/dist/inputs/SgInputCPFCNPJ.meta.d.ts +4 -0
  123. package/dist/inputs/SgInputCPFCNPJ.meta.d.ts.map +1 -0
  124. package/dist/inputs/SgInputCPFCNPJ.meta.js +80 -0
  125. package/dist/inputs/SgInputCurrency.meta.d.ts +4 -0
  126. package/dist/inputs/SgInputCurrency.meta.d.ts.map +1 -0
  127. package/dist/inputs/SgInputCurrency.meta.js +136 -0
  128. package/dist/inputs/SgInputDate.meta.d.ts +4 -0
  129. package/dist/inputs/SgInputDate.meta.d.ts.map +1 -0
  130. package/dist/inputs/SgInputDate.meta.js +136 -0
  131. package/dist/inputs/SgInputEmail.meta.d.ts +4 -0
  132. package/dist/inputs/SgInputEmail.meta.d.ts.map +1 -0
  133. package/dist/inputs/SgInputEmail.meta.js +81 -0
  134. package/dist/inputs/SgInputNumber.meta.d.ts +4 -0
  135. package/dist/inputs/SgInputNumber.meta.d.ts.map +1 -0
  136. package/dist/inputs/SgInputNumber.meta.js +137 -0
  137. package/dist/inputs/SgInputOTP.js +1 -1
  138. package/dist/inputs/SgInputOTP.meta.d.ts +4 -0
  139. package/dist/inputs/SgInputOTP.meta.d.ts.map +1 -0
  140. package/dist/inputs/SgInputOTP.meta.js +80 -0
  141. package/dist/inputs/SgInputPassword.meta.d.ts +4 -0
  142. package/dist/inputs/SgInputPassword.meta.d.ts.map +1 -0
  143. package/dist/inputs/SgInputPassword.meta.js +81 -0
  144. package/dist/inputs/SgInputPhone.meta.d.ts +4 -0
  145. package/dist/inputs/SgInputPhone.meta.d.ts.map +1 -0
  146. package/dist/inputs/SgInputPhone.meta.js +80 -0
  147. package/dist/inputs/SgInputPostalCode.meta.d.ts +4 -0
  148. package/dist/inputs/SgInputPostalCode.meta.d.ts.map +1 -0
  149. package/dist/inputs/SgInputPostalCode.meta.js +81 -0
  150. package/dist/inputs/SgInputText.meta.d.ts +4 -0
  151. package/dist/inputs/SgInputText.meta.d.ts.map +1 -0
  152. package/dist/inputs/SgInputText.meta.js +138 -0
  153. package/dist/inputs/SgInputTextarea.meta.d.ts +4 -0
  154. package/dist/inputs/SgInputTextarea.meta.d.ts.map +1 -0
  155. package/dist/inputs/SgInputTextarea.meta.js +136 -0
  156. package/dist/inputs/SgOrderList.meta.d.ts +4 -0
  157. package/dist/inputs/SgOrderList.meta.d.ts.map +1 -0
  158. package/dist/inputs/SgOrderList.meta.js +51 -0
  159. package/dist/inputs/SgPickList.meta.d.ts +4 -0
  160. package/dist/inputs/SgPickList.meta.d.ts.map +1 -0
  161. package/dist/inputs/SgPickList.meta.js +51 -0
  162. package/dist/inputs/SgRadioGroup.meta.d.ts +4 -0
  163. package/dist/inputs/SgRadioGroup.meta.d.ts.map +1 -0
  164. package/dist/inputs/SgRadioGroup.meta.js +51 -0
  165. package/dist/inputs/SgRating.meta.d.ts +4 -0
  166. package/dist/inputs/SgRating.meta.d.ts.map +1 -0
  167. package/dist/inputs/SgRating.meta.js +51 -0
  168. package/dist/inputs/SgSlider.meta.d.ts +4 -0
  169. package/dist/inputs/SgSlider.meta.d.ts.map +1 -0
  170. package/dist/inputs/SgSlider.meta.js +51 -0
  171. package/dist/inputs/SgStepperInput.meta.d.ts +4 -0
  172. package/dist/inputs/SgStepperInput.meta.d.ts.map +1 -0
  173. package/dist/inputs/SgStepperInput.meta.js +51 -0
  174. package/dist/inputs/SgTextEditor.meta.d.ts +4 -0
  175. package/dist/inputs/SgTextEditor.meta.d.ts.map +1 -0
  176. package/dist/inputs/SgTextEditor.meta.js +51 -0
  177. package/dist/inputs/SgToggleSwitch.meta.d.ts +4 -0
  178. package/dist/inputs/SgToggleSwitch.meta.d.ts.map +1 -0
  179. package/dist/inputs/SgToggleSwitch.meta.js +51 -0
  180. package/dist/layout/SgAccordion.meta.d.ts +4 -0
  181. package/dist/layout/SgAccordion.meta.d.ts.map +1 -0
  182. package/dist/layout/SgAccordion.meta.js +131 -0
  183. package/dist/layout/SgBreadcrumb.meta.d.ts +4 -0
  184. package/dist/layout/SgBreadcrumb.meta.d.ts.map +1 -0
  185. package/dist/layout/SgBreadcrumb.meta.js +125 -0
  186. package/dist/layout/SgCard.meta.d.ts +4 -0
  187. package/dist/layout/SgCard.meta.d.ts.map +1 -0
  188. package/dist/layout/SgCard.meta.js +132 -0
  189. package/dist/layout/SgCarousel.meta.d.ts +4 -0
  190. package/dist/layout/SgCarousel.meta.d.ts.map +1 -0
  191. package/dist/layout/SgCarousel.meta.js +50 -0
  192. package/dist/layout/SgDockLayout.meta.d.ts +4 -0
  193. package/dist/layout/SgDockLayout.meta.d.ts.map +1 -0
  194. package/dist/layout/SgDockLayout.meta.js +47 -0
  195. package/dist/layout/SgDockScreen.meta.d.ts +4 -0
  196. package/dist/layout/SgDockScreen.meta.d.ts.map +1 -0
  197. package/dist/layout/SgDockScreen.meta.js +49 -0
  198. package/dist/layout/SgDockZone.meta.d.ts +4 -0
  199. package/dist/layout/SgDockZone.meta.d.ts.map +1 -0
  200. package/dist/layout/SgDockZone.meta.js +43 -0
  201. package/dist/layout/SgExpandablePanel.meta.d.ts +4 -0
  202. package/dist/layout/SgExpandablePanel.meta.d.ts.map +1 -0
  203. package/dist/layout/SgExpandablePanel.meta.js +50 -0
  204. package/dist/layout/SgGrid.meta.d.ts +4 -0
  205. package/dist/layout/SgGrid.meta.d.ts.map +1 -0
  206. package/dist/layout/SgGrid.meta.js +124 -0
  207. package/dist/layout/SgGroupBox.meta.d.ts +4 -0
  208. package/dist/layout/SgGroupBox.meta.d.ts.map +1 -0
  209. package/dist/layout/SgGroupBox.meta.js +99 -0
  210. package/dist/layout/SgMenu.meta.d.ts +4 -0
  211. package/dist/layout/SgMenu.meta.d.ts.map +1 -0
  212. package/dist/layout/SgMenu.meta.js +137 -0
  213. package/dist/layout/SgPageControl.meta.d.ts +4 -0
  214. package/dist/layout/SgPageControl.meta.d.ts.map +1 -0
  215. package/dist/layout/SgPageControl.meta.js +50 -0
  216. package/dist/layout/SgPageControlPage.meta.d.ts +4 -0
  217. package/dist/layout/SgPageControlPage.meta.d.ts.map +1 -0
  218. package/dist/layout/SgPageControlPage.meta.js +47 -0
  219. package/dist/layout/SgPanel.meta.d.ts +4 -0
  220. package/dist/layout/SgPanel.meta.d.ts.map +1 -0
  221. package/dist/layout/SgPanel.meta.js +140 -0
  222. package/dist/layout/SgScreen.meta.d.ts +4 -0
  223. package/dist/layout/SgScreen.meta.d.ts.map +1 -0
  224. package/dist/layout/SgScreen.meta.js +113 -0
  225. package/dist/layout/SgStack.meta.d.ts +4 -0
  226. package/dist/layout/SgStack.meta.d.ts.map +1 -0
  227. package/dist/layout/SgStack.meta.js +126 -0
  228. package/dist/layout/SgToolBar.meta.d.ts +4 -0
  229. package/dist/layout/SgToolBar.meta.d.ts.map +1 -0
  230. package/dist/layout/SgToolBar.meta.js +131 -0
  231. package/dist/layout/SgToolbarIconButton.meta.d.ts +4 -0
  232. package/dist/layout/SgToolbarIconButton.meta.d.ts.map +1 -0
  233. package/dist/layout/SgToolbarIconButton.meta.js +48 -0
  234. package/dist/layout/SgTreeView.meta.d.ts +4 -0
  235. package/dist/layout/SgTreeView.meta.d.ts.map +1 -0
  236. package/dist/layout/SgTreeView.meta.js +132 -0
  237. package/dist/layout/menu-logic.d.ts.map +1 -1
  238. package/dist/layout/menu-logic.js +1 -3
  239. package/dist/menus/SgDockMenu.meta.d.ts +4 -0
  240. package/dist/menus/SgDockMenu.meta.d.ts.map +1 -0
  241. package/dist/menus/SgDockMenu.meta.js +135 -0
  242. package/dist/overlay/SgConfirmationDialog.meta.d.ts +4 -0
  243. package/dist/overlay/SgConfirmationDialog.meta.d.ts.map +1 -0
  244. package/dist/overlay/SgConfirmationDialog.meta.js +128 -0
  245. package/dist/overlay/SgDialog.meta.d.ts +4 -0
  246. package/dist/overlay/SgDialog.meta.d.ts.map +1 -0
  247. package/dist/overlay/SgDialog.meta.js +130 -0
  248. package/dist/overlay/SgPopup.meta.d.ts +4 -0
  249. package/dist/overlay/SgPopup.meta.d.ts.map +1 -0
  250. package/dist/overlay/SgPopup.meta.js +129 -0
  251. package/dist/sandbox.cjs +31 -31
  252. package/dist/wizard/SgWizard.meta.d.ts +4 -0
  253. package/dist/wizard/SgWizard.meta.d.ts.map +1 -0
  254. package/dist/wizard/SgWizard.meta.js +50 -0
  255. package/dist/wizard/SgWizardPage.meta.d.ts +4 -0
  256. package/dist/wizard/SgWizardPage.meta.d.ts.map +1 -0
  257. package/dist/wizard/SgWizardPage.meta.js +44 -0
  258. package/package.json +2 -2
  259. package/dist/inputs/SgInputSelect.d.ts +0 -18
  260. package/dist/inputs/SgInputSelect.d.ts.map +0 -1
  261. package/dist/inputs/SgInputSelect.js +0 -139
@@ -0,0 +1,46 @@
1
+ export const sgMeta = {
2
+ version: "0.1",
3
+ componentId: "feedback.avatar-group",
4
+ package: "@seedgrid/fe-components",
5
+ exportName: "SgAvatarGroup",
6
+ slug: "sg-avatar-group",
7
+ displayName: "SgAvatarGroup",
8
+ category: "feedback",
9
+ subcategory: "avatar-group",
10
+ description: "Agrupamento visual de avatares com sobreposicao, limite de itens e contador de participantes restantes.",
11
+ tags: ["feedback", "avatar", "group", "participants", "team"],
12
+ capabilities: ["avatar-stack", "overlap", "max-limit", "overflow-counter", "team-display"],
13
+ fieldSemantics: ["participants", "team", "members", "avatarStack", "collaborators"],
14
+ props: [
15
+ { name: "children", type: "ReactNode", required: true, description: "Lista de avatares exibidos no agrupamento.", semanticRole: "data", bindable: false },
16
+ { name: "max", type: "number", description: "Quantidade maxima de avatares visiveis antes do contador de overflow.", semanticRole: "behavior", bindable: true },
17
+ { name: "total", type: "number", description: "Quantidade total de participantes para calculo do overflow.", semanticRole: "value", bindable: true },
18
+ { name: "overlap", type: '"none" | "sm" | "md" | "lg"', default: "md", description: "Nivel de sobreposicao entre os avatares.", semanticRole: "appearance", bindable: true },
19
+ { name: "size", type: '"xs" | "sm" | "md" | "lg" | "xl"', default: "md", description: "Escala aplicada aos avatares do grupo.", semanticRole: "appearance", bindable: true },
20
+ { name: "shape", type: '"circle" | "square"', default: "circle", description: "Forma visual aplicada ao grupo de avatares.", semanticRole: "appearance", bindable: true }
21
+ ],
22
+ states: ["default", "overflow", "stacked"],
23
+ examples: [{ id: "avatar-group", title: "Avatar group", file: "apps/showcase/src/app/components/sg-avatar/samples/avatar-group.tsx.sample", kind: "sample" }],
24
+ showcase: { route: "/components/sg-avatar", hasPlayground: true, hasPropsTable: true },
25
+ sdui: { rendererType: "feedback.avatar-group", acceptsDataBinding: true, defaultProps: { overlap: "md", size: "md", shape: "circle" } }
26
+ };
27
+ export const aiHints = {
28
+ version: "0.1",
29
+ preferredUseCases: [
30
+ "Exibir participantes, membros de equipe e colaboradores em cabecalhos e cards.",
31
+ "Representar grupos com limite visual e contador de itens adicionais.",
32
+ "Mostrar ownership, revisores ou pessoas associadas a uma entidade."
33
+ ],
34
+ avoidUseCases: [
35
+ "Uma unica identidade; nesses casos prefira SgAvatar.",
36
+ "Listas detalhadas de usuarios com texto e metadata; nesses casos prefira lista ou tabela.",
37
+ "Status textuais e contadores puros; nesses casos prefira SgBadge."
38
+ ],
39
+ synonyms: ["avatar group", "team avatars", "participant stack", "member avatars"],
40
+ relatedEntityFields: ["members", "participants", "reviewers", "owners", "team"],
41
+ compositionHints: [
42
+ "Usar com SgAvatar em listas, cards e cabecalhos de colaboracao.",
43
+ "Combinar com Badge ou Card quando houver destaque de contagem ou ownership."
44
+ ],
45
+ rankingSignals: { freeText: 0, structuredChoice: 0, date: 0, number: 0.2, denseLayout: 0.82 }
46
+ };
@@ -0,0 +1,4 @@
1
+ import type { SgAiHintsV0, SgMetaV0 } from "../ai-meta/types";
2
+ export declare const sgMeta: SgMetaV0;
3
+ export declare const aiHints: SgAiHintsV0;
4
+ //# sourceMappingURL=SgBadge.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgBadge.meta.d.ts","sourceRoot":"","sources":["../../src/commons/SgBadge.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9D,eAAO,MAAM,MAAM,EAAE,QA0GpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WAyBrB,CAAC"}
@@ -0,0 +1,132 @@
1
+ export const sgMeta = {
2
+ version: "0.1",
3
+ componentId: "feedback.badge",
4
+ package: "@seedgrid/fe-components",
5
+ exportName: "SgBadge",
6
+ slug: "sg-badge",
7
+ displayName: "SgBadge",
8
+ category: "feedback",
9
+ subcategory: "badge",
10
+ description: "Indicador compacto para status, contagens, rotulos curtos e destaque visual de pequenos estados.",
11
+ tags: ["feedback", "badge", "status", "counter", "label"],
12
+ capabilities: ["status-indicator", "counter", "severity", "variant", "removable", "dot"],
13
+ fieldSemantics: ["status", "counter", "tag", "indicator", "label"],
14
+ props: [
15
+ {
16
+ name: "value",
17
+ type: "ReactNode",
18
+ description: "Conteudo principal exibido dentro do badge.",
19
+ semanticRole: "label",
20
+ bindable: true
21
+ },
22
+ {
23
+ name: "severity",
24
+ type: '"primary" | "secondary" | "success" | "warning" | "danger" | "info" | "neutral" | "custom"',
25
+ default: "primary",
26
+ description: "Tom semantico do indicador.",
27
+ semanticRole: "appearance",
28
+ bindable: true
29
+ },
30
+ {
31
+ name: "badgeStyle",
32
+ type: '"solid" | "soft" | "outline" | "ghost"',
33
+ default: "solid",
34
+ description: "Variante visual do badge.",
35
+ semanticRole: "appearance",
36
+ bindable: true
37
+ },
38
+ {
39
+ name: "size",
40
+ type: '"xs" | "sm" | "md" | "lg"',
41
+ default: "md",
42
+ description: "Escala visual do badge.",
43
+ semanticRole: "appearance",
44
+ bindable: true
45
+ },
46
+ {
47
+ name: "dot",
48
+ type: "boolean",
49
+ default: false,
50
+ description: "Exibe um pequeno marcador visual adicional.",
51
+ semanticRole: "appearance",
52
+ bindable: true
53
+ },
54
+ {
55
+ name: "removable",
56
+ type: "boolean",
57
+ default: false,
58
+ description: "Permite remover o badge com um botao interno.",
59
+ semanticRole: "behavior",
60
+ bindable: true
61
+ },
62
+ {
63
+ name: "onRemove",
64
+ type: "() => void",
65
+ description: "Callback disparado ao remover o badge.",
66
+ semanticRole: "event",
67
+ bindable: false
68
+ },
69
+ {
70
+ name: "onClick",
71
+ type: "(e: React.MouseEvent) => void",
72
+ description: "Callback disparado quando o badge e clicado.",
73
+ semanticRole: "event",
74
+ bindable: false
75
+ }
76
+ ],
77
+ states: ["default", "disabled", "removable", "clickable"],
78
+ examples: [
79
+ {
80
+ id: "basic",
81
+ title: "Basico",
82
+ file: "apps/showcase/src/app/components/sg-badge/samples/basico.tsx.sample",
83
+ kind: "sample"
84
+ },
85
+ {
86
+ id: "playground",
87
+ title: "Playground",
88
+ file: "apps/showcase/src/app/components/sg-badge/sg-badge.tsx.playground",
89
+ kind: "playground"
90
+ }
91
+ ],
92
+ showcase: {
93
+ route: "/components/sg-badge",
94
+ hasPlayground: true,
95
+ hasPropsTable: true
96
+ },
97
+ sdui: {
98
+ rendererType: "feedback.badge",
99
+ acceptsDataBinding: true,
100
+ defaultProps: {
101
+ severity: "primary",
102
+ badgeStyle: "solid",
103
+ size: "md"
104
+ }
105
+ }
106
+ };
107
+ export const aiHints = {
108
+ version: "0.1",
109
+ preferredUseCases: [
110
+ "Exibir status curtos, contadores, tags e indicadores compactos.",
111
+ "Sinalizar estados como novo, ativo, pendente, erro ou quantidade.",
112
+ "Anotar cards, listas e cabecalhos com informacao de baixo peso."
113
+ ],
114
+ avoidUseCases: [
115
+ "Mensagens longas ou feedback detalhado; nesses casos prefira alertas ou dialogs.",
116
+ "Acoes principais; nesses casos prefira componentes de botao.",
117
+ "Agrupamento de conteudo; nesses casos prefira componentes de layout."
118
+ ],
119
+ synonyms: ["badge", "tag", "status chip", "counter badge"],
120
+ relatedEntityFields: ["status", "count", "label", "tag", "notificationCount"],
121
+ compositionHints: [
122
+ "Usar com SgCard, SgAvatar e listas para indicar estado ou contagem.",
123
+ "Combinar com SgButton ou menus quando houver contadores contextuais."
124
+ ],
125
+ rankingSignals: {
126
+ freeText: 0,
127
+ structuredChoice: 0,
128
+ date: 0,
129
+ number: 0.3,
130
+ denseLayout: 0.85
131
+ }
132
+ };
@@ -0,0 +1,4 @@
1
+ import type { SgAiHintsV0, SgMetaV0 } from "../ai-meta/types";
2
+ export declare const sgMeta: SgMetaV0;
3
+ export declare const aiHints: SgAiHintsV0;
4
+ //# sourceMappingURL=SgBadgeOverlay.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgBadgeOverlay.meta.d.ts","sourceRoot":"","sources":["../../src/commons/SgBadgeOverlay.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9D,eAAO,MAAM,MAAM,EAAE,QA0BpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WAmBrB,CAAC"}
@@ -0,0 +1,46 @@
1
+ export const sgMeta = {
2
+ version: "0.1",
3
+ componentId: "feedback.badge-overlay",
4
+ package: "@seedgrid/fe-components",
5
+ exportName: "SgBadgeOverlay",
6
+ slug: "sg-badge-overlay",
7
+ displayName: "SgBadgeOverlay",
8
+ category: "feedback",
9
+ subcategory: "badge-overlay",
10
+ description: "Wrapper para sobrepor badges e indicadores compactos sobre avatares, icones e outros elementos visuais.",
11
+ tags: ["feedback", "badge", "overlay", "indicator"],
12
+ capabilities: ["overlay-indicator", "badge-positioning", "status-overlay"],
13
+ fieldSemantics: ["statusOverlay", "counterOverlay", "indicatorOverlay"],
14
+ props: [
15
+ { name: "children", type: "ReactNode", required: true, description: "Elemento base que recebera o badge sobreposto.", semanticRole: "data", bindable: false },
16
+ { name: "badge", type: "ReactNode", required: true, description: "Conteudo do indicador exibido sobre o elemento base.", semanticRole: "label", bindable: true },
17
+ { name: "placement", type: '"top-left" | "top-right" | "bottom-left" | "bottom-right" | "right" | "left" | "top" | "bottom"', default: "top-right", description: "Posicao do badge sobreposto.", semanticRole: "appearance", bindable: true }
18
+ ],
19
+ states: ["default"],
20
+ examples: [
21
+ { id: "basic", title: "Basico", file: "apps/showcase/src/app/components/sg-badge-overlay/samples/basico.tsx.sample", kind: "sample" },
22
+ { id: "playground", title: "Playground", file: "apps/showcase/src/app/components/sg-badge-overlay/sg-badge-overlay.tsx.playground", kind: "playground" }
23
+ ],
24
+ showcase: { route: "/components/sg-badge-overlay", hasPlayground: true, hasPropsTable: true },
25
+ sdui: { rendererType: "feedback.badge-overlay", acceptsDataBinding: true, defaultProps: { placement: "top-right" } }
26
+ };
27
+ export const aiHints = {
28
+ version: "0.1",
29
+ preferredUseCases: [
30
+ "Adicionar contadores ou estados sobre avatares, icones e botoes.",
31
+ "Indicar notificacoes, status online e pequenos marcadores contextuais.",
32
+ "Sobrepor badges sem alterar a estrutura do elemento base."
33
+ ],
34
+ avoidUseCases: [
35
+ "Badges independentes sem elemento base; nesses casos prefira SgBadge.",
36
+ "Conteudo longo ou estruturas de layout.",
37
+ "Fluxos de interacao complexos."
38
+ ],
39
+ synonyms: ["badge overlay", "notification overlay", "indicator overlay"],
40
+ relatedEntityFields: ["notificationCount", "statusOverlay", "avatarStatus"],
41
+ compositionHints: [
42
+ "Usar com SgAvatar, SgButton e icones de menu.",
43
+ "Combinar com SgBadge para reaproveitar o visual do indicador."
44
+ ],
45
+ rankingSignals: { freeText: 0, structuredChoice: 0, date: 0, number: 0.2, denseLayout: 0.75 }
46
+ };
@@ -0,0 +1,4 @@
1
+ import type { SgAiHintsV0, SgMetaV0 } from "../ai-meta/types";
2
+ export declare const sgMeta: SgMetaV0;
3
+ export declare const aiHints: SgAiHintsV0;
4
+ //# sourceMappingURL=SgSkeleton.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgSkeleton.meta.d.ts","sourceRoot":"","sources":["../../src/commons/SgSkeleton.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9D,eAAO,MAAM,MAAM,EAAE,QAwFpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WAyBrB,CAAC"}
@@ -0,0 +1,114 @@
1
+ export const sgMeta = {
2
+ version: "0.1",
3
+ componentId: "feedback.skeleton",
4
+ package: "@seedgrid/fe-components",
5
+ exportName: "SgSkeleton",
6
+ slug: "sg-skeleton",
7
+ displayName: "SgSkeleton",
8
+ category: "feedback",
9
+ subcategory: "skeleton",
10
+ description: "Placeholder visual para estados de carregamento, simulando texto, blocos e avatares antes da chegada dos dados reais.",
11
+ tags: ["feedback", "loading", "placeholder", "skeleton"],
12
+ capabilities: ["loading-state", "shape-variants", "animation", "size-control"],
13
+ fieldSemantics: ["loadingPlaceholder", "skeleton", "pendingContent", "progressiveLoading"],
14
+ props: [
15
+ {
16
+ name: "shape",
17
+ type: '"text" | "rectangle" | "rounded" | "square" | "circle"',
18
+ default: "text",
19
+ description: "Forma visual base do placeholder.",
20
+ semanticRole: "appearance",
21
+ bindable: true
22
+ },
23
+ {
24
+ name: "animation",
25
+ type: '"wave" | "pulse" | "none"',
26
+ default: "wave",
27
+ description: "Animacao aplicada ao placeholder.",
28
+ semanticRole: "appearance",
29
+ bindable: true
30
+ },
31
+ {
32
+ name: "width",
33
+ type: "number | string",
34
+ description: "Largura do placeholder.",
35
+ semanticRole: "appearance",
36
+ bindable: true
37
+ },
38
+ {
39
+ name: "height",
40
+ type: "number | string",
41
+ description: "Altura do placeholder.",
42
+ semanticRole: "appearance",
43
+ bindable: true
44
+ },
45
+ {
46
+ name: "size",
47
+ type: "number | string",
48
+ description: "Tamanho unico para placeholders quadrados ou circulares.",
49
+ semanticRole: "appearance",
50
+ bindable: true
51
+ },
52
+ {
53
+ name: "borderRadius",
54
+ type: "number | string",
55
+ description: "Raio de borda customizado.",
56
+ semanticRole: "appearance",
57
+ bindable: true
58
+ }
59
+ ],
60
+ states: ["loading", "static"],
61
+ examples: [
62
+ {
63
+ id: "basic",
64
+ title: "Basico",
65
+ file: "apps/showcase/src/app/components/sg-skeleton/samples/basico.tsx.sample",
66
+ kind: "sample"
67
+ },
68
+ {
69
+ id: "playground",
70
+ title: "Playground",
71
+ file: "apps/showcase/src/app/components/sg-skeleton/sg-skeleton.tsx.playground",
72
+ kind: "playground"
73
+ }
74
+ ],
75
+ showcase: {
76
+ route: "/components/sg-skeleton",
77
+ hasPlayground: true,
78
+ hasPropsTable: true
79
+ },
80
+ sdui: {
81
+ rendererType: "feedback.skeleton",
82
+ acceptsDataBinding: false,
83
+ defaultProps: {
84
+ shape: "text",
85
+ animation: "wave"
86
+ }
87
+ }
88
+ };
89
+ export const aiHints = {
90
+ version: "0.1",
91
+ preferredUseCases: [
92
+ "Representar carregamento de conteudo antes dos dados reais estarem disponiveis.",
93
+ "Simular listas, cards, tabelas e detalhes de perfil em estado pending.",
94
+ "Evitar layout shift durante carregamentos assíncronos."
95
+ ],
96
+ avoidUseCases: [
97
+ "Exibir feedback final de erro ou sucesso; nesses casos prefira componentes de alerta ou toast.",
98
+ "Conteudo real persistente; o skeleton e apenas placeholder.",
99
+ "Acoes e interacoes diretas do usuario."
100
+ ],
101
+ synonyms: ["skeleton", "loading placeholder", "content shimmer", "loading block"],
102
+ relatedEntityFields: ["loadingState", "pendingList", "pendingCard", "asyncPlaceholder"],
103
+ compositionHints: [
104
+ "Usar junto de SgCard, SgAvatar e SgDatatable para estados de carregamento.",
105
+ "Combinar varios skeletons em SgStack e SgGrid para simular layouts completos."
106
+ ],
107
+ rankingSignals: {
108
+ freeText: 0,
109
+ structuredChoice: 0,
110
+ date: 0,
111
+ number: 0,
112
+ denseLayout: 0.8
113
+ }
114
+ };
@@ -0,0 +1,4 @@
1
+ import type { SgAiHintsV0, SgMetaV0 } from "../ai-meta/types";
2
+ export declare const sgMeta: SgMetaV0;
3
+ export declare const aiHints: SgAiHintsV0;
4
+ //# sourceMappingURL=SgToastHost.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgToastHost.meta.d.ts","sourceRoot":"","sources":["../../src/commons/SgToastHost.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9D,eAAO,MAAM,MAAM,EAAE,QA0BpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WAmBrB,CAAC"}
@@ -0,0 +1,46 @@
1
+ export const sgMeta = {
2
+ version: "0.1",
3
+ componentId: "feedback.toast-host",
4
+ package: "@seedgrid/fe-components",
5
+ exportName: "SgToastHost",
6
+ slug: "sg-toast-host",
7
+ displayName: "SgToastHost",
8
+ category: "feedback",
9
+ subcategory: "toast-host",
10
+ description: "Ponto explicito de montagem para notificacoes toast, usado quando a aplicacao precisa controlar a localizacao ativa do host.",
11
+ tags: ["feedback", "toast", "host", "notification"],
12
+ capabilities: ["host-priority", "toast-mount-point", "custom-positioning"],
13
+ fieldSemantics: ["toastHost", "notificationMountPoint", "feedbackHost"],
14
+ props: [
15
+ { name: "position", type: '"top-right" | "top-left" | "top-center" | "bottom-right" | "bottom-left" | "bottom-center"', default: "top-right", description: "Posicao dos toasts renderizados por este host.", semanticRole: "appearance", bindable: true },
16
+ { name: "duration", type: "number", default: 4000, description: "Duracao padrao aplicada aos toasts deste host.", semanticRole: "behavior", bindable: true },
17
+ { name: "visibleToasts", type: "number", default: 6, description: "Quantidade maxima de toasts visiveis.", semanticRole: "behavior", bindable: true }
18
+ ],
19
+ states: ["inactive", "active-host"],
20
+ examples: [
21
+ { id: "basic", title: "Basico", file: "apps/showcase/src/app/components/sg-toast-host/samples/basico.tsx.sample", kind: "sample" },
22
+ { id: "playground", title: "Playground", file: "apps/showcase/src/app/components/sg-toast-host/sg-toast-host.tsx.playground", kind: "playground" }
23
+ ],
24
+ showcase: { route: "/components/sg-toast-host", hasPlayground: true, hasPropsTable: true },
25
+ sdui: { rendererType: "feedback.toast-host", acceptsDataBinding: false, defaultProps: { position: "top-right" } }
26
+ };
27
+ export const aiHints = {
28
+ version: "0.1",
29
+ preferredUseCases: [
30
+ "Definir explicitamente onde os toasts devem aparecer na arvore da aplicacao.",
31
+ "Priorizar um host local sobre um toaster global.",
32
+ "Layouts que precisam controlar o mount point de notificacoes."
33
+ ],
34
+ avoidUseCases: [
35
+ "Publicar notificacoes diretamente; para isso use a API `toast`.",
36
+ "Feedback inline ou modal.",
37
+ "Cenarios simples onde um unico SgToaster global basta."
38
+ ],
39
+ synonyms: ["toast host", "toast mount point", "notification host"],
40
+ relatedEntityFields: ["toastHost", "notificationHost", "layoutToasts"],
41
+ compositionHints: [
42
+ "Usar com `toast` e `SgToaster` em layouts com multiplos niveis.",
43
+ "Instalar um host por area quando a aplicacao precisar priorizar contexto local."
44
+ ],
45
+ rankingSignals: { freeText: 0, structuredChoice: 0, date: 0, number: 0, denseLayout: 0.5 }
46
+ };
@@ -0,0 +1,4 @@
1
+ import type { SgAiHintsV0, SgMetaV0 } from "../ai-meta/types";
2
+ export declare const sgMeta: SgMetaV0;
3
+ export declare const aiHints: SgAiHintsV0;
4
+ //# sourceMappingURL=SgToaster.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgToaster.meta.d.ts","sourceRoot":"","sources":["../../src/commons/SgToaster.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9D,eAAO,MAAM,MAAM,EAAE,QA4BpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WAmBrB,CAAC"}
@@ -0,0 +1,48 @@
1
+ export const sgMeta = {
2
+ version: "0.1",
3
+ componentId: "feedback.toaster",
4
+ package: "@seedgrid/fe-components",
5
+ exportName: "SgToaster",
6
+ slug: "sg-toaster",
7
+ displayName: "SgToaster",
8
+ category: "feedback",
9
+ subcategory: "toaster",
10
+ description: "Host visual de notificacoes toast globais, com controle de posicao, duracao, quantidade visivel e estilos ricos.",
11
+ tags: ["feedback", "toast", "notification", "toaster"],
12
+ capabilities: ["toast-hosting", "global-feedback", "positioning", "duration-control", "rich-colors"],
13
+ fieldSemantics: ["toastContainer", "notificationFeedback", "globalFeedback"],
14
+ props: [
15
+ { name: "position", type: '"top-right" | "top-left" | "top-center" | "bottom-right" | "bottom-left" | "bottom-center"', default: "top-right", description: "Posicao global do stack de toasts.", semanticRole: "appearance", bindable: true },
16
+ { name: "duration", type: "number", default: 4000, description: "Duracao padrao dos toasts em milissegundos.", semanticRole: "behavior", bindable: true },
17
+ { name: "visibleToasts", type: "number", default: 6, description: "Quantidade maxima de toasts visiveis simultaneamente.", semanticRole: "behavior", bindable: true },
18
+ { name: "closeButton", type: "boolean", default: true, description: "Exibe botao de fechar em cada toast.", semanticRole: "appearance", bindable: true },
19
+ { name: "richColors", type: "boolean", default: true, description: "Ativa paleta visual rica por tipo de toast.", semanticRole: "appearance", bindable: true }
20
+ ],
21
+ states: ["idle", "showing-toasts"],
22
+ examples: [
23
+ { id: "basic", title: "Basico", file: "apps/showcase/src/app/components/sg-toaster/samples/basico.tsx.sample", kind: "sample" },
24
+ { id: "playground", title: "Playground", file: "apps/showcase/src/app/components/sg-toaster/sg-toaster.tsx.playground", kind: "playground" }
25
+ ],
26
+ showcase: { route: "/components/sg-toaster", hasPlayground: true, hasPropsTable: true },
27
+ sdui: { rendererType: "feedback.toaster", acceptsDataBinding: false, defaultProps: { position: "top-right", duration: 4000, visibleToasts: 6 } }
28
+ };
29
+ export const aiHints = {
30
+ version: "0.1",
31
+ preferredUseCases: [
32
+ "Exibir feedback global leve e nao bloqueante para sucesso, erro e informacao.",
33
+ "Notificar operacoes assincronas sem interromper o fluxo do usuario.",
34
+ "Centralizar a renderizacao de toasts em uma aplicacao."
35
+ ],
36
+ avoidUseCases: [
37
+ "Confirmacoes criticas; nesses casos prefira SgConfirmationDialog.",
38
+ "Conteudo modal ou detalhado; nesses casos prefira SgDialog.",
39
+ "Status persistentes dentro do layout; nesses casos prefira badge ou whistle."
40
+ ],
41
+ synonyms: ["toaster", "toast container", "toast notifications"],
42
+ relatedEntityFields: ["notifications", "toastFeedback", "globalMessages"],
43
+ compositionHints: [
44
+ "Usar com a API `toast` para publicar mensagens.",
45
+ "Combinar com SgToastHost quando for preciso controlar o ponto de renderizacao."
46
+ ],
47
+ rankingSignals: { freeText: 0, structuredChoice: 0, date: 0, number: 0, denseLayout: 0.6 }
48
+ };
@@ -0,0 +1,4 @@
1
+ import type { SgAiHintsV0, SgMetaV0 } from "../ai-meta/types";
2
+ export declare const sgMeta: SgMetaV0;
3
+ export declare const aiHints: SgAiHintsV0;
4
+ //# sourceMappingURL=SgWhistleHost.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgWhistleHost.meta.d.ts","sourceRoot":"","sources":["../../src/commons/SgWhistleHost.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9D,eAAO,MAAM,MAAM,EAAE,QA0BpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WAmBrB,CAAC"}
@@ -0,0 +1,46 @@
1
+ export const sgMeta = {
2
+ version: "0.1",
3
+ componentId: "feedback.whistle-host",
4
+ package: "@seedgrid/fe-components",
5
+ exportName: "SgWhistleHost",
6
+ slug: "sg-whistle-host",
7
+ displayName: "SgWhistleHost",
8
+ category: "feedback",
9
+ subcategory: "whistle-host",
10
+ description: "Host de avisos persistentes ou semi-persistentes em pilha, com cores por severidade, acao opcional e controle de maximo visivel.",
11
+ tags: ["feedback", "alerts", "host", "inline-notifications"],
12
+ capabilities: ["alert-stacking", "severity-colors", "dismissible-items", "timed-dismiss"],
13
+ fieldSemantics: ["alertHost", "persistentFeedback", "stackedAlerts"],
14
+ props: [
15
+ { name: "max", type: "number", default: 4, description: "Quantidade maxima de whistle items visiveis.", semanticRole: "behavior", bindable: true },
16
+ { name: "newestOnTop", type: "boolean", default: false, description: "Inverte a ordem visual para mostrar os mais novos primeiro.", semanticRole: "behavior", bindable: true },
17
+ { name: "gap", type: "number", default: 12, description: "Espacamento entre os avisos renderizados.", semanticRole: "appearance", bindable: true }
18
+ ],
19
+ states: ["idle", "showing-alerts"],
20
+ examples: [
21
+ { id: "basic", title: "Basico", file: "apps/showcase/src/app/components/sg-whistle-host/samples/basico.tsx.sample", kind: "sample" },
22
+ { id: "playground", title: "Playground", file: "apps/showcase/src/app/components/sg-whistle-host/sg-whistle-host.tsx.playground", kind: "playground" }
23
+ ],
24
+ showcase: { route: "/components/sg-whistle-host", hasPlayground: true, hasPropsTable: true },
25
+ sdui: { rendererType: "feedback.whistle-host", acceptsDataBinding: false, defaultProps: { max: 4, newestOnTop: false } }
26
+ };
27
+ export const aiHints = {
28
+ version: "0.1",
29
+ preferredUseCases: [
30
+ "Exibir avisos empilhados mais persistentes do que um toast.",
31
+ "Comunicar erros, warnings e mensagens operacionais inline em uma area fixa.",
32
+ "Agrupar alertas com acao e dismiss local."
33
+ ],
34
+ avoidUseCases: [
35
+ "Feedback ultraleve e efemero; nesses casos prefira toaster.",
36
+ "Modais de confirmacao.",
37
+ "Indicadores compactos como badge."
38
+ ],
39
+ synonyms: ["alert host", "message stack", "persistent notifications"],
40
+ relatedEntityFields: ["alerts", "warnings", "inlineMessages", "systemMessages"],
41
+ compositionHints: [
42
+ "Usar com a API `sgWhistle` para publicar avisos.",
43
+ "Combinar com SgCard ou SgPanel em dashboards operacionais."
44
+ ],
45
+ rankingSignals: { freeText: 0, structuredChoice: 0, date: 0, number: 0, denseLayout: 0.7 }
46
+ };
@@ -0,0 +1,4 @@
1
+ import type { SgAiHintsV0, SgMetaV0 } from "../../ai-meta/types";
2
+ export declare const sgMeta: SgMetaV0;
3
+ export declare const aiHints: SgAiHintsV0;
4
+ //# sourceMappingURL=SgDiscardDigit.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgDiscardDigit.meta.d.ts","sourceRoot":"","sources":["../../../src/digits/discard-digit/SgDiscardDigit.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEjE,eAAO,MAAM,MAAM,EAAE,QA4BpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WAmBrB,CAAC"}
@@ -0,0 +1,48 @@
1
+ export const sgMeta = {
2
+ version: "0.1",
3
+ componentId: "gadget.digit.discard",
4
+ package: "@seedgrid/fe-components",
5
+ exportName: "SgDiscardDigit",
6
+ slug: "sg-discard-digit",
7
+ displayName: "SgDiscardDigit",
8
+ category: "gadget",
9
+ subcategory: "digit",
10
+ description: "Digito animado com transicao de descarte para representar mudanca de valores em displays compactos.",
11
+ tags: ["gadget", "digit", "discard", "display", "counter"],
12
+ capabilities: ["single-character-display", "discard-animation", "counter-composition", "custom-colors"],
13
+ fieldSemantics: ["digitDisplay", "counterDigit", "animatedCharacter", "transitionalMetric"],
14
+ props: [
15
+ { name: "value", type: "string", required: true, description: "Caractere exibido no display.", semanticRole: "value", bindable: true },
16
+ { name: "fontSize", type: "number", default: 72, description: "Escala visual do digito.", semanticRole: "appearance", bindable: true },
17
+ { name: "color", type: "string", description: "Cor do caractere.", semanticRole: "appearance", bindable: true },
18
+ { name: "backgroundColor", type: "string", description: "Cor do fundo do card.", semanticRole: "appearance", bindable: true },
19
+ { name: "className", type: "string", description: "Classes CSS adicionais.", semanticRole: "appearance", bindable: true }
20
+ ],
21
+ states: ["idle", "animating"],
22
+ examples: [
23
+ { id: "basic", title: "Basico", file: "apps/showcase/src/app/components/digits/sg-discard-digit/samples/basico.tsx.sample", kind: "sample" },
24
+ { id: "playground", title: "Playground", file: "apps/showcase/src/app/components/digits/sg-discard-digit/sg-discard-digit.tsx.playground", kind: "playground" }
25
+ ],
26
+ showcase: { route: "/components/digits/sg-discard-digit", hasPlayground: true, hasPropsTable: true },
27
+ sdui: { rendererType: "gadget.digit.discard", acceptsDataBinding: true, defaultProps: { fontSize: 72 } }
28
+ };
29
+ export const aiHints = {
30
+ version: "0.1",
31
+ preferredUseCases: [
32
+ "Displays de contagem com transicao visual mais expressiva.",
33
+ "Indicadores numericos compactos em dashboards.",
34
+ "Widgets que priorizam efeito de troca entre caracteres."
35
+ ],
36
+ avoidUseCases: [
37
+ "Entrada de dados do usuario.",
38
+ "Texto longo e leitura continua.",
39
+ "Tabelas e grids com muitas celulas."
40
+ ],
41
+ synonyms: ["discard digit", "animated digit", "counter digit"],
42
+ relatedEntityFields: ["digit", "counter", "score", "metric", "display"],
43
+ compositionHints: [
44
+ "Combinar varios SgDiscardDigit para relogios e contadores.",
45
+ "Usar com SgCard, SgPanel e widgets de destaque."
46
+ ],
47
+ rankingSignals: { freeText: 0, structuredChoice: 0, date: 0.06, number: 0.66, denseLayout: 0.31 }
48
+ };
@@ -0,0 +1,4 @@
1
+ import type { SgAiHintsV0, SgMetaV0 } from "../../ai-meta/types";
2
+ export declare const sgMeta: SgMetaV0;
3
+ export declare const aiHints: SgAiHintsV0;
4
+ //# sourceMappingURL=SgFadeDigit.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgFadeDigit.meta.d.ts","sourceRoot":"","sources":["../../../src/digits/fade-digit/SgFadeDigit.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEjE,eAAO,MAAM,MAAM,EAAE,QA4BpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WAmBrB,CAAC"}