ng-form-foundry 0.5.2 → 0.5.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/index.d.ts CHANGED
@@ -439,6 +439,13 @@ declare class DynamicRecursiveFormComponent implements OnInit {
439
439
  readonly showAbsentOptionals: _angular_core.InputSignal<boolean>;
440
440
  /** Invoked with {@link index} to append a new sibling form to a parent list. */
441
441
  readonly addButtonCallback: _angular_core.InputSignal<((index: number) => void) | null>;
442
+ /**
443
+ * Label for the add-sibling button — the parent list names the appended
444
+ * entry ("Add Cell #3"), which this form cannot derive itself (it knows
445
+ * neither the list's label nor its length). Falls back to
446
+ * "Add new <own label>".
447
+ */
448
+ readonly addButtonLabel: _angular_core.InputSignal<string | null>;
442
449
  /**
443
450
  * Key of a presence leaf whose field should grab focus when it renders — lets
444
451
  * a host that added the control itself (e.g. the tree editor's optionals
@@ -569,7 +576,7 @@ declare class DynamicRecursiveFormComponent implements OnInit {
569
576
  protected readonly asFormArray: typeof asFormArray;
570
577
  protected readonly asFormControl: typeof asFormControl;
571
578
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DynamicRecursiveFormComponent, never>;
572
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<DynamicRecursiveFormComponent, "nff-dynamic-recursive-form", never, { "schema": { "alias": "schema"; "required": true; "isSignal": true; }; "initialValue": { "alias": "initialValue"; "required": false; "isSignal": true; }; "formGroup": { "alias": "formGroup"; "required": false; "isSignal": true; }; "index": { "alias": "index"; "required": false; "isSignal": true; }; "removable": { "alias": "removable"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "showAbsentOptionals": { "alias": "showAbsentOptionals"; "required": false; "isSignal": true; }; "addButtonCallback": { "alias": "addButtonCallback"; "required": false; "isSignal": true; }; "focusLeaf": { "alias": "focusLeaf"; "required": false; "isSignal": true; }; "inheritedAppearance": { "alias": "inheritedAppearance"; "required": false; "isSignal": true; }; }, { "remove": "remove"; "editable": "editableChange"; }, never, never, true, never>;
579
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DynamicRecursiveFormComponent, "nff-dynamic-recursive-form", never, { "schema": { "alias": "schema"; "required": true; "isSignal": true; }; "initialValue": { "alias": "initialValue"; "required": false; "isSignal": true; }; "formGroup": { "alias": "formGroup"; "required": false; "isSignal": true; }; "index": { "alias": "index"; "required": false; "isSignal": true; }; "removable": { "alias": "removable"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "showAbsentOptionals": { "alias": "showAbsentOptionals"; "required": false; "isSignal": true; }; "addButtonCallback": { "alias": "addButtonCallback"; "required": false; "isSignal": true; }; "addButtonLabel": { "alias": "addButtonLabel"; "required": false; "isSignal": true; }; "focusLeaf": { "alias": "focusLeaf"; "required": false; "isSignal": true; }; "inheritedAppearance": { "alias": "inheritedAppearance"; "required": false; "isSignal": true; }; }, { "remove": "remove"; "editable": "editableChange"; }, never, never, true, never>;
573
580
  }
574
581
 
575
582
  /** Metadata on a list-container node that lets the tree add items to its FormArray. */
@@ -691,6 +698,22 @@ declare class ConfigEditorComponent implements OnDestroy {
691
698
  * shows on the next rebind or structural rebuild, not immediately.
692
699
  */
693
700
  readonly rootTitle: _angular_core.InputSignal<string | undefined>;
701
+ /**
702
+ * Whether selecting a tree row also expands the node's own children.
703
+ * Off by default: a click selects (the detail pane shows the subtree
704
+ * anyway) and the twisty alone controls expansion, so browsing a deep
705
+ * config does not keep unfolding the tree. Ancestors of the selection are
706
+ * always expanded — the selected row itself must stay visible.
707
+ */
708
+ readonly expandOnClick: _angular_core.InputSignal<boolean>;
709
+ /**
710
+ * Whether the detail pane shows its top breadcrumb (the selected node's
711
+ * path, with the member remove control beside it). Hosts whose tree
712
+ * already tells the user where they are can turn it off — the section
713
+ * trail headings inside the detail stay, and member removal remains
714
+ * available on the tree rows and section headings.
715
+ */
716
+ readonly showBreadcrumb: _angular_core.InputSignal<boolean>;
694
717
  root: TreeNode;
695
718
  selected: TreeNode | null;
696
719
  /** The selected subtree as a flat, breadcrumb-separated section list. */
@@ -882,7 +905,7 @@ declare class ConfigEditorComponent implements OnDestroy {
882
905
  */
883
906
  private escapeSeg;
884
907
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ConfigEditorComponent, never>;
885
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ConfigEditorComponent, "nff-config-editor", never, { "schema": { "alias": "schema"; "required": true; "isSignal": true; }; "formGroup": { "alias": "formGroup"; "required": true; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "rootTitle": { "alias": "rootTitle"; "required": false; "isSignal": true; }; }, { "editable": "editableChange"; }, never, never, true, never>;
908
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ConfigEditorComponent, "nff-config-editor", never, { "schema": { "alias": "schema"; "required": true; "isSignal": true; }; "formGroup": { "alias": "formGroup"; "required": true; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "rootTitle": { "alias": "rootTitle"; "required": false; "isSignal": true; }; "expandOnClick": { "alias": "expandOnClick"; "required": false; "isSignal": true; }; "showBreadcrumb": { "alias": "showBreadcrumb"; "required": false; "isSignal": true; }; }, { "editable": "editableChange"; }, never, never, true, never>;
886
909
  }
887
910
 
888
911
  declare class LeafRendererComponent implements AfterViewInit {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ng-form-foundry",
3
- "version": "0.5.2",
3
+ "version": "0.5.4",
4
4
  "description": "Build fully-typed Angular Reactive Forms and Angular Material UI from a declarative, recursive form-description schema.",
5
5
  "keywords": [
6
6
  "angular",