@vanelsas/baredom 3.9.0 → 3.11.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 (112) hide show
  1. package/CHANGELOG.md +67 -0
  2. package/custom-elements.json +965 -211
  3. package/dist/base.js +64 -64
  4. package/dist/integrity.json +108 -108
  5. package/dist/x-alert.js +13 -13
  6. package/dist/x-avatar-group.js +9 -9
  7. package/dist/x-avatar.js +10 -10
  8. package/dist/x-badge.js +5 -5
  9. package/dist/x-bento-grid.js +5 -5
  10. package/dist/x-bento-item.js +4 -4
  11. package/dist/x-breadcrumbs.js +13 -13
  12. package/dist/x-button.js +1 -1
  13. package/dist/x-calendar.js +35 -35
  14. package/dist/x-cancel-dialogue.js +13 -13
  15. package/dist/x-card.js +7 -7
  16. package/dist/x-carousel.js +29 -29
  17. package/dist/x-chart.js +45 -45
  18. package/dist/x-checkbox.js +1 -1
  19. package/dist/x-chip.js +1 -1
  20. package/dist/x-code.js +20 -20
  21. package/dist/x-collapse.js +5 -5
  22. package/dist/x-color-picker.js +42 -42
  23. package/dist/x-combobox.js +8 -8
  24. package/dist/x-command-palette.js +26 -26
  25. package/dist/x-confetti.js +23 -23
  26. package/dist/x-container.js +5 -5
  27. package/dist/x-context-menu.js +13 -13
  28. package/dist/x-copy.js +1 -1
  29. package/dist/x-currency-field.js +20 -20
  30. package/dist/x-date-picker.d.ts +2 -2
  31. package/dist/x-date-picker.js +38 -36
  32. package/dist/x-divider.js +7 -7
  33. package/dist/x-drag-panel.js +30 -30
  34. package/dist/x-drawer.js +10 -10
  35. package/dist/x-drop-zone.js +11 -11
  36. package/dist/x-dropdown.js +12 -12
  37. package/dist/x-fieldset.js +5 -5
  38. package/dist/x-file-download.js +4 -4
  39. package/dist/x-file-upload.js +22 -22
  40. package/dist/x-floating-panel.js +3 -3
  41. package/dist/x-form-field.js +12 -12
  42. package/dist/x-form.js +10 -10
  43. package/dist/x-gaussian-blur.js +10 -10
  44. package/dist/x-grid.js +6 -6
  45. package/dist/x-i18n-provider.js +7 -7
  46. package/dist/x-i18n.js +4 -4
  47. package/dist/x-icon.js +7 -7
  48. package/dist/x-image.js +16 -16
  49. package/dist/x-kbd.js +6 -6
  50. package/dist/x-kinetic-canvas.js +24 -24
  51. package/dist/x-kinetic-font.js +17 -17
  52. package/dist/x-kinetic-typography.js +31 -31
  53. package/dist/x-liquid-dock.js +18 -18
  54. package/dist/x-liquid-fill.js +27 -27
  55. package/dist/x-liquid-glass.js +19 -19
  56. package/dist/x-menu-item.js +4 -4
  57. package/dist/x-menu.js +9 -9
  58. package/dist/x-metaball-cursor.js +22 -22
  59. package/dist/x-modal.js +8 -8
  60. package/dist/x-morph-stack.js +37 -37
  61. package/dist/x-multi-combobox.js +35 -35
  62. package/dist/x-navbar.js +7 -7
  63. package/dist/x-neural-glow.js +26 -26
  64. package/dist/x-organic-divider.js +16 -16
  65. package/dist/x-organic-progress.js +25 -25
  66. package/dist/x-organic-shape.js +12 -12
  67. package/dist/x-otp-input.js +19 -19
  68. package/dist/x-pagination.js +14 -14
  69. package/dist/x-particle-button.d.ts +1 -1
  70. package/dist/x-particle-button.js +34 -34
  71. package/dist/x-popover.js +24 -24
  72. package/dist/x-progress-circle.js +6 -6
  73. package/dist/x-progress.js +6 -6
  74. package/dist/x-proximity-list.js +4 -4
  75. package/dist/x-radio.js +10 -10
  76. package/dist/x-range-slider.js +25 -25
  77. package/dist/x-rating.js +21 -21
  78. package/dist/x-ripple-effect.js +9 -9
  79. package/dist/x-scroll-parallax.js +15 -15
  80. package/dist/x-scroll-stack.js +16 -16
  81. package/dist/x-scroll-story.js +16 -16
  82. package/dist/x-scroll-timeline.js +40 -40
  83. package/dist/x-scroll.js +17 -17
  84. package/dist/x-select.js +1 -1
  85. package/dist/x-sidebar.js +11 -11
  86. package/dist/x-skeleton-group.js +12 -12
  87. package/dist/x-skeleton.js +1 -1
  88. package/dist/x-slider.js +12 -12
  89. package/dist/x-soft-body.js +17 -17
  90. package/dist/x-spacer.js +4 -4
  91. package/dist/x-spinner.js +3 -3
  92. package/dist/x-splash.js +12 -12
  93. package/dist/x-split-pane.js +8 -8
  94. package/dist/x-spotlight-card.js +12 -12
  95. package/dist/x-stat.js +10 -10
  96. package/dist/x-stepper.js +2 -2
  97. package/dist/x-switch.js +9 -9
  98. package/dist/x-table-cell.js +18 -18
  99. package/dist/x-table-row.js +8 -8
  100. package/dist/x-table.js +13 -13
  101. package/dist/x-tabs.js +11 -11
  102. package/dist/x-text-area.js +12 -12
  103. package/dist/x-theme.js +25 -25
  104. package/dist/x-timeline-item.js +5 -5
  105. package/dist/x-timeline.js +5 -5
  106. package/dist/x-toast.js +21 -21
  107. package/dist/x-toaster.js +6 -6
  108. package/dist/x-tooltip.js +11 -11
  109. package/dist/x-trace-history.js +122 -122
  110. package/dist/x-typography.js +6 -6
  111. package/dist/x-welcome-tour.js +59 -59
  112. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,73 @@
2
2
 
3
3
  All notable changes to BareDOM will be documented in this file.
4
4
 
5
+ ## [3.11.0] - 2026-08-28
6
+
7
+ ### Fixed
8
+
9
+ - **Event detail keys are published as the component dispatches them.** `x-particle-button`
10
+ dispatches `#js {:press-x … :press-y …}`, so those are the keys on the event, but the generated
11
+ types camel-cased them and promised `pressX` and `pressY`. Every typed caller read a field that
12
+ is not there. The `.d.ts`, `custom-elements.json` and all five adapters now say `"press-x"`,
13
+ quoted because a hyphenated key is not a bare identifier in a TypeScript type.
14
+
15
+ This supersedes the detail half of the 3.3.0 fix "TypeScript declarations", which corrected the
16
+ same invalid identifiers by renaming them. That made the types compile and made them wrong.
17
+ Property names are unaffected and still camel-case, because a property reflects an attribute and
18
+ genuinely changes spelling.
19
+
20
+ Breaking for anyone writing `e.detail.pressX` — which never resolved to anything. Only
21
+ `x-particle-button` is affected; no other component has a kebab-case detail key. Every adapter
22
+ published the wrong key, so all five are released with it: `-react` 2.4.1, `-angular` 2.10.1,
23
+ `-vue` 0.4.2, `-svelte` 0.4.2, `-solid` 0.4.1.
24
+
25
+ ### Added
26
+
27
+ - **`detail` on every event in `custom-elements.json`** — what an event carries, as data, beside
28
+ the TypeScript in `type.text`. A reader no longer parses a type expression to learn the shape.
29
+ Both come from one function, so they cannot disagree.
30
+
31
+ ### Changed
32
+
33
+ - **`scripts/check_event_api.bb` also compares the manifest with the model.** It read the model on
34
+ both sides, so anything the generator did between them was invisible — which is how the
35
+ camel-casing above survived it. It now compares names and types over the union of both sides, so
36
+ a schema edited without regenerating is caught too.
37
+
38
+ ## [3.10.0] - 2026-08-28
39
+
40
+ ### Changed
41
+
42
+ - **`x-date-picker` change details are one shape in both modes.** `x-date-picker-change` and
43
+ `x-date-picker-change-request` carried a different key set per mode — `value` in single mode,
44
+ `start` and `end` in range mode, and `date` on a range click — while `event-schema` declared only
45
+ the first. Every key is now always present and `null` where the mode has nothing to say, so the
46
+ declaration is true and a handler null-checks instead of testing for a key that was never there.
47
+
48
+ This widens the published types from `string` to `string | null` for `value`, `date`, `start` and
49
+ `end` on those two events, in `custom-elements.json`, the `.d.ts` files and all five framework
50
+ adapters. A consumer writing `const v: string = e.detail.value` will need a null check. Nothing
51
+ about when the events fire has changed.
52
+
53
+ ### Fixed
54
+
55
+ - **The Svelte and Vue adapters no longer write `"null"` into a bound value.** Released as
56
+ `@vanelsas/baredom-svelte` 0.4.1 and `@vanelsas/baredom-vue` 0.4.1. Both coerced the
57
+ change detail unconditionally — `String(detail.value)`, `Number(detail.page)` — so a detail field
58
+ that did not apply arrived as the literal string `"null"` in `bind:value` / `v-model` and was
59
+ written back onto the element as an attribute. They now write only when the field is present.
60
+ `false`, `0` and `""` are values and still write; only `null` and `undefined` are skipped.
61
+ Affects the twelve form controls in each adapter. React, Solid and Angular do not write back and
62
+ were never affected.
63
+
64
+ ### Added
65
+
66
+ - **`scripts/check_event_api.bb`** — a CI check that reads each component's dispatch calls and
67
+ asserts the manifest's event details agree with them. It reads forms rather than text, follows a
68
+ detail through a `let`, a helper, a namespace alias and `clj->js`, and reports what it could not
69
+ read rather than counting it as agreement. 198 of 201 events are compared; the three it cannot
70
+ resolve are named. It is what found the `x-date-picker` mismatch above.
71
+
5
72
  ## [3.9.0] - 2026-08-26
6
73
 
7
74
  The manifest declares `schemaVersion 1.0.0` and omitted three fields the schema defines. It now