@7pmlabs/design-system 1.0.10 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (429) hide show
  1. package/README.md +57 -6
  2. package/dist/design-system.css +1 -1
  3. package/dist/design-system.js +66 -60
  4. package/dist/design-system100.js +4 -5
  5. package/dist/design-system100.js.map +1 -1
  6. package/dist/design-system101.js +53 -506
  7. package/dist/design-system101.js.map +1 -1
  8. package/dist/{design-system93.js → design-system102.js} +1 -1
  9. package/dist/design-system102.js.map +1 -0
  10. package/dist/design-system103.js +13 -5
  11. package/dist/design-system103.js.map +1 -1
  12. package/dist/design-system104.js +109 -7
  13. package/dist/design-system104.js.map +1 -1
  14. package/dist/design-system106.js +9 -0
  15. package/dist/design-system106.js.map +1 -0
  16. package/dist/design-system107.js +206 -6
  17. package/dist/design-system107.js.map +1 -1
  18. package/dist/design-system109.js +9 -0
  19. package/dist/design-system109.js.map +1 -0
  20. package/dist/design-system110.js +507 -6
  21. package/dist/design-system110.js.map +1 -1
  22. package/dist/design-system112.js +8 -0
  23. package/dist/design-system112.js.map +1 -0
  24. package/dist/design-system113.js +7 -5
  25. package/dist/design-system113.js.map +1 -1
  26. package/dist/design-system114.js +209 -9
  27. package/dist/design-system114.js.map +1 -1
  28. package/dist/design-system116.js +9 -0
  29. package/dist/design-system116.js.map +1 -0
  30. package/dist/design-system117.js +224 -6
  31. package/dist/design-system117.js.map +1 -1
  32. package/dist/design-system119.js +9 -0
  33. package/dist/design-system119.js.map +1 -0
  34. package/dist/design-system12.js.map +1 -1
  35. package/dist/design-system120.js +163 -5
  36. package/dist/design-system120.js.map +1 -1
  37. package/dist/design-system122.js +5 -90
  38. package/dist/design-system122.js.map +1 -1
  39. package/dist/design-system123.js +12 -0
  40. package/dist/design-system123.js.map +1 -0
  41. package/dist/design-system124.js +274 -5
  42. package/dist/design-system124.js.map +1 -1
  43. package/dist/design-system126.js +9 -0
  44. package/dist/design-system126.js.map +1 -0
  45. package/dist/design-system127.js +16 -5
  46. package/dist/design-system127.js.map +1 -1
  47. package/dist/design-system129.js +8 -0
  48. package/dist/design-system129.js.map +1 -0
  49. package/dist/design-system130.js +12 -5
  50. package/dist/design-system130.js.map +1 -1
  51. package/dist/design-system131.js +76 -137
  52. package/dist/design-system131.js.map +1 -1
  53. package/dist/design-system133.js +1 -1
  54. package/dist/design-system133.js.map +1 -1
  55. package/dist/design-system134.js +37 -90
  56. package/dist/design-system134.js.map +1 -1
  57. package/dist/design-system136.js +1 -1
  58. package/dist/design-system136.js.map +1 -1
  59. package/dist/design-system137.js +226 -20
  60. package/dist/design-system137.js.map +1 -1
  61. package/dist/design-system139.js +4 -5
  62. package/dist/design-system139.js.map +1 -1
  63. package/dist/design-system140.js +151 -9
  64. package/dist/design-system140.js.map +1 -1
  65. package/dist/design-system142.js +3 -2
  66. package/dist/design-system142.js.map +1 -1
  67. package/dist/design-system143.js +93 -19
  68. package/dist/design-system143.js.map +1 -1
  69. package/dist/design-system145.js +5 -158
  70. package/dist/design-system145.js.map +1 -1
  71. package/dist/design-system146.js +12 -0
  72. package/dist/design-system146.js.map +1 -0
  73. package/dist/design-system147.js +37 -5
  74. package/dist/design-system147.js.map +1 -1
  75. package/dist/design-system148.js +4 -307
  76. package/dist/design-system148.js.map +1 -1
  77. package/dist/design-system149.js +24 -0
  78. package/dist/{design-system144.js.map → design-system149.js.map} +1 -1
  79. package/dist/design-system150.js +2 -3
  80. package/dist/design-system150.js.map +1 -1
  81. package/dist/design-system151.js +131 -213
  82. package/dist/design-system151.js.map +1 -1
  83. package/dist/design-system153.js +1 -1
  84. package/dist/design-system153.js.map +1 -1
  85. package/dist/design-system154.js +278 -160
  86. package/dist/design-system154.js.map +1 -1
  87. package/dist/design-system156.js +1 -1
  88. package/dist/design-system156.js.map +1 -1
  89. package/dist/design-system157.js +240 -3
  90. package/dist/design-system157.js.map +1 -1
  91. package/dist/design-system159.js +8 -0
  92. package/dist/design-system159.js.map +1 -0
  93. package/dist/design-system16.js.map +1 -1
  94. package/dist/design-system160.js +189 -6
  95. package/dist/design-system160.js.map +1 -1
  96. package/dist/design-system162.js +8 -0
  97. package/dist/design-system162.js.map +1 -0
  98. package/dist/design-system163.js +3 -6
  99. package/dist/design-system163.js.map +1 -1
  100. package/dist/design-system164.js +46 -57
  101. package/dist/design-system164.js.map +1 -1
  102. package/dist/design-system166.js +2 -2
  103. package/dist/design-system166.js.map +1 -1
  104. package/dist/design-system167.js +44 -170
  105. package/dist/design-system167.js.map +1 -1
  106. package/dist/design-system169.js +2 -2
  107. package/dist/design-system169.js.map +1 -1
  108. package/dist/design-system170.js +55 -101
  109. package/dist/design-system170.js.map +1 -1
  110. package/dist/design-system172.js +5 -4
  111. package/dist/design-system172.js.map +1 -1
  112. package/dist/design-system173.js +182 -11
  113. package/dist/design-system173.js.map +1 -1
  114. package/dist/design-system175.js +9 -0
  115. package/dist/design-system175.js.map +1 -0
  116. package/dist/design-system176.js +115 -6
  117. package/dist/design-system176.js.map +1 -1
  118. package/dist/design-system178.js +8 -0
  119. package/dist/design-system178.js.map +1 -0
  120. package/dist/design-system179.js +11 -5
  121. package/dist/design-system179.js.map +1 -1
  122. package/dist/design-system180.js +444 -70
  123. package/dist/design-system180.js.map +1 -1
  124. package/dist/design-system182.js +5 -4
  125. package/dist/design-system182.js.map +1 -1
  126. package/dist/design-system183.js +21 -21
  127. package/dist/design-system183.js.map +1 -1
  128. package/dist/design-system185.js +1 -1
  129. package/dist/design-system185.js.map +1 -1
  130. package/dist/design-system186.js +85 -25
  131. package/dist/design-system186.js.map +1 -1
  132. package/dist/design-system188.js +1 -1
  133. package/dist/design-system188.js.map +1 -1
  134. package/dist/design-system189.js +7 -5
  135. package/dist/design-system189.js.map +1 -1
  136. package/dist/design-system19.js.map +1 -1
  137. package/dist/design-system191.js +1 -1
  138. package/dist/design-system191.js.map +1 -1
  139. package/dist/design-system192.js +20 -23
  140. package/dist/design-system192.js.map +1 -1
  141. package/dist/design-system194.js +1 -1
  142. package/dist/design-system194.js.map +1 -1
  143. package/dist/design-system195.js +24 -323
  144. package/dist/design-system195.js.map +1 -1
  145. package/dist/design-system197.js +1 -1
  146. package/dist/design-system197.js.map +1 -1
  147. package/dist/design-system198.js +19 -88
  148. package/dist/design-system198.js.map +1 -1
  149. package/dist/design-system200.js +1 -1
  150. package/dist/design-system200.js.map +1 -1
  151. package/dist/design-system201.js +330 -17
  152. package/dist/design-system201.js.map +1 -1
  153. package/dist/design-system203.js +5 -3
  154. package/dist/design-system203.js.map +1 -1
  155. package/dist/design-system204.js +88 -407
  156. package/dist/design-system204.js.map +1 -1
  157. package/dist/design-system206.js +1 -1
  158. package/dist/design-system206.js.map +1 -1
  159. package/dist/design-system207.js +17 -106
  160. package/dist/design-system207.js.map +1 -1
  161. package/dist/{design-system202.js → design-system208.js} +2 -2
  162. package/dist/{design-system202.js.map → design-system208.js.map} +1 -1
  163. package/dist/design-system209.js +3 -6
  164. package/dist/design-system209.js.map +1 -1
  165. package/dist/design-system210.js +403 -90
  166. package/dist/design-system210.js.map +1 -1
  167. package/dist/design-system212.js +4 -5
  168. package/dist/design-system212.js.map +1 -1
  169. package/dist/design-system213.js +45 -723
  170. package/dist/design-system213.js.map +1 -1
  171. package/dist/design-system215.js +1 -1
  172. package/dist/design-system215.js.map +1 -1
  173. package/dist/design-system216.js +88 -11
  174. package/dist/design-system216.js.map +1 -1
  175. package/dist/design-system217.js +4 -525
  176. package/dist/design-system217.js.map +1 -1
  177. package/dist/design-system218.js +111 -0
  178. package/dist/design-system218.js.map +1 -0
  179. package/dist/design-system22.js.map +1 -1
  180. package/dist/design-system220.js +6 -3
  181. package/dist/design-system220.js.map +1 -1
  182. package/dist/design-system221.js +103 -43
  183. package/dist/design-system221.js.map +1 -1
  184. package/dist/design-system223.js +6 -283
  185. package/dist/design-system223.js.map +1 -1
  186. package/dist/design-system224.js +740 -0
  187. package/dist/design-system224.js.map +1 -0
  188. package/dist/design-system226.js +5 -119
  189. package/dist/design-system226.js.map +1 -1
  190. package/dist/{design-system60.js → design-system227.js} +6 -8
  191. package/dist/design-system227.js.map +1 -0
  192. package/dist/design-system228.js +525 -5
  193. package/dist/design-system228.js.map +1 -1
  194. package/dist/{design-system219.js → design-system230.js} +2 -2
  195. package/dist/{design-system219.js.map → design-system230.js.map} +1 -1
  196. package/dist/design-system231.js +3 -5
  197. package/dist/design-system231.js.map +1 -1
  198. package/dist/design-system232.js +42 -50
  199. package/dist/design-system232.js.map +1 -1
  200. package/dist/design-system233.js +1 -1
  201. package/dist/design-system233.js.map +1 -1
  202. package/dist/design-system234.js +254 -141
  203. package/dist/design-system234.js.map +1 -1
  204. package/dist/design-system236.js +1 -1
  205. package/dist/design-system236.js.map +1 -1
  206. package/dist/design-system237.js +119 -7
  207. package/dist/design-system237.js.map +1 -1
  208. package/dist/design-system239.js +8 -0
  209. package/dist/design-system239.js.map +1 -0
  210. package/dist/design-system240.js +112 -5
  211. package/dist/design-system240.js.map +1 -1
  212. package/dist/design-system242.js +8 -0
  213. package/dist/design-system242.js.map +1 -0
  214. package/dist/design-system243.js +54 -6
  215. package/dist/design-system243.js.map +1 -1
  216. package/dist/design-system244.js +4 -7
  217. package/dist/design-system244.js.map +1 -1
  218. package/dist/design-system245.js +139 -343
  219. package/dist/design-system245.js.map +1 -1
  220. package/dist/design-system247.js +4 -5
  221. package/dist/design-system247.js.map +1 -1
  222. package/dist/design-system248.js +10 -0
  223. package/dist/design-system248.js.map +1 -0
  224. package/dist/{design-system238.js → design-system249.js} +2 -2
  225. package/dist/design-system249.js.map +1 -0
  226. package/dist/design-system25.js.map +1 -1
  227. package/dist/design-system251.js +8 -0
  228. package/dist/design-system251.js.map +1 -0
  229. package/dist/{design-system241.js → design-system252.js} +1 -1
  230. package/dist/design-system252.js.map +1 -0
  231. package/dist/design-system254.js +9 -0
  232. package/dist/design-system254.js.map +1 -0
  233. package/dist/design-system255.js +12 -0
  234. package/dist/design-system255.js.map +1 -0
  235. package/dist/design-system256.js +769 -0
  236. package/dist/design-system256.js.map +1 -0
  237. package/dist/design-system258.js +9 -0
  238. package/dist/design-system258.js.map +1 -0
  239. package/dist/design-system259.js +10 -0
  240. package/dist/design-system259.js.map +1 -0
  241. package/dist/design-system260.js +377 -0
  242. package/dist/design-system260.js.map +1 -0
  243. package/dist/design-system262.js +9 -0
  244. package/dist/design-system262.js.map +1 -0
  245. package/dist/design-system28.js.map +1 -1
  246. package/dist/design-system3.js.map +1 -1
  247. package/dist/design-system30.js +21 -138
  248. package/dist/design-system30.js.map +1 -1
  249. package/dist/design-system32.js +5 -4
  250. package/dist/design-system32.js.map +1 -1
  251. package/dist/design-system33.js +488 -14
  252. package/dist/design-system33.js.map +1 -1
  253. package/dist/design-system35.js +1 -1
  254. package/dist/design-system35.js.map +1 -1
  255. package/dist/design-system36.js +135 -17
  256. package/dist/design-system36.js.map +1 -1
  257. package/dist/design-system38.js +1 -1
  258. package/dist/design-system38.js.map +1 -1
  259. package/dist/design-system39.js +16 -11
  260. package/dist/design-system39.js.map +1 -1
  261. package/dist/design-system4.js.map +1 -1
  262. package/dist/design-system41.js +8 -0
  263. package/dist/design-system41.js.map +1 -0
  264. package/dist/design-system42.js +26 -5
  265. package/dist/design-system42.js.map +1 -1
  266. package/dist/design-system44.js +5 -71
  267. package/dist/design-system44.js.map +1 -1
  268. package/dist/design-system45.js +353 -0
  269. package/dist/design-system45.js.map +1 -0
  270. package/dist/design-system47.js +5 -50
  271. package/dist/design-system47.js.map +1 -1
  272. package/dist/design-system48.js +11 -4
  273. package/dist/design-system48.js.map +1 -1
  274. package/dist/design-system49.js +476 -3
  275. package/dist/design-system49.js.map +1 -1
  276. package/dist/design-system51.js +8 -0
  277. package/dist/design-system51.js.map +1 -0
  278. package/dist/design-system52.js +3 -5
  279. package/dist/design-system52.js.map +1 -1
  280. package/dist/design-system53.js +56 -83
  281. package/dist/design-system53.js.map +1 -1
  282. package/dist/design-system55.js +5 -4
  283. package/dist/design-system55.js.map +1 -1
  284. package/dist/design-system56.js +50 -11
  285. package/dist/design-system56.js.map +1 -1
  286. package/dist/design-system57.js +4 -591
  287. package/dist/design-system57.js.map +1 -1
  288. package/dist/design-system58.js +6 -0
  289. package/dist/design-system58.js.map +1 -0
  290. package/dist/design-system59.js +64 -5
  291. package/dist/design-system59.js.map +1 -1
  292. package/dist/design-system61.js +5 -696
  293. package/dist/design-system61.js.map +1 -1
  294. package/dist/design-system62.js +101 -0
  295. package/dist/design-system62.js.map +1 -0
  296. package/dist/design-system64.js +5 -158
  297. package/dist/design-system64.js.map +1 -1
  298. package/dist/design-system65.js +14 -0
  299. package/dist/design-system65.js.map +1 -0
  300. package/dist/design-system66.js +591 -5
  301. package/dist/design-system66.js.map +1 -1
  302. package/dist/design-system68.js +3 -2
  303. package/dist/design-system68.js.map +1 -1
  304. package/dist/design-system69.js +13 -49
  305. package/dist/design-system69.js.map +1 -1
  306. package/dist/design-system7.js.map +1 -1
  307. package/dist/design-system70.js +699 -0
  308. package/dist/{design-system63.js.map → design-system70.js.map} +1 -1
  309. package/dist/design-system72.js +5 -199
  310. package/dist/design-system72.js.map +1 -1
  311. package/dist/design-system73.js +161 -0
  312. package/dist/design-system73.js.map +1 -0
  313. package/dist/design-system75.js +5 -7
  314. package/dist/design-system75.js.map +1 -1
  315. package/dist/design-system76.js +25 -269
  316. package/dist/design-system76.js.map +1 -1
  317. package/dist/design-system77.js +7 -0
  318. package/dist/design-system77.js.map +1 -0
  319. package/dist/design-system78.js +49 -5
  320. package/dist/design-system78.js.map +1 -1
  321. package/dist/{design-system71.js → design-system80.js} +2 -2
  322. package/dist/{design-system71.js.map → design-system80.js.map} +1 -1
  323. package/dist/design-system81.js +199 -5
  324. package/dist/design-system81.js.map +1 -1
  325. package/dist/design-system83.js +5 -99
  326. package/dist/design-system83.js.map +1 -1
  327. package/dist/design-system84.js +10 -0
  328. package/dist/design-system84.js.map +1 -0
  329. package/dist/design-system85.js +273 -5
  330. package/dist/design-system85.js.map +1 -1
  331. package/dist/design-system87.js +8 -0
  332. package/dist/design-system87.js.map +1 -0
  333. package/dist/design-system88.js +57 -5
  334. package/dist/design-system88.js.map +1 -1
  335. package/dist/design-system90.js +8 -0
  336. package/dist/design-system90.js.map +1 -0
  337. package/dist/design-system91.js +11 -5
  338. package/dist/design-system91.js.map +1 -1
  339. package/dist/design-system92.js +98 -53
  340. package/dist/design-system92.js.map +1 -1
  341. package/dist/design-system94.js +5 -13
  342. package/dist/design-system94.js.map +1 -1
  343. package/dist/design-system95.js +61 -104
  344. package/dist/design-system95.js.map +1 -1
  345. package/dist/design-system97.js +4 -5
  346. package/dist/design-system97.js.map +1 -1
  347. package/dist/design-system98.js +80 -198
  348. package/dist/design-system98.js.map +1 -1
  349. package/dist/types/components/BCalendar/BCalendar.spec.d.ts +1 -0
  350. package/dist/types/components/BCalendar/BCalendar.vue.d.ts +114 -0
  351. package/dist/types/components/BCalendar/index.d.ts +2 -0
  352. package/dist/types/components/BCalendar/types.d.ts +54 -0
  353. package/dist/types/components/BCarousel/BCarousel.spec.d.ts +1 -0
  354. package/dist/types/components/BCarousel/BCarousel.vue.d.ts +133 -0
  355. package/dist/types/components/BCarousel/index.d.ts +2 -0
  356. package/dist/types/components/BCarousel/types.d.ts +15 -0
  357. package/dist/types/components/BDivider/types.d.ts +2 -2
  358. package/dist/types/components/BMasonry/types.d.ts +2 -2
  359. package/dist/types/components/BPagination/BPagination.vue.d.ts +1 -1
  360. package/dist/types/components/BStatistic/BStatistic.spec.d.ts +1 -0
  361. package/dist/types/components/BStatistic/BStatistic.vue.d.ts +44 -0
  362. package/dist/types/components/BStatistic/BStatisticTimer.vue.d.ts +50 -0
  363. package/dist/types/components/BStatistic/index.d.ts +3 -0
  364. package/dist/types/components/BStatistic/types.d.ts +6 -0
  365. package/dist/types/components/BTreeSelect/BTreeSelect.spec.d.ts +1 -0
  366. package/dist/types/components/BTreeSelect/BTreeSelect.vue.d.ts +143 -0
  367. package/dist/types/components/BTreeSelect/index.d.ts +2 -0
  368. package/dist/types/components/BTreeSelect/types.d.ts +77 -0
  369. package/dist/types/components/index.d.ts +4 -0
  370. package/dist/types/types.d.ts +3 -0
  371. package/package.json +18 -15
  372. package/dist/design-system105.js +0 -212
  373. package/dist/design-system105.js.map +0 -1
  374. package/dist/design-system108.js +0 -227
  375. package/dist/design-system108.js.map +0 -1
  376. package/dist/design-system111.js +0 -166
  377. package/dist/design-system111.js.map +0 -1
  378. package/dist/design-system115.js +0 -277
  379. package/dist/design-system115.js.map +0 -1
  380. package/dist/design-system118.js +0 -19
  381. package/dist/design-system118.js.map +0 -1
  382. package/dist/design-system121.js +0 -15
  383. package/dist/design-system121.js.map +0 -1
  384. package/dist/design-system125.js +0 -45
  385. package/dist/design-system125.js.map +0 -1
  386. package/dist/design-system128.js +0 -236
  387. package/dist/design-system128.js.map +0 -1
  388. package/dist/design-system141.js +0 -40
  389. package/dist/design-system141.js.map +0 -1
  390. package/dist/design-system144.js +0 -7
  391. package/dist/design-system158.js +0 -61
  392. package/dist/design-system158.js.map +0 -1
  393. package/dist/design-system161.js +0 -59
  394. package/dist/design-system161.js.map +0 -1
  395. package/dist/design-system174.js +0 -465
  396. package/dist/design-system174.js.map +0 -1
  397. package/dist/design-system177.js +0 -38
  398. package/dist/design-system177.js.map +0 -1
  399. package/dist/design-system222.js +0 -7
  400. package/dist/design-system222.js.map +0 -1
  401. package/dist/design-system225.js +0 -8
  402. package/dist/design-system225.js.map +0 -1
  403. package/dist/design-system229.js +0 -115
  404. package/dist/design-system229.js.map +0 -1
  405. package/dist/design-system238.js.map +0 -1
  406. package/dist/design-system241.js.map +0 -1
  407. package/dist/design-system40.js +0 -479
  408. package/dist/design-system40.js.map +0 -1
  409. package/dist/design-system43.js +0 -6
  410. package/dist/design-system43.js.map +0 -1
  411. package/dist/design-system46.js +0 -9
  412. package/dist/design-system46.js.map +0 -1
  413. package/dist/design-system50.js +0 -67
  414. package/dist/design-system50.js.map +0 -1
  415. package/dist/design-system60.js.map +0 -1
  416. package/dist/design-system63.js +0 -8
  417. package/dist/design-system67.js +0 -32
  418. package/dist/design-system67.js.map +0 -1
  419. package/dist/design-system74.js +0 -8
  420. package/dist/design-system74.js.map +0 -1
  421. package/dist/design-system79.js +0 -60
  422. package/dist/design-system79.js.map +0 -1
  423. package/dist/design-system82.js +0 -14
  424. package/dist/design-system82.js.map +0 -1
  425. package/dist/design-system86.js +0 -69
  426. package/dist/design-system86.js.map +0 -1
  427. package/dist/design-system89.js +0 -91
  428. package/dist/design-system89.js.map +0 -1
  429. package/dist/design-system93.js.map +0 -1
@@ -1,67 +0,0 @@
1
- import { BCollapseGroupContextKey as e } from "./design-system49.js";
2
- import { computed as t, createElementBlock as n, defineComponent as r, normalizeClass as i, openBlock as a, provide as o, ref as s, renderSlot as c, watch as l } from "vue";
3
- //#region src/components/BCollapse/BCollapse.vue?vue&type=script&setup=true&lang.ts
4
- var u = /* @__PURE__ */ r({
5
- __name: "BCollapse",
6
- props: {
7
- modelValue: { default: void 0 },
8
- defaultActiveKey: { default: () => [] },
9
- accordion: {
10
- type: Boolean,
11
- default: !1
12
- },
13
- bordered: {
14
- type: Boolean,
15
- default: !0
16
- },
17
- collapsible: { default: void 0 },
18
- destroyInactivePanel: {
19
- type: Boolean,
20
- default: !1
21
- },
22
- expandIconPosition: { default: "start" },
23
- ghost: {
24
- type: Boolean,
25
- default: !1
26
- },
27
- size: { default: "default" }
28
- },
29
- emits: ["update:modelValue", "change"],
30
- setup(r, { emit: u }) {
31
- let d = r, f = u, p = t(() => d.modelValue !== void 0), m = s([...d.defaultActiveKey]), h = t(() => p.value ? d.modelValue ?? [] : m.value);
32
- function g(e) {
33
- p.value || (m.value = e), f("update:modelValue", e), f("change", e);
34
- }
35
- l(() => d.modelValue, (e) => {
36
- e !== void 0 && (m.value = [...e]);
37
- });
38
- function _(e) {
39
- return h.value.includes(e);
40
- }
41
- function v(e) {
42
- let t = [...h.value], n = t.indexOf(e);
43
- d.accordion ? g(n >= 0 ? [] : [e]) : (n >= 0 ? t.splice(n, 1) : t.push(e), g(t));
44
- }
45
- return o(e, {
46
- isActive: _,
47
- toggle: v,
48
- collapsible: t(() => d.collapsible),
49
- expandIconPosition: t(() => d.expandIconPosition),
50
- bordered: t(() => d.bordered),
51
- ghost: t(() => d.ghost),
52
- size: t(() => d.size)
53
- }), (e, t) => (a(), n("div", {
54
- class: i(["b-collapse", {
55
- "b-collapse--bordered": r.bordered,
56
- "b-collapse--borderless": !r.bordered,
57
- "b-collapse--ghost": r.ghost,
58
- "b-collapse--small": r.size === "small"
59
- }]),
60
- role: "presentation"
61
- }, [c(e.$slots, "default")], 2));
62
- }
63
- });
64
- //#endregion
65
- export { u as default };
66
-
67
- //# sourceMappingURL=design-system50.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"design-system50.js","names":[],"sources":["../src/components/BCollapse/BCollapse.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nimport { computed, provide, ref, watch } from 'vue';\nimport {\n BCollapseGroupContextKey,\n type BCollapseCollapsible,\n type BCollapseExpandIconPosition,\n type BCollapseGroupContext,\n type BCollapseSize,\n} from './types';\n\n// ─────────────────────────────────────────────\n// Props\n// ─────────────────────────────────────────────\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'BCollapse',\n props: {\n modelValue: { default: undefined },\n defaultActiveKey: { default: () => [] },\n accordion: { type: Boolean, default: false },\n bordered: { type: Boolean, default: true },\n collapsible: { default: undefined },\n destroyInactivePanel: { type: Boolean, default: false },\n expandIconPosition: { default: 'start' },\n ghost: { type: Boolean, default: false },\n size: { default: 'default' }\n },\n emits: [\"update:modelValue\", \"change\"],\n setup(__props: any, { emit: __emit }) {\n\n/**\n * BCollapse is the group/container component (AntD Collapse equivalent).\n * It manages active keys and provides context to BCollapsePanel children.\n *\n * This is the same component as BCollapseGroup, exported under both names\n * for flexibility. Use BCollapse + BCollapsePanel in new code.\n */\nconst props = __props;\n\nconst emit = __emit;\n\n\n\n// ─────────────────────────────────────────────\n// Active keys state (controlled + uncontrolled)\n// ─────────────────────────────────────────────\nconst isControlled = computed(() => props.modelValue !== undefined);\nconst internalKeys = ref<(string | number)[]>([...props.defaultActiveKey]);\n\nconst activeKeys = computed(() =>\n isControlled.value ? (props.modelValue ?? []) : internalKeys.value,\n);\n\nfunction setActiveKeys(keys: (string | number)[]) {\n if (!isControlled.value) {\n internalKeys.value = keys;\n }\n emit('update:modelValue', keys);\n emit('change', keys);\n}\n\nwatch(\n () => props.modelValue,\n (val) => {\n if (val !== undefined) {\n internalKeys.value = [...val];\n }\n },\n);\n\n// ─────────────────────────────────────────────\n// Context for child panels\n// ─────────────────────────────────────────────\nfunction isActive(key: string | number): boolean {\n return activeKeys.value.includes(key);\n}\n\nfunction toggle(key: string | number) {\n const keys = [...activeKeys.value];\n const idx = keys.indexOf(key);\n\n if (props.accordion) {\n setActiveKeys(idx >= 0 ? [] : [key]);\n } else {\n if (idx >= 0) {\n keys.splice(idx, 1);\n } else {\n keys.push(key);\n }\n setActiveKeys(keys);\n }\n}\n\nconst context: BCollapseGroupContext = {\n isActive,\n toggle,\n collapsible: computed(() => props.collapsible),\n expandIconPosition: computed(() => props.expandIconPosition),\n bordered: computed(() => props.bordered),\n ghost: computed(() => props.ghost),\n size: computed(() => props.size),\n};\n\nprovide(BCollapseGroupContextKey, context);\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"b-collapse\", {\n 'b-collapse--bordered': __props.bordered,\n 'b-collapse--borderless': !__props.bordered,\n 'b-collapse--ghost': __props.ghost,\n 'b-collapse--small': __props.size === 'small',\n }]),\n role: \"presentation\"\n }, [\n _renderSlot(_ctx.$slots, \"default\")\n ], 2))\n}\n}\n\n})"],"mappings":";;;AAgBA,IAAA,IAA4B,kBAAiB;CAC3C,QAAQ;CACR,OAAO;EACL,YAAY,EAAE,SAAS,KAAA,GAAW;EAClC,kBAAkB,EAAE,eAAe,EAAE,EAAE;EACvC,WAAW;GAAE,MAAM;GAAS,SAAS;GAAO;EAC5C,UAAU;GAAE,MAAM;GAAS,SAAS;GAAM;EAC1C,aAAa,EAAE,SAAS,KAAA,GAAW;EACnC,sBAAsB;GAAE,MAAM;GAAS,SAAS;GAAO;EACvD,oBAAoB,EAAE,SAAS,SAAS;EACxC,OAAO;GAAE,MAAM;GAAS,SAAS;GAAO;EACxC,MAAM,EAAE,SAAS,WAAW;EAC7B;CACD,OAAO,CAAC,qBAAqB,SAAS;CACtC,MAAM,GAAc,EAAE,MAAM,KAAU;EASxC,IAAM,IAAQ,GAER,IAAO,GAOP,IAAe,QAAe,EAAM,eAAe,KAAA,EAAU,EAC7D,IAAe,EAAyB,CAAC,GAAG,EAAM,iBAAiB,CAAC,EAEpE,IAAa,QACjB,EAAa,QAAS,EAAM,cAAc,EAAE,GAAI,EAAa,MAC9D;EAED,SAAS,EAAc,GAA2B;AAKhD,GAJK,EAAa,UAChB,EAAa,QAAQ,IAEvB,EAAK,qBAAqB,EAAK,EAC/B,EAAK,UAAU,EAAK;;AAGtB,UACQ,EAAM,aACX,MAAQ;AACP,GAAI,MAAQ,KAAA,MACV,EAAa,QAAQ,CAAC,GAAG,EAAI;IAGlC;EAKD,SAAS,EAAS,GAA+B;AAC/C,UAAO,EAAW,MAAM,SAAS,EAAI;;EAGvC,SAAS,EAAO,GAAsB;GACpC,IAAM,IAAO,CAAC,GAAG,EAAW,MAAM,EAC5B,IAAM,EAAK,QAAQ,EAAI;AAE7B,GAAI,EAAM,YACR,EAAc,KAAO,IAAI,EAAE,GAAG,CAAC,EAAI,CAAC,IAEhC,KAAO,IACT,EAAK,OAAO,GAAK,EAAE,GAEnB,EAAK,KAAK,EAAI,EAEhB,EAAc,EAAK;;AAgBvB,SAFA,EAAQ,GAV+B;GACrC;GACA;GACA,aAAa,QAAe,EAAM,YAAY;GAC9C,oBAAoB,QAAe,EAAM,mBAAmB;GAC5D,UAAU,QAAe,EAAM,SAAS;GACxC,OAAO,QAAe,EAAM,MAAM;GAClC,MAAM,QAAe,EAAM,KAAK;GACjC,CAEyC,GAElC,GAAU,OACR,GAAY,EAAE,EAAoB,OAAO;GAC/C,OAAO,EAAgB,CAAC,cAAc;IACpC,wBAAwB,EAAQ;IAChC,0BAA0B,CAAC,EAAQ;IACnC,qBAAqB,EAAQ;IAC7B,qBAAqB,EAAQ,SAAS;IACvC,CAAC,CAAC;GACH,MAAM;GACP,EAAE,CACD,EAAY,EAAK,QAAQ,UAAU,CACpC,EAAE,EAAE;;CAIN,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"design-system60.js","names":[],"sources":["../src/components/BDatePicker/types.ts"],"sourcesContent":["export enum BDatePickerType {\n Date = 'date',\n Week = 'week',\n Month = 'month',\n Quarter = 'quarter',\n Year = 'year',\n}\n\nexport enum BDatePickerSize {\n Small = 'sm',\n Medium = 'md',\n Large = 'lg',\n}\n\nexport enum BDatePickerVariant {\n Outlined = 'outlined',\n Filled = 'filled',\n Borderless = 'borderless',\n Underlined = 'underlined',\n}\n\nexport enum BDatePickerStatus {\n Error = 'error',\n Warning = 'warning',\n}\n\nexport enum BDatePickerPlacement {\n BottomLeft = 'bottom-left',\n BottomRight = 'bottom-right',\n TopLeft = 'top-left',\n TopRight = 'top-right',\n}\n\nexport interface BDatePickerPreset {\n label: string;\n value: Date | (() => Date);\n}\n\nexport interface BDatePickerDisabledDateInfo {\n type: `${BDatePickerType}`;\n}\n"],"mappings":";AAAA,IAAY,IAAL,yBAAA,GAAA;QACL,EAAA,OAAA,QACA,EAAA,OAAA,QACA,EAAA,QAAA,SACA,EAAA,UAAA,WACA,EAAA,OAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,QAAA,MACA,EAAA,SAAA,MACA,EAAA,QAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,WAAA,YACA,EAAA,SAAA,UACA,EAAA,aAAA,cACA,EAAA,aAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,QAAA,SACA,EAAA,UAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,aAAA,eACA,EAAA,cAAA,gBACA,EAAA,UAAA,YACA,EAAA,WAAA;KACD"}
@@ -1,8 +0,0 @@
1
- import e from "./design-system61.js";
2
- /* empty css */
3
- //#region src/components/BDatePicker/BDatePicker.vue
4
- var t = e;
5
- //#endregion
6
- export { t as default };
7
-
8
- //# sourceMappingURL=design-system63.js.map
@@ -1,32 +0,0 @@
1
- import { createCommentVNode as e, createElementBlock as t, createElementVNode as n, createTextVNode as r, defineComponent as i, normalizeStyle as a, openBlock as o, renderSlot as s, toDisplayString as c, useSlots as l } from "vue";
2
- //#region src/components/BDescriptions/BDescriptionsItem.vue?vue&type=script&setup=true&lang.ts
3
- var u = { class: "b-descriptions-item" }, d = /* @__PURE__ */ i({
4
- __name: "BDescriptionsItem",
5
- props: {
6
- label: {},
7
- span: { default: 1 },
8
- labelStyle: {},
9
- contentStyle: {}
10
- },
11
- setup(i, { expose: d }) {
12
- let f = l();
13
- return d({
14
- label: i.label,
15
- span: i.span,
16
- labelStyle: i.labelStyle,
17
- contentStyle: i.contentStyle,
18
- slots: f
19
- }), (l, d) => (o(), t("div", u, [i.label || l.$slots.label ? (o(), t("span", {
20
- key: 0,
21
- class: "b-descriptions-item__label",
22
- style: a(i.labelStyle)
23
- }, [s(l.$slots, "label", {}, () => [r(c(i.label), 1)])], 4)) : e("", !0), n("span", {
24
- class: "b-descriptions-item__content",
25
- style: a(i.contentStyle)
26
- }, [s(l.$slots, "default")], 4)]));
27
- }
28
- });
29
- //#endregion
30
- export { d as default };
31
-
32
- //# sourceMappingURL=design-system67.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"design-system67.js","names":[],"sources":["../src/components/BDescriptions/BDescriptionsItem.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, normalizeStyle as _normalizeStyle, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"b-descriptions-item\" }\n\nimport type { CSSProperties } from 'vue';\nimport { useSlots } from 'vue';\n\n// ─────────────────────────────────────────────\n// Props\n// ─────────────────────────────────────────────\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'BDescriptionsItem',\n props: {\n label: {},\n span: { default: 1 },\n labelStyle: {},\n contentStyle: {}\n },\n setup(__props: any, { expose: __expose }) {\n\n\n\n// ─────────────────────────────────────────────\n// Slots\n// ─────────────────────────────────────────────\n\n\nconst slots = useSlots();\n\n// Expose props for parent to read\n__expose({ label: __props.label, span: __props.span, labelStyle: __props.labelStyle, contentStyle: __props.contentStyle, slots });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (__props.label || _ctx.$slots.label)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: \"b-descriptions-item__label\",\n style: _normalizeStyle(__props.labelStyle)\n }, [\n _renderSlot(_ctx.$slots, \"label\", {}, () => [\n _createTextVNode(_toDisplayString(__props.label), 1)\n ])\n ], 4))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"span\", {\n class: \"b-descriptions-item__content\",\n style: _normalizeStyle(__props.contentStyle)\n }, [\n _renderSlot(_ctx.$slots, \"default\")\n ], 4)\n ]))\n}\n}\n\n})"],"mappings":";;AAGA,IAAM,IAAa,EAAE,OAAO,uBAAuB,EASnD,IAA4B,kBAAiB;CAC3C,QAAQ;CACR,OAAO;EACL,OAAO,EAAE;EACT,MAAM,EAAE,SAAS,GAAG;EACpB,YAAY,EAAE;EACd,cAAc,EAAE;EACjB;CACD,MAAM,GAAc,EAAE,QAAQ,KAAY;EAS5C,IAAM,IAAQ,GAAU;AAKxB,SAFA,EAAS;GAAE,OAAO,EAAQ;GAAO,MAAM,EAAQ;GAAM,YAAY,EAAQ;GAAY,cAAc,EAAQ;GAAc;GAAO,CAAC,GAEzH,GAAU,OACR,GAAY,EAAE,EAAoB,OAAO,GAAY,CAC1D,EAAQ,SAAS,EAAK,OAAO,SACzB,GAAY,EAAE,EAAoB,QAAQ;GACzC,KAAK;GACL,OAAO;GACP,OAAO,EAAgB,EAAQ,WAAW;GAC3C,EAAE,CACD,EAAY,EAAK,QAAQ,SAAS,EAAE,QAAQ,CAC1C,EAAiB,EAAiB,EAAQ,MAAM,EAAE,EAAE,CACrD,CAAC,CACH,EAAE,EAAE,IACL,EAAoB,IAAI,GAAK,EACjC,EAAoB,QAAQ;GAC1B,OAAO;GACP,OAAO,EAAgB,EAAQ,aAAa;GAC7C,EAAE,CACD,EAAY,EAAK,QAAQ,UAAU,CACpC,EAAE,EAAE,CACN,CAAC;;CAIH,CAAA"}
@@ -1,8 +0,0 @@
1
- import e from "./design-system72.js";
2
- /* empty css */
3
- //#region src/components/BDrawer/BDrawer.vue
4
- var t = e;
5
- //#endregion
6
- export { t as default };
7
-
8
- //# sourceMappingURL=design-system74.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"design-system74.js","names":[],"sources":["../src/components/BDrawer/BDrawer.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { BDrawerPlacement, BDrawerSize } from '@/types';\nimport { computed, nextTick, onBeforeUnmount, ref, useId, watch } from 'vue';\n\n// ─────────────────────────────────────────────\n// Props & emits\n// ─────────────────────────────────────────────\nconst {\n placement = 'right',\n size = 'default',\n title = '',\n closable = true,\n mask = true,\n maskClosable = true,\n keyboard = true,\n destroyOnClose = false,\n width,\n height,\n zIndex = 1000,\n getContainer,\n autoFocus = true,\n modelValue = undefined,\n forceRender = false,\n extra = '',\n footer = '',\n loading = false,\n ariaLabel,\n} = defineProps<{\n /** Direction from which the drawer slides in. */\n placement?: BDrawerPlacement;\n /** Preset width/height: 'default' (378px) or 'large' (736px). */\n size?: BDrawerSize;\n /** Drawer title. Also accepts the `title` slot. */\n title?: string;\n /** Whether to show the close button. */\n closable?: boolean;\n /** Whether to show the mask overlay. */\n mask?: boolean;\n /** Clicking the mask closes the drawer. */\n maskClosable?: boolean;\n /** Pressing Escape closes the drawer. */\n keyboard?: boolean;\n /** Destroy child components when closing. */\n destroyOnClose?: boolean;\n /** Custom width (overrides size) for left/right placement. */\n width?: string | number;\n /** Custom height (overrides size) for top/bottom placement. */\n height?: string | number;\n /** z-index of the drawer. */\n zIndex?: number;\n /**\n * CSS selector or element to teleport the drawer into.\n * Defaults to `body`.\n */\n getContainer?: string | HTMLElement;\n /** Whether to auto-focus the first focusable element when opened. */\n autoFocus?: boolean;\n /**\n * Controlled visibility - bind with `v-model`.\n * When not provided the drawer manages its own state.\n */\n modelValue?: boolean;\n /** Force render the drawer content even when hidden. */\n forceRender?: boolean;\n /** Extra content in the header right area (also accepts the `extra` slot). */\n extra?: string;\n /** Footer content (also accepts the `footer` slot). */\n footer?: string;\n /** Show loading spinner in body area. */\n loading?: boolean;\n /**\n * Accessible label for the dialog when no visible title is present.\n * Required when `closable=false` and no `title` prop or `#title` slot is used.\n */\n ariaLabel?: string;\n}>();\n\nconst emit = defineEmits<{\n /** Fired when the user requests to close the drawer. */\n (e: 'close', event: MouseEvent | KeyboardEvent): void;\n /** Fired after the close transition completes. */\n (e: 'afterOpenChange', open: boolean): void;\n /** v-model support */\n (e: 'update:modelValue', value: boolean): void;\n}>();\n\nconst slots = defineSlots<{\n /** Main content of the drawer. */\n default?(): unknown;\n /** Overrides the `title` prop. */\n title?(): unknown;\n /** Overrides the `extra` prop (right side of header). */\n extra?(): unknown;\n /** Overrides the `footer` prop. */\n footer?(): unknown;\n /** Custom close icon. */\n closeIcon?(): unknown;\n}>();\n\n// ─────────────────────────────────────────────\n// Internal state\n// ─────────────────────────────────────────────\nconst titleId = useId();\n\n/** Uncontrolled visibility. */\nconst internalOpen = ref(false);\n\n/** Effective visibility. */\nconst isOpen = computed(() => (modelValue !== undefined ? modelValue : internalOpen.value));\n\n/** Whether the drawer has ever been opened (for lazy rendering). */\nconst hasBeenOpened = ref(false);\n\n/** Whether the content should render. */\nconst shouldRender = computed(() => {\n if (forceRender) return true;\n if (destroyOnClose) return isOpen.value;\n return hasBeenOpened.value || isOpen.value;\n});\n\n// Track when drawer opens at least once\nwatch(isOpen, (val) => {\n if (val) hasBeenOpened.value = true;\n});\n\n// ─────────────────────────────────────────────\n// Derived state\n// ─────────────────────────────────────────────\nconst isHorizontal = computed(() => placement === 'left' || placement === 'right');\n\nconst sizeMap: Record<BDrawerSize, number> = {\n default: 378,\n large: 736,\n};\n\nconst resolvedWidth = computed(() => {\n if (width !== undefined) return typeof width === 'number' ? `${width}px` : width;\n return isHorizontal.value ? `${sizeMap[size]}px` : '100%';\n});\n\nconst resolvedHeight = computed(() => {\n if (height !== undefined) return typeof height === 'number' ? `${height}px` : height;\n return !isHorizontal.value ? `${sizeMap[size]}px` : '100%';\n});\n\nconst hasTitle = computed(() => Boolean(title || slots.title));\nconst hasExtra = computed(() => Boolean(extra || slots.extra));\nconst hasFooter = computed(() => Boolean(footer || slots.footer));\nconst hasHeader = computed(() => hasTitle.value || closable || hasExtra.value);\n\nconst teleportTarget = computed(() => {\n if (getContainer) return getContainer;\n return 'body';\n});\n\nconst panelStyle = computed(() => ({\n width: resolvedWidth.value,\n height: resolvedHeight.value,\n zIndex,\n}));\n\n// ─────────────────────────────────────────────\n// Focus management\n// ─────────────────────────────────────────────\nconst drawerRef = ref<HTMLElement | null>(null);\nlet previouslyFocusedElement: HTMLElement | null = null;\n\nfunction trapFocus(event: KeyboardEvent) {\n if (event.key !== 'Tab' || !drawerRef.value) return;\n\n const focusableSelectors =\n 'a[href], button:not([disabled]), textarea:not([disabled]), input:not([disabled]), select:not([disabled]), [tabindex]:not([tabindex=\"-1\"])';\n const focusable = Array.from(drawerRef.value.querySelectorAll<HTMLElement>(focusableSelectors));\n\n if (focusable.length === 0) {\n event.preventDefault();\n return;\n }\n\n const first = focusable[0];\n const last = focusable[focusable.length - 1];\n\n if (event.shiftKey) {\n if (document.activeElement === first) {\n event.preventDefault();\n last.focus();\n }\n } else {\n if (document.activeElement === last) {\n event.preventDefault();\n first.focus();\n }\n }\n}\n\nfunction focusFirst() {\n if (!autoFocus || !drawerRef.value) return;\n\n nextTick(() => {\n if (!drawerRef.value) return;\n const focusableSelectors =\n 'a[href], button:not([disabled]), textarea:not([disabled]), input:not([disabled]), select:not([disabled]), [tabindex]:not([tabindex=\"-1\"])';\n const first = drawerRef.value.querySelector<HTMLElement>(focusableSelectors);\n if (first) {\n first.focus();\n } else {\n // Focus the panel itself as a fallback\n drawerRef.value.focus();\n }\n });\n}\n\nwatch(isOpen, (val) => {\n if (val) {\n previouslyFocusedElement = document.activeElement as HTMLElement | null;\n nextTick(() => focusFirst());\n document.body.style.overflow = 'hidden';\n } else {\n document.body.style.overflow = '';\n }\n});\n\nonBeforeUnmount(() => {\n document.body.style.overflow = '';\n});\n\n// ─────────────────────────────────────────────\n// Behaviour\n// ─────────────────────────────────────────────\nfunction requestClose(event: MouseEvent | KeyboardEvent) {\n emit('close', event);\n if (modelValue !== undefined) {\n emit('update:modelValue', false);\n } else {\n internalOpen.value = false;\n }\n}\n\nfunction onMaskClick(event: MouseEvent) {\n if (maskClosable) {\n requestClose(event);\n }\n}\n\nfunction onKeydown(event: KeyboardEvent) {\n if (event.key === 'Escape' && keyboard) {\n event.stopPropagation();\n requestClose(event);\n }\n trapFocus(event);\n}\n\nfunction onAfterEnter() {\n emit('afterOpenChange', true);\n}\n\nfunction onAfterLeave() {\n emit('afterOpenChange', false);\n // Restore focus to the previously focused element\n if (previouslyFocusedElement && typeof previouslyFocusedElement.focus === 'function') {\n previouslyFocusedElement.focus();\n previouslyFocusedElement = null;\n }\n}\n\n// ─────────────────────────────────────────────\n// Public API\n// ─────────────────────────────────────────────\nfunction open() {\n if (modelValue !== undefined) {\n emit('update:modelValue', true);\n } else {\n internalOpen.value = true;\n }\n}\n\ndefineExpose({ open });\n</script>\n\n<template>\n <Teleport :to=\"teleportTarget\">\n <Transition name=\"b-drawer\" @after-enter=\"onAfterEnter\" @after-leave=\"onAfterLeave\">\n <div\n v-if=\"isOpen\"\n class=\"b-drawer-root\"\n :class=\"`b-drawer-root--${placement}`\"\n :style=\"{ zIndex }\"\n >\n <!-- Mask -->\n <div v-if=\"mask\" class=\"b-drawer__mask\" aria-hidden=\"true\" @click=\"onMaskClick\" />\n\n <!-- Panel -->\n <div\n ref=\"drawerRef\"\n class=\"b-drawer\"\n :class=\"[\n `b-drawer--${placement}`,\n `b-drawer--${size}`,\n {\n 'b-drawer--has-header': hasHeader,\n 'b-drawer--has-footer': hasFooter,\n },\n ]\"\n role=\"dialog\"\n aria-modal=\"true\"\n :aria-label=\"!hasTitle ? ariaLabel : undefined\"\n :aria-labelledby=\"hasTitle ? titleId : undefined\"\n :style=\"panelStyle\"\n tabindex=\"-1\"\n @keydown=\"onKeydown\"\n >\n <!-- Header -->\n <div v-if=\"hasHeader\" class=\"b-drawer__header\">\n <div class=\"b-drawer__header-title-wrapper\">\n <!-- Close button -->\n <button\n v-if=\"closable\"\n type=\"button\"\n class=\"b-drawer__close\"\n aria-label=\"Close drawer\"\n @click=\"requestClose\"\n >\n <slot name=\"closeIcon\">\n <svg\n class=\"b-drawer__close-icon\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n focusable=\"false\"\n >\n <path\n d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\n />\n </svg>\n </slot>\n </button>\n\n <!-- Title -->\n <div v-if=\"hasTitle\" :id=\"titleId\" class=\"b-drawer__title\">\n <slot name=\"title\">{{ title }}</slot>\n </div>\n </div>\n\n <!-- Extra -->\n <div v-if=\"hasExtra\" class=\"b-drawer__extra\">\n <slot name=\"extra\">{{ extra }}</slot>\n </div>\n </div>\n\n <!-- Body -->\n <div v-if=\"shouldRender\" class=\"b-drawer__body\">\n <div v-if=\"loading\" class=\"b-drawer__loading\" aria-live=\"polite\">\n <svg\n class=\"b-drawer__spinner\"\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-hidden=\"true\"\n focusable=\"false\"\n >\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-dasharray=\"31.4 31.4\"\n stroke-linecap=\"round\"\n />\n </svg>\n <span class=\"b-drawer__loading-text\">Loading…</span>\n </div>\n <slot v-else />\n </div>\n\n <!-- Footer -->\n <div v-if=\"hasFooter\" class=\"b-drawer__footer\">\n <slot name=\"footer\">{{ footer }}</slot>\n </div>\n </div>\n </div>\n </Transition>\n </Teleport>\n</template>\n\n<style>\n/* ────────────────────────────────────────────\n CSS Custom Properties (tokens)\n ──────────────────────────────────────────── */\n.b-drawer-root {\n --b-drawer-bg: #fff;\n --b-drawer-color: oklch(25% 0 0);\n --b-drawer-mask-bg: rgba(0, 0, 0, 0.45);\n --b-drawer-border-color: oklch(90% 0 0);\n --b-drawer-header-padding: 1rem 1.5rem;\n --b-drawer-body-padding: 1.5rem;\n --b-drawer-footer-padding: 0.5rem 1rem;\n --b-drawer-close-color: oklch(40% 0 0);\n --b-drawer-close-hover-color: oklch(20% 0 0);\n --b-drawer-title-font-size: 1rem;\n --b-drawer-title-font-weight: 600;\n --b-drawer-title-line-height: 1.5;\n --b-drawer-transition-duration: 300ms;\n --b-drawer-shadow:\n -6px 0 16px 0 rgba(0, 0, 0, 0.08), -3px 0 6px -4px rgba(0, 0, 0, 0.12),\n -9px 0 28px 8px rgba(0, 0, 0, 0.05);\n}\n\n/* ── Dark mode ── */\n[data-prefers-color='dark'] .b-drawer-root {\n --b-drawer-bg: oklch(20% 0 0);\n --b-drawer-color: oklch(90% 0 0);\n --b-drawer-mask-bg: rgba(0, 0, 0, 0.65);\n --b-drawer-border-color: oklch(30% 0 0);\n --b-drawer-close-color: oklch(65% 0 0);\n --b-drawer-close-hover-color: oklch(90% 0 0);\n --b-drawer-shadow:\n -6px 0 16px 0 rgba(0, 0, 0, 0.24), -3px 0 6px -4px rgba(0, 0, 0, 0.36),\n -9px 0 28px 8px rgba(0, 0, 0, 0.2);\n}\n\n@media (prefers-color-scheme: dark) {\n [data-prefers-color='system'] .b-drawer-root {\n --b-drawer-bg: oklch(20% 0 0);\n --b-drawer-color: oklch(90% 0 0);\n --b-drawer-mask-bg: rgba(0, 0, 0, 0.65);\n --b-drawer-border-color: oklch(30% 0 0);\n --b-drawer-close-color: oklch(65% 0 0);\n --b-drawer-close-hover-color: oklch(90% 0 0);\n --b-drawer-shadow:\n -6px 0 16px 0 rgba(0, 0, 0, 0.24), -3px 0 6px -4px rgba(0, 0, 0, 0.36),\n -9px 0 28px 8px rgba(0, 0, 0, 0.2);\n }\n}\n\n/* ─────────────────────────────────────────────\n Root wrapper (mask + panel)\n ───────────────────────────────────────────── */\n.b-drawer-root {\n position: fixed;\n inset: 0;\n}\n\n/* ── Mask ── */\n.b-drawer__mask {\n position: absolute;\n inset: 0;\n background: var(--b-drawer-mask-bg);\n}\n\n/* ── Panel base ── */\n.b-drawer {\n position: absolute;\n display: flex;\n flex-direction: column;\n background: var(--b-drawer-bg);\n color: var(--b-drawer-color);\n box-shadow: var(--b-drawer-shadow);\n outline: none;\n box-sizing: border-box;\n overflow: hidden;\n}\n\n/* Placement positioning */\n.b-drawer--right {\n top: 0;\n right: 0;\n bottom: 0;\n}\n\n.b-drawer--left {\n top: 0;\n left: 0;\n bottom: 0;\n}\n\n.b-drawer--top {\n top: 0;\n left: 0;\n right: 0;\n}\n\n.b-drawer--bottom {\n bottom: 0;\n left: 0;\n right: 0;\n}\n\n/* ── Header ── */\n.b-drawer__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: var(--b-drawer-header-padding);\n border-bottom: 1px solid var(--b-drawer-border-color);\n flex-shrink: 0;\n}\n\n.b-drawer__header-title-wrapper {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n min-width: 0;\n flex: 1;\n}\n\n.b-drawer__title {\n font-size: var(--b-drawer-title-font-size);\n font-weight: var(--b-drawer-title-font-weight);\n line-height: var(--b-drawer-title-line-height);\n color: var(--b-drawer-color);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.b-drawer__extra {\n flex-shrink: 0;\n}\n\n/* ── Close button ── */\n.b-drawer__close {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n border: none;\n border-radius: 0.25rem;\n background: transparent;\n color: var(--b-drawer-close-color);\n cursor: pointer;\n width: 1.375rem;\n height: 1.375rem;\n font-size: 1rem;\n line-height: 1;\n transition: color var(--b-drawer-transition-duration) ease;\n}\n\n.b-drawer__close:hover {\n color: var(--b-drawer-close-hover-color);\n}\n\n.b-drawer__close:focus-visible {\n outline: 2px solid oklch(62.3% 0.214 259.815);\n outline-offset: 2px;\n}\n\n.b-drawer__close-icon {\n width: 1em;\n height: 1em;\n fill: currentColor;\n display: block;\n}\n\n/* ── Body ── */\n.b-drawer__body {\n flex: 1;\n padding: var(--b-drawer-body-padding);\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n/* ── Footer ── */\n.b-drawer__footer {\n flex-shrink: 0;\n padding: var(--b-drawer-footer-padding);\n border-top: 1px solid var(--b-drawer-border-color);\n}\n\n/* ── Loading spinner ── */\n.b-drawer__loading {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 0.75rem;\n padding: 2rem;\n color: var(--b-drawer-close-color);\n}\n\n.b-drawer__spinner {\n width: 2rem;\n height: 2rem;\n animation: b-drawer-spin 1s linear infinite;\n}\n\n.b-drawer__loading-text {\n font-size: 0.875rem;\n}\n\n@keyframes b-drawer-spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\n/* ─────────────────────────────────────────────\n Slide transitions\n ─────────────────────────────────────────────\n Vue's <Transition> adds .b-drawer-{enter|leave}-* classes\n to the root element (.b-drawer-root). We target the\n children (.b-drawer and .b-drawer__mask) from there.\n ───────────────────────────────────────────── */\n\n/*\n * Vue's <Transition> listens for `transitionend` on the root element\n * (.b-drawer-root) to know when the leave animation finishes.\n * We must put a real transition on the root itself so that event fires.\n * We use `visibility` which is invisible to the user but gives Vue\n * the transitionend signal it needs.\n */\n.b-drawer-enter-active,\n.b-drawer-leave-active {\n transition: visibility var(--b-drawer-transition-duration) linear;\n}\n\n.b-drawer-leave-to {\n visibility: hidden;\n}\n\n/* - Active phase: set transition on children - */\n.b-drawer-enter-active > .b-drawer,\n.b-drawer-leave-active > .b-drawer {\n transition: transform var(--b-drawer-transition-duration) cubic-bezier(0.7, 0.3, 0.1, 1);\n}\n\n.b-drawer-enter-active > .b-drawer__mask,\n.b-drawer-leave-active > .b-drawer__mask {\n transition: opacity var(--b-drawer-transition-duration) ease;\n}\n\n/* - From / To: mask fades - */\n.b-drawer-enter-from > .b-drawer__mask,\n.b-drawer-leave-to > .b-drawer__mask {\n opacity: 0;\n}\n\n/* - From / To: panel slides (right) - */\n.b-drawer-enter-from > .b-drawer--right,\n.b-drawer-leave-to > .b-drawer--right {\n transform: translateX(100%);\n}\n\n/* - From / To: panel slides (left) - */\n.b-drawer-enter-from > .b-drawer--left,\n.b-drawer-leave-to > .b-drawer--left {\n transform: translateX(-100%);\n}\n\n/* - From / To: panel slides (top) - */\n.b-drawer-enter-from > .b-drawer--top,\n.b-drawer-leave-to > .b-drawer--top {\n transform: translateY(-100%);\n}\n\n/* - From / To: panel slides (bottom) - */\n.b-drawer-enter-from > .b-drawer--bottom,\n.b-drawer-leave-to > .b-drawer--bottom {\n transform: translateY(100%);\n}\n\n/* ── Reduced motion ── */\n@media (prefers-reduced-motion: reduce) {\n .b-drawer-enter-active,\n .b-drawer-leave-active,\n .b-drawer-enter-active > .b-drawer,\n .b-drawer-leave-active > .b-drawer,\n .b-drawer-enter-active > .b-drawer__mask,\n .b-drawer-leave-active > .b-drawer__mask {\n transition-duration: 0ms;\n }\n\n .b-drawer__spinner {\n animation: none;\n }\n}\n</style>\n"],"mappings":""}
@@ -1,60 +0,0 @@
1
- import { BEmptyImage as e } from "./design-system3.js";
2
- import { computed as t, createCommentVNode as n, createElementBlock as r, createElementVNode as i, createStaticVNode as a, createTextVNode as o, defineComponent as s, normalizeClass as c, normalizeStyle as l, openBlock as u, renderSlot as d, toDisplayString as f, unref as p, useSlots as m } from "vue";
3
- //#region src/components/BEmpty/BEmpty.vue?vue&type=script&setup=true&lang.ts
4
- var h = ["aria-label"], g = {
5
- key: 0,
6
- class: "b-empty__svg b-empty__svg--default",
7
- viewBox: "0 0 184 152",
8
- xmlns: "http://www.w3.org/2000/svg",
9
- "aria-hidden": "true",
10
- focusable: "false"
11
- }, _ = {
12
- key: 1,
13
- class: "b-empty__svg b-empty__svg--simple",
14
- viewBox: "0 0 64 41",
15
- xmlns: "http://www.w3.org/2000/svg",
16
- "aria-hidden": "true",
17
- focusable: "false"
18
- }, v = ["src"], y = {
19
- key: 0,
20
- class: "b-empty__description"
21
- }, b = {
22
- key: 1,
23
- class: "b-empty__footer"
24
- }, x = /* @__PURE__ */ s({
25
- __name: "BEmpty",
26
- props: {
27
- description: { default: "No data" },
28
- hideDescription: {
29
- type: Boolean,
30
- default: !1
31
- },
32
- image: { default: e.Default },
33
- imageStyle: {}
34
- },
35
- setup(s) {
36
- let x = s, S = m(), C = t(() => x.image === e.Simple), w = t(() => x.image === e.Default || x.image === e.Simple), T = t(() => !w.value && typeof x.image == "string" && x.image.length > 0), E = t(() => S.description ? !0 : !x.hideDescription), D = t(() => x.description);
37
- return (t, s) => (u(), r("div", {
38
- class: c(["b-empty", { "b-empty--simple": C.value }]),
39
- role: "status",
40
- "aria-label": x.description || "No data"
41
- }, [
42
- i("div", {
43
- class: "b-empty__image",
44
- style: l(x.imageStyle)
45
- }, [d(t.$slots, "image", {}, () => [x.image === p(e).Default ? (u(), r("svg", g, [...s[0] ||= [a("<g fill=\"none\" fill-rule=\"evenodd\"><g transform=\"translate(24 31.67)\"><ellipse class=\"b-empty__ellipse\" cx=\"67.797\" cy=\"106.89\" rx=\"67.797\" ry=\"12.668\"></ellipse><path class=\"b-empty__path-bg\" d=\"M122.034 69.674L98.109 40.229c-1.148-1.386-2.826-2.225-4.593-2.225h-51.44c-1.766 0-3.444.839-4.592 2.225L13.56 69.674v15.383h108.475V69.674z\"></path><path class=\"b-empty__path-main\" d=\"M101.537 86.214L80.63 61.102c-1.001-1.207-2.507-1.867-4.048-1.867H31.724c-1.54 0-3.047.66-4.048 1.867L6.769 86.214v13.792h94.768V86.214z\" transform=\"translate(13.56)\"></path><path class=\"b-empty__path-front\" d=\"M33.83 0h67.933a4 4 0 014 4v93.344H29.83V4a4 4 0 014-4z\"></path><path class=\"b-empty__path-panel\" d=\"M42.678 9.953h50.237a2 2 0 012 2V36.91h-54.237V11.953a2 2 0 012-2zM42.94 49.767h49.713a2.262 2.262 0 110 4.524H42.94a2.262 2.262 0 110-4.524zM42.94 61.53h49.713a2.262 2.262 0 110 4.525H42.94a2.262 2.262 0 010-4.525zM121.813 105.032c-.775 3.071-3.497 5.36-6.735 5.36H20.515c-3.238 0-5.96-2.29-6.734-5.36a7.309 7.309 0 01-.222-1.79V69.675h26.318c2.907 0 5.25 2.448 5.25 5.42v.04c0 2.971 2.37 5.37 5.277 5.37h34.785c2.907 0 5.277-2.421 5.277-5.393 0-2.972 2.343-5.426 5.25-5.426h26.318v33.569c0 .617-.077 1.216-.221 1.789z\"></path></g><path class=\"b-empty__path-dot\" d=\"M149.121 33.292l-6.83 2.65a1 1 0 01-1.317-1.23l1.937-6.207c-2.589-2.944-4.109-6.534-4.109-10.408C138.802 8.102 148.92 0 161.402 0 173.881 0 184 8.102 184 18.097c0 9.995-10.118 18.097-22.599 18.097-4.528 0-8.744-1.066-12.28-2.902z\"></path><g class=\"b-empty__path-dots-group\" transform=\"translate(149.65 15.383)\"><ellipse cx=\"20.654\" cy=\"3.167\" rx=\"2.849\" ry=\"2.815\"></ellipse><path d=\"M5.698 5.63H0L2.898.704zM9.259.704h4.985V5.63H9.259z\"></path></g></g>", 1)]])) : x.image === p(e).Simple ? (u(), r("svg", _, [...s[1] ||= [a("<g transform=\"translate(0 1)\" fill=\"none\" fill-rule=\"evenodd\"><ellipse class=\"b-empty__simple-ellipse\" cx=\"32\" cy=\"33\" rx=\"32\" ry=\"7\"></ellipse><g class=\"b-empty__simple-group\" fill-rule=\"nonzero\"><path d=\"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46V12.76z\"></path><path class=\"b-empty__simple-inner\" d=\"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\"></path></g></g>", 1)]])) : T.value ? (u(), r("img", {
46
- key: 2,
47
- src: x.image,
48
- alt: "",
49
- class: "b-empty__custom-image",
50
- "aria-hidden": "true"
51
- }, null, 8, v)) : n("", !0)])], 4),
52
- E.value ? (u(), r("div", y, [d(t.$slots, "description", {}, () => [o(f(D.value), 1)])])) : n("", !0),
53
- S.default ? (u(), r("div", b, [d(t.$slots, "default")])) : n("", !0)
54
- ], 10, h));
55
- }
56
- });
57
- //#endregion
58
- export { x as default };
59
-
60
- //# sourceMappingURL=design-system79.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"design-system79.js","names":[],"sources":["../src/components/BEmpty/BEmpty.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { useSlots as _useSlots, defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, unref as _unref, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, normalizeStyle as _normalizeStyle, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, createStaticVNode as _createStaticVNode } from \"vue\"\n\nconst _hoisted_1 = [\"aria-label\"]\nconst _hoisted_2 = {\n key: 0,\n class: \"b-empty__svg b-empty__svg--default\",\n viewBox: \"0 0 184 152\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"aria-hidden\": \"true\",\n focusable: \"false\"\n}\nconst _hoisted_3 = {\n key: 1,\n class: \"b-empty__svg b-empty__svg--simple\",\n viewBox: \"0 0 64 41\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"aria-hidden\": \"true\",\n focusable: \"false\"\n}\nconst _hoisted_4 = [\"src\"]\nconst _hoisted_5 = {\n key: 0,\n class: \"b-empty__description\"\n}\nconst _hoisted_6 = {\n key: 1,\n class: \"b-empty__footer\"\n}\n\nimport { BEmptyImage } from '@/types.ts';\nimport { computed } from 'vue';\n\n// ─────────────────────────────────────────────\n// Props\n// ─────────────────────────────────────────────\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'BEmpty',\n props: {\n description: { default: 'No data' },\n hideDescription: { type: Boolean, default: false },\n image: { default: BEmptyImage.Default },\n imageStyle: {}\n },\n setup(__props: any) {\n\nconst props = __props;\n\n// ─────────────────────────────────────────────\n// Slots\n// ─────────────────────────────────────────────\nconst slots = _useSlots();\n\n// ─────────────────────────────────────────────\n// Derived state\n// ─────────────────────────────────────────────\nconst isSimple = computed(() => props.image === BEmptyImage.Simple);\n\nconst isBuiltInImage = computed(\n () => props.image === BEmptyImage.Default || props.image === BEmptyImage.Simple,\n);\n\nconst isCustomUrl = computed(\n () => !isBuiltInImage.value && typeof props.image === 'string' && props.image.length > 0,\n);\n\nconst showDescription = computed(() => {\n if (slots.description) return true;\n return !props.hideDescription;\n});\n\nconst descriptionText = computed(() => {\n return props.description;\n});\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"b-empty\", { 'b-empty--simple': isSimple.value }]),\n role: \"status\",\n \"aria-label\": props.description || 'No data'\n }, [\n _createElementVNode(\"div\", {\n class: \"b-empty__image\",\n style: _normalizeStyle(props.imageStyle)\n }, [\n _renderSlot(_ctx.$slots, \"image\", {}, () => [\n (props.image === _unref(BEmptyImage).Default)\n ? (_openBlock(), _createElementBlock(\"svg\", _hoisted_2, [...(_cache[0] || (_cache[0] = [\n _createStaticVNode(\"<g fill=\\\"none\\\" fill-rule=\\\"evenodd\\\"><g transform=\\\"translate(24 31.67)\\\"><ellipse class=\\\"b-empty__ellipse\\\" cx=\\\"67.797\\\" cy=\\\"106.89\\\" rx=\\\"67.797\\\" ry=\\\"12.668\\\"></ellipse><path class=\\\"b-empty__path-bg\\\" d=\\\"M122.034 69.674L98.109 40.229c-1.148-1.386-2.826-2.225-4.593-2.225h-51.44c-1.766 0-3.444.839-4.592 2.225L13.56 69.674v15.383h108.475V69.674z\\\"></path><path class=\\\"b-empty__path-main\\\" d=\\\"M101.537 86.214L80.63 61.102c-1.001-1.207-2.507-1.867-4.048-1.867H31.724c-1.54 0-3.047.66-4.048 1.867L6.769 86.214v13.792h94.768V86.214z\\\" transform=\\\"translate(13.56)\\\"></path><path class=\\\"b-empty__path-front\\\" d=\\\"M33.83 0h67.933a4 4 0 014 4v93.344H29.83V4a4 4 0 014-4z\\\"></path><path class=\\\"b-empty__path-panel\\\" d=\\\"M42.678 9.953h50.237a2 2 0 012 2V36.91h-54.237V11.953a2 2 0 012-2zM42.94 49.767h49.713a2.262 2.262 0 110 4.524H42.94a2.262 2.262 0 110-4.524zM42.94 61.53h49.713a2.262 2.262 0 110 4.525H42.94a2.262 2.262 0 010-4.525zM121.813 105.032c-.775 3.071-3.497 5.36-6.735 5.36H20.515c-3.238 0-5.96-2.29-6.734-5.36a7.309 7.309 0 01-.222-1.79V69.675h26.318c2.907 0 5.25 2.448 5.25 5.42v.04c0 2.971 2.37 5.37 5.277 5.37h34.785c2.907 0 5.277-2.421 5.277-5.393 0-2.972 2.343-5.426 5.25-5.426h26.318v33.569c0 .617-.077 1.216-.221 1.789z\\\"></path></g><path class=\\\"b-empty__path-dot\\\" d=\\\"M149.121 33.292l-6.83 2.65a1 1 0 01-1.317-1.23l1.937-6.207c-2.589-2.944-4.109-6.534-4.109-10.408C138.802 8.102 148.92 0 161.402 0 173.881 0 184 8.102 184 18.097c0 9.995-10.118 18.097-22.599 18.097-4.528 0-8.744-1.066-12.28-2.902z\\\"></path><g class=\\\"b-empty__path-dots-group\\\" transform=\\\"translate(149.65 15.383)\\\"><ellipse cx=\\\"20.654\\\" cy=\\\"3.167\\\" rx=\\\"2.849\\\" ry=\\\"2.815\\\"></ellipse><path d=\\\"M5.698 5.63H0L2.898.704zM9.259.704h4.985V5.63H9.259z\\\"></path></g></g>\", 1)\n ]))]))\n : (props.image === _unref(BEmptyImage).Simple)\n ? (_openBlock(), _createElementBlock(\"svg\", _hoisted_3, [...(_cache[1] || (_cache[1] = [\n _createStaticVNode(\"<g transform=\\\"translate(0 1)\\\" fill=\\\"none\\\" fill-rule=\\\"evenodd\\\"><ellipse class=\\\"b-empty__simple-ellipse\\\" cx=\\\"32\\\" cy=\\\"33\\\" rx=\\\"32\\\" ry=\\\"7\\\"></ellipse><g class=\\\"b-empty__simple-group\\\" fill-rule=\\\"nonzero\\\"><path d=\\\"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46V12.76z\\\"></path><path class=\\\"b-empty__simple-inner\\\" d=\\\"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\\\"></path></g></g>\", 1)\n ]))]))\n : (isCustomUrl.value)\n ? (_openBlock(), _createElementBlock(\"img\", {\n key: 2,\n src: props.image,\n alt: \"\",\n class: \"b-empty__custom-image\",\n \"aria-hidden\": \"true\"\n }, null, 8, _hoisted_4))\n : _createCommentVNode(\"\", true)\n ])\n ], 4),\n (showDescription.value)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _renderSlot(_ctx.$slots, \"description\", {}, () => [\n _createTextVNode(_toDisplayString(descriptionText.value), 1)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (slots.default)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _renderSlot(_ctx.$slots, \"default\")\n ]))\n : _createCommentVNode(\"\", true)\n ], 10, _hoisted_1))\n}\n}\n\n})"],"mappings":";;;AAGA,IAAM,IAAa,CAAC,aAAa,EAC3B,IAAa;CACjB,KAAK;CACL,OAAO;CACP,SAAS;CACT,OAAO;CACP,eAAe;CACf,WAAW;CACZ,EACK,IAAa;CACjB,KAAK;CACL,OAAO;CACP,SAAS;CACT,OAAO;CACP,eAAe;CACf,WAAW;CACZ,EACK,IAAa,CAAC,MAAM,EACpB,IAAa;CACjB,KAAK;CACL,OAAO;CACR,EACK,IAAa;CACjB,KAAK;CACL,OAAO;CACR,EASD,IAA4B,kBAAiB;CAC3C,QAAQ;CACR,OAAO;EACL,aAAa,EAAE,SAAS,WAAW;EACnC,iBAAiB;GAAE,MAAM;GAAS,SAAS;GAAO;EAClD,OAAO,EAAE,SAAS,EAAY,SAAS;EACvC,YAAY,EAAE;EACf;CACD,MAAM,GAAc;EAEtB,IAAM,IAAQ,GAKR,IAAQ,GAAW,EAKnB,IAAW,QAAe,EAAM,UAAU,EAAY,OAAO,EAE7D,IAAiB,QACf,EAAM,UAAU,EAAY,WAAW,EAAM,UAAU,EAAY,OAC1E,EAEK,IAAc,QACZ,CAAC,EAAe,SAAS,OAAO,EAAM,SAAU,YAAY,EAAM,MAAM,SAAS,EACxF,EAEK,IAAkB,QAClB,EAAM,cAAoB,KACvB,CAAC,EAAM,gBACd,EAEI,IAAkB,QACf,EAAM,YACb;AAEF,UAAQ,GAAU,OACR,GAAY,EAAE,EAAoB,OAAO;GAC/C,OAAO,EAAgB,CAAC,WAAW,EAAE,mBAAmB,EAAS,OAAO,CAAC,CAAC;GAC1E,MAAM;GACN,cAAc,EAAM,eAAe;GACpC,EAAE;GACD,EAAoB,OAAO;IACzB,OAAO;IACP,OAAO,EAAgB,EAAM,WAAW;IACzC,EAAE,CACD,EAAY,EAAK,QAAQ,SAAS,EAAE,QAAQ,CACzC,EAAM,UAAU,EAAO,EAAY,CAAC,WAChC,GAAY,EAAE,EAAoB,OAAO,GAAY,CAAC,GAAI,AAAc,EAAO,OAAK,CACnF,EAAmB,yuDAAyuD,EAAE,CAC/vD,CAAG,CAAC,IACJ,EAAM,UAAU,EAAO,EAAY,CAAC,UAClC,GAAY,EAAE,EAAoB,OAAO,GAAY,CAAC,GAAI,AAAc,EAAO,OAAK,CACnF,EAAmB,uoBAAuoB,EAAE,CAC7pB,CAAG,CAAC,IACJ,EAAY,SACV,GAAY,EAAE,EAAoB,OAAO;IACxC,KAAK;IACL,KAAK,EAAM;IACX,KAAK;IACL,OAAO;IACP,eAAe;IAChB,EAAE,MAAM,GAAG,EAAW,IACvB,EAAoB,IAAI,GAAK,CACtC,CAAC,CACH,EAAE,EAAE;GACJ,EAAgB,SACZ,GAAY,EAAE,EAAoB,OAAO,GAAY,CACpD,EAAY,EAAK,QAAQ,eAAe,EAAE,QAAQ,CAChD,EAAiB,EAAiB,EAAgB,MAAM,EAAE,EAAE,CAC7D,CAAC,CACH,CAAC,IACF,EAAoB,IAAI,GAAK;GAChC,EAAM,WACF,GAAY,EAAE,EAAoB,OAAO,GAAY,CACpD,EAAY,EAAK,QAAQ,UAAU,CACpC,CAAC,IACF,EAAoB,IAAI,GAAK;GAClC,EAAE,IAAI,EAAW;;CAInB,CAAA"}
@@ -1,14 +0,0 @@
1
- //#region src/components/BFloatButton/types.ts
2
- var e = /* @__PURE__ */ function(e) {
3
- return e.Circle = "circle", e.Square = "square", e;
4
- }({}), t = /* @__PURE__ */ function(e) {
5
- return e.Default = "default", e.Primary = "primary", e;
6
- }({}), n = /* @__PURE__ */ function(e) {
7
- return e.Click = "click", e.Hover = "hover", e;
8
- }({}), r = /* @__PURE__ */ function(e) {
9
- return e.Top = "top", e.Right = "right", e.Bottom = "bottom", e.Left = "left", e;
10
- }({});
11
- //#endregion
12
- export { r as BFloatButtonGroupPlacement, e as BFloatButtonShape, n as BFloatButtonTrigger, t as BFloatButtonType };
13
-
14
- //# sourceMappingURL=design-system82.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"design-system82.js","names":[],"sources":["../src/components/BFloatButton/types.ts"],"sourcesContent":["export enum BFloatButtonShape {\n Circle = 'circle',\n Square = 'square',\n}\n\nexport enum BFloatButtonType {\n Default = 'default',\n Primary = 'primary',\n}\n\nexport enum BFloatButtonTrigger {\n Click = 'click',\n Hover = 'hover',\n}\n\nexport enum BFloatButtonGroupPlacement {\n Top = 'top',\n Right = 'right',\n Bottom = 'bottom',\n Left = 'left',\n}\n\nexport interface BFloatButtonBadgeProps {\n /** Badge count number */\n count?: number;\n /** Whether to show badge even when count is 0 */\n showZero?: boolean;\n /** Max count to display before showing overflow text */\n overflowCount?: number;\n /** Show a red dot instead of a count */\n dot?: boolean;\n /** Custom badge text color */\n color?: string;\n}\n"],"mappings":";AAAA,IAAY,IAAL,yBAAA,GAAA;QACL,EAAA,SAAA,UACA,EAAA,SAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,UAAA,WACA,EAAA,UAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,QAAA,SACA,EAAA,QAAA;KACD,EAEW,IAAL,yBAAA,GAAA;QACL,EAAA,MAAA,OACA,EAAA,QAAA,SACA,EAAA,SAAA,UACA,EAAA,OAAA;KACD"}
@@ -1,69 +0,0 @@
1
- import { BFloatButtonShape as e, BFloatButtonType as t } from "./design-system82.js";
2
- import n from "./design-system85.js";
3
- import { Transition as r, createBlock as i, createCommentVNode as a, createElementVNode as o, defineComponent as s, onBeforeUnmount as c, onMounted as l, openBlock as u, ref as d, renderSlot as f, unref as p, withCtx as m } from "vue";
4
- //#region src/components/BFloatButton/BFloatButtonBackTop.vue?vue&type=script&setup=true&lang.ts
5
- var h = /* @__PURE__ */ s({
6
- __name: "BFloatButtonBackTop",
7
- props: {
8
- duration: { default: 450 },
9
- target: { type: Function },
10
- visibilityHeight: { default: 400 },
11
- shape: { default: () => e.Circle },
12
- type: { default: () => t.Default }
13
- },
14
- emits: ["click"],
15
- setup(e, { emit: t }) {
16
- let s = t, h = d(!1), g = window;
17
- function _() {
18
- return g === window ? window.scrollY : g.scrollTop;
19
- }
20
- function v() {
21
- h.value = _() > e.visibilityHeight;
22
- }
23
- function y(e) {
24
- return e < .5 ? 4 * e * e * e : 1 - (-2 * e + 2) ** 3 / 2;
25
- }
26
- function b() {
27
- let t = performance.now(), n = _();
28
- function r(i) {
29
- let a = i - t, o = Math.min(a / e.duration, 1), s = n * (1 - y(o));
30
- g === window ? window.scrollTo(0, s) : g.scrollTop = s, o < 1 && requestAnimationFrame(r);
31
- }
32
- requestAnimationFrame(r);
33
- }
34
- function x(e) {
35
- b(), s("click", e);
36
- }
37
- l(() => {
38
- g = e.target?.() ?? window, g.addEventListener("scroll", v, { passive: !0 }), v();
39
- }), c(() => {
40
- g.removeEventListener("scroll", v);
41
- });
42
- let S = h;
43
- return (t, s) => (u(), i(r, { name: "b-float-button-backtop" }, {
44
- default: m(() => [p(S) ? (u(), i(n, {
45
- key: 0,
46
- shape: e.shape,
47
- type: e.type,
48
- "aria-label": "Back to top",
49
- class: "b-float-button-backtop",
50
- onClick: x
51
- }, {
52
- icon: m(() => [f(t.$slots, "default", {}, () => [s[0] ||= o("svg", {
53
- width: "1em",
54
- height: "1em",
55
- viewBox: "0 0 24 24",
56
- fill: "currentColor",
57
- "aria-hidden": "true",
58
- focusable: "false"
59
- }, [o("path", { d: "M4 12l1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8-8 8z" })], -1)])]),
60
- _: 3
61
- }, 8, ["shape", "type"])) : a("", !0)]),
62
- _: 3
63
- }));
64
- }
65
- });
66
- //#endregion
67
- export { h as default };
68
-
69
- //# sourceMappingURL=design-system86.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"design-system86.js","names":[],"sources":["../src/components/BFloatButton/BFloatButtonBackTop.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, renderSlot as _renderSlot, createElementVNode as _createElementVNode, openBlock as _openBlock, withCtx as _withCtx, createBlock as _createBlock, createCommentVNode as _createCommentVNode, Transition as _Transition } from \"vue\"\n\nimport { onBeforeUnmount, onMounted, ref } from 'vue';\nimport BFloatButton from './BFloatButton.vue';\nimport { BFloatButtonShape, BFloatButtonType } from './types.ts';\n\n// ─────────────────────────────────────────────\n// Props & emits\n// ─────────────────────────────────────────────\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'BFloatButtonBackTop',\n props: {\n duration: { default: 450 },\n target: { type: Function },\n visibilityHeight: { default: 400 },\n shape: { default: () => (BFloatButtonShape.Circle) },\n type: { default: () => (BFloatButtonType.Default) }\n },\n emits: [\"click\"],\n setup(__props: any, { emit: __emit }) {\n\n\n\nconst emit = __emit;\n\n\n\n// ─────────────────────────────────────────────\n// Scroll logic\n// ─────────────────────────────────────────────\nconst visible = ref(false);\nlet scrollContainer: HTMLElement | Window = window;\n\nfunction getScrollTop(): number {\n if (scrollContainer === window) return window.scrollY;\n return (scrollContainer as HTMLElement).scrollTop;\n}\n\nfunction onScroll() {\n visible.value = getScrollTop() > __props.visibilityHeight;\n}\n\nfunction easeInOutCubic(t: number): number {\n return t < 0.5 ? 4 * t * t * t : 1 - Math.pow(-2 * t + 2, 3) / 2;\n}\n\nfunction scrollToTop() {\n const startTime = performance.now();\n const startTop = getScrollTop();\n\n function step(now: number) {\n const elapsed = now - startTime;\n const progress = Math.min(elapsed / __props.duration, 1);\n const eased = easeInOutCubic(progress);\n const newTop = startTop * (1 - eased);\n\n if (scrollContainer === window) {\n window.scrollTo(0, newTop);\n } else {\n (scrollContainer as HTMLElement).scrollTop = newTop;\n }\n\n if (progress < 1) {\n requestAnimationFrame(step);\n }\n }\n\n requestAnimationFrame(step);\n}\n\nfunction handleClick(event: MouseEvent) {\n scrollToTop();\n emit('click', event);\n}\n\nonMounted(() => {\n scrollContainer = __props.target?.() ?? window;\n scrollContainer.addEventListener('scroll', onScroll, { passive: true });\n onScroll();\n});\n\nonBeforeUnmount(() => {\n scrollContainer.removeEventListener('scroll', onScroll);\n});\n\nconst isVisible = visible;\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createBlock(_Transition, { name: \"b-float-button-backtop\" }, {\n default: _withCtx(() => [\n (_unref(isVisible))\n ? (_openBlock(), _createBlock(BFloatButton, {\n key: 0,\n shape: __props.shape,\n type: __props.type,\n \"aria-label\": \"Back to top\",\n class: \"b-float-button-backtop\",\n onClick: handleClick\n }, {\n icon: _withCtx(() => [\n _renderSlot(_ctx.$slots, \"default\", {}, () => [\n _cache[0] || (_cache[0] = _createElementVNode(\"svg\", {\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"currentColor\",\n \"aria-hidden\": \"true\",\n focusable: \"false\"\n }, [\n _createElementVNode(\"path\", { d: \"M4 12l1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8-8 8z\" })\n ], -1))\n ])\n ]),\n _: 3\n }, 8, [\"shape\", \"type\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 3\n }))\n}\n}\n\n})"],"mappings":";;;;AAWA,IAAA,IAA4B,kBAAiB;CAC3C,QAAQ;CACR,OAAO;EACL,UAAU,EAAE,SAAS,KAAK;EAC1B,QAAQ,EAAE,MAAM,UAAU;EAC1B,kBAAkB,EAAE,SAAS,KAAK;EAClC,OAAO,EAAE,eAAgB,EAAkB,QAAS;EACpD,MAAM,EAAE,eAAgB,EAAiB,SAAU;EACpD;CACD,OAAO,CAAC,QAAQ;CAChB,MAAM,GAAc,EAAE,MAAM,KAAU;EAIxC,IAAM,IAAO,GAOP,IAAU,EAAI,GAAM,EACtB,IAAwC;EAE5C,SAAS,IAAuB;AAE9B,UADI,MAAoB,SAAe,OAAO,UACtC,EAAgC;;EAG1C,SAAS,IAAW;AAClB,KAAQ,QAAQ,GAAc,GAAG,EAAQ;;EAG3C,SAAS,EAAe,GAAmB;AACzC,UAAO,IAAI,KAAM,IAAI,IAAI,IAAI,IAAI,KAAa,KAAK,IAAI,MAAG,IAAK;;EAGjE,SAAS,IAAc;GACrB,IAAM,IAAY,YAAY,KAAK,EAC7B,IAAW,GAAc;GAE/B,SAAS,EAAK,GAAa;IACzB,IAAM,IAAU,IAAM,GAChB,IAAW,KAAK,IAAI,IAAU,EAAQ,UAAU,EAAE,EAElD,IAAS,KAAY,IADb,EAAe,EAAS;AAStC,IANI,MAAoB,SACtB,OAAO,SAAS,GAAG,EAAO,GAEzB,EAAgC,YAAY,GAG3C,IAAW,KACb,sBAAsB,EAAK;;AAI/B,yBAAsB,EAAK;;EAG7B,SAAS,EAAY,GAAmB;AAEtC,GADA,GAAa,EACb,EAAK,SAAS,EAAM;;AAStB,EANA,QAAgB;AAGd,GAFA,IAAkB,EAAQ,UAAU,IAAI,QACxC,EAAgB,iBAAiB,UAAU,GAAU,EAAE,SAAS,IAAM,CAAC,EACvE,GAAU;IACV,EAEF,QAAsB;AACpB,KAAgB,oBAAoB,UAAU,EAAS;IACvD;EAEF,IAAM,IAAY;AAElB,UAAQ,GAAU,OACR,GAAY,EAAE,EAAa,GAAa,EAAE,MAAM,0BAA0B,EAAE;GAClF,SAAS,QAAe,CACrB,EAAO,EAAU,IACb,GAAY,EAAE,EAAa,GAAc;IACxC,KAAK;IACL,OAAO,EAAQ;IACf,MAAM,EAAQ;IACd,cAAc;IACd,OAAO;IACP,SAAS;IACV,EAAE;IACD,MAAM,QAAe,CACnB,EAAY,EAAK,QAAQ,WAAW,EAAE,QAAQ,CAC5C,AAAc,EAAO,OAAK,EAAoB,OAAO;KACnD,OAAO;KACP,QAAQ;KACR,SAAS;KACT,MAAM;KACN,eAAe;KACf,WAAW;KACZ,EAAE,CACD,EAAoB,QAAQ,EAAE,GAAG,+DAA+D,CAAC,CAClG,EAAE,GAAG,CACP,CAAC,CACH,CAAC;IACF,GAAG;IACJ,EAAE,GAAG,CAAC,SAAS,OAAO,CAAC,IACxB,EAAoB,IAAI,GAAK,CAClC,CAAC;GACF,GAAG;GACJ,CAAC;;CAIH,CAAA"}
@@ -1,91 +0,0 @@
1
- import { BFloatButtonGroupPlacement as e, BFloatButtonShape as t, BFloatButtonTrigger as n } from "./design-system82.js";
2
- import { computed as r, createCommentVNode as i, createElementBlock as a, createElementVNode as o, defineComponent as s, normalizeClass as c, onBeforeUnmount as l, openBlock as u, provide as d, ref as f, renderSlot as p, watch as m } from "vue";
3
- //#region src/components/BFloatButton/BFloatButtonGroup.vue?vue&type=script&setup=true&lang.ts
4
- var h = ["role", "aria-label"], g = ["aria-hidden", "inert"], _ = ["aria-expanded", "aria-label"], v = { class: "b-float-button__body" }, y = {
5
- class: "b-float-button__icon",
6
- "aria-hidden": "true"
7
- }, b = /* @__PURE__ */ s({
8
- __name: "BFloatButtonGroup",
9
- props: {
10
- open: { type: [Boolean, null] },
11
- trigger: {},
12
- placement: {},
13
- shape: {},
14
- closeIcon: {}
15
- },
16
- emits: ["openChange", "update:open"],
17
- setup(s, { emit: b }) {
18
- let x = s, S = b, C = f(!1);
19
- m(() => x.open, (e) => {
20
- e === !0 ? C.value = !0 : e === !1 && (C.value = !1);
21
- }, { immediate: !0 });
22
- function w(e) {
23
- C.value = e, S("update:open", e), S("openChange", e);
24
- }
25
- function T() {
26
- w(!C.value);
27
- }
28
- function E() {
29
- w(!0);
30
- }
31
- function D() {
32
- w(!1);
33
- }
34
- let O = null;
35
- function k() {
36
- x.trigger === n.Hover && (O &&= (clearTimeout(O), null), E());
37
- }
38
- function A() {
39
- x.trigger === n.Hover && (O = setTimeout(() => D(), 100));
40
- }
41
- l(() => {
42
- O && clearTimeout(O);
43
- }), d("bFloatButtonGroupShape", r(() => x.shape ?? t.Circle));
44
- let j = r(() => x.trigger !== void 0), M = r(() => `b-float-button-group--${x.placement ?? e.Top}`), N = r(() => `b-float-button-group--shape-${x.shape ?? t.Circle}`);
45
- return (e, t) => (u(), a("div", {
46
- class: c(["b-float-button-group", [
47
- M.value,
48
- N.value,
49
- {
50
- "b-float-button-group--menu": j.value,
51
- "b-float-button-group--open": j.value && C.value
52
- }
53
- ]]),
54
- role: j.value ? void 0 : "group",
55
- "aria-label": j.value ? void 0 : "Float button group",
56
- onMouseenter: k,
57
- onMouseleave: A
58
- }, [o("div", {
59
- class: "b-float-button-group__list",
60
- "aria-hidden": j.value ? !C.value : void 0,
61
- inert: j.value && !C.value ? !0 : void 0
62
- }, [p(e.$slots, "default")], 8, g), j.value ? (u(), a("button", {
63
- key: 0,
64
- type: "button",
65
- class: c(["b-float-button-group__trigger", [
66
- "b-float-button",
67
- `b-float-button--${x.shape ?? "circle"}`,
68
- "b-float-button--primary"
69
- ]]),
70
- "aria-expanded": C.value,
71
- "aria-label": C.value ? "Collapse button group" : "Expand button group",
72
- onClick: T
73
- }, [o("span", v, [o("span", y, [C.value ? p(e.$slots, "closeIcon", { key: 0 }, () => [t[0] ||= o("svg", {
74
- width: "1em",
75
- height: "1em",
76
- viewBox: "0 0 24 24",
77
- fill: "currentColor",
78
- "aria-hidden": "true"
79
- }, [o("path", { d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z" })], -1)]) : p(e.$slots, "icon", { key: 1 }, () => [t[1] ||= o("svg", {
80
- width: "1em",
81
- height: "1em",
82
- viewBox: "0 0 24 24",
83
- fill: "currentColor",
84
- "aria-hidden": "true"
85
- }, [o("path", { d: "M19 13H13v6h-2v-6H5v-2h6V5h2v6h6v2z" })], -1)])])])], 10, _)) : i("", !0)], 42, h));
86
- }
87
- });
88
- //#endregion
89
- export { b as default };
90
-
91
- //# sourceMappingURL=design-system89.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"design-system89.js","names":[],"sources":["../src/components/BFloatButton/BFloatButtonGroup.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, normalizeClass as _normalizeClass } from \"vue\"\n\nconst _hoisted_1 = [\"role\", \"aria-label\"]\nconst _hoisted_2 = [\"aria-hidden\", \"inert\"]\nconst _hoisted_3 = [\"aria-expanded\", \"aria-label\"]\nconst _hoisted_4 = { class: \"b-float-button__body\" }\nconst _hoisted_5 = {\n class: \"b-float-button__icon\",\n \"aria-hidden\": \"true\"\n}\n\nimport { computed, onBeforeUnmount, provide, ref, watch } from 'vue';\nimport { BFloatButtonGroupPlacement, BFloatButtonShape, BFloatButtonTrigger } from './types.ts';\n\n// ─────────────────────────────────────────────\n// Props & emits\n// ─────────────────────────────────────────────\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'BFloatButtonGroup',\n props: {\n open: { type: [Boolean, null] },\n trigger: {},\n placement: {},\n shape: {},\n closeIcon: {}\n },\n emits: [\"openChange\", \"update:open\"],\n setup(__props: any, { emit: __emit }) {\n\nconst props = __props;\n\nconst emit = __emit;\n\n\n\n// ─────────────────────────────────────────────\n// Internal state — always the rendering source of truth\n// ─────────────────────────────────────────────\nconst internalOpen = ref(false);\n\n// Sync from controlled prop → internal state when explicitly changed\nwatch(\n () => props.open,\n (val) => {\n if (val === true) internalOpen.value = true;\n else if (val === false) internalOpen.value = false;\n // null/undefined means \"uncontrolled\" — do not override internal state\n },\n { immediate: true },\n);\n\nfunction setOpen(val: boolean) {\n internalOpen.value = val;\n emit('update:open', val);\n emit('openChange', val);\n}\n\nfunction toggle() {\n setOpen(!internalOpen.value);\n}\n\nfunction openGroup() {\n setOpen(true);\n}\n\nfunction closeGroup() {\n setOpen(false);\n}\n\n// ─────────────────────────────────────────────\n// Hover trigger\n// ─────────────────────────────────────────────\nlet hideTimer: ReturnType<typeof setTimeout> | null = null;\n\nfunction onMouseEnter() {\n if (props.trigger !== BFloatButtonTrigger.Hover) return;\n if (hideTimer) {\n clearTimeout(hideTimer);\n hideTimer = null;\n }\n openGroup();\n}\n\nfunction onMouseLeave() {\n if (props.trigger !== BFloatButtonTrigger.Hover) return;\n hideTimer = setTimeout(() => closeGroup(), 100);\n}\n\nonBeforeUnmount(() => {\n if (hideTimer) clearTimeout(hideTimer);\n});\n\n// ─────────────────────────────────────────────\n// Provide shape to children\n// ─────────────────────────────────────────────\nprovide(\n 'bFloatButtonGroupShape',\n computed(() => props.shape ?? BFloatButtonShape.Circle),\n);\n\nconst isGroup = computed(() => props.trigger !== undefined);\nconst placementClass = computed(\n () => `b-float-button-group--${props.placement ?? BFloatButtonGroupPlacement.Top}`,\n);\nconst shapeClass = computed(\n () => `b-float-button-group--shape-${props.shape ?? BFloatButtonShape.Circle}`,\n);\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"b-float-button-group\", [\n placementClass.value,\n shapeClass.value,\n {\n 'b-float-button-group--menu': isGroup.value,\n 'b-float-button-group--open': isGroup.value && internalOpen.value,\n },\n ]]),\n role: !isGroup.value ? 'group' : undefined,\n \"aria-label\": !isGroup.value ? 'Float button group' : undefined,\n onMouseenter: onMouseEnter,\n onMouseleave: onMouseLeave\n }, [\n _createElementVNode(\"div\", {\n class: \"b-float-button-group__list\",\n \"aria-hidden\": isGroup.value ? !internalOpen.value : undefined,\n inert: isGroup.value && !internalOpen.value ? true : undefined\n }, [\n _renderSlot(_ctx.$slots, \"default\")\n ], 8, _hoisted_2),\n (isGroup.value)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n type: \"button\",\n class: _normalizeClass([\"b-float-button-group__trigger\", [\n 'b-float-button',\n `b-float-button--${props.shape ?? 'circle'}`,\n 'b-float-button--primary',\n ]]),\n \"aria-expanded\": internalOpen.value,\n \"aria-label\": internalOpen.value ? 'Collapse button group' : 'Expand button group',\n onClick: toggle\n }, [\n _createElementVNode(\"span\", _hoisted_4, [\n _createElementVNode(\"span\", _hoisted_5, [\n (internalOpen.value)\n ? _renderSlot(_ctx.$slots, \"closeIcon\", { key: 0 }, () => [\n _cache[0] || (_cache[0] = _createElementVNode(\"svg\", {\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"currentColor\",\n \"aria-hidden\": \"true\"\n }, [\n _createElementVNode(\"path\", { d: \"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\" })\n ], -1))\n ])\n : _renderSlot(_ctx.$slots, \"icon\", { key: 1 }, () => [\n _cache[1] || (_cache[1] = _createElementVNode(\"svg\", {\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"currentColor\",\n \"aria-hidden\": \"true\"\n }, [\n _createElementVNode(\"path\", { d: \"M19 13H13v6h-2v-6H5v-2h6V5h2v6h6v2z\" })\n ], -1))\n ])\n ])\n ])\n ], 10, _hoisted_3))\n : _createCommentVNode(\"\", true)\n ], 42, _hoisted_1))\n}\n}\n\n})"],"mappings":";;;AAGA,IAAM,IAAa,CAAC,QAAQ,aAAa,EACnC,IAAa,CAAC,eAAe,QAAQ,EACrC,IAAa,CAAC,iBAAiB,aAAa,EAC5C,IAAa,EAAE,OAAO,wBAAwB,EAC9C,IAAa;CACjB,OAAO;CACP,eAAe;CAChB,EASD,IAA4B,kBAAiB;CAC3C,QAAQ;CACR,OAAO;EACL,MAAM,EAAE,MAAM,CAAC,SAAS,KAAK,EAAE;EAC/B,SAAS,EAAE;EACX,WAAW,EAAE;EACb,OAAO,EAAE;EACT,WAAW,EAAE;EACd;CACD,OAAO,CAAC,cAAc,cAAc;CACpC,MAAM,GAAc,EAAE,MAAM,KAAU;EAExC,IAAM,IAAQ,GAER,IAAO,GAOP,IAAe,EAAI,GAAM;AAG/B,UACQ,EAAM,OACX,MAAQ;AACP,GAAI,MAAQ,KAAM,EAAa,QAAQ,KAC9B,MAAQ,OAAO,EAAa,QAAQ;KAG/C,EAAE,WAAW,IAAM,CACpB;EAED,SAAS,EAAQ,GAAc;AAG7B,GAFA,EAAa,QAAQ,GACrB,EAAK,eAAe,EAAI,EACxB,EAAK,cAAc,EAAI;;EAGzB,SAAS,IAAS;AAChB,KAAQ,CAAC,EAAa,MAAM;;EAG9B,SAAS,IAAY;AACnB,KAAQ,GAAK;;EAGf,SAAS,IAAa;AACpB,KAAQ,GAAM;;EAMhB,IAAI,IAAkD;EAEtD,SAAS,IAAe;AAClB,KAAM,YAAY,EAAoB,UAC1C,AAEE,OADA,aAAa,EAAU,EACX,OAEd,GAAW;;EAGb,SAAS,IAAe;AAClB,KAAM,YAAY,EAAoB,UAC1C,IAAY,iBAAiB,GAAY,EAAE,IAAI;;AAUjD,EAPA,QAAsB;AACpB,GAAI,KAAW,aAAa,EAAU;IACtC,EAKF,EACE,0BACA,QAAe,EAAM,SAAS,EAAkB,OAAO,CACxD;EAED,IAAM,IAAU,QAAe,EAAM,YAAY,KAAA,EAAU,EACrD,IAAiB,QACf,yBAAyB,EAAM,aAAa,EAA2B,MAC9E,EACK,IAAa,QACX,+BAA+B,EAAM,SAAS,EAAkB,SACvE;AAED,UAAQ,GAAU,OACR,GAAY,EAAE,EAAoB,OAAO;GAC/C,OAAO,EAAgB,CAAC,wBAAwB;IAC9C,EAAe;IACf,EAAW;IACX;KACE,8BAA8B,EAAQ;KACtC,8BAA8B,EAAQ,SAAS,EAAa;KAC7D;IACF,CAAC,CAAC;GACH,MAAO,EAAQ,QAAkB,KAAA,IAAV;GACvB,cAAe,EAAQ,QAA+B,KAAA,IAAvB;GAC/B,cAAc;GACd,cAAc;GACf,EAAE,CACD,EAAoB,OAAO;GACzB,OAAO;GACP,eAAe,EAAQ,QAAQ,CAAC,EAAa,QAAQ,KAAA;GACrD,OAAO,EAAQ,SAAS,CAAC,EAAa,QAAQ,KAAO,KAAA;GACtD,EAAE,CACD,EAAY,EAAK,QAAQ,UAAU,CACpC,EAAE,GAAG,EAAW,EAChB,EAAQ,SACJ,GAAY,EAAE,EAAoB,UAAU;GAC3C,KAAK;GACL,MAAM;GACN,OAAO,EAAgB,CAAC,iCAAiC;IAC3D;IACA,mBAAmB,EAAM,SAAS;IAClC;IACD,CAAC,CAAC;GACC,iBAAiB,EAAa;GAC9B,cAAc,EAAa,QAAQ,0BAA0B;GAC7D,SAAS;GACV,EAAE,CACD,EAAoB,QAAQ,GAAY,CACtC,EAAoB,QAAQ,GAAY,CACrC,EAAa,QACV,EAAY,EAAK,QAAQ,aAAa,EAAE,KAAK,GAAG,QAAQ,CACtD,AAAc,EAAO,OAAK,EAAoB,OAAO;GACnD,OAAO;GACP,QAAQ;GACR,SAAS;GACT,MAAM;GACN,eAAe;GAChB,EAAE,CACD,EAAoB,QAAQ,EAAE,GAAG,yGAAyG,CAAC,CAC5I,EAAE,GAAG,CACP,CAAC,GACF,EAAY,EAAK,QAAQ,QAAQ,EAAE,KAAK,GAAG,QAAQ,CACjD,AAAc,EAAO,OAAK,EAAoB,OAAO;GACnD,OAAO;GACP,QAAQ;GACR,SAAS;GACT,MAAM;GACN,eAAe;GAChB,EAAE,CACD,EAAoB,QAAQ,EAAE,GAAG,uCAAuC,CAAC,CAC1E,EAAE,GAAG,CACP,CAAC,CACP,CAAC,CACH,CAAC,CACH,EAAE,IAAI,EAAW,IAClB,EAAoB,IAAI,GAAK,CAClC,EAAE,IAAI,EAAW;;CAInB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"design-system93.js","names":[],"sources":["../src/components/BForm/context.ts"],"sourcesContent":["import type { InjectionKey } from 'vue';\nimport type { BFormItemContext } from './types.ts';\n\nexport const BFormContextKey = Symbol('BFormContext') as InjectionKey<BFormItemContext>;\n"],"mappings":";AAGA,IAAa,IAAkB,OAAO,eAAe"}