@charcuterie/ui 3.8.1 → 3.10.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 (40) hide show
  1. package/README.md +10 -0
  2. package/dist/Badge/Badge.d.ts +2 -37
  3. package/dist/Badge/Badge.d.ts.map +1 -1
  4. package/dist/Badge/Badge.js +15 -30
  5. package/dist/Badge/Badge.js.map +1 -1
  6. package/dist/Badge/useBadgeShape.d.ts +57 -0
  7. package/dist/Badge/useBadgeShape.d.ts.map +1 -0
  8. package/dist/Badge/useBadgeShape.js +35 -0
  9. package/dist/Badge/useBadgeShape.js.map +1 -0
  10. package/dist/BadgeButton/BadgeButton.d.ts +59 -0
  11. package/dist/BadgeButton/BadgeButton.d.ts.map +1 -0
  12. package/dist/BadgeButton/BadgeButton.js +64 -0
  13. package/dist/BadgeButton/BadgeButton.js.map +1 -0
  14. package/dist/Slider/Slider.d.ts +85 -0
  15. package/dist/Slider/Slider.d.ts.map +1 -0
  16. package/dist/Slider/Slider.js +193 -0
  17. package/dist/Slider/Slider.js.map +1 -0
  18. package/dist/Slider/sliderValue.d.ts +48 -0
  19. package/dist/Slider/sliderValue.d.ts.map +1 -0
  20. package/dist/Slider/sliderValue.js +98 -0
  21. package/dist/Slider/sliderValue.js.map +1 -0
  22. package/dist/index.d.ts +5 -0
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +2 -0
  25. package/dist/index.js.map +1 -1
  26. package/package.json +1 -1
  27. package/src/Badge/Badge.tsx +30 -113
  28. package/src/Badge/useBadgeShape.tsx +142 -0
  29. package/src/BadgeButton/BadgeButton.mdx +67 -0
  30. package/src/BadgeButton/BadgeButton.stories.tsx +199 -0
  31. package/src/BadgeButton/BadgeButton.test.tsx +164 -0
  32. package/src/BadgeButton/BadgeButton.tsx +129 -0
  33. package/src/Slider/Slider.mdx +78 -0
  34. package/src/Slider/Slider.stories.tsx +256 -0
  35. package/src/Slider/Slider.test.tsx +241 -0
  36. package/src/Slider/Slider.tsx +412 -0
  37. package/src/Slider/sliderValue.test.ts +156 -0
  38. package/src/Slider/sliderValue.ts +149 -0
  39. package/src/index.ts +8 -0
  40. package/src/sourceRules.test.ts +14 -1
package/src/index.ts CHANGED
@@ -65,6 +65,9 @@ export type {
65
65
  export { Alert } from "./Alert/Alert.tsx"
66
66
  export type { BadgeProps } from "./Badge/Badge.tsx"
67
67
  export { Badge } from "./Badge/Badge.tsx"
68
+ export type { BadgeShapeProps } from "./Badge/useBadgeShape.tsx"
69
+ export type { BadgeButtonProps } from "./BadgeButton/BadgeButton.tsx"
70
+ export { BadgeButton } from "./BadgeButton/BadgeButton.tsx"
68
71
  export type {
69
72
  BoardMove,
70
73
  BoardProps,
@@ -321,6 +324,11 @@ export type {
321
324
  SkeletonShape,
322
325
  } from "./Skeleton/Skeleton.tsx"
323
326
  export { Skeleton } from "./Skeleton/Skeleton.tsx"
327
+ export type {
328
+ SliderProps,
329
+ SliderSize,
330
+ } from "./Slider/Slider.tsx"
331
+ export { Slider } from "./Slider/Slider.tsx"
324
332
  export type {
325
333
  SortableTableHeaderProps,
326
334
  SortDirection,
@@ -446,7 +446,20 @@ test("the barrel is the only place components are re-exported", async () => {
446
446
  // out of this count by the `<Name>/<Name>.tsx` rule, while still
447
447
  // being exported from the barrel — a consumer measuring its own
448
448
  // `itemBlockSize` needs the number the rows are spaced by.
449
- expect(componentNames.length).toBe(51)
449
+ //
450
+ // `Slider` — the range control the fleet had no way to ask for — is
451
+ // +1 -> 52. `sliderValue.ts` is its member and stays out of this
452
+ // count by the `<Name>/<Name>.tsx` rule; it is not exported from the
453
+ // barrel either, because a consumer sets `min`/`max`/`step` and never
454
+ // does the arithmetic itself.
455
+ //
456
+ // `BadgeButton` — a `Badge` you can press — is +1 -> 53. It is to
457
+ // `Badge` what `ButtonLink` is to `Button`: a sibling element
458
+ // sharing one paint, here through `useBadgeShape`, which is a
459
+ // member of `Badge/` and so stays out of this count and out of the
460
+ // barrel as a component. Its PROPS type is exported, because a
461
+ // consumer writing a wrapper needs to name the visual half.
462
+ expect(componentNames.length).toBe(53)
450
463
 
451
464
  for (const name of componentNames) {
452
465
  expect(barrel).toContain(`export { ${name} }`)