@7pmlabs/design-system 1.0.9 → 1.0.11

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 (438) hide show
  1. package/README.md +57 -6
  2. package/dist/design-system.css +1 -1
  3. package/dist/design-system.js +74 -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 +452 -90
  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 +33 -106
  127. package/dist/design-system183.js.map +1 -1
  128. package/dist/design-system185.js +4 -5
  129. package/dist/design-system185.js.map +1 -1
  130. package/dist/design-system186.js +71 -89
  131. package/dist/design-system186.js.map +1 -1
  132. package/dist/design-system188.js +4 -5
  133. package/dist/design-system188.js.map +1 -1
  134. package/dist/design-system189.js +25 -727
  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 +28 -11
  140. package/dist/design-system192.js.map +1 -1
  141. package/dist/design-system194.js +8 -0
  142. package/dist/design-system194.js.map +1 -0
  143. package/dist/design-system195.js +33 -5
  144. package/dist/design-system195.js.map +1 -1
  145. package/dist/design-system197.js +5 -46
  146. package/dist/design-system197.js.map +1 -1
  147. package/dist/design-system198.js +31 -4
  148. package/dist/design-system198.js.map +1 -1
  149. package/dist/design-system200.js +8 -0
  150. package/dist/design-system200.js.map +1 -0
  151. package/dist/design-system201.js +332 -5
  152. package/dist/design-system201.js.map +1 -1
  153. package/dist/design-system203.js +8 -0
  154. package/dist/design-system203.js.map +1 -0
  155. package/dist/design-system204.js +100 -5
  156. package/dist/design-system204.js.map +1 -1
  157. package/dist/design-system206.js +8 -0
  158. package/dist/design-system206.js.map +1 -0
  159. package/dist/design-system207.js +19 -5
  160. package/dist/design-system207.js.map +1 -1
  161. package/dist/design-system208.js +4 -54
  162. package/dist/design-system208.js.map +1 -1
  163. package/dist/design-system209.js +3 -4
  164. package/dist/design-system209.js.map +1 -1
  165. package/dist/design-system210.js +386 -137
  166. package/dist/design-system210.js.map +1 -1
  167. package/dist/design-system212.js +1 -1
  168. package/dist/design-system212.js.map +1 -1
  169. package/dist/design-system213.js +59 -7
  170. package/dist/design-system213.js.map +1 -1
  171. package/dist/design-system215.js +8 -0
  172. package/dist/design-system215.js.map +1 -0
  173. package/dist/design-system216.js +88 -5
  174. package/dist/design-system216.js.map +1 -1
  175. package/dist/design-system217.js +4 -580
  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 -7
  181. package/dist/design-system220.js.map +1 -1
  182. package/dist/design-system221.js +85 -353
  183. package/dist/design-system221.js.map +1 -1
  184. package/dist/design-system223.js +2 -2
  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 +8 -0
  189. package/dist/design-system226.js.map +1 -0
  190. package/dist/{design-system60.js → design-system227.js} +6 -8
  191. package/dist/design-system227.js.map +1 -0
  192. package/dist/{design-system193.js → design-system228.js} +2 -2
  193. package/dist/design-system228.js.map +1 -0
  194. package/dist/design-system230.js +8 -0
  195. package/dist/design-system230.js.map +1 -0
  196. package/dist/{design-system196.js → design-system231.js} +1 -1
  197. package/dist/{design-system196.js.map → design-system231.js.map} +1 -1
  198. package/dist/design-system232.js +49 -0
  199. package/dist/design-system232.js.map +1 -0
  200. package/dist/design-system233.js +7 -0
  201. package/dist/design-system233.js.map +1 -0
  202. package/dist/{design-system199.js → design-system234.js} +2 -2
  203. package/dist/design-system234.js.map +1 -0
  204. package/dist/design-system236.js +8 -0
  205. package/dist/design-system236.js.map +1 -0
  206. package/dist/{design-system202.js → design-system237.js} +1 -1
  207. package/dist/design-system237.js.map +1 -0
  208. package/dist/design-system239.js +8 -0
  209. package/dist/design-system239.js.map +1 -0
  210. package/dist/{design-system205.js → design-system240.js} +1 -1
  211. package/dist/design-system240.js.map +1 -0
  212. package/dist/design-system242.js +8 -0
  213. package/dist/design-system242.js.map +1 -0
  214. package/dist/design-system243.js +57 -0
  215. package/dist/design-system243.js.map +1 -0
  216. package/dist/design-system244.js +7 -0
  217. package/dist/design-system244.js.map +1 -0
  218. package/dist/design-system245.js +173 -0
  219. package/dist/design-system245.js.map +1 -0
  220. package/dist/design-system247.js +8 -0
  221. package/dist/design-system247.js.map +1 -0
  222. package/dist/design-system248.js +10 -0
  223. package/dist/design-system248.js.map +1 -0
  224. package/dist/{design-system214.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-system252.js +583 -0
  230. package/dist/design-system252.js.map +1 -0
  231. package/dist/{design-system219.js → design-system254.js} +2 -2
  232. package/dist/{design-system219.js.map → design-system254.js.map} +1 -1
  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/BPagination/BPagination.vue.d.ts +1 -1
  358. package/dist/types/components/BSkeleton/BSkeleton.spec.d.ts +1 -0
  359. package/dist/types/components/BSkeleton/BSkeleton.vue.d.ts +46 -0
  360. package/dist/types/components/BSkeleton/BSkeletonAvatar.vue.d.ts +12 -0
  361. package/dist/types/components/BSkeleton/BSkeletonButton.vue.d.ts +14 -0
  362. package/dist/types/components/BSkeleton/BSkeletonImage.vue.d.ts +7 -0
  363. package/dist/types/components/BSkeleton/BSkeletonInput.vue.d.ts +12 -0
  364. package/dist/types/components/BSkeleton/BSkeletonNode.vue.d.ts +19 -0
  365. package/dist/types/components/BSkeleton/index.d.ts +7 -0
  366. package/dist/types/components/BSkeleton/types.d.ts +20 -0
  367. package/dist/types/components/BSplitter/BSplitter.spec.d.ts +1 -0
  368. package/dist/types/components/BSplitter/BSplitter.vue.d.ts +45 -0
  369. package/dist/types/components/BSplitter/BSplitterPanel.vue.d.ts +40 -0
  370. package/dist/types/components/BSplitter/index.d.ts +3 -0
  371. package/dist/types/components/BSplitter/types.d.ts +42 -0
  372. package/dist/types/components/BStatistic/BStatistic.spec.d.ts +1 -0
  373. package/dist/types/components/BStatistic/BStatistic.vue.d.ts +44 -0
  374. package/dist/types/components/BStatistic/BStatisticTimer.vue.d.ts +50 -0
  375. package/dist/types/components/BStatistic/index.d.ts +3 -0
  376. package/dist/types/components/BStatistic/types.d.ts +6 -0
  377. package/dist/types/components/BTreeSelect/BTreeSelect.spec.d.ts +1 -0
  378. package/dist/types/components/BTreeSelect/BTreeSelect.vue.d.ts +143 -0
  379. package/dist/types/components/BTreeSelect/index.d.ts +2 -0
  380. package/dist/types/components/BTreeSelect/types.d.ts +77 -0
  381. package/dist/types/components/index.d.ts +6 -0
  382. package/dist/types/types.d.ts +3 -0
  383. package/package.json +6 -3
  384. package/dist/design-system105.js +0 -212
  385. package/dist/design-system105.js.map +0 -1
  386. package/dist/design-system108.js +0 -227
  387. package/dist/design-system108.js.map +0 -1
  388. package/dist/design-system111.js +0 -166
  389. package/dist/design-system111.js.map +0 -1
  390. package/dist/design-system115.js +0 -277
  391. package/dist/design-system115.js.map +0 -1
  392. package/dist/design-system118.js +0 -19
  393. package/dist/design-system118.js.map +0 -1
  394. package/dist/design-system121.js +0 -15
  395. package/dist/design-system121.js.map +0 -1
  396. package/dist/design-system125.js +0 -45
  397. package/dist/design-system125.js.map +0 -1
  398. package/dist/design-system128.js +0 -236
  399. package/dist/design-system128.js.map +0 -1
  400. package/dist/design-system141.js +0 -40
  401. package/dist/design-system141.js.map +0 -1
  402. package/dist/design-system144.js +0 -7
  403. package/dist/design-system158.js +0 -61
  404. package/dist/design-system158.js.map +0 -1
  405. package/dist/design-system161.js +0 -59
  406. package/dist/design-system161.js.map +0 -1
  407. package/dist/design-system174.js +0 -465
  408. package/dist/design-system174.js.map +0 -1
  409. package/dist/design-system177.js +0 -335
  410. package/dist/design-system177.js.map +0 -1
  411. package/dist/design-system193.js.map +0 -1
  412. package/dist/design-system199.js.map +0 -1
  413. package/dist/design-system202.js.map +0 -1
  414. package/dist/design-system205.js.map +0 -1
  415. package/dist/design-system214.js.map +0 -1
  416. package/dist/design-system40.js +0 -479
  417. package/dist/design-system40.js.map +0 -1
  418. package/dist/design-system43.js +0 -6
  419. package/dist/design-system43.js.map +0 -1
  420. package/dist/design-system46.js +0 -9
  421. package/dist/design-system46.js.map +0 -1
  422. package/dist/design-system50.js +0 -67
  423. package/dist/design-system50.js.map +0 -1
  424. package/dist/design-system60.js.map +0 -1
  425. package/dist/design-system63.js +0 -8
  426. package/dist/design-system67.js +0 -32
  427. package/dist/design-system67.js.map +0 -1
  428. package/dist/design-system74.js +0 -8
  429. package/dist/design-system74.js.map +0 -1
  430. package/dist/design-system79.js +0 -60
  431. package/dist/design-system79.js.map +0 -1
  432. package/dist/design-system82.js +0 -14
  433. package/dist/design-system82.js.map +0 -1
  434. package/dist/design-system86.js +0 -69
  435. package/dist/design-system86.js.map +0 -1
  436. package/dist/design-system89.js +0 -91
  437. package/dist/design-system89.js.map +0 -1
  438. package/dist/design-system93.js.map +0 -1
@@ -1,109 +1,91 @@
1
- import { computed as e, createCommentVNode as t, createElementBlock as n, createElementVNode as r, defineComponent as i, mergeModels as a, normalizeClass as o, onMounted as s, openBlock as c, ref as l, renderSlot as u, useModel as d, watch as f } from "vue";
2
- //#region src/components/BSwitch/BSwitch.vue?vue&type=script&setup=true&lang.ts
3
- var p = [
4
- "aria-checked",
5
- "aria-disabled",
6
- "disabled",
7
- "tabindex"
8
- ], m = {
9
- class: "b-switch__handle",
10
- "aria-hidden": "true"
11
- }, h = {
12
- key: 0,
13
- class: "b-switch__loading-icon",
14
- viewBox: "0 0 16 16",
15
- fill: "none",
16
- "aria-hidden": "true"
17
- }, g = {
18
- class: "b-switch__inner",
19
- "aria-hidden": "true"
20
- }, _ = {
1
+ import e from "./design-system185.js";
2
+ import { Fragment as t, computed as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createVNode as o, defineComponent as s, normalizeClass as c, normalizeStyle as l, openBlock as u, renderList as d, renderSlot as f } from "vue";
3
+ //#region src/components/BSkeleton/BSkeleton.vue?vue&type=script&setup=true&lang.ts
4
+ var p = {
21
5
  key: 0,
22
- class: "b-switch__inner-checked"
23
- }, v = {
6
+ class: "b-skeleton__header"
7
+ }, m = { class: "b-skeleton__content" }, h = {
24
8
  key: 1,
25
- class: "b-switch__inner-unchecked"
26
- }, y = /* @__PURE__ */ i({
27
- __name: "BSwitch",
28
- props: /* @__PURE__ */ a({
29
- defaultChecked: {
9
+ class: "b-skeleton__paragraph",
10
+ "aria-hidden": "true"
11
+ }, g = /* @__PURE__ */ s({
12
+ __name: "BSkeleton",
13
+ props: {
14
+ active: {
30
15
  type: Boolean,
31
16
  default: !1
32
17
  },
33
- disabled: {
34
- type: Boolean,
18
+ avatar: {
19
+ type: [Boolean, Object],
35
20
  default: !1
36
21
  },
37
22
  loading: {
38
23
  type: Boolean,
39
- default: !1
24
+ default: !0
40
25
  },
41
- size: { default: "default" }
42
- }, {
43
- modelValue: {
26
+ paragraph: {
27
+ type: [Boolean, Object],
28
+ default: !0
29
+ },
30
+ round: {
44
31
  type: Boolean,
45
- default: void 0
32
+ default: !1
46
33
  },
47
- modelModifiers: {}
48
- }),
49
- emits: /* @__PURE__ */ a(["change", "click"], ["update:modelValue"]),
50
- setup(i, { expose: a, emit: y }) {
51
- let b = d(i, "modelValue"), x = y, S = l(i.defaultChecked), C = e(() => b.value === void 0 ? S.value : b.value);
52
- s(() => {
53
- b.value === void 0 && (S.value = i.defaultChecked);
54
- }), f(() => b.value, (e) => {
55
- e !== void 0 && (S.value = e);
56
- });
57
- function w(e) {
58
- if (i.disabled || i.loading) return;
59
- let t = !C.value;
60
- S.value = t, b.value = t, x("change", t, e), e instanceof MouseEvent && x("click", t, e);
34
+ title: {
35
+ type: [Boolean, Object],
36
+ default: !0
61
37
  }
38
+ },
39
+ setup(s) {
40
+ let g = n(() => s.avatar !== !1 && s.avatar != null), _ = n(() => s.title !== !1 && s.title != null), v = n(() => s.paragraph !== !1 && s.paragraph != null), y = n(() => typeof s.avatar == "object" && s.avatar !== null ? s.avatar : {}), b = n(() => typeof s.title == "object" && s.title !== null ? s.title : {}), x = n(() => typeof s.paragraph == "object" && s.paragraph !== null ? s.paragraph : {}), S = n(() => T(b.value.width)), C = n(() => {
41
+ let e = x.value.rows;
42
+ return typeof e == "number" && e > 0 ? Math.floor(e) : 3;
43
+ }), w = n(() => {
44
+ let e = x.value.width, t = C.value, n = [];
45
+ for (let r = 0; r < t; r += 1) if (Array.isArray(e)) {
46
+ let t = e[r];
47
+ n.push(T(t) ?? "");
48
+ } else if (r === t - 1) {
49
+ let t = T(e);
50
+ n.push(t ?? "61%");
51
+ } else n.push("");
52
+ return n;
53
+ });
62
54
  function T(e) {
63
- w(e);
64
- }
65
- function E(e) {
66
- (e.key === "Enter" || e.key === " ") && (e.preventDefault(), w(e));
67
- }
68
- let D = l(null);
69
- function O() {
70
- D.value?.focus();
71
- }
72
- function k() {
73
- D.value?.blur();
55
+ if (e != null) return typeof e == "number" ? `${e}px` : e;
74
56
  }
75
- return a({
76
- focus: O,
77
- blur: k
78
- }), (e, a) => (c(), n("button", {
79
- ref_key: "rootRef",
80
- ref: D,
81
- type: "button",
82
- role: "switch",
83
- class: o(["b-switch", [`b-switch--${i.size}`, {
84
- "b-switch--checked": C.value,
85
- "b-switch--disabled": i.disabled,
86
- "b-switch--loading": i.loading
87
- }]]),
88
- "aria-checked": C.value,
89
- "aria-disabled": i.disabled || i.loading || void 0,
90
- disabled: i.disabled,
91
- tabindex: i.disabled ? -1 : 0,
92
- onClick: T,
93
- onKeydown: E
94
- }, [r("span", m, [i.loading ? (c(), n("svg", h, [...a[0] ||= [r("circle", {
95
- cx: "8",
96
- cy: "8",
97
- r: "6",
98
- stroke: "currentColor",
99
- "stroke-width": "2",
100
- "stroke-linecap": "round",
101
- "stroke-dasharray": "28",
102
- "stroke-dashoffset": "8"
103
- }, null, -1)]])) : t("", !0)]), r("span", g, [C.value ? (c(), n("span", _, [u(e.$slots, "checked", {}, void 0, !0)])) : (c(), n("span", v, [u(e.$slots, "unchecked", {}, void 0, !0)]))])], 42, p));
57
+ let E = n(() => ["b-skeleton", {
58
+ "b-skeleton--active": s.active,
59
+ "b-skeleton--with-avatar": g.value,
60
+ "b-skeleton--round": s.round
61
+ }]);
62
+ return (n, b) => s.loading ? (u(), i("div", {
63
+ key: 0,
64
+ class: c(E.value),
65
+ role: "status",
66
+ "aria-live": "polite",
67
+ "aria-label": "Loading"
68
+ }, [g.value ? (u(), i("div", p, [o(e, {
69
+ active: s.active || y.value.active,
70
+ shape: y.value.shape,
71
+ size: y.value.size
72
+ }, null, 8, [
73
+ "active",
74
+ "shape",
75
+ "size"
76
+ ])])) : r("", !0), a("div", m, [_.value ? (u(), i("h3", {
77
+ key: 0,
78
+ class: "b-skeleton__title",
79
+ style: l(S.value ? { width: S.value } : void 0),
80
+ "aria-hidden": "true"
81
+ }, null, 4)) : r("", !0), v.value ? (u(), i("ul", h, [(u(!0), i(t, null, d(w.value, (e, t) => (u(), i("li", {
82
+ key: t,
83
+ class: "b-skeleton__paragraph-row",
84
+ style: l(e ? { width: e } : void 0)
85
+ }, null, 4))), 128))])) : r("", !0)])], 2)) : f(n.$slots, "default", { key: 1 });
104
86
  }
105
87
  });
106
88
  //#endregion
107
- export { y as default };
89
+ export { g as default };
108
90
 
109
91
  //# sourceMappingURL=design-system186.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system186.js","names":[],"sources":["../src/components/BSwitch/BSwitch.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { useModel as _useModel, mergeModels as _mergeModels, defineComponent as _defineComponent } from 'vue'\nimport { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot, normalizeClass as _normalizeClass } from \"vue\"\n\nconst _hoisted_1 = [\"aria-checked\", \"aria-disabled\", \"disabled\", \"tabindex\"]\nconst _hoisted_2 = {\n class: \"b-switch__handle\",\n \"aria-hidden\": \"true\"\n}\nconst _hoisted_3 = {\n key: 0,\n class: \"b-switch__loading-icon\",\n viewBox: \"0 0 16 16\",\n fill: \"none\",\n \"aria-hidden\": \"true\"\n}\nconst _hoisted_4 = {\n class: \"b-switch__inner\",\n \"aria-hidden\": \"true\"\n}\nconst _hoisted_5 = {\n key: 0,\n class: \"b-switch__inner-checked\"\n}\nconst _hoisted_6 = {\n key: 1,\n class: \"b-switch__inner-unchecked\"\n}\n\nimport { ref, computed, watch, onMounted } from 'vue';\n\n//#region Props\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'BSwitch',\n props: /*@__PURE__*/_mergeModels({\n defaultChecked: { type: Boolean, default: false },\n disabled: { type: Boolean, default: false },\n loading: { type: Boolean, default: false },\n size: { default: 'default' }\n }, {\n \"modelValue\": { type: Boolean, ...{ default: undefined } },\n \"modelModifiers\": {},\n }),\n emits: /*@__PURE__*/_mergeModels([\"change\", \"click\"], [\"update:modelValue\"]),\n setup(__props: any, { expose: __expose, emit: __emit }) {\n\n\n\n/**\n * The checked state of the switch.\n * Supports v-model for controlled usage.\n */\nconst model = _useModel<boolean>(__props, \"modelValue\");\n\nconst emit = __emit;\n//#endregion\n\n//#region Internal state\nconst internalChecked = ref(__props.defaultChecked);\n\nconst isChecked = computed(() =>\n model.value !== undefined ? model.value : internalChecked.value,\n);\n\nonMounted(() => {\n if (model.value === undefined) {\n internalChecked.value = __props.defaultChecked;\n }\n});\n\nwatch(\n () => model.value,\n (val) => {\n if (val !== undefined) {\n internalChecked.value = val;\n }\n },\n);\n//#endregion\n\n//#region Handlers\nfunction toggle(event: MouseEvent | KeyboardEvent) {\n if (__props.disabled || __props.loading) return;\n\n const newChecked = !isChecked.value;\n internalChecked.value = newChecked;\n model.value = newChecked;\n emit('change', newChecked, event);\n\n if (event instanceof MouseEvent) {\n emit('click', newChecked, event);\n }\n}\n\nfunction handleClick(event: MouseEvent) {\n toggle(event);\n}\n\nfunction handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n toggle(event);\n }\n}\n//#endregion\n\n//#region Expose\nconst rootRef = ref<HTMLButtonElement | null>(null);\n\nfunction focus() {\n rootRef.value?.focus();\n}\n\nfunction blur() {\n rootRef.value?.blur();\n}\n\n__expose({ focus, blur });\n//#endregion\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"button\", {\n ref_key: \"rootRef\",\n ref: rootRef,\n type: \"button\",\n role: \"switch\",\n class: _normalizeClass([\"b-switch\", [\n `b-switch--${__props.size}`,\n {\n 'b-switch--checked': isChecked.value,\n 'b-switch--disabled': __props.disabled,\n 'b-switch--loading': __props.loading,\n },\n ]]),\n \"aria-checked\": isChecked.value,\n \"aria-disabled\": __props.disabled || __props.loading || undefined,\n disabled: __props.disabled,\n tabindex: __props.disabled ? -1 : 0,\n onClick: handleClick,\n onKeydown: handleKeyDown\n }, [\n _createElementVNode(\"span\", _hoisted_2, [\n (__props.loading)\n ? (_openBlock(), _createElementBlock(\"svg\", _hoisted_3, [...(_cache[0] || (_cache[0] = [\n _createElementVNode(\"circle\", {\n cx: \"8\",\n cy: \"8\",\n r: \"6\",\n stroke: \"currentColor\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-dasharray\": \"28\",\n \"stroke-dashoffset\": \"8\"\n }, null, -1)\n ]))]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"span\", _hoisted_4, [\n (isChecked.value)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_5, [\n _renderSlot(_ctx.$slots, \"checked\", {}, undefined, true)\n ]))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_6, [\n _renderSlot(_ctx.$slots, \"unchecked\", {}, undefined, true)\n ]))\n ])\n ], 42, _hoisted_1))\n}\n}\n\n})"],"mappings":";;AAGA,IAAM,IAAa;CAAC;CAAgB;CAAiB;CAAY;CAAW,EACtE,IAAa;CACjB,OAAO;CACP,eAAe;CAChB,EACK,IAAa;CACjB,KAAK;CACL,OAAO;CACP,SAAS;CACT,MAAM;CACN,eAAe;CAChB,EACK,IAAa;CACjB,OAAO;CACP,eAAe;CAChB,EACK,IAAa;CACjB,KAAK;CACL,OAAO;CACR,EACK,IAAa;CACjB,KAAK;CACL,OAAO;CACR,EAMD,IAA4B,kBAAiB;CAC3C,QAAQ;CACR,OAAoB,kBAAa;EAC/B,gBAAgB;GAAE,MAAM;GAAS,SAAS;GAAO;EACjD,UAAU;GAAE,MAAM;GAAS,SAAS;GAAO;EAC3C,SAAS;GAAE,MAAM;GAAS,SAAS;GAAO;EAC1C,MAAM,EAAE,SAAS,WAAW;EAC7B,EAAE;EACD,YAAc;GAAE,MAAM;GAAc,SAAS,KAAA;GAAa;EAC1D,gBAAkB,EAAE;EACrB,CAAC;CACF,OAAoB,kBAAa,CAAC,UAAU,QAAQ,EAAE,CAAC,oBAAoB,CAAC;CAC5E,MAAM,GAAc,EAAE,QAAQ,GAAU,MAAM,KAAU;EAQ1D,IAAM,IAAQ,EAAmB,GAAS,aAAa,EAEjD,IAAO,GAIP,IAAkB,EAAI,EAAQ,eAAe,EAE7C,IAAY,QAChB,EAAM,UAAU,KAAA,IAA0B,EAAgB,QAA9B,EAAM,MACnC;AAQD,EANA,QAAgB;AACd,GAAI,EAAM,UAAU,KAAA,MAClB,EAAgB,QAAQ,EAAQ;IAElC,EAEF,QACQ,EAAM,QACX,MAAQ;AACP,GAAI,MAAQ,KAAA,MACV,EAAgB,QAAQ;IAG7B;EAID,SAAS,EAAO,GAAmC;AACjD,OAAI,EAAQ,YAAY,EAAQ,QAAS;GAEzC,IAAM,IAAa,CAAC,EAAU;AAK9B,GAJA,EAAgB,QAAQ,GACxB,EAAM,QAAQ,GACd,EAAK,UAAU,GAAY,EAAM,EAE7B,aAAiB,cACnB,EAAK,SAAS,GAAY,EAAM;;EAIpC,SAAS,EAAY,GAAmB;AACtC,KAAO,EAAM;;EAGf,SAAS,EAAc,GAAsB;AAC3C,IAAI,EAAM,QAAQ,WAAW,EAAM,QAAQ,SACzC,EAAM,gBAAgB,EACtB,EAAO,EAAM;;EAMjB,IAAM,IAAU,EAA8B,KAAK;EAEnD,SAAS,IAAQ;AACf,KAAQ,OAAO,OAAO;;EAGxB,SAAS,IAAO;AACd,KAAQ,OAAO,MAAM;;AAMvB,SAHA,EAAS;GAAE;GAAO;GAAM,CAAC,GAGjB,GAAU,OACR,GAAY,EAAE,EAAoB,UAAU;GAClD,SAAS;GACT,KAAK;GACL,MAAM;GACN,MAAM;GACN,OAAO,EAAgB,CAAC,YAAY,CAClC,aAAa,EAAQ,QACrB;IACE,qBAAqB,EAAU;IAC/B,sBAAsB,EAAQ;IAC9B,qBAAqB,EAAQ;IAC9B,CACF,CAAC,CAAC;GACH,gBAAgB,EAAU;GAC1B,iBAAiB,EAAQ,YAAY,EAAQ,WAAW,KAAA;GACxD,UAAU,EAAQ;GAClB,UAAU,EAAQ,WAAW,KAAK;GAClC,SAAS;GACT,WAAW;GACZ,EAAE,CACD,EAAoB,QAAQ,GAAY,CACrC,EAAQ,WACJ,GAAY,EAAE,EAAoB,OAAO,GAAY,CAAC,GAAI,AAAc,EAAO,OAAK,CACnF,EAAoB,UAAU;GAC5B,IAAI;GACJ,IAAI;GACJ,GAAG;GACH,QAAQ;GACR,gBAAgB;GAChB,kBAAkB;GAClB,oBAAoB;GACpB,qBAAqB;GACtB,EAAE,MAAM,GAAG,CACb,CAAG,CAAC,IACL,EAAoB,IAAI,GAAK,CAClC,CAAC,EACF,EAAoB,QAAQ,GAAY,CACrC,EAAU,SACN,GAAY,EAAE,EAAoB,QAAQ,GAAY,CACrD,EAAY,EAAK,QAAQ,WAAW,EAAE,EAAE,KAAA,GAAW,GAAK,CACzD,CAAC,KACD,GAAY,EAAE,EAAoB,QAAQ,GAAY,CACrD,EAAY,EAAK,QAAQ,aAAa,EAAE,EAAE,KAAA,GAAW,GAAK,CAC3D,CAAC,EACP,CAAC,CACH,EAAE,IAAI,EAAW;;CAInB,CAAA"}
1
+ {"version":3,"file":"design-system186.js","names":[],"sources":["../src/components/BSkeleton/BSkeleton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport BSkeletonAvatar from './BSkeletonAvatar.vue';\nimport type {\n BSkeletonAvatarConfig,\n BSkeletonParagraphConfig,\n BSkeletonTitleConfig,\n} from './types';\n\n// ─────────────────────────────────────────────\n// Props\n// ─────────────────────────────────────────────\nconst {\n active = false,\n avatar = false,\n loading = true,\n paragraph = true,\n round = false,\n title = true,\n} = defineProps<{\n /**\n * Show the animated shimmer effect.\n * @default false\n */\n active?: boolean;\n /**\n * Show the avatar placeholder. Pass an object to configure its shape/size/active.\n * @default false\n */\n avatar?: boolean | BSkeletonAvatarConfig;\n /**\n * When `false`, renders the default slot (real content) instead of placeholders.\n * @default true\n */\n loading?: boolean;\n /**\n * Show paragraph placeholder rows. Pass an object to configure rows / row widths.\n * @default true\n */\n paragraph?: boolean | BSkeletonParagraphConfig;\n /**\n * Round corners on title and paragraph rows.\n * @default false\n */\n round?: boolean;\n /**\n * Show the title bar placeholder. Pass an object to configure its width.\n * @default true\n */\n title?: boolean | BSkeletonTitleConfig;\n}>();\n\n// ─────────────────────────────────────────────\n// Slots\n// ─────────────────────────────────────────────\ndefineSlots<{\n /** Real content rendered when `loading` is `false`. */\n default?(): unknown;\n}>();\n\n// ─────────────────────────────────────────────\n// Derived flags / configs\n// ─────────────────────────────────────────────\nconst showAvatar = computed(() => avatar !== false && avatar != null);\nconst showTitle = computed(() => title !== false && title != null);\nconst showParagraph = computed(() => paragraph !== false && paragraph != null);\n\nconst avatarConfig = computed<BSkeletonAvatarConfig>(() =>\n typeof avatar === 'object' && avatar !== null ? avatar : {},\n);\n\nconst titleConfig = computed<BSkeletonTitleConfig>(() =>\n typeof title === 'object' && title !== null ? title : {},\n);\n\nconst paragraphConfig = computed<BSkeletonParagraphConfig>(() =>\n typeof paragraph === 'object' && paragraph !== null ? paragraph : {},\n);\n\nconst titleWidth = computed(() => normalizeWidth(titleConfig.value.width));\n\nconst paragraphRows = computed(() => {\n const r = paragraphConfig.value.rows;\n return typeof r === 'number' && r > 0 ? Math.floor(r) : 3;\n});\n\nconst paragraphRowWidths = computed<string[]>(() => {\n const widths = paragraphConfig.value.width;\n const rows = paragraphRows.value;\n const out: string[] = [];\n for (let i = 0; i < rows; i += 1) {\n if (Array.isArray(widths)) {\n const w = widths[i];\n out.push(normalizeWidth(w) ?? '');\n } else if (i === rows - 1) {\n // Apply explicit width to the LAST row only when a single value is given.\n const w = normalizeWidth(widths);\n out.push(w ?? '61%');\n } else {\n out.push('');\n }\n }\n return out;\n});\n\nfunction normalizeWidth(w: number | string | undefined): string | undefined {\n if (w == null) return undefined;\n if (typeof w === 'number') return `${w}px`;\n return w;\n}\n\nconst rootClasses = computed(() => [\n 'b-skeleton',\n {\n 'b-skeleton--active': active,\n 'b-skeleton--with-avatar': showAvatar.value,\n 'b-skeleton--round': round,\n },\n]);\n</script>\n\n<template>\n <div v-if=\"loading\" :class=\"rootClasses\" role=\"status\" aria-live=\"polite\" aria-label=\"Loading\">\n <div v-if=\"showAvatar\" class=\"b-skeleton__header\">\n <BSkeletonAvatar\n :active=\"active || avatarConfig.active\"\n :shape=\"avatarConfig.shape\"\n :size=\"avatarConfig.size\"\n />\n </div>\n\n <div class=\"b-skeleton__content\">\n <h3\n v-if=\"showTitle\"\n class=\"b-skeleton__title\"\n :style=\"titleWidth ? { width: titleWidth } : undefined\"\n aria-hidden=\"true\"\n />\n\n <ul v-if=\"showParagraph\" class=\"b-skeleton__paragraph\" aria-hidden=\"true\">\n <li\n v-for=\"(w, i) in paragraphRowWidths\"\n :key=\"i\"\n class=\"b-skeleton__paragraph-row\"\n :style=\"w ? { width: w } : undefined\"\n />\n </ul>\n </div>\n </div>\n\n <template v-else>\n <slot />\n </template>\n</template>\n\n<style>\n/* ─────────────────────────────────────────────\n CSS Custom Properties (tokens)\n ─────────────────────────────────────────────\n AntD design-token mapping:\n gradientFromColor → --b-skeleton-gradient-from-color\n gradientToColor → --b-skeleton-gradient-to-color\n titleHeight → --b-skeleton-title-height\n paragraphLiHeight → --b-skeleton-paragraph-li-height\n paragraphMarginTop → --b-skeleton-paragraph-margin-top\n blockRadius → --b-skeleton-block-radius\n borderRadius → --b-skeleton-border-radius\n borderRadiusSM → --b-skeleton-border-radius-sm\n controlHeight → --b-skeleton-control-height\n controlHeightLG → --b-skeleton-control-height-lg\n controlHeightSM → --b-skeleton-control-height-sm\n ─────────────────────────────────────────── */\n.b-skeleton {\n --b-skeleton-gradient-from-color: oklch(93% 0 0); /* #f2f2f2 */\n --b-skeleton-gradient-to-color: oklch(85% 0 0); /* #d9d9d9 */\n --b-skeleton-title-height: 16px;\n --b-skeleton-paragraph-li-height: 16px;\n --b-skeleton-paragraph-margin-top: 28px;\n --b-skeleton-paragraph-row-gap: 16px;\n --b-skeleton-block-radius: 4px;\n --b-skeleton-border-radius: 6px;\n --b-skeleton-border-radius-sm: 4px;\n --b-skeleton-control-height: 32px;\n --b-skeleton-control-height-lg: 40px;\n --b-skeleton-control-height-sm: 24px;\n --b-skeleton-avatar-size-default: 32px;\n --b-skeleton-avatar-size-small: 24px;\n --b-skeleton-avatar-size-large: 40px;\n --b-skeleton-image-size: 96px;\n --b-skeleton-button-min-width: 64px;\n --b-skeleton-input-min-width: 160px;\n --b-skeleton-animation-duration: 1.4s;\n --b-skeleton-content-gap: 16px;\n}\n\n/* Dark mode (explicit + system) */\n[data-prefers-color='dark'] .b-skeleton,\n[data-prefers-color='dark'] .b-skeleton-element {\n --b-skeleton-gradient-from-color: oklch(28% 0 0);\n --b-skeleton-gradient-to-color: oklch(35% 0 0);\n}\n@media (prefers-color-scheme: dark) {\n [data-prefers-color='system'] .b-skeleton,\n [data-prefers-color='system'] .b-skeleton-element {\n --b-skeleton-gradient-from-color: oklch(28% 0 0);\n --b-skeleton-gradient-to-color: oklch(35% 0 0);\n }\n}\n\n/* ─────────────────────────────────────────────\n Layout\n ───────────────────────────────────────────── */\n.b-skeleton {\n display: flex;\n width: 100%;\n gap: var(--b-skeleton-content-gap);\n box-sizing: border-box;\n}\n\n.b-skeleton__header {\n flex-shrink: 0;\n}\n\n.b-skeleton__content {\n flex: 1;\n min-width: 0;\n}\n\n/* ─────────────────────────────────────────────\n Title\n ───────────────────────────────────────────── */\n.b-skeleton__title {\n width: 38%;\n height: var(--b-skeleton-title-height);\n margin: 0;\n background: var(--b-skeleton-gradient-from-color);\n border-radius: var(--b-skeleton-block-radius);\n}\n\n.b-skeleton--with-avatar .b-skeleton__title {\n width: 50%;\n}\n\n.b-skeleton--round .b-skeleton__title {\n border-radius: 100px;\n}\n\n/* ─────────────────────────────────────────────\n Paragraph\n ───────────────────────────────────────────── */\n.b-skeleton__paragraph {\n list-style: none;\n margin: 0;\n padding: 0;\n margin-top: var(--b-skeleton-paragraph-margin-top);\n}\n\n.b-skeleton__title + .b-skeleton__paragraph {\n margin-top: var(--b-skeleton-paragraph-margin-top);\n}\n\n.b-skeleton__paragraph-row {\n width: 100%;\n height: var(--b-skeleton-paragraph-li-height);\n background: var(--b-skeleton-gradient-from-color);\n border-radius: var(--b-skeleton-block-radius);\n}\n\n.b-skeleton__paragraph-row + .b-skeleton__paragraph-row {\n margin-top: var(--b-skeleton-paragraph-row-gap);\n}\n\n.b-skeleton--round .b-skeleton__paragraph-row {\n border-radius: 100px;\n}\n\n/* ─────────────────────────────────────────────\n Active shimmer animation\n ───────────────────────────────────────────── */\n.b-skeleton--active .b-skeleton__title,\n.b-skeleton--active .b-skeleton__paragraph-row {\n background: linear-gradient(\n 90deg,\n var(--b-skeleton-gradient-from-color) 25%,\n var(--b-skeleton-gradient-to-color) 37%,\n var(--b-skeleton-gradient-from-color) 63%\n );\n background-size: 400% 100%;\n animation: b-skeleton-loading var(--b-skeleton-animation-duration) ease infinite;\n}\n\n@keyframes b-skeleton-loading {\n 0% {\n background-position: 100% 50%;\n }\n 100% {\n background-position: 0 50%;\n }\n}\n\n/* Shared active shimmer for sub-components (Avatar, Button, Input, Image, Node) */\n.b-skeleton-element--active {\n background: linear-gradient(\n 90deg,\n var(--b-skeleton-gradient-from-color, oklch(93% 0 0)) 25%,\n var(--b-skeleton-gradient-to-color, oklch(85% 0 0)) 37%,\n var(--b-skeleton-gradient-from-color, oklch(93% 0 0)) 63%\n );\n background-size: 400% 100%;\n animation: b-skeleton-loading var(--b-skeleton-animation-duration, 1.4s) ease infinite;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .b-skeleton--active .b-skeleton__title,\n .b-skeleton--active .b-skeleton__paragraph-row,\n .b-skeleton-element--active {\n animation: none;\n }\n}\n</style>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+DA,IAAM,IAAa,QAAe,EAAA,WAAW,MAAS,EAAA,UAAU,KAAK,EAC/D,IAAY,QAAe,EAAA,UAAU,MAAS,EAAA,SAAS,KAAK,EAC5D,IAAgB,QAAe,EAAA,cAAc,MAAS,EAAA,aAAa,KAAK,EAExE,IAAe,QACnB,OAAO,EAAA,UAAW,YAAY,EAAA,WAAW,OAAO,EAAA,SAAS,EAAE,CAC5D,EAEK,IAAc,QAClB,OAAO,EAAA,SAAU,YAAY,EAAA,UAAU,OAAO,EAAA,QAAQ,EAAE,CACzD,EAEK,IAAkB,QACtB,OAAO,EAAA,aAAc,YAAY,EAAA,cAAc,OAAO,EAAA,YAAY,EAAE,CACrE,EAEK,IAAa,QAAe,EAAe,EAAY,MAAM,MAAM,CAAC,EAEpE,IAAgB,QAAe;GACnC,IAAM,IAAI,EAAgB,MAAM;AAChC,UAAO,OAAO,KAAM,YAAY,IAAI,IAAI,KAAK,MAAM,EAAE,GAAG;IACxD,EAEI,IAAqB,QAAyB;GAClD,IAAM,IAAS,EAAgB,MAAM,OAC/B,IAAO,EAAc,OACrB,IAAgB,EAAE;AACxB,QAAK,IAAI,IAAI,GAAG,IAAI,GAAM,KAAK,EAC7B,KAAI,MAAM,QAAQ,EAAO,EAAE;IACzB,IAAM,IAAI,EAAO;AACjB,MAAI,KAAK,EAAe,EAAE,IAAI,GAAG;cACxB,MAAM,IAAO,GAAG;IAEzB,IAAM,IAAI,EAAe,EAAO;AAChC,MAAI,KAAK,KAAK,MAAM;SAEpB,GAAI,KAAK,GAAG;AAGhB,UAAO;IACP;EAEF,SAAS,EAAe,GAAoD;AACtE,YAAK,KAET,QADI,OAAO,KAAM,WAAiB,GAAG,EAAE,MAChC;;EAGT,IAAM,IAAc,QAAe,CACjC,cACA;GACE,sBAAsB,EAAA;GACtB,2BAA2B,EAAW;GACtC,qBAAqB,EAAA;GACtB,CACF,CAAC;mBAIW,EAAA,WAAA,GAAA,EAAX,EA0BM,OAAA;;GA1Be,OAAK,EAAE,EAAA,MAAW;GAAE,MAAK;GAAS,aAAU;GAAS,cAAW;MACxE,EAAA,SAAA,GAAA,EAAX,EAMM,OANN,GAMM,CALJ,EAIE,GAAA;GAHC,QAAQ,EAAA,UAAU,EAAA,MAAa;GAC/B,OAAO,EAAA,MAAa;GACpB,MAAM,EAAA,MAAa;;;;;qBAIxB,EAgBM,OAhBN,GAgBM,CAdI,EAAA,SAAA,GAAA,EADR,EAKE,MAAA;;GAHA,OAAM;GACL,OAAK,EAAE,EAAA,QAAU,EAAA,OAAY,EAAA,OAAU,GAAK,KAAA,EAAS;GACtD,eAAY;4BAGJ,EAAA,SAAA,GAAA,EAAV,EAOK,MAPL,GAOK,EAAA,EAAA,GAAA,EANH,EAKE,GAAA,MAAA,EAJiB,EAAA,QAAT,GAAG,YADb,EAKE,MAAA;GAHC,KAAK;GACN,OAAM;GACL,OAAK,EAAE,IAAC,EAAA,OAAY,GAAC,GAAK,KAAA,EAAS;gDAO1C,EAAQ,EAAA,QAAA,WAAA,EAAA,KAAA,GAAA,CAAA"}
@@ -1,9 +1,8 @@
1
- import e from "./design-system14.js";
2
- import t from "./design-system186.js";
1
+ import e from "./design-system186.js";
3
2
  /* empty css */
4
- //#region src/components/BSwitch/BSwitch.vue
5
- var n = /* @__PURE__ */ e(t, [["__scopeId", "data-v-a13562bf"]]);
3
+ //#region src/components/BSkeleton/BSkeleton.vue
4
+ var t = e;
6
5
  //#endregion
7
- export { n as default };
6
+ export { t as default };
8
7
 
9
8
  //# sourceMappingURL=design-system188.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"design-system188.js","names":[],"sources":["../src/components/BSwitch/BSwitch.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { ref, computed, watch, onMounted } from 'vue';\n\n//#region Props\nconst {\n defaultChecked = false,\n disabled = false,\n loading = false,\n size = 'default',\n} = defineProps<{\n /** Initial checked state for uncontrolled usage. */\n defaultChecked?: boolean;\n /** Whether the switch is disabled. */\n disabled?: boolean;\n /** Whether to show a loading spinner on the handle. */\n loading?: boolean;\n /** Size of the switch. */\n size?: 'default' | 'small';\n}>();\n\n/**\n * The checked state of the switch.\n * Supports v-model for controlled usage.\n */\nconst model = defineModel<boolean>({ default: undefined });\n\nconst emit = defineEmits<{\n change: [checked: boolean, event: Event];\n click: [checked: boolean, event: MouseEvent];\n}>();\n//#endregion\n\n//#region Internal state\nconst internalChecked = ref(defaultChecked);\n\nconst isChecked = computed(() =>\n model.value !== undefined ? model.value : internalChecked.value,\n);\n\nonMounted(() => {\n if (model.value === undefined) {\n internalChecked.value = defaultChecked;\n }\n});\n\nwatch(\n () => model.value,\n (val) => {\n if (val !== undefined) {\n internalChecked.value = val;\n }\n },\n);\n//#endregion\n\n//#region Handlers\nfunction toggle(event: MouseEvent | KeyboardEvent) {\n if (disabled || loading) return;\n\n const newChecked = !isChecked.value;\n internalChecked.value = newChecked;\n model.value = newChecked;\n emit('change', newChecked, event);\n\n if (event instanceof MouseEvent) {\n emit('click', newChecked, event);\n }\n}\n\nfunction handleClick(event: MouseEvent) {\n toggle(event);\n}\n\nfunction handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n toggle(event);\n }\n}\n//#endregion\n\n//#region Expose\nconst rootRef = ref<HTMLButtonElement | null>(null);\n\nfunction focus() {\n rootRef.value?.focus();\n}\n\nfunction blur() {\n rootRef.value?.blur();\n}\n\ndefineExpose({ focus, blur });\n//#endregion\n</script>\n\n<template>\n <button\n ref=\"rootRef\"\n type=\"button\"\n role=\"switch\"\n class=\"b-switch\"\n :class=\"[\n `b-switch--${size}`,\n {\n 'b-switch--checked': isChecked,\n 'b-switch--disabled': disabled,\n 'b-switch--loading': loading,\n },\n ]\"\n :aria-checked=\"isChecked\"\n :aria-disabled=\"disabled || loading || undefined\"\n :disabled=\"disabled\"\n :tabindex=\"disabled ? -1 : 0\"\n @click=\"handleClick\"\n @keydown=\"handleKeyDown\"\n >\n <span class=\"b-switch__handle\" aria-hidden=\"true\">\n <svg\n v-if=\"loading\"\n class=\"b-switch__loading-icon\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n aria-hidden=\"true\"\n >\n <circle\n cx=\"8\"\n cy=\"8\"\n r=\"6\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-dasharray=\"28\"\n stroke-dashoffset=\"8\"\n />\n </svg>\n </span>\n <span class=\"b-switch__inner\" aria-hidden=\"true\">\n <span v-if=\"isChecked\" class=\"b-switch__inner-checked\">\n <slot name=\"checked\" />\n </span>\n <span v-else class=\"b-switch__inner-unchecked\">\n <slot name=\"unchecked\" />\n </span>\n </span>\n </button>\n</template>\n\n<style scoped>\n.b-switch {\n --b-switch-handle-bg: #fff;\n --b-switch-handle-shadow: 0 2px 4px 0 rgba(0, 35, 11, 0.2);\n --b-switch-handle-size: 18px;\n --b-switch-track-height: 22px;\n --b-switch-track-min-width: 44px;\n --b-switch-track-padding: 2px;\n --b-switch-inner-max-margin: 24px;\n --b-switch-inner-min-margin: 9px;\n --b-switch-track-bg: rgba(0, 0, 0, 0.25);\n --b-switch-track-bg-checked: #1565d8;\n --b-switch-track-bg-disabled: rgba(0, 0, 0, 0.04);\n --b-switch-loading-color: #1565d8;\n\n position: relative;\n display: inline-flex;\n align-items: center;\n box-sizing: border-box;\n min-width: var(--b-switch-track-min-width);\n height: var(--b-switch-track-height);\n padding: 0;\n border: 0;\n border-radius: calc(var(--b-switch-track-height) / 2);\n background-color: var(--b-switch-track-bg);\n cursor: pointer;\n outline: none;\n transition:\n background-color 0.2s,\n opacity 0.2s;\n vertical-align: middle;\n user-select: none;\n line-height: 1;\n}\n\n.b-switch:focus-visible {\n outline: 2px solid var(--b-switch-track-bg-checked);\n outline-offset: 2px;\n}\n\n/* Checked state */\n.b-switch--checked {\n background-color: var(--b-switch-track-bg-checked);\n}\n\n/* Disabled state */\n.b-switch--disabled {\n cursor: not-allowed;\n opacity: 0.65;\n}\n\n/* Loading state */\n.b-switch--loading {\n cursor: default;\n opacity: 0.85;\n}\n\n/* Handle */\n.b-switch__handle {\n position: absolute;\n top: var(--b-switch-track-padding);\n inset-inline-start: var(--b-switch-track-padding);\n width: var(--b-switch-handle-size);\n height: var(--b-switch-handle-size);\n border-radius: 50%;\n background-color: var(--b-switch-handle-bg);\n box-shadow: var(--b-switch-handle-shadow);\n display: flex;\n align-items: center;\n justify-content: center;\n transition: inset-inline-start 0.2s ease-in-out;\n}\n\n.b-switch--checked .b-switch__handle {\n inset-inline-start: calc(\n 100% - var(--b-switch-handle-size) - var(--b-switch-track-padding)\n );\n}\n\n/* Loading icon */\n.b-switch__loading-icon {\n width: calc(var(--b-switch-handle-size) * 0.6);\n height: calc(var(--b-switch-handle-size) * 0.6);\n color: var(--b-switch-loading-color);\n animation: b-switch-spin 1s linear infinite;\n}\n\n.b-switch--checked .b-switch__loading-icon {\n color: var(--b-switch-track-bg-checked);\n}\n\n@keyframes b-switch-spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\n/* Inner content */\n.b-switch__inner {\n display: flex;\n align-items: center;\n height: 100%;\n font-size: 12px;\n color: #fff;\n overflow: hidden;\n padding: 0;\n}\n\n.b-switch__inner-checked,\n.b-switch__inner-unchecked {\n display: inline-flex;\n align-items: center;\n white-space: nowrap;\n}\n\n.b-switch__inner-checked {\n margin-inline-start: calc(\n var(--b-switch-track-padding) + var(--b-switch-inner-min-margin)\n );\n margin-inline-end: calc(\n var(--b-switch-handle-size) + var(--b-switch-track-padding) +\n var(--b-switch-inner-min-margin) - var(--b-switch-inner-max-margin) +\n var(--b-switch-inner-max-margin)\n );\n}\n\n.b-switch__inner-unchecked {\n margin-inline-start: calc(\n var(--b-switch-handle-size) + var(--b-switch-track-padding) +\n var(--b-switch-inner-min-margin)\n );\n margin-inline-end: calc(\n var(--b-switch-track-padding) + var(--b-switch-inner-min-margin)\n );\n}\n\n/* Small size */\n.b-switch--small {\n --b-switch-handle-size: 12px;\n --b-switch-track-height: 16px;\n --b-switch-track-min-width: 28px;\n --b-switch-inner-max-margin: 18px;\n --b-switch-inner-min-margin: 6px;\n}\n\n/* Dark mode */\n[data-prefers-color='dark'] .b-switch {\n --b-switch-track-bg: rgba(255, 255, 255, 0.25);\n --b-switch-track-bg-disabled: rgba(255, 255, 255, 0.08);\n --b-switch-handle-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.4);\n}\n\n@media (prefers-color-scheme: dark) {\n [data-prefers-color='system'] .b-switch {\n --b-switch-track-bg: rgba(255, 255, 255, 0.25);\n --b-switch-track-bg-disabled: rgba(255, 255, 255, 0.08);\n --b-switch-handle-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.4);\n }\n}\n\n/* Reduced motion */\n@media (prefers-reduced-motion: reduce) {\n .b-switch__handle {\n transition: none;\n }\n\n .b-switch {\n transition: none;\n }\n\n .b-switch__loading-icon {\n animation: none;\n }\n}\n</style>\n"],"mappings":""}
1
+ {"version":3,"file":"design-system188.js","names":[],"sources":["../src/components/BSkeleton/BSkeleton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport BSkeletonAvatar from './BSkeletonAvatar.vue';\nimport type {\n BSkeletonAvatarConfig,\n BSkeletonParagraphConfig,\n BSkeletonTitleConfig,\n} from './types';\n\n// ─────────────────────────────────────────────\n// Props\n// ─────────────────────────────────────────────\nconst {\n active = false,\n avatar = false,\n loading = true,\n paragraph = true,\n round = false,\n title = true,\n} = defineProps<{\n /**\n * Show the animated shimmer effect.\n * @default false\n */\n active?: boolean;\n /**\n * Show the avatar placeholder. Pass an object to configure its shape/size/active.\n * @default false\n */\n avatar?: boolean | BSkeletonAvatarConfig;\n /**\n * When `false`, renders the default slot (real content) instead of placeholders.\n * @default true\n */\n loading?: boolean;\n /**\n * Show paragraph placeholder rows. Pass an object to configure rows / row widths.\n * @default true\n */\n paragraph?: boolean | BSkeletonParagraphConfig;\n /**\n * Round corners on title and paragraph rows.\n * @default false\n */\n round?: boolean;\n /**\n * Show the title bar placeholder. Pass an object to configure its width.\n * @default true\n */\n title?: boolean | BSkeletonTitleConfig;\n}>();\n\n// ─────────────────────────────────────────────\n// Slots\n// ─────────────────────────────────────────────\ndefineSlots<{\n /** Real content rendered when `loading` is `false`. */\n default?(): unknown;\n}>();\n\n// ─────────────────────────────────────────────\n// Derived flags / configs\n// ─────────────────────────────────────────────\nconst showAvatar = computed(() => avatar !== false && avatar != null);\nconst showTitle = computed(() => title !== false && title != null);\nconst showParagraph = computed(() => paragraph !== false && paragraph != null);\n\nconst avatarConfig = computed<BSkeletonAvatarConfig>(() =>\n typeof avatar === 'object' && avatar !== null ? avatar : {},\n);\n\nconst titleConfig = computed<BSkeletonTitleConfig>(() =>\n typeof title === 'object' && title !== null ? title : {},\n);\n\nconst paragraphConfig = computed<BSkeletonParagraphConfig>(() =>\n typeof paragraph === 'object' && paragraph !== null ? paragraph : {},\n);\n\nconst titleWidth = computed(() => normalizeWidth(titleConfig.value.width));\n\nconst paragraphRows = computed(() => {\n const r = paragraphConfig.value.rows;\n return typeof r === 'number' && r > 0 ? Math.floor(r) : 3;\n});\n\nconst paragraphRowWidths = computed<string[]>(() => {\n const widths = paragraphConfig.value.width;\n const rows = paragraphRows.value;\n const out: string[] = [];\n for (let i = 0; i < rows; i += 1) {\n if (Array.isArray(widths)) {\n const w = widths[i];\n out.push(normalizeWidth(w) ?? '');\n } else if (i === rows - 1) {\n // Apply explicit width to the LAST row only when a single value is given.\n const w = normalizeWidth(widths);\n out.push(w ?? '61%');\n } else {\n out.push('');\n }\n }\n return out;\n});\n\nfunction normalizeWidth(w: number | string | undefined): string | undefined {\n if (w == null) return undefined;\n if (typeof w === 'number') return `${w}px`;\n return w;\n}\n\nconst rootClasses = computed(() => [\n 'b-skeleton',\n {\n 'b-skeleton--active': active,\n 'b-skeleton--with-avatar': showAvatar.value,\n 'b-skeleton--round': round,\n },\n]);\n</script>\n\n<template>\n <div v-if=\"loading\" :class=\"rootClasses\" role=\"status\" aria-live=\"polite\" aria-label=\"Loading\">\n <div v-if=\"showAvatar\" class=\"b-skeleton__header\">\n <BSkeletonAvatar\n :active=\"active || avatarConfig.active\"\n :shape=\"avatarConfig.shape\"\n :size=\"avatarConfig.size\"\n />\n </div>\n\n <div class=\"b-skeleton__content\">\n <h3\n v-if=\"showTitle\"\n class=\"b-skeleton__title\"\n :style=\"titleWidth ? { width: titleWidth } : undefined\"\n aria-hidden=\"true\"\n />\n\n <ul v-if=\"showParagraph\" class=\"b-skeleton__paragraph\" aria-hidden=\"true\">\n <li\n v-for=\"(w, i) in paragraphRowWidths\"\n :key=\"i\"\n class=\"b-skeleton__paragraph-row\"\n :style=\"w ? { width: w } : undefined\"\n />\n </ul>\n </div>\n </div>\n\n <template v-else>\n <slot />\n </template>\n</template>\n\n<style>\n/* ─────────────────────────────────────────────\n CSS Custom Properties (tokens)\n ─────────────────────────────────────────────\n AntD design-token mapping:\n gradientFromColor → --b-skeleton-gradient-from-color\n gradientToColor → --b-skeleton-gradient-to-color\n titleHeight --b-skeleton-title-height\n paragraphLiHeight → --b-skeleton-paragraph-li-height\n paragraphMarginTop → --b-skeleton-paragraph-margin-top\n blockRadius --b-skeleton-block-radius\n borderRadius → --b-skeleton-border-radius\n borderRadiusSM → --b-skeleton-border-radius-sm\n controlHeight → --b-skeleton-control-height\n controlHeightLG → --b-skeleton-control-height-lg\n controlHeightSM → --b-skeleton-control-height-sm\n ─────────────────────────────────────────── */\n.b-skeleton {\n --b-skeleton-gradient-from-color: oklch(93% 0 0); /* #f2f2f2 */\n --b-skeleton-gradient-to-color: oklch(85% 0 0); /* #d9d9d9 */\n --b-skeleton-title-height: 16px;\n --b-skeleton-paragraph-li-height: 16px;\n --b-skeleton-paragraph-margin-top: 28px;\n --b-skeleton-paragraph-row-gap: 16px;\n --b-skeleton-block-radius: 4px;\n --b-skeleton-border-radius: 6px;\n --b-skeleton-border-radius-sm: 4px;\n --b-skeleton-control-height: 32px;\n --b-skeleton-control-height-lg: 40px;\n --b-skeleton-control-height-sm: 24px;\n --b-skeleton-avatar-size-default: 32px;\n --b-skeleton-avatar-size-small: 24px;\n --b-skeleton-avatar-size-large: 40px;\n --b-skeleton-image-size: 96px;\n --b-skeleton-button-min-width: 64px;\n --b-skeleton-input-min-width: 160px;\n --b-skeleton-animation-duration: 1.4s;\n --b-skeleton-content-gap: 16px;\n}\n\n/* Dark mode (explicit + system) */\n[data-prefers-color='dark'] .b-skeleton,\n[data-prefers-color='dark'] .b-skeleton-element {\n --b-skeleton-gradient-from-color: oklch(28% 0 0);\n --b-skeleton-gradient-to-color: oklch(35% 0 0);\n}\n@media (prefers-color-scheme: dark) {\n [data-prefers-color='system'] .b-skeleton,\n [data-prefers-color='system'] .b-skeleton-element {\n --b-skeleton-gradient-from-color: oklch(28% 0 0);\n --b-skeleton-gradient-to-color: oklch(35% 0 0);\n }\n}\n\n/* ─────────────────────────────────────────────\n Layout\n ───────────────────────────────────────────── */\n.b-skeleton {\n display: flex;\n width: 100%;\n gap: var(--b-skeleton-content-gap);\n box-sizing: border-box;\n}\n\n.b-skeleton__header {\n flex-shrink: 0;\n}\n\n.b-skeleton__content {\n flex: 1;\n min-width: 0;\n}\n\n/* ─────────────────────────────────────────────\n Title\n ───────────────────────────────────────────── */\n.b-skeleton__title {\n width: 38%;\n height: var(--b-skeleton-title-height);\n margin: 0;\n background: var(--b-skeleton-gradient-from-color);\n border-radius: var(--b-skeleton-block-radius);\n}\n\n.b-skeleton--with-avatar .b-skeleton__title {\n width: 50%;\n}\n\n.b-skeleton--round .b-skeleton__title {\n border-radius: 100px;\n}\n\n/* ─────────────────────────────────────────────\n Paragraph\n ───────────────────────────────────────────── */\n.b-skeleton__paragraph {\n list-style: none;\n margin: 0;\n padding: 0;\n margin-top: var(--b-skeleton-paragraph-margin-top);\n}\n\n.b-skeleton__title + .b-skeleton__paragraph {\n margin-top: var(--b-skeleton-paragraph-margin-top);\n}\n\n.b-skeleton__paragraph-row {\n width: 100%;\n height: var(--b-skeleton-paragraph-li-height);\n background: var(--b-skeleton-gradient-from-color);\n border-radius: var(--b-skeleton-block-radius);\n}\n\n.b-skeleton__paragraph-row + .b-skeleton__paragraph-row {\n margin-top: var(--b-skeleton-paragraph-row-gap);\n}\n\n.b-skeleton--round .b-skeleton__paragraph-row {\n border-radius: 100px;\n}\n\n/* ─────────────────────────────────────────────\n Active shimmer animation\n ───────────────────────────────────────────── */\n.b-skeleton--active .b-skeleton__title,\n.b-skeleton--active .b-skeleton__paragraph-row {\n background: linear-gradient(\n 90deg,\n var(--b-skeleton-gradient-from-color) 25%,\n var(--b-skeleton-gradient-to-color) 37%,\n var(--b-skeleton-gradient-from-color) 63%\n );\n background-size: 400% 100%;\n animation: b-skeleton-loading var(--b-skeleton-animation-duration) ease infinite;\n}\n\n@keyframes b-skeleton-loading {\n 0% {\n background-position: 100% 50%;\n }\n 100% {\n background-position: 0 50%;\n }\n}\n\n/* Shared active shimmer for sub-components (Avatar, Button, Input, Image, Node) */\n.b-skeleton-element--active {\n background: linear-gradient(\n 90deg,\n var(--b-skeleton-gradient-from-color, oklch(93% 0 0)) 25%,\n var(--b-skeleton-gradient-to-color, oklch(85% 0 0)) 37%,\n var(--b-skeleton-gradient-from-color, oklch(93% 0 0)) 63%\n );\n background-size: 400% 100%;\n animation: b-skeleton-loading var(--b-skeleton-animation-duration, 1.4s) ease infinite;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .b-skeleton--active .b-skeleton__title,\n .b-skeleton--active .b-skeleton__paragraph-row,\n .b-skeleton-element--active {\n animation: none;\n }\n}\n</style>\n"],"mappings":""}