@7pmlabs/design-system 0.3.8 → 0.4.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 (491) hide show
  1. package/dist/design-system.js +1 -1
  2. package/dist/design-system.mjs +32 -32
  3. package/dist/design-system100.js +1 -1
  4. package/dist/design-system100.js.map +1 -1
  5. package/dist/design-system100.mjs +1103 -67
  6. package/dist/design-system100.mjs.map +1 -1
  7. package/dist/design-system101.js +1 -1
  8. package/dist/design-system101.js.map +1 -1
  9. package/dist/design-system101.mjs +24 -2171
  10. package/dist/design-system101.mjs.map +1 -1
  11. package/dist/design-system102.js +1 -1
  12. package/dist/design-system102.js.map +1 -1
  13. package/dist/design-system102.mjs +67 -1103
  14. package/dist/design-system102.mjs.map +1 -1
  15. package/dist/design-system103.js +1 -1
  16. package/dist/design-system103.js.map +1 -1
  17. package/dist/design-system103.mjs +2171 -24
  18. package/dist/design-system103.mjs.map +1 -1
  19. package/dist/design-system105.mjs +2 -2
  20. package/dist/design-system106.js +1 -1
  21. package/dist/design-system106.js.map +1 -1
  22. package/dist/design-system106.mjs +2 -4
  23. package/dist/design-system106.mjs.map +1 -1
  24. package/dist/design-system107.js +1 -1
  25. package/dist/design-system107.js.map +1 -1
  26. package/dist/design-system107.mjs +2 -8
  27. package/dist/design-system107.mjs.map +1 -1
  28. package/dist/design-system108.js +1 -1
  29. package/dist/design-system108.js.map +1 -1
  30. package/dist/design-system108.mjs +62 -6
  31. package/dist/design-system108.mjs.map +1 -1
  32. package/dist/design-system109.js +1 -1
  33. package/dist/design-system109.js.map +1 -1
  34. package/dist/design-system109.mjs +4 -2
  35. package/dist/design-system109.mjs.map +1 -1
  36. package/dist/design-system11.js.map +1 -1
  37. package/dist/design-system11.mjs.map +1 -1
  38. package/dist/design-system110.js +1 -1
  39. package/dist/design-system110.js.map +1 -1
  40. package/dist/design-system110.mjs +9 -2
  41. package/dist/design-system110.mjs.map +1 -1
  42. package/dist/design-system111.js +1 -1
  43. package/dist/design-system111.js.map +1 -1
  44. package/dist/design-system111.mjs +6 -62
  45. package/dist/design-system111.mjs.map +1 -1
  46. package/dist/design-system112.js +1 -1
  47. package/dist/design-system112.js.map +1 -1
  48. package/dist/design-system112.mjs +3 -3
  49. package/dist/design-system112.mjs.map +1 -1
  50. package/dist/design-system113.js +1 -1
  51. package/dist/design-system113.js.map +1 -1
  52. package/dist/design-system113.mjs +3 -9
  53. package/dist/design-system113.mjs.map +1 -1
  54. package/dist/design-system114.js +1 -1
  55. package/dist/design-system114.js.map +1 -1
  56. package/dist/design-system114.mjs +5 -6
  57. package/dist/design-system114.mjs.map +1 -1
  58. package/dist/design-system115.js +1 -1
  59. package/dist/design-system115.js.map +1 -1
  60. package/dist/design-system115.mjs +9 -3
  61. package/dist/design-system115.mjs.map +1 -1
  62. package/dist/design-system116.js +1 -1
  63. package/dist/design-system116.js.map +1 -1
  64. package/dist/design-system116.mjs +5 -3
  65. package/dist/design-system116.mjs.map +1 -1
  66. package/dist/design-system117.js +1 -1
  67. package/dist/design-system117.js.map +1 -1
  68. package/dist/design-system117.mjs +5 -6
  69. package/dist/design-system117.mjs.map +1 -1
  70. package/dist/design-system118.js +1 -1
  71. package/dist/design-system118.js.map +1 -1
  72. package/dist/design-system118.mjs +4 -10
  73. package/dist/design-system118.mjs.map +1 -1
  74. package/dist/design-system119.js +1 -1
  75. package/dist/design-system119.js.map +1 -1
  76. package/dist/design-system119.mjs +3 -4
  77. package/dist/design-system119.mjs.map +1 -1
  78. package/dist/design-system12.js +1 -7
  79. package/dist/design-system12.js.map +1 -1
  80. package/dist/design-system12.mjs +17 -297
  81. package/dist/design-system12.mjs.map +1 -1
  82. package/dist/design-system120.js +1 -1
  83. package/dist/design-system120.js.map +1 -1
  84. package/dist/design-system120.mjs +12 -5
  85. package/dist/design-system120.mjs.map +1 -1
  86. package/dist/design-system121.js +1 -1
  87. package/dist/design-system121.js.map +1 -1
  88. package/dist/design-system121.mjs +27 -4
  89. package/dist/design-system121.mjs.map +1 -1
  90. package/dist/design-system122.js +1 -1
  91. package/dist/design-system122.js.map +1 -1
  92. package/dist/design-system122.mjs +4 -2
  93. package/dist/design-system122.mjs.map +1 -1
  94. package/dist/design-system123.js +1 -1
  95. package/dist/design-system123.js.map +1 -1
  96. package/dist/design-system123.mjs +6 -12
  97. package/dist/design-system123.mjs.map +1 -1
  98. package/dist/design-system124.js +1 -1
  99. package/dist/design-system124.js.map +1 -1
  100. package/dist/design-system124.mjs +8 -27
  101. package/dist/design-system124.mjs.map +1 -1
  102. package/dist/design-system125.js +1 -1
  103. package/dist/design-system125.js.map +1 -1
  104. package/dist/design-system125.mjs +4 -5
  105. package/dist/design-system125.mjs.map +1 -1
  106. package/dist/design-system126.js +1 -1
  107. package/dist/design-system126.js.map +1 -1
  108. package/dist/design-system126.mjs +6 -6
  109. package/dist/design-system126.mjs.map +1 -1
  110. package/dist/design-system127.js +1 -1
  111. package/dist/design-system127.js.map +1 -1
  112. package/dist/design-system127.mjs +6 -7
  113. package/dist/design-system127.mjs.map +1 -1
  114. package/dist/design-system128.js +1 -1
  115. package/dist/design-system128.js.map +1 -1
  116. package/dist/design-system128.mjs +5 -4
  117. package/dist/design-system128.mjs.map +1 -1
  118. package/dist/design-system129.js +1 -1
  119. package/dist/design-system129.js.map +1 -1
  120. package/dist/design-system129.mjs +10 -6
  121. package/dist/design-system129.mjs.map +1 -1
  122. package/dist/design-system13.js +2 -2
  123. package/dist/design-system13.js.map +1 -1
  124. package/dist/design-system13.mjs +202 -166
  125. package/dist/design-system13.mjs.map +1 -1
  126. package/dist/design-system130.js +1 -1
  127. package/dist/design-system130.js.map +1 -1
  128. package/dist/design-system130.mjs +6 -7
  129. package/dist/design-system130.mjs.map +1 -1
  130. package/dist/design-system131.js +1 -1
  131. package/dist/design-system131.js.map +1 -1
  132. package/dist/design-system131.mjs +6 -5
  133. package/dist/design-system131.mjs.map +1 -1
  134. package/dist/design-system132.js +1 -1
  135. package/dist/design-system132.js.map +1 -1
  136. package/dist/design-system132.mjs +10 -10
  137. package/dist/design-system132.mjs.map +1 -1
  138. package/dist/design-system133.js +1 -1
  139. package/dist/design-system133.js.map +1 -1
  140. package/dist/design-system133.mjs +7 -6
  141. package/dist/design-system133.mjs.map +1 -1
  142. package/dist/design-system134.js +1 -1
  143. package/dist/design-system134.js.map +1 -1
  144. package/dist/design-system134.mjs +17 -6
  145. package/dist/design-system134.mjs.map +1 -1
  146. package/dist/design-system135.js +1 -1
  147. package/dist/design-system135.js.map +1 -1
  148. package/dist/design-system135.mjs +6 -9
  149. package/dist/design-system135.mjs.map +1 -1
  150. package/dist/design-system136.js +1 -1
  151. package/dist/design-system136.js.map +1 -1
  152. package/dist/design-system136.mjs +12 -6
  153. package/dist/design-system136.mjs.map +1 -1
  154. package/dist/design-system137.js +1 -1
  155. package/dist/design-system137.js.map +1 -1
  156. package/dist/design-system137.mjs +3 -17
  157. package/dist/design-system137.mjs.map +1 -1
  158. package/dist/design-system138.js +1 -1
  159. package/dist/design-system138.js.map +1 -1
  160. package/dist/design-system138.mjs +3 -6
  161. package/dist/design-system138.mjs.map +1 -1
  162. package/dist/design-system139.js +1 -1
  163. package/dist/design-system139.js.map +1 -1
  164. package/dist/design-system139.mjs +7 -12
  165. package/dist/design-system139.mjs.map +1 -1
  166. package/dist/design-system14.js +7 -1
  167. package/dist/design-system14.js.map +1 -1
  168. package/dist/design-system14.mjs +256 -92
  169. package/dist/design-system14.mjs.map +1 -1
  170. package/dist/design-system140.js +1 -1
  171. package/dist/design-system140.js.map +1 -1
  172. package/dist/design-system140.mjs +6 -3
  173. package/dist/design-system140.mjs.map +1 -1
  174. package/dist/design-system141.js +1 -1
  175. package/dist/design-system141.js.map +1 -1
  176. package/dist/design-system141.mjs +12 -2
  177. package/dist/design-system141.mjs.map +1 -1
  178. package/dist/design-system142.js +1 -1
  179. package/dist/design-system142.js.map +1 -1
  180. package/dist/design-system142.mjs +7 -11
  181. package/dist/design-system142.mjs.map +1 -1
  182. package/dist/design-system143.js +1 -1
  183. package/dist/design-system143.js.map +1 -1
  184. package/dist/design-system143.mjs +9 -7
  185. package/dist/design-system143.mjs.map +1 -1
  186. package/dist/design-system144.js +1 -1
  187. package/dist/design-system144.js.map +1 -1
  188. package/dist/design-system144.mjs +5 -9
  189. package/dist/design-system144.mjs.map +1 -1
  190. package/dist/design-system145.js +1 -1
  191. package/dist/design-system145.js.map +1 -1
  192. package/dist/design-system145.mjs +10 -6
  193. package/dist/design-system145.mjs.map +1 -1
  194. package/dist/design-system146.js +1 -1
  195. package/dist/design-system146.js.map +1 -1
  196. package/dist/design-system146.mjs +2 -10
  197. package/dist/design-system146.mjs.map +1 -1
  198. package/dist/design-system148.js +1 -1
  199. package/dist/design-system148.mjs +2 -2
  200. package/dist/design-system149.js +1 -1
  201. package/dist/design-system149.mjs +2 -2
  202. package/dist/design-system15.js +1 -1
  203. package/dist/design-system15.js.map +1 -1
  204. package/dist/design-system15.mjs +100 -14
  205. package/dist/design-system15.mjs.map +1 -1
  206. package/dist/design-system150.js +1 -1
  207. package/dist/design-system150.mjs +1 -1
  208. package/dist/design-system152.js +1 -1
  209. package/dist/design-system152.mjs +1 -1
  210. package/dist/design-system153.js +1 -1
  211. package/dist/design-system153.mjs +1 -1
  212. package/dist/design-system154.js +1 -1
  213. package/dist/design-system154.mjs +1 -1
  214. package/dist/design-system155.js +1 -1
  215. package/dist/design-system155.mjs +1 -1
  216. package/dist/design-system158.js +1 -1
  217. package/dist/design-system158.mjs +1 -1
  218. package/dist/design-system16.js +1 -1
  219. package/dist/design-system16.js.map +1 -1
  220. package/dist/design-system16.mjs +15 -59
  221. package/dist/design-system16.mjs.map +1 -1
  222. package/dist/design-system160.js +1 -1
  223. package/dist/design-system160.mjs +1 -1
  224. package/dist/design-system163.js +1 -1
  225. package/dist/design-system163.mjs +1 -1
  226. package/dist/design-system167.js +1 -1
  227. package/dist/design-system167.mjs +1 -1
  228. package/dist/design-system168.js +1 -1
  229. package/dist/design-system168.mjs +1 -1
  230. package/dist/design-system169.js +1 -1
  231. package/dist/design-system169.mjs +1 -1
  232. package/dist/design-system17.js +1 -1
  233. package/dist/design-system17.js.map +1 -1
  234. package/dist/design-system17.mjs +52 -243
  235. package/dist/design-system17.mjs.map +1 -1
  236. package/dist/design-system170.js +1 -1
  237. package/dist/design-system170.mjs +1 -1
  238. package/dist/design-system171.js +1 -1
  239. package/dist/design-system171.mjs +1 -1
  240. package/dist/design-system173.js +1 -1
  241. package/dist/design-system173.mjs +2 -2
  242. package/dist/design-system18.js +1 -1
  243. package/dist/design-system18.js.map +1 -1
  244. package/dist/design-system18.mjs +238 -107
  245. package/dist/design-system18.mjs.map +1 -1
  246. package/dist/design-system186.js +1 -1
  247. package/dist/design-system186.mjs +1 -1
  248. package/dist/design-system187.js +1 -1
  249. package/dist/design-system187.mjs +1 -1
  250. package/dist/design-system19.js +1 -3
  251. package/dist/design-system19.js.map +1 -1
  252. package/dist/design-system19.mjs +113 -113
  253. package/dist/design-system19.mjs.map +1 -1
  254. package/dist/design-system195.js +1 -1
  255. package/dist/design-system195.mjs +1 -1
  256. package/dist/design-system2.js.map +1 -1
  257. package/dist/design-system2.mjs.map +1 -1
  258. package/dist/design-system20.js +3 -1
  259. package/dist/design-system20.js.map +1 -1
  260. package/dist/design-system20.mjs +115 -61
  261. package/dist/design-system20.mjs.map +1 -1
  262. package/dist/design-system201.js +1 -1
  263. package/dist/design-system201.mjs +1 -1
  264. package/dist/design-system21.js +1 -1
  265. package/dist/design-system21.js.map +1 -1
  266. package/dist/design-system21.mjs +54 -187
  267. package/dist/design-system21.mjs.map +1 -1
  268. package/dist/design-system210.js +1 -1
  269. package/dist/design-system210.mjs +1 -1
  270. package/dist/design-system217.js +1 -1
  271. package/dist/design-system217.mjs +1 -1
  272. package/dist/design-system22.js +1 -1
  273. package/dist/design-system22.js.map +1 -1
  274. package/dist/design-system22.mjs +187 -62
  275. package/dist/design-system22.mjs.map +1 -1
  276. package/dist/design-system23.js +1 -1
  277. package/dist/design-system23.js.map +1 -1
  278. package/dist/design-system23.mjs +69 -37
  279. package/dist/design-system23.mjs.map +1 -1
  280. package/dist/design-system24.js +1 -1
  281. package/dist/design-system24.js.map +1 -1
  282. package/dist/design-system24.mjs +37 -144
  283. package/dist/design-system24.mjs.map +1 -1
  284. package/dist/design-system25.js +1 -1
  285. package/dist/design-system25.mjs +1 -1
  286. package/dist/design-system26.js +1 -1
  287. package/dist/design-system26.mjs +3 -3
  288. package/dist/design-system27.js +1 -1
  289. package/dist/design-system27.mjs +2 -2
  290. package/dist/design-system28.js +1 -1
  291. package/dist/design-system28.mjs +10 -6
  292. package/dist/design-system28.mjs.map +1 -1
  293. package/dist/design-system29.js +1 -1
  294. package/dist/design-system29.js.map +1 -1
  295. package/dist/design-system29.mjs +19 -10
  296. package/dist/design-system29.mjs.map +1 -1
  297. package/dist/design-system3.js.map +1 -1
  298. package/dist/design-system3.mjs.map +1 -1
  299. package/dist/design-system30.js +1 -1
  300. package/dist/design-system30.js.map +1 -1
  301. package/dist/design-system30.mjs +24 -14
  302. package/dist/design-system30.mjs.map +1 -1
  303. package/dist/design-system31.js +1 -1
  304. package/dist/design-system31.js.map +1 -1
  305. package/dist/design-system31.mjs +5 -29
  306. package/dist/design-system31.mjs.map +1 -1
  307. package/dist/design-system32.js +1 -1
  308. package/dist/design-system32.mjs +2 -2
  309. package/dist/design-system33.js +1 -1
  310. package/dist/design-system33.mjs +10 -5
  311. package/dist/design-system33.mjs.map +1 -1
  312. package/dist/design-system34.js +1 -1
  313. package/dist/design-system34.mjs +7 -7
  314. package/dist/design-system35.js +1 -1
  315. package/dist/design-system35.mjs +6 -6
  316. package/dist/design-system36.js +1 -1
  317. package/dist/design-system36.mjs +8 -8
  318. package/dist/design-system37.js +1 -1
  319. package/dist/design-system37.mjs +9 -8
  320. package/dist/design-system37.mjs.map +1 -1
  321. package/dist/design-system38.js +1 -1
  322. package/dist/design-system38.mjs +4 -10
  323. package/dist/design-system38.mjs.map +1 -1
  324. package/dist/design-system39.js +1 -1
  325. package/dist/design-system39.mjs +4 -4
  326. package/dist/design-system4.js.map +1 -1
  327. package/dist/design-system4.mjs.map +1 -1
  328. package/dist/design-system40.js +1 -1
  329. package/dist/design-system40.js.map +1 -1
  330. package/dist/design-system40.mjs +68 -141
  331. package/dist/design-system40.mjs.map +1 -1
  332. package/dist/design-system41.js +1 -1
  333. package/dist/design-system41.js.map +1 -1
  334. package/dist/design-system41.mjs +5 -76
  335. package/dist/design-system41.mjs.map +1 -1
  336. package/dist/design-system42.js +1 -1
  337. package/dist/design-system42.mjs +10 -5
  338. package/dist/design-system42.mjs.map +1 -1
  339. package/dist/design-system43.js +1 -1
  340. package/dist/design-system43.mjs +13 -8
  341. package/dist/design-system43.mjs.map +1 -1
  342. package/dist/design-system44.js +1 -1
  343. package/dist/design-system44.mjs +5 -15
  344. package/dist/design-system44.mjs.map +1 -1
  345. package/dist/design-system45.js +1 -1
  346. package/dist/design-system45.js.map +1 -1
  347. package/dist/design-system45.mjs +59 -5
  348. package/dist/design-system45.mjs.map +1 -1
  349. package/dist/design-system46.js +1 -1
  350. package/dist/design-system46.js.map +1 -1
  351. package/dist/design-system46.mjs +5 -59
  352. package/dist/design-system46.mjs.map +1 -1
  353. package/dist/design-system47.js.map +1 -1
  354. package/dist/design-system47.mjs.map +1 -1
  355. package/dist/design-system5.js.map +1 -1
  356. package/dist/design-system5.mjs.map +1 -1
  357. package/dist/design-system54.js +1 -1
  358. package/dist/design-system54.js.map +1 -1
  359. package/dist/design-system54.mjs +1 -1
  360. package/dist/design-system54.mjs.map +1 -1
  361. package/dist/design-system59.js.map +1 -1
  362. package/dist/design-system59.mjs.map +1 -1
  363. package/dist/design-system6.js.map +1 -1
  364. package/dist/design-system6.mjs.map +1 -1
  365. package/dist/design-system61.js +1 -1
  366. package/dist/design-system61.js.map +1 -1
  367. package/dist/design-system61.mjs +2 -49
  368. package/dist/design-system61.mjs.map +1 -1
  369. package/dist/design-system62.js +1 -1
  370. package/dist/design-system62.mjs +2 -2
  371. package/dist/design-system63.js +1 -1
  372. package/dist/design-system63.mjs +2 -2
  373. package/dist/design-system64.js +1 -1
  374. package/dist/design-system64.mjs +1 -1
  375. package/dist/design-system65.js +1 -1
  376. package/dist/design-system65.mjs +1 -1
  377. package/dist/design-system66.js +1 -1
  378. package/dist/design-system66.mjs +1 -1
  379. package/dist/design-system67.js +1 -1
  380. package/dist/design-system67.mjs +1 -1
  381. package/dist/design-system68.js +1 -1
  382. package/dist/design-system68.js.map +1 -1
  383. package/dist/design-system68.mjs +28 -2
  384. package/dist/design-system68.mjs.map +1 -1
  385. package/dist/design-system69.js +1 -1
  386. package/dist/design-system69.mjs +2 -2
  387. package/dist/design-system7.js.map +1 -1
  388. package/dist/design-system7.mjs.map +1 -1
  389. package/dist/design-system70.js +1 -1
  390. package/dist/design-system70.js.map +1 -1
  391. package/dist/design-system70.mjs +51 -21
  392. package/dist/design-system70.mjs.map +1 -1
  393. package/dist/design-system71.js +1 -1
  394. package/dist/design-system71.mjs +2 -2
  395. package/dist/design-system72.js +1 -1
  396. package/dist/design-system72.js.map +1 -1
  397. package/dist/design-system72.mjs +2 -58
  398. package/dist/design-system72.mjs.map +1 -1
  399. package/dist/design-system73.js +1 -1
  400. package/dist/design-system73.mjs +2 -2
  401. package/dist/design-system74.js +1 -1
  402. package/dist/design-system74.mjs +1 -1
  403. package/dist/design-system75.js +1 -1
  404. package/dist/design-system75.mjs +1 -1
  405. package/dist/design-system76.js +1 -1
  406. package/dist/design-system76.mjs +1 -1
  407. package/dist/design-system77.js +1 -1
  408. package/dist/design-system77.mjs +1 -1
  409. package/dist/design-system78.js +1 -1
  410. package/dist/design-system78.mjs +2 -2
  411. package/dist/design-system79.js +1 -1
  412. package/dist/design-system79.js.map +1 -1
  413. package/dist/design-system79.mjs +81 -2
  414. package/dist/design-system79.mjs.map +1 -1
  415. package/dist/design-system80.js +1 -1
  416. package/dist/design-system80.mjs +2 -2
  417. package/dist/design-system81.js +1 -1
  418. package/dist/design-system81.js.map +1 -1
  419. package/dist/design-system81.mjs +2 -81
  420. package/dist/design-system81.mjs.map +1 -1
  421. package/dist/design-system82.js +1 -1
  422. package/dist/design-system82.js.map +1 -1
  423. package/dist/design-system82.mjs +119 -2
  424. package/dist/design-system82.mjs.map +1 -1
  425. package/dist/design-system83.js +1 -1
  426. package/dist/design-system83.mjs +2 -2
  427. package/dist/design-system84.js +1 -1
  428. package/dist/design-system84.mjs +1 -1
  429. package/dist/design-system85.js +1 -1
  430. package/dist/design-system85.mjs +1 -1
  431. package/dist/design-system86.js +1 -1
  432. package/dist/design-system86.js.map +1 -1
  433. package/dist/design-system86.mjs +102 -2
  434. package/dist/design-system86.mjs.map +1 -1
  435. package/dist/design-system87.js +1 -1
  436. package/dist/design-system87.js.map +1 -1
  437. package/dist/design-system87.mjs +2 -102
  438. package/dist/design-system87.mjs.map +1 -1
  439. package/dist/design-system88.js +1 -1
  440. package/dist/design-system88.js.map +1 -1
  441. package/dist/design-system88.mjs +173 -2
  442. package/dist/design-system88.mjs.map +1 -1
  443. package/dist/design-system89.js +1 -1
  444. package/dist/design-system89.js.map +1 -1
  445. package/dist/design-system89.mjs +2 -175
  446. package/dist/design-system89.mjs.map +1 -1
  447. package/dist/design-system90.js +1 -1
  448. package/dist/design-system90.mjs +2 -2
  449. package/dist/design-system91.js +1 -1
  450. package/dist/design-system91.js.map +1 -1
  451. package/dist/design-system91.mjs +131 -2
  452. package/dist/design-system91.mjs.map +1 -1
  453. package/dist/design-system92.js +1 -1
  454. package/dist/design-system92.mjs +2 -2
  455. package/dist/design-system97.js.map +1 -1
  456. package/dist/design-system97.mjs.map +1 -1
  457. package/dist/design-system98.js +1 -1
  458. package/dist/design-system98.mjs +3 -3
  459. package/dist/design-system99.js +1 -1
  460. package/dist/design-system99.mjs +1 -1
  461. package/dist/style.css +1 -1
  462. package/dist/types/components/BButton.vue.d.ts +6 -3
  463. package/dist/types/components/BCarousel/BCarousel.vue.d.ts +1 -1
  464. package/dist/types/components/BCheckbox.vue.d.ts +1 -4
  465. package/dist/types/components/BCollapse.vue.d.ts +1 -1
  466. package/dist/types/components/BCurrencyField.vue.d.ts +12 -66
  467. package/dist/types/components/BDatePicker.vue.d.ts +1 -4
  468. package/dist/types/components/BDateRangePicker.vue.d.ts +1 -4
  469. package/dist/types/components/BDropdown/BDropdown.vue.d.ts +4 -4
  470. package/dist/types/components/BDropdown/BDropdownItem.vue.d.ts +0 -3
  471. package/dist/types/components/BErrorMessage.vue.d.ts +0 -3
  472. package/dist/types/components/BImagePicker/BImagePicker.vue.d.ts +1 -4
  473. package/dist/types/components/BImagePicker/BImagePreview.vue.d.ts +1 -4
  474. package/dist/types/components/BLabel.vue.d.ts +0 -3
  475. package/dist/types/components/BLoadingBar.vue.d.ts +0 -3
  476. package/dist/types/components/BLoadingOverlay.vue.d.ts +0 -3
  477. package/dist/types/components/BModal/BModal.vue.d.ts +4 -4
  478. package/dist/types/components/BModal/BModalContainer.vue.d.ts +0 -3
  479. package/dist/types/components/BMultiSelect.vue.d.ts +2 -5
  480. package/dist/types/components/BOtpField/BOtpField.vue.d.ts +2 -5
  481. package/dist/types/components/BOtpField/BOtpFieldBox.vue.d.ts +6 -9
  482. package/dist/types/components/BPagination.vue.d.ts +1 -4
  483. package/dist/types/components/BRadio.vue.d.ts +1 -4
  484. package/dist/types/components/BSelect.vue.d.ts +2 -5
  485. package/dist/types/components/BTabs/BTabs.vue.d.ts +1 -4
  486. package/dist/types/components/BTextField.vue.d.ts +8 -61
  487. package/dist/types/components/BTextarea.vue.d.ts +1 -4
  488. package/dist/types/components/BToast/BToast.vue.d.ts +1 -4
  489. package/dist/types/components/BToast/BToastItem.vue.d.ts +0 -3
  490. package/dist/types/components/BTooltip.vue.d.ts +1 -4
  491. package/package.json +10 -10
@@ -1 +1 @@
1
- {"version":3,"file":"design-system21.mjs","sources":["../src/components/BSelect.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, withCtx as _withCtx, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, vShow as _vShow, withDirectives as _withDirectives, unref as _unref } from \"vue\"\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_2 = [\n _hoisted_1\n]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 1,\n class: \"ds-text-black/[0.4]\"\n}\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_7 = [\n _hoisted_6\n]\nconst _hoisted_8 = [\"id\", \"data-cy\", \"data-ut\"]\nconst _hoisted_9 = { class: \"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow\" }\nconst _hoisted_10 = { class: \"ds-py-1 ds-text-sm ds-text-black/[0.85]\" }\nconst _hoisted_11 = [\"onClick\"]\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport {\n ensureVisiblePosition,\n lockScrollBody,\n resetPosition,\n unlockScrollBody,\n} from '@/helpers/ComponentHelper';\nimport type { DisplayItem } from '@/types';\nimport { v4 as uuid } from 'uuid';\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\nimport BTextField from './BTextField.vue';\n\n/**\n * Props\n */\nexport interface BSelectProps {\n inputId?: string;\n modelValue: string | number;\n label?: string;\n items: DisplayItem[];\n disabled?: boolean;\n placeholder?: string;\n valueCssClass?: string;\n menuCssClass?: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Allow to type to search.\n */\n allowInput?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BSelect',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n items: {},\n disabled: { type: Boolean, default: false },\n placeholder: { default: '' },\n valueCssClass: { default: '' },\n menuCssClass: { default: '' },\n validationRules: { default: undefined },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false },\n allowInput: { type: Boolean, default: false }\n },\n emits: [\"change\", \"open\", \"close\", \"change:input\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst selectEl = ref<HTMLElement | null>(null);\nconst inputRef = ref<InstanceType<typeof BTextField> | null>(null);\nconst selectMenuEl = ref<HTMLElement | null>(null);\nconst selectMenu = ref(false);\nconst { t } = useI18n();\nconst validateRequired: ValidationRule = {\n validateRule: (val) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst inputText = ref('');\nconst selectedItem = ref<DisplayItem>();\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue;\n },\n set(val) {\n emit('update:modelValue', val);\n },\n});\nconst btnCssClass = computed(() => {\n let result = `ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between `;\n result += props.disabled\n ? `ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] `\n : `ds-bg-white ds-text-black/[0.85] `;\n result += !validationResult.value.valid\n ? `ds-border-error focus:ds-ring-1 focus:ds-ring-error `\n : `ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus `;\n\n return result;\n});\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n\n/**\n * Watch\n */\nwatch(selectMenu, (val) => {\n if (val) {\n lockScrollBody();\n ensureMenuPosition();\n emit('open');\n } else {\n unlockScrollBody();\n resetMenuPosition();\n emit('close');\n }\n});\nwatch(value, () => {\n ensureSelectedItem();\n ensureInputText();\n});\nwatch(\n () => props.items,\n () => {\n if (value.value && !selectedItem.value?.value) {\n ensureSelectedItem();\n ensureInputText();\n }\n },\n {\n deep: true,\n },\n);\n\n/**\n * Methods\n */\nconst ensureSelectedItem = () => {\n selectedItem.value = props.items.find((i) => i.value === value.value);\n};\nconst ensureInputText = () => {\n if (props.allowInput) {\n inputText.value = selectedItem.value?.text || '';\n }\n};\nconst initPressEscapeEventListener = () => {\n document.addEventListener('keydown', closeOnEscapePressed);\n};\nconst closeOnEscapePressed = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n closeSelectMenu();\n }\n};\nconst initClickOutsideEventListener = () => {\n document.addEventListener('click', closeOnClickOutside);\n};\nconst closeOnClickOutside = (event: any) => {\n const refs = [selectEl.value, selectMenuEl.value];\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\n if (!withinBoundaries) {\n closeSelectMenu();\n }\n};\nconst onClickItem = (item: DisplayItem) => {\n value.value = item.value;\n closeSelectMenu();\n emit('change', item.value);\n nextTick(() => {\n validate();\n });\n};\nconst ensureMenuWidth = (parentEl: HTMLElement, menuEl: HTMLElement) => {\n menuEl.style.width = `${parentEl.offsetWidth}px`;\n};\nconst ensureMenuPosition = () => {\n nextTick(() => {\n ensureVisiblePosition(selectEl.value!, selectMenuEl.value!);\n ensureMenuWidth(selectEl.value!, selectMenuEl.value!);\n });\n};\nconst resetMenuPosition = () => {\n resetPosition(selectEl.value!, selectMenuEl.value!);\n};\nconst onChangeInputText = (text: string) => {\n emit('change:input', text);\n};\nconst closeSelectMenu = () => {\n selectMenu.value = false;\n inputRef.value?.blur();\n ensureInputText();\n};\nconst init = () => {\n ensureSelectedItem();\n ensureInputText();\n};\ninit();\n\n/**\n * Lifecycle Hooks\n */\nonMounted(() => {\n initPressEscapeEventListener();\n initClickOutsideEventListener();\n});\nonBeforeUnmount(() => {\n document.removeEventListener('keydown', closeOnEscapePressed);\n document.removeEventListener('click', closeOnClickOutside);\n unlockScrollBody();\n // Make sure dropdown menu unmounted with itself\n resetMenuPosition();\n});\n\n__expose({ validate, selectMenu });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"div\", {\n ref_key: \"selectEl\",\n ref: selectEl\n }, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n (props.allowInput)\n ? (_openBlock(), _createBlock(BTextField, {\n key: 0,\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n modelValue: inputText.value,\n \"onUpdate:modelValue\": [\n _cache[0] || (_cache[0] = ($event: any) => ((inputText).value = $event)),\n onChangeInputText\n ],\n disabled: props.disabled,\n placeholder: props.placeholder,\n \"hide-details\": \"\",\n onFocus: _cache[1] || (_cache[1] = ($event: any) => (selectMenu.value = true)),\n \"onClick:append\": _cache[2] || (_cache[2] = ($event: any) => (inputRef.value?.focus()))\n }, {\n appendIcon: _withCtx(() => [\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_2, 2))\n ]),\n _: 1\n }, 8, [\"id\", \"modelValue\", \"disabled\", \"placeholder\"]))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n id: id.value,\n class: _normalizeClass(btnCssClass.value),\n disabled: props.disabled,\n type: \"button\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (selectMenu.value = !selectMenu.value))\n }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([_ctx.valueCssClass, \"ds-truncate\"])\n }, [\n (selectedItem.value?.text)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(selectedItem.value?.text), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_5, _toDisplayString(props.placeholder), 1))\n ], 2),\n _createTextVNode(\"   \"),\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_7, 2))\n ], 10, _hoisted_3)),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"selectMenuEl\",\n ref: selectMenuEl,\n class: _normalizeClass([_ctx.menuCssClass, \"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1\"]),\n \"data-cy\": _ctx.$attrs['data-cy'] ? `${_ctx.$attrs['data-cy']}Menu` : undefined,\n \"data-ut\": _ctx.$attrs['data-ut'] ? `${_ctx.$attrs['data-ut']}Menu` : undefined\n }, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"ul\", _hoisted_10, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.items, (item, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: `item${index}`,\n class: \"ds-cursor-pointer\",\n onClick: ($event: any) => (onClickItem(item))\n }, [\n _createElementVNode(\"a\", {\n class: _normalizeClass([\n item.cssClass +\n `${item.value === value.value ? ' ds-bg-gray-150' : ''}`\n , \"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150\"])\n }, _toDisplayString(item?.text), 3)\n ], 8, _hoisted_11))\n }), 128))\n ])\n ])\n ], 10, _hoisted_8), [\n [_vShow, selectMenu.value]\n ])\n ], 512),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_sfc_main","_defineComponent","__props","__expose","emit","props","selectEl","ref","inputRef","selectMenuEl","selectMenu","t","useI18n","validateRequired","val","inputText","selectedItem","id","computed","uuid","value","btnCssClass","result","validationResult","vRules","validate","useValidationField","watch","lockScrollBody","ensureMenuPosition","unlockScrollBody","resetMenuPosition","ensureSelectedItem","ensureInputText","_a","i","initPressEscapeEventListener","closeOnEscapePressed","event","closeSelectMenu","initClickOutsideEventListener","closeOnClickOutside","r","onClickItem","item","nextTick","ensureMenuWidth","parentEl","menuEl","ensureVisiblePosition","resetPosition","onChangeInputText","text","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_createBlock","BTextField","$event","_withCtx","_normalizeClass","_toDisplayString","_b","_createTextVNode","_withDirectives","_Fragment","_renderList","index","_vShow","_createCommentVNode","BErrorMessage","_unref"],"mappings":"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"}
1
+ {"version":3,"file":"design-system21.mjs","sources":["../src/components/BRadio.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { vModelRadio as _vModelRadio, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, unref as _unref, createBlock as _createBlock, Fragment as _Fragment } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-flex ds-items-center\" }\nconst _hoisted_2 = [\"id\", \"disabled\", \"name\", \"value\"]\nconst _hoisted_3 = [\"for\"]\n\nimport BErrorMessage from '@/components/BErrorMessage.vue';\r\nimport {\r\n useValidationField,\r\n type ValidationRule,\r\n} from '@/composables/Validation';\r\nimport { v4 as uuid } from 'uuid';\r\nimport { computed } from 'vue';\r\nimport { useI18n } from 'vue-i18n';\r\n\r\n//#region Props\r\nexport interface BRadioProps {\r\n inputId?: string;\r\n modelValue?: string | number | boolean;\r\n inputName?: string;\r\n label?: string;\r\n disabled?: boolean;\r\n labelCssClass?: string;\r\n /**\r\n * Hide the validation error message.\r\n */\r\n hideDetails?: boolean;\r\n /**\r\n * Array of custom validation rules.\r\n */\r\n validationRules?: ValidationRule[];\r\n /**\r\n * Validate if the field is left empty.\r\n */\r\n required?: boolean;\r\n requiredErrorMessage?: string;\r\n}\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BRadio',\n props: {\n inputId: { default: '' },\n modelValue: { type: [String, Number, Boolean], default: '' },\n inputName: { default: '' },\n label: { default: '' },\n disabled: { type: Boolean, default: false },\n labelCssClass: { default: '' },\n hideDetails: { type: Boolean, default: false },\n validationRules: { default: undefined },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' }\n },\n emits: [\"change\", \"update:modelValue\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\r\n\r\n//#endregion\r\n\r\n//#region Events\r\n\r\n//#endregion\r\n\r\n//#region Data\r\nconst { t } = useI18n();\r\nconst validateRequired: ValidationRule = {\r\n validateRule: (val: string) => !!(val && val.trim()),\r\n errorMessage: () =>\r\n props.requiredErrorMessage || t('ds.global.field_required'),\r\n};\r\nconst id = computed(() => props.inputId || `id-${uuid()}`);\r\nconst value = computed({\r\n get() {\r\n return props.modelValue;\r\n },\r\n set(val) {\r\n emit('update:modelValue', val);\r\n },\r\n});\r\nconst vRules = computed(() => {\r\n let result: ValidationRule[] = [];\r\n\r\n if (props.required) {\r\n result.push(validateRequired);\r\n }\r\n if (props.validationRules) {\r\n result = result.concat(props.validationRules);\r\n }\r\n\r\n return result.length ? result : undefined;\r\n});\r\n\r\nconst { validate, validationResult } = useValidationField(\r\n id.value,\r\n value,\r\n vRules.value,\r\n);\r\n//#endregion\r\n\r\n//#region Methods\r\nconst onChange = () => {\r\n emit('change');\r\n validate();\r\n};\r\n//#endregion\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"div\", _hoisted_1, [\n _withDirectives(_createElementVNode(\"input\", {\n id: id.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((value).value = $event)),\n class: _normalizeClass([{ 'ds-cursor-not-allowed': _ctx.disabled }, \"ds-h-6 ds-min-h-[1.5rem] ds-w-6 ds-min-w-[1.5rem] ds-border-gray-300 ds-bg-gray-100 ds-text-primary-t focus:ds-ring-primary-t\"]),\n disabled: _ctx.disabled,\n name: _ctx.inputName,\n value: _ctx.$attrs.value,\n type: \"radio\",\n onChange: onChange\n }, null, 42, _hoisted_2), [\n [_vModelRadio, value.value]\n ]),\n (_ctx.label)\n ? (_openBlock(), _createElementBlock(\"label\", {\n key: 0,\n class: _normalizeClass([_ctx.labelCssClass, \"ds-ml-2 ds-text-sm ds-font-medium ds-text-gray-900\"]),\n for: id.value\n }, _toDisplayString(_ctx.label), 11, _hoisted_3))\n : _createCommentVNode(\"\", true)\n ]),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ], 64))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_sfc_main","_defineComponent","__props","emit","props","t","useI18n","validateRequired","val","id","computed","uuid","value","vRules","result","validate","validationResult","useValidationField","onChange","_ctx","_cache","_openBlock","_createElementBlock","_Fragment","_createElementVNode","_withDirectives","$event","_normalizeClass","_vModelRadio","_toDisplayString","_createCommentVNode","_createBlock","BErrorMessage","_unref"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const r=require("./design-system121.js");var t=r.Uint8Array;const i=t;module.exports=i;
1
+ "use strict";const r=require("./design-system118.js");var t=r.Uint8Array;const i=t;module.exports=i;
2
2
  //# sourceMappingURL=design-system210.js.map
@@ -1,4 +1,4 @@
1
- import r from "./design-system121.mjs";
1
+ import r from "./design-system118.mjs";
2
2
  var t = r.Uint8Array;
3
3
  const o = t;
4
4
  export {
@@ -1,2 +1,2 @@
1
- "use strict";const r=require("./design-system112.js");function s(t,n){for(var e=t.length;e--;)if(r(t[e][0],n))return e;return-1}module.exports=s;
1
+ "use strict";const r=require("./design-system109.js");function s(t,n){for(var e=t.length;e--;)if(r(t[e][0],n))return e;return-1}module.exports=s;
2
2
  //# sourceMappingURL=design-system217.js.map
@@ -1,4 +1,4 @@
1
- import r from "./design-system112.mjs";
1
+ import r from "./design-system109.mjs";
2
2
  function o(t, n) {
3
3
  for (var e = t.length; e--; )
4
4
  if (r(t[e][0], n))
@@ -1,2 +1,2 @@
1
- "use strict";const l=require("vue"),b=require("./design-system3.js"),g=require("./design-system48.js"),_=require("./design-system30.js"),q=require("./design-system31.js"),y=require("./design-system98.js"),B=["id","autocomplete","disabled","placeholder","readonly","rows"],h=l.defineComponent({__name:"BTextarea",props:{inputId:{default:""},inputCssClass:{default:""},modelValue:{},validationRules:{default:void 0},label:{default:""},placeholder:{default:""},autocomplete:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},rows:{default:3},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""},hideDetails:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(a,{expose:u,emit:i}){const s=a,{t:n}=g.useI18n(),c={validateRule:e=>typeof e=="number"?!!e:!!(e&&(e!=null&&e.trim())),errorMessage:()=>s.requiredErrorMessage||n("ds.global.field_required")},r=l.computed(()=>s.inputId||`id-${y()}`),t=l.computed({get(){return s.modelValue},set(e){i("update:modelValue",e)}}),p=l.computed(()=>[{"ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/40":s.disabled,"ds-text-black/[0.85]":!s.disabled,"ds-border-error focus:ds-ring-1 focus:ds-ring-error":!d.value.valid,"ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus":d.value.valid},s.inputCssClass]),f=l.computed(()=>{let e=[];return s.required&&e.push(c),s.validationRules&&(e=e.concat(s.validationRules)),e.length?e:void 0}),{validate:m,validationResult:d}=b.useValidationField(r.value,t,f.value);return u({validate:m}),(e,o)=>(l.openBlock(),l.createElementBlock("div",null,[l.createVNode(q,{id:r.value,label:e.label,required:e.required},null,8,["id","label","required"]),l.withDirectives(l.createElementVNode("textarea",{id:r.value,"onUpdate:modelValue":o[0]||(o[0]=v=>t.value=v),autocomplete:s.autocomplete?"on":"off",class:l.normalizeClass([p.value,"ds-block ds-w-full ds-rounded-lg ds-border ds-px-3 ds-py-1 ds-text-sm ds-drop-shadow-light"]),disabled:s.disabled,placeholder:s.placeholder,readonly:s.readonly,rows:s.rows},null,10,B),[[l.vModelText,t.value]]),e.hideDetails?l.createCommentVNode("",!0):(l.openBlock(),l.createBlock(_,{key:0,"error-message":l.unref(d).errorMessage(),class:"ds-mt-1"},null,8,["error-message"]))]))}});module.exports=h;
1
+ "use strict";const e=require("vue"),T=require("./design-system3.js"),v=require("./design-system6.js"),D=require("./design-system48.js"),F=require("./design-system29.js"),O=require("./design-system30.js"),U=require("./design-system39.js"),W=require("./design-system98.js"),j=e.createElementVNode("path",{d:"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"},null,-1),H=[j],A=["id","disabled"],G={key:0},J={key:1,class:"ds-text-black/[0.4]"},K=e.createElementVNode("path",{d:"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"},null,-1),Q=[K],X=["id","data-cy","data-ut"],Y={class:"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow"},Z={class:"ds-py-1 ds-text-sm ds-text-black/[0.85]"},ee=["onClick"],se=e.defineComponent({__name:"BSelect",props:{inputId:{default:""},modelValue:{},label:{default:""},items:{},disabled:{type:Boolean,default:!1},placeholder:{default:""},valueCssClass:{default:""},menuCssClass:{default:""},validationRules:{default:void 0},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""},hideDetails:{type:Boolean,default:!1},allowInput:{type:Boolean,default:!1}},emits:["change","open","close","change:input","update:modelValue"],setup(x,{expose:V,emit:d}){const t=x,r=e.ref(null),k=e.ref(null),u=e.ref(null),n=e.ref(!1),{t:M}=D.useI18n(),q={validateRule:s=>!!s,errorMessage:()=>t.requiredErrorMessage||M("ds.global.field_required")},h=e.ref(""),i=e.ref(),c=e.computed(()=>t.inputId||`id-${W()}`),a=e.computed({get(){return t.modelValue},set(s){d("update:modelValue",s)}}),$=e.computed(()=>{let s="ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between ";return s+=t.disabled?"ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] ":"ds-bg-white ds-text-black/[0.85] ",s+=w.value.valid?"ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus ":"ds-border-error focus:ds-ring-1 focus:ds-ring-error ",s}),I=e.computed(()=>{let s=[];return t.required&&s.push(q),t.validationRules&&(s=s.concat(t.validationRules)),s.length?s:void 0}),{validate:B,validationResult:w}=T.useValidationField(c.value,a,I.value);e.watch(n,s=>{s?(v.lockScrollBody(),R(),d("open")):(v.unlockScrollBody(),C(),d("close"))}),e.watch(a,()=>{g(),p()}),e.watch(()=>t.items,()=>{var s;a.value&&!((s=i.value)!=null&&s.value)&&(g(),p())},{deep:!0});const g=()=>{i.value=t.items.find(s=>s.value===a.value)},p=()=>{var s;t.allowInput&&(h.value=((s=i.value)==null?void 0:s.text)||"")},N=()=>{document.addEventListener("keydown",E)},E=s=>{s.key==="Escape"&&b()},L=()=>{document.addEventListener("click",_)},_=s=>{[r.value,u.value].some(f=>s.composedPath().includes(f))||b()},S=s=>{a.value=s.value,b(),d("change",s.value),e.nextTick(()=>{B()})},z=(s,l)=>{l.style.width=`${s.offsetWidth}px`},R=()=>{e.nextTick(()=>{v.ensureVisiblePosition(r.value,u.value),z(r.value,u.value)})},C=()=>{v.resetPosition(r.value,u.value)},P=s=>{d("change:input",s)},b=()=>{var s;n.value=!1,(s=k.value)==null||s.blur(),p()};return(()=>{g(),p()})(),e.onMounted(()=>{N(),L()}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",E),document.removeEventListener("click",_),v.unlockScrollBody(),C()}),V({validate:B,selectMenu:n}),(s,l)=>{var y,f;return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",{ref_key:"selectEl",ref:r},[e.createVNode(O,{id:c.value,label:s.label,required:s.required},null,8,["id","label","required"]),t.allowInput?(e.openBlock(),e.createBlock(U,{key:0,id:c.value,ref_key:"inputRef",ref:k,modelValue:h.value,"onUpdate:modelValue":[l[0]||(l[0]=o=>h.value=o),P],disabled:t.disabled,placeholder:t.placeholder,"hide-details":"",onFocus:l[1]||(l[1]=o=>n.value=!0),"onClick:append":l[2]||(l[2]=o=>{var m;return(m=k.value)==null?void 0:m.focus()})},{appendIcon:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([[n.value?"ds-rotate-180":""],"ds-h-4 ds-w-4 ds-transition-transform"]),viewBox:"0 0 320 512",xmlns:"http://www.w3.org/2000/svg"},H,2))]),_:1},8,["id","modelValue","disabled","placeholder"])):(e.openBlock(),e.createElementBlock("button",{key:1,id:c.value,class:e.normalizeClass($.value),disabled:t.disabled,type:"button",onClick:l[3]||(l[3]=o=>n.value=!n.value)},[e.createElementVNode("span",{class:e.normalizeClass([s.valueCssClass,"ds-truncate"])},[(y=i.value)!=null&&y.text?(e.openBlock(),e.createElementBlock("span",G,e.toDisplayString((f=i.value)==null?void 0:f.text),1)):(e.openBlock(),e.createElementBlock("span",J,e.toDisplayString(t.placeholder),1))],2),e.createTextVNode("   "),(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([[n.value?"ds-rotate-180":""],"ds-h-4 ds-w-4 ds-transition-transform"]),viewBox:"0 0 320 512",xmlns:"http://www.w3.org/2000/svg"},Q,2))],10,A)),e.withDirectives(e.createElementVNode("div",{id:`${c.value}Menu`,ref_key:"selectMenuEl",ref:u,class:e.normalizeClass([s.menuCssClass,"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1"]),"data-cy":s.$attrs["data-cy"]?`${s.$attrs["data-cy"]}Menu`:void 0,"data-ut":s.$attrs["data-ut"]?`${s.$attrs["data-ut"]}Menu`:void 0},[e.createElementVNode("div",Y,[e.createElementVNode("ul",Z,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.items,(o,m)=>(e.openBlock(),e.createElementBlock("li",{key:`item${m}`,class:"ds-cursor-pointer",onClick:le=>S(o)},[e.createElementVNode("a",{class:e.normalizeClass([o.cssClass+`${o.value===a.value?" ds-bg-gray-150":""}`,"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150"])},e.toDisplayString(o==null?void 0:o.text),3)],8,ee))),128))])])],10,X),[[e.vShow,n.value]])],512),s.hideDetails?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(F,{key:0,"error-message":e.unref(w).errorMessage(),class:"ds-mt-1"},null,8,["error-message"]))])}}});module.exports=se;
2
2
  //# sourceMappingURL=design-system22.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system22.js","sources":["../src/components/BTextarea.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, vModelText as _vModelText, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, withDirectives as _withDirectives, unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"id\", \"autocomplete\", \"disabled\", \"placeholder\", \"readonly\", \"rows\"]\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport { v4 as uuid } from 'uuid';\nimport { computed } from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\n\n/**\n * Props\n */\nexport interface BTextareaProps {\n inputId?: string;\n inputCssClass?: string;\n modelValue: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n label?: string;\n placeholder?: string;\n autocomplete?: boolean;\n disabled?: boolean;\n readonly?: boolean;\n /**\n * Number of rows.\n */\n rows?: number;\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BTextarea',\n props: {\n inputId: { default: '' },\n inputCssClass: { default: '' },\n modelValue: {},\n validationRules: { default: undefined },\n label: { default: '' },\n placeholder: { default: '' },\n autocomplete: { type: Boolean, default: false },\n disabled: { type: Boolean, default: false },\n readonly: { type: Boolean, default: false },\n rows: { default: 3 },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false }\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst { t } = useI18n();\nconst validateRequired: ValidationRule = {\n validateRule: (val: string | number) => {\n if (typeof val === 'number') {\n return !!val;\n }\n return !!(val && val?.trim());\n },\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue;\n },\n set(val) {\n emit('update:modelValue', val);\n },\n});\nconst inputCssClassValue = computed(() => [\n {\n 'ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/40': props.disabled,\n 'ds-text-black/[0.85]': !props.disabled,\n 'ds-border-error focus:ds-ring-1 focus:ds-ring-error':\n !validationResult.value.valid,\n 'ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus':\n validationResult.value.valid,\n },\n props.inputCssClass,\n]);\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n\n__expose({ validate });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n _withDirectives(_createElementVNode(\"textarea\", {\n id: id.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((value).value = $event)),\n autocomplete: props.autocomplete ? 'on' : 'off',\n class: _normalizeClass([inputCssClassValue.value, \"ds-block ds-w-full ds-rounded-lg ds-border ds-px-3 ds-py-1 ds-text-sm ds-drop-shadow-light\"]),\n disabled: props.disabled,\n placeholder: props.placeholder,\n readonly: props.readonly,\n rows: props.rows\n }, null, 10, _hoisted_1), [\n [_vModelText, value.value]\n ]),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_sfc_main","_defineComponent","__props","__expose","emit","props","t","useI18n","validateRequired","val","id","computed","uuid","value","inputCssClassValue","validationResult","vRules","result","validate","useValidationField","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_withDirectives","_createElementVNode","$event","_normalizeClass","_vModelText","_createCommentVNode","_createBlock","BErrorMessage","_unref"],"mappings":"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"}
1
+ {"version":3,"file":"design-system22.js","sources":["../src/components/BSelect.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, withCtx as _withCtx, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, vShow as _vShow, withDirectives as _withDirectives, unref as _unref } from \"vue\"\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_2 = [\n _hoisted_1\n]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 1,\n class: \"ds-text-black/[0.4]\"\n}\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_7 = [\n _hoisted_6\n]\nconst _hoisted_8 = [\"id\", \"data-cy\", \"data-ut\"]\nconst _hoisted_9 = { class: \"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow\" }\nconst _hoisted_10 = { class: \"ds-py-1 ds-text-sm ds-text-black/[0.85]\" }\nconst _hoisted_11 = [\"onClick\"]\n\nimport {\r\n useValidationField,\r\n type ValidationRule,\r\n} from '@/composables/Validation';\r\nimport {\r\n ensureVisiblePosition,\r\n lockScrollBody,\r\n resetPosition,\r\n unlockScrollBody,\r\n} from '@/helpers/ComponentHelper';\r\nimport type { DisplayItem } from '@/types';\r\nimport { v4 as uuid } from 'uuid';\r\nimport {\r\n computed,\r\n nextTick,\r\n onBeforeUnmount,\r\n onMounted,\r\n ref,\r\n watch,\r\n} from 'vue';\r\nimport { useI18n } from 'vue-i18n';\r\nimport BErrorMessage from './BErrorMessage.vue';\r\nimport BLabel from './BLabel.vue';\r\nimport BTextField from './BTextField.vue';\r\n\r\n//#region Props\r\nexport interface BSelectProps {\r\n inputId?: string;\r\n modelValue: string | number;\r\n label?: string;\r\n items: DisplayItem[];\r\n disabled?: boolean;\r\n placeholder?: string;\r\n valueCssClass?: string;\r\n menuCssClass?: string;\r\n /**\r\n * Array of custom validation rules.\r\n */\r\n validationRules?: ValidationRule[];\r\n /**\r\n * Validate if the field is left empty.\r\n */\r\n required?: boolean;\r\n requiredErrorMessage?: string;\r\n /**\r\n * Hide the validation error message.\r\n */\r\n hideDetails?: boolean;\r\n /**\r\n * Allow to type to search.\r\n */\r\n allowInput?: boolean;\r\n}\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BSelect',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n items: {},\n disabled: { type: Boolean, default: false },\n placeholder: { default: '' },\n valueCssClass: { default: '' },\n menuCssClass: { default: '' },\n validationRules: { default: undefined },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false },\n allowInput: { type: Boolean, default: false }\n },\n emits: [\"change\", \"open\", \"close\", \"change:input\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\r\n\r\n//#endregion\r\n\r\n//#region Events\r\n\r\n//#endregion\r\n\r\n//#region Data\r\nconst selectEl = ref<HTMLElement | null>(null);\r\nconst inputRef = ref<InstanceType<typeof BTextField> | null>(null);\r\nconst selectMenuEl = ref<HTMLElement | null>(null);\r\nconst selectMenu = ref(false);\r\nconst { t } = useI18n();\r\nconst validateRequired: ValidationRule = {\r\n validateRule: (val) => !!val,\r\n errorMessage: () =>\r\n props.requiredErrorMessage || t('ds.global.field_required'),\r\n};\r\nconst inputText = ref('');\r\nconst selectedItem = ref<DisplayItem>();\r\nconst id = computed(() => props.inputId || `id-${uuid()}`);\r\nconst value = computed({\r\n get() {\r\n return props.modelValue;\r\n },\r\n set(val) {\r\n emit('update:modelValue', val);\r\n },\r\n});\r\nconst btnCssClass = computed(() => {\r\n let result = `ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between `;\r\n result += props.disabled\r\n ? `ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] `\r\n : `ds-bg-white ds-text-black/[0.85] `;\r\n result += !validationResult.value.valid\r\n ? `ds-border-error focus:ds-ring-1 focus:ds-ring-error `\r\n : `ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus `;\r\n\r\n return result;\r\n});\r\nconst vRules = computed(() => {\r\n let result: ValidationRule[] = [];\r\n\r\n if (props.required) {\r\n result.push(validateRequired);\r\n }\r\n if (props.validationRules) {\r\n result = result.concat(props.validationRules);\r\n }\r\n\r\n return result.length ? result : undefined;\r\n});\r\n\r\nconst { validate, validationResult } = useValidationField(\r\n id.value,\r\n value,\r\n vRules.value,\r\n);\r\n//#endregion\r\n\r\n//#region Watchers\r\nwatch(selectMenu, (val) => {\r\n if (val) {\r\n lockScrollBody();\r\n ensureMenuPosition();\r\n emit('open');\r\n } else {\r\n unlockScrollBody();\r\n resetMenuPosition();\r\n emit('close');\r\n }\r\n});\r\nwatch(value, () => {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n});\r\nwatch(\r\n () => props.items,\r\n () => {\r\n if (value.value && !selectedItem.value?.value) {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n }\r\n },\r\n {\r\n deep: true,\r\n },\r\n);\r\n//#endregion\r\n\r\n//#region Methods\r\nconst ensureSelectedItem = () => {\r\n selectedItem.value = props.items.find((i) => i.value === value.value);\r\n};\r\nconst ensureInputText = () => {\r\n if (props.allowInput) {\r\n inputText.value = selectedItem.value?.text || '';\r\n }\r\n};\r\nconst initPressEscapeEventListener = () => {\r\n document.addEventListener('keydown', closeOnEscapePressed);\r\n};\r\nconst closeOnEscapePressed = (event: KeyboardEvent) => {\r\n if (event.key === 'Escape') {\r\n closeSelectMenu();\r\n }\r\n};\r\nconst initClickOutsideEventListener = () => {\r\n document.addEventListener('click', closeOnClickOutside);\r\n};\r\nconst closeOnClickOutside = (event: any) => {\r\n const refs = [selectEl.value, selectMenuEl.value];\r\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\r\n if (!withinBoundaries) {\r\n closeSelectMenu();\r\n }\r\n};\r\nconst onClickItem = (item: DisplayItem) => {\r\n value.value = item.value;\r\n closeSelectMenu();\r\n emit('change', item.value);\r\n nextTick(() => {\r\n validate();\r\n });\r\n};\r\nconst ensureMenuWidth = (parentEl: HTMLElement, menuEl: HTMLElement) => {\r\n menuEl.style.width = `${parentEl.offsetWidth}px`;\r\n};\r\nconst ensureMenuPosition = () => {\r\n nextTick(() => {\r\n ensureVisiblePosition(selectEl.value!, selectMenuEl.value!);\r\n ensureMenuWidth(selectEl.value!, selectMenuEl.value!);\r\n });\r\n};\r\nconst resetMenuPosition = () => {\r\n resetPosition(selectEl.value!, selectMenuEl.value!);\r\n};\r\nconst onChangeInputText = (text: string) => {\r\n emit('change:input', text);\r\n};\r\nconst closeSelectMenu = () => {\r\n selectMenu.value = false;\r\n inputRef.value?.blur();\r\n ensureInputText();\r\n};\r\nconst init = () => {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n};\r\ninit();\r\n//#endregion\r\n\r\n//#region Lifecycle Hooks\r\nonMounted(() => {\r\n initPressEscapeEventListener();\r\n initClickOutsideEventListener();\r\n});\r\nonBeforeUnmount(() => {\r\n document.removeEventListener('keydown', closeOnEscapePressed);\r\n document.removeEventListener('click', closeOnClickOutside);\r\n unlockScrollBody();\r\n // Make sure dropdown menu unmounted with itself\r\n resetMenuPosition();\r\n});\r\n//#endregion\r\n\r\n__expose({ validate, selectMenu });\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"div\", {\n ref_key: \"selectEl\",\n ref: selectEl\n }, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n (props.allowInput)\n ? (_openBlock(), _createBlock(BTextField, {\n key: 0,\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n modelValue: inputText.value,\n \"onUpdate:modelValue\": [\n _cache[0] || (_cache[0] = ($event: any) => ((inputText).value = $event)),\n onChangeInputText\n ],\n disabled: props.disabled,\n placeholder: props.placeholder,\n \"hide-details\": \"\",\n onFocus: _cache[1] || (_cache[1] = ($event: any) => (selectMenu.value = true)),\n \"onClick:append\": _cache[2] || (_cache[2] = ($event: any) => (inputRef.value?.focus()))\n }, {\n appendIcon: _withCtx(() => [\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_2, 2))\n ]),\n _: 1\n }, 8, [\"id\", \"modelValue\", \"disabled\", \"placeholder\"]))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n id: id.value,\n class: _normalizeClass(btnCssClass.value),\n disabled: props.disabled,\n type: \"button\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (selectMenu.value = !selectMenu.value))\n }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([_ctx.valueCssClass, \"ds-truncate\"])\n }, [\n (selectedItem.value?.text)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(selectedItem.value?.text), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_5, _toDisplayString(props.placeholder), 1))\n ], 2),\n _createTextVNode(\"   \"),\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_7, 2))\n ], 10, _hoisted_3)),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"selectMenuEl\",\n ref: selectMenuEl,\n class: _normalizeClass([_ctx.menuCssClass, \"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1\"]),\n \"data-cy\": _ctx.$attrs['data-cy'] ? `${_ctx.$attrs['data-cy']}Menu` : undefined,\n \"data-ut\": _ctx.$attrs['data-ut'] ? `${_ctx.$attrs['data-ut']}Menu` : undefined\n }, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"ul\", _hoisted_10, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.items, (item, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: `item${index}`,\n class: \"ds-cursor-pointer\",\n onClick: ($event: any) => (onClickItem(item))\n }, [\n _createElementVNode(\"a\", {\n class: _normalizeClass([\r\n item.cssClass +\r\n `${item.value === value.value ? ' ds-bg-gray-150' : ''}`\r\n , \"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150\"])\n }, _toDisplayString(item?.text), 3)\n ], 8, _hoisted_11))\n }), 128))\n ])\n ])\n ], 10, _hoisted_8), [\n [_vShow, selectMenu.value]\n ])\n ], 512),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_sfc_main","_defineComponent","__props","__expose","emit","props","selectEl","ref","inputRef","selectMenuEl","selectMenu","t","useI18n","validateRequired","val","inputText","selectedItem","id","computed","uuid","value","btnCssClass","result","validationResult","vRules","validate","useValidationField","watch","lockScrollBody","ensureMenuPosition","unlockScrollBody","resetMenuPosition","ensureSelectedItem","ensureInputText","_a","i","initPressEscapeEventListener","closeOnEscapePressed","event","closeSelectMenu","initClickOutsideEventListener","closeOnClickOutside","r","onClickItem","item","nextTick","ensureMenuWidth","parentEl","menuEl","ensureVisiblePosition","resetPosition","onChangeInputText","text","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_createBlock","BTextField","$event","_withCtx","_normalizeClass","_toDisplayString","_b","_createTextVNode","_withDirectives","_Fragment","_renderList","index","_vShow","_createCommentVNode","BErrorMessage","_unref"],"mappings":"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"}
@@ -1,81 +1,206 @@
1
- import { defineComponent as g, computed as o, openBlock as t, createElementBlock as y, createVNode as h, withDirectives as V, createElementVNode as q, normalizeClass as B, vModelText as C, createBlock as k, unref as w, createCommentVNode as _ } from "vue";
2
- import { useValidationField as x } from "./design-system3.mjs";
3
- import { useI18n as R } from "./design-system48.mjs";
4
- import M from "./design-system30.mjs";
5
- import E from "./design-system31.mjs";
6
- import D from "./design-system98.mjs";
7
- const I = ["id", "autocomplete", "disabled", "placeholder", "readonly", "rows"], j = /* @__PURE__ */ g({
8
- __name: "BTextarea",
1
+ import { defineComponent as H, ref as r, computed as k, watch as E, nextTick as L, onMounted as J, onBeforeUnmount as K, openBlock as o, createElementBlock as d, createElementVNode as n, createVNode as Q, createBlock as R, withCtx as X, normalizeClass as i, toDisplayString as M, createTextVNode as Y, withDirectives as Z, Fragment as ee, renderList as se, vShow as te, unref as le, createCommentVNode as oe } from "vue";
2
+ import { useValidationField as ae } from "./design-system3.mjs";
3
+ import { lockScrollBody as de, unlockScrollBody as P, ensureVisiblePosition as ne, resetPosition as ue } from "./design-system6.mjs";
4
+ import { useI18n as re } from "./design-system48.mjs";
5
+ import ie from "./design-system29.mjs";
6
+ import ce from "./design-system30.mjs";
7
+ import ve from "./design-system39.mjs";
8
+ import pe from "./design-system98.mjs";
9
+ const fe = /* @__PURE__ */ n("path", { d: "M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z" }, null, -1), me = [
10
+ fe
11
+ ], he = ["id", "disabled"], be = { key: 0 }, ge = {
12
+ key: 1,
13
+ class: "ds-text-black/[0.4]"
14
+ }, ke = /* @__PURE__ */ n("path", { d: "M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z" }, null, -1), we = [
15
+ ke
16
+ ], ye = ["id", "data-cy", "data-ut"], Ce = { class: "ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow" }, xe = { class: "ds-py-1 ds-text-sm ds-text-black/[0.85]" }, _e = ["onClick"], Se = /* @__PURE__ */ H({
17
+ __name: "BSelect",
9
18
  props: {
10
19
  inputId: { default: "" },
11
- inputCssClass: { default: "" },
12
20
  modelValue: {},
13
- validationRules: { default: void 0 },
14
21
  label: { default: "" },
15
- placeholder: { default: "" },
16
- autocomplete: { type: Boolean, default: !1 },
22
+ items: {},
17
23
  disabled: { type: Boolean, default: !1 },
18
- readonly: { type: Boolean, default: !1 },
19
- rows: { default: 3 },
24
+ placeholder: { default: "" },
25
+ valueCssClass: { default: "" },
26
+ menuCssClass: { default: "" },
27
+ validationRules: { default: void 0 },
20
28
  required: { type: Boolean, default: !1 },
21
29
  requiredErrorMessage: { default: "" },
22
- hideDetails: { type: Boolean, default: !1 }
30
+ hideDetails: { type: Boolean, default: !1 },
31
+ allowInput: { type: Boolean, default: !1 }
23
32
  },
24
- emits: ["update:modelValue"],
25
- setup(u, { expose: i, emit: n }) {
26
- const l = u, { t: f } = R(), c = {
27
- validateRule: (e) => typeof e == "number" ? !!e : !!(e && (e != null && e.trim())),
28
- errorMessage: () => l.requiredErrorMessage || f("ds.global.field_required")
29
- }, d = o(() => l.inputId || `id-${D()}`), a = o({
33
+ emits: ["change", "open", "close", "change:input", "update:modelValue"],
34
+ setup(S, { expose: T, emit: c }) {
35
+ const s = S, v = r(null), w = r(null), p = r(null), a = r(!1), { t: z } = re(), D = {
36
+ validateRule: (e) => !!e,
37
+ errorMessage: () => s.requiredErrorMessage || z("ds.global.field_required")
38
+ }, y = r(""), f = r(), m = k(() => s.inputId || `id-${pe()}`), u = k({
30
39
  get() {
31
- return l.modelValue;
40
+ return s.modelValue;
32
41
  },
33
42
  set(e) {
34
- n("update:modelValue", e);
43
+ c("update:modelValue", e);
35
44
  }
36
- }), p = o(() => [
37
- {
38
- "ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/40": l.disabled,
39
- "ds-text-black/[0.85]": !l.disabled,
40
- "ds-border-error focus:ds-ring-1 focus:ds-ring-error": !r.value.valid,
41
- "ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus": r.value.valid
42
- },
43
- l.inputCssClass
44
- ]), m = o(() => {
45
+ }), F = k(() => {
46
+ let e = "ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between ";
47
+ return e += s.disabled ? "ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] " : "ds-bg-white ds-text-black/[0.85] ", e += B.value.valid ? "ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus " : "ds-border-error focus:ds-ring-1 focus:ds-ring-error ", e;
48
+ }), N = k(() => {
45
49
  let e = [];
46
- return l.required && e.push(c), l.validationRules && (e = e.concat(l.validationRules)), e.length ? e : void 0;
47
- }), { validate: b, validationResult: r } = x(
48
- d.value,
49
- a,
50
- m.value
50
+ return s.required && e.push(D), s.validationRules && (e = e.concat(s.validationRules)), e.length ? e : void 0;
51
+ }), { validate: $, validationResult: B } = ae(
52
+ m.value,
53
+ u,
54
+ N.value
55
+ );
56
+ E(a, (e) => {
57
+ e ? (de(), A(), c("open")) : (P(), q(), c("close"));
58
+ }), E(u, () => {
59
+ C(), h();
60
+ }), E(
61
+ () => s.items,
62
+ () => {
63
+ var e;
64
+ u.value && !((e = f.value) != null && e.value) && (C(), h());
65
+ },
66
+ {
67
+ deep: !0
68
+ }
51
69
  );
52
- return i({ validate: b }), (e, s) => (t(), y("div", null, [
53
- h(E, {
54
- id: d.value,
55
- label: e.label,
56
- required: e.required
57
- }, null, 8, ["id", "label", "required"]),
58
- V(q("textarea", {
59
- id: d.value,
60
- "onUpdate:modelValue": s[0] || (s[0] = (v) => a.value = v),
61
- autocomplete: l.autocomplete ? "on" : "off",
62
- class: B([p.value, "ds-block ds-w-full ds-rounded-lg ds-border ds-px-3 ds-py-1 ds-text-sm ds-drop-shadow-light"]),
63
- disabled: l.disabled,
64
- placeholder: l.placeholder,
65
- readonly: l.readonly,
66
- rows: l.rows
67
- }, null, 10, I), [
68
- [C, a.value]
69
- ]),
70
- e.hideDetails ? _("", !0) : (t(), k(M, {
71
- key: 0,
72
- "error-message": w(r).errorMessage(),
73
- class: "ds-mt-1"
74
- }, null, 8, ["error-message"]))
75
- ]));
70
+ const C = () => {
71
+ f.value = s.items.find((e) => e.value === u.value);
72
+ }, h = () => {
73
+ var e;
74
+ s.allowInput && (y.value = ((e = f.value) == null ? void 0 : e.text) || "");
75
+ }, O = () => {
76
+ document.addEventListener("keydown", V);
77
+ }, V = (e) => {
78
+ e.key === "Escape" && x();
79
+ }, U = () => {
80
+ document.addEventListener("click", I);
81
+ }, I = (e) => {
82
+ [v.value, p.value].some((b) => e.composedPath().includes(b)) || x();
83
+ }, W = (e) => {
84
+ u.value = e.value, x(), c("change", e.value), L(() => {
85
+ $();
86
+ });
87
+ }, j = (e, t) => {
88
+ t.style.width = `${e.offsetWidth}px`;
89
+ }, A = () => {
90
+ L(() => {
91
+ ne(v.value, p.value), j(v.value, p.value);
92
+ });
93
+ }, q = () => {
94
+ ue(v.value, p.value);
95
+ }, G = (e) => {
96
+ c("change:input", e);
97
+ }, x = () => {
98
+ var e;
99
+ a.value = !1, (e = w.value) == null || e.blur(), h();
100
+ };
101
+ return (() => {
102
+ C(), h();
103
+ })(), J(() => {
104
+ O(), U();
105
+ }), K(() => {
106
+ document.removeEventListener("keydown", V), document.removeEventListener("click", I), P(), q();
107
+ }), T({ validate: $, selectMenu: a }), (e, t) => {
108
+ var _, b;
109
+ return o(), d("div", null, [
110
+ n("div", {
111
+ ref_key: "selectEl",
112
+ ref: v
113
+ }, [
114
+ Q(ce, {
115
+ id: m.value,
116
+ label: e.label,
117
+ required: e.required
118
+ }, null, 8, ["id", "label", "required"]),
119
+ s.allowInput ? (o(), R(ve, {
120
+ key: 0,
121
+ id: m.value,
122
+ ref_key: "inputRef",
123
+ ref: w,
124
+ modelValue: y.value,
125
+ "onUpdate:modelValue": [
126
+ t[0] || (t[0] = (l) => y.value = l),
127
+ G
128
+ ],
129
+ disabled: s.disabled,
130
+ placeholder: s.placeholder,
131
+ "hide-details": "",
132
+ onFocus: t[1] || (t[1] = (l) => a.value = !0),
133
+ "onClick:append": t[2] || (t[2] = (l) => {
134
+ var g;
135
+ return (g = w.value) == null ? void 0 : g.focus();
136
+ })
137
+ }, {
138
+ appendIcon: X(() => [
139
+ (o(), d("svg", {
140
+ class: i([[a.value ? "ds-rotate-180" : ""], "ds-h-4 ds-w-4 ds-transition-transform"]),
141
+ viewBox: "0 0 320 512",
142
+ xmlns: "http://www.w3.org/2000/svg"
143
+ }, me, 2))
144
+ ]),
145
+ _: 1
146
+ }, 8, ["id", "modelValue", "disabled", "placeholder"])) : (o(), d("button", {
147
+ key: 1,
148
+ id: m.value,
149
+ class: i(F.value),
150
+ disabled: s.disabled,
151
+ type: "button",
152
+ onClick: t[3] || (t[3] = (l) => a.value = !a.value)
153
+ }, [
154
+ n("span", {
155
+ class: i([e.valueCssClass, "ds-truncate"])
156
+ }, [
157
+ (_ = f.value) != null && _.text ? (o(), d("span", be, M((b = f.value) == null ? void 0 : b.text), 1)) : (o(), d("span", ge, M(s.placeholder), 1))
158
+ ], 2),
159
+ Y("   "),
160
+ (o(), d("svg", {
161
+ class: i([[a.value ? "ds-rotate-180" : ""], "ds-h-4 ds-w-4 ds-transition-transform"]),
162
+ viewBox: "0 0 320 512",
163
+ xmlns: "http://www.w3.org/2000/svg"
164
+ }, we, 2))
165
+ ], 10, he)),
166
+ Z(n("div", {
167
+ id: `${m.value}Menu`,
168
+ ref_key: "selectMenuEl",
169
+ ref: p,
170
+ class: i([e.menuCssClass, "ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1"]),
171
+ "data-cy": e.$attrs["data-cy"] ? `${e.$attrs["data-cy"]}Menu` : void 0,
172
+ "data-ut": e.$attrs["data-ut"] ? `${e.$attrs["data-ut"]}Menu` : void 0
173
+ }, [
174
+ n("div", Ce, [
175
+ n("ul", xe, [
176
+ (o(!0), d(ee, null, se(e.items, (l, g) => (o(), d("li", {
177
+ key: `item${g}`,
178
+ class: "ds-cursor-pointer",
179
+ onClick: (Me) => W(l)
180
+ }, [
181
+ n("a", {
182
+ class: i([
183
+ l.cssClass + `${l.value === u.value ? " ds-bg-gray-150" : ""}`,
184
+ "ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150"
185
+ ])
186
+ }, M(l == null ? void 0 : l.text), 3)
187
+ ], 8, _e))), 128))
188
+ ])
189
+ ])
190
+ ], 10, ye), [
191
+ [te, a.value]
192
+ ])
193
+ ], 512),
194
+ e.hideDetails ? oe("", !0) : (o(), R(ie, {
195
+ key: 0,
196
+ "error-message": le(B).errorMessage(),
197
+ class: "ds-mt-1"
198
+ }, null, 8, ["error-message"]))
199
+ ]);
200
+ };
76
201
  }
77
202
  });
78
203
  export {
79
- j as default
204
+ Se as default
80
205
  };
81
206
  //# sourceMappingURL=design-system22.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system22.mjs","sources":["../src/components/BTextarea.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, vModelText as _vModelText, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, withDirectives as _withDirectives, unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"id\", \"autocomplete\", \"disabled\", \"placeholder\", \"readonly\", \"rows\"]\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport { v4 as uuid } from 'uuid';\nimport { computed } from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\n\n/**\n * Props\n */\nexport interface BTextareaProps {\n inputId?: string;\n inputCssClass?: string;\n modelValue: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n label?: string;\n placeholder?: string;\n autocomplete?: boolean;\n disabled?: boolean;\n readonly?: boolean;\n /**\n * Number of rows.\n */\n rows?: number;\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BTextarea',\n props: {\n inputId: { default: '' },\n inputCssClass: { default: '' },\n modelValue: {},\n validationRules: { default: undefined },\n label: { default: '' },\n placeholder: { default: '' },\n autocomplete: { type: Boolean, default: false },\n disabled: { type: Boolean, default: false },\n readonly: { type: Boolean, default: false },\n rows: { default: 3 },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false }\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst { t } = useI18n();\nconst validateRequired: ValidationRule = {\n validateRule: (val: string | number) => {\n if (typeof val === 'number') {\n return !!val;\n }\n return !!(val && val?.trim());\n },\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue;\n },\n set(val) {\n emit('update:modelValue', val);\n },\n});\nconst inputCssClassValue = computed(() => [\n {\n 'ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/40': props.disabled,\n 'ds-text-black/[0.85]': !props.disabled,\n 'ds-border-error focus:ds-ring-1 focus:ds-ring-error':\n !validationResult.value.valid,\n 'ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus':\n validationResult.value.valid,\n },\n props.inputCssClass,\n]);\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n\n__expose({ validate });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n _withDirectives(_createElementVNode(\"textarea\", {\n id: id.value,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((value).value = $event)),\n autocomplete: props.autocomplete ? 'on' : 'off',\n class: _normalizeClass([inputCssClassValue.value, \"ds-block ds-w-full ds-rounded-lg ds-border ds-px-3 ds-py-1 ds-text-sm ds-drop-shadow-light\"]),\n disabled: props.disabled,\n placeholder: props.placeholder,\n readonly: props.readonly,\n rows: props.rows\n }, null, 10, _hoisted_1), [\n [_vModelText, value.value]\n ]),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_sfc_main","_defineComponent","__props","__expose","emit","props","t","useI18n","validateRequired","val","id","computed","uuid","value","inputCssClassValue","validationResult","vRules","result","validate","useValidationField","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_withDirectives","_createElementVNode","$event","_normalizeClass","_vModelText","_createCommentVNode","_createBlock","BErrorMessage","_unref"],"mappings":"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"}
1
+ {"version":3,"file":"design-system22.mjs","sources":["../src/components/BSelect.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, withCtx as _withCtx, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, vShow as _vShow, withDirectives as _withDirectives, unref as _unref } from \"vue\"\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_2 = [\n _hoisted_1\n]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 1,\n class: \"ds-text-black/[0.4]\"\n}\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_7 = [\n _hoisted_6\n]\nconst _hoisted_8 = [\"id\", \"data-cy\", \"data-ut\"]\nconst _hoisted_9 = { class: \"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow\" }\nconst _hoisted_10 = { class: \"ds-py-1 ds-text-sm ds-text-black/[0.85]\" }\nconst _hoisted_11 = [\"onClick\"]\n\nimport {\r\n useValidationField,\r\n type ValidationRule,\r\n} from '@/composables/Validation';\r\nimport {\r\n ensureVisiblePosition,\r\n lockScrollBody,\r\n resetPosition,\r\n unlockScrollBody,\r\n} from '@/helpers/ComponentHelper';\r\nimport type { DisplayItem } from '@/types';\r\nimport { v4 as uuid } from 'uuid';\r\nimport {\r\n computed,\r\n nextTick,\r\n onBeforeUnmount,\r\n onMounted,\r\n ref,\r\n watch,\r\n} from 'vue';\r\nimport { useI18n } from 'vue-i18n';\r\nimport BErrorMessage from './BErrorMessage.vue';\r\nimport BLabel from './BLabel.vue';\r\nimport BTextField from './BTextField.vue';\r\n\r\n//#region Props\r\nexport interface BSelectProps {\r\n inputId?: string;\r\n modelValue: string | number;\r\n label?: string;\r\n items: DisplayItem[];\r\n disabled?: boolean;\r\n placeholder?: string;\r\n valueCssClass?: string;\r\n menuCssClass?: string;\r\n /**\r\n * Array of custom validation rules.\r\n */\r\n validationRules?: ValidationRule[];\r\n /**\r\n * Validate if the field is left empty.\r\n */\r\n required?: boolean;\r\n requiredErrorMessage?: string;\r\n /**\r\n * Hide the validation error message.\r\n */\r\n hideDetails?: boolean;\r\n /**\r\n * Allow to type to search.\r\n */\r\n allowInput?: boolean;\r\n}\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BSelect',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n items: {},\n disabled: { type: Boolean, default: false },\n placeholder: { default: '' },\n valueCssClass: { default: '' },\n menuCssClass: { default: '' },\n validationRules: { default: undefined },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false },\n allowInput: { type: Boolean, default: false }\n },\n emits: [\"change\", \"open\", \"close\", \"change:input\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\r\n\r\n//#endregion\r\n\r\n//#region Events\r\n\r\n//#endregion\r\n\r\n//#region Data\r\nconst selectEl = ref<HTMLElement | null>(null);\r\nconst inputRef = ref<InstanceType<typeof BTextField> | null>(null);\r\nconst selectMenuEl = ref<HTMLElement | null>(null);\r\nconst selectMenu = ref(false);\r\nconst { t } = useI18n();\r\nconst validateRequired: ValidationRule = {\r\n validateRule: (val) => !!val,\r\n errorMessage: () =>\r\n props.requiredErrorMessage || t('ds.global.field_required'),\r\n};\r\nconst inputText = ref('');\r\nconst selectedItem = ref<DisplayItem>();\r\nconst id = computed(() => props.inputId || `id-${uuid()}`);\r\nconst value = computed({\r\n get() {\r\n return props.modelValue;\r\n },\r\n set(val) {\r\n emit('update:modelValue', val);\r\n },\r\n});\r\nconst btnCssClass = computed(() => {\r\n let result = `ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between `;\r\n result += props.disabled\r\n ? `ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] `\r\n : `ds-bg-white ds-text-black/[0.85] `;\r\n result += !validationResult.value.valid\r\n ? `ds-border-error focus:ds-ring-1 focus:ds-ring-error `\r\n : `ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus `;\r\n\r\n return result;\r\n});\r\nconst vRules = computed(() => {\r\n let result: ValidationRule[] = [];\r\n\r\n if (props.required) {\r\n result.push(validateRequired);\r\n }\r\n if (props.validationRules) {\r\n result = result.concat(props.validationRules);\r\n }\r\n\r\n return result.length ? result : undefined;\r\n});\r\n\r\nconst { validate, validationResult } = useValidationField(\r\n id.value,\r\n value,\r\n vRules.value,\r\n);\r\n//#endregion\r\n\r\n//#region Watchers\r\nwatch(selectMenu, (val) => {\r\n if (val) {\r\n lockScrollBody();\r\n ensureMenuPosition();\r\n emit('open');\r\n } else {\r\n unlockScrollBody();\r\n resetMenuPosition();\r\n emit('close');\r\n }\r\n});\r\nwatch(value, () => {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n});\r\nwatch(\r\n () => props.items,\r\n () => {\r\n if (value.value && !selectedItem.value?.value) {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n }\r\n },\r\n {\r\n deep: true,\r\n },\r\n);\r\n//#endregion\r\n\r\n//#region Methods\r\nconst ensureSelectedItem = () => {\r\n selectedItem.value = props.items.find((i) => i.value === value.value);\r\n};\r\nconst ensureInputText = () => {\r\n if (props.allowInput) {\r\n inputText.value = selectedItem.value?.text || '';\r\n }\r\n};\r\nconst initPressEscapeEventListener = () => {\r\n document.addEventListener('keydown', closeOnEscapePressed);\r\n};\r\nconst closeOnEscapePressed = (event: KeyboardEvent) => {\r\n if (event.key === 'Escape') {\r\n closeSelectMenu();\r\n }\r\n};\r\nconst initClickOutsideEventListener = () => {\r\n document.addEventListener('click', closeOnClickOutside);\r\n};\r\nconst closeOnClickOutside = (event: any) => {\r\n const refs = [selectEl.value, selectMenuEl.value];\r\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\r\n if (!withinBoundaries) {\r\n closeSelectMenu();\r\n }\r\n};\r\nconst onClickItem = (item: DisplayItem) => {\r\n value.value = item.value;\r\n closeSelectMenu();\r\n emit('change', item.value);\r\n nextTick(() => {\r\n validate();\r\n });\r\n};\r\nconst ensureMenuWidth = (parentEl: HTMLElement, menuEl: HTMLElement) => {\r\n menuEl.style.width = `${parentEl.offsetWidth}px`;\r\n};\r\nconst ensureMenuPosition = () => {\r\n nextTick(() => {\r\n ensureVisiblePosition(selectEl.value!, selectMenuEl.value!);\r\n ensureMenuWidth(selectEl.value!, selectMenuEl.value!);\r\n });\r\n};\r\nconst resetMenuPosition = () => {\r\n resetPosition(selectEl.value!, selectMenuEl.value!);\r\n};\r\nconst onChangeInputText = (text: string) => {\r\n emit('change:input', text);\r\n};\r\nconst closeSelectMenu = () => {\r\n selectMenu.value = false;\r\n inputRef.value?.blur();\r\n ensureInputText();\r\n};\r\nconst init = () => {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n};\r\ninit();\r\n//#endregion\r\n\r\n//#region Lifecycle Hooks\r\nonMounted(() => {\r\n initPressEscapeEventListener();\r\n initClickOutsideEventListener();\r\n});\r\nonBeforeUnmount(() => {\r\n document.removeEventListener('keydown', closeOnEscapePressed);\r\n document.removeEventListener('click', closeOnClickOutside);\r\n unlockScrollBody();\r\n // Make sure dropdown menu unmounted with itself\r\n resetMenuPosition();\r\n});\r\n//#endregion\r\n\r\n__expose({ validate, selectMenu });\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"div\", {\n ref_key: \"selectEl\",\n ref: selectEl\n }, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n (props.allowInput)\n ? (_openBlock(), _createBlock(BTextField, {\n key: 0,\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n modelValue: inputText.value,\n \"onUpdate:modelValue\": [\n _cache[0] || (_cache[0] = ($event: any) => ((inputText).value = $event)),\n onChangeInputText\n ],\n disabled: props.disabled,\n placeholder: props.placeholder,\n \"hide-details\": \"\",\n onFocus: _cache[1] || (_cache[1] = ($event: any) => (selectMenu.value = true)),\n \"onClick:append\": _cache[2] || (_cache[2] = ($event: any) => (inputRef.value?.focus()))\n }, {\n appendIcon: _withCtx(() => [\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_2, 2))\n ]),\n _: 1\n }, 8, [\"id\", \"modelValue\", \"disabled\", \"placeholder\"]))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n id: id.value,\n class: _normalizeClass(btnCssClass.value),\n disabled: props.disabled,\n type: \"button\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (selectMenu.value = !selectMenu.value))\n }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([_ctx.valueCssClass, \"ds-truncate\"])\n }, [\n (selectedItem.value?.text)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(selectedItem.value?.text), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_5, _toDisplayString(props.placeholder), 1))\n ], 2),\n _createTextVNode(\"   \"),\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_7, 2))\n ], 10, _hoisted_3)),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"selectMenuEl\",\n ref: selectMenuEl,\n class: _normalizeClass([_ctx.menuCssClass, \"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1\"]),\n \"data-cy\": _ctx.$attrs['data-cy'] ? `${_ctx.$attrs['data-cy']}Menu` : undefined,\n \"data-ut\": _ctx.$attrs['data-ut'] ? `${_ctx.$attrs['data-ut']}Menu` : undefined\n }, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"ul\", _hoisted_10, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.items, (item, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: `item${index}`,\n class: \"ds-cursor-pointer\",\n onClick: ($event: any) => (onClickItem(item))\n }, [\n _createElementVNode(\"a\", {\n class: _normalizeClass([\r\n item.cssClass +\r\n `${item.value === value.value ? ' ds-bg-gray-150' : ''}`\r\n , \"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150\"])\n }, _toDisplayString(item?.text), 3)\n ], 8, _hoisted_11))\n }), 128))\n ])\n ])\n ], 10, _hoisted_8), [\n [_vShow, selectMenu.value]\n ])\n ], 512),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_sfc_main","_defineComponent","__props","__expose","emit","props","selectEl","ref","inputRef","selectMenuEl","selectMenu","t","useI18n","validateRequired","val","inputText","selectedItem","id","computed","uuid","value","btnCssClass","result","validationResult","vRules","validate","useValidationField","watch","lockScrollBody","ensureMenuPosition","unlockScrollBody","resetMenuPosition","ensureSelectedItem","ensureInputText","_a","i","initPressEscapeEventListener","closeOnEscapePressed","event","closeSelectMenu","initClickOutsideEventListener","closeOnClickOutside","r","onClickItem","item","nextTick","ensureMenuWidth","parentEl","menuEl","ensureVisiblePosition","resetPosition","onChangeInputText","text","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_createBlock","BTextField","$event","_withCtx","_normalizeClass","_toDisplayString","_b","_createTextVNode","_withDirectives","_Fragment","_renderList","index","_vShow","_createCommentVNode","BErrorMessage","_unref"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),i=require("./design-system41.js"),u={class:"ds-fixed ds-right-4 ds-top-4 ds-z-[110]"},d=e.defineComponent({__name:"BToast",props:{modelValue:{}},emits:["update:modelValue"],setup(l,{emit:n}){const c=l,s=e.computed({get(){return c.modelValue},set(t){n("update:modelValue",t)}}),r=t=>{s.value.splice(t,1)};return(t,p)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",u,[e.createVNode(e.TransitionGroup,{"enter-active-class":"ds-transition-all ds-duration-300 ds-ease-in-out","enter-from-class":"ds-opacity-0","enter-to-class":"ds-opacity-1","leave-active-class":"ds-transition-all ds-duration-300 ds-ease-in-out","leave-from-class":"ds-opacity-1","leave-to-class":"ds-opacity-0"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(o,a)=>(e.openBlock(),e.createBlock(i,{key:`toastItem${a}`,icon:o.icon,text:o.text,type:o.type,class:"ds-my-2",onClose:m=>r(a)},null,8,["icon","text","type","onClose"]))),128))]),_:1})],512)),[[e.vShow,s.value.length>0]])}});module.exports=d;
1
+ "use strict";const l=require("vue"),b=require("./design-system3.js"),g=require("./design-system48.js"),_=require("./design-system29.js"),q=require("./design-system30.js"),y=require("./design-system98.js"),B=["id","autocomplete","disabled","placeholder","readonly","rows"],h=l.defineComponent({__name:"BTextarea",props:{inputId:{default:""},inputCssClass:{default:""},modelValue:{},validationRules:{default:void 0},label:{default:""},placeholder:{default:""},autocomplete:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},rows:{default:3},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""},hideDetails:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(a,{expose:u,emit:i}){const s=a,{t:n}=g.useI18n(),c={validateRule:e=>typeof e=="number"?!!e:!!(e&&(e!=null&&e.trim())),errorMessage:()=>s.requiredErrorMessage||n("ds.global.field_required")},r=l.computed(()=>s.inputId||`id-${y()}`),t=l.computed({get(){return s.modelValue},set(e){i("update:modelValue",e)}}),p=l.computed(()=>[{"ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/40":s.disabled,"ds-text-black/[0.85]":!s.disabled,"ds-border-error focus:ds-ring-1 focus:ds-ring-error":!d.value.valid,"ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus":d.value.valid},s.inputCssClass]),f=l.computed(()=>{let e=[];return s.required&&e.push(c),s.validationRules&&(e=e.concat(s.validationRules)),e.length?e:void 0}),{validate:m,validationResult:d}=b.useValidationField(r.value,t,f.value);return u({validate:m}),(e,o)=>(l.openBlock(),l.createElementBlock("div",null,[l.createVNode(q,{id:r.value,label:e.label,required:e.required},null,8,["id","label","required"]),l.withDirectives(l.createElementVNode("textarea",{id:r.value,"onUpdate:modelValue":o[0]||(o[0]=v=>t.value=v),autocomplete:s.autocomplete?"on":"off",class:l.normalizeClass([p.value,"ds-block ds-w-full ds-rounded-lg ds-border ds-px-3 ds-py-1 ds-text-sm ds-drop-shadow-light"]),disabled:s.disabled,placeholder:s.placeholder,readonly:s.readonly,rows:s.rows},null,10,B),[[l.vModelText,t.value]]),e.hideDetails?l.createCommentVNode("",!0):(l.openBlock(),l.createBlock(_,{key:0,"error-message":l.unref(d).errorMessage(),class:"ds-mt-1"},null,8,["error-message"]))]))}});module.exports=h;
2
2
  //# sourceMappingURL=design-system23.js.map