@dataworkz/crystal 0.1.0-beta.2 → 0.1.0-beta.4

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
@@ -2,6 +2,44 @@
2
2
 
3
3
  All notable changes to this package. Versions follow [semver](https://semver.org); betas may still change the API.
4
4
 
5
+ ## 0.1.0-beta.4 — 2026-11-04
6
+
7
+ ### Added
8
+ - `dw-select` / `dw-multiselect` `open()` and `close()`: open the list from code (an editable select whose text opens it).
9
+ - `[dwTooltipInteractive]`: the tooltip stays open while the pointer moves onto it, so its text can be copied.
10
+
11
+ ### Fixed
12
+ - `dw-field` gives a `dw-select`, `dw-multiselect` or `dw-number-input` its full width, as it did the PrimeNG controls.
13
+ - `dw-switch`, `dw-radio`, `dw-number-input` and `dw-multiselect` no longer take focus when a page opens (and scroll it to
14
+ themselves): PrimeNG's AutoFocus put `autofocus="true"` on their input unless told `false`.
15
+ - The form controls drive their PrimeNG control without subscribing to PrimeNG's own signals: a write that changed one
16
+ of them could have re-run the write without end.
17
+
18
+ ## 0.1.0-beta.3 — 2026-11-04
19
+
20
+ The first step of taking PrimeNG out of apps (docs/PRIMENG-REMOVAL.md): crystal's own form controls, and crystal owns
21
+ PrimeNG.
22
+
23
+ ### Breaking
24
+ - `primeng`, `@primeng/themes` and `primeicons` are crystal **dependencies**, no longer peers: an app removes them from
25
+ its own `package.json` (and PrimeIcons' CSS from its build: crystal's stylesheet loads it).
26
+
27
+ ### Added
28
+ - `dwInput` on `<input>` / `<textarea>` (`DW_INPUT`): `size` (`sm|md|lg`), `fluid`, `invalid`, `autoResize`.
29
+ - `[dwTooltip]`: `dwTooltipPosition` (`top` by default), `dwTooltipDelay`, `dwTooltipVariant`
30
+ (`multiline|code|error|toolbar`), `dwTooltipDisabled`.
31
+ - `dw-select` (+ `dwSelectOption`, `dwSelectValue`, `dwSelectFooter` templates) and `dw-multiselect`.
32
+ - `dw-checkbox`, `dw-radio`, `dw-switch` (`xs|sm|md`), `dw-number-input`.
33
+ - All of them work with ngModel, reactive forms or `[(value)]`, show invalid once touched or dirty, emit `changed` for
34
+ the user's change only, and keep the look of the PrimeNG controls they replace. `DwFormControl` is their base.
35
+ - `dw-icon pi="<name>"`: a PrimeIcons glyph, typed by `DwPrimeIcon` (from the installed font); `spin` and `label` on
36
+ every dw-icon.
37
+
38
+ ### Changed
39
+ - `dw-icon`'s `name` is optional (give `name` or `pi`).
40
+ - `dw-field` docs and every crystal story use crystal controls; `dw-field` keeps a `dw-switch` / `dw-checkbox` /
41
+ `dw-radio` at its own width, as it did PrimeNG's.
42
+
5
43
  ## 0.1.0-beta.2 — 2026-11-04
6
44
 
7
45
  ### Fixed
@@ -361,7 +361,7 @@ const MIME_BY_EXTENSION = {
361
361
  m4a: 'audio/m4a',
362
362
  flac: 'audio/flac',
363
363
  };
364
- /** File-type icons, inlined as data URIs (icons/svg/files/<key>.svg). */
364
+ /** File-type icons, inlined as data URIs (icons/svg/files/`<key>`.svg). */
365
365
  const FILE_TYPE_ICON_PATHS = {
366
366
  word: DW_LOGO_URIS['files/word'],
367
367
  text: DW_LOGO_URIS['files/text'],