bitboss-ui 2.0.5 → 2.0.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.
Files changed (431) hide show
  1. package/dist/components/BaseDialog/BaseDialog.vue.d.ts +1 -3
  2. package/dist/composables/useOptions.d.ts +1 -1
  3. package/dist/index.js +89 -87
  4. package/dist/index.js.map +1 -1
  5. package/dist/index10.js +7 -39
  6. package/dist/index10.js.map +1 -1
  7. package/dist/index101.js +60 -87
  8. package/dist/index101.js.map +1 -1
  9. package/dist/index103.js +113 -258
  10. package/dist/index103.js.map +1 -1
  11. package/dist/index105.js +254 -388
  12. package/dist/index105.js.map +1 -1
  13. package/dist/index107.js +387 -98
  14. package/dist/index107.js.map +1 -1
  15. package/dist/index109.js +52 -48
  16. package/dist/index109.js.map +1 -1
  17. package/dist/index11.js +74 -188
  18. package/dist/index11.js.map +1 -1
  19. package/dist/index111.js +35 -34
  20. package/dist/index111.js.map +1 -1
  21. package/dist/index113.js +105 -23
  22. package/dist/index113.js.map +1 -1
  23. package/dist/index115.js +23 -156
  24. package/dist/index115.js.map +1 -1
  25. package/dist/index117.js +153 -112
  26. package/dist/index117.js.map +1 -1
  27. package/dist/index119.js +115 -39
  28. package/dist/index119.js.map +1 -1
  29. package/dist/index12.js +38 -80
  30. package/dist/index12.js.map +1 -1
  31. package/dist/index121.js +36 -40
  32. package/dist/index121.js.map +1 -1
  33. package/dist/index122.js +34 -37
  34. package/dist/index122.js.map +1 -1
  35. package/dist/index123.js +30 -21
  36. package/dist/index123.js.map +1 -1
  37. package/dist/index124.js +47 -2
  38. package/dist/index124.js.map +1 -1
  39. package/dist/index125.js +35 -21
  40. package/dist/index125.js.map +1 -1
  41. package/dist/index126.js +2 -2
  42. package/dist/index126.js.map +1 -1
  43. package/dist/index127.js +21 -312
  44. package/dist/index127.js.map +1 -1
  45. package/dist/index128.js +2 -24
  46. package/dist/index128.js.map +1 -1
  47. package/dist/index129.js +312 -2
  48. package/dist/index129.js.map +1 -1
  49. package/dist/index13.js +196 -0
  50. package/dist/index13.js.map +1 -0
  51. package/dist/index130.js +24 -5
  52. package/dist/index130.js.map +1 -1
  53. package/dist/index131.js +2 -9
  54. package/dist/index131.js.map +1 -1
  55. package/dist/index132.js +5 -6
  56. package/dist/index132.js.map +1 -1
  57. package/dist/index133.js +9 -3
  58. package/dist/index133.js.map +1 -1
  59. package/dist/index134.js +6 -3
  60. package/dist/index134.js.map +1 -1
  61. package/dist/index135.js +1 -1
  62. package/dist/index136.js +1 -1
  63. package/dist/index137.js +1 -1
  64. package/dist/index138.js +1 -1
  65. package/dist/index139.js +1 -1
  66. package/dist/index14.js +73 -121
  67. package/dist/index14.js.map +1 -1
  68. package/dist/index140.js +1 -1
  69. package/dist/index141.js +1 -1
  70. package/dist/index142.js +1 -1
  71. package/dist/index143.js +1 -1
  72. package/dist/index144.js +1 -1
  73. package/dist/index145.js +1 -1
  74. package/dist/index146.js +1 -1
  75. package/dist/index147.js +1 -1
  76. package/dist/index148.js +1 -1
  77. package/dist/index149.js +1 -1
  78. package/dist/index150.js +1 -1
  79. package/dist/index151.js +1 -1
  80. package/dist/index152.js +1 -1
  81. package/dist/index153.js +1 -1
  82. package/dist/index154.js +1 -1
  83. package/dist/index155.js +1 -1
  84. package/dist/index156.js +1 -1
  85. package/dist/index157.js +1 -1
  86. package/dist/index158.js +1 -1
  87. package/dist/index159.js +2 -2
  88. package/dist/index16.js +119 -118
  89. package/dist/index16.js.map +1 -1
  90. package/dist/index160.js +6 -0
  91. package/dist/index160.js.map +1 -0
  92. package/dist/index161.js +1 -1
  93. package/dist/index163.js +2 -2
  94. package/dist/index165.js +1 -1
  95. package/dist/index166.js +1 -1
  96. package/dist/index167.js +1 -1
  97. package/dist/index168.js +1 -1
  98. package/dist/index169.js +2 -2
  99. package/dist/index170.js +6 -0
  100. package/dist/index170.js.map +1 -0
  101. package/dist/index171.js +3 -2
  102. package/dist/index171.js.map +1 -1
  103. package/dist/index173.js +2 -3
  104. package/dist/index173.js.map +1 -1
  105. package/dist/index174.js +1 -1
  106. package/dist/index175.js +1 -1
  107. package/dist/index176.js +1 -1
  108. package/dist/index177.js +1 -1
  109. package/dist/index178.js +1 -1
  110. package/dist/index179.js +1 -1
  111. package/dist/index18.js +120 -208
  112. package/dist/index18.js.map +1 -1
  113. package/dist/index180.js +1 -1
  114. package/dist/index181.js +1 -1
  115. package/dist/index182.js +1 -1
  116. package/dist/index183.js +2 -2
  117. package/dist/index184.js +6 -0
  118. package/dist/index184.js.map +1 -0
  119. package/dist/index185.js +1 -1
  120. package/dist/index187.js +1 -1
  121. package/dist/index189.js +1 -1
  122. package/dist/index190.js +1 -1
  123. package/dist/index191.js +1 -1
  124. package/dist/index192.js +1 -1
  125. package/dist/index193.js +1 -1
  126. package/dist/index194.js +1 -1
  127. package/dist/index195.js +1 -1
  128. package/dist/index196.js +1 -1
  129. package/dist/index197.js +3 -81
  130. package/dist/index197.js.map +1 -1
  131. package/dist/index198.js +3 -3
  132. package/dist/index198.js.map +1 -1
  133. package/dist/index199.js +81 -5
  134. package/dist/index199.js.map +1 -1
  135. package/dist/index20.js +193 -275
  136. package/dist/index20.js.map +1 -1
  137. package/dist/index200.js +2 -16
  138. package/dist/index200.js.map +1 -1
  139. package/dist/index201.js +3 -16
  140. package/dist/index201.js.map +1 -1
  141. package/dist/index202.js +124 -17
  142. package/dist/index202.js.map +1 -1
  143. package/dist/index203.js +5 -19
  144. package/dist/index203.js.map +1 -1
  145. package/dist/index204.js +119 -23
  146. package/dist/index204.js.map +1 -1
  147. package/dist/index205.js +19 -3
  148. package/dist/index205.js.map +1 -1
  149. package/dist/index206.js +16 -2
  150. package/dist/index206.js.map +1 -1
  151. package/dist/index207.js +16 -8
  152. package/dist/index207.js.map +1 -1
  153. package/dist/index208.js +2 -249
  154. package/dist/index208.js.map +1 -1
  155. package/dist/index209.js +5 -0
  156. package/dist/index209.js.map +1 -0
  157. package/dist/index210.js +35 -52
  158. package/dist/index210.js.map +1 -1
  159. package/dist/index211.js +173 -36
  160. package/dist/index211.js.map +1 -1
  161. package/dist/index212.js +6 -5
  162. package/dist/index212.js.map +1 -1
  163. package/dist/index213.js +39 -36
  164. package/dist/index213.js.map +1 -1
  165. package/dist/index215.js +13 -4
  166. package/dist/index215.js.map +1 -1
  167. package/dist/index216.js +5 -2
  168. package/dist/index216.js.map +1 -1
  169. package/dist/index217.js +369 -2
  170. package/dist/index217.js.map +1 -1
  171. package/dist/index218.js +6 -40
  172. package/dist/index218.js.map +1 -1
  173. package/dist/{index214.js → index219.js} +1 -1
  174. package/dist/{index214.js.map → index219.js.map} +1 -1
  175. package/dist/index22.js +287 -247
  176. package/dist/index22.js.map +1 -1
  177. package/dist/index220.js +4 -13
  178. package/dist/index220.js.map +1 -1
  179. package/dist/index221.js +2 -158
  180. package/dist/index221.js.map +1 -1
  181. package/dist/index222.js +3 -84
  182. package/dist/index222.js.map +1 -1
  183. package/dist/index223.js +10 -0
  184. package/dist/index223.js.map +1 -0
  185. package/dist/index224.js +19 -3
  186. package/dist/index224.js.map +1 -1
  187. package/dist/index225.js +26 -34
  188. package/dist/index225.js.map +1 -1
  189. package/dist/index226.js +3 -6
  190. package/dist/index226.js.map +1 -1
  191. package/dist/index227.js +249 -7
  192. package/dist/index227.js.map +1 -1
  193. package/dist/index228.js +49 -123
  194. package/dist/index228.js.map +1 -1
  195. package/dist/index229.js +44 -123
  196. package/dist/index229.js.map +1 -1
  197. package/dist/index230.js +5 -2
  198. package/dist/index230.js.map +1 -1
  199. package/dist/index231.js +49 -174
  200. package/dist/index231.js.map +1 -1
  201. package/dist/index232.js +158 -5
  202. package/dist/index232.js.map +1 -1
  203. package/dist/index233.js +83 -368
  204. package/dist/index233.js.map +1 -1
  205. package/dist/index235.js +2 -18
  206. package/dist/index235.js.map +1 -1
  207. package/dist/index236.js +17 -105
  208. package/dist/index236.js.map +1 -1
  209. package/dist/index237.js +109 -0
  210. package/dist/index237.js.map +1 -0
  211. package/dist/{index238.js → index239.js} +3 -3
  212. package/dist/{index238.js.map → index239.js.map} +1 -1
  213. package/dist/index24.js +249 -120
  214. package/dist/index24.js.map +1 -1
  215. package/dist/index241.js +2 -10
  216. package/dist/index241.js.map +1 -1
  217. package/dist/index242.js +9 -2
  218. package/dist/index242.js.map +1 -1
  219. package/dist/index243.js +3 -224
  220. package/dist/index243.js.map +1 -1
  221. package/dist/index244.js +9 -281
  222. package/dist/index244.js.map +1 -1
  223. package/dist/index245.js +23 -6
  224. package/dist/index245.js.map +1 -1
  225. package/dist/index246.js +6 -2
  226. package/dist/index246.js.map +1 -1
  227. package/dist/index247.js +16 -2
  228. package/dist/index247.js.map +1 -1
  229. package/dist/index248.js +224 -2
  230. package/dist/index248.js.map +1 -1
  231. package/dist/index249.js +281 -2
  232. package/dist/index249.js.map +1 -1
  233. package/dist/index250.js +6 -2
  234. package/dist/index250.js.map +1 -1
  235. package/dist/index251.js +2 -2
  236. package/dist/index252.js +2 -3
  237. package/dist/index252.js.map +1 -1
  238. package/dist/index253.js +2 -2
  239. package/dist/index254.js +2 -2
  240. package/dist/index255.js +2 -2
  241. package/dist/index256.js +122 -24
  242. package/dist/index256.js.map +1 -1
  243. package/dist/index257.js +429 -20
  244. package/dist/index257.js.map +1 -1
  245. package/dist/index258.js +6 -0
  246. package/dist/index258.js.map +1 -0
  247. package/dist/index26.js +119 -142
  248. package/dist/index26.js.map +1 -1
  249. package/dist/index260.js +6 -3
  250. package/dist/index260.js.map +1 -1
  251. package/dist/index261.js +21 -8
  252. package/dist/index261.js.map +1 -1
  253. package/dist/index263.js +9 -3
  254. package/dist/index263.js.map +1 -1
  255. package/dist/index264.js +439 -0
  256. package/dist/index264.js.map +1 -0
  257. package/dist/index265.js +127 -6
  258. package/dist/index265.js.map +1 -1
  259. package/dist/index266.js +199 -15
  260. package/dist/index266.js.map +1 -1
  261. package/dist/index267.js +4 -9
  262. package/dist/index267.js.map +1 -1
  263. package/dist/index268.js +89 -3
  264. package/dist/index268.js.map +1 -1
  265. package/dist/index269.js +2 -12
  266. package/dist/index269.js.map +1 -1
  267. package/dist/index270.js +2 -9
  268. package/dist/index270.js.map +1 -1
  269. package/dist/index271.js +2 -9
  270. package/dist/index271.js.map +1 -1
  271. package/dist/index272.js +2 -17
  272. package/dist/index272.js.map +1 -1
  273. package/dist/index273.js +2 -431
  274. package/dist/index273.js.map +1 -1
  275. package/dist/index274.js +2 -89
  276. package/dist/index274.js.map +1 -1
  277. package/dist/index275.js +28 -2
  278. package/dist/index275.js.map +1 -1
  279. package/dist/index276.js +17 -64
  280. package/dist/index276.js.map +1 -1
  281. package/dist/index278.js +3 -200
  282. package/dist/index278.js.map +1 -1
  283. package/dist/index279.js +12 -2
  284. package/dist/index279.js.map +1 -1
  285. package/dist/index28.js +138 -83
  286. package/dist/index28.js.map +1 -1
  287. package/dist/index280.js +7 -124
  288. package/dist/index280.js.map +1 -1
  289. package/dist/index281.js +7 -20
  290. package/dist/index281.js.map +1 -1
  291. package/dist/index282.js +20 -0
  292. package/dist/index282.js.map +1 -0
  293. package/dist/index283.js +2 -436
  294. package/dist/index283.js.map +1 -1
  295. package/dist/index284.js +68 -126
  296. package/dist/index284.js.map +1 -1
  297. package/dist/index285.js +5 -3
  298. package/dist/index285.js.map +1 -1
  299. package/dist/index286.js +1 -1
  300. package/dist/index287.js +3 -211
  301. package/dist/index287.js.map +1 -1
  302. package/dist/index288.js +214 -0
  303. package/dist/index288.js.map +1 -0
  304. package/dist/index290.js +4 -7
  305. package/dist/index290.js.map +1 -1
  306. package/dist/index291.js +4 -19
  307. package/dist/index291.js.map +1 -1
  308. package/dist/index292.js +58 -6
  309. package/dist/index292.js.map +1 -1
  310. package/dist/index293.js +35 -4
  311. package/dist/index293.js.map +1 -1
  312. package/dist/index294.js +7 -4
  313. package/dist/index294.js.map +1 -1
  314. package/dist/index295.js +6 -58
  315. package/dist/index295.js.map +1 -1
  316. package/dist/index296.js +18 -34
  317. package/dist/index296.js.map +1 -1
  318. package/dist/index297.js +2 -11
  319. package/dist/index297.js.map +1 -1
  320. package/dist/index298.js +47 -2
  321. package/dist/index298.js.map +1 -1
  322. package/dist/index299.js +10 -46
  323. package/dist/index299.js.map +1 -1
  324. package/dist/index30.js +85 -115
  325. package/dist/index30.js.map +1 -1
  326. package/dist/index32.js +111 -112
  327. package/dist/index32.js.map +1 -1
  328. package/dist/index34.js +114 -365
  329. package/dist/index34.js.map +1 -1
  330. package/dist/index36.js +361 -283
  331. package/dist/index36.js.map +1 -1
  332. package/dist/index38.js +288 -106
  333. package/dist/index38.js.map +1 -1
  334. package/dist/index40.js +114 -121
  335. package/dist/index40.js.map +1 -1
  336. package/dist/index42.js +113 -200
  337. package/dist/index42.js.map +1 -1
  338. package/dist/index44.js +180 -90
  339. package/dist/index44.js.map +1 -1
  340. package/dist/index46.js +110 -78
  341. package/dist/index46.js.map +1 -1
  342. package/dist/index48.js +89 -54
  343. package/dist/index48.js.map +1 -1
  344. package/dist/index5.js +14 -78
  345. package/dist/index5.js.map +1 -1
  346. package/dist/index50.js +54 -84
  347. package/dist/index50.js.map +1 -1
  348. package/dist/index52.js +86 -60
  349. package/dist/index52.js.map +1 -1
  350. package/dist/index54.js +59 -40
  351. package/dist/index54.js.map +1 -1
  352. package/dist/index56.js +42 -55
  353. package/dist/index56.js.map +1 -1
  354. package/dist/index58.js +53 -103
  355. package/dist/index58.js.map +1 -1
  356. package/dist/index6.js +36 -58
  357. package/dist/index6.js.map +1 -1
  358. package/dist/index60.js +103 -89
  359. package/dist/index60.js.map +1 -1
  360. package/dist/index62.js +61 -88
  361. package/dist/index62.js.map +1 -1
  362. package/dist/index64.js +119 -77
  363. package/dist/index64.js.map +1 -1
  364. package/dist/index66.js +77 -91
  365. package/dist/index66.js.map +1 -1
  366. package/dist/index68.js +88 -49
  367. package/dist/index68.js.map +1 -1
  368. package/dist/index7.js +78 -20
  369. package/dist/index7.js.map +1 -1
  370. package/dist/index70.js +51 -304
  371. package/dist/index70.js.map +1 -1
  372. package/dist/index72.js +299 -115
  373. package/dist/index72.js.map +1 -1
  374. package/dist/index74.js +120 -214
  375. package/dist/index74.js.map +1 -1
  376. package/dist/index76.js +213 -36
  377. package/dist/index76.js.map +1 -1
  378. package/dist/index78.js +47 -0
  379. package/dist/index78.js.map +1 -0
  380. package/dist/index79.js +119 -230
  381. package/dist/index79.js.map +1 -1
  382. package/dist/index8.js +61 -7
  383. package/dist/index8.js.map +1 -1
  384. package/dist/index81.js +227 -154
  385. package/dist/index81.js.map +1 -1
  386. package/dist/index83.js +154 -207
  387. package/dist/index83.js.map +1 -1
  388. package/dist/index85.js +215 -26
  389. package/dist/index85.js.map +1 -1
  390. package/dist/index87.js +27 -88
  391. package/dist/index87.js.map +1 -1
  392. package/dist/index89.js +53 -88
  393. package/dist/index89.js.map +1 -1
  394. package/dist/index9.js +17 -76
  395. package/dist/index9.js.map +1 -1
  396. package/dist/index91.js +75 -44
  397. package/dist/index91.js.map +1 -1
  398. package/dist/index93.js +89 -15
  399. package/dist/index93.js.map +1 -1
  400. package/dist/index95.js +15 -166
  401. package/dist/index95.js.map +1 -1
  402. package/dist/index97.js +120 -59
  403. package/dist/index97.js.map +1 -1
  404. package/dist/index99.js +66 -52
  405. package/dist/index99.js.map +1 -1
  406. package/dist/style.css +1 -1
  407. package/package.json +2 -2
  408. package/dist/index120.js +0 -47
  409. package/dist/index120.js.map +0 -1
  410. package/dist/index164.js +0 -6
  411. package/dist/index164.js.map +0 -1
  412. package/dist/index172.js +0 -6
  413. package/dist/index172.js.map +0 -1
  414. package/dist/index188.js +0 -6
  415. package/dist/index188.js.map +0 -1
  416. package/dist/index234.js +0 -6
  417. package/dist/index234.js.map +0 -1
  418. package/dist/index240.js +0 -5
  419. package/dist/index240.js.map +0 -1
  420. package/dist/index259.js +0 -10
  421. package/dist/index259.js.map +0 -1
  422. package/dist/index262.js +0 -26
  423. package/dist/index262.js.map +0 -1
  424. package/dist/index277.js +0 -8
  425. package/dist/index277.js.map +0 -1
  426. package/dist/index3.js +0 -17
  427. package/dist/index3.js.map +0 -1
  428. package/dist/index4.js +0 -43
  429. package/dist/index4.js.map +0 -1
  430. package/dist/index77.js +0 -130
  431. package/dist/index77.js.map +0 -1
package/dist/index44.js CHANGED
@@ -1,122 +1,212 @@
1
- import { defineComponent as w, ref as g, computed as u, onMounted as y, watch as V, nextTick as k, openBlock as x, createBlock as B, normalizeClass as $, withCtx as r, renderSlot as t, createVNode as i, createElementVNode as C, mergeProps as T } from "vue";
2
- import v from "./index220.js";
3
- import E from "./index218.js";
1
+ import { defineComponent as Y, ref as r, computed as k, toRef as B, openBlock as f, createBlock as C, normalizeClass as x, withCtx as a, renderSlot as u, createVNode as O, unref as v, createElementVNode as $, createElementBlock as ee, Fragment as oe, createCommentVNode as te, withDirectives as ne, mergeProps as le, isRef as ae, withModifiers as s, withKeys as y, vModelDynamic as ie, nextTick as re } from "vue";
2
+ /* empty css */
3
+ /* empty css */
4
+ /* empty css */
5
+ import ue from "./index124.js";
4
6
  /* empty css */
5
- import G from "./index122.js";
7
+ import { isNotNil as se } from "./index131.js";
8
+ import { last as de } from "./index209.js";
9
+ import { useOptions as pe } from "./index232.js";
10
+ import ce from "./index237.js";
6
11
  /* empty css */
7
- const M = ["id", "aria-describedby", "autocomplete", "autofocus", "disabled", "name", "placeholder", "readonly", "required", "rows", "value"], z = /* @__PURE__ */ w({
8
- __name: "BaseTextarea",
12
+ import me from "./index239.js";
13
+ /* empty css */
14
+ import fe from "./index213.js";
15
+ /* empty css */
16
+ import ve from "./index215.js";
17
+ const ye = { class: "bb-base-tag__input-container" }, be = ["id", "aria-describedby", "autocomplete", "autofocus", "disabled", "placeholder", "readonly", "required", "onKeydown"], qe = /* @__PURE__ */ Y({
18
+ __name: "BaseTag",
9
19
  props: {
10
20
  "append:icon": {},
11
21
  ariaDescribedby: {},
12
22
  autocomplete: {},
13
- autoGrow: { type: Boolean },
14
23
  autofocus: {},
24
+ comma: { type: Boolean },
15
25
  disabled: { type: Boolean },
26
+ divider: { default: "Enter" },
16
27
  hasErrors: { type: Boolean },
17
28
  id: {},
18
29
  loading: { type: Boolean },
19
30
  modelValue: {},
31
+ multiple: { type: Boolean, default: !0 },
20
32
  name: {},
21
33
  placeholder: {},
22
34
  "prepend:icon": {},
23
35
  readonly: {},
24
- required: { type: Boolean },
25
- rows: {}
36
+ required: { type: Boolean }
26
37
  },
27
- emits: ["blur", "change", "click", "focus", "input", "keydown", "mousedown", "mouseup", "update:modelValue"],
28
- setup(d, { emit: p }) {
29
- const o = d, a = p;
30
- if (o.rows && o.autoGrow)
31
- throw new Error(
32
- "Textarea: You cannot set rows and auto-grow attributes together. You either use rows and let the user resize or define a minimum height in CSS with auto-grow."
33
- );
34
- const n = g(null), c = u(() => ({
35
- "bb-base-textarea": !0,
36
- "bb-base-textarea--auto-grow": o.autoGrow,
37
- "bb-base-textarea--disabled": o.disabled,
38
- "bb-base-textarea--errors": o.hasErrors,
39
- "bb-base-textarea--loading": o.loading,
40
- "bb-base-textarea--readonly": o.readonly
41
- })), m = u(
42
- () => o.modelValue ? o.modelValue : ""
43
- );
44
- y(() => {
45
- o.autoGrow && o.modelValue && l();
46
- }), V(
47
- () => o.modelValue,
48
- () => {
49
- o.autoGrow && k(l);
38
+ emits: ["blur", "change", "click", "duplicate", "focus", "inactive", "input", "keydown", "keyup", "update:modelValue"],
39
+ setup(I, { emit: D }) {
40
+ const o = I, l = D;
41
+ if (o.multiple && !Array.isArray(o.modelValue))
42
+ throw new Error('Multiple is set to "true" but modelValue is not an array.');
43
+ const b = r(null), T = r(null), L = k(() => o.placeholder), V = r(null), w = r(null), i = k(
44
+ () => o.comma ? V.value : w.value
45
+ ), d = r(null), E = () => {
46
+ d.value instanceof HTMLInputElement && d.value.focus();
47
+ }, K = !o.multiple && se(o.modelValue) || o.multiple && !!o.modelValue.length, N = r([]), {
48
+ query: t,
49
+ alignQueryToState: q,
50
+ addCurrentQueryToManualItems: A,
51
+ selectedOptions: p,
52
+ selectOption: M,
53
+ unselectOption: P,
54
+ valueIsSelected: _,
55
+ manualItems: S
56
+ } = pe({
57
+ emit: l,
58
+ itemText: void 0,
59
+ itemValue: void 0,
60
+ modelValue: B(o, "modelValue"),
61
+ multiple: o.multiple,
62
+ resetQueryOnOptionSelected: !0,
63
+ stash: !1,
64
+ items: B(o, "modelValue"),
65
+ enforceCoherence: !1,
66
+ prefill: K,
67
+ modelValueDebounceTime: 0,
68
+ dependencies: N,
69
+ depsDebounceTime: 0,
70
+ queryDebounceTime: 0,
71
+ disabled: B(o, "disabled")
72
+ }), g = r(!1), F = () => {
73
+ g.value = !0;
74
+ }, H = () => {
75
+ g.value = !1, l("inactive");
76
+ }, h = k(() => !(o.readonly || o.disabled || !i.value && o.multiple)), Q = (e) => {
77
+ var n;
78
+ h.value && (!o.multiple || t.value || (e.preventDefault(), p.value.length && ((n = i.value) == null || n.focusPrevious())));
79
+ }, R = (e) => {
80
+ var n;
81
+ h.value && (!o.multiple || t.value || (e.preventDefault(), p.value.length && ((n = i.value) == null || n.focusNext())));
82
+ }, U = async () => {
83
+ var e, n;
84
+ !h.value || t.value || !p.value.length || ((e = i.value) != null && e.getHighlighted() && i.value.confirmOption(), await re(), (n = i.value) == null || n.focusPrevious());
85
+ }, z = () => {
86
+ var e;
87
+ (e = i.value) == null || e.blur();
88
+ }, Z = async (e) => {
89
+ var n;
90
+ if (l("keyup", e), o.readonly || o.disabled) {
91
+ e.preventDefault();
92
+ return;
93
+ }
94
+ if (/^[A-Za-z0-9]$/.test(e.key) && ((n = i.value) == null || n.blur()), e.key === o.divider || e.key === "Unidentified" && t.value.includes(o.divider)) {
95
+ if (o.divider.length === 1 && t.value.includes(o.divider)) {
96
+ const m = t.value.split(o.divider)[0];
97
+ if (m)
98
+ t.value = m;
99
+ else {
100
+ t.value = "";
101
+ return;
102
+ }
103
+ }
104
+ if (!t.value) return;
105
+ _(t.value) ? (l("duplicate", t.value), t.value = "") : (A(), j(de(S.value)));
50
106
  }
51
- );
52
- function f(e) {
53
- if (e.stopPropagation(), e.target instanceof HTMLTextAreaElement) {
54
- let s = e.target.value;
55
- a("input", e), a("update:modelValue", s || null);
107
+ }, j = (e) => {
108
+ M(e), E(), o.multiple || close();
109
+ }, G = (e) => {
110
+ P(e), E();
111
+ }, J = (e) => {
112
+ l("focus", e), F(), document.addEventListener("click", c), document.addEventListener("focusin", c);
113
+ }, W = (e) => {
114
+ l("click", e), !(o.disabled || o.readonly) && d.value instanceof HTMLElement && d.value.focus();
115
+ }, c = async (e) => {
116
+ if (e.target instanceof Node && b.value && !b.value.$el.contains(e.target)) {
117
+ close(), H(), document.removeEventListener("click", c), document.removeEventListener("focusin", c), q();
118
+ return;
56
119
  }
57
- }
58
- function b(e) {
59
- e.stopPropagation(), e.target instanceof HTMLTextAreaElement && a("keydown", e);
60
- }
61
- const h = {
62
- onBlur: (e) => a("blur", e),
63
- onChange: (e) => a("change", e),
64
- onClick: (e) => a("click", e),
65
- onFocus: (e) => a("focus", e),
66
- onMousedown: (e) => a("mousedown", e),
67
- onMouseup: (e) => a("mouseup", e)
120
+ }, X = {
121
+ onBlur: (e) => l("blur", e),
122
+ onChange: (e) => l("change", e),
123
+ onKeydown: (e) => l("keydown", e),
124
+ onInput: (e) => l("input", e)
68
125
  };
69
- function l() {
70
- n.value && (n.value.style.height = "0px", n.value.style.height = `${n.value.scrollHeight}px`);
71
- }
72
- return (e, s) => (x(), B(v, {
73
- class: $(c.value)
126
+ return (e, n) => (f(), C(ve, {
127
+ ref_key: "outerContainer",
128
+ ref: b,
129
+ class: x({
130
+ "bb-base-tag": !0,
131
+ "bb-base-tag--active": g.value,
132
+ "bb-base-tag--disabled": e.disabled,
133
+ "bb-base-tag--loading": e.loading,
134
+ "bb-base-tag--errors": e.hasErrors,
135
+ "bb-base-tag--readonly": e.readonly
136
+ }),
137
+ onClick: W
74
138
  }, {
75
- "prepend-outer": r(() => [
76
- t(e.$slots, "prepend-outer")
139
+ "prepend-outer": a(() => [
140
+ u(e.$slots, "prepend-outer")
77
141
  ]),
78
- "append-outer": r(() => [
79
- t(e.$slots, "append-outer")
142
+ "append-outer": a(() => [
143
+ u(e.$slots, "append-outer")
80
144
  ]),
81
- default: r(() => [
82
- i(E, {
145
+ default: a(() => [
146
+ O(fe, {
147
+ ref_key: "innerContainer",
148
+ ref: T,
83
149
  "append:icon": o["append:icon"],
84
150
  "prepend:icon": o["prepend:icon"]
85
151
  }, {
86
- prepend: r(() => [
87
- t(e.$slots, "prepend")
152
+ prepend: a(() => [
153
+ u(e.$slots, "prepend")
88
154
  ]),
89
- prefix: r(() => [
90
- t(e.$slots, "prefix")
155
+ prefix: a(() => [
156
+ u(e.$slots, "prefix")
91
157
  ]),
92
- append: r(() => [
93
- t(e.$slots, "append")
158
+ append: a(() => [
159
+ u(e.$slots, "append")
94
160
  ]),
95
- suffix: r(() => [
96
- t(e.$slots, "suffix")
161
+ suffix: a(() => [
162
+ u(e.$slots, "suffix")
97
163
  ]),
98
- default: r(() => [
99
- i(G, null, {
100
- default: r(() => [
101
- C("textarea", T({
102
- id: e.id,
103
- ref_key: "textarea",
104
- ref: n,
105
- "aria-describedby": e.ariaDescribedby,
106
- autocomplete: e.autocomplete,
107
- autofocus: e.autofocus,
108
- class: "bb-base-textarea__input",
109
- disabled: e.disabled,
110
- name: e.name,
111
- placeholder: e.placeholder,
112
- readonly: e.readonly,
113
- required: e.required,
114
- rows: e.rows,
115
- value: m.value
116
- }, h, {
117
- onInput: f,
118
- onKeydown: b
119
- }), null, 16, M)
164
+ default: a(() => [
165
+ O(v(ue), { tag: "span" }, {
166
+ default: a(() => [
167
+ $("span", ye, [
168
+ e.multiple ? (f(), ee(oe, { key: 0 }, [
169
+ e.comma ? (f(), C(me, {
170
+ key: 0,
171
+ ref_key: "commaBox",
172
+ ref: V,
173
+ options: v(p)
174
+ }, null, 8, ["options"])) : (f(), C(ce, {
175
+ key: 1,
176
+ ref_key: "chipsBox",
177
+ ref: w,
178
+ options: v(p),
179
+ "onOption:unselected": G
180
+ }, null, 8, ["options"]))
181
+ ], 64)) : te("", !0),
182
+ ne($("input", le({
183
+ id: e.id,
184
+ ref_key: "input",
185
+ ref: d
186
+ }, X, {
187
+ "onUpdate:modelValue": n[0] || (n[0] = (m) => ae(t) ? t.value = m : null),
188
+ "aria-describedby": e.ariaDescribedby,
189
+ autocomplete: e.autocomplete,
190
+ autofocus: e.autofocus,
191
+ class: "bb-base-tag__text-input",
192
+ disabled: e.disabled,
193
+ "enter-key-hint": "next",
194
+ placeholder: L.value,
195
+ readonly: e.readonly,
196
+ required: e.required && !e.multiple || e.multiple && !e.modelValue.length,
197
+ type: "text",
198
+ onFocus: s(J, ["stop"]),
199
+ onKeydown: [
200
+ y(s(U, ["stop"]), ["delete"]),
201
+ y(s(Q, ["stop"]), ["left"]),
202
+ y(s(z, ["stop", "prevent"]), ["esc"]),
203
+ y(s(R, ["stop"]), ["right"])
204
+ ],
205
+ onKeyup: s(Z, ["stop"])
206
+ }), null, 16, be), [
207
+ [ie, v(t)]
208
+ ])
209
+ ])
120
210
  ]),
121
211
  _: 1
122
212
  })
@@ -129,6 +219,6 @@ const M = ["id", "aria-describedby", "autocomplete", "autofocus", "disabled", "n
129
219
  }
130
220
  });
131
221
  export {
132
- z as default
222
+ qe as default
133
223
  };
134
224
  //# sourceMappingURL=index44.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index44.js","sources":["../src/components/BaseTextarea/BaseTextarea.vue"],"sourcesContent":["<template>\n\t<CommonInputOuterContainer :class=\"classes\">\n\t\t<template #prepend-outer><slot name=\"prepend-outer\"></slot></template>\n\t\t<CommonInputInnerContainer\n\t\t\t:append:icon=\"props['append:icon']\"\n\t\t\t:prepend:icon=\"props['prepend:icon']\"\n\t\t>\n\t\t\t<template #prepend><slot name=\"prepend\" /></template>\n\t\t\t<template #prefix><slot name=\"prefix\" /></template>\n\t\t\t<BbSmoothHeight>\n\t\t\t\t<textarea\n\t\t\t\t\t:id=\"id\"\n\t\t\t\t\tref=\"textarea\"\n\t\t\t\t\t:aria-describedby=\"ariaDescribedby\"\n\t\t\t\t\t:autocomplete=\"autocomplete\"\n\t\t\t\t\t:autofocus=\"autofocus\"\n\t\t\t\t\t:class=\"'bb-base-textarea__input'\"\n\t\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t\t:name=\"name\"\n\t\t\t\t\t:placeholder=\"placeholder\"\n\t\t\t\t\t:readonly=\"readonly\"\n\t\t\t\t\t:required=\"required\"\n\t\t\t\t\t:rows=\"rows\"\n\t\t\t\t\t:value=\"modelValueWithDefault\"\n\t\t\t\t\tv-bind=\"eventListeners\"\n\t\t\t\t\t@input=\"onInput\"\n\t\t\t\t\t@keydown=\"onKeydown\"\n\t\t\t\t></textarea>\n\t\t\t</BbSmoothHeight>\n\t\t\t<template #append><slot name=\"append\" /></template>\n\t\t\t<template #suffix><slot name=\"suffix\" /></template>\n\t\t</CommonInputInnerContainer>\n\t\t<template #append-outer><slot name=\"append-outer\"></slot></template>\n\t</CommonInputOuterContainer>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, nextTick, onMounted, ref, watch } from 'vue';\nimport type { HTMLAttributes, InputHTMLAttributes, Ref } from 'vue';\nimport CommonInputOuterContainer from '../CommonInputOuterContainer.vue';\nimport CommonInputInnerContainer from '../CommonInputInnerContainer.vue';\nimport BbSmoothHeight from '../BbSmoothHeight/BbSmoothHeight.vue';\n\nexport type BaseTextareaProps = {\n\t/**\n\t * Name of the icon to be added at the end of the input.\n\t */\n\t// eslint-disable-next-line vue/prop-name-casing\n\t'append:icon'?: string;\n\t/**\n\t * Guides to the browser as to the type of information expected in the field.\n\t */\n\tariaDescribedby?: InputHTMLAttributes['aria-describedby'];\n\t/**\n\t * Guides to the browser as to the type of information expected in the field.\n\t */\n\tautocomplete?: InputHTMLAttributes['autocomplete'];\n\n\t/**\n\t * Expands the textarea to match its content\n\t */\n\tautoGrow?: boolean;\n\n\t/**\n\t * Sets autofocus on page load.\n\t */\n\tautofocus?: InputHTMLAttributes['autofocus'];\n\n\t/**\n\t * Disables the component\n\t */\n\tdisabled?: boolean;\n\n\t/**\n\t * Define if the component should be in an error state.\n\t * It usually attaches a CSS class for styling purposes.\n\t */\n\thasErrors?: boolean;\n\n\t/**\n\t * The identifier of the component.\n\t */\n\tid?: HTMLAttributes['id'];\n\n\t/**\n\t * Sets the component in a loading state, usually triggering some visual styles.\n\t */\n\tloading?: boolean;\n\n\t/**\n\t * Used by v-model\n\t */\n\tmodelValue: string | null;\n\n\t/**\n\t * Defines the name of the input.\n\t */\n\tname?: InputHTMLAttributes['name'];\n\n\t/**\n\t * String displayed when there's no data.\n\t */\n\tplaceholder?: InputHTMLAttributes['placeholder'];\n\n\t/**\n\t * Name of the icon to be added at the start of the input.\n\t */\n\t// eslint-disable-next-line vue/prop-name-casing\n\t'prepend:icon'?: string;\n\n\t/**\n\t * Sets the input in a readonly state.\n\t */\n\treadonly?: InputHTMLAttributes['readonly'];\n\n\t/**\n\t * Sets the input as required.\n\t */\n\trequired?: boolean;\n\n\t/**\n\t * Sets the input in a readonly state.\n\t */\n\trows?: string | number;\n};\nconst props = defineProps<BaseTextareaProps>();\n\nexport type BaseTextareaEvents = {\n\t(e: 'blur', event: FocusEvent): void;\n\t(e: 'change', event: Event): void;\n\t(e: 'click', event: MouseEvent): void;\n\t(e: 'focus', event: FocusEvent): void;\n\t(e: 'input', event: Event): void;\n\t(e: 'keydown', event: KeyboardEvent): void;\n\t(e: 'mousedown', event: MouseEvent): void;\n\t(e: 'mouseup', event: MouseEvent): void;\n\t(e: 'update:modelValue', value: string | null): void;\n};\nconst emit = defineEmits<BaseTextareaEvents>();\n\nexport type BaseTextareaSlots = {\n\t'prepend-outer'?: (props: object) => any;\n\tprepend?: (props: object) => any;\n\tappend?: (props: object) => any;\n\t'append-outer'?: (props: object) => any;\n\tprefix?: (props: object) => any;\n\tsuffix?: (props: object) => any;\n};\n\ndefineSlots<BaseTextareaSlots>();\n\nif (props.rows && props.autoGrow) {\n\tthrow new Error(\n\t\t'Textarea: You cannot set rows and auto-grow attributes together. You either use rows and let the user resize or define a minimum height in CSS with auto-grow.'\n\t);\n}\n\nconst textarea: Ref<HTMLTextAreaElement | null> = ref(null);\n\nconst classes = computed(() => ({\n\t'bb-base-textarea': true,\n\t'bb-base-textarea--auto-grow': props.autoGrow,\n\t'bb-base-textarea--disabled': props.disabled,\n\t'bb-base-textarea--errors': props.hasErrors,\n\t'bb-base-textarea--loading': props.loading,\n\t'bb-base-textarea--readonly': props.readonly,\n}));\n\n// Allow modelvalue to be reset to null\nconst modelValueWithDefault = computed(() =>\n\tprops.modelValue ? props.modelValue : ''\n);\nonMounted(() => {\n\tif (props.autoGrow && props.modelValue) {\n\t\tcomputeTextareaHeight();\n\t}\n});\nwatch(\n\t() => props.modelValue,\n\t() => {\n\t\tif (props.autoGrow) {\n\t\t\tnextTick(computeTextareaHeight);\n\t\t}\n\t}\n);\n\nfunction onInput(event: Event): void {\n\t// Prevent enter from triggering smt else\n\tevent.stopPropagation();\n\tif (event.target instanceof HTMLTextAreaElement) {\n\t\tlet value = event.target.value;\n\t\temit('input', event);\n\t\temit('update:modelValue', value || null);\n\t}\n}\nfunction onKeydown(event: KeyboardEvent): void {\n\t// Prevent enter from triggering smt else\n\tevent.stopPropagation();\n\tif (event.target instanceof HTMLTextAreaElement) {\n\t\temit('keydown', event);\n\t}\n}\n\n/**\n * These events are just propagated\n */\nconst eventListeners = {\n\tonBlur: (event: FocusEvent) => emit('blur', event),\n\tonChange: (event: Event) => emit('change', event),\n\tonClick: (event: MouseEvent) => emit('click', event),\n\tonFocus: (event: FocusEvent) => emit('focus', event),\n\tonMousedown: (event: MouseEvent) => emit('mousedown', event),\n\tonMouseup: (event: MouseEvent) => emit('mouseup', event),\n};\n\n/* \nReset height and the apply scroll height otherwise it would not be able to shrink\n*/\nfunction computeTextareaHeight() {\n\tif (!textarea.value) return;\n\ttextarea.value.style.height = '0px';\n\n\ttextarea.value.style.height = `${textarea.value.scrollHeight}px`;\n}\n</script>\n\n<style lang=\"postcss\">\n@import '@/assets/css/BaseTextarea';\n</style>\n"],"names":["props","__props","emit","__emit","textarea","ref","classes","computed","modelValueWithDefault","onMounted","computeTextareaHeight","watch","nextTick","onInput","event","value","onKeydown","eventListeners"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6HA,UAAMA,IAAQC,GAaRC,IAAOC;AAaT,QAAAH,EAAM,QAAQA,EAAM;AACvB,YAAM,IAAI;AAAA,QACT;AAAA,MAAA;AAII,UAAAI,IAA4CC,EAAI,IAAI,GAEpDC,IAAUC,EAAS,OAAO;AAAA,MAC/B,oBAAoB;AAAA,MACpB,+BAA+BP,EAAM;AAAA,MACrC,8BAA8BA,EAAM;AAAA,MACpC,4BAA4BA,EAAM;AAAA,MAClC,6BAA6BA,EAAM;AAAA,MACnC,8BAA8BA,EAAM;AAAA,IACnC,EAAA,GAGIQ,IAAwBD;AAAA,MAAS,MACtCP,EAAM,aAAaA,EAAM,aAAa;AAAA,IAAA;AAEvC,IAAAS,EAAU,MAAM;AACX,MAAAT,EAAM,YAAYA,EAAM,cACLU;IACvB,CACA,GACDC;AAAA,MACC,MAAMX,EAAM;AAAA,MACZ,MAAM;AACL,QAAIA,EAAM,YACTY,EAASF,CAAqB;AAAA,MAEhC;AAAA,IAAA;AAGD,aAASG,EAAQC,GAAoB;AAGhC,UADJA,EAAM,gBAAgB,GAClBA,EAAM,kBAAkB,qBAAqB;AAC5C,YAAAC,IAAQD,EAAM,OAAO;AACzB,QAAAZ,EAAK,SAASY,CAAK,GACdZ,EAAA,qBAAqBa,KAAS,IAAI;AAAA,MACxC;AAAA,IACD;AACA,aAASC,EAAUF,GAA4B;AAE9C,MAAAA,EAAM,gBAAgB,GAClBA,EAAM,kBAAkB,uBAC3BZ,EAAK,WAAWY,CAAK;AAAA,IAEvB;AAKA,UAAMG,IAAiB;AAAA,MACtB,QAAQ,CAACH,MAAsBZ,EAAK,QAAQY,CAAK;AAAA,MACjD,UAAU,CAACA,MAAiBZ,EAAK,UAAUY,CAAK;AAAA,MAChD,SAAS,CAACA,MAAsBZ,EAAK,SAASY,CAAK;AAAA,MACnD,SAAS,CAACA,MAAsBZ,EAAK,SAASY,CAAK;AAAA,MACnD,aAAa,CAACA,MAAsBZ,EAAK,aAAaY,CAAK;AAAA,MAC3D,WAAW,CAACA,MAAsBZ,EAAK,WAAWY,CAAK;AAAA,IAAA;AAMxD,aAASJ,IAAwB;AAC5B,MAACN,EAAS,UACLA,EAAA,MAAM,MAAM,SAAS,OAE9BA,EAAS,MAAM,MAAM,SAAS,GAAGA,EAAS,MAAM,YAAY;AAAA,IAC7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index44.js","sources":["../src/components/BaseTag/BaseTag.vue"],"sourcesContent":["<template>\n\t<CommonInputOuterContainer\n\t\tref=\"outerContainer\"\n\t\t:class=\"{\n\t\t\t'bb-base-tag': true,\n\t\t\t'bb-base-tag--active': active,\n\t\t\t'bb-base-tag--disabled': disabled,\n\t\t\t'bb-base-tag--loading': loading,\n\t\t\t'bb-base-tag--errors': hasErrors,\n\t\t\t'bb-base-tag--readonly': readonly,\n\t\t}\"\n\t\t@click=\"onOuterContainerClick\"\n\t>\n\t\t<template #prepend-outer><slot name=\"prepend-outer\"></slot></template>\n\t\t<CommonInputInnerContainer\n\t\t\tref=\"innerContainer\"\n\t\t\t:append:icon=\"props['append:icon']\"\n\t\t\t:prepend:icon=\"props['prepend:icon']\"\n\t\t>\n\t\t\t<template #prepend><slot name=\"prepend\" /></template>\n\t\t\t<template #prefix><slot name=\"prefix\" /></template>\n\t\t\t<BbSmoothHeight tag=\"span\">\n\t\t\t\t<span class=\"bb-base-tag__input-container\">\n\t\t\t\t\t<template v-if=\"multiple\">\n\t\t\t\t\t\t<template v-if=\"comma\">\n\t\t\t\t\t\t\t<CommaBox ref=\"commaBox\" :options=\"selectedOptions\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<template v-else>\n\t\t\t\t\t\t\t<ChipsBox\n\t\t\t\t\t\t\t\tref=\"chipsBox\"\n\t\t\t\t\t\t\t\t:options=\"selectedOptions\"\n\t\t\t\t\t\t\t\t@option:unselected=\"onOptionUnselected\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</template>\n\n\t\t\t\t\t<input\n\t\t\t\t\t\t:id=\"id\"\n\t\t\t\t\t\tref=\"input\"\n\t\t\t\t\t\tv-bind=\"eventListeners\"\n\t\t\t\t\t\tv-model=\"query\"\n\t\t\t\t\t\t:aria-describedby=\"ariaDescribedby\"\n\t\t\t\t\t\t:autocomplete=\"autocomplete\"\n\t\t\t\t\t\t:autofocus=\"autofocus\"\n\t\t\t\t\t\t:class=\"'bb-base-tag__text-input'\"\n\t\t\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t\t\tenter-key-hint=\"next\"\n\t\t\t\t\t\t:placeholder=\"computedPlaceholder\"\n\t\t\t\t\t\t:readonly=\"readonly\"\n\t\t\t\t\t\t:required=\"\n\t\t\t\t\t\t\t(required && !multiple) || (multiple && !modelValue.length)\n\t\t\t\t\t\t\"\n\t\t\t\t\t\t:type=\"'text'\"\n\t\t\t\t\t\t@focus.stop=\"onInputFocus\"\n\t\t\t\t\t\t@keydown.stop.delete=\"onBackspace\"\n\t\t\t\t\t\t@keydown.stop.left=\"onArrowLeft\"\n\t\t\t\t\t\t@keydown.stop.prevent.esc=\"onEscape\"\n\t\t\t\t\t\t@keydown.stop.right=\"onArrowRight\"\n\t\t\t\t\t\t@keyup.stop=\"onInputKeyup\"\n\t\t\t\t\t/>\n\t\t\t\t</span>\n\t\t\t</BbSmoothHeight>\n\t\t\t<template #append><slot name=\"append\" /></template>\n\t\t\t<template #suffix><slot name=\"suffix\" /></template>\n\t\t</CommonInputInnerContainer>\n\n\t\t<template #append-outer><slot name=\"append-outer\"></slot></template>\n\t</CommonInputOuterContainer>\n</template>\n\n<script setup lang=\"ts\">\nimport { BbSmoothHeight } from '@/index';\nimport { computed, ref } from 'vue';\nimport { isNotNil } from '@/utilities/functions/isNotNil';\nimport { last } from '@/utilities/functions/last';\nimport { nextTick } from 'vue';\nimport { toRef } from 'vue';\nimport { useOptions } from '@/composables/useOptions';\nimport ChipsBox from '../ChipsBox.vue';\nimport CommaBox from '../CommaBox.vue';\nimport CommonInputInnerContainer from '../CommonInputInnerContainer.vue';\nimport CommonInputOuterContainer from '../CommonInputOuterContainer.vue';\nimport type { InputHTMLAttributes, HTMLAttributes } from 'vue';\nimport type { Option as BaseOption } from '@/types/Option';\n\nexport type BaseTagProps = {\n\t/**\n\t * Name of the icon to be added at the end of the input.\n\t */\n\t// eslint-disable-next-line vue/prop-name-casing\n\t'append:icon'?: string;\n\n\t/**\n\t * Guides to the browser as to the type of information expected in the field.\n\t */\n\tariaDescribedby?: InputHTMLAttributes['aria-describedby'];\n\n\t/**\n\t * Guides to the browser as to the type of information expected in the field.\n\t */\n\tautocomplete?: InputHTMLAttributes['autocomplete'];\n\n\t/**\n\t * Sets autofocus on page load.\n\t */\n\tautofocus?: InputHTMLAttributes['autofocus'];\n\n\t/**\n\t * Sets the display model for selected values to a list\n\t * of comma separated string. In this mode the user\n\t * cannot deselect an option by pressing the close button.\n\t */\n\tcomma?: boolean;\n\n\t/**\n\t * Disables the component\n\t */\n\tdisabled?: boolean;\n\n\t/**\n\t * The divider key used to separate values from one another. By default it is \"Enter\"\n\t */\n\tdivider?: KeyboardEvent['key'];\n\n\t/**\n\t * Define if the component should be in an error state.\n\t * It usually attaches a CSS class for styling purposes.\n\t */\n\thasErrors?: boolean;\n\n\t/**\n\t * The identifier of the component.\n\t */\n\tid?: HTMLAttributes['id'];\n\n\t/**\n\t * Sets the component in a loading state, usually triggering some visual styles.\n\t */\n\tloading?: boolean;\n\n\t/**\n\t * Used by v-model. Can be any serializable type.\n\t */\n\tmodelValue: any;\n\n\t/**\n\t * Allows the selection of multiple items.\n\t */\n\tmultiple?: boolean;\n\n\t/**\n\t * Defines the name of the input.\n\t */\n\tname?: InputHTMLAttributes['name'];\n\n\t/**\n\t * String displayed when there's no data.\n\t */\n\tplaceholder?: InputHTMLAttributes['placeholder'];\n\n\t/**\n\t * Name of the icon to be added at the start of the input.\n\t */\n\t// eslint-disable-next-line vue/prop-name-casing\n\t'prepend:icon'?: string;\n\n\t/**\n\t * Sets the input in a readonly state.\n\t */\n\treadonly?: InputHTMLAttributes['readonly'];\n\n\t/**\n\t * Sets the input as required.\n\t */\n\trequired?: boolean;\n};\n\nconst props = withDefaults(defineProps<BaseTagProps>(), {\n\tdivider: 'Enter',\n\tmultiple: true,\n});\n\nexport type BaseTagEvents = {\n\t(e: 'blur', event: FocusEvent): void;\n\t(e: 'change', event: Event): void;\n\t(e: 'click', event: MouseEvent): void;\n\t(e: 'duplicate', string: string): void;\n\t(e: 'focus', event: FocusEvent): void;\n\t(e: 'inactive'): void;\n\t(e: 'input', event: Event): void;\n\t(e: 'keydown', event: KeyboardEvent): void;\n\t(e: 'keyup', event: KeyboardEvent): void;\n\t(e: 'update:modelValue', value: any): void;\n};\n\nconst emit = defineEmits<BaseTagEvents>();\n\nexport type BaseTagSlots = {\n\tappend?: (props: object) => any;\n\t'append-outer'?: (props: object) => any;\n\tprepend?: (props: object) => any;\n\t'prepend-outer'?: (props: object) => any;\n\tprefix?: (props: object) => any;\n\tsuffix?: (props: object) => any;\n};\n\ndefineSlots<BaseTagSlots>();\n\nif (props.multiple && !Array.isArray(props.modelValue)) {\n\tthrow new Error('Multiple is set to \"true\" but modelValue is not an array.');\n}\n\nconst outerContainer = ref<InstanceType<\n\ttypeof CommonInputOuterContainer\n> | null>(null);\nconst innerContainer = ref<InstanceType<\n\ttypeof CommonInputInnerContainer\n> | null>(null);\nconst computedPlaceholder = computed(() => {\n\treturn props.placeholder;\n});\nconst commaBox = ref<InstanceType<typeof CommaBox> | null>(null);\nconst chipsBox = ref<InstanceType<typeof ChipsBox> | null>(null);\nconst selectedBox = computed(() =>\n\tprops.comma ? commaBox.value : chipsBox.value\n);\n\nconst input = ref<HTMLElement | null>(null);\nconst focusInput = () => {\n\tif (input.value instanceof HTMLInputElement) {\n\t\tinput.value.focus();\n\t}\n};\n/**\n * It should prefill if asked, or\n * when single if modelValue is not null\n * when multiple if modelValue is not empty\n */\nconst shouldPrefill =\n\t(!props.multiple && isNotNil(props.modelValue)) ||\n\t(props.multiple && !!props.modelValue.length);\n\nconst dependencies = ref([]);\n\nconst {\n\tquery,\n\talignQueryToState,\n\taddCurrentQueryToManualItems,\n\tselectedOptions,\n\tselectOption,\n\tunselectOption,\n\tvalueIsSelected,\n\tmanualItems,\n} = useOptions({\n\temit,\n\titemText: undefined,\n\titemValue: undefined,\n\tmodelValue: toRef(props, 'modelValue'),\n\tmultiple: props.multiple,\n\tresetQueryOnOptionSelected: true,\n\tstash: false,\n\titems: toRef(props, 'modelValue'),\n\tenforceCoherence: false,\n\tprefill: shouldPrefill,\n\tmodelValueDebounceTime: 0,\n\tdependencies,\n\tdepsDebounceTime: 0,\n\tqueryDebounceTime: 0,\n\tdisabled: toRef(props, 'disabled'),\n});\n\n/**\n * Applies a class when the user is inside this whole component.\n * We cannot use focus within as it doesn't work for elements that are teleported.\n * Also we cannot use the <input/> if we physically move focus to the options so\n * we track it manually.\n */\nconst active = ref(false);\n\nconst setActive = () => {\n\tactive.value = true;\n};\nconst setInactive = () => {\n\tactive.value = false;\n\temit('inactive');\n};\n\nconst canProcessKeyboardBindings = computed(() => {\n\tif (props.readonly) return false;\n\tif (props.disabled) return false;\n\tif (!selectedBox.value && props.multiple) return false;\n\treturn true;\n});\n\nconst onArrowLeft = (event: KeyboardEvent) => {\n\tif (!canProcessKeyboardBindings.value) {\n\t\treturn;\n\t}\n\tif (!props.multiple || query.value) {\n\t\treturn;\n\t}\n\tevent.preventDefault();\n\tif (!selectedOptions.value.length) return;\n\tselectedBox.value?.focusPrevious();\n};\nconst onArrowRight = (event: KeyboardEvent) => {\n\tif (!canProcessKeyboardBindings.value) {\n\t\treturn;\n\t}\n\tif (!props.multiple || query.value) {\n\t\treturn;\n\t}\n\tevent.preventDefault();\n\tif (!selectedOptions.value.length) return;\n\tselectedBox.value?.focusNext();\n};\n\nconst onBackspace = async () => {\n\tif (\n\t\t!canProcessKeyboardBindings.value ||\n\t\tquery.value ||\n\t\t!selectedOptions.value.length\n\t) {\n\t\treturn;\n\t}\n\tif (selectedBox.value?.getHighlighted()) {\n\t\tselectedBox.value.confirmOption();\n\t}\n\tawait nextTick();\n\tselectedBox.value?.focusPrevious();\n};\n\nconst onEscape = () => {\n\tselectedBox.value?.blur();\n};\n\nconst onInputKeyup = async (event: KeyboardEvent) => {\n\temit('keyup', event);\n\tif (props.readonly || props.disabled) {\n\t\tevent.preventDefault();\n\t\treturn;\n\t}\n\t// Reset focused chips on key input\n\tif (/^[A-Za-z0-9]$/.test(event.key)) {\n\t\tselectedBox.value?.blur();\n\t}\n\tif (\n\t\tevent.key === props.divider ||\n\t\t(event.key === 'Unidentified' && query.value.includes(props.divider))\n\t) {\n\t\tif (props.divider.length === 1 && query.value.includes(props.divider)) {\n\t\t\tconst found = query.value.split(props.divider)[0];\n\t\t\tif (found) {\n\t\t\t\tquery.value = found;\n\t\t\t} else {\n\t\t\t\tquery.value = '';\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tif (!query.value) return;\n\t\tif (valueIsSelected(query.value)) {\n\t\t\temit('duplicate', query.value);\n\t\t\tquery.value = '';\n\t\t} else {\n\t\t\taddCurrentQueryToManualItems();\n\t\t\tonOptionSelected(last(manualItems.value)!);\n\t\t}\n\t}\n};\n\nconst onOptionSelected = (option: BaseOption) => {\n\tselectOption(option);\n\tfocusInput();\n\tif (!props.multiple) {\n\t\tclose();\n\t}\n};\n\nconst onOptionUnselected = (option: BaseOption) => {\n\tunselectOption(option);\n\tfocusInput();\n};\n\nconst onInputFocus = (event: FocusEvent) => {\n\temit('focus', event);\n\tsetActive();\n\tdocument.addEventListener('click', onOutsideInteraction);\n\tdocument.addEventListener('focusin', onOutsideInteraction);\n};\n\n/**\n * When clicking on the outside container seamlessly move focus to the input and open the panel\n */\nconst onOuterContainerClick = (event: MouseEvent) => {\n\temit('click', event);\n\tif (props.disabled || props.readonly) return;\n\tif (input.value instanceof HTMLElement) {\n\t\tinput.value.focus();\n\t}\n};\n\n/**\n * On click outside of the container close the panel, remove active state.\n * In multiple selection clear query after a timeout\n */\nconst onOutsideInteraction = async (event: Event) => {\n\tif (event.target instanceof Node) {\n\t\tif (outerContainer.value) {\n\t\t\tif (!outerContainer.value.$el.contains(event.target)) {\n\t\t\t\tclose();\n\t\t\t\tsetInactive();\n\t\t\t\tdocument.removeEventListener('click', onOutsideInteraction);\n\t\t\t\tdocument.removeEventListener('focusin', onOutsideInteraction);\n\t\t\t\talignQueryToState();\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t}\n};\nconst eventListeners = {\n\tonBlur: (event: FocusEvent) => emit('blur', event),\n\tonChange: (event: Event) => emit('change', event),\n\tonKeydown: (event: KeyboardEvent) => emit('keydown', event),\n\tonInput: (event: Event) => emit('input', event),\n};\n</script>\n<style lang=\"postcss\">\n@import '@/assets/css/BaseTag';\n</style>\n"],"names":["props","__props","emit","__emit","outerContainer","ref","innerContainer","computedPlaceholder","computed","commaBox","chipsBox","selectedBox","input","focusInput","shouldPrefill","isNotNil","dependencies","query","alignQueryToState","addCurrentQueryToManualItems","selectedOptions","selectOption","unselectOption","valueIsSelected","manualItems","useOptions","toRef","active","setActive","setInactive","canProcessKeyboardBindings","onArrowLeft","event","_a","onArrowRight","onBackspace","nextTick","_b","onEscape","onInputKeyup","found","onOptionSelected","last","option","onOptionUnselected","onInputFocus","onOutsideInteraction","onOuterContainerClick","eventListeners"],"mappings":"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"}
package/dist/index46.js CHANGED
@@ -1,13 +1,16 @@
1
- import { defineComponent as i, computed as c, openBlock as m, createElementBlock as b, Fragment as f, createVNode as r, normalizeClass as y, withCtx as n, renderSlot as t, createElementVNode as p, mergeProps as h } from "vue";
2
- import g from "./index218.js";
1
+ import { defineComponent as w, ref as g, computed as u, onMounted as y, watch as V, nextTick as k, openBlock as x, createBlock as B, normalizeClass as $, withCtx as r, renderSlot as t, createVNode as i, createElementVNode as C, mergeProps as T } from "vue";
2
+ import v from "./index215.js";
3
+ import E from "./index213.js";
3
4
  /* empty css */
4
- import B from "./index220.js";
5
- const k = ["id", "aria-describedby", "aria-invalid", "autocomplete", "autofocus", "disabled", "name", "placeholder", "readonly", "required", "type", "value"], w = /* @__PURE__ */ p("span", null, null, -1), q = /* @__PURE__ */ i({
6
- __name: "BaseTextInput",
5
+ import G from "./index124.js";
6
+ /* empty css */
7
+ const M = ["id", "aria-describedby", "autocomplete", "autofocus", "disabled", "name", "placeholder", "readonly", "required", "rows", "value"], z = /* @__PURE__ */ w({
8
+ __name: "BaseTextarea",
7
9
  props: {
8
10
  "append:icon": {},
9
11
  ariaDescribedby: {},
10
12
  autocomplete: {},
13
+ autoGrow: { type: Boolean },
11
14
  autofocus: {},
12
15
  disabled: { type: Boolean },
13
16
  hasErrors: { type: Boolean },
@@ -19,84 +22,113 @@ const k = ["id", "aria-describedby", "aria-invalid", "autocomplete", "autofocus"
19
22
  "prepend:icon": {},
20
23
  readonly: {},
21
24
  required: { type: Boolean },
22
- type: { default: "text" }
25
+ rows: {}
23
26
  },
24
27
  emits: ["blur", "change", "click", "focus", "input", "keydown", "mousedown", "mouseup", "update:modelValue"],
25
- setup(s, { emit: l }) {
26
- const a = s, o = l, d = c(() => ({
27
- "bb-base-text-input": !0,
28
- "bb-base-text-input--disabled": a.disabled,
29
- "bb-base-text-input--errors": a.hasErrors,
30
- "bb-base-text-input--loading": a.loading,
31
- "bb-base-text-input--readonly": a.readonly
32
- })), u = {
33
- onBlur: (e) => o("blur", e),
34
- onChange: (e) => o("change", e),
35
- onClick: (e) => o("click", e),
36
- onFocus: (e) => o("focus", e),
37
- onKeydown: (e) => o("keydown", e),
38
- onInput: (e) => {
39
- e.target instanceof HTMLInputElement && o("update:modelValue", e.target.value || null), o("input", e);
40
- },
41
- onMousedown: (e) => o("mousedown", e),
42
- onMouseup: (e) => o("mouseup", e)
28
+ setup(d, { emit: p }) {
29
+ const o = d, a = p;
30
+ if (o.rows && o.autoGrow)
31
+ throw new Error(
32
+ "Textarea: You cannot set rows and auto-grow attributes together. You either use rows and let the user resize or define a minimum height in CSS with auto-grow."
33
+ );
34
+ const n = g(null), c = u(() => ({
35
+ "bb-base-textarea": !0,
36
+ "bb-base-textarea--auto-grow": o.autoGrow,
37
+ "bb-base-textarea--disabled": o.disabled,
38
+ "bb-base-textarea--errors": o.hasErrors,
39
+ "bb-base-textarea--loading": o.loading,
40
+ "bb-base-textarea--readonly": o.readonly
41
+ })), m = u(
42
+ () => o.modelValue ? o.modelValue : ""
43
+ );
44
+ y(() => {
45
+ o.autoGrow && o.modelValue && l();
46
+ }), V(
47
+ () => o.modelValue,
48
+ () => {
49
+ o.autoGrow && k(l);
50
+ }
51
+ );
52
+ function b(e) {
53
+ if (e.stopPropagation(), e.target instanceof HTMLTextAreaElement) {
54
+ let s = e.target.value;
55
+ a("input", e), a("update:modelValue", s || null);
56
+ }
57
+ }
58
+ function f(e) {
59
+ e.stopPropagation(), e.target instanceof HTMLTextAreaElement && a("keydown", e);
60
+ }
61
+ const h = {
62
+ onBlur: (e) => a("blur", e),
63
+ onChange: (e) => a("change", e),
64
+ onClick: (e) => a("click", e),
65
+ onFocus: (e) => a("focus", e),
66
+ onMousedown: (e) => a("mousedown", e),
67
+ onMouseup: (e) => a("mouseup", e)
43
68
  };
44
- return (e, C) => (m(), b(f, null, [
45
- r(B, {
46
- class: y(d.value)
47
- }, {
48
- "prepend-outer": n(() => [
49
- t(e.$slots, "prepend-outer")
50
- ]),
51
- "append-outer": n(() => [
52
- t(e.$slots, "append-outer")
53
- ]),
54
- default: n(() => [
55
- r(g, {
56
- "append:icon": a["append:icon"],
57
- "prepend:icon": a["prepend:icon"]
58
- }, {
59
- prepend: n(() => [
60
- t(e.$slots, "prepend")
61
- ]),
62
- prefix: n(() => [
63
- t(e.$slots, "prefix")
64
- ]),
65
- append: n(() => [
66
- t(e.$slots, "append")
67
- ]),
68
- suffix: n(() => [
69
- t(e.$slots, "suffix")
70
- ]),
71
- default: n(() => [
72
- p("input", h({
73
- id: e.id,
74
- ref: "input",
75
- "aria-describedby": e.ariaDescribedby,
76
- "aria-invalid": e.hasErrors ? !0 : void 0,
77
- autocomplete: e.autocomplete,
78
- autofocus: e.autofocus,
79
- class: "bb-base-text-input__input",
80
- disabled: e.disabled,
81
- name: e.name,
82
- placeholder: e.placeholder,
83
- readonly: e.readonly,
84
- required: e.required,
85
- size: "1",
86
- type: e.type,
87
- value: e.modelValue
88
- }, u), null, 16, k)
89
- ]),
90
- _: 3
91
- }, 8, ["append:icon", "prepend:icon"])
92
- ]),
93
- _: 3
94
- }, 8, ["class"]),
95
- w
96
- ], 64));
69
+ function l() {
70
+ n.value && (n.value.style.height = "0px", n.value.style.height = `${n.value.scrollHeight}px`);
71
+ }
72
+ return (e, s) => (x(), B(v, {
73
+ class: $(c.value)
74
+ }, {
75
+ "prepend-outer": r(() => [
76
+ t(e.$slots, "prepend-outer")
77
+ ]),
78
+ "append-outer": r(() => [
79
+ t(e.$slots, "append-outer")
80
+ ]),
81
+ default: r(() => [
82
+ i(E, {
83
+ "append:icon": o["append:icon"],
84
+ "prepend:icon": o["prepend:icon"]
85
+ }, {
86
+ prepend: r(() => [
87
+ t(e.$slots, "prepend")
88
+ ]),
89
+ prefix: r(() => [
90
+ t(e.$slots, "prefix")
91
+ ]),
92
+ append: r(() => [
93
+ t(e.$slots, "append")
94
+ ]),
95
+ suffix: r(() => [
96
+ t(e.$slots, "suffix")
97
+ ]),
98
+ default: r(() => [
99
+ i(G, null, {
100
+ default: r(() => [
101
+ C("textarea", T({
102
+ id: e.id,
103
+ ref_key: "textarea",
104
+ ref: n,
105
+ "aria-describedby": e.ariaDescribedby,
106
+ autocomplete: e.autocomplete,
107
+ autofocus: e.autofocus,
108
+ class: "bb-base-textarea__input scrollbar-border",
109
+ disabled: e.disabled,
110
+ name: e.name,
111
+ placeholder: e.placeholder,
112
+ readonly: e.readonly,
113
+ required: e.required,
114
+ rows: e.rows,
115
+ value: m.value
116
+ }, h, {
117
+ onInput: b,
118
+ onKeydown: f
119
+ }), null, 16, M)
120
+ ]),
121
+ _: 1
122
+ })
123
+ ]),
124
+ _: 3
125
+ }, 8, ["append:icon", "prepend:icon"])
126
+ ]),
127
+ _: 3
128
+ }, 8, ["class"]));
97
129
  }
98
130
  });
99
131
  export {
100
- q as default
132
+ z as default
101
133
  };
102
134
  //# sourceMappingURL=index46.js.map