phoenix_duskmoon 10.0.5 → 10.0.7

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,35 @@
1
+ # [10.0.7](https://github.com/duskmoon-dev/phoenix-duskmoon-ui/compare/v10.0.6...v10.0.7) (2026-10-19)
2
+
3
+ ### Fixed
4
+
5
+ - Honor explicit `dm_checkbox` values and support `hidden_input={false}` for
6
+ record-selection arrays, preserving boolean checkbox defaults and resolving
7
+ [#205](https://github.com/duskmoon-dev/phoenix-duskmoon-ui/issues/205).
8
+ - Document record selection with checked and unchecked examples in Storybook.
9
+
10
+ # [10.0.6](https://github.com/duskmoon-dev/phoenix-duskmoon-ui/compare/v10.0.5...v10.0.6) (2026-10-19)
11
+
12
+ ### Changed
13
+
14
+ - Update Core/CSS Art to 1.20.6, Elements/Art Elements and supporting individual
15
+ element packages to 1.9.3, and React Components to 0.5.2.
16
+ - Document Markdown Input's lazy renderer, math and Mermaid asset overrides,
17
+ plus custom-button accessible-name synchronization.
18
+
19
+ ### Fixed
20
+
21
+ - Apply `form_class` to the actual schema form while preserving upstream default
22
+ classes, typed values, reset and reconnect behavior.
23
+ - Use published React controls for read-only number stepping and required Select
24
+ accessibility, removing the obsolete local workarounds.
25
+ - Use Core's secondary pagination selectors for active and hovered pages while
26
+ retaining the existing neutral-color integration.
27
+
28
+ ### Validation
29
+
30
+ - Cover button accessible names, secondary pagination in both themes, narrow
31
+ Megamenu layouts and the updated React Form contracts.
32
+
1
33
  # [10.0.5](https://github.com/duskmoon-dev/phoenix-duskmoon-ui/compare/v10.0.4...v10.0.5) (2026-10-18)
2
34
 
3
35
  ### Added
@@ -19,20 +19,13 @@ export function ReactField({ config, value, errors, disabled, onChange }) {
19
19
  control = h(Checkbox, { ...common, required: config.required, checked: Boolean(value), onChange: (event) => onChange(event.target.checked) });
20
20
  break;
21
21
  case "number":
22
- // TODO(upstream): duskmoon-dev/duskmoon-react#82
23
- // WORKAROUND(upstream): duskmoon-dev/duskmoon-react#82 — readOnly does not guard upstream stepping.
24
22
  control = h(InputNumber, { ...common, ...textAttributes, min: config.min ?? undefined, max: config.max ?? undefined, step: config.step ?? undefined,
25
- controls: config.readonly ? false : undefined, keyboard: config.readonly ? false : undefined, value: value ?? null, onChange });
23
+ value: value ?? null, onChange });
26
24
  break;
27
25
  case "select":
28
26
  case "multiselect":
29
- // TODO(upstream): duskmoon-dev/duskmoon-react#83
30
- // WORKAROUND(upstream): duskmoon-dev/duskmoon-react#83 — only the mounted trigger can receive required ARIA in 0.5.0.
31
- control = h(Select, { ...common, placeholder: config.placeholder ?? undefined, ref: (container) => {
32
- const trigger = container?.querySelector('button[aria-haspopup="listbox"]');
33
- if (config.required) trigger?.setAttribute("aria-required", "true");
34
- else trigger?.removeAttribute("aria-required");
35
- }, value: value ?? undefined, mode: config.type === "multiselect" ? "multiple" : undefined,
27
+ control = h(Select, { ...common, placeholder: config.placeholder ?? undefined, "aria-required": config.required ? "true" : undefined,
28
+ value: value ?? undefined, mode: config.type === "multiselect" ? "multiple" : undefined,
36
29
  options: config.options || [], showSearch: true, allowClear: true, onChange: (next) => onChange(next ?? null) });
37
30
  break;
38
31
  case "textarea":
@@ -42,9 +42,8 @@ export const DuskmoonReactForm = {
42
42
  this.renderSchema();
43
43
  },
44
44
  renderSchema() {
45
- // TODO(upstream): duskmoon-dev/duskmoon-react#85 - JsonSchemaForm has no native form class prop.
46
45
  this.schemaRoot.render(React.createElement(ReactSchemaForm, {
47
- key: this.schemaRevision, compiled: this.compiledSchema, value: this.values,
46
+ key: this.schemaRevision, className: this.schemaElement.dataset.formClass, compiled: this.compiledSchema, value: this.values,
48
47
  defaultValue: this.initialValues, errors: this.errors, disabled: this.disconnectedState,
49
48
  onChange: (values) => {
50
49
  const path = changedPath(this.values, values);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "phoenix_duskmoon",
3
- "version": "10.0.5",
3
+ "version": "10.0.7",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./priv/static/assets/js/phoenix_duskmoon.js",
@@ -37,11 +37,11 @@
37
37
  "registry": "https://registry.npmjs.org/"
38
38
  },
39
39
  "dependencies": {
40
- "@duskmoon-dev/art-elements": "1.9.1",
41
- "@duskmoon-dev/components": "0.5.0",
42
- "@duskmoon-dev/core": "1.20.4",
43
- "@duskmoon-dev/css-art": "1.20.4",
44
- "@duskmoon-dev/elements": "1.9.1",
40
+ "@duskmoon-dev/art-elements": "1.9.3",
41
+ "@duskmoon-dev/components": "0.5.2",
42
+ "@duskmoon-dev/core": "1.20.6",
43
+ "@duskmoon-dev/css-art": "1.20.6",
44
+ "@duskmoon-dev/elements": "1.9.3",
45
45
  "react": "19.3.0",
46
46
  "react-dom": "19.3.0"
47
47
  },