@7pmlabs/design-system 0.4.14 → 0.4.16

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 (832) hide show
  1. package/README.md +47 -44
  2. package/dist/design-system.js +1 -1
  3. package/dist/design-system.mjs +36 -34
  4. package/dist/design-system.mjs.map +1 -1
  5. package/dist/design-system100.js +1 -1
  6. package/dist/design-system100.js.map +1 -1
  7. package/dist/design-system100.mjs +6 -2172
  8. package/dist/design-system100.mjs.map +1 -1
  9. package/dist/design-system101.js +1 -1
  10. package/dist/design-system101.js.map +1 -1
  11. package/dist/design-system101.mjs +4 -1103
  12. package/dist/design-system101.mjs.map +1 -1
  13. package/dist/design-system102.js +1 -1
  14. package/dist/design-system102.js.map +1 -1
  15. package/dist/design-system102.mjs +2 -25
  16. package/dist/design-system102.mjs.map +1 -1
  17. package/dist/design-system103.js +1 -1
  18. package/dist/design-system103.js.map +1 -1
  19. package/dist/design-system103.mjs +16 -66
  20. package/dist/design-system103.mjs.map +1 -1
  21. package/dist/design-system104.js +1 -1
  22. package/dist/design-system104.js.map +1 -1
  23. package/dist/design-system104.mjs +62 -63
  24. package/dist/design-system104.mjs.map +1 -1
  25. package/dist/design-system105.js +1 -1
  26. package/dist/design-system105.js.map +1 -1
  27. package/dist/design-system105.mjs +1103 -6
  28. package/dist/design-system105.mjs.map +1 -1
  29. package/dist/design-system106.js +1 -1
  30. package/dist/design-system106.js.map +1 -1
  31. package/dist/design-system106.mjs +24 -17
  32. package/dist/design-system106.mjs.map +1 -1
  33. package/dist/design-system107.js +1 -1
  34. package/dist/design-system107.js.map +1 -1
  35. package/dist/design-system107.mjs +68 -6
  36. package/dist/design-system107.mjs.map +1 -1
  37. package/dist/design-system108.js +1 -1
  38. package/dist/design-system108.js.map +1 -1
  39. package/dist/design-system108.mjs +5 -3
  40. package/dist/design-system108.mjs.map +1 -1
  41. package/dist/design-system109.js +1 -1
  42. package/dist/design-system109.js.map +1 -1
  43. package/dist/design-system109.mjs +2172 -2
  44. package/dist/design-system109.mjs.map +1 -1
  45. package/dist/design-system11.js.map +1 -1
  46. package/dist/design-system11.mjs.map +1 -1
  47. package/dist/design-system110.js +1 -1
  48. package/dist/design-system110.mjs +18 -2
  49. package/dist/design-system110.mjs.map +1 -1
  50. package/dist/design-system111.js +1 -1
  51. package/dist/design-system111.mjs +2 -2
  52. package/dist/design-system112.js +1 -1
  53. package/dist/design-system112.js.map +1 -1
  54. package/dist/design-system112.mjs +2 -4
  55. package/dist/design-system112.mjs.map +1 -1
  56. package/dist/design-system113.js +1 -1
  57. package/dist/design-system113.js.map +1 -1
  58. package/dist/design-system113.mjs +4 -8
  59. package/dist/design-system113.mjs.map +1 -1
  60. package/dist/design-system114.js +1 -1
  61. package/dist/design-system114.js.map +1 -1
  62. package/dist/design-system114.mjs +7 -6
  63. package/dist/design-system114.mjs.map +1 -1
  64. package/dist/design-system115.js +1 -1
  65. package/dist/design-system115.js.map +1 -1
  66. package/dist/design-system115.mjs +7 -2
  67. package/dist/design-system115.mjs.map +1 -1
  68. package/dist/design-system116.js +1 -1
  69. package/dist/design-system116.js.map +1 -1
  70. package/dist/design-system116.mjs +63 -2
  71. package/dist/design-system116.mjs.map +1 -1
  72. package/dist/design-system117.js +1 -1
  73. package/dist/design-system117.js.map +1 -1
  74. package/dist/design-system117.mjs +3 -62
  75. package/dist/design-system117.mjs.map +1 -1
  76. package/dist/design-system118.js +1 -1
  77. package/dist/design-system118.js.map +1 -1
  78. package/dist/design-system118.mjs +9 -4
  79. package/dist/design-system118.mjs.map +1 -1
  80. package/dist/design-system119.js +1 -1
  81. package/dist/design-system119.js.map +1 -1
  82. package/dist/design-system119.mjs +5 -7
  83. package/dist/design-system119.mjs.map +1 -1
  84. package/dist/design-system12.js +1 -1
  85. package/dist/design-system12.js.map +1 -1
  86. package/dist/design-system12.mjs +8 -8
  87. package/dist/design-system12.mjs.map +1 -1
  88. package/dist/design-system120.js +1 -1
  89. package/dist/design-system120.js.map +1 -1
  90. package/dist/design-system120.mjs +3 -6
  91. package/dist/design-system120.mjs.map +1 -1
  92. package/dist/design-system121.js +1 -1
  93. package/dist/design-system121.js.map +1 -1
  94. package/dist/design-system121.mjs +3 -4
  95. package/dist/design-system121.mjs.map +1 -1
  96. package/dist/design-system122.js +1 -1
  97. package/dist/design-system122.js.map +1 -1
  98. package/dist/design-system122.mjs +6 -3
  99. package/dist/design-system122.mjs.map +1 -1
  100. package/dist/design-system123.js +1 -1
  101. package/dist/design-system123.js.map +1 -1
  102. package/dist/design-system123.mjs +9 -5
  103. package/dist/design-system123.mjs.map +1 -1
  104. package/dist/design-system124.js +1 -1
  105. package/dist/design-system124.js.map +1 -1
  106. package/dist/design-system124.mjs +4 -9
  107. package/dist/design-system124.mjs.map +1 -1
  108. package/dist/design-system125.js +1 -1
  109. package/dist/design-system125.js.map +1 -1
  110. package/dist/design-system125.mjs +5 -5
  111. package/dist/design-system125.mjs.map +1 -1
  112. package/dist/design-system126.js +1 -1
  113. package/dist/design-system126.js.map +1 -1
  114. package/dist/design-system126.mjs +4 -5
  115. package/dist/design-system126.mjs.map +1 -1
  116. package/dist/design-system127.js +1 -1
  117. package/dist/design-system127.js.map +1 -1
  118. package/dist/design-system127.mjs +4 -4
  119. package/dist/design-system127.mjs.map +1 -1
  120. package/dist/design-system128.js +1 -1
  121. package/dist/design-system128.js.map +1 -1
  122. package/dist/design-system128.mjs +11 -3
  123. package/dist/design-system128.mjs.map +1 -1
  124. package/dist/design-system129.js +1 -1
  125. package/dist/design-system129.js.map +1 -1
  126. package/dist/design-system129.mjs +27 -12
  127. package/dist/design-system129.mjs.map +1 -1
  128. package/dist/design-system13.js +2 -2
  129. package/dist/design-system13.js.map +1 -1
  130. package/dist/design-system13.mjs +52 -52
  131. package/dist/design-system13.mjs.map +1 -1
  132. package/dist/design-system130.js +1 -1
  133. package/dist/design-system130.js.map +1 -1
  134. package/dist/design-system130.mjs +6 -27
  135. package/dist/design-system130.mjs.map +1 -1
  136. package/dist/design-system131.js +1 -1
  137. package/dist/design-system131.js.map +1 -1
  138. package/dist/design-system131.mjs +6 -6
  139. package/dist/design-system131.mjs.map +1 -1
  140. package/dist/design-system132.js +1 -1
  141. package/dist/design-system132.js.map +1 -1
  142. package/dist/design-system132.mjs +8 -6
  143. package/dist/design-system132.mjs.map +1 -1
  144. package/dist/design-system133.js +1 -1
  145. package/dist/design-system133.js.map +1 -1
  146. package/dist/design-system133.mjs +4 -7
  147. package/dist/design-system133.mjs.map +1 -1
  148. package/dist/design-system134.js +1 -1
  149. package/dist/design-system134.js.map +1 -1
  150. package/dist/design-system134.mjs +6 -5
  151. package/dist/design-system134.mjs.map +1 -1
  152. package/dist/design-system135.js +1 -1
  153. package/dist/design-system135.js.map +1 -1
  154. package/dist/design-system135.mjs +7 -6
  155. package/dist/design-system135.mjs.map +1 -1
  156. package/dist/design-system136.js +1 -1
  157. package/dist/design-system136.js.map +1 -1
  158. package/dist/design-system136.mjs +5 -6
  159. package/dist/design-system136.mjs.map +1 -1
  160. package/dist/design-system137.js +1 -1
  161. package/dist/design-system137.js.map +1 -1
  162. package/dist/design-system137.mjs +10 -6
  163. package/dist/design-system137.mjs.map +1 -1
  164. package/dist/design-system138.js +1 -1
  165. package/dist/design-system138.js.map +1 -1
  166. package/dist/design-system138.mjs +6 -10
  167. package/dist/design-system138.mjs.map +1 -1
  168. package/dist/design-system139.js +1 -1
  169. package/dist/design-system139.js.map +1 -1
  170. package/dist/design-system139.mjs +7 -6
  171. package/dist/design-system139.mjs.map +1 -1
  172. package/dist/design-system140.js +1 -1
  173. package/dist/design-system140.js.map +1 -1
  174. package/dist/design-system140.mjs +9 -6
  175. package/dist/design-system140.mjs.map +1 -1
  176. package/dist/design-system141.js +1 -1
  177. package/dist/design-system141.js.map +1 -1
  178. package/dist/design-system141.mjs +6 -9
  179. package/dist/design-system141.mjs.map +1 -1
  180. package/dist/design-system142.js +1 -1
  181. package/dist/design-system142.js.map +1 -1
  182. package/dist/design-system142.mjs +17 -6
  183. package/dist/design-system142.mjs.map +1 -1
  184. package/dist/design-system143.js +1 -1
  185. package/dist/design-system143.js.map +1 -1
  186. package/dist/design-system143.mjs +6 -17
  187. package/dist/design-system143.mjs.map +1 -1
  188. package/dist/design-system144.js +1 -1
  189. package/dist/design-system144.js.map +1 -1
  190. package/dist/design-system144.mjs +12 -6
  191. package/dist/design-system144.mjs.map +1 -1
  192. package/dist/design-system145.js +1 -1
  193. package/dist/design-system145.js.map +1 -1
  194. package/dist/design-system145.mjs +3 -12
  195. package/dist/design-system145.mjs.map +1 -1
  196. package/dist/design-system146.js +1 -1
  197. package/dist/design-system146.js.map +1 -1
  198. package/dist/design-system146.mjs +2 -4
  199. package/dist/design-system146.mjs.map +1 -1
  200. package/dist/design-system147.js +1 -1
  201. package/dist/design-system147.js.map +1 -1
  202. package/dist/design-system147.mjs +2 -8
  203. package/dist/design-system147.mjs.map +1 -1
  204. package/dist/design-system148.js +1 -1
  205. package/dist/design-system148.js.map +1 -1
  206. package/dist/design-system148.mjs +7 -9
  207. package/dist/design-system148.mjs.map +1 -1
  208. package/dist/design-system149.js +1 -1
  209. package/dist/design-system149.js.map +1 -1
  210. package/dist/design-system149.mjs +9 -11
  211. package/dist/design-system149.mjs.map +1 -1
  212. package/dist/design-system15.js +2 -2
  213. package/dist/design-system15.js.map +1 -1
  214. package/dist/design-system15.mjs +50 -50
  215. package/dist/design-system15.mjs.map +1 -1
  216. package/dist/design-system150.js +1 -1
  217. package/dist/design-system150.js.map +1 -1
  218. package/dist/design-system150.mjs +11 -5
  219. package/dist/design-system150.mjs.map +1 -1
  220. package/dist/design-system151.js +1 -1
  221. package/dist/design-system151.js.map +1 -1
  222. package/dist/design-system151.mjs +6 -10
  223. package/dist/design-system151.mjs.map +1 -1
  224. package/dist/design-system152.js +1 -1
  225. package/dist/design-system152.js.map +1 -1
  226. package/dist/design-system152.mjs +9 -15
  227. package/dist/design-system152.mjs.map +1 -1
  228. package/dist/design-system153.js +1 -1
  229. package/dist/design-system153.js.map +1 -1
  230. package/dist/design-system153.mjs +15 -5
  231. package/dist/design-system153.mjs.map +1 -1
  232. package/dist/design-system154.js +1 -1
  233. package/dist/design-system154.js.map +1 -1
  234. package/dist/design-system154.mjs +5 -5
  235. package/dist/design-system154.mjs.map +1 -1
  236. package/dist/design-system155.js +1 -1
  237. package/dist/design-system155.js.map +1 -1
  238. package/dist/design-system155.mjs +5 -8
  239. package/dist/design-system155.mjs.map +1 -1
  240. package/dist/design-system156.js +1 -1
  241. package/dist/design-system156.js.map +1 -1
  242. package/dist/design-system156.mjs +8 -6
  243. package/dist/design-system156.mjs.map +1 -1
  244. package/dist/design-system157.js +1 -1
  245. package/dist/design-system157.js.map +1 -1
  246. package/dist/design-system157.mjs +6 -5
  247. package/dist/design-system157.mjs.map +1 -1
  248. package/dist/design-system158.js +1 -1
  249. package/dist/design-system158.js.map +1 -1
  250. package/dist/design-system158.mjs +4 -4
  251. package/dist/design-system158.mjs.map +1 -1
  252. package/dist/design-system159.js +1 -1
  253. package/dist/design-system159.js.map +1 -1
  254. package/dist/design-system159.mjs +5 -6
  255. package/dist/design-system159.mjs.map +1 -1
  256. package/dist/design-system16.js +1 -1
  257. package/dist/design-system16.js.map +1 -1
  258. package/dist/design-system16.mjs +24 -24
  259. package/dist/design-system16.mjs.map +1 -1
  260. package/dist/design-system160.js +1 -1
  261. package/dist/design-system160.js.map +1 -1
  262. package/dist/design-system160.mjs +5 -5
  263. package/dist/design-system160.mjs.map +1 -1
  264. package/dist/design-system161.js +1 -1
  265. package/dist/design-system161.js.map +1 -1
  266. package/dist/design-system161.mjs +6 -5
  267. package/dist/design-system161.mjs.map +1 -1
  268. package/dist/design-system162.js +1 -1
  269. package/dist/design-system162.js.map +1 -1
  270. package/dist/design-system162.mjs +5 -39
  271. package/dist/design-system162.mjs.map +1 -1
  272. package/dist/design-system163.js +1 -1
  273. package/dist/design-system163.js.map +1 -1
  274. package/dist/design-system163.mjs +39 -6
  275. package/dist/design-system163.mjs.map +1 -1
  276. package/dist/design-system164.js +1 -1
  277. package/dist/design-system164.js.map +1 -1
  278. package/dist/design-system164.mjs +6 -5
  279. package/dist/design-system164.mjs.map +1 -1
  280. package/dist/design-system165.js +1 -1
  281. package/dist/design-system165.js.map +1 -1
  282. package/dist/design-system165.mjs +6 -16
  283. package/dist/design-system165.mjs.map +1 -1
  284. package/dist/design-system166.js +1 -1
  285. package/dist/design-system166.js.map +1 -1
  286. package/dist/design-system166.mjs +15 -7
  287. package/dist/design-system166.mjs.map +1 -1
  288. package/dist/design-system167.js +1 -1
  289. package/dist/design-system167.js.map +1 -1
  290. package/dist/design-system167.mjs +8 -4
  291. package/dist/design-system167.mjs.map +1 -1
  292. package/dist/design-system168.js +1 -1
  293. package/dist/design-system168.js.map +1 -1
  294. package/dist/design-system168.mjs +3 -13
  295. package/dist/design-system168.mjs.map +1 -1
  296. package/dist/design-system169.js +1 -1
  297. package/dist/design-system169.js.map +1 -1
  298. package/dist/design-system169.mjs +4 -5
  299. package/dist/design-system169.mjs.map +1 -1
  300. package/dist/design-system17.js.map +1 -1
  301. package/dist/design-system17.mjs.map +1 -1
  302. package/dist/design-system170.js +1 -1
  303. package/dist/design-system170.js.map +1 -1
  304. package/dist/design-system170.mjs +13 -3
  305. package/dist/design-system170.mjs.map +1 -1
  306. package/dist/design-system171.js +1 -1
  307. package/dist/design-system171.js.map +1 -1
  308. package/dist/design-system171.mjs +5 -4
  309. package/dist/design-system171.mjs.map +1 -1
  310. package/dist/design-system172.js +1 -1
  311. package/dist/design-system172.js.map +1 -1
  312. package/dist/design-system172.mjs +4 -5
  313. package/dist/design-system172.mjs.map +1 -1
  314. package/dist/design-system173.js +1 -1
  315. package/dist/design-system173.js.map +1 -1
  316. package/dist/design-system173.mjs +5 -5
  317. package/dist/design-system173.mjs.map +1 -1
  318. package/dist/design-system174.js +1 -1
  319. package/dist/design-system174.js.map +1 -1
  320. package/dist/design-system174.mjs +5 -5
  321. package/dist/design-system174.mjs.map +1 -1
  322. package/dist/design-system175.js +1 -1
  323. package/dist/design-system175.js.map +1 -1
  324. package/dist/design-system175.mjs +5 -5
  325. package/dist/design-system175.mjs.map +1 -1
  326. package/dist/design-system176.js +1 -1
  327. package/dist/design-system176.js.map +1 -1
  328. package/dist/design-system176.mjs +5 -5
  329. package/dist/design-system176.mjs.map +1 -1
  330. package/dist/design-system177.js +1 -1
  331. package/dist/design-system177.js.map +1 -1
  332. package/dist/design-system177.mjs +5 -15
  333. package/dist/design-system177.mjs.map +1 -1
  334. package/dist/design-system178.js +1 -1
  335. package/dist/design-system178.js.map +1 -1
  336. package/dist/design-system178.mjs +14 -13
  337. package/dist/design-system178.mjs.map +1 -1
  338. package/dist/design-system179.js +1 -1
  339. package/dist/design-system179.js.map +1 -1
  340. package/dist/design-system179.mjs +13 -8
  341. package/dist/design-system179.mjs.map +1 -1
  342. package/dist/design-system18.js +1 -1
  343. package/dist/design-system18.js.map +1 -1
  344. package/dist/design-system18.mjs +20 -20
  345. package/dist/design-system18.mjs.map +1 -1
  346. package/dist/design-system180.js +1 -1
  347. package/dist/design-system180.js.map +1 -1
  348. package/dist/design-system180.mjs +9 -4
  349. package/dist/design-system180.mjs.map +1 -1
  350. package/dist/design-system181.js +1 -1
  351. package/dist/design-system181.js.map +1 -1
  352. package/dist/design-system181.mjs +4 -6
  353. package/dist/design-system181.mjs.map +1 -1
  354. package/dist/design-system182.js +1 -1
  355. package/dist/design-system182.js.map +1 -1
  356. package/dist/design-system182.mjs +5 -5
  357. package/dist/design-system182.mjs.map +1 -1
  358. package/dist/design-system183.js +1 -1
  359. package/dist/design-system183.js.map +1 -1
  360. package/dist/design-system183.mjs +5 -5
  361. package/dist/design-system183.mjs.map +1 -1
  362. package/dist/design-system184.js +1 -1
  363. package/dist/design-system184.js.map +1 -1
  364. package/dist/design-system184.mjs +5 -7
  365. package/dist/design-system184.mjs.map +1 -1
  366. package/dist/design-system185.js +1 -1
  367. package/dist/design-system185.js.map +1 -1
  368. package/dist/design-system185.mjs +7 -17
  369. package/dist/design-system185.mjs.map +1 -1
  370. package/dist/design-system186.js +1 -1
  371. package/dist/design-system186.js.map +1 -1
  372. package/dist/design-system186.mjs +17 -10
  373. package/dist/design-system186.mjs.map +1 -1
  374. package/dist/design-system187.js +1 -1
  375. package/dist/design-system187.js.map +1 -1
  376. package/dist/design-system187.mjs +9 -4
  377. package/dist/design-system187.mjs.map +1 -1
  378. package/dist/design-system188.js +1 -1
  379. package/dist/design-system188.js.map +1 -1
  380. package/dist/design-system188.mjs +5 -4
  381. package/dist/design-system188.mjs.map +1 -1
  382. package/dist/design-system189.js +1 -1
  383. package/dist/design-system189.js.map +1 -1
  384. package/dist/design-system189.mjs +4 -4
  385. package/dist/design-system189.mjs.map +1 -1
  386. package/dist/design-system19.js +1 -1
  387. package/dist/design-system19.js.map +1 -1
  388. package/dist/design-system19.mjs +72 -72
  389. package/dist/design-system19.mjs.map +1 -1
  390. package/dist/design-system190.js +1 -1
  391. package/dist/design-system190.js.map +1 -1
  392. package/dist/design-system190.mjs +4 -5
  393. package/dist/design-system190.mjs.map +1 -1
  394. package/dist/design-system191.js +1 -1
  395. package/dist/design-system191.js.map +1 -1
  396. package/dist/design-system191.mjs +5 -6
  397. package/dist/design-system191.mjs.map +1 -1
  398. package/dist/design-system192.js +1 -1
  399. package/dist/design-system192.js.map +1 -1
  400. package/dist/design-system192.mjs +7 -11
  401. package/dist/design-system192.mjs.map +1 -1
  402. package/dist/design-system193.js +1 -1
  403. package/dist/design-system193.js.map +1 -1
  404. package/dist/design-system193.mjs +10 -6
  405. package/dist/design-system193.mjs.map +1 -1
  406. package/dist/design-system194.js +1 -1
  407. package/dist/design-system194.js.map +1 -1
  408. package/dist/design-system194.mjs +6 -17
  409. package/dist/design-system194.mjs.map +1 -1
  410. package/dist/design-system195.js +1 -1
  411. package/dist/design-system195.js.map +1 -1
  412. package/dist/design-system195.mjs +17 -4
  413. package/dist/design-system195.mjs.map +1 -1
  414. package/dist/design-system196.js +1 -1
  415. package/dist/design-system196.js.map +1 -1
  416. package/dist/design-system196.mjs +4 -4
  417. package/dist/design-system196.mjs.map +1 -1
  418. package/dist/design-system197.js +1 -1
  419. package/dist/design-system197.js.map +1 -1
  420. package/dist/design-system197.mjs +4 -3
  421. package/dist/design-system197.mjs.map +1 -1
  422. package/dist/design-system198.js +1 -1
  423. package/dist/design-system198.js.map +1 -1
  424. package/dist/design-system198.mjs +3 -3
  425. package/dist/design-system198.mjs.map +1 -1
  426. package/dist/design-system199.js +1 -1
  427. package/dist/design-system199.js.map +1 -1
  428. package/dist/design-system199.mjs +3 -14
  429. package/dist/design-system199.mjs.map +1 -1
  430. package/dist/design-system2.js +1 -1
  431. package/dist/design-system2.mjs +2 -2
  432. package/dist/design-system20.js +1 -1
  433. package/dist/design-system20.js.map +1 -1
  434. package/dist/design-system20.mjs +57 -57
  435. package/dist/design-system20.mjs.map +1 -1
  436. package/dist/design-system200.js +1 -1
  437. package/dist/design-system200.js.map +1 -1
  438. package/dist/design-system200.mjs +15 -9
  439. package/dist/design-system200.mjs.map +1 -1
  440. package/dist/design-system201.js +1 -1
  441. package/dist/design-system201.js.map +1 -1
  442. package/dist/design-system201.mjs +9 -6
  443. package/dist/design-system201.mjs.map +1 -1
  444. package/dist/design-system202.js +1 -1
  445. package/dist/design-system202.js.map +1 -1
  446. package/dist/design-system202.mjs +5 -5
  447. package/dist/design-system202.mjs.map +1 -1
  448. package/dist/design-system203.js +1 -1
  449. package/dist/design-system203.js.map +1 -1
  450. package/dist/design-system203.mjs +5 -5
  451. package/dist/design-system203.mjs.map +1 -1
  452. package/dist/design-system204.js +1 -1
  453. package/dist/design-system204.js.map +1 -1
  454. package/dist/design-system204.mjs +5 -5
  455. package/dist/design-system204.mjs.map +1 -1
  456. package/dist/design-system205.js +1 -1
  457. package/dist/design-system205.js.map +1 -1
  458. package/dist/design-system205.mjs +5 -5
  459. package/dist/design-system205.mjs.map +1 -1
  460. package/dist/design-system206.js +1 -1
  461. package/dist/design-system206.js.map +1 -1
  462. package/dist/design-system206.mjs +6 -4
  463. package/dist/design-system206.mjs.map +1 -1
  464. package/dist/design-system207.js +1 -1
  465. package/dist/design-system207.js.map +1 -1
  466. package/dist/design-system207.mjs +3 -17
  467. package/dist/design-system207.mjs.map +1 -1
  468. package/dist/design-system208.js +1 -1
  469. package/dist/design-system208.js.map +1 -1
  470. package/dist/design-system208.mjs +17 -5
  471. package/dist/design-system208.mjs.map +1 -1
  472. package/dist/design-system209.js +1 -1
  473. package/dist/design-system209.js.map +1 -1
  474. package/dist/design-system209.mjs +5 -3
  475. package/dist/design-system209.mjs.map +1 -1
  476. package/dist/design-system21.js +2 -2
  477. package/dist/design-system21.js.map +1 -1
  478. package/dist/design-system21.mjs +32 -32
  479. package/dist/design-system21.mjs.map +1 -1
  480. package/dist/design-system210.js +1 -1
  481. package/dist/design-system210.js.map +1 -1
  482. package/dist/design-system210.mjs +3 -3
  483. package/dist/design-system210.mjs.map +1 -1
  484. package/dist/design-system211.js +1 -1
  485. package/dist/design-system211.js.map +1 -1
  486. package/dist/design-system211.mjs +3 -9
  487. package/dist/design-system211.mjs.map +1 -1
  488. package/dist/design-system212.js +1 -1
  489. package/dist/design-system212.js.map +1 -1
  490. package/dist/design-system212.mjs +9 -5
  491. package/dist/design-system212.mjs.map +1 -1
  492. package/dist/design-system213.js +1 -1
  493. package/dist/design-system213.js.map +1 -1
  494. package/dist/design-system213.mjs +5 -4
  495. package/dist/design-system213.mjs.map +1 -1
  496. package/dist/design-system214.js +1 -1
  497. package/dist/design-system214.js.map +1 -1
  498. package/dist/design-system214.mjs +4 -5
  499. package/dist/design-system214.mjs.map +1 -1
  500. package/dist/design-system215.js +1 -1
  501. package/dist/design-system215.js.map +1 -1
  502. package/dist/design-system215.mjs +6 -4
  503. package/dist/design-system215.mjs.map +1 -1
  504. package/dist/design-system216.js +1 -1
  505. package/dist/design-system216.js.map +1 -1
  506. package/dist/design-system216.mjs +4 -5
  507. package/dist/design-system216.mjs.map +1 -1
  508. package/dist/design-system217.js +1 -1
  509. package/dist/design-system217.mjs +1 -1
  510. package/dist/design-system219.js +1 -1
  511. package/dist/design-system219.mjs +1 -1
  512. package/dist/design-system22.js +1 -1
  513. package/dist/design-system22.js.map +1 -1
  514. package/dist/design-system22.mjs +60 -60
  515. package/dist/design-system22.mjs.map +1 -1
  516. package/dist/design-system220.js +1 -1
  517. package/dist/design-system220.mjs +1 -1
  518. package/dist/design-system221.js +1 -1
  519. package/dist/design-system221.mjs +1 -1
  520. package/dist/design-system222.js +1 -1
  521. package/dist/design-system222.js.map +1 -1
  522. package/dist/design-system222.mjs +4 -7
  523. package/dist/design-system222.mjs.map +1 -1
  524. package/dist/design-system223.js +1 -1
  525. package/dist/design-system223.js.map +1 -1
  526. package/dist/design-system223.mjs +8 -4
  527. package/dist/design-system223.mjs.map +1 -1
  528. package/dist/design-system224.js +2 -0
  529. package/dist/design-system224.js.map +1 -0
  530. package/dist/design-system224.mjs +7 -0
  531. package/dist/design-system224.mjs.map +1 -0
  532. package/dist/design-system23.js +1 -1
  533. package/dist/design-system23.js.map +1 -1
  534. package/dist/design-system23.mjs +25 -25
  535. package/dist/design-system23.mjs.map +1 -1
  536. package/dist/design-system24.js +1 -1
  537. package/dist/design-system24.js.map +1 -1
  538. package/dist/design-system24.mjs +14 -14
  539. package/dist/design-system24.mjs.map +1 -1
  540. package/dist/design-system25.js +1 -1
  541. package/dist/design-system25.js.map +1 -1
  542. package/dist/design-system25.mjs +50 -5
  543. package/dist/design-system25.mjs.map +1 -1
  544. package/dist/design-system26.js +1 -1
  545. package/dist/design-system26.mjs +5 -12
  546. package/dist/design-system26.mjs.map +1 -1
  547. package/dist/design-system27.js +1 -1
  548. package/dist/design-system27.mjs +12 -5
  549. package/dist/design-system27.mjs.map +1 -1
  550. package/dist/design-system28.js +1 -1
  551. package/dist/design-system28.mjs +5 -10
  552. package/dist/design-system28.mjs.map +1 -1
  553. package/dist/design-system29.js +1 -1
  554. package/dist/design-system29.js.map +1 -1
  555. package/dist/design-system29.mjs +10 -23
  556. package/dist/design-system29.mjs.map +1 -1
  557. package/dist/design-system30.js +1 -1
  558. package/dist/design-system30.js.map +1 -1
  559. package/dist/design-system30.mjs +17 -23
  560. package/dist/design-system30.mjs.map +1 -1
  561. package/dist/design-system31.js +1 -1
  562. package/dist/design-system31.js.map +1 -1
  563. package/dist/design-system31.mjs +29 -5
  564. package/dist/design-system31.mjs.map +1 -1
  565. package/dist/design-system32.js +1 -1
  566. package/dist/design-system32.mjs +5 -5
  567. package/dist/design-system33.js +1 -1
  568. package/dist/design-system33.mjs +5 -10
  569. package/dist/design-system33.mjs.map +1 -1
  570. package/dist/design-system34.js +1 -1
  571. package/dist/design-system34.mjs +7 -7
  572. package/dist/design-system35.js +1 -1
  573. package/dist/design-system35.mjs +7 -7
  574. package/dist/design-system36.js +1 -1
  575. package/dist/design-system36.mjs +8 -8
  576. package/dist/design-system37.js +1 -1
  577. package/dist/design-system37.mjs +10 -5
  578. package/dist/design-system37.mjs.map +1 -1
  579. package/dist/design-system38.js +1 -1
  580. package/dist/design-system38.mjs +5 -11
  581. package/dist/design-system38.mjs.map +1 -1
  582. package/dist/design-system39.js +1 -1
  583. package/dist/design-system39.mjs +11 -5
  584. package/dist/design-system39.mjs.map +1 -1
  585. package/dist/design-system40.js +1 -1
  586. package/dist/design-system40.mjs +5 -5
  587. package/dist/design-system41.js +1 -1
  588. package/dist/design-system41.js.map +1 -1
  589. package/dist/design-system41.mjs +5 -76
  590. package/dist/design-system41.mjs.map +1 -1
  591. package/dist/design-system42.js +1 -1
  592. package/dist/design-system42.js.map +1 -1
  593. package/dist/design-system42.mjs +76 -5
  594. package/dist/design-system42.mjs.map +1 -1
  595. package/dist/design-system43.js +1 -1
  596. package/dist/design-system43.mjs +5 -10
  597. package/dist/design-system43.mjs.map +1 -1
  598. package/dist/design-system44.js +1 -1
  599. package/dist/design-system44.mjs +8 -13
  600. package/dist/design-system44.mjs.map +1 -1
  601. package/dist/design-system45.js +1 -1
  602. package/dist/design-system45.mjs +15 -5
  603. package/dist/design-system45.mjs.map +1 -1
  604. package/dist/design-system46.js +1 -1
  605. package/dist/design-system46.js.map +1 -1
  606. package/dist/design-system46.mjs +5 -61
  607. package/dist/design-system46.mjs.map +1 -1
  608. package/dist/design-system47.js +1 -1
  609. package/dist/design-system47.js.map +1 -1
  610. package/dist/design-system47.mjs +61 -5
  611. package/dist/design-system47.mjs.map +1 -1
  612. package/dist/design-system48.js +1 -1
  613. package/dist/design-system48.mjs +5 -5
  614. package/dist/design-system49.js +1 -1
  615. package/dist/design-system49.js.map +1 -1
  616. package/dist/design-system49.mjs +5 -9
  617. package/dist/design-system49.mjs.map +1 -1
  618. package/dist/design-system50.js +1 -5
  619. package/dist/design-system50.js.map +1 -1
  620. package/dist/design-system50.mjs +8 -820
  621. package/dist/design-system50.mjs.map +1 -1
  622. package/dist/design-system51.js +5 -1
  623. package/dist/design-system51.js.map +1 -1
  624. package/dist/design-system51.mjs +836 -2
  625. package/dist/design-system51.mjs.map +1 -1
  626. package/dist/design-system52.js +6 -1
  627. package/dist/design-system52.js.map +1 -1
  628. package/dist/design-system52.mjs +138 -130
  629. package/dist/design-system52.mjs.map +1 -1
  630. package/dist/design-system53.js +6 -1
  631. package/dist/design-system53.js.map +1 -1
  632. package/dist/design-system53.mjs +1046 -2
  633. package/dist/design-system53.mjs.map +1 -1
  634. package/dist/design-system54.js +7 -1
  635. package/dist/design-system54.js.map +1 -1
  636. package/dist/design-system54.mjs +947 -6
  637. package/dist/design-system54.mjs.map +1 -1
  638. package/dist/design-system55.js +4 -1
  639. package/dist/design-system55.js.map +1 -1
  640. package/dist/design-system55.mjs +1364 -2
  641. package/dist/design-system55.mjs.map +1 -1
  642. package/dist/design-system56.js +1 -1
  643. package/dist/design-system56.mjs +2 -2
  644. package/dist/design-system57.js +1 -1
  645. package/dist/design-system57.js.map +1 -1
  646. package/dist/design-system57.mjs +121 -54
  647. package/dist/design-system57.mjs.map +1 -1
  648. package/dist/design-system59.js +1 -1
  649. package/dist/design-system59.mjs +7 -2
  650. package/dist/design-system59.mjs.map +1 -1
  651. package/dist/design-system60.js +1 -1
  652. package/dist/design-system60.mjs +2 -3
  653. package/dist/design-system60.mjs.map +1 -1
  654. package/dist/design-system61.js +1 -1
  655. package/dist/design-system61.mjs +2 -2
  656. package/dist/design-system62.js +1 -1
  657. package/dist/design-system62.js.map +1 -1
  658. package/dist/design-system62.mjs +65 -2
  659. package/dist/design-system62.mjs.map +1 -1
  660. package/dist/design-system63.js +1 -1
  661. package/dist/design-system63.mjs +2 -2
  662. package/dist/design-system64.js +1 -1
  663. package/dist/design-system64.mjs +1 -1
  664. package/dist/design-system65.js +1 -1
  665. package/dist/design-system65.mjs +3 -2
  666. package/dist/design-system65.mjs.map +1 -1
  667. package/dist/design-system66.js +1 -1
  668. package/dist/design-system66.js.map +1 -1
  669. package/dist/design-system66.mjs +2 -28
  670. package/dist/design-system66.mjs.map +1 -1
  671. package/dist/design-system67.js +1 -1
  672. package/dist/design-system67.mjs +2 -2
  673. package/dist/design-system68.js +1 -1
  674. package/dist/design-system68.js.map +1 -1
  675. package/dist/design-system68.mjs +2 -58
  676. package/dist/design-system68.mjs.map +1 -1
  677. package/dist/design-system69.js +1 -1
  678. package/dist/design-system69.mjs +2 -2
  679. package/dist/design-system70.js +1 -1
  680. package/dist/design-system70.mjs +1 -1
  681. package/dist/design-system71.js +1 -1
  682. package/dist/design-system71.js.map +1 -1
  683. package/dist/design-system71.mjs +28 -2
  684. package/dist/design-system71.mjs.map +1 -1
  685. package/dist/design-system72.js +1 -1
  686. package/dist/design-system72.mjs +2 -2
  687. package/dist/design-system73.js +1 -1
  688. package/dist/design-system73.js.map +1 -1
  689. package/dist/design-system73.mjs +58 -2
  690. package/dist/design-system73.mjs.map +1 -1
  691. package/dist/design-system74.js +1 -1
  692. package/dist/design-system74.js.map +1 -1
  693. package/dist/design-system74.mjs +2 -79
  694. package/dist/design-system74.mjs.map +1 -1
  695. package/dist/design-system75.js +1 -1
  696. package/dist/design-system75.mjs +2 -2
  697. package/dist/design-system76.js +1 -1
  698. package/dist/design-system76.mjs +1 -1
  699. package/dist/design-system77.js +1 -1
  700. package/dist/design-system77.mjs +2 -2
  701. package/dist/design-system78.js +1 -1
  702. package/dist/design-system78.js.map +1 -1
  703. package/dist/design-system78.mjs +2 -81
  704. package/dist/design-system78.mjs.map +1 -1
  705. package/dist/design-system79.js +1 -1
  706. package/dist/design-system79.js.map +1 -1
  707. package/dist/design-system79.mjs +79 -2
  708. package/dist/design-system79.mjs.map +1 -1
  709. package/dist/design-system80.js +1 -1
  710. package/dist/design-system80.mjs +2 -2
  711. package/dist/design-system81.js +1 -1
  712. package/dist/design-system81.js.map +1 -1
  713. package/dist/design-system81.mjs +2 -119
  714. package/dist/design-system81.mjs.map +1 -1
  715. package/dist/design-system82.js +1 -1
  716. package/dist/design-system82.mjs +2 -2
  717. package/dist/design-system83.js +1 -1
  718. package/dist/design-system83.js.map +1 -1
  719. package/dist/design-system83.mjs +81 -2
  720. package/dist/design-system83.mjs.map +1 -1
  721. package/dist/design-system84.js +1 -1
  722. package/dist/design-system84.mjs +2 -2
  723. package/dist/design-system85.js +1 -1
  724. package/dist/design-system85.js.map +1 -1
  725. package/dist/design-system85.mjs +2 -102
  726. package/dist/design-system85.mjs.map +1 -1
  727. package/dist/design-system86.js +1 -1
  728. package/dist/design-system86.js.map +1 -1
  729. package/dist/design-system86.mjs +119 -2
  730. package/dist/design-system86.mjs.map +1 -1
  731. package/dist/design-system87.js +1 -1
  732. package/dist/design-system87.js.map +1 -1
  733. package/dist/design-system87.mjs +2 -190
  734. package/dist/design-system87.mjs.map +1 -1
  735. package/dist/design-system88.js +1 -1
  736. package/dist/design-system88.mjs +2 -2
  737. package/dist/design-system89.js +1 -1
  738. package/dist/design-system89.mjs +1 -1
  739. package/dist/design-system90.js +1 -1
  740. package/dist/design-system90.js.map +1 -1
  741. package/dist/design-system90.mjs +89 -129
  742. package/dist/design-system90.mjs.map +1 -1
  743. package/dist/design-system92.js +1 -1
  744. package/dist/design-system92.js.map +1 -1
  745. package/dist/design-system92.mjs +178 -37
  746. package/dist/design-system92.mjs.map +1 -1
  747. package/dist/design-system93.js +1 -1
  748. package/dist/design-system93.mjs +2 -2
  749. package/dist/design-system94.js +1 -6
  750. package/dist/design-system94.js.map +1 -1
  751. package/dist/design-system94.mjs +2 -107
  752. package/dist/design-system94.mjs.map +1 -1
  753. package/dist/design-system95.js +1 -6
  754. package/dist/design-system95.js.map +1 -1
  755. package/dist/design-system95.mjs +139 -909
  756. package/dist/design-system95.mjs.map +1 -1
  757. package/dist/design-system96.js +1 -7
  758. package/dist/design-system96.js.map +1 -1
  759. package/dist/design-system96.mjs +2 -861
  760. package/dist/design-system96.mjs.map +1 -1
  761. package/dist/design-system97.js +1 -4
  762. package/dist/design-system97.js.map +1 -1
  763. package/dist/design-system97.mjs +47 -1362
  764. package/dist/design-system97.mjs.map +1 -1
  765. package/dist/design-system98.js +1 -5
  766. package/dist/design-system98.js.map +1 -1
  767. package/dist/design-system98.mjs +2 -10
  768. package/dist/design-system98.mjs.map +1 -1
  769. package/dist/design-system99.js +1 -1
  770. package/dist/design-system99.js.map +1 -1
  771. package/dist/design-system99.mjs +2 -17
  772. package/dist/design-system99.mjs.map +1 -1
  773. package/dist/style.css +1 -1
  774. package/dist/types/components/BButton.vue.d.ts +52 -53
  775. package/dist/types/components/BCarousel/BCarousel.vue.d.ts +77 -70
  776. package/dist/types/components/BCarousel/BCarouselItem.vue.d.ts +9 -9
  777. package/dist/types/components/BCheckbox.vue.d.ts +63 -84
  778. package/dist/types/components/BCollapse.vue.d.ts +25 -26
  779. package/dist/types/components/BCurrencyField.vue.d.ts +101 -164
  780. package/dist/types/components/BDatePicker.vue.d.ts +111 -186
  781. package/dist/types/components/BDateRangePicker.vue.d.ts +104 -173
  782. package/dist/types/components/BDropdown/BDropdown.vue.d.ts +87 -118
  783. package/dist/types/components/BDropdown/BDropdownContent.vue.d.ts +9 -9
  784. package/dist/types/components/BDropdown/BDropdownItem.vue.d.ts +35 -24
  785. package/dist/types/components/BErrorMessage.vue.d.ts +39 -28
  786. package/dist/types/components/BImagePicker/BImagePicker.vue.d.ts +76 -115
  787. package/dist/types/components/BImagePicker/BImagePickerCloseButton.vue.d.ts +2 -2
  788. package/dist/types/components/BImagePicker/BImagePreview.vue.d.ts +27 -28
  789. package/dist/types/components/BLabel.vue.d.ts +46 -47
  790. package/dist/types/components/BLoadingBar.vue.d.ts +37 -46
  791. package/dist/types/components/BLoadingOverlay.vue.d.ts +34 -37
  792. package/dist/types/components/BModal/BModal.vue.d.ts +61 -70
  793. package/dist/types/components/BModal/BModalBody.vue.d.ts +9 -9
  794. package/dist/types/components/BModal/BModalContainer.vue.d.ts +48 -49
  795. package/dist/types/components/BModal/BModalFooter.vue.d.ts +9 -9
  796. package/dist/types/components/BModal/BModalHeader.vue.d.ts +9 -9
  797. package/dist/types/components/BMultiSelect.vue.d.ts +106 -177
  798. package/dist/types/components/BOtpField/BOtpField.vue.d.ts +93 -138
  799. package/dist/types/components/BOtpField/BOtpFieldBox.vue.d.ts +52 -53
  800. package/dist/types/components/BOverlay.vue.d.ts +9 -9
  801. package/dist/types/components/BPagination.vue.d.ts +54 -71
  802. package/dist/types/components/BRadio.vue.d.ts +94 -145
  803. package/dist/types/components/BSelect.vue.d.ts +99 -164
  804. package/dist/types/components/BStepper.vue.d.ts +41 -0
  805. package/dist/types/components/BSwitch.vue.d.ts +58 -73
  806. package/dist/types/components/BTabs/BTab.vue.d.ts +9 -9
  807. package/dist/types/components/BTabs/BTabs.vue.d.ts +56 -59
  808. package/dist/types/components/BTextField.vue.d.ts +122 -197
  809. package/dist/types/components/BTextarea.vue.d.ts +92 -155
  810. package/dist/types/components/BTimeline/BTimeline.vue.d.ts +9 -9
  811. package/dist/types/components/BTimeline/BTimelineItem.vue.d.ts +9 -9
  812. package/dist/types/components/BToast/BToast.vue.d.ts +27 -20
  813. package/dist/types/components/BToast/BToastItem.vue.d.ts +48 -49
  814. package/dist/types/components/BTooltip.vue.d.ts +55 -56
  815. package/dist/types/components/index.d.ts +38 -37
  816. package/dist/types/composables/Date.d.ts +7 -7
  817. package/dist/types/composables/Validation.d.ts +41 -41
  818. package/dist/types/constants/Common.d.ts +9 -9
  819. package/dist/types/constants/Enums.d.ts +110 -110
  820. package/dist/types/helpers/ComponentHelper.d.ts +7 -7
  821. package/dist/types/helpers/DateHelper.d.ts +2 -2
  822. package/dist/types/index.d.ts +11 -11
  823. package/dist/types/playground/PlaygroundView.vue.d.ts +2 -2
  824. package/dist/types/plugin.d.ts +8 -8
  825. package/dist/types/types/Common.d.ts +5 -5
  826. package/dist/types/types/components/BErrorMessage.d.ts +1 -1
  827. package/dist/types/types/components/BImagePicker.d.ts +6 -6
  828. package/dist/types/types/components/BStepper.d.ts +5 -0
  829. package/dist/types/types/components/BTabs.d.ts +4 -4
  830. package/dist/types/types/components/BToast.d.ts +8 -8
  831. package/dist/types/types/index.d.ts +7 -5
  832. package/package.json +111 -110
@@ -1 +1 @@
1
- {"version":3,"file":"design-system87.mjs","sources":["../src/components/BImagePicker/BImagePicker.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, withModifiers as _withModifiers, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-77676d6f\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"b-image-picker ds-w-full\" }\nconst _hoisted_2 = { class: \"ds-gap-2 ds-space-y-4 ds-rounded-lg ds-bg-white ds-p-4 ds-drop-shadow\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"ds-flex ds-flex-wrap ds-justify-center ds-gap-1\"\n}\nconst _hoisted_4 = [\"onClick\", \"onDragenter\", \"onDragstart\", \"onDrop\"]\nconst _hoisted_5 = [\"src\"]\nconst _hoisted_6 = [\"src\"]\nconst _hoisted_7 = { class: \"ds-flex ds-flex-wrap ds-justify-center\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"svg\", {\n class: \"ds-absolute -ds-bottom-[3px] ds-left-0 ds-h-4 ds-w-4 ds-fill-primary-t\",\n viewBox: \"0 0 512 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, [\n /*#__PURE__*/_createElementVNode(\"path\", { d: \"M447.1 32h-384C28.64 32-.0091 60.65-.0091 96v320c0 35.35 28.65 64 63.1 64h384c35.35 0 64-28.65 64-64V96C511.1 60.65 483.3 32 447.1 32zM111.1 96c26.51 0 48 21.49 48 48S138.5 192 111.1 192s-48-21.49-48-48S85.48 96 111.1 96zM446.1 407.6C443.3 412.8 437.9 416 432 416H82.01c-6.021 0-11.53-3.379-14.26-8.75c-2.73-5.367-2.215-11.81 1.334-16.68l70-96C142.1 290.4 146.9 288 152 288s9.916 2.441 12.93 6.574l32.46 44.51l93.3-139.1C293.7 194.7 298.7 192 304 192s10.35 2.672 13.31 7.125l128 192C448.6 396 448.9 402.3 446.1 407.6z\" })\n], -1))\nconst _hoisted_9 = [\"accept\", \"multiple\"]\n\nimport { FileImageTypes } from '@/constants/Common';\nimport type { FileItemRead } from '@/types';\nimport { isEmpty } from 'lodash-es';\nimport { v4 as uuid } from 'uuid';\nimport { computed, ref } from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BImagePickerCloseButton from './BImagePickerCloseButton.vue';\nimport ImagePreview from './BImagePreview.vue';\nimport type { ValidationRule } from '@/composables/Validation';\nimport { useValidationField } from '@/composables/Validation';\nimport BLabel from '../BLabel.vue';\nimport BButton from '../BButton.vue';\nimport BErrorMessage from '../BErrorMessage.vue';\n\n//#region Props\nexport interface Props {\n inputId?: string;\n /**\n * Empty object <code>multiple: false</code> or empty array <code>multiple: true</code>.\n */\n modelValue: FileItemRead | FileItemRead[];\n label?: string;\n /**\n * Allow to pick multiple images, v-model expects an array.\n */\n multiple?: boolean;\n /**\n * Maximum file size in MB.\n */\n maxFileSize?: number;\n hideDetails?: boolean;\n required?: boolean;\n requiredErrorMessage?: string;\n validationRules?: ValidationRule[];\n}\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BImagePicker',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n multiple: { type: Boolean, default: false },\n maxFileSize: { default: 20 },\n hideDetails: { type: Boolean, default: false },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n validationRules: { default: undefined }\n },\n emits: [\"change\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n// Drag & Drop: https://www.w3schools.com/jsref/event_ondragover.asp\n\n//#endregion\n\n//#region Events\n\n//#endregion\n\n//#region Data\nconst { t } = useI18n();\nconst inputRef = ref<HTMLInputElement | null>(null);\nconst draggedIndex = ref(0);\nconst value = computed({\n get() {\n return props.modelValue;\n },\n set(val) {\n emit('update:modelValue', val);\n },\n});\nconst fileTypesValid = ref(true);\nconst fileSizeValid = ref(true);\nconst previewImage = ref({\n visible: false,\n url: '',\n});\nconst allowedTypes = computed(() => FileImageTypes.join(', '));\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst validateRequired: ValidationRule = {\n validateRule: (val: FileItemRead[]) => !!val && val.length > 0,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst validateFileTypesValid: ValidationRule = {\n validateRule: () => fileTypesValid.value,\n errorMessage: () =>\n t('ds.components.base.image_picker.file_types_valid', {\n types: allowedTypes.value,\n }),\n};\nconst validateFileSizeValid: ValidationRule = {\n validateRule: () => fileSizeValid.value,\n errorMessage: () =>\n t('ds.components.base.image_picker.file_size_valid', {\n size: props.maxFileSize,\n }),\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 result.push(validateFileTypesValid);\n result.push(validateFileSizeValid);\n\n return result.length ? result : undefined;\n});\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n//#endregion\n\n//#region Methods\n/* Events fired on the drag target */\nconst handleDragStart = (index: number, e: DragEvent) => {\n draggedIndex.value = index;\n const target = e.target as HTMLDivElement;\n target.classList.add('dragging');\n e.dataTransfer!.effectAllowed = 'move';\n e.dataTransfer!.setData('index', index.toString());\n};\nconst handleDragEnd = (e: DragEvent) => {\n const target = e.target as HTMLDivElement;\n target.classList.remove('dragging');\n};\n/* Events fired on the drop target */\nconst handleDragEnter = (index: number, e: DragEvent) => {\n const target = e.target as HTMLDivElement;\n if (draggedIndex.value !== index) {\n target.classList.add('dropped-target');\n }\n};\nconst handleDragOver = (e: DragEvent) => {\n // By default, data/elements cannot be dropped in other elements. To allow a drop, we must prevent the default handling of the element\n e.preventDefault();\n e.dataTransfer!.dropEffect = 'move';\n};\nconst handleDragLeave = (e: DragEvent) => {\n // When the draggable p element leaves the droptarget, reset the style\n const target = e.target as HTMLDivElement;\n target.classList.remove('dropped-target');\n};\nconst handleDrop = (index: number, e: DragEvent) => {\n e.preventDefault();\n const target = e.target as HTMLDivElement;\n target.classList.remove('dropped-target');\n const draggedIndex = parseInt(e.dataTransfer!.getData('index'));\n const draggedImg = (value.value as FileItemRead[])[draggedIndex];\n (value.value as FileItemRead[]).splice(draggedIndex, 1);\n (value.value as FileItemRead[]).splice(index, 0, draggedImg);\n\n emit('change');\n validate();\n};\nconst openFileDialog = () => {\n inputRef.value?.click();\n};\nconst handleChangeInput = (e: any) => {\n let fileList: FileList = e.target.files || e.dataTransfer.files;\n if (!fileList.length) {\n return;\n }\n createFileImages(fileList);\n\n // Clear input's value so onChange event can work for the same files next picks\n if (inputRef.value) {\n inputRef.value.value = null as any;\n }\n};\nconst createFileImages = (fileList: FileList) => {\n Array.from(fileList).forEach((file) => {\n fileTypesValid.value = FileImageTypes.includes(file.type);\n fileSizeValid.value = convertToMB(file.size) <= props.maxFileSize;\n\n if (fileTypesValid.value && fileSizeValid.value) {\n let reader: any = new FileReader();\n\n reader.onload = (f: any) => {\n if (props.multiple) {\n (value.value as FileItemRead[]).push({\n url: f.target.result,\n file,\n type: file.type,\n });\n } else {\n // splice(index, how-many, item1, item2,...);\n value.value = {\n url: f.target.result,\n file,\n type: file.type,\n };\n }\n\n emit('change');\n validate();\n };\n\n reader.readAsDataURL(file);\n } else {\n validate();\n }\n });\n};\nconst removeFileImage = (index: number) => {\n (value.value as FileItemRead[]).splice(index, 1);\n emit('change');\n validate();\n};\nconst removeFileImageSingle = () => {\n value.value = {};\n emit('change');\n validate();\n};\nconst convertToMB = (numberOfBytes: number) => numberOfBytes / 1024 ** 2;\nconst preview = (item: FileItemRead) => {\n previewImage.value.url = item.url || '';\n previewImage.value.visible = true;\n};\n//#endregion\n\n__expose({ validate });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(BLabel, {\n label: props.label\n }, null, 8, [\"label\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n (!_unref(isEmpty)(value.value))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (props.multiple)\n ? (_openBlock(true), _createElementBlock(_Fragment, { key: 0 }, _renderList(value.value as FileItemRead[], (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n key: item.url,\n class: \"b-image-picker__draggable ds-h-full ds-cursor-pointer ds-rounded-lg ds-transition-all hover:ds-ring-2 hover:ds-ring-primary-t\",\n draggable: \"true\",\n onClick: ($event: any) => (preview(item)),\n onDragend: handleDragEnd,\n onDragenter: ($event: any) => (handleDragEnter(index, $event)),\n onDragleave: handleDragLeave,\n onDragover: handleDragOver,\n onDragstart: ($event: any) => (handleDragStart(index, $event)),\n onDrop: ($event: any) => (handleDrop(index, $event))\n }, [\n _createElementVNode(\"img\", {\n src: item.url,\n alt: \"image\",\n class: \"ds-h-full ds-w-full ds-rounded-lg\"\n }, null, 8, _hoisted_5),\n _createVNode(BImagePickerCloseButton, {\n class: \"ds-right-1 ds-top-1 ds-h-8 ds-w-8\",\n onClick: _withModifiers(($event: any) => (removeFileImage(index)), [\"stop\"])\n }, null, 8, [\"onClick\"])\n ], 40, _hoisted_4))\n }), 128))\n : (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: \"b-image-picker__draggable ds-h-full ds-cursor-pointer ds-rounded-lg ds-transition-all hover:ds-ring-2 hover:ds-ring-primary-t\",\n draggable: \"true\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (preview(value.value as FileItemRead)))\n }, [\n _createElementVNode(\"img\", {\n src: (value.value as FileItemRead).url,\n alt: \"image\",\n class: \"ds-h-full ds-w-full ds-rounded-lg\"\n }, null, 8, _hoisted_6),\n _createVNode(BImagePickerCloseButton, {\n class: \"ds-right-1 ds-top-1 ds-h-8 ds-w-8\",\n onClick: _withModifiers(removeFileImageSingle, [\"stop\"])\n }, null, 8, [\"onClick\"])\n ]))\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_7, [\n _createVNode(BButton, { onClick: openFileDialog }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('ds.components.base.image_picker.select_image')), 1)\n ]),\n appendIcon: _withCtx(() => [\n _hoisted_8\n ]),\n _: 1\n }),\n _createElementVNode(\"input\", {\n ref_key: \"inputRef\",\n ref: inputRef,\n accept: allowedTypes.value,\n multiple: props.multiple,\n class: \"ds-hidden\",\n type: \"file\",\n onChange: handleChangeInput\n }, null, 40, _hoisted_9)\n ])\n ]),\n (!props.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 _createVNode(ImagePreview, {\n modelValue: previewImage.value.visible,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((previewImage.value.visible) = $event)),\n url: previewImage.value.url\n }, null, 8, [\"modelValue\", \"url\"])\n ]))\n}\n}\n\n})"],"names":["_withScopeId","_pushScopeId","n","_popScopeId","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_createElementVNode","_hoisted_9","_sfc_main","_defineComponent","__props","__expose","emit","props","t","useI18n","inputRef","ref","draggedIndex","value","computed","val","fileTypesValid","fileSizeValid","previewImage","allowedTypes","FileImageTypes","id","uuid","validateRequired","validateFileTypesValid","validateFileSizeValid","vRules","result","validate","validationResult","useValidationField","handleDragStart","index","e","handleDragEnd","handleDragEnter","target","handleDragOver","handleDragLeave","handleDrop","draggedImg","openFileDialog","_a","handleChangeInput","fileList","createFileImages","file","convertToMB","reader","f","removeFileImage","removeFileImageSingle","numberOfBytes","preview","item","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_unref","isEmpty","_createCommentVNode","_Fragment","_renderList","$event","BImagePickerCloseButton","_withModifiers","BButton","_withCtx","_createTextVNode","_toDisplayString","_createBlock","BErrorMessage","ImagePreview"],"mappings":"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"}
1
+ {"version":3,"file":"design-system87.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -1,2 +1,2 @@
1
- "use strict";const e="";module.exports=e;
1
+ "use strict";const e=require("./design-system24.js");module.exports=e;
2
2
  //# sourceMappingURL=design-system88.js.map
@@ -1,5 +1,5 @@
1
- const e = "";
1
+ import f from "./design-system24.mjs";
2
2
  export {
3
- e as default
3
+ f as default
4
4
  };
5
5
  //# sourceMappingURL=design-system88.mjs.map
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("./design-system46.js");module.exports=e;
1
+ "use strict";const e=require("./design-system42.js");module.exports=e;
2
2
  //# sourceMappingURL=design-system89.js.map
@@ -1,4 +1,4 @@
1
- import f from "./design-system46.mjs";
1
+ import f from "./design-system42.mjs";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),h=require("./design-system30.js"),g=require("./design-system3.js"),V=require("./design-system29.js"),q=require("./design-system50.js"),B=require("./design-system100.js"),C=require("./design-system5.js"),E=require("./design-system99.js"),N={class:"b-currency-field"},R={class:"ds-relative"},I={key:0,class:"b-currency-field__prepend-icon ds-absolute ds-left-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t"},S=["id","autocomplete","disabled","placeholder","readonly","onKeyup"],M={key:1,class:"b-currency-field__append-icon ds-absolute ds-right-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t"},w=e.defineComponent({__name:"BCurrencyField",props:{inputId:{default:""},inputCssClass:{default:""},modelValue:{},label:{default:""},validationRules:{default:void 0},placeholder:{default:""},autocomplete:{type:Boolean,default:!1},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},hideDetails:{type:Boolean,default:!1},locale:{default:C.SupportedLocale["vi-VN"]}},emits:["press:enter","update:modelValue"],setup(i,{emit:a}){const t=i;let o;const{t:c}=q.useI18n(),u=e.ref(null),p={validateRule:s=>!!(s&&(s!=null&&s.trim())),errorMessage:()=>t.requiredErrorMessage||c("ds.global.field_required")},r=e.computed(()=>t.inputId||`id-${E()}`),l=e.computed({get(){return t.modelValue},set(s){a("update:modelValue",s)}}),m=e.computed(()=>[{"ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]":t.disabled,"ds-text-black/[0.85]":!t.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},t.inputCssClass]),f=e.computed(()=>{let s=[];return t.required&&s.push(p),t.validationRules&&(s=s.concat(t.validationRules)),s.length?s:void 0}),v=e.computed(()=>t.locale==="en-US"?{mask:"$num",blocks:{num:{mask:Number,thousandsSeparator:" "}}}:[{mask:""},{mask:"num VND",lazy:!1,blocks:{num:{mask:Number,thousandsSeparator:" "}}}]),{validate:k,validationResult:d}=g.useValidationField(r.value,l,f.value);e.watch(()=>t.locale,()=>{n()}),e.watch(()=>t.modelValue,s=>{s!=o.unmaskedValue&&(o.unmaskedValue=s.toString())});const _=()=>{k()},b=()=>{a("press:enter")},y=()=>{l.value=typeof l.value=="number"?+o.unmaskedValue:o.unmaskedValue},n=()=>{o&&o.destroy(),o=B(u.value,v.value),o.on("accept",y)};return e.onMounted(()=>{n(),o.unmaskedValue=l.value.toString()}),(s,$)=>(e.openBlock(),e.createElementBlock("div",N,[e.createVNode(h,{id:r.value,label:s.label,required:s.required},null,8,["id","label","required"]),e.createElementVNode("div",R,[s.$slots.prependIcon?(e.openBlock(),e.createElementBlock("div",I,[e.renderSlot(s.$slots,"prependIcon",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("input",{id:r.value,ref_key:"inputRef",ref:u,autocomplete:t.autocomplete?"on":"off",class:e.normalizeClass([m.value,"ds-block ds-h-[40px] ds-w-full ds-rounded-lg ds-border ds-px-3 ds-text-sm ds-drop-shadow-light"]),disabled:t.disabled,placeholder:t.placeholder,readonly:t.readonly,onKeyup:[_,e.withKeys(b,["enter"])]},null,42,S),s.$slots.appendIcon?(e.openBlock(),e.createElementBlock("div",M,[e.renderSlot(s.$slots,"appendIcon",{},void 0,!0)])):e.createCommentVNode("",!0)]),s.hideDetails?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(V,{key:0,"error-message":e.unref(d).errorMessage(),class:"ds-mt-1"},null,8,["error-message"]))]))}});module.exports=w;
1
+ "use strict";const e=require("vue"),a=require("./design-system5.js"),L=r=>(e.pushScopeId("data-v-8e5f01f5"),r=r(),e.popScopeId(),r),V={class:"ds-relative"},_=L(()=>e.createElementVNode("div",{class:"tooltip-arrow","data-popper-arrow":""},null,-1)),T=e.defineComponent({__name:"BTooltip",props:{modelValue:{type:Boolean,default:!1},position:{default:a.BTooltipPosition.Top},openEvent:{default:a.BTooltipOpenEvent.Hover}},emits:["update:modelValue"],setup(r,{emit:b}){const n=r,g=b,o=e.ref(null),s=e.ref(null),d=e.ref(!1),l=e.computed({get(){return n.modelValue!==void 0?n.modelValue:d.value},set(t){n.modelValue!==void 0?g("update:modelValue",t):d.value=t}});e.watch(()=>n.position,()=>{y(),E()}),e.watch(()=>n.openEvent,()=>{h(),k()});const c=()=>{l.value=!l.value},p=()=>{l.value=!0},w=()=>{l.value=!1},m=()=>{l.value=!0},f=()=>{l.value=!1},y=()=>{s.value&&(s.value.style.top="",s.value.style.right="",s.value.style.bottom="",s.value.style.left="")},E=()=>{if(s.value)switch(n.position){case a.BTooltipPosition.Bottom:s.value.style.top="4px";break;case a.BTooltipPosition.Top:default:s.value.style.bottom="24px";break}},k=()=>{var t,u,i,v,B;switch(n.openEvent){case a.BTooltipOpenEvent.Click:(t=o.value)==null||t.addEventListener("click",c);break;case a.BTooltipOpenEvent.Focus:(u=o.value)==null||u.addEventListener("focus",p),(i=o.value)==null||i.addEventListener("focusout",w);break;case a.BTooltipOpenEvent.Hover:default:(v=o.value)==null||v.addEventListener("mouseover",m),(B=o.value)==null||B.addEventListener("mouseleave",f);break}},h=()=>{var t,u,i,v;(t=o.value)==null||t.removeEventListener("click",c),(u=o.value)==null||u.removeEventListener("focus",p),(i=o.value)==null||i.removeEventListener("mouseover",m),(v=o.value)==null||v.removeEventListener("mouseleave",f)};return e.onMounted(()=>{k(),E()}),e.onBeforeUnmount(()=>{h()}),(t,u)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{ref_key:"toggleRef",ref:o,class:"ds-inline"},[e.renderSlot(t.$slots,"toggle",{},void 0,!0)],512),e.withDirectives(e.createElementVNode("div",V,[e.createElementVNode("div",{ref_key:"contentRef",ref:s,class:"ds-absolute ds-z-10 ds-inline-block ds-rounded-lg ds-bg-black/[0.65] ds-px-3 ds-py-2 ds-text-sm ds-font-medium ds-text-white ds-shadow-sm ds-transition-opacity ds-duration-300"},[e.renderSlot(t.$slots,"default",{},void 0,!0),_],512)],512),[[e.vShow,l.value]])],64))}});module.exports=T;
2
2
  //# sourceMappingURL=design-system90.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system90.js","sources":["../src/components/BCurrencyField.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, renderSlot as _renderSlot, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, withKeys as _withKeys, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, unref as _unref, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5cbc4bba\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"b-currency-field\" }\nconst _hoisted_2 = { class: \"ds-relative\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"b-currency-field__prepend-icon ds-absolute ds-left-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t\"\n}\nconst _hoisted_4 = [\"id\", \"autocomplete\", \"disabled\", \"placeholder\", \"readonly\", \"onKeyup\"]\nconst _hoisted_5 = {\n key: 1,\n class: \"b-currency-field__append-icon ds-absolute ds-right-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t\"\n}\n\nimport BLabel from '@/components/BLabel.vue';\nimport type { ValidationRule } from '@/composables/Validation';\nimport { useValidationField } from '@/composables/Validation';\nimport { computed, onMounted, ref, watch } from 'vue';\nimport { v4 as uuid } from 'uuid';\nimport BErrorMessage from '@/components/BErrorMessage.vue';\nimport { useI18n } from 'vue-i18n';\nimport IMask from '@/vendor/imask-7.1.3.js';\nimport { SupportedLocale } from '@/constants/Enums';\n\n//#region Props\nexport interface BCurrencyFieldProps {\n inputId?: string;\n inputCssClass?: string;\n /**\n * Value can be number or string\n */\n modelValue: number | string;\n label?: string;\n validationRules?: ValidationRule[];\n placeholder?: string;\n autocomplete?: boolean;\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n disabled?: boolean;\n readonly?: boolean;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Locale of the currency\n */\n locale?: `${SupportedLocale}`;\n}\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BCurrencyField',\n props: {\n inputId: { default: '' },\n inputCssClass: { default: '' },\n modelValue: {},\n label: { default: '' },\n validationRules: { default: undefined },\n placeholder: { default: '' },\n autocomplete: { type: Boolean, default: false },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n disabled: { type: Boolean, default: false },\n readonly: { type: Boolean, default: false },\n hideDetails: { type: Boolean, default: false },\n locale: { default: SupportedLocale['vi-VN'] }\n },\n emits: [\"press:enter\", \"update:modelValue\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\n\n//#endregion\n\n//#region Events\n\n//#endregion\n\n//#region Data\nlet mask: any;\nconst { t } = useI18n();\nconst inputRef = ref<HTMLInputElement | null>(null);\nconst validateRequired: ValidationRule = {\n validateRule: (val: string) => !!(val && val?.trim()),\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/[0.4]': 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 maskOptions = computed(() =>\n props.locale === 'en-US'\n ? {\n mask: '$num',\n blocks: {\n num: {\n mask: Number,\n thousandsSeparator: ' ',\n },\n },\n }\n : [\n { mask: '' },\n {\n mask: 'num VND',\n lazy: false,\n blocks: {\n num: {\n mask: Number,\n thousandsSeparator: ' ',\n },\n },\n },\n ],\n);\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n//#endregion\n\n//#region Watchers\nwatch(\n () => props.locale,\n () => {\n initMask();\n },\n);\nwatch(\n () => props.modelValue,\n (val) => {\n if (val != mask.unmaskedValue) {\n mask.unmaskedValue = val.toString();\n }\n },\n);\n//#endregion\n\n//#region Methods\nconst onKeyUp = () => {\n validate();\n};\nconst onKeyUpEnter = () => {\n emit('press:enter');\n};\nconst onAccept = () => {\n value.value =\n typeof value.value === 'number' ? +mask.unmaskedValue : mask.unmaskedValue;\n};\nconst initMask = () => {\n if (mask) {\n mask.destroy();\n }\n mask = IMask(inputRef.value!, maskOptions.value);\n mask.on('accept', onAccept);\n};\n//#endregion\n\n//#region Lifecycle Hooks\nonMounted(() => {\n initMask();\n mask.unmaskedValue = value.value.toString();\n});\n//#endregion\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.$slots.prependIcon)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _renderSlot(_ctx.$slots, \"prependIcon\", {}, undefined, true)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"input\", {\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n autocomplete: props.autocomplete ? 'on' : 'off',\n class: _normalizeClass([inputCssClassValue.value, \"ds-block ds-h-[40px] ds-w-full ds-rounded-lg ds-border ds-px-3 ds-text-sm ds-drop-shadow-light\"]),\n disabled: props.disabled,\n placeholder: props.placeholder,\n readonly: props.readonly,\n onKeyup: [\n onKeyUp,\n _withKeys(onKeyUpEnter, [\"enter\"])\n ]\n }, null, 42, _hoisted_4),\n (_ctx.$slots.appendIcon)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _renderSlot(_ctx.$slots, \"appendIcon\", {}, undefined, true)\n ]))\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 ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_sfc_main","_defineComponent","SupportedLocale","__props","emit","props","mask","t","useI18n","inputRef","ref","validateRequired","val","id","computed","uuid","value","inputCssClassValue","validationResult","vRules","result","maskOptions","validate","useValidationField","watch","initMask","onKeyUp","onKeyUpEnter","onAccept","IMask","onMounted","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_createElementVNode","_renderSlot","_createCommentVNode","_normalizeClass","_withKeys","_createBlock","BErrorMessage","_unref"],"mappings":"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"}
1
+ {"version":3,"file":"design-system90.js","sources":["../src/components/BTooltip.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, createElementVNode as _createElementVNode, vShow as _vShow, withDirectives as _withDirectives, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-8e5f01f5\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"ds-relative\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"tooltip-arrow\",\n \"data-popper-arrow\": \"\"\n}, null, -1))\n\nimport { BTooltipOpenEvent, BTooltipPosition } from '@/constants/Enums';\nimport { computed, onBeforeUnmount, onMounted, ref, watch } from 'vue';\n\n//#region Props\nexport interface BTooltipProps {\n modelValue?: boolean;\n /**\n * Position of opened tooltip compare to its toggle.\n */\n position?: `${BTooltipPosition}`;\n /**\n * Event to open tooltip.\n */\n openEvent?: `${BTooltipOpenEvent}`;\n}\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BTooltip',\n props: {\n modelValue: { type: Boolean, default: false },\n position: { default: BTooltipPosition.Top },\n openEvent: { default: BTooltipOpenEvent.Hover }\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { emit: __emit }) {\n\nconst props = __props;\n//#endregion\n\n//#region Events\nconst emit = __emit;\n//#endregion\n\n//region Data\nconst toggleRef = ref<HTMLDivElement | null>(null);\nconst contentRef = ref<HTMLDivElement | null>(null);\nconst mValue = ref(false);\nconst value = computed({\n get() {\n return props.modelValue !== undefined ? props.modelValue : mValue.value;\n },\n set(val: boolean) {\n if (props.modelValue !== undefined) {\n emit('update:modelValue', val);\n } else {\n mValue.value = val;\n }\n },\n});\n//endregion\n\n//region Watchers\nwatch(\n () => props.position,\n () => {\n resetContentPosition();\n ensureContentPosition();\n },\n);\nwatch(\n () => props.openEvent,\n () => {\n clearEventListeners();\n ensureEventListeners();\n },\n);\n//#endregion\n\n//region Methods\nconst onClick = () => {\n value.value = !value.value;\n};\nconst onFocus = () => {\n value.value = true;\n};\nconst onFocusOut = () => {\n value.value = false;\n};\nconst onHover = () => {\n value.value = true;\n};\nconst onHoverOut = () => {\n value.value = false;\n};\nconst resetContentPosition = () => {\n if (!contentRef.value) {\n return;\n }\n contentRef.value.style.top = '';\n contentRef.value.style.right = '';\n contentRef.value.style.bottom = '';\n contentRef.value.style.left = '';\n};\nconst ensureContentPosition = () => {\n if (!contentRef.value) {\n return;\n }\n\n switch (props.position) {\n case BTooltipPosition.Bottom:\n contentRef.value.style.top = '4px';\n break;\n case BTooltipPosition.Top:\n default:\n contentRef.value.style.bottom = '24px';\n break;\n }\n};\nconst ensureEventListeners = () => {\n switch (props.openEvent) {\n case BTooltipOpenEvent.Click:\n toggleRef.value?.addEventListener('click', onClick);\n break;\n case BTooltipOpenEvent.Focus:\n toggleRef.value?.addEventListener('focus', onFocus);\n toggleRef.value?.addEventListener('focusout', onFocusOut);\n break;\n case BTooltipOpenEvent.Hover:\n default:\n toggleRef.value?.addEventListener('mouseover', onHover);\n toggleRef.value?.addEventListener('mouseleave', onHoverOut);\n break;\n }\n};\nconst clearEventListeners = () => {\n toggleRef.value?.removeEventListener('click', onClick);\n toggleRef.value?.removeEventListener('focus', onFocus);\n toggleRef.value?.removeEventListener('mouseover', onHover);\n toggleRef.value?.removeEventListener('mouseleave', onHoverOut);\n};\n//#endregion\n\n//#region Lifecycle Hooks\nonMounted(() => {\n ensureEventListeners();\n ensureContentPosition();\n});\nonBeforeUnmount(() => {\n clearEventListeners();\n});\n//#endregion\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"div\", {\n ref_key: \"toggleRef\",\n ref: toggleRef,\n class: \"ds-inline\"\n }, [\n _renderSlot(_ctx.$slots, \"toggle\", {}, undefined, true)\n ], 512),\n _withDirectives(_createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n ref_key: \"contentRef\",\n ref: contentRef,\n class: \"ds-absolute ds-z-10 ds-inline-block ds-rounded-lg ds-bg-black/[0.65] ds-px-3 ds-py-2 ds-text-sm ds-font-medium ds-text-white ds-shadow-sm ds-transition-opacity ds-duration-300\"\n }, [\n _renderSlot(_ctx.$slots, \"default\", {}, undefined, true),\n _hoisted_2\n ], 512)\n ], 512), [\n [_vShow, value.value]\n ])\n ], 64))\n}\n}\n\n})"],"names":["_withScopeId","_pushScopeId","n","_popScopeId","_hoisted_1","_hoisted_2","_createElementVNode","_sfc_main","_defineComponent","BTooltipPosition","BTooltipOpenEvent","__props","__emit","props","emit","toggleRef","ref","contentRef","mValue","value","computed","val","watch","resetContentPosition","ensureContentPosition","clearEventListeners","ensureEventListeners","onClick","onFocus","onFocusOut","onHover","onHoverOut","_a","_b","_c","_d","_e","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_Fragment","_renderSlot","_withDirectives","_vShow"],"mappings":"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"}
@@ -1,145 +1,105 @@
1
- import { defineComponent as R, ref as I, computed as l, watch as f, onMounted as $, openBlock as t, createElementBlock as u, createVNode as M, createElementVNode as m, renderSlot as b, createCommentVNode as n, normalizeClass as N, withKeys as S, createBlock as w, unref as E } from "vue";
2
- import K from "./design-system30.mjs";
3
- import { useValidationField as x } from "./design-system3.mjs";
4
- import z from "./design-system29.mjs";
5
- import { useI18n as D } from "./design-system50.mjs";
6
- import U from "./design-system100.mjs";
7
- import { SupportedLocale as F } from "./design-system5.mjs";
8
- import A from "./design-system99.mjs";
9
- const L = { class: "b-currency-field" }, O = { class: "ds-relative" }, j = {
10
- key: 0,
11
- class: "b-currency-field__prepend-icon ds-absolute ds-left-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t"
12
- }, G = ["id", "autocomplete", "disabled", "placeholder", "readonly", "onKeyup"], H = {
13
- key: 1,
14
- class: "b-currency-field__append-icon ds-absolute ds-right-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t"
15
- }, se = /* @__PURE__ */ R({
16
- __name: "BCurrencyField",
1
+ import { defineComponent as C, ref as v, computed as S, watch as L, onMounted as T, onBeforeUnmount as F, openBlock as H, createElementBlock as R, Fragment as I, createElementVNode as d, renderSlot as _, withDirectives as O, vShow as P, pushScopeId as $, popScopeId as z } from "vue";
2
+ import { BTooltipPosition as c, BTooltipOpenEvent as i } from "./design-system5.mjs";
3
+ const D = (a) => ($("data-v-8e5f01f5"), a = a(), z(), a), M = { class: "ds-relative" }, N = /* @__PURE__ */ D(() => /* @__PURE__ */ d("div", {
4
+ class: "tooltip-arrow",
5
+ "data-popper-arrow": ""
6
+ }, null, -1)), q = /* @__PURE__ */ C({
7
+ __name: "BTooltip",
17
8
  props: {
18
- inputId: { default: "" },
19
- inputCssClass: { default: "" },
20
- modelValue: {},
21
- label: { default: "" },
22
- validationRules: { default: void 0 },
23
- placeholder: { default: "" },
24
- autocomplete: { type: Boolean, default: !1 },
25
- required: { type: Boolean, default: !1 },
26
- requiredErrorMessage: { default: "" },
27
- disabled: { type: Boolean, default: !1 },
28
- readonly: { type: Boolean, default: !1 },
29
- hideDetails: { type: Boolean, default: !1 },
30
- locale: { default: F["vi-VN"] }
9
+ modelValue: { type: Boolean, default: !1 },
10
+ position: { default: c.Top },
11
+ openEvent: { default: i.Hover }
31
12
  },
32
- emits: ["press:enter", "update:modelValue"],
33
- setup(v, { emit: i }) {
34
- const s = v;
35
- let o;
36
- const { t: k } = D(), c = I(null), y = {
37
- validateRule: (e) => !!(e && (e != null && e.trim())),
38
- errorMessage: () => s.requiredErrorMessage || k("ds.global.field_required")
39
- }, a = l(() => s.inputId || `id-${A()}`), d = l({
13
+ emits: ["update:modelValue"],
14
+ setup(a, { emit: w }) {
15
+ const s = a, B = w, t = v(null), o = v(null), p = v(!1), n = S({
40
16
  get() {
41
- return s.modelValue;
17
+ return s.modelValue !== void 0 ? s.modelValue : p.value;
42
18
  },
43
19
  set(e) {
44
- i("update:modelValue", e);
20
+ s.modelValue !== void 0 ? B("update:modelValue", e) : p.value = e;
45
21
  }
46
- }), h = l(() => [
47
- {
48
- "ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]": s.disabled,
49
- "ds-text-black/[0.85]": !s.disabled,
50
- "ds-border-error focus:ds-ring-1 focus:ds-ring-error": !r.value.valid,
51
- "ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus": r.value.valid
52
- },
53
- s.inputCssClass
54
- ]), g = l(() => {
55
- let e = [];
56
- return s.required && e.push(y), s.validationRules && (e = e.concat(s.validationRules)), e.length ? e : void 0;
57
- }), _ = l(
58
- () => s.locale === "en-US" ? {
59
- mask: "$num",
60
- blocks: {
61
- num: {
62
- mask: Number,
63
- thousandsSeparator: " "
64
- }
65
- }
66
- } : [
67
- { mask: "" },
68
- {
69
- mask: "num VND",
70
- lazy: !1,
71
- blocks: {
72
- num: {
73
- mask: Number,
74
- thousandsSeparator: " "
75
- }
76
- }
77
- }
78
- ]
79
- ), { validate: V, validationResult: r } = x(
80
- a.value,
81
- d,
82
- g.value
83
- );
84
- f(
85
- () => s.locale,
22
+ });
23
+ L(
24
+ () => s.position,
86
25
  () => {
87
- p();
26
+ x(), h();
88
27
  }
89
- ), f(
90
- () => s.modelValue,
91
- (e) => {
92
- e != o.unmaskedValue && (o.unmaskedValue = e.toString());
28
+ ), L(
29
+ () => s.openEvent,
30
+ () => {
31
+ g(), b();
93
32
  }
94
33
  );
95
- const C = () => {
96
- V();
97
- }, q = () => {
98
- i("press:enter");
99
- }, B = () => {
100
- d.value = typeof d.value == "number" ? +o.unmaskedValue : o.unmaskedValue;
101
- }, p = () => {
102
- o && o.destroy(), o = U(c.value, _.value), o.on("accept", B);
34
+ const m = () => {
35
+ n.value = !n.value;
36
+ }, f = () => {
37
+ n.value = !0;
38
+ }, V = () => {
39
+ n.value = !1;
40
+ }, E = () => {
41
+ n.value = !0;
42
+ }, k = () => {
43
+ n.value = !1;
44
+ }, x = () => {
45
+ o.value && (o.value.style.top = "", o.value.style.right = "", o.value.style.bottom = "", o.value.style.left = "");
46
+ }, h = () => {
47
+ if (o.value)
48
+ switch (s.position) {
49
+ case c.Bottom:
50
+ o.value.style.top = "4px";
51
+ break;
52
+ case c.Top:
53
+ default:
54
+ o.value.style.bottom = "24px";
55
+ break;
56
+ }
57
+ }, b = () => {
58
+ var e, l, u, r, y;
59
+ switch (s.openEvent) {
60
+ case i.Click:
61
+ (e = t.value) == null || e.addEventListener("click", m);
62
+ break;
63
+ case i.Focus:
64
+ (l = t.value) == null || l.addEventListener("focus", f), (u = t.value) == null || u.addEventListener("focusout", V);
65
+ break;
66
+ case i.Hover:
67
+ default:
68
+ (r = t.value) == null || r.addEventListener("mouseover", E), (y = t.value) == null || y.addEventListener("mouseleave", k);
69
+ break;
70
+ }
71
+ }, g = () => {
72
+ var e, l, u, r;
73
+ (e = t.value) == null || e.removeEventListener("click", m), (l = t.value) == null || l.removeEventListener("focus", f), (u = t.value) == null || u.removeEventListener("mouseover", E), (r = t.value) == null || r.removeEventListener("mouseleave", k);
103
74
  };
104
- return $(() => {
105
- p(), o.unmaskedValue = d.value.toString();
106
- }), (e, J) => (t(), u("div", L, [
107
- M(K, {
108
- id: a.value,
109
- label: e.label,
110
- required: e.required
111
- }, null, 8, ["id", "label", "required"]),
112
- m("div", O, [
113
- e.$slots.prependIcon ? (t(), u("div", j, [
114
- b(e.$slots, "prependIcon", {}, void 0, !0)
115
- ])) : n("", !0),
116
- m("input", {
117
- id: a.value,
118
- ref_key: "inputRef",
119
- ref: c,
120
- autocomplete: s.autocomplete ? "on" : "off",
121
- class: N([h.value, "ds-block ds-h-[40px] ds-w-full ds-rounded-lg ds-border ds-px-3 ds-text-sm ds-drop-shadow-light"]),
122
- disabled: s.disabled,
123
- placeholder: s.placeholder,
124
- readonly: s.readonly,
125
- onKeyup: [
126
- C,
127
- S(q, ["enter"])
128
- ]
129
- }, null, 42, G),
130
- e.$slots.appendIcon ? (t(), u("div", H, [
131
- b(e.$slots, "appendIcon", {}, void 0, !0)
132
- ])) : n("", !0)
133
- ]),
134
- e.hideDetails ? n("", !0) : (t(), w(z, {
135
- key: 0,
136
- "error-message": E(r).errorMessage(),
137
- class: "ds-mt-1"
138
- }, null, 8, ["error-message"]))
139
- ]));
75
+ return T(() => {
76
+ b(), h();
77
+ }), F(() => {
78
+ g();
79
+ }), (e, l) => (H(), R(I, null, [
80
+ d("div", {
81
+ ref_key: "toggleRef",
82
+ ref: t,
83
+ class: "ds-inline"
84
+ }, [
85
+ _(e.$slots, "toggle", {}, void 0, !0)
86
+ ], 512),
87
+ O(d("div", M, [
88
+ d("div", {
89
+ ref_key: "contentRef",
90
+ ref: o,
91
+ class: "ds-absolute ds-z-10 ds-inline-block ds-rounded-lg ds-bg-black/[0.65] ds-px-3 ds-py-2 ds-text-sm ds-font-medium ds-text-white ds-shadow-sm ds-transition-opacity ds-duration-300"
92
+ }, [
93
+ _(e.$slots, "default", {}, void 0, !0),
94
+ N
95
+ ], 512)
96
+ ], 512), [
97
+ [P, n.value]
98
+ ])
99
+ ], 64));
140
100
  }
141
101
  });
142
102
  export {
143
- se as default
103
+ q as default
144
104
  };
145
105
  //# sourceMappingURL=design-system90.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system90.mjs","sources":["../src/components/BCurrencyField.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, renderSlot as _renderSlot, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, withKeys as _withKeys, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, unref as _unref, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5cbc4bba\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"b-currency-field\" }\nconst _hoisted_2 = { class: \"ds-relative\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"b-currency-field__prepend-icon ds-absolute ds-left-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t\"\n}\nconst _hoisted_4 = [\"id\", \"autocomplete\", \"disabled\", \"placeholder\", \"readonly\", \"onKeyup\"]\nconst _hoisted_5 = {\n key: 1,\n class: \"b-currency-field__append-icon ds-absolute ds-right-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t\"\n}\n\nimport BLabel from '@/components/BLabel.vue';\nimport type { ValidationRule } from '@/composables/Validation';\nimport { useValidationField } from '@/composables/Validation';\nimport { computed, onMounted, ref, watch } from 'vue';\nimport { v4 as uuid } from 'uuid';\nimport BErrorMessage from '@/components/BErrorMessage.vue';\nimport { useI18n } from 'vue-i18n';\nimport IMask from '@/vendor/imask-7.1.3.js';\nimport { SupportedLocale } from '@/constants/Enums';\n\n//#region Props\nexport interface BCurrencyFieldProps {\n inputId?: string;\n inputCssClass?: string;\n /**\n * Value can be number or string\n */\n modelValue: number | string;\n label?: string;\n validationRules?: ValidationRule[];\n placeholder?: string;\n autocomplete?: boolean;\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n disabled?: boolean;\n readonly?: boolean;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Locale of the currency\n */\n locale?: `${SupportedLocale}`;\n}\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BCurrencyField',\n props: {\n inputId: { default: '' },\n inputCssClass: { default: '' },\n modelValue: {},\n label: { default: '' },\n validationRules: { default: undefined },\n placeholder: { default: '' },\n autocomplete: { type: Boolean, default: false },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n disabled: { type: Boolean, default: false },\n readonly: { type: Boolean, default: false },\n hideDetails: { type: Boolean, default: false },\n locale: { default: SupportedLocale['vi-VN'] }\n },\n emits: [\"press:enter\", \"update:modelValue\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\n\n//#endregion\n\n//#region Events\n\n//#endregion\n\n//#region Data\nlet mask: any;\nconst { t } = useI18n();\nconst inputRef = ref<HTMLInputElement | null>(null);\nconst validateRequired: ValidationRule = {\n validateRule: (val: string) => !!(val && val?.trim()),\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/[0.4]': 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 maskOptions = computed(() =>\n props.locale === 'en-US'\n ? {\n mask: '$num',\n blocks: {\n num: {\n mask: Number,\n thousandsSeparator: ' ',\n },\n },\n }\n : [\n { mask: '' },\n {\n mask: 'num VND',\n lazy: false,\n blocks: {\n num: {\n mask: Number,\n thousandsSeparator: ' ',\n },\n },\n },\n ],\n);\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n//#endregion\n\n//#region Watchers\nwatch(\n () => props.locale,\n () => {\n initMask();\n },\n);\nwatch(\n () => props.modelValue,\n (val) => {\n if (val != mask.unmaskedValue) {\n mask.unmaskedValue = val.toString();\n }\n },\n);\n//#endregion\n\n//#region Methods\nconst onKeyUp = () => {\n validate();\n};\nconst onKeyUpEnter = () => {\n emit('press:enter');\n};\nconst onAccept = () => {\n value.value =\n typeof value.value === 'number' ? +mask.unmaskedValue : mask.unmaskedValue;\n};\nconst initMask = () => {\n if (mask) {\n mask.destroy();\n }\n mask = IMask(inputRef.value!, maskOptions.value);\n mask.on('accept', onAccept);\n};\n//#endregion\n\n//#region Lifecycle Hooks\nonMounted(() => {\n initMask();\n mask.unmaskedValue = value.value.toString();\n});\n//#endregion\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.$slots.prependIcon)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _renderSlot(_ctx.$slots, \"prependIcon\", {}, undefined, true)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"input\", {\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n autocomplete: props.autocomplete ? 'on' : 'off',\n class: _normalizeClass([inputCssClassValue.value, \"ds-block ds-h-[40px] ds-w-full ds-rounded-lg ds-border ds-px-3 ds-text-sm ds-drop-shadow-light\"]),\n disabled: props.disabled,\n placeholder: props.placeholder,\n readonly: props.readonly,\n onKeyup: [\n onKeyUp,\n _withKeys(onKeyUpEnter, [\"enter\"])\n ]\n }, null, 42, _hoisted_4),\n (_ctx.$slots.appendIcon)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _renderSlot(_ctx.$slots, \"appendIcon\", {}, undefined, true)\n ]))\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 ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_sfc_main","_defineComponent","SupportedLocale","__props","emit","props","mask","t","useI18n","inputRef","ref","validateRequired","val","id","computed","uuid","value","inputCssClassValue","validationResult","vRules","result","maskOptions","validate","useValidationField","watch","initMask","onKeyUp","onKeyUpEnter","onAccept","IMask","onMounted","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_createElementVNode","_renderSlot","_createCommentVNode","_normalizeClass","_withKeys","_createBlock","BErrorMessage","_unref"],"mappings":"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"}
1
+ {"version":3,"file":"design-system90.mjs","sources":["../src/components/BTooltip.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, createElementVNode as _createElementVNode, vShow as _vShow, withDirectives as _withDirectives, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-8e5f01f5\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"ds-relative\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"tooltip-arrow\",\n \"data-popper-arrow\": \"\"\n}, null, -1))\n\nimport { BTooltipOpenEvent, BTooltipPosition } from '@/constants/Enums';\nimport { computed, onBeforeUnmount, onMounted, ref, watch } from 'vue';\n\n//#region Props\nexport interface BTooltipProps {\n modelValue?: boolean;\n /**\n * Position of opened tooltip compare to its toggle.\n */\n position?: `${BTooltipPosition}`;\n /**\n * Event to open tooltip.\n */\n openEvent?: `${BTooltipOpenEvent}`;\n}\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BTooltip',\n props: {\n modelValue: { type: Boolean, default: false },\n position: { default: BTooltipPosition.Top },\n openEvent: { default: BTooltipOpenEvent.Hover }\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { emit: __emit }) {\n\nconst props = __props;\n//#endregion\n\n//#region Events\nconst emit = __emit;\n//#endregion\n\n//region Data\nconst toggleRef = ref<HTMLDivElement | null>(null);\nconst contentRef = ref<HTMLDivElement | null>(null);\nconst mValue = ref(false);\nconst value = computed({\n get() {\n return props.modelValue !== undefined ? props.modelValue : mValue.value;\n },\n set(val: boolean) {\n if (props.modelValue !== undefined) {\n emit('update:modelValue', val);\n } else {\n mValue.value = val;\n }\n },\n});\n//endregion\n\n//region Watchers\nwatch(\n () => props.position,\n () => {\n resetContentPosition();\n ensureContentPosition();\n },\n);\nwatch(\n () => props.openEvent,\n () => {\n clearEventListeners();\n ensureEventListeners();\n },\n);\n//#endregion\n\n//region Methods\nconst onClick = () => {\n value.value = !value.value;\n};\nconst onFocus = () => {\n value.value = true;\n};\nconst onFocusOut = () => {\n value.value = false;\n};\nconst onHover = () => {\n value.value = true;\n};\nconst onHoverOut = () => {\n value.value = false;\n};\nconst resetContentPosition = () => {\n if (!contentRef.value) {\n return;\n }\n contentRef.value.style.top = '';\n contentRef.value.style.right = '';\n contentRef.value.style.bottom = '';\n contentRef.value.style.left = '';\n};\nconst ensureContentPosition = () => {\n if (!contentRef.value) {\n return;\n }\n\n switch (props.position) {\n case BTooltipPosition.Bottom:\n contentRef.value.style.top = '4px';\n break;\n case BTooltipPosition.Top:\n default:\n contentRef.value.style.bottom = '24px';\n break;\n }\n};\nconst ensureEventListeners = () => {\n switch (props.openEvent) {\n case BTooltipOpenEvent.Click:\n toggleRef.value?.addEventListener('click', onClick);\n break;\n case BTooltipOpenEvent.Focus:\n toggleRef.value?.addEventListener('focus', onFocus);\n toggleRef.value?.addEventListener('focusout', onFocusOut);\n break;\n case BTooltipOpenEvent.Hover:\n default:\n toggleRef.value?.addEventListener('mouseover', onHover);\n toggleRef.value?.addEventListener('mouseleave', onHoverOut);\n break;\n }\n};\nconst clearEventListeners = () => {\n toggleRef.value?.removeEventListener('click', onClick);\n toggleRef.value?.removeEventListener('focus', onFocus);\n toggleRef.value?.removeEventListener('mouseover', onHover);\n toggleRef.value?.removeEventListener('mouseleave', onHoverOut);\n};\n//#endregion\n\n//#region Lifecycle Hooks\nonMounted(() => {\n ensureEventListeners();\n ensureContentPosition();\n});\nonBeforeUnmount(() => {\n clearEventListeners();\n});\n//#endregion\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"div\", {\n ref_key: \"toggleRef\",\n ref: toggleRef,\n class: \"ds-inline\"\n }, [\n _renderSlot(_ctx.$slots, \"toggle\", {}, undefined, true)\n ], 512),\n _withDirectives(_createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n ref_key: \"contentRef\",\n ref: contentRef,\n class: \"ds-absolute ds-z-10 ds-inline-block ds-rounded-lg ds-bg-black/[0.65] ds-px-3 ds-py-2 ds-text-sm ds-font-medium ds-text-white ds-shadow-sm ds-transition-opacity ds-duration-300\"\n }, [\n _renderSlot(_ctx.$slots, \"default\", {}, undefined, true),\n _hoisted_2\n ], 512)\n ], 512), [\n [_vShow, value.value]\n ])\n ], 64))\n}\n}\n\n})"],"names":["_withScopeId","_pushScopeId","n","_popScopeId","_hoisted_1","_hoisted_2","_createElementVNode","_sfc_main","_defineComponent","BTooltipPosition","BTooltipOpenEvent","__props","__emit","props","emit","toggleRef","ref","contentRef","mValue","value","computed","val","watch","resetContentPosition","ensureContentPosition","clearEventListeners","ensureEventListeners","onClick","onFocus","onFocusOut","onHover","onHoverOut","_a","_b","_c","_d","_e","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_Fragment","_renderSlot","_withDirectives","_vShow"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),r=require("./design-system99.js"),i={class:"b-switch ds-flex ds-items-center"},c=["id","disabled","value"],p=["for"],m=["for"],f=e.defineComponent({__name:"BSwitch",props:{inputId:{default:""},modelValue:{type:[Boolean,Array],default:!1},label:{default:""},labelOrphan:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(d,{emit:u}){const t=d,a=e.computed(()=>t.inputId||`id-${r()}`),o=e.computed({get(){return t.modelValue},set(l){u("update:modelValue",l)}});return(l,s)=>(e.openBlock(),e.createElementBlock("div",i,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":s[0]||(s[0]=n=>o.value=n),id:a.value,disabled:t.disabled,value:l.$attrs.value,type:"checkbox",class:"b-switch__input"},null,8,c),[[e.vModelCheckbox,o.value]]),e.createElementVNode("label",{for:a.value,class:"b-switch__input-label"},null,8,p),t.label||l.$slots.default?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.labelOrphan?void 0:a.value,class:"ds-ml-2 ds-text-sm ds-font-medium ds-text-gray-900"},[e.renderSlot(l.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)],!0)],8,m)):e.createCommentVNode("",!0)]))}});module.exports=f;
1
+ "use strict";const e=require("vue"),y=require("./design-system4.js"),A=require("./design-system51.js"),k=require("./design-system110.js"),P=require("./design-system47.js"),U=require("./design-system3.js"),H=require("./design-system31.js"),O=require("./design-system11.js"),G=require("./design-system30.js"),J=require("./design-system103.js"),K=require("./design-system106.js"),Q=i=>(e.pushScopeId("data-v-77676d6f"),i=i(),e.popScopeId(),i),W={class:"b-image-picker ds-w-full"},X={class:"ds-gap-2 ds-space-y-4 ds-rounded-lg ds-bg-white ds-p-4 ds-drop-shadow"},Y={key:0,class:"ds-flex ds-flex-wrap ds-justify-center ds-gap-1"},Z=["onClick","onDragenter","onDragstart","onDrop"],ee=["src"],te=["src"],ae={class:"ds-flex ds-flex-wrap ds-justify-center"},le=Q(()=>e.createElementVNode("svg",{class:"ds-absolute -ds-bottom-[3px] ds-left-0 ds-h-4 ds-w-4 ds-fill-primary-t",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M447.1 32h-384C28.64 32-.0091 60.65-.0091 96v320c0 35.35 28.65 64 63.1 64h384c35.35 0 64-28.65 64-64V96C511.1 60.65 483.3 32 447.1 32zM111.1 96c26.51 0 48 21.49 48 48S138.5 192 111.1 192s-48-21.49-48-48S85.48 96 111.1 96zM446.1 407.6C443.3 412.8 437.9 416 432 416H82.01c-6.021 0-11.53-3.379-14.26-8.75c-2.73-5.367-2.215-11.81 1.334-16.68l70-96C142.1 290.4 146.9 288 152 288s9.916 2.441 12.93 6.574l32.46 44.51l93.3-139.1C293.7 194.7 298.7 192 304 192s10.35 2.672 13.31 7.125l128 192C448.6 396 448.9 402.3 446.1 407.6z"})],-1)),se=["accept","multiple"],re=e.defineComponent({__name:"BImagePicker",props:{inputId:{default:""},modelValue:{},label:{default:""},multiple:{type:Boolean,default:!1},maxFileSize:{default:20},hideDetails:{type:Boolean,default:!1},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""},validationRules:{default:void 0}},emits:["change","update:modelValue"],setup(i,{expose:V,emit:w}){const l=i,u=w,{t:g}=A.useI18n(),p=e.ref(null),f=e.ref(0),r=e.computed({get(){return l.modelValue},set(t){u("update:modelValue",t)}}),v=e.ref(!0),m=e.ref(!0),c=e.ref({visible:!1,url:""}),_=e.computed(()=>y.FileImageTypes.join(", ")),B=e.computed(()=>l.inputId||`id-${J()}`),D={validateRule:t=>!!t&&t.length>0,errorMessage:()=>l.requiredErrorMessage||g("ds.global.field_required")},b={validateRule:()=>v.value,errorMessage:()=>g("ds.components.base.image_picker.file_types_valid",{types:_.value})},C={validateRule:()=>m.value,errorMessage:()=>g("ds.components.base.image_picker.file_size_valid",{size:l.maxFileSize})},I=e.computed(()=>{let t=[];return l.required&&t.push(D),l.validationRules&&(t=t.concat(l.validationRules)),t.push(b),t.push(C),t.length?t:void 0}),{validate:d,validationResult:E}=U.useValidationField(B.value,r,I.value),q=(t,a)=>{f.value=t,a.target.classList.add("dragging"),a.dataTransfer.effectAllowed="move",a.dataTransfer.setData("index",t.toString())},x=t=>{t.target.classList.remove("dragging")},N=(t,a)=>{const s=a.target;f.value!==t&&s.classList.add("dropped-target")},F=t=>{t.preventDefault(),t.dataTransfer.dropEffect="move"},S=t=>{t.target.classList.remove("dropped-target")},M=(t,a)=>{a.preventDefault(),a.target.classList.remove("dropped-target");const o=parseInt(a.dataTransfer.getData("index")),n=r.value[o];r.value.splice(o,1),r.value.splice(t,0,n),u("change"),d()},R=()=>{var t;(t=p.value)==null||t.click()},T=t=>{let a=t.target.files||t.dataTransfer.files;a.length&&(z(a),p.value&&(p.value.value=null))},z=t=>{Array.from(t).forEach(a=>{if(v.value=y.FileImageTypes.includes(a.type),m.value=j(a.size)<=l.maxFileSize,v.value&&m.value){let s=new FileReader;s.onload=o=>{l.multiple?r.value.push({url:o.target.result,file:a,type:a.type}):r.value={url:o.target.result,file:a,type:a.type},u("change"),d()},s.readAsDataURL(a)}else d()})},L=t=>{r.value.splice(t,1),u("change"),d()},$=()=>{r.value={},u("change"),d()},j=t=>t/1024**2,h=t=>{c.value.url=t.url||"",c.value.visible=!0};return V({validate:d}),(t,a)=>(e.openBlock(),e.createElementBlock("div",W,[e.createVNode(H,{label:l.label},null,8,["label"]),e.createElementVNode("div",X,[e.unref(K)(r.value)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Y,[l.multiple?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(r.value,(s,o)=>(e.openBlock(),e.createElementBlock("div",{key:s.url,class:"b-image-picker__draggable ds-h-full ds-cursor-pointer ds-rounded-lg ds-transition-all hover:ds-ring-2 hover:ds-ring-primary-t",draggable:"true",onClick:n=>h(s),onDragend:x,onDragenter:n=>N(o,n),onDragleave:S,onDragover:F,onDragstart:n=>q(o,n),onDrop:n=>M(o,n)},[e.createElementVNode("img",{src:s.url,alt:"image",class:"ds-h-full ds-w-full ds-rounded-lg"},null,8,ee),e.createVNode(k,{class:"ds-right-1 ds-top-1 ds-h-8 ds-w-8",onClick:e.withModifiers(n=>L(o),["stop"])},null,8,["onClick"])],40,Z))),128)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"b-image-picker__draggable ds-h-full ds-cursor-pointer ds-rounded-lg ds-transition-all hover:ds-ring-2 hover:ds-ring-primary-t",draggable:"true",onClick:a[0]||(a[0]=s=>h(r.value))},[e.createElementVNode("img",{src:r.value.url,alt:"image",class:"ds-h-full ds-w-full ds-rounded-lg"},null,8,te),e.createVNode(k,{class:"ds-right-1 ds-top-1 ds-h-8 ds-w-8",onClick:e.withModifiers($,["stop"])})]))])),e.createElementVNode("div",ae,[e.createVNode(O,{onClick:R},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.$t("ds.components.base.image_picker.select_image")),1)]),appendIcon:e.withCtx(()=>[le]),_:1}),e.createElementVNode("input",{ref_key:"inputRef",ref:p,accept:_.value,multiple:l.multiple,class:"ds-hidden",type:"file",onChange:T},null,40,se)])]),l.hideDetails?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(G,{key:0,"error-message":e.unref(E).errorMessage(),class:"ds-mt-1"},null,8,["error-message"])),e.createVNode(P,{modelValue:c.value.visible,"onUpdate:modelValue":a[1]||(a[1]=s=>c.value.visible=s),url:c.value.url},null,8,["modelValue","url"])]))}});module.exports=re;
2
2
  //# sourceMappingURL=design-system92.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system92.js","sources":["../src/components/BSwitch.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { vModelCheckbox as _vModelCheckbox, createElementVNode as _createElementVNode, withDirectives as _withDirectives, renderSlot as _renderSlot, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2162502a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"b-switch ds-flex ds-items-center\" }\nconst _hoisted_2 = [\"id\", \"disabled\", \"value\"]\nconst _hoisted_3 = [\"for\"]\nconst _hoisted_4 = [\"for\"]\n\nimport { v4 as uuid } from 'uuid';\nimport { computed } from 'vue';\n\n//#region Props\nexport interface BCheckboxProps {\n inputId?: string;\n modelValue: boolean | Array<string | number>;\n label?: string;\n /**\n * Clicking on label will not turn on/off the switch.\n */\n labelOrphan?: boolean;\n disabled?: boolean;\n}\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BSwitch',\n props: {\n inputId: { default: '' },\n modelValue: { type: [Boolean, Array], default: false },\n label: { default: '' },\n labelOrphan: { type: Boolean, default: false },\n disabled: { type: Boolean, default: false }\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\n\n//#endregion\n\n//#region Events\n\n//#endregion\n\n//#region Data\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});\n//#endregion\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((value).value = $event)),\n id: id.value,\n disabled: props.disabled,\n value: _ctx.$attrs.value,\n type: \"checkbox\",\n class: \"b-switch__input\"\n }, null, 8, _hoisted_2), [\n [_vModelCheckbox, value.value]\n ]),\n _createElementVNode(\"label\", {\n for: id.value,\n class: \"b-switch__input-label\"\n }, null, 8, _hoisted_3),\n (props.label || _ctx.$slots.default)\n ? (_openBlock(), _createElementBlock(\"label\", {\n key: 0,\n for: props.labelOrphan ? undefined : id.value,\n class: \"ds-ml-2 ds-text-sm ds-font-medium ds-text-gray-900\"\n }, [\n _renderSlot(_ctx.$slots, \"default\", {}, () => [\n _createTextVNode(_toDisplayString(props.label), 1)\n ], true)\n ], 8, _hoisted_4))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_sfc_main","_defineComponent","__props","emit","props","id","computed","uuid","value","val","_ctx","_cache","_openBlock","_createElementBlock","_withDirectives","_createElementVNode","$event","_vModelCheckbox","_renderSlot","_createTextVNode","_toDisplayString","_createCommentVNode"],"mappings":"sEAIMA,EAAa,CAAE,MAAO,oCACtBC,EAAa,CAAC,KAAM,WAAY,OAAO,EACvCC,EAAa,CAAC,KAAK,EACnBC,EAAa,CAAC,KAAK,EAkBGC,EAAiBC,kBAAA,CAC3C,OAAQ,UACR,MAAO,CACL,QAAS,CAAE,QAAS,EAAG,EACvB,WAAY,CAAE,KAAM,CAAC,QAAS,KAAK,EAAG,QAAS,EAAM,EACrD,MAAO,CAAE,QAAS,EAAG,EACrB,YAAa,CAAE,KAAM,QAAS,QAAS,EAAM,EAC7C,SAAU,CAAE,KAAM,QAAS,QAAS,EAAM,CAC5C,EACA,MAAO,CAAC,mBAAmB,EAC3B,MAAMC,EAAc,CAAE,KAAAC,GAAQ,CAEhC,MAAMC,EAAQF,EAURG,EAAKC,WAAS,IAAMF,EAAM,SAAW,MAAMG,GAAM,EAAE,EACnDC,EAAQF,EAAAA,SAAS,CACrB,KAAM,CACJ,OAAOF,EAAM,UACf,EACA,IAAIK,EAAK,CACPN,EAAK,oBAAqBM,CAAG,CAC/B,CAAA,CACD,EAGM,MAAA,CAACC,EAAUC,KACRC,YAAW,EAAGC,qBAAoB,MAAOjB,EAAY,CAC3DkB,EAAA,eAAgBC,qBAAoB,QAAS,CAC3C,sBAAuBJ,EAAO,CAAC,IAAMA,EAAO,CAAC,EAAKK,GAAkBR,EAAO,MAAQQ,GACnF,GAAIX,EAAG,MACP,SAAUD,EAAM,SAChB,MAAOM,EAAK,OAAO,MACnB,KAAM,WACN,MAAO,iBAAA,EACN,KAAM,EAAGb,CAAU,EAAG,CACvB,CAACoB,EAAiB,eAAAT,EAAM,KAAK,CAAA,CAC9B,EACDO,EAAAA,mBAAoB,QAAS,CAC3B,IAAKV,EAAG,MACR,MAAO,uBAAA,EACN,KAAM,EAAGP,CAAU,EACrBM,EAAM,OAASM,EAAK,OAAO,SACvBE,YAAW,EAAGC,qBAAoB,QAAS,CAC1C,IAAK,EACL,IAAKT,EAAM,YAAc,OAAYC,EAAG,MACxC,MAAO,oDAAA,EACN,CACDa,EAAAA,WAAYR,EAAK,OAAQ,UAAW,GAAI,IAAM,CAC5CS,EAAAA,gBAAiBC,EAAAA,gBAAiBhB,EAAM,KAAK,EAAG,CAAC,GAChD,EAAI,GACN,EAAGL,CAAU,GAChBsB,EAAAA,mBAAoB,GAAI,EAAI,CAAA,CACjC,EAEH,CAEA,CAAC"}
1
+ {"version":3,"file":"design-system92.js","sources":["../src/components/BImagePicker/BImagePicker.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, withModifiers as _withModifiers, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-77676d6f\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"b-image-picker ds-w-full\" }\nconst _hoisted_2 = { class: \"ds-gap-2 ds-space-y-4 ds-rounded-lg ds-bg-white ds-p-4 ds-drop-shadow\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"ds-flex ds-flex-wrap ds-justify-center ds-gap-1\"\n}\nconst _hoisted_4 = [\"onClick\", \"onDragenter\", \"onDragstart\", \"onDrop\"]\nconst _hoisted_5 = [\"src\"]\nconst _hoisted_6 = [\"src\"]\nconst _hoisted_7 = { class: \"ds-flex ds-flex-wrap ds-justify-center\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"svg\", {\n class: \"ds-absolute -ds-bottom-[3px] ds-left-0 ds-h-4 ds-w-4 ds-fill-primary-t\",\n viewBox: \"0 0 512 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, [\n /*#__PURE__*/_createElementVNode(\"path\", { d: \"M447.1 32h-384C28.64 32-.0091 60.65-.0091 96v320c0 35.35 28.65 64 63.1 64h384c35.35 0 64-28.65 64-64V96C511.1 60.65 483.3 32 447.1 32zM111.1 96c26.51 0 48 21.49 48 48S138.5 192 111.1 192s-48-21.49-48-48S85.48 96 111.1 96zM446.1 407.6C443.3 412.8 437.9 416 432 416H82.01c-6.021 0-11.53-3.379-14.26-8.75c-2.73-5.367-2.215-11.81 1.334-16.68l70-96C142.1 290.4 146.9 288 152 288s9.916 2.441 12.93 6.574l32.46 44.51l93.3-139.1C293.7 194.7 298.7 192 304 192s10.35 2.672 13.31 7.125l128 192C448.6 396 448.9 402.3 446.1 407.6z\" })\n], -1))\nconst _hoisted_9 = [\"accept\", \"multiple\"]\n\nimport { FileImageTypes } from '@/constants/Common';\nimport type { FileItemRead } from '@/types';\nimport { isEmpty } from 'lodash-es';\nimport { v4 as uuid } from 'uuid';\nimport { computed, ref } from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BImagePickerCloseButton from './BImagePickerCloseButton.vue';\nimport ImagePreview from './BImagePreview.vue';\nimport type { ValidationRule } from '@/composables/Validation';\nimport { useValidationField } from '@/composables/Validation';\nimport BLabel from '../BLabel.vue';\nimport BButton from '../BButton.vue';\nimport BErrorMessage from '../BErrorMessage.vue';\n\n//#region Props\nexport interface Props {\n inputId?: string;\n /**\n * Empty object <code>multiple: false</code> or empty array <code>multiple: true</code>.\n */\n modelValue: FileItemRead | FileItemRead[];\n label?: string;\n /**\n * Allow to pick multiple images, v-model expects an array.\n */\n multiple?: boolean;\n /**\n * Maximum file size in MB.\n */\n maxFileSize?: number;\n hideDetails?: boolean;\n required?: boolean;\n requiredErrorMessage?: string;\n validationRules?: ValidationRule[];\n}\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BImagePicker',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n multiple: { type: Boolean, default: false },\n maxFileSize: { default: 20 },\n hideDetails: { type: Boolean, default: false },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n validationRules: { default: undefined }\n },\n emits: [\"change\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit: __emit }) {\n\n// Drag & Drop: https://www.w3schools.com/jsref/event_ondragover.asp\nconst props = __props;\n//#endregion\n\n//#region Events\nconst emit = __emit;\n//#endregion\n\n//#region Data\nconst { t } = useI18n();\nconst inputRef = ref<HTMLInputElement | null>(null);\nconst draggedIndex = ref(0);\nconst value = computed({\n get() {\n return props.modelValue;\n },\n set(val) {\n emit('update:modelValue', val);\n },\n});\nconst fileTypesValid = ref(true);\nconst fileSizeValid = ref(true);\nconst previewImage = ref({\n visible: false,\n url: '',\n});\nconst allowedTypes = computed(() => FileImageTypes.join(', '));\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst validateRequired: ValidationRule = {\n validateRule: (val: FileItemRead[]) => !!val && val.length > 0,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst validateFileTypesValid: ValidationRule = {\n validateRule: () => fileTypesValid.value,\n errorMessage: () =>\n t('ds.components.base.image_picker.file_types_valid', {\n types: allowedTypes.value,\n }),\n};\nconst validateFileSizeValid: ValidationRule = {\n validateRule: () => fileSizeValid.value,\n errorMessage: () =>\n t('ds.components.base.image_picker.file_size_valid', {\n size: props.maxFileSize,\n }),\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 result.push(validateFileTypesValid);\n result.push(validateFileSizeValid);\n\n return result.length ? result : undefined;\n});\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n//#endregion\n\n//#region Methods\n/* Events fired on the drag target */\nconst handleDragStart = (index: number, e: DragEvent) => {\n draggedIndex.value = index;\n const target = e.target as HTMLDivElement;\n target.classList.add('dragging');\n e.dataTransfer!.effectAllowed = 'move';\n e.dataTransfer!.setData('index', index.toString());\n};\nconst handleDragEnd = (e: DragEvent) => {\n const target = e.target as HTMLDivElement;\n target.classList.remove('dragging');\n};\n/* Events fired on the drop target */\nconst handleDragEnter = (index: number, e: DragEvent) => {\n const target = e.target as HTMLDivElement;\n if (draggedIndex.value !== index) {\n target.classList.add('dropped-target');\n }\n};\nconst handleDragOver = (e: DragEvent) => {\n // By default, data/elements cannot be dropped in other elements. To allow a drop, we must prevent the default handling of the element\n e.preventDefault();\n e.dataTransfer!.dropEffect = 'move';\n};\nconst handleDragLeave = (e: DragEvent) => {\n // When the draggable p element leaves the droptarget, reset the style\n const target = e.target as HTMLDivElement;\n target.classList.remove('dropped-target');\n};\nconst handleDrop = (index: number, e: DragEvent) => {\n e.preventDefault();\n const target = e.target as HTMLDivElement;\n target.classList.remove('dropped-target');\n const draggedIndex = parseInt(e.dataTransfer!.getData('index'));\n const draggedImg = (value.value as FileItemRead[])[draggedIndex];\n (value.value as FileItemRead[]).splice(draggedIndex, 1);\n (value.value as FileItemRead[]).splice(index, 0, draggedImg);\n\n emit('change');\n validate();\n};\nconst openFileDialog = () => {\n inputRef.value?.click();\n};\nconst handleChangeInput = (e: any) => {\n let fileList: FileList = e.target.files || e.dataTransfer.files;\n if (!fileList.length) {\n return;\n }\n createFileImages(fileList);\n\n // Clear input's value so onChange event can work for the same files next picks\n if (inputRef.value) {\n inputRef.value.value = null as any;\n }\n};\nconst createFileImages = (fileList: FileList) => {\n Array.from(fileList).forEach((file) => {\n fileTypesValid.value = FileImageTypes.includes(file.type);\n fileSizeValid.value = convertToMB(file.size) <= props.maxFileSize;\n\n if (fileTypesValid.value && fileSizeValid.value) {\n let reader: any = new FileReader();\n\n reader.onload = (f: any) => {\n if (props.multiple) {\n (value.value as FileItemRead[]).push({\n url: f.target.result,\n file,\n type: file.type,\n });\n } else {\n // splice(index, how-many, item1, item2,...);\n value.value = {\n url: f.target.result,\n file,\n type: file.type,\n };\n }\n\n emit('change');\n validate();\n };\n\n reader.readAsDataURL(file);\n } else {\n validate();\n }\n });\n};\nconst removeFileImage = (index: number) => {\n (value.value as FileItemRead[]).splice(index, 1);\n emit('change');\n validate();\n};\nconst removeFileImageSingle = () => {\n value.value = {};\n emit('change');\n validate();\n};\nconst convertToMB = (numberOfBytes: number) => numberOfBytes / 1024 ** 2;\nconst preview = (item: FileItemRead) => {\n previewImage.value.url = item.url || '';\n previewImage.value.visible = true;\n};\n//#endregion\n\n__expose({ validate });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(BLabel, {\n label: props.label\n }, null, 8, [\"label\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n (!_unref(isEmpty)(value.value))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (props.multiple)\n ? (_openBlock(true), _createElementBlock(_Fragment, { key: 0 }, _renderList(value.value as FileItemRead[], (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n key: item.url,\n class: \"b-image-picker__draggable ds-h-full ds-cursor-pointer ds-rounded-lg ds-transition-all hover:ds-ring-2 hover:ds-ring-primary-t\",\n draggable: \"true\",\n onClick: ($event: any) => (preview(item)),\n onDragend: handleDragEnd,\n onDragenter: ($event: any) => (handleDragEnter(index, $event)),\n onDragleave: handleDragLeave,\n onDragover: handleDragOver,\n onDragstart: ($event: any) => (handleDragStart(index, $event)),\n onDrop: ($event: any) => (handleDrop(index, $event))\n }, [\n _createElementVNode(\"img\", {\n src: item.url,\n alt: \"image\",\n class: \"ds-h-full ds-w-full ds-rounded-lg\"\n }, null, 8, _hoisted_5),\n _createVNode(BImagePickerCloseButton, {\n class: \"ds-right-1 ds-top-1 ds-h-8 ds-w-8\",\n onClick: _withModifiers(($event: any) => (removeFileImage(index)), [\"stop\"])\n }, null, 8, [\"onClick\"])\n ], 40, _hoisted_4))\n }), 128))\n : (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: \"b-image-picker__draggable ds-h-full ds-cursor-pointer ds-rounded-lg ds-transition-all hover:ds-ring-2 hover:ds-ring-primary-t\",\n draggable: \"true\",\n onClick: _cache[0] || (_cache[0] = ($event: any) => (preview(value.value as FileItemRead)))\n }, [\n _createElementVNode(\"img\", {\n src: (value.value as FileItemRead).url,\n alt: \"image\",\n class: \"ds-h-full ds-w-full ds-rounded-lg\"\n }, null, 8, _hoisted_6),\n _createVNode(BImagePickerCloseButton, {\n class: \"ds-right-1 ds-top-1 ds-h-8 ds-w-8\",\n onClick: _withModifiers(removeFileImageSingle, [\"stop\"])\n })\n ]))\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_7, [\n _createVNode(BButton, { onClick: openFileDialog }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('ds.components.base.image_picker.select_image')), 1)\n ]),\n appendIcon: _withCtx(() => [\n _hoisted_8\n ]),\n _: 1\n }),\n _createElementVNode(\"input\", {\n ref_key: \"inputRef\",\n ref: inputRef,\n accept: allowedTypes.value,\n multiple: props.multiple,\n class: \"ds-hidden\",\n type: \"file\",\n onChange: handleChangeInput\n }, null, 40, _hoisted_9)\n ])\n ]),\n (!props.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 _createVNode(ImagePreview, {\n modelValue: previewImage.value.visible,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => ((previewImage.value.visible) = $event)),\n url: previewImage.value.url\n }, null, 8, [\"modelValue\", \"url\"])\n ]))\n}\n}\n\n})"],"names":["_withScopeId","_pushScopeId","n","_popScopeId","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_createElementVNode","_hoisted_9","_sfc_main","_defineComponent","__props","__expose","__emit","props","emit","t","useI18n","inputRef","ref","draggedIndex","value","computed","val","fileTypesValid","fileSizeValid","previewImage","allowedTypes","FileImageTypes","id","uuid","validateRequired","validateFileTypesValid","validateFileSizeValid","vRules","result","validate","validationResult","useValidationField","handleDragStart","index","e","handleDragEnd","handleDragEnter","target","handleDragOver","handleDragLeave","handleDrop","draggedImg","openFileDialog","_a","handleChangeInput","fileList","createFileImages","file","convertToMB","reader","f","removeFileImage","removeFileImageSingle","numberOfBytes","preview","item","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_unref","isEmpty","_createCommentVNode","_Fragment","_renderList","$event","BImagePickerCloseButton","_withModifiers","BButton","_withCtx","_createTextVNode","_toDisplayString","_createBlock","BErrorMessage","ImagePreview"],"mappings":"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"}