phoenix_duskmoon 9.13.0 → 9.14.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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,21 @@
1
+ # Unreleased
2
+
3
+ ### Added
4
+
5
+ - Native Core components: carousel, countdown, diff, keyboard keys, radial progress,
6
+ floating actions, swap, filter group, hero, indicator, join, mask, sidebar layout,
7
+ stack and megamenu, with Storybook examples.
8
+ - Chat scroll container and timeline setting; chip interaction attributes and events.
9
+
10
+ ### Changed
11
+
12
+ - Pin published DuskMoon dependencies to current exact versions: Core/CSS Art
13
+ 1.19.9, Elements/Art Elements 1.7.6 and current individual element versions.
14
+ - Use Core spinner/stat styles and remove resolved collapse, highlighting and
15
+ duplicate form-submission workarounds. Preserve existing navigation and overlay APIs.
16
+ - Load Storybook JavaScript as an ES module and resolve workspace assets independently
17
+ of the umbrella reloader's working directory, including hoisted production dependencies.
18
+
1
19
  # [9.0.0-rc.1](https://github.com/duskmoon-dev/phoenix-duskmoon-ui/compare/v9.0.0-rc.0...v9.0.0-rc.1) (2026-02-28)
2
20
 
3
21
 
package/README.md CHANGED
@@ -142,15 +142,44 @@ Components that require hooks:
142
142
 
143
143
  ## Available Components
144
144
 
145
- - **Action**: buttons, dropdowns, links, menus, toggles
146
- - **Data Display**: accordion, avatar, badge, card, chip, collapse, datetime, flash, git repository, list, markdown, markdown body, pagination, popover, progress, skeleton, stat, table, timeline, tooltip
147
- - **Data Entry**: autocomplete, cascader, checkbox, compact input, file upload, form, input, multi-select, OTP input, PIN input, radio, rating, segment control, select, slider, switch, textarea, time input, tree select
145
+ - **Action**: buttons, dropdowns, floating actions, links, menus, swaps, toggles
146
+ - **Data Display**: accordion, avatar, badge, card, carousel, chat, chat scroll, chip, collapse, countdown, datetime, diff, keyboard keys, flash, git repository, list, markdown, markdown body, pagination, popover, progress, radial progress, skeleton, stat, table, timeline, tooltip
147
+ - **Data Entry**: autocomplete, cascader, checkbox, compact input, file upload, filter group, form, input, multi-select, OTP input, PIN input, radio, rating, segment control, select, slider, switch, textarea, time input, tree select
148
148
  - **Feedback**: dialog, loading, snackbar, toast
149
- - **Navigation**: actionbar, appbar, bottom nav, breadcrumb, left menu, navbar, nested menu, page footer, page header, stepper, steps, tabs
150
- - **Layout**: bottom sheet, divider, drawer, theme switcher
149
+ - **Navigation**: actionbar, appbar, bottom nav, breadcrumb, left menu, megamenu, navbar, nested menu, page footer, page header, stepper, steps, tabs
150
+ - **Layout**: bottom sheet, divider, drawer, hero, indicator, join, mask, sidebar layout, stack, theme switcher
151
151
  - **CSS Art**: button noise, eclipse, plasma ball, signature, snow, spotlight search
152
152
 
153
153
 
154
+ ## Upstream design alignment
155
+
156
+ The current frontend uses Core/CSS Art 1.19.9 and Elements/Art Elements 1.7.6.
157
+ Individually published element dependencies are pinned to their current versions;
158
+ see the [contract audit](apps/phoenix_duskmoon/guides/upstream-design-alignment.md) for the exact set.
159
+
160
+ The new Core primitives render native HTML and use the packaged CSS. Applications
161
+ own countdown timing, filter state, progress values and layout state. Carousel uses
162
+ native scrolling, swap uses a checkbox, floating actions and megamenu
163
+ use the browser Popover API. No element registration is needed for these primitives.
164
+
165
+ ```heex
166
+ <.dm_indicator>
167
+ <:indicator><span class="badge badge-primary">3</span></:indicator>
168
+ <button type="button" class="btn">Inbox</button>
169
+ </.dm_indicator>
170
+
171
+ <.dm_sidebar_layout>
172
+ <:sidebar><nav aria-label="Workspace">Workspace links</nav></:sidebar>
173
+ <main>Page content</main>
174
+ </.dm_sidebar_layout>
175
+ ```
176
+
177
+ Existing `dm_menu`, `dm_drawer` and `dm_bottom_sheet` retain their Elements methods
178
+ and events. `dm_loading_spinner` now follows Core's reduced-motion behavior, and
179
+ `dm_stat` uses its semantic stat layout. Chat scroll and chip event examples are
180
+ available in Storybook. Browser `File` objects from chat events require the
181
+ application's upload mechanism; they cannot be sent as LiveView JSON payloads.
182
+
154
183
  ## Live Storybook
155
184
 
156
185
  [Live Storybook](https://duskmoon-storybook.gsmlg.dev)
@@ -11,13 +11,6 @@
11
11
  @import "@duskmoon-dev/core/components";
12
12
  @import "./element-theme-bridge.css";
13
13
 
14
- @layer components {
15
- /* WORKAROUND(upstream): duskmoon-dev/duskmoonui#43 */
16
- .collapse-card:not(.collapse-open):not(.show) .collapse-content > * {
17
- padding-block-end: 0;
18
- }
19
- }
20
-
21
14
  /* CSS Art — decorative/animated visual effects from @duskmoon-dev/css-art */
22
15
  @import "@duskmoon-dev/css-art/dist/art/atom.css";
23
16
  @import "@duskmoon-dev/css-art/dist/art/cat-stargazer.css";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "phoenix_duskmoon",
3
- "version": "9.13.0",
3
+ "version": "9.14.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./priv/static/assets/js/phoenix_duskmoon.js",
@@ -35,10 +35,10 @@
35
35
  "registry": "https://registry.npmjs.org/"
36
36
  },
37
37
  "dependencies": {
38
- "@duskmoon-dev/art-elements": "1.7.2",
39
- "@duskmoon-dev/core": "1.18.1",
40
- "@duskmoon-dev/css-art": "1.18.1",
41
- "@duskmoon-dev/elements": "1.7.2"
38
+ "@duskmoon-dev/art-elements": "1.7.6",
39
+ "@duskmoon-dev/core": "1.19.9",
40
+ "@duskmoon-dev/css-art": "1.19.9",
41
+ "@duskmoon-dev/elements": "1.7.6"
42
42
  },
43
43
  "devDependencies": {
44
44
  "@mdi/svg": "7.4.47",