@servicetitan/anvil2-ext-common 0.3.19 → 0.4.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 +18 -0
- package/README.md +27 -0
- package/dist/index.css +2911 -0
- package/dist/index.js +35821 -1
- package/dist/index.js.map +1 -1
- package/dist/src/form/components/Form.d.ts +15 -0
- package/dist/src/form/components/FormCheckboxGroup/FormCheckboxGroup.d.ts +13 -0
- package/dist/src/form/components/FormCheckboxGroup/index.d.ts +1 -0
- package/dist/src/form/components/FormDateFieldRange/FormDateFieldRange.d.ts +6 -0
- package/dist/src/form/components/FormDateFieldRange/index.d.ts +1 -0
- package/dist/src/form/components/FormDateFieldSingle/FormDateFieldSingle.d.ts +6 -0
- package/dist/src/form/components/FormDateFieldSingle/index.d.ts +1 -0
- package/dist/src/form/components/FormDateFieldYearless/FormDateFieldYearless.d.ts +6 -0
- package/dist/src/form/components/FormDateFieldYearless/index.d.ts +1 -0
- package/dist/src/form/components/FormDateFieldYearlessRange/FormDateFieldYearlessRange.d.ts +6 -0
- package/dist/src/form/components/FormDateFieldYearlessRange/index.d.ts +1 -0
- package/dist/src/form/components/FormMultiSelect/FormMultiSelect.d.ts +12 -0
- package/dist/src/form/components/FormMultiSelect/index.d.ts +1 -0
- package/dist/src/form/components/FormNumberField/FormNumberField.d.ts +6 -0
- package/dist/src/form/components/FormNumberField/index.d.ts +1 -0
- package/dist/src/form/components/FormRadioGroup/FormRadioGroup.d.ts +13 -0
- package/dist/src/form/components/FormRadioGroup/index.d.ts +1 -0
- package/dist/src/form/components/FormSelect/FormSelect.d.ts +11 -0
- package/dist/src/form/components/FormSelect/index.d.ts +1 -0
- package/dist/src/form/components/FormTextField/FormTextField.d.ts +6 -0
- package/dist/src/form/components/FormTextField/index.d.ts +1 -0
- package/dist/src/form/components/FormTextarea/FormTextarea.d.ts +6 -0
- package/dist/src/form/components/FormTextarea/index.d.ts +1 -0
- package/dist/src/form/components/FormTimeField/FormTimeField.d.ts +6 -0
- package/dist/src/form/components/FormTimeField/index.d.ts +1 -0
- package/dist/src/form/components/FormTreeSelect/FormTreeSelect.d.ts +12 -0
- package/dist/src/form/components/FormTreeSelect/index.d.ts +1 -0
- package/dist/src/form/components/index.d.ts +13 -0
- package/dist/src/form/index.d.ts +3 -0
- package/dist/src/form/state/A2InputFieldState.d.ts +54 -0
- package/dist/src/form/state/SelectableOptionsFieldState.d.ts +20 -0
- package/dist/src/form/state/index.d.ts +3 -0
- package/dist/src/form/state/types.d.ts +31 -0
- package/dist/src/index.d.ts +1 -0
- package/package.json +8 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @servicetitan/anvil2-ext-common
|
|
2
2
|
|
|
3
|
+
## 0.4.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#2393](https://github.com/servicetitan/hammer/pull/2393) [`fa64efa`](https://github.com/servicetitan/hammer/commit/fa64efa889ee2571504fe5ade2dbffc702132c80) Thanks [@pbuckingham-st](https://github.com/pbuckingham-st)! - [Form] Add formstate field-state wrappers (`A2InputFieldState`, `SelectableOptionsFieldState`) and a `Form.*` namespace of `observer` binding components for Anvil2 input fields (TextField, Textarea, NumberField, DateFieldSingle/Range/Yearless/YearlessRange, TimeField, beta Select/MultiSelect/TreeSelect, and RadioGroup/CheckboxGroup). Checkbox/radio are provided as the group wrappers only.
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [[`5e46d4f`](https://github.com/servicetitan/hammer/commit/5e46d4f7760c8f4c3374523f9777f34b61f72270), [`f13b003`](https://github.com/servicetitan/hammer/commit/f13b0036669dc8ba3e566de88374b4487bb9891b), [`f8e27ae`](https://github.com/servicetitan/hammer/commit/f8e27ae598b1a2c4900cd2dc16e6efcb3a11fbb9)]:
|
|
12
|
+
- @servicetitan/anvil2@3.1.0
|
|
13
|
+
|
|
14
|
+
## 0.3.20
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- Updated dependencies [[`168c5ce`](https://github.com/servicetitan/hammer/commit/168c5ced0505d26de116340a7a799563bacc8be9), [`48c651d`](https://github.com/servicetitan/hammer/commit/48c651d42661d7e760a70ec651d2c12790239302), [`48c651d`](https://github.com/servicetitan/hammer/commit/48c651d42661d7e760a70ec651d2c12790239302), [`bd7c4c5`](https://github.com/servicetitan/hammer/commit/bd7c4c5e7f6e1715c80b1fbc7b894e7a8ea8bead), [`7401759`](https://github.com/servicetitan/hammer/commit/74017590bbe5ef4e62771816c2e3701e16800bbb), [`a0223e7`](https://github.com/servicetitan/hammer/commit/a0223e78626edcdeaf9587131ccabe152f109484), [`ba729d3`](https://github.com/servicetitan/hammer/commit/ba729d32d866bf535246917e00698ded0f31356e), [`16ac423`](https://github.com/servicetitan/hammer/commit/16ac4232438c06e2462bbb4be4bf681441d4a9fb)]:
|
|
19
|
+
- @servicetitan/anvil2@3.0.9
|
|
20
|
+
|
|
3
21
|
## 0.3.19
|
|
4
22
|
|
|
5
23
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -25,6 +25,33 @@ Components and hooks can be imported as named exports from the package root:
|
|
|
25
25
|
import { useConfirmDialog } from "@servicetitan/anvil2-ext-common";
|
|
26
26
|
```
|
|
27
27
|
|
|
28
|
+
### Form field-state wrappers (`Form.*`)
|
|
29
|
+
|
|
30
|
+
`Form.*` components bind Anvil2 fields to a `formstate`-based `A2InputFieldState`, eliminating boilerplate for value, onChange, error, and warning wiring.
|
|
31
|
+
|
|
32
|
+
**Quick example:**
|
|
33
|
+
|
|
34
|
+
```tsx
|
|
35
|
+
import { A2InputFieldState } from "@servicetitan/anvil2-ext-common";
|
|
36
|
+
import { Form } from "@servicetitan/anvil2-ext-common";
|
|
37
|
+
|
|
38
|
+
const name = new A2InputFieldState("");
|
|
39
|
+
|
|
40
|
+
<Form.TextField fieldState={name} label="Name" />;
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Available wrappers: `Form.TextField`, `Form.Textarea`, `Form.NumberField`, `Form.DateFieldSingle`, `Form.DateFieldRange`, `Form.DateFieldYearless`, `Form.DateFieldYearlessRange`, `Form.TimeField`, `Form.Select`, `Form.MultiSelect`, `Form.TreeSelect`, `Form.RadioGroup`, `Form.CheckboxGroup`.
|
|
44
|
+
|
|
45
|
+
Checkbox and radio inputs are provided as the **group** wrappers (`Form.RadioGroup`, `Form.CheckboxGroup`) only. A standalone Anvil2 `Checkbox`/`Radio` exposes a boolean error (styling) with no message area, so it can't surface validation errors/warnings — the group is the form pattern that renders a `FieldMessage`.
|
|
46
|
+
|
|
47
|
+
`Form.Select`, `Form.MultiSelect`, and `Form.TreeSelect` wrap the beta Anvil2 components and are exported from the package root alongside the rest of the `Form.*` namespace. `Form.Select` and `Form.MultiSelect` support all loader modes (eager, page-lazy, offset-lazy, group-lazy) — pass a `loadOptions` function appropriate to your loader strategy.
|
|
48
|
+
|
|
49
|
+
**Known limitations:**
|
|
50
|
+
|
|
51
|
+
- Single checkbox/radio inputs have no standalone wrapper — use `Form.CheckboxGroup` / `Form.RadioGroup` (the Anvil2 group is the component that renders validation messages).
|
|
52
|
+
- `updateMode` is primarily meaningful for value-update controls (TextField, Textarea, NumberField).
|
|
53
|
+
- The following Anvil2 input types have no `Form.*` wrapper: SearchField, InputMask, Switch, ButtonToggle, SelectCard, Combobox, SegmentedControl, RichTextEditor.
|
|
54
|
+
|
|
28
55
|
<br />
|
|
29
56
|
|
|
30
57
|
# Contribution Guide
|