@leanix/components 0.4.486 → 0.4.487

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.
Files changed (29) hide show
  1. package/esm2022/lib/core-ui/components/ellipsis/ellipsis.component.mjs +4 -1
  2. package/esm2022/lib/core-ui/components/tokenizer/tokenizer.component.mjs +4 -1
  3. package/esm2022/lib/forms-ui/components/currency/currency-input.component.mjs +13 -1
  4. package/esm2022/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.mjs +9 -1
  5. package/esm2022/lib/forms-ui/components/form-error/form-error.component.mjs +3 -1
  6. package/esm2022/lib/forms-ui/components/keyboard-select.directive.mjs +8 -1
  7. package/esm2022/lib/forms-ui/components/multi-select/multi-select.component.mjs +24 -1
  8. package/esm2022/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.mjs +9 -1
  9. package/esm2022/lib/forms-ui/components/options-dropdown/options-dropdown.component.mjs +17 -2
  10. package/esm2022/lib/forms-ui/components/picker/picker.component.mjs +16 -1
  11. package/esm2022/lib/forms-ui/components/select-list/select-list.component.mjs +9 -1
  12. package/esm2022/lib/forms-ui/components/single-select/single-select.component.mjs +20 -1
  13. package/esm2022/lib/forms-ui/models/base-select.directive.mjs +15 -1
  14. package/fesm2022/leanix-components.mjs +138 -1
  15. package/fesm2022/leanix-components.mjs.map +1 -1
  16. package/lib/core-ui/components/ellipsis/ellipsis.component.d.ts +8 -0
  17. package/lib/core-ui/components/tokenizer/tokenizer.component.d.ts +6 -0
  18. package/lib/forms-ui/components/currency/currency-input.component.d.ts +14 -0
  19. package/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.d.ts +13 -0
  20. package/lib/forms-ui/components/form-error/form-error.component.d.ts +2 -0
  21. package/lib/forms-ui/components/keyboard-select.directive.d.ts +9 -0
  22. package/lib/forms-ui/components/multi-select/multi-select.component.d.ts +28 -0
  23. package/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.d.ts +11 -0
  24. package/lib/forms-ui/components/options-dropdown/options-dropdown.component.d.ts +17 -0
  25. package/lib/forms-ui/components/picker/picker.component.d.ts +19 -0
  26. package/lib/forms-ui/components/select-list/select-list.component.d.ts +13 -0
  27. package/lib/forms-ui/components/single-select/single-select.component.d.ts +25 -0
  28. package/lib/forms-ui/models/base-select.directive.d.ts +19 -0
  29. package/package.json +1 -1
@@ -917,6 +917,7 @@ const LX_ELLIPSIS_DEBOUNCE_ON_RESIZE = new InjectionToken('LX_ELLIPSIS_DEBOUNCE_
917
917
  * e.g. <lx-ellipsis style="max-width: 300px" content="Hello World[..]"></lx-ellipsis>.
918
918
  */
919
919
  class EllipsisComponent {
920
+ /** @internal */
920
921
  static { this.DEFAULT_RESIZE_DEBOUNCE_MS = 500; }
921
922
  constructor(debounceMsAfterResize, cdRef, hostEl, resizeObserverService, translateService) {
922
923
  this.debounceMsAfterResize = debounceMsAfterResize;
@@ -930,6 +931,7 @@ class EllipsisComponent {
930
931
  * or if you sanitize the provided content yourself.
931
932
  */
932
933
  this.escapeHtmlInContent = true;
934
+ /** @internal */
933
935
  this.isShowingMore$ = new BehaviorSubject(false);
934
936
  this.destroyed$ = new Subject();
935
937
  this.viewChecked$ = new Subject();
@@ -993,6 +995,7 @@ class EllipsisComponent {
993
995
  ngAfterViewChecked() {
994
996
  this.viewChecked$.next();
995
997
  }
998
+ /** @internal */
996
999
  onShowMoreToggle() {
997
1000
  this.isShowingMore$.next(!this.isShowingMore$.getValue());
998
1001
  this.cdRef.detectChanges();
@@ -2735,10 +2738,12 @@ class TokenizerComponent {
2735
2738
  this.destroyRef = destroyRef;
2736
2739
  this.changeDetectorRef = changeDetectorRef;
2737
2740
  this.resizeObserverService = resizeObserverService;
2741
+ /** @internal */
2738
2742
  this.NAME = 'TokenizerComponent';
2739
2743
  this.overflowItems = signal([]);
2740
2744
  this.overflowItemCount = computed(() => this.overflowItems().length);
2741
2745
  this.showCounter = computed(() => this.active() && this.overflowItemCount() > 0);
2746
+ /** Can be used to activate & deactivate tokenization */
2742
2747
  this.active = input(true);
2743
2748
  this.active$ = toObservable(this.active);
2744
2749
  this.overflowStartIndex = signal(null);
@@ -2768,6 +2773,7 @@ class TokenizerComponent {
2768
2773
  this.tokenize(containerWidth);
2769
2774
  });
2770
2775
  }
2776
+ /** @internal */
2771
2777
  onCounterClicked() {
2772
2778
  const startIndex = this.overflowStartIndex();
2773
2779
  if (typeof startIndex === 'number') {
@@ -3044,19 +3050,25 @@ var KeyboardSelectAction;
3044
3050
  })(KeyboardSelectAction || (KeyboardSelectAction = {}));
3045
3051
  class KeyboardSelectDirective {
3046
3052
  constructor() {
3053
+ /** @internal */
3047
3054
  this.cdkOverlayOpenState = new ReplaySubject(1);
3055
+ /** @internal */
3048
3056
  this.cdkOverlayOpen$ = this.cdkOverlayOpenState.asObservable().pipe(startWith(false), distinctUntilChanged());
3057
+ /** @internal */
3049
3058
  this.overlayPositioning = false;
3050
3059
  this.keyboardSelectAction = new Observable();
3051
3060
  this.selectedItemIndexChange = new EventEmitter(true); // TODO: this is just index change from navigating (highlighting)
3061
+ /** @internal */
3052
3062
  this.destroyed$ = new Subject();
3053
3063
  // Beware: If the list of items is empty, there might not come a -1 because Angular only updates the ViewChildren lazily.
3054
3064
  this.selectedItemIndex$ = new BehaviorSubject(-1);
3055
3065
  this.selectedItemSubject$ = new BehaviorSubject(null);
3056
3066
  }
3067
+ /** @internal */
3057
3068
  get selectedItem$() {
3058
3069
  return this.selectedItemSubject$.asObservable();
3059
3070
  }
3071
+ /** @internal */
3060
3072
  select(index) {
3061
3073
  this.selectedItemIndex$.next(index);
3062
3074
  }
@@ -3085,6 +3097,7 @@ class KeyboardSelectDirective {
3085
3097
  .pipe(filter((item) => !!item), distinctUntilChanged(), takeUntil(this.destroyed$))
3086
3098
  .subscribe((item) => item?.scrollToItem());
3087
3099
  }
3100
+ /** @internal */
3088
3101
  isItemSelected(item, selectedItem) {
3089
3102
  return selectedItem && item === selectedItem.nativeElement;
3090
3103
  }
@@ -4018,8 +4031,11 @@ class CurrencyInputComponent {
4018
4031
  this.markInvalid = false;
4019
4032
  this.onFocusLost = new EventEmitter();
4020
4033
  this.onChange = new EventEmitter();
4034
+ /** @internal */
4021
4035
  this.showCurrencyInput = false;
4036
+ /** @internal */
4022
4037
  this.dataValue$ = new ReplaySubject();
4038
+ /** @internal */
4023
4039
  this.destroyed$ = new Subject();
4024
4040
  }
4025
4041
  ngOnInit() {
@@ -4037,6 +4053,7 @@ class CurrencyInputComponent {
4037
4053
  ngOnDestroy() {
4038
4054
  this.destroyed$.next();
4039
4055
  }
4056
+ /** @internal */
4040
4057
  valueChanged(value) {
4041
4058
  if (typeof value === 'string') {
4042
4059
  const invalidSeparator = this.decimalSeparator === '.' ? ',' : '.';
@@ -4047,30 +4064,38 @@ class CurrencyInputComponent {
4047
4064
  this.onChange.emit(value);
4048
4065
  this.propagateChange(value);
4049
4066
  }
4067
+ /** @internal */
4050
4068
  onBlur() {
4051
4069
  this.showCurrencyInput = false;
4052
4070
  this.onFocusLost.emit(true);
4053
4071
  }
4072
+ /** @internal */
4054
4073
  focusCurrencyInput() {
4055
4074
  this.showCurrencyInput = true;
4056
4075
  this.changeDetector.detectChanges();
4057
4076
  this.currencyInput.nativeElement.focus();
4058
4077
  this.currencyInput.nativeElement.setSelectionRange(0, 0);
4059
4078
  }
4079
+ /** @internal */
4060
4080
  shouldRejectKey(event) {
4061
4081
  if (this.fieldDefinitionType === 'DOUBLE' && event.key === this.decimalSeparator) {
4062
4082
  return this.containsSeparators(this.currencyInput.nativeElement.value);
4063
4083
  }
4064
4084
  return !this.allowedCharacters.test(event.key);
4065
4085
  }
4086
+ /** @internal */
4066
4087
  propagateChange(_newValue) { }
4088
+ /** @internal */
4067
4089
  writeValue(newValue) {
4068
4090
  this.dataValue$.next(newValue);
4069
4091
  }
4092
+ /** @internal */
4070
4093
  registerOnChange(fn) {
4071
4094
  this.propagateChange = fn;
4072
4095
  }
4096
+ /** @internal */
4073
4097
  registerOnTouched(_fn) { }
4098
+ /** @internal */
4074
4099
  setDisabledState(disabled) {
4075
4100
  this.disabled = disabled;
4076
4101
  }
@@ -5878,6 +5903,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
5878
5903
 
5879
5904
  class DragAndDropListComponent {
5880
5905
  constructor() {
5906
+ /** @internal */
5881
5907
  this.NAME = DRAG_AND_DROP_LIST_TRANSLATION_NAME;
5882
5908
  /**
5883
5909
  * Override the global label font weight of 700
@@ -5893,9 +5919,12 @@ class DragAndDropListComponent {
5893
5919
  this.moveItem = new EventEmitter();
5894
5920
  /**
5895
5921
  * TODO: extract state about keyboard sorting into KeyboardSortableListDirective
5922
+ * @internal
5896
5923
  */
5897
5924
  this.isSortingByKeyboard = false;
5925
+ /** @internal */
5898
5926
  this.keyboardItemBeingSorted = undefined;
5927
+ /** @internal */
5899
5928
  this.allItemsData = [];
5900
5929
  }
5901
5930
  ngAfterContentInit() {
@@ -5905,6 +5934,7 @@ class DragAndDropListComponent {
5905
5934
  ngAfterViewInit() {
5906
5935
  this.keyboardSortableItems$ = this._keyboardSortableItems.changes.pipe(startWith(this._keyboardSortableItems), map((items) => items.toArray()));
5907
5936
  }
5937
+ /** @internal */
5908
5938
  emitContentChildAction(action) {
5909
5939
  this._items.find((itemComponent) => itemComponent.item === action.item)?.action.emit(action);
5910
5940
  }
@@ -5916,10 +5946,12 @@ class DragAndDropListComponent {
5916
5946
  * https://material.angular.io/cdk/drag-drop/overview
5917
5947
  *
5918
5948
  * You're supposed to update the data in the parent and pass the new items as input.
5949
+ * @internal
5919
5950
  */
5920
5951
  drop(event) {
5921
5952
  this.sortItems(event.container.data, event.item.data, event.previousIndex, event.currentIndex);
5922
5953
  }
5954
+ /** @internal */
5923
5955
  dropToIndexAfterArrowKey(item, previousIndex, currentIndex) {
5924
5956
  if (this.isSortingByKeyboard) {
5925
5957
  this.sortItems(this._items, item, previousIndex, currentIndex);
@@ -5930,6 +5962,7 @@ class DragAndDropListComponent {
5930
5962
  this.moveToIndex.emit({ index: currentIndex, previous: previousIndex });
5931
5963
  this.moveItem.emit({ item, index: currentIndex });
5932
5964
  }
5965
+ /** @internal */
5933
5966
  trackByItem(_index, item) {
5934
5967
  return item.item;
5935
5968
  }
@@ -6041,6 +6074,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
6041
6074
 
6042
6075
  class FormErrorComponent {
6043
6076
  constructor() {
6077
+ /** @internal */
6044
6078
  this.translationKeys = [];
6045
6079
  }
6046
6080
  ngOnInit() {
@@ -6054,6 +6088,7 @@ class FormErrorComponent {
6054
6088
  ngOnDestroy() {
6055
6089
  this.formSubscription.unsubscribe();
6056
6090
  }
6091
+ /** @internal */
6057
6092
  getTranslationKeys() {
6058
6093
  const formControl = this.form.get(this.controlName);
6059
6094
  if (formControl && formControl.errors) {
@@ -6198,16 +6233,26 @@ class BaseSelectDirective {
6198
6233
  this.query = new EventEmitter();
6199
6234
  this.close = new EventEmitter();
6200
6235
  this.open = new EventEmitter();
6236
+ /** @internal */
6201
6237
  this.query$ = this.query.asObservable();
6238
+ /** @internal */
6202
6239
  this.dropdownDirection$ = new BehaviorSubject('BOTTOM');
6240
+ /** @internal */
6203
6241
  this.dropdownOpen = false;
6204
6242
  // an axis, where the negative range represents the selected item in the selection
6243
+ /** @internal */
6205
6244
  this.selectionKeyboardSelectAction$ = new Subject();
6245
+ /** @internal */
6206
6246
  this.optionsKeyboardSelectAction$ = new Subject();
6247
+ /** @internal */
6207
6248
  this.virtualCursorPosition = 0;
6249
+ /** @internal */
6208
6250
  this.inputWasFocused = false;
6251
+ /** @internal */
6209
6252
  this.queryControl = new UntypedFormControl('');
6253
+ /** @internal */
6210
6254
  this.isInputFocused = false;
6255
+ /** @internal */
6211
6256
  this.destroyed$ = new Subject();
6212
6257
  }
6213
6258
  ngAfterViewInit() {
@@ -6258,6 +6303,7 @@ class BaseSelectDirective {
6258
6303
  }
6259
6304
  /**
6260
6305
  * @param toggle is true when the caret to the right in a select component was clicked
6306
+ * @internal
6261
6307
  */
6262
6308
  handleClick(toggle) {
6263
6309
  if (toggle || !this.dropdownOpen || !this.allowQuery) {
@@ -6265,15 +6311,18 @@ class BaseSelectDirective {
6265
6311
  }
6266
6312
  this.focus();
6267
6313
  }
6314
+ /** @internal */
6268
6315
  handleBackdropClick(event) {
6269
6316
  event.stopPropagation();
6270
6317
  this.closeInput();
6271
6318
  }
6319
+ /** @internal */
6272
6320
  closeInput() {
6273
6321
  this.open.next(false);
6274
6322
  this.resetInput();
6275
6323
  this.query.emit('');
6276
6324
  }
6325
+ /** @internal */
6277
6326
  openInput() {
6278
6327
  this.open.next(true);
6279
6328
  }
@@ -6468,6 +6517,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
6468
6517
  }] } });
6469
6518
 
6470
6519
  class MultiSelectComponent extends BaseSelectDirective {
6520
+ /** @internal */
6471
6521
  static isStillPossibleMoveToLeft(eventSet) {
6472
6522
  return (!(eventSet.virtualCursorPosition === 0 &&
6473
6523
  eventSet.inputCursorPosition === 0 &&
@@ -6478,9 +6528,11 @@ class MultiSelectComponent extends BaseSelectDirective {
6478
6528
  eventSet.selectionLength > 0 &&
6479
6529
  Math.abs(eventSet.virtualCursorPosition) === eventSet.selectionLength));
6480
6530
  }
6531
+ /** @internal */
6481
6532
  static isMovingfromZeroToRight(eventSet) {
6482
6533
  return eventSet.virtualCursorPosition === 0 && eventSet.inputCursorPosition === 0 && eventSet.event.keyCode === ARROW_RIGHT;
6483
6534
  }
6535
+ /** @internal */
6484
6536
  static calculateNewCursorPostionOnKeyboardNavigation(cursorPosition, keyCode) {
6485
6537
  switch (keyCode) {
6486
6538
  case ARROW_LEFT:
@@ -6492,6 +6544,7 @@ class MultiSelectComponent extends BaseSelectDirective {
6492
6544
  }
6493
6545
  return cursorPosition;
6494
6546
  }
6547
+ /** @internal */
6495
6548
  static getKeyboardSelectAction(cursorPosition, keyCode) {
6496
6549
  if (cursorPosition <= -1 && keyCode === ARROW_RIGHT) {
6497
6550
  return KeyboardSelectAction.NEXT;
@@ -6507,9 +6560,11 @@ class MultiSelectComponent extends BaseSelectDirective {
6507
6560
  }
6508
6561
  return null;
6509
6562
  }
6563
+ /** @internal */
6510
6564
  get dropdownTmpl() {
6511
6565
  return this.explicitDropdown || this.implicitDropdown;
6512
6566
  }
6567
+ /** @internal */
6513
6568
  get tokenize() {
6514
6569
  return this.canTokenize && !this.isInputFocused && !this.dropdownOpen;
6515
6570
  }
@@ -6522,10 +6577,14 @@ class MultiSelectComponent extends BaseSelectDirective {
6522
6577
  this.dropdownWidthScale = '1x';
6523
6578
  this.selectionChange = new EventEmitter();
6524
6579
  this.blur = new EventEmitter();
6580
+ /** @internal */
6525
6581
  this.destroyed$ = new Subject();
6582
+ /** @internal */
6526
6583
  this.isInputFocusedViaTab = false;
6584
+ /** @internal */
6527
6585
  this.canTokenize = true;
6528
6586
  }
6587
+ /** @internal */
6529
6588
  get dropdownWidth() {
6530
6589
  switch (this.dropdownWidthScale) {
6531
6590
  case '1x':
@@ -6536,22 +6595,27 @@ class MultiSelectComponent extends BaseSelectDirective {
6536
6595
  return '200%';
6537
6596
  }
6538
6597
  }
6598
+ /** @internal */
6539
6599
  resetInput() {
6540
6600
  this.queryInput.resetInput();
6541
6601
  this.queryControl.setValue('');
6542
6602
  }
6603
+ /** @internal */
6543
6604
  focus() {
6544
6605
  this.queryInput.focusInput();
6545
6606
  }
6607
+ /** @internal */
6546
6608
  focusAndOpen() {
6547
6609
  this.queryInput.focusInput();
6548
6610
  this.open.next(true);
6549
6611
  }
6612
+ /** @internal */
6550
6613
  onFocus() {
6551
6614
  this.isInputFocused = true;
6552
6615
  this.scrollToEndOfSelection();
6553
6616
  this.canTokenize = false;
6554
6617
  }
6618
+ /** @internal */
6555
6619
  onBlur() {
6556
6620
  this.isInputFocused = false;
6557
6621
  this.isInputFocusedViaTab = false;
@@ -6645,6 +6709,7 @@ class MultiSelectComponent extends BaseSelectDirective {
6645
6709
  * Adds the given option to the selection and, by default, resets the input field.
6646
6710
  * @param option The option to add to the selection.
6647
6711
  * @param keepSearchQueryAndScrollPosition If true, the search query and scroll position of the dropdown will be kept, unless there are no options left.
6712
+ * @internal
6648
6713
  */
6649
6714
  addItemToSelection(option, keepSearchQueryAndScrollPosition = false) {
6650
6715
  if (option !== null) {
@@ -6657,6 +6722,7 @@ class MultiSelectComponent extends BaseSelectDirective {
6657
6722
  }
6658
6723
  this.resetSelectState();
6659
6724
  }
6725
+ /** @internal */
6660
6726
  removeItem(optionToRemove) {
6661
6727
  if (this.disabled) {
6662
6728
  return;
@@ -6674,17 +6740,23 @@ class MultiSelectComponent extends BaseSelectDirective {
6674
6740
  this.virtualCursorPosition++;
6675
6741
  }
6676
6742
  }
6743
+ /** @internal */
6677
6744
  propagateChange(_value) { }
6745
+ /** @internal */
6678
6746
  writeValue(value) {
6679
6747
  this.selection = value;
6680
6748
  }
6749
+ /** @internal */
6681
6750
  registerOnChange(fn) {
6682
6751
  this.propagateChange = fn;
6683
6752
  }
6753
+ /** @internal */
6684
6754
  registerOnTouched(_fn) { }
6755
+ /** @internal */
6685
6756
  setDisabledState(isDisabled) {
6686
6757
  this.disabled = isDisabled;
6687
6758
  }
6759
+ /** @internal */
6688
6760
  focusedViaTab() {
6689
6761
  this.isInputFocusedViaTab = true;
6690
6762
  }
@@ -6784,6 +6856,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
6784
6856
  class OptionGroupDropdownComponent extends KeyboardSelectDirective {
6785
6857
  constructor() {
6786
6858
  super(...arguments);
6859
+ /** @internal */
6787
6860
  this.NAME = 'OptionGroupDropdownComponent';
6788
6861
  this.optionGroups = [];
6789
6862
  this.showCreateNewOption = false;
@@ -6794,30 +6867,37 @@ class OptionGroupDropdownComponent extends KeyboardSelectDirective {
6794
6867
  this.onItemSelected = new EventEmitter();
6795
6868
  this.containerScrolled = new EventEmitter();
6796
6869
  this.createNewOption = new EventEmitter();
6870
+ /** @internal */
6797
6871
  this.isTopDropdown = false;
6798
6872
  }
6873
+ /** @internal */
6799
6874
  get isNewItem() {
6800
6875
  const options = this.optionGroups?.reduce((flatOptions, optionGroup) => flatOptions.concat(optionGroup.options), []) ??
6801
6876
  [];
6802
6877
  return BasicDropdownComponent.isNewItem(options, this.newOptionLabel ?? '', this.labelKey);
6803
6878
  }
6879
+ /** @internal */
6804
6880
  selectOption(option) {
6805
6881
  this.onItemSelected.emit(option);
6806
6882
  }
6883
+ /** @internal */
6807
6884
  trackByLabel(index, optionGroup) {
6808
6885
  return optionGroup.label + index;
6809
6886
  }
6887
+ /** @internal */
6810
6888
  onCreateNewOption() {
6811
6889
  if (!this.loading && this.newOptionLabel) {
6812
6890
  this.createNewOption.emit(this.newOptionLabel);
6813
6891
  }
6814
6892
  }
6893
+ /** @internal */
6815
6894
  trackByValue(_index, option) {
6816
6895
  if (this.trackByProperty) {
6817
6896
  return option[this.trackByProperty];
6818
6897
  }
6819
6898
  return option.value;
6820
6899
  }
6900
+ /** @internal */
6821
6901
  onPositionChange(event) {
6822
6902
  this.isTopDropdown = event.connectionPair.originY === 'top';
6823
6903
  }
@@ -6878,9 +6958,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
6878
6958
  }] } });
6879
6959
 
6880
6960
  class OptionsDropdownComponent {
6961
+ /** @internal */
6881
6962
  get displayStyle() {
6882
6963
  return this.isFlexEnabledTriggerContainer ? 'block' : 'inline-block';
6883
6964
  }
6965
+ /** @internal */
6884
6966
  get overlayPositions() {
6885
6967
  return [
6886
6968
  {
@@ -6897,6 +6979,7 @@ class OptionsDropdownComponent {
6897
6979
  }
6898
6980
  ];
6899
6981
  }
6982
+ /** @internal */
6900
6983
  set open(value) {
6901
6984
  if (this.disabled) {
6902
6985
  return;
@@ -6916,15 +6999,19 @@ class OptionsDropdownComponent {
6916
6999
  }
6917
7000
  this.changeDetection.markForCheck();
6918
7001
  }
7002
+ /** @internal */
6919
7003
  get open() {
6920
7004
  return this._open;
6921
7005
  }
7006
+ /** @internal */
6922
7007
  get options() {
6923
7008
  return this._options?.toArray() || [];
6924
7009
  }
7010
+ /** @internal */
6925
7011
  get optionIds() {
6926
7012
  return this.options.map((o) => o.optionId);
6927
7013
  }
7014
+ /** @internal */
6928
7015
  get lxButton() {
6929
7016
  return this.trigger?.nativeElement();
6930
7017
  }
@@ -6932,6 +7019,7 @@ class OptionsDropdownComponent {
6932
7019
  this.changeDetection = changeDetection;
6933
7020
  this.scrollStrategies = scrollStrategies;
6934
7021
  this.renderer = renderer;
7022
+ /** @internal */
6935
7023
  this.NAME = 'OptionsDropdownComponent';
6936
7024
  this.align = 'right';
6937
7025
  this.closeOnScroll = false;
@@ -6941,6 +7029,7 @@ class OptionsDropdownComponent {
6941
7029
  this.overlayPositioning = false;
6942
7030
  this.dropdownClass = '';
6943
7031
  this.isFlexEnabledTriggerContainer = false;
7032
+ /** @internal */
6944
7033
  this.overlayScrollStrategy = this.closeOnScroll ? this.scrollStrategies.close() : this.scrollStrategies.reposition();
6945
7034
  this.opened = new EventEmitter();
6946
7035
  this.closed = new EventEmitter();
@@ -6948,6 +7037,7 @@ class OptionsDropdownComponent {
6948
7037
  this.highlightedOptionIndex$ = new BehaviorSubject(0);
6949
7038
  this._open = false;
6950
7039
  this.isSubdropdownExpanded = false;
7040
+ /** @internal */
6951
7041
  this.destroyed$ = new Subject();
6952
7042
  this.listboxId = uniqueId('listbox');
6953
7043
  }
@@ -7016,10 +7106,12 @@ class OptionsDropdownComponent {
7016
7106
  this.destroyed$.next();
7017
7107
  this.destroyed$.complete();
7018
7108
  }
7109
+ /** @internal */
7019
7110
  closeDropdown() {
7020
7111
  this.open = false;
7021
7112
  this.closed.emit();
7022
7113
  }
7114
+ /** @internal */
7023
7115
  toggleOpen() {
7024
7116
  this.open = !this.open;
7025
7117
  if (!this.open) {
@@ -7089,6 +7181,7 @@ class OptionsDropdownComponent {
7089
7181
  this.renderer.setAttribute(this.lxButton, 'aria-controls', this.listboxId);
7090
7182
  this.renderer.setAttribute(this.lxButton, 'aria-expanded', 'false');
7091
7183
  }
7184
+ /** @internal */
7092
7185
  handleOptionKeyDown(event) {
7093
7186
  // In order to keep the centralized keyboard event management logic from `KeyboardActionSourceDirective`
7094
7187
  // we duplicate the option event here and trigger it again from lxButton.
@@ -7133,7 +7226,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
7133
7226
  }], trigger: [{
7134
7227
  type: ContentChild,
7135
7228
  args: [KeyboardActionSourceDirective]
7136
- }], _options: [{
7229
+ }],
7230
+ /** @internal */
7231
+ _options: [{
7137
7232
  type: ContentChildren,
7138
7233
  args: [OptionComponent, { descendants: true }]
7139
7234
  }], opened: [{
@@ -7409,22 +7504,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
7409
7504
  * ```
7410
7505
  */
7411
7506
  class PickerComponent {
7507
+ /** @internal */
7412
7508
  get activeDescendantsId() {
7413
7509
  return this._activeDescendantsId;
7414
7510
  }
7511
+ /** @internal */
7415
7512
  set activeDescendantsId(value) {
7416
7513
  this._activeDescendantsId = value;
7417
7514
  this.cdRef.markForCheck();
7418
7515
  }
7516
+ /** @internal */
7419
7517
  get open() {
7420
7518
  return this._open;
7421
7519
  }
7520
+ /** @internal */
7422
7521
  set open(value) {
7423
7522
  this._open = value;
7424
7523
  this.cdRef.markForCheck();
7425
7524
  }
7426
7525
  /**
7427
7526
  * Returns a negative margin, that is used to move the picker dropdown to the left side of the picker trigger.
7527
+ * @internal
7428
7528
  */
7429
7529
  get leftOffset() {
7430
7530
  const dropdownWidth = 185;
@@ -7434,11 +7534,16 @@ class PickerComponent {
7434
7534
  this.dir = dir;
7435
7535
  this.cdRef = cdRef;
7436
7536
  this.openDirection = 'right';
7537
+ /** @internal */
7437
7538
  this._isFormControl = false;
7539
+ /** @internal */
7438
7540
  this._open = false;
7541
+ /** @internal */
7439
7542
  this._lastSelectWasByKeyManager = false;
7543
+ /** @internal */
7440
7544
  this.destroyed$ = new Subject();
7441
7545
  }
7546
+ /** @internal */
7442
7547
  manageKeyboardEvents(event) {
7443
7548
  if (this.open) {
7444
7549
  const activeIndex = this.keyManager.activeItemIndex || 0;
@@ -7512,10 +7617,12 @@ class PickerComponent {
7512
7617
  ngOnDestroy() {
7513
7618
  this.destroyed$.next();
7514
7619
  }
7620
+ /** @internal */
7515
7621
  closePicker() {
7516
7622
  this.setActivePickerOption(-1);
7517
7623
  this.open = false;
7518
7624
  }
7625
+ /** @internal */
7519
7626
  toggleOpen() {
7520
7627
  this.open = !this.open;
7521
7628
  if (this.open) {
@@ -7533,13 +7640,16 @@ class PickerComponent {
7533
7640
  }
7534
7641
  }
7535
7642
  //#region Angular Forms API. This is only used when using the Picker inside a FormGroup
7643
+ /** @internal */
7536
7644
  writeValue(value) {
7537
7645
  this.options?.toArray().forEach((option) => (option.selected = option.value === value));
7538
7646
  }
7647
+ /** @internal */
7539
7648
  registerOnChange(fn) {
7540
7649
  this.propagateChange = fn;
7541
7650
  this._isFormControl = true;
7542
7651
  }
7652
+ /** @internal */
7543
7653
  registerOnTouched(fn) {
7544
7654
  this.onTouched = fn;
7545
7655
  }
@@ -7700,18 +7810,24 @@ class SelectListComponent extends BaseSelectDirective {
7700
7810
  this.options = [];
7701
7811
  this.selectionChange = new EventEmitter();
7702
7812
  this.onChooseItem = new EventEmitter();
7813
+ /** @internal */
7703
7814
  this.highlightedIndex = 0;
7815
+ /** @internal */
7704
7816
  this.destroyed$ = new Subject();
7705
7817
  }
7818
+ /** @internal */
7706
7819
  get dropdownTmpl() {
7707
7820
  return this.explicitDropdown || this.implicitDropdown;
7708
7821
  }
7822
+ /** @internal */
7709
7823
  resetInput() {
7710
7824
  this.queryControl.reset('', { emitEvent: false });
7711
7825
  }
7826
+ /** @internal */
7712
7827
  focus() {
7713
7828
  this.searchInput.nativeElement.focus();
7714
7829
  }
7830
+ /** @internal */
7715
7831
  focusAndOpen() {
7716
7832
  this.focus();
7717
7833
  this.open.next(true);
@@ -7793,6 +7909,7 @@ class SelectListComponent extends BaseSelectDirective {
7793
7909
  });
7794
7910
  this.focusAndOpen();
7795
7911
  }
7912
+ /** @internal */
7796
7913
  selectOption(index) {
7797
7914
  if (this.determineHighlightIndex(this.options, this.selection) === index) {
7798
7915
  this.onChooseItem.emit(this.selection.id);
@@ -7805,6 +7922,7 @@ class SelectListComponent extends BaseSelectDirective {
7805
7922
  this.dropdownComponent?.select(index);
7806
7923
  }
7807
7924
  }
7925
+ /** @internal */
7808
7926
  searchKeyChanged(event) {
7809
7927
  if (event.target.value === '' && !['ArrowUp', 'ArrowDown'].includes(event.key)) {
7810
7928
  this.highlightedIndex = this.determineHighlightIndex(this.dropdownComponent.options, this.selection);
@@ -7888,6 +8006,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
7888
8006
  * 2. Use the component in your template.
7889
8007
  */
7890
8008
  class SingleSelectComponent extends BaseSelectDirective {
8009
+ /** @internal */
7891
8010
  static calculateNewCursorPostionOnKeyboardNavigation(cursorPosition, keyCode) {
7892
8011
  switch (keyCode) {
7893
8012
  case ARROW_LEFT:
@@ -7899,6 +8018,7 @@ class SingleSelectComponent extends BaseSelectDirective {
7899
8018
  }
7900
8019
  return cursorPosition;
7901
8020
  }
8021
+ /** @internal */
7902
8022
  static getKeyboardSelectAction(cursorPosition, keyCode) {
7903
8023
  if (cursorPosition <= -1 && keyCode === ARROW_RIGHT) {
7904
8024
  return KeyboardSelectAction.NEXT;
@@ -7914,9 +8034,11 @@ class SingleSelectComponent extends BaseSelectDirective {
7914
8034
  }
7915
8035
  return null;
7916
8036
  }
8037
+ /** @internal */
7917
8038
  get selectedOptionTmpl() {
7918
8039
  return this.explicitSelectedOption || this.implicitSelectedOption;
7919
8040
  }
8041
+ /** @internal */
7920
8042
  get dropdownTmpl() {
7921
8043
  return this.explicitDropdown || this.implicitDropdown;
7922
8044
  }
@@ -7933,9 +8055,12 @@ class SingleSelectComponent extends BaseSelectDirective {
7933
8055
  this.allowClear = true;
7934
8056
  this.tabIndex = 0;
7935
8057
  this.markInvalid = false;
8058
+ /** @internal */
7936
8059
  this.destroyed$ = new Subject();
8060
+ /** @internal */
7937
8061
  this.isInputFocusedViaTab = false;
7938
8062
  }
8063
+ /** @internal */
7939
8064
  get cursorStyle() {
7940
8065
  if (this.disabled) {
7941
8066
  return 'default';
@@ -7947,6 +8072,7 @@ class SingleSelectComponent extends BaseSelectDirective {
7947
8072
  return 'pointer';
7948
8073
  }
7949
8074
  }
8075
+ /** @internal */
7950
8076
  get dropdownWidth() {
7951
8077
  switch (this.dropdownWidthScale) {
7952
8078
  case '1x':
@@ -7957,12 +8083,15 @@ class SingleSelectComponent extends BaseSelectDirective {
7957
8083
  return '200%';
7958
8084
  }
7959
8085
  }
8086
+ /** @internal */
7960
8087
  resetInput() {
7961
8088
  this.queryControl.reset('', { emitEvent: false });
7962
8089
  }
8090
+ /** @internal */
7963
8091
  focus() {
7964
8092
  this.queryInput.nativeElement.focus();
7965
8093
  }
8094
+ /** @internal */
7966
8095
  focusAndOpen() {
7967
8096
  this.queryInput.nativeElement.focus();
7968
8097
  this.open.next(true);
@@ -8055,6 +8184,7 @@ class SingleSelectComponent extends BaseSelectDirective {
8055
8184
  });
8056
8185
  keyboardEvents.openOnArrowDown$.subscribe(() => this.open.next(true));
8057
8186
  }
8187
+ /** @internal */
8058
8188
  selectOption(option) {
8059
8189
  this.selection = option;
8060
8190
  this.selectionChange.emit(option);
@@ -8066,6 +8196,7 @@ class SingleSelectComponent extends BaseSelectDirective {
8066
8196
  this.open.next(false);
8067
8197
  });
8068
8198
  }
8199
+ /** @internal */
8069
8200
  removeSelection() {
8070
8201
  this.selection = null;
8071
8202
  this.cd.markForCheck();
@@ -8074,17 +8205,23 @@ class SingleSelectComponent extends BaseSelectDirective {
8074
8205
  this.propagateChange(this.selection);
8075
8206
  this.resetSelectState();
8076
8207
  }
8208
+ /** @internal */
8077
8209
  propagateChange(_value) { }
8210
+ /** @internal */
8078
8211
  writeValue(newSelection) {
8079
8212
  this.selection = newSelection;
8080
8213
  }
8214
+ /** @internal */
8081
8215
  setDisabledState(isDisabled) {
8082
8216
  this.disabled = isDisabled;
8083
8217
  }
8218
+ /** @internal */
8084
8219
  registerOnChange(fn) {
8085
8220
  this.propagateChange = fn;
8086
8221
  }
8222
+ /** @internal */
8087
8223
  registerOnTouched(_fn) { }
8224
+ /** @internal */
8088
8225
  focusedViaTab() {
8089
8226
  this.isInputFocusedViaTab = true;
8090
8227
  }