@mosaicoo/form-angular 0.5.0 → 0.7.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 +28 -0
- package/fesm2022/mosaicoo-form-angular-designer.mjs +836 -102
- package/fesm2022/mosaicoo-form-angular-designer.mjs.map +1 -1
- package/fesm2022/mosaicoo-form-angular-material.mjs +2 -0
- package/fesm2022/mosaicoo-form-angular-material.mjs.map +1 -1
- package/fesm2022/mosaicoo-form-angular.mjs +384 -91
- package/fesm2022/mosaicoo-form-angular.mjs.map +1 -1
- package/package.json +2 -2
- package/types/mosaicoo-form-angular-designer.d.ts +104 -3
- package/types/mosaicoo-form-angular.d.ts +37 -4
package/README.md
CHANGED
|
@@ -57,6 +57,34 @@ 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
|
+
**Drag and drop** — drag palette entries onto the canvas and reorder nodes by
|
|
78
|
+
dragging; drop zones highlight the landing position.
|
|
79
|
+
|
|
80
|
+
**Reusable blocks** — save any subtree as a named block and drop it into other
|
|
81
|
+
forms (keys are regenerated). Blocks persist locally by default; bind
|
|
82
|
+
`[blocks]` / `(blocksChanged)` to store them wherever your platform keeps
|
|
83
|
+
shared assets.
|
|
84
|
+
|
|
85
|
+
The canvas renders leaves with the RUNTIME components and the runtime theme,
|
|
86
|
+
so what you design is exactly what your users get.
|
|
87
|
+
|
|
60
88
|
## Material Design 3 adapter
|
|
61
89
|
|
|
62
90
|
Optional entry point (requires `@angular/material`, an optional peer):
|