@coreui/angular-pro 5.7.23 → 5.7.24

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.
@@ -1647,7 +1647,7 @@ class MultiSelectOptionComponent {
1647
1647
  #multiSelectService = inject(MultiSelectService);
1648
1648
  /**
1649
1649
  * Option style
1650
- * @returns ('checkbox' | 'text')
1650
+ * @returns 'checkbox' | 'text'
1651
1651
  * @default 'checkbox'
1652
1652
  */
1653
1653
  optionsStyleInput = input(undefined, { ...(ngDevMode ? { debugName: "optionsStyleInput" } : /* istanbul ignore next */ {}), alias: 'optionsStyle' });
@@ -1669,10 +1669,14 @@ class MultiSelectOptionComponent {
1669
1669
  * Option visible.
1670
1670
  * @returns boolean
1671
1671
  * @default true
1672
+ * @ignore
1672
1673
  */
1673
1674
  set visible(value) {
1674
1675
  this.#visible.set(value);
1675
1676
  }
1677
+ /**
1678
+ * @ignore
1679
+ */
1676
1680
  get visible() {
1677
1681
  return this.#visible();
1678
1682
  }
@@ -1729,12 +1733,22 @@ class MultiSelectOptionComponent {
1729
1733
  ...(ngDevMode ? [{ debugName: "#value" }] : /* istanbul ignore next */ []));
1730
1734
  #dropdownVisible = signal(false, /* @ts-ignore */
1731
1735
  ...(ngDevMode ? [{ debugName: "#dropdownVisible" }] : /* istanbul ignore next */ []));
1736
+ /**
1737
+ * Marks the option as the active one for keyboard navigation. Reads back as `false`
1738
+ * while the option is hidden or disabled.
1739
+ * @returns boolean
1740
+ * @default false
1741
+ * @ignore
1742
+ */
1732
1743
  set active(value) {
1733
1744
  const active = value && this.#visible() && !this.disabled;
1734
1745
  if (this.#active() !== active) {
1735
1746
  this.#active.set(active);
1736
1747
  }
1737
1748
  }
1749
+ /**
1750
+ * @ignore
1751
+ */
1738
1752
  get active() {
1739
1753
  return this.#active() && this.#visible();
1740
1754
  }
@@ -1748,6 +1762,10 @@ class MultiSelectOptionComponent {
1748
1762
  ...(ngDevMode ? [{ debugName: "#active" }] : /* istanbul ignore next */ []));
1749
1763
  #focused = signal(false, /* @ts-ignore */
1750
1764
  ...(ngDevMode ? [{ debugName: "#focused" }] : /* istanbul ignore next */ []));
1765
+ /**
1766
+ * Emits the option when it gains focus.
1767
+ * @returns MultiSelectOptionComponent
1768
+ */
1751
1769
  focusChange = output();
1752
1770
  hostClasses = computed(() => {
1753
1771
  const optionsStyle = this.optionsStyle();
@@ -5770,6 +5788,8 @@ class BackdropService {
5770
5788
  backdropClick$ = this.#backdropClick.asObservable();
5771
5789
  #document = inject(DOCUMENT);
5772
5790
  activeBackdrop;
5791
+ #clearBackdropId;
5792
+ #pendingBackdrop;
5773
5793
  get #scrollbarWidth() {
5774
5794
  // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes
5775
5795
  const documentWidth = this.#document.documentElement.clientWidth;
@@ -5778,6 +5798,7 @@ class BackdropService {
5778
5798
  }
5779
5799
  scrollbarWidth = this.#scrollbarWidth;
5780
5800
  setBackdrop(type = 'modal') {
5801
+ this.#flushClearBackdrop();
5781
5802
  const backdropElement = this.#document.createElement('div');
5782
5803
  backdropElement.classList.add(`${type}-backdrop`);
5783
5804
  backdropElement.classList.add('fade');
@@ -5803,17 +5824,37 @@ class BackdropService {
5803
5824
  delete backdropElement.__backdropClickHandler;
5804
5825
  }
5805
5826
  backdropElement.classList.remove('show');
5806
- setTimeout(() => {
5827
+ this.#flushClearBackdrop();
5828
+ this.#pendingBackdrop = backdropElement;
5829
+ this.#clearBackdropId = setTimeout(() => {
5830
+ this.#clearBackdropId = undefined;
5831
+ this.#pendingBackdrop = undefined;
5807
5832
  if (this.activeBackdrop === backdropElement) {
5808
5833
  this.resetScrollbar();
5834
+ this.activeBackdrop = undefined;
5809
5835
  }
5810
- if (backdropElement.parentElement === this.#document.body) {
5811
- this.#document.body.removeChild(backdropElement);
5812
- }
5836
+ this.#removeBackdrop(backdropElement);
5813
5837
  }, 300);
5814
5838
  }
5815
5839
  return undefined;
5816
5840
  }
5841
+ #flushClearBackdrop() {
5842
+ if (this.#clearBackdropId === undefined) {
5843
+ return;
5844
+ }
5845
+ clearTimeout(this.#clearBackdropId);
5846
+ this.#clearBackdropId = undefined;
5847
+ const pending = this.#pendingBackdrop;
5848
+ this.#pendingBackdrop = undefined;
5849
+ if (pending) {
5850
+ this.#removeBackdrop(pending);
5851
+ }
5852
+ }
5853
+ #removeBackdrop(backdropElement) {
5854
+ if (backdropElement.parentElement === this.#document.body) {
5855
+ this.#document.body.removeChild(backdropElement);
5856
+ }
5857
+ }
5817
5858
  get #isRTL() {
5818
5859
  return [this.#document.documentElement.dir, this.#document.body.dir].includes('rtl');
5819
5860
  }
@@ -14223,6 +14264,12 @@ class OtpDirective {
14223
14264
  #otpService = inject(OtpService);
14224
14265
  focusable = signal(false, /* @ts-ignore */
14225
14266
  ...(ngDevMode ? [{ debugName: "focusable" }] : /* istanbul ignore next */ []));
14267
+ /**
14268
+ * Placeholder for the slot. A string longer than one character is spread across the
14269
+ * slots, one character each; when unset the parent component's placeholder is used.
14270
+ * @returns string
14271
+ * @default ''
14272
+ */
14226
14273
  placeholderInput = input('', { ...(ngDevMode ? { debugName: "placeholderInput" } : /* istanbul ignore next */ {}), alias: 'placeholder' });
14227
14274
  placeholder = computed(() => {
14228
14275
  const placeholder = this.placeholderInput() || this.#otpService.placeholder();
@@ -14230,6 +14277,11 @@ class OtpDirective {
14230
14277
  return placeholder.length > 1 ? placeholder?.charAt(index) : placeholder;
14231
14278
  }, /* @ts-ignore */
14232
14279
  ...(ngDevMode ? [{ debugName: "placeholder" }] : /* istanbul ignore next */ []));
14280
+ /**
14281
+ * Value of the slot, kept in sync with the input element.
14282
+ * @returns string | number
14283
+ * @default ''
14284
+ */
14233
14285
  valueInput = input('', { ...(ngDevMode ? { debugName: "valueInput" } : /* istanbul ignore next */ {}), alias: 'value' });
14234
14286
  value = linkedSignal(this.valueInput, /* @ts-ignore */
14235
14287
  ...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
@@ -14238,6 +14290,12 @@ class OtpDirective {
14238
14290
  this.hostElement.nativeElement.value = String(value);
14239
14291
  }, /* @ts-ignore */
14240
14292
  ...(ngDevMode ? [{ debugName: "#valueEffect" }] : /* istanbul ignore next */ []));
14293
+ /**
14294
+ * Toggle the disabled state for the slot. Disabled slots are skipped when moving focus
14295
+ * between them.
14296
+ * @returns boolean
14297
+ * @default false
14298
+ */
14241
14299
  disabledInput = input(false, { ...(ngDevMode ? { debugName: "disabledInput" } : /* istanbul ignore next */ {}), transform: booleanAttribute, alias: 'disabled' });
14242
14300
  #disabled = linkedSignal(this.disabledInput, /* @ts-ignore */
14243
14301
  ...(ngDevMode ? [{ debugName: "#disabled" }] : /* istanbul ignore next */ []));
@@ -19751,7 +19809,8 @@ class StepperStepComponent {
19751
19809
  * If true, the step can be modified by the user.
19752
19810
  * @returns boolean
19753
19811
  * @default true
19754
- * todo - implement editable functionality
19812
+ * @ignore
19813
+ * @todo implement editable functionality
19755
19814
  */
19756
19815
  editable = input(true, { ...(ngDevMode ? { debugName: "editable" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
19757
19816
  /**
@@ -19759,7 +19818,8 @@ class StepperStepComponent {
19759
19818
  * If true, the step does not need to be completed for the overall process to succeed.
19760
19819
  * @returns boolean
19761
19820
  * @default false
19762
- * todo - implement optional functionality
19821
+ * @ignore
19822
+ * @todo implement optional functionality
19763
19823
  */
19764
19824
  optional = input(false, { ...(ngDevMode ? { debugName: "optional" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
19765
19825
  /**