bestax-mcp 0.0.0

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 (144) hide show
  1. package/README.md +90 -0
  2. package/data/catalog.json +1869 -0
  3. package/data/components/Autocomplete.json +604 -0
  4. package/data/components/Avatar.json +220 -0
  5. package/data/components/Avatars.json +294 -0
  6. package/data/components/Badge.json +261 -0
  7. package/data/components/Block.json +105 -0
  8. package/data/components/Box.json +157 -0
  9. package/data/components/Breadcrumb.json +155 -0
  10. package/data/components/Button.json +599 -0
  11. package/data/components/Buttons.json +533 -0
  12. package/data/components/Card.json +506 -0
  13. package/data/components/Carousel.json +512 -0
  14. package/data/components/Cell.json +154 -0
  15. package/data/components/Checkbox.json +176 -0
  16. package/data/components/Checkboxes.json +240 -0
  17. package/data/components/Code.json +128 -0
  18. package/data/components/Collapse.json +218 -0
  19. package/data/components/Column.json +284 -0
  20. package/data/components/Columns.json +542 -0
  21. package/data/components/ConfigProvider.json +16 -0
  22. package/data/components/Container.json +149 -0
  23. package/data/components/Content.json +228 -0
  24. package/data/components/Control.json +484 -0
  25. package/data/components/DateInput.json +872 -0
  26. package/data/components/DateTimeInput.json +952 -0
  27. package/data/components/Delete.json +153 -0
  28. package/data/components/Dialog.json +285 -0
  29. package/data/components/Divider.json +68 -0
  30. package/data/components/Dropdown.json +353 -0
  31. package/data/components/Emphasis.json +99 -0
  32. package/data/components/Field.json +539 -0
  33. package/data/components/Figure.json +143 -0
  34. package/data/components/File.json +403 -0
  35. package/data/components/Footer.json +109 -0
  36. package/data/components/Grid.json +357 -0
  37. package/data/components/Hero.json +340 -0
  38. package/data/components/Icon.json +232 -0
  39. package/data/components/IconText.json +307 -0
  40. package/data/components/Image.json +166 -0
  41. package/data/components/Input.json +583 -0
  42. package/data/components/Level.json +332 -0
  43. package/data/components/Link.json +154 -0
  44. package/data/components/LinkButton.json +247 -0
  45. package/data/components/ListItem.json +101 -0
  46. package/data/components/Loading.json +323 -0
  47. package/data/components/Media.json +345 -0
  48. package/data/components/Menu.json +317 -0
  49. package/data/components/Message.json +303 -0
  50. package/data/components/Modal.json +444 -0
  51. package/data/components/Navbar.json +996 -0
  52. package/data/components/Notification.json +165 -0
  53. package/data/components/Numberinput.json +364 -0
  54. package/data/components/OrderedList.json +189 -0
  55. package/data/components/Pagination.json +619 -0
  56. package/data/components/Panel.json +582 -0
  57. package/data/components/Paragraph.json +107 -0
  58. package/data/components/Pre.json +114 -0
  59. package/data/components/Progress.json +137 -0
  60. package/data/components/Radio.json +164 -0
  61. package/data/components/Radios.json +240 -0
  62. package/data/components/Rate.json +466 -0
  63. package/data/components/Reveal.json +177 -0
  64. package/data/components/Section.json +123 -0
  65. package/data/components/Select.json +526 -0
  66. package/data/components/Sidebar.json +488 -0
  67. package/data/components/Skeleton.json +162 -0
  68. package/data/components/Slider.json +534 -0
  69. package/data/components/Span.json +100 -0
  70. package/data/components/Steps.json +452 -0
  71. package/data/components/Strong.json +105 -0
  72. package/data/components/SubTitle.json +233 -0
  73. package/data/components/Switch.json +291 -0
  74. package/data/components/Table.json +490 -0
  75. package/data/components/Tabs.json +592 -0
  76. package/data/components/Tag.json +197 -0
  77. package/data/components/Taginput.json +587 -0
  78. package/data/components/Tags.json +181 -0
  79. package/data/components/TextArea.json +483 -0
  80. package/data/components/Theme.json +65 -0
  81. package/data/components/TimeInput.json +906 -0
  82. package/data/components/Title.json +240 -0
  83. package/data/components/Toast.json +308 -0
  84. package/data/components/Tooltip.json +212 -0
  85. package/data/components/UnorderedList.json +149 -0
  86. package/data/components/Valid value constants.json +16 -0
  87. package/data/components/classNames.json +65 -0
  88. package/data/components/useBulmaClasses.json +169 -0
  89. package/data/components/usePrefixedClassNames.json +25 -0
  90. package/data/skills/bestax-custom-component/SKILL.md +196 -0
  91. package/data/skills/bestax-custom-component/examples/stat-card.tsx +105 -0
  92. package/data/skills/bestax-custom-component/references/api.md +90 -0
  93. package/data/skills/bestax-custom-component/references/component-catalog.md +149 -0
  94. package/data/skills/bestax-custom-component/references/library-contributor.md +395 -0
  95. package/data/skills/bestax-custom-component/references/patterns.md +136 -0
  96. package/data/skills/bestax-form/SKILL.md +254 -0
  97. package/data/skills/bestax-form/references/api.md +103 -0
  98. package/data/skills/bestax-form/references/patterns.md +210 -0
  99. package/data/skills/bestax-icons/SKILL.md +80 -0
  100. package/data/skills/bestax-icons/examples/icon-usage.tsx +80 -0
  101. package/data/skills/bestax-icons/references/icon-libraries.md +131 -0
  102. package/data/skills/bestax-layout-scaffold/SKILL.md +196 -0
  103. package/data/skills/bestax-layout-scaffold/examples/app-shell.tsx +86 -0
  104. package/data/skills/bestax-layout-scaffold/examples/card-grid.tsx +106 -0
  105. package/data/skills/bestax-layout-scaffold/examples/centered.tsx +56 -0
  106. package/data/skills/bestax-layout-scaffold/examples/content-page.tsx +90 -0
  107. package/data/skills/bestax-layout-scaffold/examples/landing.tsx +122 -0
  108. package/data/skills/bestax-layout-scaffold/references/archetypes.md +246 -0
  109. package/data/skills/bestax-layout-scaffold/references/layout-components.md +269 -0
  110. package/data/skills/bestax-migrate/SKILL.md +78 -0
  111. package/data/skills/bestax-migrate/references/component-map.md +91 -0
  112. package/data/skills/bestax-migrate/references/css-migration.md +100 -0
  113. package/data/skills/bestax-migrate/references/prop-map.md +48 -0
  114. package/data/skills/bestax-migrate/references/unmappables.md +124 -0
  115. package/data/skills/bestax-optimize/SKILL.md +131 -0
  116. package/data/skills/bestax-optimize/references/modular-build.md +173 -0
  117. package/data/skills/bestax-theming/SKILL.md +117 -0
  118. package/data/skills/bestax-theming/examples/dark-mode.tsx +38 -0
  119. package/data/skills/bestax-theming/examples/theme-config.tsx +60 -0
  120. package/data/skills/bestax-theming/references/css-variables.md +466 -0
  121. package/data/skills/bestax-theming/references/themeable-components.md +119 -0
  122. package/data/skills.json +148 -0
  123. package/dist/data.d.ts +131 -0
  124. package/dist/data.d.ts.map +1 -0
  125. package/dist/data.js +111 -0
  126. package/dist/format.d.ts +37 -0
  127. package/dist/format.d.ts.map +1 -0
  128. package/dist/format.js +178 -0
  129. package/dist/helper-props.d.ts +57 -0
  130. package/dist/helper-props.d.ts.map +1 -0
  131. package/dist/helper-props.js +249 -0
  132. package/dist/index.d.ts +3 -0
  133. package/dist/index.d.ts.map +1 -0
  134. package/dist/index.js +18 -0
  135. package/dist/search.d.ts +32 -0
  136. package/dist/search.d.ts.map +1 -0
  137. package/dist/search.js +194 -0
  138. package/dist/server.d.ts +28 -0
  139. package/dist/server.d.ts.map +1 -0
  140. package/dist/server.js +616 -0
  141. package/dist/version.d.ts +29 -0
  142. package/dist/version.d.ts.map +1 -0
  143. package/dist/version.js +147 -0
  144. package/package.json +70 -0
@@ -0,0 +1,220 @@
1
+ {
2
+ "name": "Avatar",
3
+ "kind": "component",
4
+ "category": "components",
5
+ "slug": "components/avatar",
6
+ "docsUrl": "https://bestax.io/docs/api/components/avatar",
7
+ "examples": [
8
+ {
9
+ "title": "Photo with Automatic Fallback",
10
+ "code": "<Avatars spaced>\n <Avatar src=\"https://github.com/allxsmith.png\" name=\"Al Smith\" size=\"64x64\" />\n <Avatar\n src=\"https://example.invalid/missing.jpg\"\n name=\"Grace Hopper\"\n size=\"64x64\"\n />\n</Avatars>"
11
+ },
12
+ {
13
+ "title": "Initials",
14
+ "code": "<Avatars spaced>\n <Avatar name=\"Ada Lovelace\" />\n <Avatar name=\"Grace Hopper\" />\n <Avatar name=\"Katherine Johnson\" />\n</Avatars>"
15
+ },
16
+ {
17
+ "title": "Icon Fallback",
18
+ "code": "<Avatar icon={<Icon name=\"user\" />} color=\"info\" shape=\"rounded\" />"
19
+ },
20
+ {
21
+ "title": "Shapes",
22
+ "code": "<Avatars spaced>\n <Avatar name=\"Circle\" shape=\"circle\" />\n <Avatar name=\"Rounded\" shape=\"rounded\" />\n <Avatar name=\"Square\" shape=\"square\" />\n</Avatars>"
23
+ },
24
+ {
25
+ "title": "Sizes",
26
+ "code": "<Avatars spaced>\n <Avatar name=\"Ada Lovelace\" size=\"24x24\" />\n <Avatar name=\"Ada Lovelace\" size=\"32x32\" />\n <Avatar name=\"Ada Lovelace\" size=\"48x48\" />\n <Avatar name=\"Ada Lovelace\" size=\"64x64\" />\n <Avatar name=\"Ada Lovelace\" size={20} />\n</Avatars>"
27
+ },
28
+ {
29
+ "title": "Clickable Avatar",
30
+ "code": "<Avatar name=\"Ada Lovelace\" href=\"https://bestax.io\" />"
31
+ },
32
+ {
33
+ "title": "Forwarding Props to the Image",
34
+ "code": "<Avatar\n src=\"https://github.com/allxsmith.png\"\n name=\"Al Smith\"\n size=\"64x64\"\n imageProps={{ loading: 'lazy' }}\n/>"
35
+ }
36
+ ],
37
+ "accessibility": "- Image avatars use `alt` (falling back to `name`) for their accessible name.\n- Initials/icon avatars expose `role=\"img\"` and `aria-label` (from `alt`/`name`) — unless\n rendered as a link or button, where the native link/button role and `aria-label` are used\n instead.\n- **Decorative avatars:** pass an explicit `alt=\"\"` when the avatar repeats information\n already visible next to it (e.g. beside the author's name in a comment row). The image\n stays decorative and an initials/icon avatar is skipped entirely (`aria-hidden`), avoiding\n double-speak. The opt-out never applies to a link/button avatar — an interactive element\n always keeps an accessible name (from `name`, or a generic `\"Avatar\"` fallback).\n- A link/button avatar with no `alt`/`name` (e.g. an API that returns only a photo URL) still\n gets an `aria-label` fallback rather than rendering a nameless control.\n- `as=\"button\"` defaults to `type=\"button\"`, so a clickable avatar inside a form doesn't\n submit it.\n- The default fallback icon is `aria-hidden`.",
38
+ "related": ["Avatars", "Badge", "Image", "useBulmaClasses"],
39
+ "storybook": "https://bestax.io/storybook/?path=/story/components-avatar--photo",
40
+ "summary": "The `Avatar` component represents a person or entity as a compact image.",
41
+ "import": "import { Avatar } from '@allxsmith/bestax-bulma';",
42
+ "sourceFile": "bulma-ui/src/components/Avatar.tsx",
43
+ "rootClass": "avatar",
44
+ "parts": [
45
+ {
46
+ "path": "Avatar",
47
+ "summary": "The `Avatar` component represents a person or entity as a compact image.",
48
+ "component": null,
49
+ "props": [
50
+ {
51
+ "name": "className",
52
+ "type": "string",
53
+ "default": null,
54
+ "description": "Additional CSS classes to apply.",
55
+ "required": false,
56
+ "inherited": false,
57
+ "deprecated": false
58
+ },
59
+ {
60
+ "name": "src",
61
+ "type": "string",
62
+ "default": null,
63
+ "description": "Image URL. On load error (or if absent), falls back to initials, then `icon`.",
64
+ "required": false,
65
+ "inherited": false,
66
+ "deprecated": false
67
+ },
68
+ {
69
+ "name": "alt",
70
+ "type": "string",
71
+ "default": null,
72
+ "description": "Alternate text for the image (used for the accessible name in every render mode). An explicit `alt=\"\"` marks a non-interactive avatar as decorative.",
73
+ "required": false,
74
+ "inherited": false,
75
+ "deprecated": false
76
+ },
77
+ {
78
+ "name": "name",
79
+ "type": "string",
80
+ "default": null,
81
+ "description": "Derives initials and a deterministic background color when no `src` is shown.",
82
+ "required": false,
83
+ "inherited": false,
84
+ "deprecated": false
85
+ },
86
+ {
87
+ "name": "initials",
88
+ "type": "string",
89
+ "default": null,
90
+ "description": "Explicit initials override (else derived from `name`).",
91
+ "required": false,
92
+ "inherited": false,
93
+ "deprecated": false
94
+ },
95
+ {
96
+ "name": "icon",
97
+ "type": "React.ReactNode",
98
+ "default": null,
99
+ "description": "Final fallback, rendered when there is no `src`, `name`, or `initials`.",
100
+ "required": false,
101
+ "inherited": false,
102
+ "deprecated": false
103
+ },
104
+ {
105
+ "name": "size",
106
+ "type": "'16x16' | '24x24' | '32x32' | '48x48' | '64x64' | '96x96' | '128x128' | number",
107
+ "default": null,
108
+ "description": "Preset size, or a pixel size when a number.",
109
+ "required": false,
110
+ "inherited": false,
111
+ "deprecated": false
112
+ },
113
+ {
114
+ "name": "shape",
115
+ "type": "'circle' | 'rounded' | 'square'",
116
+ "default": "'circle'",
117
+ "description": "Avatar shape. Default `'circle'`.",
118
+ "required": false,
119
+ "inherited": false,
120
+ "deprecated": false
121
+ },
122
+ {
123
+ "name": "color",
124
+ "type": "AvatarColor",
125
+ "default": null,
126
+ "description": "Background color for initials/icon avatars (else auto-derived from `name`).",
127
+ "required": false,
128
+ "inherited": false,
129
+ "deprecated": false
130
+ },
131
+ {
132
+ "name": "as",
133
+ "type": "React.ElementType",
134
+ "default": null,
135
+ "description": "Element/component to render as. Defaults to `'a'` when `href` is set, else `'figure'`.",
136
+ "required": false,
137
+ "inherited": false,
138
+ "deprecated": false
139
+ },
140
+ {
141
+ "name": "href",
142
+ "type": "string",
143
+ "default": null,
144
+ "description": "When set, renders the avatar as a link.",
145
+ "required": false,
146
+ "inherited": false,
147
+ "deprecated": false
148
+ },
149
+ {
150
+ "name": "target",
151
+ "type": "string",
152
+ "default": null,
153
+ "description": "Anchor target — forwarded only when rendering a link (an `a` or a custom `as` component).",
154
+ "required": false,
155
+ "inherited": false,
156
+ "deprecated": false
157
+ },
158
+ {
159
+ "name": "rel",
160
+ "type": "string",
161
+ "default": null,
162
+ "description": "Anchor rel — forwarded only when rendering a link (an `a` or a custom `as` component).",
163
+ "required": false,
164
+ "inherited": false,
165
+ "deprecated": false
166
+ },
167
+ {
168
+ "name": "imageProps",
169
+ "type": "React.ImgHTMLAttributes<HTMLImageElement>",
170
+ "default": null,
171
+ "description": "Extra props forwarded to the underlying `<img>` (e.g. `loading`, `crossOrigin`); its `onError` is chained before the fallback fires.",
172
+ "required": false,
173
+ "inherited": false,
174
+ "deprecated": false
175
+ }
176
+ ],
177
+ "extraProps": [],
178
+ "catchAll": "All standard HTML attributes and Bulma helper props",
179
+ "types": [
180
+ {
181
+ "name": "AvatarColor",
182
+ "expansion": "'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger' | 'black' | 'dark' | 'light' | 'white'",
183
+ "summary": "Valid color values for the Avatar component."
184
+ }
185
+ ]
186
+ }
187
+ ],
188
+ "cssVars": [
189
+ {
190
+ "css": "--bulma-avatar-size",
191
+ "sass": "$avatar-size",
192
+ "default": "48px",
193
+ "scope": "component"
194
+ },
195
+ {
196
+ "css": "--bulma-avatar-background",
197
+ "sass": "$avatar-background",
198
+ "default": "var(--bulma-background)",
199
+ "scope": "component"
200
+ },
201
+ {
202
+ "css": "--bulma-avatar-color",
203
+ "sass": "$avatar-color",
204
+ "default": "var(--bulma-text)",
205
+ "scope": "component"
206
+ },
207
+ {
208
+ "css": "--bulma-avatar-weight",
209
+ "sass": "$avatar-weight",
210
+ "default": "var(--bulma-weight-semibold)",
211
+ "scope": "component"
212
+ },
213
+ {
214
+ "css": "--bulma-avatar-rounded-radius",
215
+ "sass": "$avatar-rounded-radius",
216
+ "default": "var(--bulma-radius-large)",
217
+ "scope": "component"
218
+ }
219
+ ]
220
+ }
@@ -0,0 +1,294 @@
1
+ {
2
+ "name": "Avatars",
3
+ "kind": "component",
4
+ "category": "components",
5
+ "slug": "components/avatars",
6
+ "docsUrl": "https://bestax.io/docs/api/components/avatars",
7
+ "examples": [
8
+ {
9
+ "title": "Default",
10
+ "code": "<Avatars>\n <Avatar name=\"Ada Lovelace\" />\n <Avatar name=\"Grace Hopper\" />\n <Avatar name=\"Katherine Johnson\" />\n</Avatars>"
11
+ },
12
+ {
13
+ "title": "Clamped with a Surplus Bubble",
14
+ "code": "<Avatars max={3} size=\"48x48\">\n <Avatar name=\"Ada Lovelace\" />\n <Avatar name=\"Grace Hopper\" />\n <Avatar name=\"Katherine Johnson\" />\n <Avatar name=\"Margaret Hamilton\" />\n <Avatar name=\"Radia Perlman\" />\n</Avatars>"
15
+ },
16
+ {
17
+ "title": "Localized Surplus Label",
18
+ "code": "<Avatars max={3} surplusLabel={count => `${count} weitere`}>\n <Avatar name=\"Ada Lovelace\" />\n <Avatar name=\"Grace Hopper\" />\n <Avatar name=\"Katherine Johnson\" />\n <Avatar name=\"Margaret Hamilton\" />\n <Avatar name=\"Radia Perlman\" />\n</Avatars>"
19
+ },
20
+ {
21
+ "title": "Uniform Shape",
22
+ "code": "<Avatars max={4} shape=\"square\">\n <Avatar name=\"Ada Lovelace\" />\n <Avatar name=\"Grace Hopper\" />\n <Avatar name=\"Katherine Johnson\" />\n <Avatar name=\"Margaret Hamilton\" />\n <Avatar name=\"Radia Perlman\" />\n</Avatars>"
23
+ },
24
+ {
25
+ "title": "Spacing",
26
+ "code": "<Block display=\"flex\" flexDirection=\"column\">\n <Avatars spacing=\"sm\" mb=\"4\">\n <Avatar name=\"Ada Lovelace\" />\n <Avatar name=\"Grace Hopper\" />\n <Avatar name=\"Katherine Johnson\" />\n </Avatars>\n <Avatars spacing=\"lg\">\n <Avatar name=\"Ada Lovelace\" />\n <Avatar name=\"Grace Hopper\" />\n <Avatar name=\"Katherine Johnson\" />\n </Avatars>\n</Block>"
27
+ },
28
+ {
29
+ "title": "Spacing",
30
+ "code": "<Avatars spacing={4}>\n <Avatar name=\"Ada Lovelace\" />\n <Avatar name=\"Grace Hopper\" />\n <Avatar name=\"Katherine Johnson\" />\n</Avatars>"
31
+ },
32
+ {
33
+ "title": "Non-overlapping (Spaced)",
34
+ "code": "<Avatars spaced>\n <Avatar name=\"Ada Lovelace\" />\n <Avatar name=\"Grace Hopper\" />\n <Avatar name=\"Katherine Johnson\" />\n</Avatars>"
35
+ },
36
+ {
37
+ "title": "Compound (dot-notation) usage",
38
+ "code": "<Avatars>\n <Avatars.Avatar name=\"Ada Lovelace\" />\n <Avatars.Avatar name=\"Grace Hopper\" />\n <Avatars.Avatar name=\"Katherine Johnson\" />\n</Avatars>"
39
+ }
40
+ ],
41
+ "accessibility": "- `Avatars` is a plain container — each child `Avatar` carries its own accessible name (see\n [Avatar's accessibility notes](./avatar.md#accessibility)).\n- The `+N` surplus avatar gets an accessible name of `\"{N} more\"` (via its `alt`), so assistive\n tech announces how many members are hidden. Localize it with `surplusLabel`, e.g.\n ``surplusLabel={count => `${count} weitere`}``.\n- A focused clickable avatar is lifted above its overlapping neighbours so its focus outline\n is never partially covered.\n- When the group represents a labelled set (e.g. \"Project members\"), give the container a\n `role=\"group\"` and an `aria-label` describing it.",
42
+ "related": ["Avatar", "Badge", "Tags", "useBulmaClasses"],
43
+ "storybook": "https://bestax.io/storybook/?path=/story/components-avatars--default",
44
+ "summary": "The `Avatars` component renders an overlapping/stacked group of `Avatar`s, the \"members\" list pattern.",
45
+ "import": "import { Avatars, Avatar } from '@allxsmith/bestax-bulma';",
46
+ "sourceFile": "bulma-ui/src/components/Avatars.tsx",
47
+ "rootClass": "avatars",
48
+ "parts": [
49
+ {
50
+ "path": "Avatars",
51
+ "summary": "The `Avatars` component renders an overlapping/stacked group of `Avatar`s, the \"members\" list pattern.",
52
+ "component": null,
53
+ "props": [
54
+ {
55
+ "name": "className",
56
+ "type": "string",
57
+ "default": null,
58
+ "description": "Additional CSS classes to apply.",
59
+ "required": false,
60
+ "inherited": false,
61
+ "deprecated": false
62
+ },
63
+ {
64
+ "name": "max",
65
+ "type": "number",
66
+ "default": null,
67
+ "description": "Show only the first `max` children, replacing the overflow with a \"+N\" surplus avatar. A single overflow avatar is shown directly rather than as a pointless \"+1\".",
68
+ "required": false,
69
+ "inherited": false,
70
+ "deprecated": false
71
+ },
72
+ {
73
+ "name": "size",
74
+ "type": "'16x16' | '24x24' | '32x32' | '48x48' | '64x64' | '96x96' | '128x128' | number",
75
+ "default": null,
76
+ "description": "Uniform size applied to every child `Avatar` (and the surplus avatar).",
77
+ "required": false,
78
+ "inherited": false,
79
+ "deprecated": false
80
+ },
81
+ {
82
+ "name": "shape",
83
+ "type": "'circle' | 'rounded' | 'square'",
84
+ "default": null,
85
+ "description": "Uniform shape applied to every child `Avatar` (and the surplus avatar); a child's own `shape` wins when this is unset.",
86
+ "required": false,
87
+ "inherited": false,
88
+ "deprecated": false
89
+ },
90
+ {
91
+ "name": "spacing",
92
+ "type": "'sm' | 'md' | 'lg' | number",
93
+ "default": "'md'",
94
+ "description": "Space between avatars: a preset or a pixel `number`. The overlap distance, or the gap when `spaced`.",
95
+ "required": false,
96
+ "inherited": false,
97
+ "deprecated": false
98
+ },
99
+ {
100
+ "name": "spaced",
101
+ "type": "boolean",
102
+ "default": "false",
103
+ "description": "Lay the avatars out side by side (non-overlapping), using `spacing` as the gap.",
104
+ "required": false,
105
+ "inherited": false,
106
+ "deprecated": false
107
+ },
108
+ {
109
+ "name": "surplusLabel",
110
+ "type": "(count: number) => string",
111
+ "default": null,
112
+ "description": "Builds the surplus avatar's accessible name from the hidden count, for localization. Default: `` `${count} more` ``.",
113
+ "required": false,
114
+ "inherited": false,
115
+ "deprecated": false
116
+ },
117
+ {
118
+ "name": "children",
119
+ "type": "React.ReactNode",
120
+ "default": null,
121
+ "description": "`Avatar` elements to render inside the group.",
122
+ "required": false,
123
+ "inherited": false,
124
+ "deprecated": false
125
+ }
126
+ ],
127
+ "extraProps": [],
128
+ "catchAll": "All standard <div> attributes and Bulma helper props",
129
+ "types": []
130
+ },
131
+ {
132
+ "path": "Avatars.Avatar",
133
+ "summary": "The `Avatar` component represents a person or entity as a compact image.",
134
+ "component": "Avatar",
135
+ "props": [
136
+ {
137
+ "name": "className",
138
+ "type": "string",
139
+ "default": null,
140
+ "description": "Additional CSS classes to apply.",
141
+ "required": false,
142
+ "inherited": false,
143
+ "deprecated": false
144
+ },
145
+ {
146
+ "name": "src",
147
+ "type": "string",
148
+ "default": null,
149
+ "description": "Image URL. On load error (or if absent), falls back to initials, then `icon`.",
150
+ "required": false,
151
+ "inherited": false,
152
+ "deprecated": false
153
+ },
154
+ {
155
+ "name": "alt",
156
+ "type": "string",
157
+ "default": null,
158
+ "description": "Alternate text for the image (used for the accessible name in every render mode). An explicit `alt=\"\"` marks a non-interactive avatar as decorative.",
159
+ "required": false,
160
+ "inherited": false,
161
+ "deprecated": false
162
+ },
163
+ {
164
+ "name": "name",
165
+ "type": "string",
166
+ "default": null,
167
+ "description": "Derives initials and a deterministic background color when no `src` is shown.",
168
+ "required": false,
169
+ "inherited": false,
170
+ "deprecated": false
171
+ },
172
+ {
173
+ "name": "initials",
174
+ "type": "string",
175
+ "default": null,
176
+ "description": "Explicit initials override (else derived from `name`).",
177
+ "required": false,
178
+ "inherited": false,
179
+ "deprecated": false
180
+ },
181
+ {
182
+ "name": "icon",
183
+ "type": "React.ReactNode",
184
+ "default": null,
185
+ "description": "Final fallback, rendered when there is no `src`, `name`, or `initials`.",
186
+ "required": false,
187
+ "inherited": false,
188
+ "deprecated": false
189
+ },
190
+ {
191
+ "name": "size",
192
+ "type": "'16x16' | '24x24' | '32x32' | '48x48' | '64x64' | '96x96' | '128x128' | number",
193
+ "default": null,
194
+ "description": "Preset size, or a pixel size when a number.",
195
+ "required": false,
196
+ "inherited": false,
197
+ "deprecated": false
198
+ },
199
+ {
200
+ "name": "shape",
201
+ "type": "'circle' | 'rounded' | 'square'",
202
+ "default": "'circle'",
203
+ "description": "Avatar shape. Default `'circle'`.",
204
+ "required": false,
205
+ "inherited": false,
206
+ "deprecated": false
207
+ },
208
+ {
209
+ "name": "color",
210
+ "type": "AvatarColor",
211
+ "default": null,
212
+ "description": "Background color for initials/icon avatars (else auto-derived from `name`).",
213
+ "required": false,
214
+ "inherited": false,
215
+ "deprecated": false
216
+ },
217
+ {
218
+ "name": "as",
219
+ "type": "React.ElementType",
220
+ "default": null,
221
+ "description": "Element/component to render as. Defaults to `'a'` when `href` is set, else `'figure'`.",
222
+ "required": false,
223
+ "inherited": false,
224
+ "deprecated": false
225
+ },
226
+ {
227
+ "name": "href",
228
+ "type": "string",
229
+ "default": null,
230
+ "description": "When set, renders the avatar as a link.",
231
+ "required": false,
232
+ "inherited": false,
233
+ "deprecated": false
234
+ },
235
+ {
236
+ "name": "target",
237
+ "type": "string",
238
+ "default": null,
239
+ "description": "Anchor target — forwarded only when rendering a link (an `a` or a custom `as` component).",
240
+ "required": false,
241
+ "inherited": false,
242
+ "deprecated": false
243
+ },
244
+ {
245
+ "name": "rel",
246
+ "type": "string",
247
+ "default": null,
248
+ "description": "Anchor rel — forwarded only when rendering a link (an `a` or a custom `as` component).",
249
+ "required": false,
250
+ "inherited": false,
251
+ "deprecated": false
252
+ },
253
+ {
254
+ "name": "imageProps",
255
+ "type": "React.ImgHTMLAttributes<HTMLImageElement>",
256
+ "default": null,
257
+ "description": "Extra props forwarded to the underlying `<img>` (e.g. `loading`, `crossOrigin`); its `onError` is chained before the fallback fires.",
258
+ "required": false,
259
+ "inherited": false,
260
+ "deprecated": false
261
+ }
262
+ ],
263
+ "extraProps": [],
264
+ "catchAll": "All standard HTML attributes and Bulma helper props",
265
+ "types": [
266
+ {
267
+ "name": "AvatarColor",
268
+ "expansion": "'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger' | 'black' | 'dark' | 'light' | 'white'",
269
+ "summary": "Valid color values for the Avatar component."
270
+ }
271
+ ]
272
+ }
273
+ ],
274
+ "cssVars": [
275
+ {
276
+ "css": "--bulma-avatars-ring-color",
277
+ "sass": "$avatars-ring-color",
278
+ "default": "var(--bulma-scheme-main)",
279
+ "scope": "component"
280
+ },
281
+ {
282
+ "css": "--bulma-avatars-ring-width",
283
+ "sass": "$avatars-ring-width",
284
+ "default": "2px",
285
+ "scope": "component"
286
+ },
287
+ {
288
+ "css": "--bulma-avatars-spacing",
289
+ "sass": "$avatars-spacing-md",
290
+ "default": "0.75rem",
291
+ "scope": "component"
292
+ }
293
+ ]
294
+ }