@neuravision/ng-construct 0.3.1 → 0.3.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neuravision/ng-construct",
3
- "version": "0.3.1",
3
+ "version": "0.3.3",
4
4
  "description": "Angular components for the Construct Design System",
5
5
  "keywords": [
6
6
  "angular",
@@ -12,7 +12,8 @@
12
12
  "@angular/common": "^21.1.0",
13
13
  "@angular/core": "^21.1.0",
14
14
  "@angular/router": "^21.1.0",
15
- "@neuravision/construct": "^1.0.0"
15
+ "@neuravision/construct": "^1.1.2",
16
+ "@lucide/angular": "^1.0.0-rc.0"
16
17
  },
17
18
  "dependencies": {
18
19
  "tslib": "^2.3.0"
@@ -828,15 +828,22 @@ interface AfDropdownItem {
828
828
  */
829
829
  declare class AfDropdownComponent {
830
830
  private static nextId;
831
+ private readonly hostRef;
831
832
  /** Dropdown button label. */
832
833
  label: _angular_core.InputSignal<string>;
834
+ /** Trigger button size. */
835
+ size: _angular_core.InputSignal<AfButtonSize>;
833
836
  /** Menu items. */
834
837
  items: _angular_core.InputSignal<AfDropdownItem[]>;
835
838
  /** Emits the selected item's value. */
836
839
  itemSelected: _angular_core.OutputEmitterRef<unknown>;
840
+ /** Computed CSS classes for the trigger button. */
841
+ triggerClasses: _angular_core.Signal<string>;
837
842
  triggerRef: _angular_core.Signal<ElementRef<HTMLButtonElement> | undefined>;
838
843
  menuRef: _angular_core.Signal<ElementRef<HTMLElement> | undefined>;
839
844
  itemButtons: _angular_core.Signal<readonly ElementRef<HTMLButtonElement>[]>;
845
+ /** Non-separator items that can receive focus and be selected. */
846
+ private actionableItems;
840
847
  isOpen: _angular_core.WritableSignal<boolean>;
841
848
  focusedItemIndex: _angular_core.WritableSignal<number>;
842
849
  private instanceId;
@@ -861,10 +868,9 @@ declare class AfDropdownComponent {
861
868
  private focusItem;
862
869
  private focusCurrent;
863
870
  private nextEnabledIndex;
864
- private getActionableItems;
865
871
  private handleTypeAhead;
866
872
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AfDropdownComponent, never>;
867
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AfDropdownComponent, "af-dropdown", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; }, { "itemSelected": "itemSelected"; }, never, never, true, never>;
873
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AfDropdownComponent, "af-dropdown", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; }, { "itemSelected": "itemSelected"; }, never, never, true, never>;
868
874
  }
869
875
 
870
876
  /**
@@ -1276,23 +1282,33 @@ declare class AfSidebarComponent {
1276
1282
 
1277
1283
  type AfIconSize = 'sm' | 'md' | 'lg' | 'xl';
1278
1284
  /**
1279
- * Icon component that abstracts the icon rendering strategy.
1285
+ * Icon wrapper that applies Construct Design System sizing via `ct-icon` classes.
1280
1286
  *
1281
- * Currently uses Material Icons font ligatures. The icon strategy
1282
- * can be changed centrally without modifying consumers.
1287
+ * Uses content projection so any icon source can be used:
1288
+ * Lucide, custom SVGs, or other icon libraries.
1283
1289
  *
1284
- * @example
1285
- * <af-icon name="delete" />
1286
- * <af-icon name="edit" size="sm" />
1290
+ * @example Using with Lucide
1291
+ * ```html
1292
+ * <af-icon size="sm">
1293
+ * <lucide-x />
1294
+ * </af-icon>
1295
+ * ```
1296
+ *
1297
+ * @example Using with inline SVG
1298
+ * ```html
1299
+ * <af-icon size="lg">
1300
+ * <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1301
+ * <circle cx="12" cy="12" r="10" />
1302
+ * </svg>
1303
+ * </af-icon>
1304
+ * ```
1287
1305
  */
1288
1306
  declare class AfIconComponent {
1289
- /** Material Icon name (ligature) */
1290
- name: _angular_core.InputSignal<string>;
1291
1307
  /** Icon size variant */
1292
1308
  size: _angular_core.InputSignal<AfIconSize>;
1293
1309
  iconClasses: _angular_core.Signal<string>;
1294
1310
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AfIconComponent, never>;
1295
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AfIconComponent, "af-icon", never, { "name": { "alias": "name"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1311
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AfIconComponent, "af-icon", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
1296
1312
  }
1297
1313
 
1298
1314
  type AfSliderSize = 'sm' | 'md' | 'lg';