@acorex/components 22.0.0-next.7 → 22.0.0-next.8

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.
@@ -3,30 +3,27 @@ import { MXInputBaseValueComponent, AXClickEvent } from '@acorex/cdk/common';
3
3
  import { AXDateTimePickerType } from '@acorex/components/calendar';
4
4
 
5
5
  /**
6
- * A component for date and time input with various custom features.
6
+ * A component for date and time input with segment-based typing, keyboard navigation,
7
+ * and calendar-aware formatting (gregorian and solar-hijri).
7
8
  *
8
9
  * @category Components
9
10
  */
10
11
  declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
11
12
  #private;
12
13
  private platformService;
13
- private formatService;
14
14
  private localeService;
15
15
  private calendarService;
16
- /**
17
- * @ignore
18
- */
16
+ /** @ignore */
19
17
  private readonly _editingParts;
20
- /**
21
- * @ignore
22
- */
18
+ /** @ignore */
23
19
  protected _editingText: _angular_core.WritableSignal<string>;
20
+ /** @ignore */
21
+ private _inputChars;
22
+ /** @ignore */
23
+ private _activePart;
24
24
  /**
25
- * @ignore
26
- */
27
- protected _inputChars: string[];
28
- /**
29
- * Indicates whether typing is allowed in the input field.
25
+ * When true, the user can type digits and navigate segments with the keyboard.
26
+ * When false, keyboard input is blocked (used by datetime-box picker mode).
30
27
  * @defaultValue false
31
28
  */
32
29
  allowTyping: _angular_core.InputSignal<boolean>;
@@ -34,94 +31,81 @@ declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
34
31
  * @description The calendar type to use for the datetime input.
35
32
  */
36
33
  calendar: _angular_core.InputSignal<string>;
37
- protected readonly _calendarSystem: _angular_core.Signal<string>;
38
- private _activePart;
39
- private _editingDate;
40
- /**
41
- * @ignore
42
- */
43
- private input;
44
34
  minValue: _angular_core.InputSignal<Date>;
45
35
  maxValue: _angular_core.InputSignal<Date>;
46
36
  /**
47
- * Emitted when a click event occurs on the datetime box.
37
+ * Emitted when a click event occurs on the datetime input.
48
38
  * @event
49
39
  */
50
40
  onClick: _angular_core.OutputEmitterRef<AXClickEvent>;
51
41
  picker: _angular_core.InputSignal<AXDateTimePickerType>;
52
- protected readonly _resolvedFormat: _angular_core.Signal<string>;
53
42
  /**
54
43
  * @deprecated use locale & mode instead
55
44
  */
56
45
  format: _angular_core.InputSignal<string>;
57
- private _detectParts;
46
+ protected readonly _calendarSystem: _angular_core.Signal<string>;
47
+ protected readonly _resolvedFormat: _angular_core.Signal<string>;
48
+ /** @ignore */
49
+ private _editingDate;
50
+ /** @ignore */
51
+ private inputRef;
52
+ /** @ignore */
53
+ private get inputElement();
58
54
  /**
59
55
  * @description check if page is in rtl or ltr
60
56
  */
61
57
  protected isRtl: _angular_core.WritableSignal<boolean>;
62
- /**
63
- * @description listen to direction change to react to it.
64
- */
58
+ /** @ignore */
65
59
  protected ngOnInit(): void;
66
60
  /**
67
- * @ignore
61
+ * Formats a part using the calendar already attached to the AXDateTime.
62
+ * @ignore
68
63
  */
64
+ private _formatPart;
65
+ /** @ignore */
66
+ private _detectParts;
67
+ /** @ignore */
69
68
  private _getOrderedParts;
70
- /**
71
- * @ignore
72
- */
69
+ /** @ignore */
73
70
  private _clearInputBuffer;
74
- /**
75
- * @ignore
76
- */
71
+ /** @ignore */
77
72
  private _updateText;
78
- /**
79
- * Sets the internal date value, adjusting it based on editing parts.
80
- * @param value - The date to set. Returns `undefined` if no value is provided.
81
- * @ignore
82
- */
83
73
  /**
84
74
  * Handles changes to the internal date value, updating editing parts and text representation.
85
- *
86
- * @param value - The new date value. If not provided, resets editing parts.
87
75
  * @ignore
88
76
  */
89
77
  internalValueChanged(value?: Date): void;
90
78
  /**
91
- * @ignore
92
- */
93
- _handleOnKeydownEvent(e: KeyboardEvent): void;
94
- /**
95
- * @ignore
96
- */
97
- _handleKeyUpEvent(): void;
98
- /**
99
- * @ignore
79
+ * Normalizes Persian (U+06F0-U+06F9) and Arabic-Indic (U+0660-U+0669) digits to ASCII.
80
+ * @ignore
100
81
  */
82
+ private _normalizeDigit;
83
+ /** @ignore */
84
+ protected _handleOnKeydownEvent(e: KeyboardEvent): void;
85
+ /** @ignore */
86
+ private _handleDigitInput;
87
+ /** @ignore */
88
+ private _applyEditingDate;
89
+ /** @ignore */
90
+ protected _handleKeyUpEvent(): void;
91
+ /** @ignore */
101
92
  protected _handleFocusEvent(e: FocusEvent): void;
102
- /**
103
- * @ignore
104
- */
93
+ /** @ignore */
105
94
  protected _handleBlurEvent(e: FocusEvent): void;
106
- /**
107
- * @ignore
108
- */
95
+ /** @ignore */
96
+ private _clampToRange;
97
+ /** @ignore */
109
98
  protected _handleOnInputClickEvent(e: MouseEvent): void;
110
- /**
111
- * @ignore
112
- */
113
- private _detectPartAtPosition;
114
- /**
115
- * @ignore
116
- */
99
+ /** @ignore */
100
+ private _selectFirstPart;
101
+ /** @ignore */
102
+ private _ensureEditableText;
103
+ /** @ignore */
117
104
  private _highlightActivePart;
118
- /**
119
- * @ignore
120
- */
105
+ /** @ignore */
121
106
  private _detectValueChanges;
122
- private get __hostName();
123
107
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXDateTimeInputComponent, never>;
124
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXDateTimeInputComponent, "ax-datetime-input", never, { "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "value": { "alias": "value"; "required": false; }; "state": { "alias": "state"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "allowTyping": { "alias": "allowTyping"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "minValue": { "alias": "minValue"; "required": false; "isSignal": true; }; "maxValue": { "alias": "maxValue"; "required": false; "isSignal": true; }; "picker": { "alias": "picker"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "stateChange": "stateChange"; "onValueChanged": "onValueChanged"; "onBlur": "onBlur"; "onFocus": "onFocus"; "readonlyChange": "readonlyChange"; "disabledChange": "disabledChange"; "onClick": "onClick"; }, never, ["ax-validation-rule"], true, never>;
108
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXDateTimeInputComponent, "ax-datetime-input", never, { "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "value": { "alias": "value"; "required": false; }; "state": { "alias": "state"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "allowTyping": { "alias": "allowTyping"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "minValue": { "alias": "minValue"; "required": false; "isSignal": true; }; "maxValue": { "alias": "maxValue"; "required": false; "isSignal": true; }; "picker": { "alias": "picker"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "stateChange": "stateChange"; "onValueChanged": "onValueChanged"; "onBlur": "onBlur"; "onFocus": "onFocus"; "readonlyChange": "readonlyChange"; "disabledChange": "disabledChange"; "onKeyDown": "onKeyDown"; "onKeyUp": "onKeyUp"; "onKeyPress": "onKeyPress"; "onClick": "onClick"; }, never, ["ax-validation-rule"], true, never>;
125
109
  }
126
110
 
127
111
  declare class AXDateTimeInputModule {
@@ -1,3 +0,0 @@
1
- # @acorex/components/datetime-text-box
2
-
3
- Secondary entry point of `@acorex/components`. It can be used by importing from `@acorex/components/datetime-text-box`.