integra-ng 21.0.21 → 21.0.23

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": "integra-ng",
3
- "version": "21.0.21",
3
+ "version": "21.0.23",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/ulbrichFrauendorf/integra-ng"
@@ -1547,7 +1547,7 @@ type IInputBackgroundStyle = 'surface' | 'component';
1547
1547
  * This component implements ControlValueAccessor for seamless integration with Angular Forms.
1548
1548
  * Supports floating labels, custom validation messages, and external validation state.
1549
1549
  */
1550
- declare class IInputText implements ControlValueAccessor {
1550
+ declare class IInputText implements ControlValueAccessor, AfterViewInit, OnDestroy {
1551
1551
  ngControl: NgControl | null;
1552
1552
  /**
1553
1553
  * Label text displayed for the input
@@ -1563,6 +1563,10 @@ declare class IInputText implements ControlValueAccessor {
1563
1563
  * HTML id attribute for the input element
1564
1564
  */
1565
1565
  id?: string;
1566
+ /**
1567
+ * HTML name attribute for better browser autofill support
1568
+ */
1569
+ name?: string;
1566
1570
  /**
1567
1571
  * Whether the input should take full width of its container
1568
1572
  * @default false
@@ -1587,6 +1591,10 @@ declare class IInputText implements ControlValueAccessor {
1587
1591
  * Placeholder text for the input
1588
1592
  */
1589
1593
  placeholder?: string;
1594
+ /**
1595
+ * HTML autocomplete attribute (e.g. 'username', 'current-password')
1596
+ */
1597
+ autocomplete?: string;
1590
1598
  /**
1591
1599
  * Allows external control to override validation state
1592
1600
  * @default false
@@ -1632,6 +1640,16 @@ declare class IInputText implements ControlValueAccessor {
1632
1640
  * @internal
1633
1641
  */
1634
1642
  componentId: string;
1643
+ /**
1644
+ * Native input element reference
1645
+ * @internal
1646
+ */
1647
+ inputElementRef?: ElementRef<HTMLInputElement>;
1648
+ /**
1649
+ * Pending autofill sync timers
1650
+ * @internal
1651
+ */
1652
+ private autofillCheckTimeouts;
1635
1653
  /**
1636
1654
  * Callback for ControlValueAccessor
1637
1655
  * @internal
@@ -1643,6 +1661,16 @@ declare class IInputText implements ControlValueAccessor {
1643
1661
  */
1644
1662
  private onTouched;
1645
1663
  constructor(ngControl: NgControl | null);
1664
+ /**
1665
+ * Runs post-render checks to catch browser autofill values
1666
+ * @internal
1667
+ */
1668
+ ngAfterViewInit(): void;
1669
+ /**
1670
+ * Clears pending timers
1671
+ * @internal
1672
+ */
1673
+ ngOnDestroy(): void;
1646
1674
  /**
1647
1675
  * Writes a value to the input (ControlValueAccessor)
1648
1676
  * @internal
@@ -1673,6 +1701,26 @@ declare class IInputText implements ControlValueAccessor {
1673
1701
  * @internal
1674
1702
  */
1675
1703
  touch(): void;
1704
+ /**
1705
+ * Handles blur event
1706
+ * @internal
1707
+ */
1708
+ handleBlur(): void;
1709
+ /**
1710
+ * Handles focus event
1711
+ * @internal
1712
+ */
1713
+ handleFocus(): void;
1714
+ /**
1715
+ * Handles browser autofill animation hook
1716
+ * @internal
1717
+ */
1718
+ handleAutoFillAnimation(event: AnimationEvent): void;
1719
+ /**
1720
+ * Synchronizes component value from native input value
1721
+ * @internal
1722
+ */
1723
+ syncValueFromNativeInput(emitChange?: boolean): void;
1676
1724
  /**
1677
1725
  * Gets the form control instance
1678
1726
  * @internal
@@ -1693,8 +1741,33 @@ declare class IInputText implements ControlValueAccessor {
1693
1741
  * @internal
1694
1742
  */
1695
1743
  getErrorMessage(): string | null;
1744
+ /**
1745
+ * Checks if the input has a value (works for all input types including number)
1746
+ * @internal
1747
+ */
1748
+ get hasValue(): boolean;
1749
+ /**
1750
+ * Queues multiple checks because browsers may autofill asynchronously
1751
+ * @internal
1752
+ */
1753
+ private scheduleAutofillChecks;
1754
+ /**
1755
+ * Clears queued autofill checks
1756
+ * @internal
1757
+ */
1758
+ private clearAutofillChecks;
1759
+ /**
1760
+ * Increment number input value
1761
+ * @internal
1762
+ */
1763
+ incrementNumber(inputElement: HTMLInputElement): void;
1764
+ /**
1765
+ * Decrement number input value
1766
+ * @internal
1767
+ */
1768
+ decrementNumber(inputElement: HTMLInputElement): void;
1696
1769
  static ɵfac: i0.ɵɵFactoryDeclaration<IInputText, [{ optional: true; self: true; }]>;
1697
- static ɵcmp: i0.ɵɵComponentDeclaration<IInputText, "i-input-text", never, { "label": { "alias": "label"; "required": false; }; "type": { "alias": "type"; "required": false; }; "id": { "alias": "id"; "required": false; }; "fluid": { "alias": "fluid"; "required": false; }; "forceFloated": { "alias": "forceFloated"; "required": false; }; "hideText": { "alias": "hideText"; "required": false; }; "useFloatLabel": { "alias": "useFloatLabel"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "externalInvalid": { "alias": "externalInvalid"; "required": false; }; "externalErrorMessage": { "alias": "externalErrorMessage"; "required": false; }; "backgroundStyle": { "alias": "backgroundStyle"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "errorMessages": { "alias": "errorMessages"; "required": false; }; }, {}, never, ["*"], true, never>;
1770
+ static ɵcmp: i0.ɵɵComponentDeclaration<IInputText, "i-input-text", never, { "label": { "alias": "label"; "required": false; }; "type": { "alias": "type"; "required": false; }; "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "fluid": { "alias": "fluid"; "required": false; }; "forceFloated": { "alias": "forceFloated"; "required": false; }; "hideText": { "alias": "hideText"; "required": false; }; "useFloatLabel": { "alias": "useFloatLabel"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "externalInvalid": { "alias": "externalInvalid"; "required": false; }; "externalErrorMessage": { "alias": "externalErrorMessage"; "required": false; }; "backgroundStyle": { "alias": "backgroundStyle"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "errorMessages": { "alias": "errorMessages"; "required": false; }; }, {}, never, ["*"], true, never>;
1698
1771
  }
1699
1772
 
1700
1773
  /**