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,340 @@
1
+ {
2
+ "name": "Hero",
3
+ "kind": "component",
4
+ "category": "layout",
5
+ "slug": "layout/hero",
6
+ "docsUrl": "https://bestax.io/docs/api/layout/hero",
7
+ "examples": [
8
+ {
9
+ "title": "Default Hero",
10
+ "code": "<Hero>\n <Hero.Body>\n <Container>\n <Title>Hero title</Title>\n <SubTitle>Hero subtitle</SubTitle>\n </Container>\n </Hero.Body>\n</Hero>"
11
+ },
12
+ {
13
+ "title": "All Colors",
14
+ "code": "<>\n <Hero color=\"link\">\n <Hero.Body>\n <Container>\n <Title>Hero title (link)</Title>\n <SubTitle>Hero subtitle (link)</SubTitle>\n </Container>\n </Hero.Body>\n </Hero>\n <Hero color=\"primary\">\n <Hero.Body>\n <Container>\n <Title>Hero title (primary)</Title>\n <SubTitle>Hero subtitle (primary)</SubTitle>\n </Container>\n </Hero.Body>\n </Hero>\n <Hero color=\"info\">\n <Hero.Body>\n <Container>\n <Title>Hero title (info)</Title>\n <SubTitle>Hero subtitle (info)</SubTitle>\n </Container>\n </Hero.Body>\n </Hero>\n <Hero color=\"success\">\n <Hero.Body>\n <Container>\n <Title>Hero title (success)</Title>\n <SubTitle>Hero subtitle (success)</SubTitle>\n </Container>\n </Hero.Body>\n </Hero>\n <Hero color=\"warning\">\n <Hero.Body>\n <Container>\n <Title>Hero title (warning)</Title>\n <SubTitle>Hero subtitle (warning)</SubTitle>\n </Container>\n </Hero.Body>\n </Hero>\n <Hero color=\"danger\">\n <Hero.Body>\n <Container>\n <Title>Hero title (danger)</Title>\n <SubTitle>Hero subtitle (danger)</SubTitle>\n </Container>\n </Hero.Body>\n </Hero>\n</>"
15
+ },
16
+ {
17
+ "title": "All Sizes",
18
+ "code": "<>\n <Hero color=\"info\" size=\"small\">\n <Hero.Body>\n <Container>\n <Title>Hero title (small)</Title>\n <SubTitle>Hero subtitle (small)</SubTitle>\n </Container>\n </Hero.Body>\n </Hero>\n <Hero color=\"primary\" size=\"medium\">\n <Hero.Body>\n <Container>\n <Title>Hero title (medium)</Title>\n <SubTitle>Hero subtitle (medium)</SubTitle>\n </Container>\n </Hero.Body>\n </Hero>\n <Hero color=\"success\" size=\"large\">\n <Hero.Body>\n <Container>\n <Title>Hero title (large)</Title>\n <SubTitle>Hero subtitle (large)</SubTitle>\n </Container>\n </Hero.Body>\n </Hero>\n <Hero color=\"danger\" size=\"fullheight\">\n <Hero.Body>\n <Container>\n <Title>Hero title (fullheight)</Title>\n <SubTitle>Hero subtitle (fullheight)</SubTitle>\n </Container>\n </Hero.Body>\n </Hero>\n</>"
19
+ },
20
+ {
21
+ "title": "Fullheight with Navbar",
22
+ "code": "<>\n <Navbar>\n <Container>\n <Navbar.Menu id=\"navMenu\">\n <Navbar.Start>\n <Navbar.Item as=\"a\">Getting Started</Navbar.Item>\n <Navbar.Item as=\"a\">APIs</Navbar.Item>\n <Navbar.Item as=\"a\">Blog</Navbar.Item>\n </Navbar.Start>\n <Navbar.End>\n <Navbar.Item as=\"span\">\n <Button color=\"primary\" isInverted as=\"a\" mx=\"2\">\n Github\n </Button>\n </Navbar.Item>\n </Navbar.End>\n </Navbar.Menu>\n </Container>\n </Navbar>\n <Hero color=\"link\" fullheightWithNavbar>\n <Hero.Body>\n <Container>\n <Title>Fullheight with navbar</Title>\n </Container>\n </Hero.Body>\n </Hero>\n</>"
23
+ },
24
+ {
25
+ "title": "Fullheight with Head, Body, and Foot",
26
+ "code": "<Hero color=\"primary\" size=\"medium\">\n <Hero.Head>\n <Navbar>\n <Container>\n <Navbar.Brand>\n <Navbar.Item as=\"a\">\n <Image src=\"/img/bestax-type-white.svg\" alt=\"Bestax\" mx=\"2\" />\n </Navbar.Item>\n <Navbar.Burger />\n </Navbar.Brand>\n <Navbar.Menu id=\"navbarMenuHeroA\">\n <Navbar.End>\n <Navbar.Item as=\"a\" active>\n Getting Started\n </Navbar.Item>\n <Navbar.Item as=\"a\">APIs</Navbar.Item>\n <Navbar.Item as=\"a\">Blog</Navbar.Item>\n <Navbar.Item as=\"span\">\n <Button color=\"primary\" isInverted as=\"a\" mx=\"2\">\n <Icon\n library=\"fa\"\n name=\"github\"\n variant=\"brands\"\n ariaLabel=\"github\"\n />\n <Span>Github</Span>\n </Button>\n </Navbar.Item>\n </Navbar.End>\n </Navbar.Menu>\n </Container>\n </Navbar>\n </Hero.Head>\n\n <Hero.Body>\n <Container textAlign=\"centered\">\n <Title>Bestax</Title>\n <SubTitle>A Bulma Component Library</SubTitle>\n </Container>\n </Hero.Body>\n\n <Hero.Foot>\n <Tabs>\n <Container>\n <Tabs.List>\n <Tabs.Item>\n <a>Elements</a>\n </Tabs.Item>\n <Tabs.Item>\n <a>Components</a>\n </Tabs.Item>\n <Tabs.Item>\n <a>Columns</a>\n </Tabs.Item>\n <Tabs.Item>\n <a>Grid</a>\n </Tabs.Item>\n <Tabs.Item>\n <a>Layout</a>\n </Tabs.Item>\n </Tabs.List>\n </Container>\n </Tabs>\n </Hero.Foot>\n</Hero>"
27
+ },
28
+ {
29
+ "title": "Compound (dot-notation) usage",
30
+ "code": "<Hero color=\"info\">\n <Hero.Head>\n <Container textAlign=\"centered\" pt=\"4\">\n <Title size=\"6\">Hero head via dot notation</Title>\n </Container>\n </Hero.Head>\n <Hero.Body>\n <Container textAlign=\"centered\">\n <Title>Hero title</Title>\n <SubTitle>Hero subtitle</SubTitle>\n </Container>\n </Hero.Body>\n <Hero.Foot>\n <Container textAlign=\"centered\" pb=\"4\">\n <SubTitle size=\"6\">Hero foot via dot notation</SubTitle>\n </Container>\n </Hero.Foot>\n</Hero>"
31
+ }
32
+ ],
33
+ "accessibility": "- The hero renders as a semantic `<section>` by default.\n- Subcomponents use semantic `<div>` for layout but you can use accessible children/content.\n- Use headings (`<Title>`, `<SubTitle>`) for best screen reader support.\n\n:::note\nWhen using fullheight or fullheight-with-navbar, ensure your layout remains keyboard navigable and visually accessible.\n:::",
34
+ "related": [
35
+ "Button",
36
+ "Container",
37
+ "Navbar",
38
+ "SubTitle",
39
+ "Tabs",
40
+ "Title",
41
+ "useBulmaClasses"
42
+ ],
43
+ "storybook": "https://bestax.io/storybook/?path=/story/layout-hero--default",
44
+ "summary": "The `Hero` component provides a responsive, flexible, and visually striking section for your Bulma React UI.",
45
+ "import": "import { Hero } from '@allxsmith/bestax-bulma';",
46
+ "sourceFile": "bulma-ui/src/layout/Hero.tsx",
47
+ "rootClass": "hero",
48
+ "parts": [
49
+ {
50
+ "path": "Hero",
51
+ "summary": "The `Hero` component provides a responsive, flexible, and visually striking section for your Bulma React UI.",
52
+ "component": null,
53
+ "props": [
54
+ {
55
+ "name": "className",
56
+ "type": "string",
57
+ "default": null,
58
+ "description": "Additional CSS classes.",
59
+ "required": false,
60
+ "inherited": false,
61
+ "deprecated": false
62
+ },
63
+ {
64
+ "name": "color",
65
+ "type": "Bulma color | 'inherit' | 'current'",
66
+ "default": null,
67
+ "description": "Bulma color modifier for the hero section (renders `is-<color>`). Only `primary`, `link`, `info`, `success`, `warning`, `danger`, `black`, `white`, `light`, and `dark` have shipped CSS for `.hero`. The other accepted values (`black-bis`, `black-ter`, `grey-darker`, `grey-dark`, `grey`, `grey-light`, `grey-lighter`, `inherit`, `current`) emit a class no CSS rule matches, so the hero renders unstyled; they log a console warning in development and will be removed from this union in the next major version.",
68
+ "required": false,
69
+ "inherited": false,
70
+ "deprecated": false,
71
+ "valuesRef": "helpers/valid-values"
72
+ },
73
+ {
74
+ "name": "size",
75
+ "type": "'small' | 'medium' | 'large' | 'fullheight' | 'fullheight-with-navbar'",
76
+ "default": null,
77
+ "description": "Hero size.",
78
+ "required": false,
79
+ "inherited": false,
80
+ "deprecated": false
81
+ },
82
+ {
83
+ "name": "bgColor",
84
+ "type": "Bulma color | 'inherit' | 'current'",
85
+ "default": null,
86
+ "description": "Bulma background color helper.",
87
+ "required": false,
88
+ "inherited": false,
89
+ "deprecated": false,
90
+ "valuesRef": "helpers/valid-values"
91
+ },
92
+ {
93
+ "name": "fullheightWithNavbar",
94
+ "type": "boolean",
95
+ "default": "false",
96
+ "description": "Use fullheight hero with a navbar offset.",
97
+ "required": false,
98
+ "inherited": false,
99
+ "deprecated": false
100
+ },
101
+ {
102
+ "name": "children",
103
+ "type": "React.ReactNode",
104
+ "default": null,
105
+ "description": "Hero content (often includes `Hero.Head`, `Hero.Body`, `Hero.Foot`).",
106
+ "required": false,
107
+ "inherited": false,
108
+ "deprecated": false
109
+ }
110
+ ],
111
+ "extraProps": [],
112
+ "catchAll": "All standard HTML attributes and Bulma helper props",
113
+ "types": []
114
+ },
115
+ {
116
+ "path": "Hero.Head",
117
+ "summary": "Top bar for navigation or branding.",
118
+ "component": null,
119
+ "props": [
120
+ {
121
+ "name": "className",
122
+ "type": "string",
123
+ "default": null,
124
+ "description": "Additional CSS classes.",
125
+ "required": false,
126
+ "inherited": false,
127
+ "deprecated": false
128
+ },
129
+ {
130
+ "name": "color",
131
+ "type": "Bulma color | 'inherit' | 'current'",
132
+ "default": null,
133
+ "description": "Bulma color modifier for text.",
134
+ "required": false,
135
+ "inherited": false,
136
+ "deprecated": false,
137
+ "valuesRef": "helpers/valid-values"
138
+ },
139
+ {
140
+ "name": "bgColor",
141
+ "type": "Bulma color | 'inherit' | 'current'",
142
+ "default": null,
143
+ "description": "Background color.",
144
+ "required": false,
145
+ "inherited": false,
146
+ "deprecated": false,
147
+ "valuesRef": "helpers/valid-values"
148
+ },
149
+ {
150
+ "name": "textColor",
151
+ "type": "Bulma color | 'inherit' | 'current'",
152
+ "default": null,
153
+ "description": "Text color.",
154
+ "required": false,
155
+ "inherited": false,
156
+ "deprecated": false,
157
+ "valuesRef": "helpers/valid-values"
158
+ },
159
+ {
160
+ "name": "children",
161
+ "type": "React.ReactNode",
162
+ "default": null,
163
+ "description": "Content.",
164
+ "required": false,
165
+ "inherited": false,
166
+ "deprecated": false
167
+ }
168
+ ],
169
+ "extraProps": [],
170
+ "catchAll": "All standard <div> attributes and Bulma helper props",
171
+ "types": []
172
+ },
173
+ {
174
+ "path": "Hero.Body",
175
+ "summary": "Main content area, vertically centered by default.",
176
+ "component": null,
177
+ "props": [
178
+ {
179
+ "name": "className",
180
+ "type": "string",
181
+ "default": null,
182
+ "description": "Additional CSS classes.",
183
+ "required": false,
184
+ "inherited": false,
185
+ "deprecated": false
186
+ },
187
+ {
188
+ "name": "color",
189
+ "type": "Bulma color | 'inherit' | 'current'",
190
+ "default": null,
191
+ "description": "Bulma color modifier for text.",
192
+ "required": false,
193
+ "inherited": false,
194
+ "deprecated": false,
195
+ "valuesRef": "helpers/valid-values"
196
+ },
197
+ {
198
+ "name": "bgColor",
199
+ "type": "Bulma color | 'inherit' | 'current'",
200
+ "default": null,
201
+ "description": "Background color.",
202
+ "required": false,
203
+ "inherited": false,
204
+ "deprecated": false,
205
+ "valuesRef": "helpers/valid-values"
206
+ },
207
+ {
208
+ "name": "textColor",
209
+ "type": "Bulma color | 'inherit' | 'current'",
210
+ "default": null,
211
+ "description": "Text color.",
212
+ "required": false,
213
+ "inherited": false,
214
+ "deprecated": false,
215
+ "valuesRef": "helpers/valid-values"
216
+ },
217
+ {
218
+ "name": "children",
219
+ "type": "React.ReactNode",
220
+ "default": null,
221
+ "description": "Content.",
222
+ "required": false,
223
+ "inherited": false,
224
+ "deprecated": false
225
+ }
226
+ ],
227
+ "extraProps": [],
228
+ "catchAll": "All standard <div> attributes and Bulma helper props",
229
+ "types": []
230
+ },
231
+ {
232
+ "path": "Hero.Foot",
233
+ "summary": "Bottom bar for tabs or actions.",
234
+ "component": null,
235
+ "props": [
236
+ {
237
+ "name": "className",
238
+ "type": "string",
239
+ "default": null,
240
+ "description": "Additional CSS classes.",
241
+ "required": false,
242
+ "inherited": false,
243
+ "deprecated": false
244
+ },
245
+ {
246
+ "name": "color",
247
+ "type": "Bulma color | 'inherit' | 'current'",
248
+ "default": null,
249
+ "description": "Bulma color modifier for text.",
250
+ "required": false,
251
+ "inherited": false,
252
+ "deprecated": false,
253
+ "valuesRef": "helpers/valid-values"
254
+ },
255
+ {
256
+ "name": "bgColor",
257
+ "type": "Bulma color | 'inherit' | 'current'",
258
+ "default": null,
259
+ "description": "Background color.",
260
+ "required": false,
261
+ "inherited": false,
262
+ "deprecated": false,
263
+ "valuesRef": "helpers/valid-values"
264
+ },
265
+ {
266
+ "name": "textColor",
267
+ "type": "Bulma color | 'inherit' | 'current'",
268
+ "default": null,
269
+ "description": "Text color.",
270
+ "required": false,
271
+ "inherited": false,
272
+ "deprecated": false,
273
+ "valuesRef": "helpers/valid-values"
274
+ },
275
+ {
276
+ "name": "children",
277
+ "type": "React.ReactNode",
278
+ "default": null,
279
+ "description": "Content.",
280
+ "required": false,
281
+ "inherited": false,
282
+ "deprecated": false
283
+ }
284
+ ],
285
+ "extraProps": [],
286
+ "catchAll": "All standard <div> attributes and Bulma helper props",
287
+ "types": []
288
+ }
289
+ ],
290
+ "cssVars": [
291
+ {
292
+ "css": "--bulma-hero-body-padding",
293
+ "sass": "$hero-body-padding",
294
+ "default": "3rem 1.5rem",
295
+ "scope": "component"
296
+ },
297
+ {
298
+ "css": "--bulma-hero-body-padding-tablet",
299
+ "sass": "$hero-body-padding-tablet",
300
+ "default": "3rem 3rem",
301
+ "scope": "component"
302
+ },
303
+ {
304
+ "css": "--bulma-hero-body-padding-small",
305
+ "sass": "$hero-body-padding-small",
306
+ "default": "1.5rem",
307
+ "scope": "component"
308
+ },
309
+ {
310
+ "css": "--bulma-hero-body-padding-medium",
311
+ "sass": "$hero-body-padding-medium",
312
+ "default": "9rem 4.5rem",
313
+ "scope": "component"
314
+ },
315
+ {
316
+ "css": "--bulma-hero-body-padding-large",
317
+ "sass": "$hero-body-padding-large",
318
+ "default": "18rem 6rem",
319
+ "scope": "component"
320
+ },
321
+ {
322
+ "css": "--bulma-hero-gradient-h-offset",
323
+ "sass": "$hero-gradient-h-offset",
324
+ "default": "5deg",
325
+ "scope": "component"
326
+ },
327
+ {
328
+ "css": "--bulma-hero-gradient-s-offset",
329
+ "sass": "$hero-gradient-s-offset",
330
+ "default": "10%",
331
+ "scope": "component"
332
+ },
333
+ {
334
+ "css": "--bulma-hero-gradient-l-offset",
335
+ "sass": "$hero-gradient-l-offset",
336
+ "default": "5%",
337
+ "scope": "component"
338
+ }
339
+ ]
340
+ }
@@ -0,0 +1,232 @@
1
+ {
2
+ "name": "Icon",
3
+ "kind": "component",
4
+ "category": "elements",
5
+ "slug": "elements/icon",
6
+ "docsUrl": "https://bestax.io/docs/api/elements/icon",
7
+ "examples": [
8
+ {
9
+ "title": "Default Icon (Font Awesome)",
10
+ "code": "<Icon name=\"star\" ariaLabel=\"Star icon\" />"
11
+ },
12
+ {
13
+ "title": "Font Awesome Large",
14
+ "code": "<Icon\n name=\"star\"\n variant=\"solid\"\n features=\"fa-2x\"\n ariaLabel=\"Star icon large\"\n/>"
15
+ },
16
+ {
17
+ "title": "Spinning Icon",
18
+ "code": "<Icon\n name=\"spinner\"\n variant=\"solid\"\n features={['fa-spin', 'fa-2x']}\n ariaLabel=\"Loading spinner\"\n/>"
19
+ },
20
+ {
21
+ "title": "Bordered",
22
+ "code": "<Icon\n name=\"star\"\n size=\"large\"\n variant=\"solid\"\n features={['fa-border', 'fa-2x']}\n ariaLabel=\"Star bordered\"\n/>"
23
+ },
24
+ {
25
+ "title": "With Text Color",
26
+ "code": "<Icon\n name=\"star\"\n textColor=\"primary\"\n ariaLabel=\"Star icon with primary text color\"\n/>"
27
+ },
28
+ {
29
+ "title": "With Margin",
30
+ "code": "<Icon name=\"star\" m=\"2\" ariaLabel=\"Star icon with margin\" />"
31
+ },
32
+ {
33
+ "title": "With Container Size",
34
+ "code": "<Icon name=\"star\" size=\"large\" ariaLabel=\"Star icon large container\" />"
35
+ },
36
+ {
37
+ "title": "Google Material Icons",
38
+ "code": "<Block display=\"flex\" gap=\"4\" alignItems=\"center\">\n <Icon library=\"material-icons\" name=\"favorite\" ariaLabel=\"Filled heart\" />\n <Icon\n library=\"material-icons\"\n name=\"favorite\"\n variant=\"outlined\"\n ariaLabel=\"Outlined heart\"\n />\n <Icon\n library=\"material-icons\"\n name=\"favorite\"\n variant=\"round\"\n ariaLabel=\"Round heart\"\n />\n</Block>"
39
+ },
40
+ {
41
+ "title": "Material Symbols",
42
+ "code": "<Block display=\"flex\" gap=\"4\" alignItems=\"center\">\n <Icon\n library=\"material-symbols\"\n name=\"settings\"\n ariaLabel=\"Settings outlined\"\n />\n <Icon\n library=\"material-symbols\"\n name=\"settings\"\n variant=\"rounded\"\n ariaLabel=\"Settings rounded\"\n />\n <Icon\n library=\"material-symbols\"\n name=\"settings\"\n variant=\"sharp\"\n ariaLabel=\"Settings sharp\"\n />\n</Block>"
43
+ },
44
+ {
45
+ "title": "Material Design Icons",
46
+ "code": "<Icon library=\"mdi\" name=\"home\" ariaLabel=\"Material Design home icon\" />"
47
+ },
48
+ {
49
+ "title": "Ionicons",
50
+ "code": "<Icon library=\"ion\" name=\"settings\" ariaLabel=\"Ionicons settings icon\" />"
51
+ }
52
+ ],
53
+ "accessibility": "- **ARIA label:** Always set a meaningful `ariaLabel` for screen readers (default `'icon'`).\n- **Keyboard:** Icon is decorative by default. If interactive, use with `Button` or `a` and add ARIA as needed.\n- **Color and size:** Use `textColor`, `bgColor`, and `size` for accessible, themeable icons.\n\n:::note\nFor purely decorative icons, you can use `aria-hidden=\"true\"` via the `...rest` props.\n:::",
54
+ "related": ["Button", "Card", "IconText", "useBulmaClasses"],
55
+ "storybook": "https://bestax.io/storybook/?path=/story/elements-icon--default",
56
+ "summary": "The `Icon` component is a Bulma-styled wrapper for displaying icons from various libraries (Font Awesome, Material Design Icons, Ionicons, Google Material Icons, Material Symbols, etc.).",
57
+ "import": "import { Icon } from '@allxsmith/bestax-bulma';",
58
+ "sourceFile": "bulma-ui/src/elements/Icon.tsx",
59
+ "rootClass": "icon",
60
+ "parts": [
61
+ {
62
+ "path": "Icon",
63
+ "summary": "The `Icon` component is a Bulma-styled wrapper for displaying icons from various libraries (Font Awesome, Material Design Icons, Ionicons, Google Material Icons, Material Symbols, etc.).",
64
+ "component": null,
65
+ "props": [
66
+ {
67
+ "name": "className",
68
+ "type": "string",
69
+ "default": null,
70
+ "description": "Additional CSS classes to apply.",
71
+ "required": false,
72
+ "inherited": false,
73
+ "deprecated": false
74
+ },
75
+ {
76
+ "name": "textColor",
77
+ "type": "Bulma color | 'inherit' | 'current'",
78
+ "default": null,
79
+ "description": "Text color helper.",
80
+ "required": false,
81
+ "inherited": false,
82
+ "deprecated": false,
83
+ "valuesRef": "helpers/valid-values"
84
+ },
85
+ {
86
+ "name": "color",
87
+ "type": "'primary' | 'link' | 'info' | 'success' | 'warning' | 'danger'",
88
+ "default": null,
89
+ "description": "Bulma color modifier for the icon.",
90
+ "required": false,
91
+ "inherited": false,
92
+ "deprecated": false
93
+ },
94
+ {
95
+ "name": "bgColor",
96
+ "type": "Bulma color | 'inherit' | 'current'",
97
+ "default": null,
98
+ "description": "Background color helper.",
99
+ "required": false,
100
+ "inherited": false,
101
+ "deprecated": false,
102
+ "valuesRef": "helpers/valid-values"
103
+ },
104
+ {
105
+ "name": "name",
106
+ "type": "string",
107
+ "default": null,
108
+ "description": "The icon name, with or without its library prefix (e.g. `'star'` or `'fa-star'`).",
109
+ "required": false,
110
+ "inherited": false,
111
+ "deprecated": false
112
+ },
113
+ {
114
+ "name": "icon",
115
+ "type": "string",
116
+ "default": null,
117
+ "description": "DEPRECATED: Legacy prop, use `name` instead.",
118
+ "required": false,
119
+ "inherited": false,
120
+ "deprecated": false
121
+ },
122
+ {
123
+ "name": "library",
124
+ "type": "'fa' | 'mdi' | 'ion' | 'material-icons' | 'material-symbols'",
125
+ "default": "'fa'",
126
+ "description": "The icon library to use ('fa' = Font Awesome, 'mdi' = Material Design Icons, 'ion' = Ionicons Web Components, 'material-icons' = Google Material Icons, 'material-symbols' = Google Material Symbols). Defaults to the value set in ConfigProvider or 'fa' if not configured.",
127
+ "required": false,
128
+ "inherited": false,
129
+ "deprecated": false
130
+ },
131
+ {
132
+ "name": "variant",
133
+ "type": "string",
134
+ "default": null,
135
+ "description": "Icon style variant (e.g. `'solid'`, `'outlined'`, `'rounded'`).",
136
+ "required": false,
137
+ "inherited": false,
138
+ "deprecated": false
139
+ },
140
+ {
141
+ "name": "features",
142
+ "type": "string | string[]",
143
+ "default": null,
144
+ "description": "Additional modifiers (e.g. `'fa-lg'`, `'fa-spin'`, `'is-size-1'`).",
145
+ "required": false,
146
+ "inherited": false,
147
+ "deprecated": false
148
+ },
149
+ {
150
+ "name": "libraryFeatures",
151
+ "type": "string | string[]",
152
+ "default": null,
153
+ "description": "**DEPRECATED:** Use `variant` and `features` instead.",
154
+ "required": false,
155
+ "inherited": false,
156
+ "deprecated": false
157
+ },
158
+ {
159
+ "name": "size",
160
+ "type": "'small' | 'medium' | 'large'",
161
+ "default": null,
162
+ "description": "Size modifier for the icon container.",
163
+ "required": false,
164
+ "inherited": false,
165
+ "deprecated": false
166
+ },
167
+ {
168
+ "name": "ariaLabel",
169
+ "type": "string",
170
+ "default": "'icon'",
171
+ "description": "ARIA label for accessibility (default: 'icon').",
172
+ "required": false,
173
+ "inherited": false,
174
+ "deprecated": false
175
+ },
176
+ {
177
+ "name": "style",
178
+ "type": "React.CSSProperties",
179
+ "default": null,
180
+ "description": "Inline style object.",
181
+ "required": false,
182
+ "inherited": false,
183
+ "deprecated": false
184
+ },
185
+ {
186
+ "name": "containerClassName",
187
+ "type": "string",
188
+ "default": null,
189
+ "description": "Override the default `'icon'` container class (e.g., `'panel-icon'`).",
190
+ "required": false,
191
+ "inherited": false,
192
+ "deprecated": false
193
+ }
194
+ ],
195
+ "extraProps": [],
196
+ "catchAll": "All standard <span> attributes and Bulma helper props",
197
+ "types": []
198
+ }
199
+ ],
200
+ "cssVars": [
201
+ {
202
+ "css": "--bulma-icon-dimensions",
203
+ "sass": "$icon-dimensions",
204
+ "default": "1.5rem",
205
+ "scope": "component"
206
+ },
207
+ {
208
+ "css": "--bulma-icon-dimensions-small",
209
+ "sass": "$icon-dimensions-small",
210
+ "default": "1rem",
211
+ "scope": "component"
212
+ },
213
+ {
214
+ "css": "--bulma-icon-dimensions-medium",
215
+ "sass": "$icon-dimensions-medium",
216
+ "default": "2rem",
217
+ "scope": "component"
218
+ },
219
+ {
220
+ "css": "--bulma-icon-dimensions-large",
221
+ "sass": "$icon-dimensions-large",
222
+ "default": "3rem",
223
+ "scope": "component"
224
+ },
225
+ {
226
+ "css": "--bulma-icon-text-spacing",
227
+ "sass": "$icon-text-spacing",
228
+ "default": "0.25em",
229
+ "scope": "component"
230
+ }
231
+ ]
232
+ }