@mosaicoo/form-angular 0.4.0 → 0.6.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/README.md +32 -0
- package/fesm2022/mosaicoo-form-angular-designer.mjs +589 -95
- package/fesm2022/mosaicoo-form-angular-designer.mjs.map +1 -1
- package/fesm2022/mosaicoo-form-angular-material.mjs +395 -0
- package/fesm2022/mosaicoo-form-angular-material.mjs.map +1 -0
- package/fesm2022/mosaicoo-form-angular.mjs +208 -57
- package/fesm2022/mosaicoo-form-angular.mjs.map +1 -1
- package/package.json +17 -3
- package/types/mosaicoo-form-angular-designer.d.ts +65 -2
- package/types/mosaicoo-form-angular-material.d.ts +77 -0
- package/types/mosaicoo-form-angular.d.ts +19 -3
package/README.md
CHANGED
|
@@ -57,6 +57,38 @@ undo/redo (Ctrl+Z/Y), duplicate/delete/move, live schema diagnostics,
|
|
|
57
57
|
import/export and a Preview mode with test data. The host owns persistence:
|
|
58
58
|
`schemaChanged` hands you the versioned schema document.
|
|
59
59
|
|
|
60
|
+
**Custom types in the palette** — register the component in the runtime and
|
|
61
|
+
contribute a palette entry; the Inspector edits its settings through the
|
|
62
|
+
`props` JSON editor, so a board, a map or a chart becomes a first-class field:
|
|
63
|
+
|
|
64
|
+
```html
|
|
65
|
+
<mform-designer [extraCatalog]="[{
|
|
66
|
+
label: 'My components',
|
|
67
|
+
entries: [{ type: 'board', label: 'Board', icon: '▤', create: (schema) => ({
|
|
68
|
+
kind: 'input', key: generateKey(schema, 'board'), type: 'board',
|
|
69
|
+
dataType: 'object', props: { columns: ['To do', 'Doing', 'Done'] },
|
|
70
|
+
}) }],
|
|
71
|
+
}]" />
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
**Workspace** — panels (Fields, Structure, Properties) dock left or right or
|
|
75
|
+
hide, with presets and per-user persistence, like a professional IDE.
|
|
76
|
+
|
|
77
|
+
## Material Design 3 adapter
|
|
78
|
+
|
|
79
|
+
Optional entry point (requires `@angular/material`, an optional peer):
|
|
80
|
+
|
|
81
|
+
```ts
|
|
82
|
+
import { provideMaterialForms } from '@mosaicoo/form-angular/material';
|
|
83
|
+
|
|
84
|
+
bootstrapApplication(App, { providers: [provideMaterialForms()] });
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
Swaps text/number/select/checkbox/radio (and friends) for Material
|
|
88
|
+
components styled by YOUR M3 theme; unmapped types keep the accessible
|
|
89
|
+
built-in renderers. Individual types can still be overridden by later
|
|
90
|
+
`provideMosaicooForm({components})` calls.
|
|
91
|
+
|
|
60
92
|
## Extending
|
|
61
93
|
|
|
62
94
|
```ts
|