create-bestax 4.2.15 → 4.2.16

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.
package/dist/constants.js CHANGED
@@ -289,7 +289,7 @@ export const ICON_LIBRARIES = [
289
289
  // 0.x, so the caret holds the minor: this follows the newest minor
290
290
  // bestax-bulma's material-symbols peer range admits, not the newest
291
291
  // published one, or npm refuses the install as a peer conflict.
292
- packageVersion: '^0.46.0',
292
+ packageVersion: '^0.47.0',
293
293
  // The package's bare import puts the outlined, rounded and sharp fonts
294
294
  // into the build. Outlined is the style Icon renders by default, so it is
295
295
  // the only one imported.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-bestax",
3
- "version": "4.2.15",
3
+ "version": "4.2.16",
4
4
  "description": "Create a new bestax-bulma project",
5
5
  "type": "module",
6
6
  "bin": {
@@ -41,7 +41,7 @@
41
41
  "prompts": "^2.4.2",
42
42
  "react": "^18.0.0 || ^19.0.0",
43
43
  "react-dom": "^18.0.0 || ^19.0.0",
44
- "@allxsmith/bestax-bulma": "^5.27.4"
44
+ "@allxsmith/bestax-bulma": "^5.27.5"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@jest/globals": "^30.0.0",
@@ -33,7 +33,7 @@ Bulma forms are a three-tier structure. bestax models it directly:
33
33
 
34
34
  ```
35
35
  Field // container + layout (horizontal / grouped / hasAddons)
36
- ├── label // rendered from Field's `label` prop, or <Field.Label> when horizontal
36
+ ├── label // rendered from Field's `label` prop, or a <label> you put in <Field.Label>
37
37
  └── Control // wraps ONE input; adds icons + loading
38
38
  ├── InputBase / SelectBase / TextAreaBase // the raw styled element
39
39
  └── <p class="help">…</p> // help / validation message
@@ -138,7 +138,8 @@ leave it off when a label already names the Slider. The group inputs (`Checkboxe
138
138
  `DateRangeInput`) associate their `label` too, but group-style: the wrapper gets
139
139
  `role="group"`/`"radiogroup"` and `aria-labelledby` pointing at the label. Composing yourself
140
140
  also associates: a labeled `Field` names the one control it holds, whether a composed
141
- `InputBase`/`SelectBase`/`TextAreaBase` or any input above (through the id), or a group
141
+ `InputBase`/`SelectBase`/`TextAreaBase`, a composed `DateInputBase`/`TimeInputBase`/
142
+ `DateTimeInputBase` that is not `inline`, or any input above (through the id), or a group
142
143
  (through `aria-labelledby`). Either way, an `aria-label` or `aria-labelledby` you give a
143
144
  group wins over the label. A `Checkbox`, `Radio` or `Switch` takes nothing from a `Field`:
144
145
  each is named by its own children, so put the text there. The association is skipped for
@@ -170,12 +170,23 @@ Recipes built on addons, each written out in full in the docs:
170
170
 
171
171
  ## Horizontal field with explicit label/body
172
172
 
173
+ `Field.Label` is the label column, not a `<label>`, so text placed straight in it names nothing:
174
+ put a `<label className="label">` inside it with `htmlFor` pointing at the input's `id`.
175
+
173
176
  ```tsx
174
177
  <Field horizontal>
175
- <Field.Label size="normal">Email</Field.Label>
178
+ <Field.Label size="normal">
179
+ <label className="label" htmlFor="horizontal-email">
180
+ Email
181
+ </label>
182
+ </Field.Label>
176
183
  <Field.Body>
177
184
  <Control iconLeftName="envelope" hasIconsLeft>
178
- <InputBase type="email" placeholder="you@example.com" />
185
+ <InputBase
186
+ id="horizontal-email"
187
+ type="email"
188
+ placeholder="you@example.com"
189
+ />
179
190
  </Control>
180
191
  </Field.Body>
181
192
  </Field>