slim-select 3.1.4 → 3.3.0

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/README.md CHANGED
@@ -140,6 +140,7 @@ new SlimSelect({
140
140
  alwaysOpen: false, // Keep dropdown always open
141
141
  showSearch: true, // Show search input
142
142
  focusSearch: true, // Auto focus search on open
143
+ keepSearch: false, // Keep search input value when dropdown closes
143
144
  ariaLabel: 'Combobox', // ARIA label for accessibility
144
145
  searchPlaceholder: 'Search', // Search input placeholder
145
146
  searchText: 'No Results', // Text when no results found
package/dist/index.d.ts CHANGED
@@ -66,6 +66,7 @@ declare class CssClasses {
66
66
  disabled: string;
67
67
  hide: string;
68
68
  constructor(classes?: Partial<CssClasses>);
69
+ getFirst(name: keyof Omit<CssClasses, 'getFirst'>): string;
69
70
  }
70
71
 
71
72
  export declare interface Events {
@@ -130,14 +131,18 @@ declare class Render {
130
131
  store: Store;
131
132
  callbacks: Callbacks;
132
133
  private lastSelectedOption;
134
+ private closeAnimationTimeout;
133
135
  main: Main;
134
136
  content: Content;
135
137
  classes: CssClasses;
136
138
  constructor(settings: Required<Settings>, classes: Required<CssClasses>, store: Store, callbacks: Callbacks);
139
+ private addClasses;
140
+ private removeClasses;
137
141
  enable(): void;
138
142
  disable(): void;
139
143
  open(): void;
140
144
  close(): void;
145
+ private getAnimationTiming;
141
146
  updateClassStyles(): void;
142
147
  updateAriaAttributes(): void;
143
148
  mainDiv(): Main;
@@ -160,6 +165,8 @@ declare class Render {
160
165
  option(option: Option_2): HTMLDivElement;
161
166
  destroy(): void;
162
167
  private highlightText;
168
+ private setContentDirection;
169
+ private setContentPosition;
163
170
  moveContentAbove(): void;
164
171
  moveContentBelow(): void;
165
172
  ensureElementInView(container: HTMLElement, element: HTMLElement): void;
@@ -227,6 +234,7 @@ export declare class Settings {
227
234
  alwaysOpen: boolean;
228
235
  showSearch: boolean;
229
236
  focusSearch: boolean;
237
+ keepSearch: boolean;
230
238
  ariaLabel: string;
231
239
  searchPlaceholder: string;
232
240
  searchText: string;
@@ -66,6 +66,7 @@ declare class CssClasses {
66
66
  disabled: string;
67
67
  hide: string;
68
68
  constructor(classes?: Partial<CssClasses>);
69
+ getFirst(name: keyof Omit<CssClasses, 'getFirst'>): string;
69
70
  }
70
71
 
71
72
  export declare interface Events {
@@ -130,14 +131,18 @@ declare class Render {
130
131
  store: Store;
131
132
  callbacks: Callbacks;
132
133
  private lastSelectedOption;
134
+ private closeAnimationTimeout;
133
135
  main: Main;
134
136
  content: Content;
135
137
  classes: CssClasses;
136
138
  constructor(settings: Required<Settings>, classes: Required<CssClasses>, store: Store, callbacks: Callbacks);
139
+ private addClasses;
140
+ private removeClasses;
137
141
  enable(): void;
138
142
  disable(): void;
139
143
  open(): void;
140
144
  close(): void;
145
+ private getAnimationTiming;
141
146
  updateClassStyles(): void;
142
147
  updateAriaAttributes(): void;
143
148
  mainDiv(): Main;
@@ -160,6 +165,8 @@ declare class Render {
160
165
  option(option: Option_2): HTMLDivElement;
161
166
  destroy(): void;
162
167
  private highlightText;
168
+ private setContentDirection;
169
+ private setContentPosition;
163
170
  moveContentAbove(): void;
164
171
  moveContentBelow(): void;
165
172
  ensureElementInView(container: HTMLElement, element: HTMLElement): void;
@@ -227,6 +234,7 @@ export declare class Settings {
227
234
  alwaysOpen: boolean;
228
235
  showSearch: boolean;
229
236
  focusSearch: boolean;
237
+ keepSearch: boolean;
230
238
  ariaLabel: string;
231
239
  searchPlaceholder: string;
232
240
  searchText: string;