@drecchia/tom-select 2.5.2-virtual-scroll.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.
Files changed (164) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +104 -0
  3. package/dist/css/tom-select.bootstrap4.css +573 -0
  4. package/dist/css/tom-select.bootstrap5.css +612 -0
  5. package/dist/css/tom-select.css +405 -0
  6. package/dist/css/tom-select.default.css +497 -0
  7. package/dist/css/tom-select.default.css.map +1 -0
  8. package/dist/esm/plugins/caret_position/plugin.js +163 -0
  9. package/dist/esm/plugins/caret_position/plugin.js.map +1 -0
  10. package/dist/esm/plugins/change_listener/plugin.js +51 -0
  11. package/dist/esm/plugins/change_listener/plugin.js.map +1 -0
  12. package/dist/esm/plugins/checkbox_options/plugin.js +179 -0
  13. package/dist/esm/plugins/checkbox_options/plugin.js.map +1 -0
  14. package/dist/esm/plugins/clear_button/plugin.js +76 -0
  15. package/dist/esm/plugins/clear_button/plugin.js.map +1 -0
  16. package/dist/esm/plugins/drag_drop/plugin.js +220 -0
  17. package/dist/esm/plugins/drag_drop/plugin.js.map +1 -0
  18. package/dist/esm/plugins/dropdown_header/plugin.js +102 -0
  19. package/dist/esm/plugins/dropdown_header/plugin.js.map +1 -0
  20. package/dist/esm/plugins/dropdown_input/plugin.js +224 -0
  21. package/dist/esm/plugins/dropdown_input/plugin.js.map +1 -0
  22. package/dist/esm/plugins/input_autogrow/plugin.js +74 -0
  23. package/dist/esm/plugins/input_autogrow/plugin.js.map +1 -0
  24. package/dist/esm/plugins/local_virtual_scroll/plugin.js +305 -0
  25. package/dist/esm/plugins/local_virtual_scroll/plugin.js.map +1 -0
  26. package/dist/esm/plugins/no_active_items/plugin.js +26 -0
  27. package/dist/esm/plugins/no_active_items/plugin.js.map +1 -0
  28. package/dist/esm/plugins/no_backspace_delete/plugin.js +32 -0
  29. package/dist/esm/plugins/no_backspace_delete/plugin.js.map +1 -0
  30. package/dist/esm/plugins/optgroup_columns/plugin.js +86 -0
  31. package/dist/esm/plugins/optgroup_columns/plugin.js.map +1 -0
  32. package/dist/esm/plugins/remove_button/plugin.js +134 -0
  33. package/dist/esm/plugins/remove_button/plugin.js.map +1 -0
  34. package/dist/esm/plugins/restore_on_backspace/plugin.js +42 -0
  35. package/dist/esm/plugins/restore_on_backspace/plugin.js.map +1 -0
  36. package/dist/esm/plugins/virtual_scroll/plugin.js +272 -0
  37. package/dist/esm/plugins/virtual_scroll/plugin.js.map +1 -0
  38. package/dist/js/plugins/caret_position.js +171 -0
  39. package/dist/js/plugins/caret_position.js.map +1 -0
  40. package/dist/js/plugins/change_listener.js +59 -0
  41. package/dist/js/plugins/change_listener.js.map +1 -0
  42. package/dist/js/plugins/checkbox_options.js +187 -0
  43. package/dist/js/plugins/checkbox_options.js.map +1 -0
  44. package/dist/js/plugins/clear_button.js +84 -0
  45. package/dist/js/plugins/clear_button.js.map +1 -0
  46. package/dist/js/plugins/drag_drop.js +228 -0
  47. package/dist/js/plugins/drag_drop.js.map +1 -0
  48. package/dist/js/plugins/dropdown_header.js +110 -0
  49. package/dist/js/plugins/dropdown_header.js.map +1 -0
  50. package/dist/js/plugins/dropdown_input.js +232 -0
  51. package/dist/js/plugins/dropdown_input.js.map +1 -0
  52. package/dist/js/plugins/input_autogrow.js +82 -0
  53. package/dist/js/plugins/input_autogrow.js.map +1 -0
  54. package/dist/js/plugins/local_virtual_scroll.js +313 -0
  55. package/dist/js/plugins/local_virtual_scroll.js.map +1 -0
  56. package/dist/js/plugins/no_active_items.js +34 -0
  57. package/dist/js/plugins/no_active_items.js.map +1 -0
  58. package/dist/js/plugins/no_backspace_delete.js +40 -0
  59. package/dist/js/plugins/no_backspace_delete.js.map +1 -0
  60. package/dist/js/plugins/optgroup_columns.js +94 -0
  61. package/dist/js/plugins/optgroup_columns.js.map +1 -0
  62. package/dist/js/plugins/remove_button.js +142 -0
  63. package/dist/js/plugins/remove_button.js.map +1 -0
  64. package/dist/js/plugins/restore_on_backspace.js +50 -0
  65. package/dist/js/plugins/restore_on_backspace.js.map +1 -0
  66. package/dist/js/plugins/virtual_scroll.js +280 -0
  67. package/dist/js/plugins/virtual_scroll.js.map +1 -0
  68. package/dist/js/tom-select.base.js +4167 -0
  69. package/dist/js/tom-select.base.js.map +1 -0
  70. package/dist/js/tom-select.base.min.js +373 -0
  71. package/dist/js/tom-select.base.min.js.map +1 -0
  72. package/dist/js/tom-select.complete.js +5364 -0
  73. package/dist/js/tom-select.complete.js.map +1 -0
  74. package/dist/js/tom-select.complete.min.js +489 -0
  75. package/dist/js/tom-select.complete.min.js.map +1 -0
  76. package/dist/js/tom-select.popular.js +4436 -0
  77. package/dist/js/tom-select.popular.js.map +1 -0
  78. package/dist/js/tom-select.popular.min.js +396 -0
  79. package/dist/js/tom-select.popular.min.js.map +1 -0
  80. package/dist/types/constants.d.ts +12 -0
  81. package/dist/types/contrib/highlight.d.ts +13 -0
  82. package/dist/types/contrib/microevent.d.ts +20 -0
  83. package/dist/types/contrib/microplugin.d.ts +71 -0
  84. package/dist/types/defaults.d.ts +53 -0
  85. package/dist/types/getSettings.d.ts +3 -0
  86. package/dist/types/plugins/caret_position/plugin.d.ts +16 -0
  87. package/dist/types/plugins/change_listener/plugin.d.ts +16 -0
  88. package/dist/types/plugins/checkbox_options/plugin.d.ts +17 -0
  89. package/dist/types/plugins/checkbox_options/types.d.ts +14 -0
  90. package/dist/types/plugins/clear_button/plugin.d.ts +17 -0
  91. package/dist/types/plugins/clear_button/types.d.ts +7 -0
  92. package/dist/types/plugins/drag_drop/plugin.d.ts +16 -0
  93. package/dist/types/plugins/dropdown_header/plugin.d.ts +17 -0
  94. package/dist/types/plugins/dropdown_header/types.d.ts +8 -0
  95. package/dist/types/plugins/dropdown_input/plugin.d.ts +16 -0
  96. package/dist/types/plugins/input_autogrow/plugin.d.ts +15 -0
  97. package/dist/types/plugins/local_virtual_scroll/plugin.d.ts +19 -0
  98. package/dist/types/plugins/local_virtual_scroll/types.d.ts +14 -0
  99. package/dist/types/plugins/no_active_items/plugin.d.ts +15 -0
  100. package/dist/types/plugins/no_backspace_delete/plugin.d.ts +15 -0
  101. package/dist/types/plugins/optgroup_columns/plugin.d.ts +16 -0
  102. package/dist/types/plugins/remove_button/plugin.d.ts +17 -0
  103. package/dist/types/plugins/remove_button/types.d.ts +6 -0
  104. package/dist/types/plugins/restore_on_backspace/plugin.d.ts +21 -0
  105. package/dist/types/plugins/virtual_scroll/plugin.d.ts +16 -0
  106. package/dist/types/tom-select.complete.d.ts +2 -0
  107. package/dist/types/tom-select.d.ts +594 -0
  108. package/dist/types/tom-select.popular.d.ts +2 -0
  109. package/dist/types/types/core.d.ts +50 -0
  110. package/dist/types/types/index.d.ts +2 -0
  111. package/dist/types/types/settings.d.ts +81 -0
  112. package/dist/types/utils.d.ts +95 -0
  113. package/dist/types/vanilla.d.ts +76 -0
  114. package/package.json +156 -0
  115. package/src/constants.ts +13 -0
  116. package/src/contrib/highlight.ts +81 -0
  117. package/src/contrib/microevent.ts +73 -0
  118. package/src/contrib/microplugin.ts +137 -0
  119. package/src/defaults.ts +95 -0
  120. package/src/getSettings.ts +176 -0
  121. package/src/plugins/caret_position/plugin.ts +73 -0
  122. package/src/plugins/change_listener/plugin.ts +23 -0
  123. package/src/plugins/checkbox_options/plugin.scss +11 -0
  124. package/src/plugins/checkbox_options/plugin.ts +130 -0
  125. package/src/plugins/checkbox_options/types.ts +15 -0
  126. package/src/plugins/clear_button/plugin.scss +33 -0
  127. package/src/plugins/clear_button/plugin.ts +54 -0
  128. package/src/plugins/clear_button/types.ts +8 -0
  129. package/src/plugins/drag_drop/plugin.scss +10 -0
  130. package/src/plugins/drag_drop/plugin.ts +143 -0
  131. package/src/plugins/dropdown_header/plugin.scss +24 -0
  132. package/src/plugins/dropdown_header/plugin.ts +57 -0
  133. package/src/plugins/dropdown_header/types.ts +9 -0
  134. package/src/plugins/dropdown_input/plugin.scss +43 -0
  135. package/src/plugins/dropdown_input/plugin.ts +97 -0
  136. package/src/plugins/input_autogrow/plugin.scss +15 -0
  137. package/src/plugins/input_autogrow/plugin.ts +56 -0
  138. package/src/plugins/local_virtual_scroll/plugin.ts +309 -0
  139. package/src/plugins/local_virtual_scroll/types.ts +9 -0
  140. package/src/plugins/no_active_items/plugin.ts +20 -0
  141. package/src/plugins/no_backspace_delete/plugin.ts +30 -0
  142. package/src/plugins/optgroup_columns/plugin.scss +25 -0
  143. package/src/plugins/optgroup_columns/plugin.ts +59 -0
  144. package/src/plugins/remove_button/plugin.scss +70 -0
  145. package/src/plugins/remove_button/plugin.ts +78 -0
  146. package/src/plugins/remove_button/types.ts +7 -0
  147. package/src/plugins/restore_on_backspace/plugin.ts +44 -0
  148. package/src/plugins/virtual_scroll/plugin.ts +219 -0
  149. package/src/scss/-tom-select.bootstrap4.scss +4 -0
  150. package/src/scss/-tom-select.bootstrap5.scss +4 -0
  151. package/src/scss/_dropdown.scss +99 -0
  152. package/src/scss/_items.scss +114 -0
  153. package/src/scss/tom-select.bootstrap4.scss +218 -0
  154. package/src/scss/tom-select.bootstrap5.scss +270 -0
  155. package/src/scss/tom-select.default.scss +89 -0
  156. package/src/scss/tom-select.scss +179 -0
  157. package/src/tom-select.complete.ts +35 -0
  158. package/src/tom-select.popular.ts +15 -0
  159. package/src/tom-select.ts +2807 -0
  160. package/src/types/core.ts +68 -0
  161. package/src/types/index.ts +3 -0
  162. package/src/types/settings.ts +98 -0
  163. package/src/utils.ts +230 -0
  164. package/src/vanilla.ts +210 -0
@@ -0,0 +1,612 @@
1
+ /**
2
+ * Tom Select Bootstrap 5
3
+ */
4
+ /**
5
+ * tom-select.css (v//@@version)
6
+ * Copyright (c) contributors
7
+ *
8
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
9
+ * file except in compliance with the License. You may obtain a copy of the License at:
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software distributed under
13
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
14
+ * ANY KIND, either express or implied. See the License for the specific language
15
+ * governing permissions and limitations under the License.
16
+ *
17
+ */
18
+ .ts-control {
19
+ border: 1px solid var(--bs-border-color);
20
+ padding: 0.375rem 0.75rem;
21
+ width: 100%;
22
+ overflow: hidden;
23
+ position: relative;
24
+ z-index: 1;
25
+ box-sizing: border-box;
26
+ box-shadow: none;
27
+ border-radius: var(--bs-border-radius);
28
+ display: flex;
29
+ flex-wrap: wrap;
30
+ }
31
+ .ts-wrapper.multi.has-items .ts-control {
32
+ padding: calc(0.375rem - 1px - 0) 0.75rem calc(0.375rem - 1px - 3px - 0);
33
+ }
34
+ .full .ts-control {
35
+ background-color: var(--bs-body-bg);
36
+ }
37
+ .disabled .ts-control, .disabled .ts-control * {
38
+ cursor: default !important;
39
+ }
40
+ .focus .ts-control {
41
+ box-shadow: none;
42
+ }
43
+ .ts-control > * {
44
+ vertical-align: baseline;
45
+ display: inline-block;
46
+ }
47
+ .ts-wrapper.multi .ts-control > div {
48
+ cursor: pointer;
49
+ margin: 0 3px 3px 0;
50
+ padding: 1px 5px;
51
+ background: #efefef;
52
+ color: #343a40;
53
+ border: 0 solid #dee2e6;
54
+ overflow: auto;
55
+ }
56
+ .ts-wrapper.multi .ts-control > div.active {
57
+ background: #0d6efd;
58
+ color: #fff;
59
+ border: 0 solid rgba(0, 0, 0, 0);
60
+ }
61
+ .ts-wrapper.multi.disabled .ts-control > div, .ts-wrapper.multi.disabled .ts-control > div.active {
62
+ color: rgb(134.5, 134.5, 134.5);
63
+ background: white;
64
+ border: 0 solid white;
65
+ }
66
+ .ts-control > input {
67
+ flex: 1 1 auto;
68
+ min-width: 7rem;
69
+ display: inline-block !important;
70
+ padding: 0 !important;
71
+ min-height: 0 !important;
72
+ max-height: none !important;
73
+ max-width: 100% !important;
74
+ margin: 0 !important;
75
+ text-indent: 0 !important;
76
+ border: 0 none !important;
77
+ background: none !important;
78
+ line-height: inherit !important;
79
+ user-select: auto !important;
80
+ box-shadow: none !important;
81
+ }
82
+ .ts-control > input::-ms-clear {
83
+ display: none;
84
+ }
85
+ .ts-control > input:focus {
86
+ outline: none !important;
87
+ }
88
+ .has-items .ts-control > input {
89
+ margin: 0px 4px !important;
90
+ }
91
+ .ts-control.rtl {
92
+ text-align: right;
93
+ }
94
+ .ts-control.rtl.single .ts-control:after {
95
+ left: calc(0.75rem + 5px);
96
+ right: auto;
97
+ }
98
+ .ts-control.rtl .ts-control > input {
99
+ margin: 0px 4px 0px -2px !important;
100
+ }
101
+ .disabled .ts-control {
102
+ opacity: 1;
103
+ background-color: var(--bs-secondary-bg);
104
+ }
105
+ .input-hidden .ts-control > input {
106
+ opacity: 0;
107
+ position: absolute;
108
+ left: -10000px;
109
+ }
110
+
111
+ .ts-dropdown {
112
+ position: absolute;
113
+ top: 100%;
114
+ left: 0;
115
+ width: 100%;
116
+ z-index: 10;
117
+ border: 1px solid #d0d0d0;
118
+ background: var(--bs-body-bg);
119
+ margin: 0.25rem 0 0;
120
+ border-top: 0 none;
121
+ box-sizing: border-box;
122
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
123
+ border-radius: 0 0 var(--bs-border-radius) var(--bs-border-radius);
124
+ }
125
+ .ts-dropdown [data-selectable] {
126
+ cursor: pointer;
127
+ overflow: hidden;
128
+ }
129
+ .ts-dropdown [data-selectable] .highlight {
130
+ background: rgba(255, 237, 40, 0.4);
131
+ border-radius: 1px;
132
+ }
133
+ .ts-dropdown .option,
134
+ .ts-dropdown .optgroup-header,
135
+ .ts-dropdown .no-results,
136
+ .ts-dropdown .create {
137
+ padding: 3px 0.75rem;
138
+ }
139
+ .ts-dropdown .option, .ts-dropdown [data-disabled], .ts-dropdown [data-disabled] [data-selectable].option {
140
+ cursor: inherit;
141
+ opacity: 0.5;
142
+ }
143
+ .ts-dropdown [data-selectable].option {
144
+ opacity: 1;
145
+ cursor: pointer;
146
+ }
147
+ .ts-dropdown .optgroup:first-child .optgroup-header {
148
+ border-top: 0 none;
149
+ }
150
+ .ts-dropdown .optgroup-header {
151
+ color: #6c757d;
152
+ background: var(--bs-body-bg);
153
+ cursor: default;
154
+ }
155
+ .ts-dropdown .active {
156
+ background-color: var(--bs-tertiary-bg);
157
+ color: var(--bs-body-color);
158
+ }
159
+ .ts-dropdown .active.create {
160
+ color: var(--bs-body-color);
161
+ }
162
+ .ts-dropdown .create {
163
+ color: rgba(52, 58, 64, 0.5);
164
+ }
165
+ .ts-dropdown .spinner {
166
+ display: inline-block;
167
+ width: 30px;
168
+ height: 30px;
169
+ margin: 3px 0.75rem;
170
+ }
171
+ .ts-dropdown .spinner::after {
172
+ content: " ";
173
+ display: block;
174
+ width: 24px;
175
+ height: 24px;
176
+ margin: 3px;
177
+ border-radius: 50%;
178
+ border: 5px solid #d0d0d0;
179
+ border-color: #d0d0d0 transparent #d0d0d0 transparent;
180
+ animation: lds-dual-ring 1.2s linear infinite;
181
+ }
182
+ @keyframes lds-dual-ring {
183
+ 0% {
184
+ transform: rotate(0deg);
185
+ }
186
+ 100% {
187
+ transform: rotate(360deg);
188
+ }
189
+ }
190
+
191
+ .ts-dropdown-content {
192
+ overflow: hidden auto;
193
+ max-height: 200px;
194
+ scroll-behavior: smooth;
195
+ }
196
+
197
+ .ts-wrapper.plugin-drag_drop .ts-dragging {
198
+ color: transparent !important;
199
+ }
200
+ .ts-wrapper.plugin-drag_drop .ts-dragging > * {
201
+ visibility: hidden !important;
202
+ }
203
+
204
+ .plugin-checkbox_options:not(.rtl) .option input {
205
+ margin-right: 0.5rem;
206
+ }
207
+
208
+ .plugin-checkbox_options.rtl .option input {
209
+ margin-left: 0.5rem;
210
+ }
211
+
212
+ /* stylelint-disable function-name-case */
213
+ .plugin-clear_button {
214
+ --ts-pr-clear-button: 1em;
215
+ }
216
+ .plugin-clear_button .clear-button {
217
+ opacity: 0;
218
+ position: absolute;
219
+ top: 50%;
220
+ transform: translateY(-50%);
221
+ right: calc(0.75rem - 5px);
222
+ margin-right: 0 !important;
223
+ background: transparent !important;
224
+ transition: opacity 0.5s;
225
+ cursor: pointer;
226
+ }
227
+ .plugin-clear_button.form-select .clear-button, .plugin-clear_button.single .clear-button {
228
+ right: max(var(--ts-pr-caret), 0.75rem);
229
+ }
230
+ .plugin-clear_button.focus.has-items .clear-button, .plugin-clear_button:not(.disabled):hover.has-items .clear-button {
231
+ opacity: 1;
232
+ }
233
+
234
+ .ts-wrapper .dropdown-header {
235
+ position: relative;
236
+ padding: 6px 0.75rem;
237
+ border-bottom: 1px solid #d0d0d0;
238
+ background: color-mix(var(--bs-body-bg), #d0d0d0, 85%);
239
+ border-radius: var(--bs-border-radius) var(--bs-border-radius) 0 0;
240
+ }
241
+ .ts-wrapper .dropdown-header-close {
242
+ position: absolute;
243
+ right: 0.75rem;
244
+ top: 50%;
245
+ color: #343a40;
246
+ opacity: 0.4;
247
+ margin-top: -12px;
248
+ line-height: 20px;
249
+ font-size: 20px !important;
250
+ }
251
+ .ts-wrapper .dropdown-header-close:hover {
252
+ color: black;
253
+ }
254
+
255
+ .plugin-dropdown_input.focus.dropdown-active .ts-control {
256
+ box-shadow: none;
257
+ border: 1px solid var(--bs-border-color);
258
+ box-shadow: var(--bs-box-shadow-inset);
259
+ }
260
+ .plugin-dropdown_input .dropdown-input {
261
+ border: 1px solid #d0d0d0;
262
+ border-width: 0 0 1px;
263
+ display: block;
264
+ padding: 0.375rem 0.75rem;
265
+ box-shadow: none;
266
+ width: 100%;
267
+ background: transparent;
268
+ }
269
+ .plugin-dropdown_input.focus .ts-dropdown .dropdown-input {
270
+ border-color: rgb(134, 182.5, 254);
271
+ outline: 0;
272
+ box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
273
+ }
274
+ .plugin-dropdown_input .items-placeholder {
275
+ border: 0 none !important;
276
+ box-shadow: none !important;
277
+ width: 100%;
278
+ }
279
+ .plugin-dropdown_input.has-items .items-placeholder, .plugin-dropdown_input.dropdown-active .items-placeholder {
280
+ display: none !important;
281
+ }
282
+
283
+ .ts-wrapper.plugin-input_autogrow.has-items .ts-control > input {
284
+ min-width: 0;
285
+ }
286
+ .ts-wrapper.plugin-input_autogrow.has-items.focus .ts-control > input {
287
+ flex: none;
288
+ min-width: 4px;
289
+ }
290
+ .ts-wrapper.plugin-input_autogrow.has-items.focus .ts-control > input::placeholder {
291
+ color: transparent;
292
+ }
293
+
294
+ .ts-dropdown.plugin-optgroup_columns .ts-dropdown-content {
295
+ display: flex;
296
+ }
297
+ .ts-dropdown.plugin-optgroup_columns .optgroup {
298
+ border-right: 1px solid #f2f2f2;
299
+ border-top: 0 none;
300
+ flex-grow: 1;
301
+ flex-basis: 0;
302
+ min-width: 0;
303
+ }
304
+ .ts-dropdown.plugin-optgroup_columns .optgroup:last-child {
305
+ border-right: 0 none;
306
+ }
307
+ .ts-dropdown.plugin-optgroup_columns .optgroup::before {
308
+ display: none;
309
+ }
310
+ .ts-dropdown.plugin-optgroup_columns .optgroup-header {
311
+ border-top: 0 none;
312
+ }
313
+
314
+ .ts-wrapper.plugin-remove_button .item {
315
+ display: inline-flex;
316
+ align-items: center;
317
+ }
318
+ .ts-wrapper.plugin-remove_button .item .remove {
319
+ color: inherit;
320
+ text-decoration: none;
321
+ vertical-align: middle;
322
+ display: inline-block;
323
+ padding: 0 5px;
324
+ border-radius: 0 2px 2px 0;
325
+ box-sizing: border-box;
326
+ }
327
+ .ts-wrapper.plugin-remove_button .item .remove:hover {
328
+ background: rgba(0, 0, 0, 0.05);
329
+ }
330
+ .ts-wrapper.plugin-remove_button.disabled .item .remove:hover {
331
+ background: none;
332
+ }
333
+ .ts-wrapper.plugin-remove_button .remove-single {
334
+ position: absolute;
335
+ right: 0;
336
+ top: 0;
337
+ font-size: 23px;
338
+ }
339
+
340
+ .ts-wrapper.plugin-remove_button:not(.rtl) .item {
341
+ padding-right: 0 !important;
342
+ }
343
+ .ts-wrapper.plugin-remove_button:not(.rtl) .item .remove {
344
+ border-left: 1px solid #dee2e6;
345
+ margin-left: 5px;
346
+ }
347
+ .ts-wrapper.plugin-remove_button:not(.rtl) .item.active .remove {
348
+ border-left-color: rgba(0, 0, 0, 0);
349
+ }
350
+ .ts-wrapper.plugin-remove_button:not(.rtl).disabled .item .remove {
351
+ border-left-color: white;
352
+ }
353
+
354
+ .ts-wrapper.plugin-remove_button.rtl .item {
355
+ padding-left: 0 !important;
356
+ }
357
+ .ts-wrapper.plugin-remove_button.rtl .item .remove {
358
+ border-right: 1px solid #dee2e6;
359
+ margin-right: 5px;
360
+ }
361
+ .ts-wrapper.plugin-remove_button.rtl .item.active .remove {
362
+ border-right-color: rgba(0, 0, 0, 0);
363
+ }
364
+ .ts-wrapper.plugin-remove_button.rtl.disabled .item .remove {
365
+ border-right-color: white;
366
+ }
367
+
368
+ :root {
369
+ --ts-pr-clear-button: 0px;
370
+ --ts-pr-caret: 0px;
371
+ --ts-pr-min: .75rem;
372
+ }
373
+
374
+ .ts-wrapper.single .ts-control, .ts-wrapper.single .ts-control input {
375
+ cursor: pointer;
376
+ }
377
+
378
+ .ts-control:not(.rtl) {
379
+ padding-right: max(var(--ts-pr-min), var(--ts-pr-clear-button) + var(--ts-pr-caret)) !important;
380
+ }
381
+
382
+ .ts-control.rtl {
383
+ padding-left: max(var(--ts-pr-min), var(--ts-pr-clear-button) + var(--ts-pr-caret)) !important;
384
+ }
385
+
386
+ .ts-wrapper {
387
+ position: relative;
388
+ }
389
+
390
+ .ts-dropdown,
391
+ .ts-control,
392
+ .ts-control input {
393
+ color: #343a40;
394
+ font-family: inherit;
395
+ font-size: inherit;
396
+ line-height: 1.5;
397
+ }
398
+
399
+ .ts-control,
400
+ .ts-wrapper.single.input-active .ts-control {
401
+ background: var(--bs-body-bg);
402
+ cursor: text;
403
+ }
404
+
405
+ .ts-hidden-accessible {
406
+ border: 0 !important;
407
+ clip: rect(0 0 0 0) !important;
408
+ clip-path: inset(50%) !important;
409
+ overflow: hidden !important;
410
+ padding: 0 !important;
411
+ position: absolute !important;
412
+ width: 1px !important;
413
+ white-space: nowrap !important;
414
+ }
415
+
416
+ .ts-dropdown,
417
+ .ts-dropdown.form-control,
418
+ .ts-dropdown.form-select {
419
+ height: auto;
420
+ padding: 0;
421
+ z-index: 1000;
422
+ background: var(--bs-body-bg);
423
+ border: 1px solid var(--bs-border-color-translucent);
424
+ border-radius: 0.375rem;
425
+ box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
426
+ }
427
+
428
+ .ts-dropdown .optgroup-header {
429
+ font-size: 0.875rem;
430
+ line-height: 1.5;
431
+ }
432
+ .ts-dropdown .optgroup:first-child::before {
433
+ display: none;
434
+ }
435
+ .ts-dropdown .optgroup::before {
436
+ content: " ";
437
+ display: block;
438
+ height: 0;
439
+ margin: 0.5rem 0;
440
+ overflow: hidden;
441
+ border-top: 1px solid var(--bs-border-color-translucent);
442
+ margin-left: -0.75rem;
443
+ margin-right: -0.75rem;
444
+ }
445
+ .ts-dropdown .create {
446
+ padding-left: 0.75rem;
447
+ }
448
+
449
+ .ts-dropdown-content {
450
+ padding: 5px 0;
451
+ }
452
+
453
+ .ts-control {
454
+ transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
455
+ }
456
+ @media (prefers-reduced-motion: reduce) {
457
+ .ts-control {
458
+ transition: none;
459
+ }
460
+ }
461
+ .ts-control {
462
+ display: flex;
463
+ align-items: center;
464
+ }
465
+ .focus .ts-control {
466
+ border-color: rgb(134, 182.5, 254);
467
+ outline: 0;
468
+ box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
469
+ }
470
+ .ts-control .item {
471
+ display: flex;
472
+ align-items: center;
473
+ }
474
+ .ts-control input::placeholder {
475
+ color: var(--bs-secondary-color, #a7aeb8);
476
+ opacity: 1;
477
+ }
478
+
479
+ .ts-wrapper.is-invalid,
480
+ .was-validated .invalid,
481
+ .was-validated :invalid + .ts-wrapper {
482
+ border-color: var(--bs-form-invalid-color);
483
+ }
484
+ .ts-wrapper.is-invalid:not(.single),
485
+ .was-validated .invalid:not(.single),
486
+ .was-validated :invalid + .ts-wrapper:not(.single) {
487
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
488
+ background-position: right calc(0.375em + 0.1875rem) center;
489
+ background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
490
+ background-repeat: no-repeat;
491
+ }
492
+ .ts-wrapper.is-invalid.single,
493
+ .was-validated .invalid.single,
494
+ .was-validated :invalid + .ts-wrapper.single {
495
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
496
+ background-position: right 0.75rem center, center right 2.25rem;
497
+ background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
498
+ background-repeat: no-repeat;
499
+ }
500
+ .ts-wrapper.is-invalid.focus .ts-control,
501
+ .was-validated .invalid.focus .ts-control,
502
+ .was-validated :invalid + .ts-wrapper.focus .ts-control {
503
+ border-color: var(--bs-form-invalid-color);
504
+ box-shadow: 0 0 0 0.25rem rgba(var(--bs-form-invalid-color), 0.25);
505
+ }
506
+
507
+ .ts-wrapper.is-valid,
508
+ .was-validated .valid,
509
+ .was-validated :valid + .ts-wrapper {
510
+ border-color: var(--bs-form-valid-color);
511
+ }
512
+ .ts-wrapper.is-valid:not(.single),
513
+ .was-validated .valid:not(.single),
514
+ .was-validated :valid + .ts-wrapper:not(.single) {
515
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e");
516
+ background-position: right calc(0.375em + 0.1875rem) center;
517
+ background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
518
+ background-repeat: no-repeat;
519
+ }
520
+ .ts-wrapper.is-valid.single,
521
+ .was-validated .valid.single,
522
+ .was-validated :valid + .ts-wrapper.single {
523
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e");
524
+ background-position: right 0.75rem center, center right 2.25rem;
525
+ background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
526
+ background-repeat: no-repeat;
527
+ }
528
+ .ts-wrapper.is-valid.focus .ts-control,
529
+ .was-validated .valid.focus .ts-control,
530
+ .was-validated :valid + .ts-wrapper.focus .ts-control {
531
+ border-color: var(--bs-form-valid-color);
532
+ box-shadow: 0 0 0 0.25rem rgba(var(--bs-form-valid-color), 0.25);
533
+ }
534
+
535
+ .ts-wrapper {
536
+ min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
537
+ display: flex;
538
+ }
539
+ .input-group-sm > .ts-wrapper, .ts-wrapper.form-select-sm, .ts-wrapper.form-control-sm {
540
+ min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
541
+ }
542
+ .input-group-sm > .ts-wrapper .ts-control, .ts-wrapper.form-select-sm .ts-control, .ts-wrapper.form-control-sm .ts-control {
543
+ border-radius: var(--bs-border-radius-sm);
544
+ font-size: 0.875rem;
545
+ }
546
+ .input-group-sm > .ts-wrapper.has-items .ts-control, .ts-wrapper.form-select-sm.has-items .ts-control, .ts-wrapper.form-control-sm.has-items .ts-control {
547
+ font-size: 0.875rem;
548
+ }
549
+ .input-group-sm > .ts-wrapper.multi.has-items .ts-control, .ts-wrapper.form-select-sm.multi.has-items .ts-control, .ts-wrapper.form-control-sm.multi.has-items .ts-control {
550
+ padding-top: calc((calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2)) - 1.5 * 0.875rem - calc((var(--bs-border-width) + 1px) * 2)) / 2) !important;
551
+ }
552
+ .ts-wrapper.multi.has-items .ts-control {
553
+ padding-left: calc(0.75rem - 5px);
554
+ --ts-pr-min: calc(0.75rem - 5px);
555
+ }
556
+ .ts-wrapper.multi .ts-control > div {
557
+ border-radius: calc(var(--bs-border-radius) - 1px);
558
+ }
559
+ .input-group-lg > .ts-wrapper, .ts-wrapper.form-control-lg, .ts-wrapper.form-select-lg {
560
+ min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
561
+ }
562
+ .input-group-lg > .ts-wrapper .ts-control, .ts-wrapper.form-control-lg .ts-control, .ts-wrapper.form-select-lg .ts-control {
563
+ border-radius: var(--bs-border-radius-lg);
564
+ font-size: 1.25rem;
565
+ }
566
+ .ts-wrapper:not(.form-control, .form-select) {
567
+ padding: 0;
568
+ border: none;
569
+ height: auto;
570
+ box-shadow: none;
571
+ background: none;
572
+ }
573
+ .ts-wrapper:not(.form-control, .form-select).single .ts-control {
574
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
575
+ background-repeat: no-repeat;
576
+ background-position: right 0.75rem center;
577
+ background-size: 16px 12px;
578
+ }
579
+ .ts-wrapper.form-select, .ts-wrapper.single {
580
+ --ts-pr-caret: 2.25rem;
581
+ }
582
+ .ts-wrapper.form-control, .ts-wrapper.form-select {
583
+ padding: 0 !important;
584
+ height: auto;
585
+ box-shadow: none;
586
+ display: flex;
587
+ }
588
+ .ts-wrapper.form-control .ts-control, .ts-wrapper.form-control.single.input-active .ts-control, .ts-wrapper.form-select .ts-control, .ts-wrapper.form-select.single.input-active .ts-control {
589
+ border: none !important;
590
+ }
591
+ .ts-wrapper.form-control:not(.disabled) .ts-control, .ts-wrapper.form-control:not(.disabled).single.input-active .ts-control, .ts-wrapper.form-select:not(.disabled) .ts-control, .ts-wrapper.form-select:not(.disabled).single.input-active .ts-control {
592
+ background: transparent !important;
593
+ }
594
+
595
+ .input-group > .ts-wrapper {
596
+ flex-grow: 1;
597
+ width: 1%;
598
+ }
599
+ .input-group > .ts-wrapper:not(:nth-child(2)) > .ts-control {
600
+ border-top-left-radius: 0;
601
+ border-bottom-left-radius: 0;
602
+ }
603
+ .input-group > .ts-wrapper:not(:last-child) > .ts-control {
604
+ border-top-right-radius: 0;
605
+ border-bottom-right-radius: 0;
606
+ }
607
+
608
+ .form-select .ts-dropdown,
609
+ .form-select .ts-control,
610
+ .form-select .ts-control input {
611
+ color: var(--bs-body-color);
612
+ }