@mittwald/flow-react-components 1.5.0-next.2 → 1.5.0-next.21

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 (91) hide show
  1. package/AGENTS.md +14 -9
  2. package/USAGE.md +2 -0
  3. package/dist/assets/component-index.json +1 -1
  4. package/dist/assets/doc-properties.json +1 -1
  5. package/dist/css/all-layered.css +1 -1
  6. package/dist/css/all.css +1 -1
  7. package/dist/js/packages/components/src/components/Accordion/Accordion.module.mjs.map +1 -1
  8. package/dist/js/packages/components/src/components/ActionGroup/ActionGroup.mjs.map +1 -1
  9. package/dist/js/packages/components/src/components/ActionGroup/ActionGroup.module.mjs.map +1 -1
  10. package/dist/js/packages/components/src/components/Autocomplete/Autocomplete.mjs +14 -7
  11. package/dist/js/packages/components/src/components/Autocomplete/Autocomplete.mjs.map +1 -1
  12. package/dist/js/packages/components/src/components/Button/Button.mjs +5 -17
  13. package/dist/js/packages/components/src/components/Button/Button.mjs.map +1 -1
  14. package/dist/js/packages/components/src/components/Button/Button.module.mjs.map +1 -1
  15. package/dist/js/packages/components/src/components/CartesianChart/components/YAxis/YAxis.mjs +5 -1
  16. package/dist/js/packages/components/src/components/CartesianChart/components/YAxis/YAxis.mjs.map +1 -1
  17. package/dist/js/packages/components/src/components/Checkbox/Checkbox.mjs +3 -3
  18. package/dist/js/packages/components/src/components/Checkbox/Checkbox.mjs.map +1 -1
  19. package/dist/js/packages/components/src/components/CheckboxButton/CheckboxButton.mjs +3 -3
  20. package/dist/js/packages/components/src/components/CheckboxButton/CheckboxButton.mjs.map +1 -1
  21. package/dist/js/packages/components/src/components/CheckboxGroup/CheckboxGroup.mjs +3 -3
  22. package/dist/js/packages/components/src/components/CheckboxGroup/CheckboxGroup.mjs.map +1 -1
  23. package/dist/js/packages/components/src/components/CodeEditor/CodeEditor.mjs +24 -10
  24. package/dist/js/packages/components/src/components/CodeEditor/CodeEditor.mjs.map +1 -1
  25. package/dist/js/packages/components/src/components/ComboBox/ComboBox.mjs +3 -3
  26. package/dist/js/packages/components/src/components/ComboBox/ComboBox.mjs.map +1 -1
  27. package/dist/js/packages/components/src/components/ContextMenu/ContextMenu.mjs +5 -1
  28. package/dist/js/packages/components/src/components/ContextMenu/ContextMenu.mjs.map +1 -1
  29. package/dist/js/packages/components/src/components/DatePicker/DatePicker.mjs +6 -5
  30. package/dist/js/packages/components/src/components/DatePicker/DatePicker.mjs.map +1 -1
  31. package/dist/js/packages/components/src/components/DateRangePicker/DateRangePicker.mjs +4 -3
  32. package/dist/js/packages/components/src/components/DateRangePicker/DateRangePicker.mjs.map +1 -1
  33. package/dist/js/packages/components/src/components/FieldError/FieldError.mjs +40 -31
  34. package/dist/js/packages/components/src/components/FieldError/FieldError.mjs.map +1 -1
  35. package/dist/js/packages/components/src/components/FileDropZone/FileDropZone.mjs +8 -6
  36. package/dist/js/packages/components/src/components/FileDropZone/FileDropZone.mjs.map +1 -1
  37. package/dist/js/packages/components/src/components/FileField/FileField.mjs +3 -3
  38. package/dist/js/packages/components/src/components/FileField/FileField.mjs.map +1 -1
  39. package/dist/js/packages/components/src/components/Flex/Flex.mjs +5 -5
  40. package/dist/js/packages/components/src/components/Flex/Flex.mjs.map +1 -1
  41. package/dist/js/packages/components/src/components/Link/Link.mjs.map +1 -1
  42. package/dist/js/packages/components/src/components/List/components/ListItemView/ListItemView.module.mjs.map +1 -1
  43. package/dist/js/packages/components/src/components/NumberField/NumberField.mjs +3 -2
  44. package/dist/js/packages/components/src/components/NumberField/NumberField.mjs.map +1 -1
  45. package/dist/js/packages/components/src/components/PasswordCreationField/PasswordCreationField.mjs +42 -19
  46. package/dist/js/packages/components/src/components/PasswordCreationField/PasswordCreationField.mjs.map +1 -1
  47. package/dist/js/packages/components/src/components/PasswordCreationField/components/ComplexityIndicator/ComplexityIndicator.mjs +2 -2
  48. package/dist/js/packages/components/src/components/PasswordCreationField/components/ComplexityIndicator/ComplexityIndicator.mjs.map +1 -1
  49. package/dist/js/packages/components/src/components/PasswordCreationField/lib/usePolicyValidationResult.mjs +12 -0
  50. package/dist/js/packages/components/src/components/PasswordCreationField/lib/usePolicyValidationResult.mjs.map +1 -1
  51. package/dist/js/packages/components/src/components/RadioGroup/RadioGroup.mjs +3 -2
  52. package/dist/js/packages/components/src/components/RadioGroup/RadioGroup.mjs.map +1 -1
  53. package/dist/js/packages/components/src/components/Rating/Rating.mjs +3 -2
  54. package/dist/js/packages/components/src/components/Rating/Rating.mjs.map +1 -1
  55. package/dist/js/packages/components/src/components/SearchField/SearchField.mjs +3 -3
  56. package/dist/js/packages/components/src/components/SearchField/SearchField.mjs.map +1 -1
  57. package/dist/js/packages/components/src/components/SegmentedControl/SegmentedControl.mjs +3 -2
  58. package/dist/js/packages/components/src/components/SegmentedControl/SegmentedControl.mjs.map +1 -1
  59. package/dist/js/packages/components/src/components/Select/Select.mjs +3 -3
  60. package/dist/js/packages/components/src/components/Select/Select.mjs.map +1 -1
  61. package/dist/js/packages/components/src/components/Slider/Slider.mjs +8 -8
  62. package/dist/js/packages/components/src/components/Slider/Slider.mjs.map +1 -1
  63. package/dist/js/packages/components/src/components/Slider/Slider.module.mjs.map +1 -1
  64. package/dist/js/packages/components/src/components/Switch/Switch.mjs +3 -2
  65. package/dist/js/packages/components/src/components/Switch/Switch.mjs.map +1 -1
  66. package/dist/js/packages/components/src/components/TextArea/TextArea.mjs +3 -3
  67. package/dist/js/packages/components/src/components/TextArea/TextArea.mjs.map +1 -1
  68. package/dist/js/packages/components/src/components/TextField/TextField.mjs +3 -3
  69. package/dist/js/packages/components/src/components/TextField/TextField.mjs.map +1 -1
  70. package/dist/js/packages/components/src/components/TimeField/TimeField.mjs +5 -3
  71. package/dist/js/packages/components/src/components/TimeField/TimeField.mjs.map +1 -1
  72. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormRootError/FormRootError.mjs +6 -3
  73. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormRootError/FormRootError.mjs.map +1 -1
  74. package/dist/js/packages/components/src/lib/hooks/fieldErrorRenderedContext.mjs +16 -0
  75. package/dist/js/packages/components/src/lib/hooks/fieldErrorRenderedContext.mjs.map +1 -0
  76. package/dist/js/packages/components/src/lib/hooks/useFieldComponent.mjs +8 -7
  77. package/dist/js/packages/components/src/lib/hooks/useFieldComponent.mjs.map +1 -1
  78. package/dist/js/packages/components/src/lib/hooks/useFieldError.mjs +34 -21
  79. package/dist/js/packages/components/src/lib/hooks/useFieldError.mjs.map +1 -1
  80. package/dist/types/components/ActionGroup/ActionGroup.d.ts +3 -2
  81. package/dist/types/components/Button/Button.d.ts +7 -1
  82. package/dist/types/components/CartesianChart/components/YAxis/YAxis.d.ts +7 -0
  83. package/dist/types/components/FileField/FileField.d.ts +1 -1
  84. package/dist/types/components/Flex/Flex.d.ts +4 -0
  85. package/dist/types/components/Link/Link.d.ts +5 -1
  86. package/dist/types/components/PasswordCreationField/components/ComplexityIndicator/ComplexityIndicator.d.ts +5 -0
  87. package/dist/types/integrations/react-hook-form/components/FormRootError/FormRootError.d.ts +12 -2
  88. package/dist/types/lib/hooks/fieldErrorRenderedContext.d.ts +1 -0
  89. package/dist/types/lib/hooks/useFieldComponent.d.ts +15 -4
  90. package/dist/types/lib/hooks/useFieldError.d.ts +7 -1
  91. package/package.json +10 -9
package/AGENTS.md CHANGED
@@ -1,10 +1,10 @@
1
1
  # @mittwald/flow-react-components — Agent Guide
2
2
 
3
- > **Building an application _with_ Flow?** Read [USAGE.md](./USAGE.md) instead —
4
- > component selection, layout and spacing, what is safe to depend on, and where
5
- > the documentation lives in machine-readable form. This guide is about changing
6
- > Flow itself, and its patterns (`flowComponent`, `PropsContext`, views, CSS
7
- > modules) do not belong in an application.
3
+ **Building an app or mStudio extension in your own project?** Read
4
+ [USAGE.md](./USAGE.md) first — component selection, templates, layout and
5
+ spacing, what is safe to depend on. Everything below is for changing Flow, and
6
+ its patterns (`flowComponent`, `PropsContext`, views, CSS modules) do not belong
7
+ in an application.
8
8
 
9
9
  Component patterns for the core package. Read the
10
10
  [root AGENTS.md](https://github.com/mittwald/flow/blob/main/AGENTS.md) first for
@@ -313,8 +313,10 @@ if ("action" in props) {
313
313
  | `*.test-types.tsx` | Generic/typed public APIs — `expectTypeOf` plus `@ts-expect-error` negative assertions. |
314
314
 
315
315
  Run: `pnpm nx test:unit components`,
316
- `pnpm nx test:browser components --browser.name=webkit`. Browser tests need
317
- `pnpm test:browser:prepare` once.
316
+ `pnpm nx test:browser components --browser.name=webkit`. The browser targets
317
+ install the Playwright browsers for you **locally**; `pnpm test:browser:prepare`
318
+ adds the system libraries Linux needs. On CI they do nothing — the workflows
319
+ provision browsers themselves, per job and under their own cache keys.
318
320
 
319
321
  **Iterate through nx too**, not with a bare `vitest`. Everything after the `--`
320
322
  goes to vitest, so a single file and watch mode have nx targets as well:
@@ -367,8 +369,11 @@ Three traps cost time in every new browser test:
367
369
  initially: every `locales/` directory in the package gets the new file.
368
370
  - Icon-only buttons get a localized `aria-label`; decorative icons are
369
371
  `aria-hidden` (the `Icon` component handles this when no label is given).
370
- - Form fields wire label/description/error via `useFieldComponent` (generates
371
- ids, sets `aria-describedby`).
372
+ - Form fields wire label/description/error via `useFieldComponent`.
373
+ `wrapperProps` go on the outer element, `controlProps` on what assistive
374
+ technology lands on (the input or the group), spread after `rest`: its
375
+ `aria-describedby` references the error only while one is rendered and already
376
+ contains the consumer's own ids.
372
377
 
373
378
  ## Public API surfaces
374
379
 
package/USAGE.md CHANGED
@@ -182,6 +182,8 @@ against Flow components.**
182
182
  - `LayoutCard` — the page-content container; brings its own padding.
183
183
  - `Section` — vertical structure inside a card. Spacing between sections is
184
184
  automatic, driven by sibling selectors, so `Section`s must be actual siblings.
185
+ A `Modal`'s `Content` brings only padding, like a `LayoutCard`: put its
186
+ components in a `Section`, or they stick together.
185
187
  - `ColumnLayout` — the column grid, with `gap` / `rowGap` / `columnGap`
186
188
  (`s | m | l | xl`).
187
189
  - `Flex` — the general-purpose flex container. It is the one component with a