bitboss-ui 0.2.76 → 1.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 (491) hide show
  1. package/dist/components/BaseCheckbox/BaseCheckbox.vue.d.ts +4 -0
  2. package/dist/components/BaseCheckboxGroup/BaseCheckboxGroup.vue.d.ts +10 -3
  3. package/dist/components/BaseDatePicker/BaseDatePicker.vue.d.ts +4 -1
  4. package/dist/components/BaseDatePickerInput/BaseDatePickerInput.vue.d.ts +10 -4
  5. package/dist/components/BaseInputContainer/BaseInputContainer.vue.d.ts +9 -0
  6. package/dist/components/BaseNumberInput/BaseNumberInput.vue.d.ts +4 -0
  7. package/dist/components/BaseRadio/BaseRadio.vue.d.ts +4 -0
  8. package/dist/components/BaseRadioGroup/BaseRadioGroup.vue.d.ts +10 -3
  9. package/dist/components/BaseRating/BaseRating.vue.d.ts +5 -1
  10. package/dist/components/BaseSelect/BaseSelect.vue.d.ts +4 -0
  11. package/dist/components/BaseSlider/BaseSlider.vue.d.ts +48 -11
  12. package/dist/components/BaseSwitchGroup/BaseSwitchGroup.vue.d.ts +6 -3
  13. package/dist/components/BaseTag/BaseTag.vue.d.ts +4 -0
  14. package/dist/components/BaseTextInput/BaseTextInput.vue.d.ts +10 -6
  15. package/dist/components/BaseTextarea/BaseTextarea.vue.d.ts +4 -0
  16. package/dist/components/BbButton/BbButton.vue.d.ts +12 -0
  17. package/dist/components/BbCheckbox/BbCheckbox.vue.d.ts +35 -27
  18. package/dist/components/BbCheckboxGroup/BbCheckboxGroup.vue.d.ts +38 -24
  19. package/dist/components/BbDatePickerInput/BbDatePickerInput.vue.d.ts +15 -3
  20. package/dist/components/BbNumberInput/BbNumberInput.vue.d.ts +33 -25
  21. package/dist/components/BbRadio/BbRadio.vue.d.ts +33 -25
  22. package/dist/components/BbRadioGroup/BbRadioGroup.vue.d.ts +38 -24
  23. package/dist/components/BbRating/BbRating.vue.d.ts +9 -1
  24. package/dist/components/BbSelect/BbSelect.vue.d.ts +18 -4
  25. package/dist/components/BbSlider/BbSlider.vue.d.ts +44 -11
  26. package/dist/components/BbSwitchGroup/BbSwitchGroup.vue.d.ts +9 -3
  27. package/dist/components/BbTag/BbTag.vue.d.ts +11 -3
  28. package/dist/components/BbTextInput/BbTextInput.vue.d.ts +33 -25
  29. package/dist/components/BbTextarea/BbTextarea.vue.d.ts +9 -1
  30. package/dist/composables/useQueue.d.ts +58 -0
  31. package/dist/index.js +186 -185
  32. package/dist/index.js.map +1 -1
  33. package/dist/index10.js +65 -1
  34. package/dist/index10.js.map +1 -1
  35. package/dist/index100.js +227 -1
  36. package/dist/index100.js.map +1 -1
  37. package/dist/index101.js +1 -437
  38. package/dist/index101.js.map +1 -1
  39. package/dist/index102.js +437 -1
  40. package/dist/index102.js.map +1 -1
  41. package/dist/index103.js +1 -94
  42. package/dist/index103.js.map +1 -1
  43. package/dist/index104.js +103 -1
  44. package/dist/index104.js.map +1 -1
  45. package/dist/index105.js +1 -88
  46. package/dist/index105.js.map +1 -1
  47. package/dist/index106.js +97 -1
  48. package/dist/index106.js.map +1 -1
  49. package/dist/index107.js +1 -89
  50. package/dist/index107.js.map +1 -1
  51. package/dist/index108.js +98 -1
  52. package/dist/index108.js.map +1 -1
  53. package/dist/index109.js +1 -29
  54. package/dist/index109.js.map +1 -1
  55. package/dist/index11.js +1 -131
  56. package/dist/index11.js.map +1 -1
  57. package/dist/index110.js +29 -1
  58. package/dist/index110.js.map +1 -1
  59. package/dist/index111.js +1 -151
  60. package/dist/index111.js.map +1 -1
  61. package/dist/index112.js +151 -1
  62. package/dist/index112.js.map +1 -1
  63. package/dist/index113.js +1 -122
  64. package/dist/index113.js.map +1 -1
  65. package/dist/index114.js +122 -1
  66. package/dist/index114.js.map +1 -1
  67. package/dist/index115.js +1 -46
  68. package/dist/index115.js.map +1 -1
  69. package/dist/index116.js +40 -33
  70. package/dist/index116.js.map +1 -1
  71. package/dist/index117.js +32 -39
  72. package/dist/index117.js.map +1 -1
  73. package/dist/index118.js +39 -42
  74. package/dist/index118.js.map +1 -1
  75. package/dist/index119.js +43 -39
  76. package/dist/index119.js.map +1 -1
  77. package/dist/index12.js +128 -1
  78. package/dist/index12.js.map +1 -1
  79. package/dist/index120.js +43 -2
  80. package/dist/index120.js.map +1 -1
  81. package/dist/index121.js +2 -21
  82. package/dist/index121.js.map +1 -1
  83. package/dist/index122.js +21 -2
  84. package/dist/index122.js.map +1 -1
  85. package/dist/index123.js +2 -224
  86. package/dist/index123.js.map +1 -1
  87. package/dist/index124.js +224 -2
  88. package/dist/index124.js.map +1 -1
  89. package/dist/index125.js +2 -18
  90. package/dist/index125.js.map +1 -1
  91. package/dist/index126.js +16 -10
  92. package/dist/index126.js.map +1 -1
  93. package/dist/index127.js +12 -24
  94. package/dist/index127.js.map +1 -1
  95. package/dist/index128.js +24 -5
  96. package/dist/index128.js.map +1 -1
  97. package/dist/index129.js +5 -9
  98. package/dist/index129.js.map +1 -1
  99. package/dist/index13.js +1 -159
  100. package/dist/index13.js.map +1 -1
  101. package/dist/index130.js +8 -5
  102. package/dist/index130.js.map +1 -1
  103. package/dist/index131.js +5 -69
  104. package/dist/index131.js.map +1 -1
  105. package/dist/index132.js +70 -3
  106. package/dist/index132.js.map +1 -1
  107. package/dist/index133.js +2 -2
  108. package/dist/index134.js +2 -2
  109. package/dist/index135.js +2 -2
  110. package/dist/index136.js +2 -2
  111. package/dist/index137.js +2 -2
  112. package/dist/index138.js +2 -2
  113. package/dist/index139.js +2 -2
  114. package/dist/index14.js +161 -1
  115. package/dist/index14.js.map +1 -1
  116. package/dist/index140.js +2 -2
  117. package/dist/index141.js +2 -2
  118. package/dist/index142.js +2 -2
  119. package/dist/index143.js +2 -2
  120. package/dist/index144.js +2 -2
  121. package/dist/index145.js +2 -2
  122. package/dist/index146.js +2 -2
  123. package/dist/index147.js +2 -2
  124. package/dist/index148.js +2 -2
  125. package/dist/index149.js +2 -2
  126. package/dist/index15.js +1 -457
  127. package/dist/index15.js.map +1 -1
  128. package/dist/index150.js +2 -2
  129. package/dist/index151.js +2 -2
  130. package/dist/index152.js +2 -2
  131. package/dist/index153.js +2 -2
  132. package/dist/index154.js +2 -2
  133. package/dist/index155.js +2 -2
  134. package/dist/index156.js +2 -2
  135. package/dist/index157.js +2 -2
  136. package/dist/index158.js +5 -1
  137. package/dist/index158.js.map +1 -1
  138. package/dist/index159.js +1 -5
  139. package/dist/index159.js.map +1 -1
  140. package/dist/index16.js +514 -1
  141. package/dist/index16.js.map +1 -1
  142. package/dist/index160.js +5 -1
  143. package/dist/index160.js.map +1 -1
  144. package/dist/index161.js +1 -5
  145. package/dist/index161.js.map +1 -1
  146. package/dist/index162.js +2 -2
  147. package/dist/index163.js +2 -2
  148. package/dist/index164.js +2 -2
  149. package/dist/index165.js +2 -2
  150. package/dist/index166.js +2 -2
  151. package/dist/index167.js +3 -2
  152. package/dist/index167.js.map +1 -1
  153. package/dist/index168.js +2 -3
  154. package/dist/index168.js.map +1 -1
  155. package/dist/index169.js +5 -1
  156. package/dist/index169.js.map +1 -1
  157. package/dist/index17.js +1 -211
  158. package/dist/index17.js.map +1 -1
  159. package/dist/index170.js +1 -4
  160. package/dist/index170.js.map +1 -1
  161. package/dist/index171.js +2 -3
  162. package/dist/index171.js.map +1 -1
  163. package/dist/index172.js +2 -2
  164. package/dist/index173.js +2 -2
  165. package/dist/index174.js +2 -2
  166. package/dist/index175.js +2 -2
  167. package/dist/index176.js +2 -2
  168. package/dist/index177.js +2 -2
  169. package/dist/index178.js +2 -2
  170. package/dist/index179.js +2 -2
  171. package/dist/index18.js +220 -1
  172. package/dist/index18.js.map +1 -1
  173. package/dist/index180.js +2 -2
  174. package/dist/index181.js +2 -2
  175. package/dist/index182.js +2 -2
  176. package/dist/index183.js +5 -1
  177. package/dist/index183.js.map +1 -1
  178. package/dist/index184.js +1 -5
  179. package/dist/index184.js.map +1 -1
  180. package/dist/index185.js +5 -1
  181. package/dist/index185.js.map +1 -1
  182. package/dist/index186.js +1 -5
  183. package/dist/index186.js.map +1 -1
  184. package/dist/index187.js +2 -2
  185. package/dist/index188.js +2 -2
  186. package/dist/index189.js +2 -2
  187. package/dist/index19.js +1 -239
  188. package/dist/index19.js.map +1 -1
  189. package/dist/index190.js +2 -2
  190. package/dist/index191.js +2 -2
  191. package/dist/index192.js +2 -2
  192. package/dist/index193.js +2 -2
  193. package/dist/index194.js +2 -2
  194. package/dist/index195.js +2 -2
  195. package/dist/index196.js +3 -10
  196. package/dist/index196.js.map +1 -1
  197. package/dist/index198.js +2 -3
  198. package/dist/index198.js.map +1 -1
  199. package/dist/index199.js +4 -3
  200. package/dist/index199.js.map +1 -1
  201. package/dist/index2.js +1 -42
  202. package/dist/index2.js.map +1 -1
  203. package/dist/index20.js +239 -1
  204. package/dist/index20.js.map +1 -1
  205. package/dist/index200.js +5 -368
  206. package/dist/index200.js.map +1 -1
  207. package/dist/index201.js +13 -131
  208. package/dist/index201.js.map +1 -1
  209. package/dist/index202.js +16 -5
  210. package/dist/index202.js.map +1 -1
  211. package/dist/index203.js +3 -3
  212. package/dist/index204.js +20 -2
  213. package/dist/index204.js.map +1 -1
  214. package/dist/index205.js +29 -2
  215. package/dist/index205.js.map +1 -1
  216. package/dist/index206.js +8 -174
  217. package/dist/index206.js.map +1 -1
  218. package/dist/index207.js +2 -23
  219. package/dist/index207.js.map +1 -1
  220. package/dist/index208.js +111 -363
  221. package/dist/index208.js.map +1 -1
  222. package/dist/index209.js +131 -13
  223. package/dist/index209.js.map +1 -1
  224. package/dist/index21.js +1 -115
  225. package/dist/index21.js.map +1 -1
  226. package/dist/index210.js +2 -16
  227. package/dist/index210.js.map +1 -1
  228. package/dist/index211.js +35 -20
  229. package/dist/index211.js.map +1 -1
  230. package/dist/index212.js +172 -27
  231. package/dist/index212.js.map +1 -1
  232. package/dist/index213.js +6 -8
  233. package/dist/index213.js.map +1 -1
  234. package/dist/index214.js +346 -213
  235. package/dist/index214.js.map +1 -1
  236. package/dist/index215.js +373 -3
  237. package/dist/index215.js.map +1 -1
  238. package/dist/index216.js +3 -35
  239. package/dist/index216.js.map +1 -1
  240. package/dist/index217.js +3 -6
  241. package/dist/index217.js.map +1 -1
  242. package/dist/index218.js +235 -2
  243. package/dist/index218.js.map +1 -1
  244. package/dist/index219.js +3 -2
  245. package/dist/index219.js.map +1 -1
  246. package/dist/index22.js +131 -1
  247. package/dist/index22.js.map +1 -1
  248. package/dist/index220.js +2 -4
  249. package/dist/index220.js.map +1 -1
  250. package/dist/index221.js +8 -119
  251. package/dist/index221.js.map +1 -1
  252. package/dist/index222.js +2 -2
  253. package/dist/index222.js.map +1 -1
  254. package/dist/index224.js +23 -6
  255. package/dist/index224.js.map +1 -1
  256. package/dist/index225.js +4 -17
  257. package/dist/index225.js.map +1 -1
  258. package/dist/index226.js +294 -78
  259. package/dist/index226.js.map +1 -1
  260. package/dist/index227.js +6 -2
  261. package/dist/index227.js.map +1 -1
  262. package/dist/index228.js +2 -160
  263. package/dist/index228.js.map +1 -1
  264. package/dist/index229.js +4 -1
  265. package/dist/index229.js.map +1 -1
  266. package/dist/index23.js +1 -115
  267. package/dist/index23.js.map +1 -1
  268. package/dist/index230.js +2 -5
  269. package/dist/index230.js.map +1 -1
  270. package/dist/index231.js +2 -69
  271. package/dist/index231.js.map +1 -1
  272. package/dist/index232.js +2 -224
  273. package/dist/index232.js.map +1 -1
  274. package/dist/index233.js +2 -258
  275. package/dist/index233.js.map +1 -1
  276. package/dist/index234.js +78 -5
  277. package/dist/index234.js.map +1 -1
  278. package/dist/index235.js +6 -2
  279. package/dist/index235.js.map +1 -1
  280. package/dist/index236.js +17 -295
  281. package/dist/index236.js.map +1 -1
  282. package/dist/index237.js +2 -2
  283. package/dist/index238.js +106 -2
  284. package/dist/index238.js.map +1 -1
  285. package/dist/index239.js +428 -110
  286. package/dist/index239.js.map +1 -1
  287. package/dist/index24.js +119 -1
  288. package/dist/index24.js.map +1 -1
  289. package/dist/index240.js +218 -100
  290. package/dist/index240.js.map +1 -1
  291. package/dist/index241.js +255 -12
  292. package/dist/index241.js.map +1 -1
  293. package/dist/index242.js +117 -2
  294. package/dist/index242.js.map +1 -1
  295. package/dist/index243.js +200 -2
  296. package/dist/index243.js.map +1 -1
  297. package/dist/index244.js +2 -2
  298. package/dist/index244.js.map +1 -1
  299. package/dist/index245.js +69 -2
  300. package/dist/index245.js.map +1 -1
  301. package/dist/index246.js +5 -435
  302. package/dist/index246.js.map +1 -1
  303. package/dist/index247.js +163 -88
  304. package/dist/index247.js.map +1 -1
  305. package/dist/index248.js +1 -202
  306. package/dist/index248.js.map +1 -1
  307. package/dist/index249.js +2 -4
  308. package/dist/index249.js.map +1 -1
  309. package/dist/index25.js +1 -92
  310. package/dist/index25.js.map +1 -1
  311. package/dist/index250.js +89 -2
  312. package/dist/index250.js.map +1 -1
  313. package/dist/index251.js +15 -4
  314. package/dist/index251.js.map +1 -1
  315. package/dist/index252.js +4 -4
  316. package/dist/index252.js.map +1 -1
  317. package/dist/index253.js +4 -61
  318. package/dist/index253.js.map +1 -1
  319. package/dist/index254.js +61 -2
  320. package/dist/index254.js.map +1 -1
  321. package/dist/index255.js +2 -3
  322. package/dist/index255.js.map +1 -1
  323. package/dist/index256.js +3 -2
  324. package/dist/index256.js.map +1 -1
  325. package/dist/index257.js +5 -0
  326. package/dist/index257.js.map +1 -0
  327. package/dist/index26.js +94 -1
  328. package/dist/index26.js.map +1 -1
  329. package/dist/index27.js +1 -157
  330. package/dist/index27.js.map +1 -1
  331. package/dist/index28.js +160 -1
  332. package/dist/index28.js.map +1 -1
  333. package/dist/index29.js +1 -124
  334. package/dist/index29.js.map +1 -1
  335. package/dist/index3.js +38 -76
  336. package/dist/index3.js.map +1 -1
  337. package/dist/index30.js +126 -1
  338. package/dist/index30.js.map +1 -1
  339. package/dist/index31.js +1 -691
  340. package/dist/index31.js.map +1 -1
  341. package/dist/index32.js +693 -1
  342. package/dist/index32.js.map +1 -1
  343. package/dist/index33.js +1 -145
  344. package/dist/index33.js.map +1 -1
  345. package/dist/index34.js +302 -1
  346. package/dist/index34.js.map +1 -1
  347. package/dist/index35.js +1 -118
  348. package/dist/index35.js.map +1 -1
  349. package/dist/index36.js +120 -1
  350. package/dist/index36.js.map +1 -1
  351. package/dist/index37.js +1 -154
  352. package/dist/index37.js.map +1 -1
  353. package/dist/index38.js +156 -1
  354. package/dist/index38.js.map +1 -1
  355. package/dist/index39.js +1 -83
  356. package/dist/index39.js.map +1 -1
  357. package/dist/index4.js +78 -62
  358. package/dist/index4.js.map +1 -1
  359. package/dist/index40.js +87 -1
  360. package/dist/index40.js.map +1 -1
  361. package/dist/index41.js +1 -61
  362. package/dist/index41.js.map +1 -1
  363. package/dist/index42.js +64 -1
  364. package/dist/index42.js.map +1 -1
  365. package/dist/index43.js +1 -65
  366. package/dist/index43.js.map +1 -1
  367. package/dist/index44.js +65 -1
  368. package/dist/index44.js.map +1 -1
  369. package/dist/index45.js +1 -96
  370. package/dist/index45.js.map +1 -1
  371. package/dist/index46.js +96 -1
  372. package/dist/index46.js.map +1 -1
  373. package/dist/index47.js +1 -61
  374. package/dist/index47.js.map +1 -1
  375. package/dist/index48.js +61 -1
  376. package/dist/index48.js.map +1 -1
  377. package/dist/index49.js +1 -49
  378. package/dist/index49.js.map +1 -1
  379. package/dist/index5.js +60 -38
  380. package/dist/index5.js.map +1 -1
  381. package/dist/index50.js +49 -1
  382. package/dist/index50.js.map +1 -1
  383. package/dist/index51.js +1 -62
  384. package/dist/index51.js.map +1 -1
  385. package/dist/index52.js +62 -1
  386. package/dist/index52.js.map +1 -1
  387. package/dist/index53.js +1 -45
  388. package/dist/index53.js.map +1 -1
  389. package/dist/index54.js +69 -1
  390. package/dist/index54.js.map +1 -1
  391. package/dist/index55.js +1 -89
  392. package/dist/index55.js.map +1 -1
  393. package/dist/index56.js +98 -1
  394. package/dist/index56.js.map +1 -1
  395. package/dist/index57.js +1 -120
  396. package/dist/index57.js.map +1 -1
  397. package/dist/index58.js +129 -1
  398. package/dist/index58.js.map +1 -1
  399. package/dist/index59.js +1 -85
  400. package/dist/index59.js.map +1 -1
  401. package/dist/index6.js +37 -171
  402. package/dist/index6.js.map +1 -1
  403. package/dist/index60.js +85 -1
  404. package/dist/index60.js.map +1 -1
  405. package/dist/index61.js +1 -88
  406. package/dist/index61.js.map +1 -1
  407. package/dist/index62.js +98 -1
  408. package/dist/index62.js.map +1 -1
  409. package/dist/index63.js +1 -59
  410. package/dist/index63.js.map +1 -1
  411. package/dist/index64.js +59 -1
  412. package/dist/index64.js.map +1 -1
  413. package/dist/index65.js +1 -313
  414. package/dist/index65.js.map +1 -1
  415. package/dist/index66.js +313 -1
  416. package/dist/index66.js.map +1 -1
  417. package/dist/index67.js +1 -129
  418. package/dist/index67.js.map +1 -1
  419. package/dist/index68.js +129 -1
  420. package/dist/index68.js.map +1 -1
  421. package/dist/index69.js +1 -225
  422. package/dist/index69.js.map +1 -1
  423. package/dist/index7.js +172 -18
  424. package/dist/index7.js.map +1 -1
  425. package/dist/index70.js +225 -1
  426. package/dist/index70.js.map +1 -1
  427. package/dist/index71.js +1 -24
  428. package/dist/index71.js.map +1 -1
  429. package/dist/index72.js +19 -41
  430. package/dist/index72.js.map +1 -1
  431. package/dist/index73.js +37 -86
  432. package/dist/index73.js.map +1 -1
  433. package/dist/index74.js +104 -1
  434. package/dist/index74.js.map +1 -1
  435. package/dist/index75.js +1 -227
  436. package/dist/index75.js.map +1 -1
  437. package/dist/index76.js +227 -1
  438. package/dist/index76.js.map +1 -1
  439. package/dist/index77.js +1 -143
  440. package/dist/index77.js.map +1 -1
  441. package/dist/index78.js +165 -1
  442. package/dist/index78.js.map +1 -1
  443. package/dist/index79.js +1 -213
  444. package/dist/index79.js.map +1 -1
  445. package/dist/index8.js +18 -192
  446. package/dist/index8.js.map +1 -1
  447. package/dist/index80.js +213 -1
  448. package/dist/index80.js.map +1 -1
  449. package/dist/index81.js +1 -35
  450. package/dist/index81.js.map +1 -1
  451. package/dist/index82.js +35 -1
  452. package/dist/index82.js.map +1 -1
  453. package/dist/index83.js +1 -83
  454. package/dist/index83.js.map +1 -1
  455. package/dist/index84.js +92 -1
  456. package/dist/index84.js.map +1 -1
  457. package/dist/index85.js +1 -120
  458. package/dist/index85.js.map +1 -1
  459. package/dist/index86.js +129 -1
  460. package/dist/index86.js.map +1 -1
  461. package/dist/index87.js +1 -83
  462. package/dist/index87.js.map +1 -1
  463. package/dist/index88.js +92 -1
  464. package/dist/index88.js.map +1 -1
  465. package/dist/index89.js +1 -30
  466. package/dist/index89.js.map +1 -1
  467. package/dist/index9.js +192 -61
  468. package/dist/index9.js.map +1 -1
  469. package/dist/index90.js +30 -1
  470. package/dist/index90.js.map +1 -1
  471. package/dist/index91.js +1 -157
  472. package/dist/index91.js.map +1 -1
  473. package/dist/index92.js +166 -1
  474. package/dist/index92.js.map +1 -1
  475. package/dist/index93.js +1 -86
  476. package/dist/index93.js.map +1 -1
  477. package/dist/index94.js +112 -1
  478. package/dist/index94.js.map +1 -1
  479. package/dist/index95.js +1 -89
  480. package/dist/index95.js.map +1 -1
  481. package/dist/index96.js +98 -1
  482. package/dist/index96.js.map +1 -1
  483. package/dist/index97.js +1 -119
  484. package/dist/index97.js.map +1 -1
  485. package/dist/index98.js +129 -1
  486. package/dist/index98.js.map +1 -1
  487. package/dist/index99.js +1 -227
  488. package/dist/index99.js.map +1 -1
  489. package/dist/style.css +1 -1
  490. package/dist/utilities/functions/last.d.ts +1 -1
  491. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index118.js","sources":["../src/components/BbSmoothHeight/BbSmoothHeight.vue"],"sourcesContent":["<template>\n\t<component\n\t\t:is=\"tag\"\n\t\tref=\"container\"\n\t\tclass=\"bb-smooth-height\"\n\t\t:style=\"{ 'transition-duration': props.transitionDuration / 1000 + 's' }\"\n\t>\n\t\t<component :is=\"tag\" ref=\"content\" class=\"content\">\n\t\t\t<slot />\n\t\t</component>\n\t</component>\n</template>\n\n<script setup lang=\"ts\">\nimport type { CommonProps, NonVoidElementTag } from '@/types/CommonProps';\nimport { throttle } from '@/utilities/functions/throttle';\nimport { ref, onMounted, onBeforeUnmount } from 'vue';\n\nexport type BbSmoothHeightProps = {\n\t/**\n\t * Options to pass to the MutationObserver\n\t */\n\tmutationOptions?: MutationObserverInit; // eslint-disable-line no-undef\n\t/**\n\t * Options to pass to the ResizeObserver\n\t */\n\tresizeOptions?: ResizeObserverOptions; // eslint-disable-line no-undef\n\t/**\n\t * Define which strategy to use. By default is used 'resize' which means the\n\t * component will update on resizing.\n\t * You can also define 'mutation' to use a MutationObserver\n\t */\n\tstrategy?: 'resize' | 'mutation';\n} & NonVoidElementTag &\n\tPick<CommonProps, 'transitionDuration'>;\n\nconst props = withDefaults(defineProps<BbSmoothHeightProps>(), {\n\ttransitionDuration: 200,\n\tstrategy: 'resize',\n\tmutationOptions: () => ({ childList: true }),\n\ttag: 'div',\n});\n\nexport type BbSmoothHeightSlots = {\n\tdefault?: (props: object) => any;\n};\n\ndefineSlots<BbSmoothHeightSlots>();\n\nconst container = ref<HTMLElement | null>(null);\nconst content = ref<HTMLElement | null>(null);\nconst observer = ref<ResizeObserver | MutationObserver | null>(null);\n\nif (globalThis.ResizeObserver) {\n\tonMounted(() => {\n\t\tif (props.strategy === 'resize') {\n\t\t\tif (content.value) {\n\t\t\t\tobserver.value = new ResizeObserver(onContentGrow);\n\t\t\t\tobserver.value.observe(content.value, props.resizeOptions);\n\t\t\t}\n\t\t} else if (props.strategy === 'mutation') {\n\t\t\tif (content.value) {\n\t\t\t\tobserver.value = new MutationObserver(onContentGrow);\n\t\t\t\tobserver.value.observe(content.value, props.mutationOptions);\n\t\t\t}\n\t\t}\n\t\tonContentGrow();\n\t});\n\tonBeforeUnmount(() => {\n\t\tif (observer.value) {\n\t\t\tobserver.value.disconnect();\n\t\t}\n\t});\n}\n\n/**\n * This is called when content changes.\n * It could be called numerous times so throttle every 200ms\n */\nconst onContentGrow = throttle(() => {\n\tif (container.value && content.value) {\n\t\tconst contentHeight = content.value.scrollHeight + 2;\n\t\tcontainer.value.style.height = '0px';\n\t\tcontainer.value.style.height = `${contentHeight}px`;\n\t}\n}, 200);\n</script>\n\n<style lang=\"postcss\">\n@import '@/assets/css/BbSmoothHeight';\n</style>\n"],"names":["props","__props","container","ref","content","observer","onMounted","onContentGrow","onBeforeUnmount","throttle","contentHeight"],"mappings":";;;;;;;;;;;;AAoCA,UAAMA,IAAQC,GAaRC,IAAYC,EAAwB,IAAI,GACxCC,IAAUD,EAAwB,IAAI,GACtCE,IAAWF,EAA8C,IAAI;AAEnE,IAAI,WAAW,mBACdG,EAAU,MAAM;AACX,MAAAN,EAAM,aAAa,WAClBI,EAAQ,UACFC,EAAA,QAAQ,IAAI,eAAeE,CAAa,GACjDF,EAAS,MAAM,QAAQD,EAAQ,OAAOJ,EAAM,aAAa,KAEhDA,EAAM,aAAa,cACzBI,EAAQ,UACFC,EAAA,QAAQ,IAAI,iBAAiBE,CAAa,GACnDF,EAAS,MAAM,QAAQD,EAAQ,OAAOJ,EAAM,eAAe,IAG/CO;IAAA,CACd,GACDC,EAAgB,MAAM;AACrB,MAAIH,EAAS,SACZA,EAAS,MAAM;IAChB,CACA;AAOI,UAAAE,IAAgBE,EAAS,MAAM;AAChC,UAAAP,EAAU,SAASE,EAAQ,OAAO;AAC/B,cAAAM,IAAgBN,EAAQ,MAAM,eAAe;AACzC,QAAAF,EAAA,MAAM,MAAM,SAAS,OAC/BA,EAAU,MAAM,MAAM,SAAS,GAAGQ,CAAa;AAAA,MAChD;AAAA,OACE,GAAG;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index118.js","sources":["../src/components/BbIcon/BbIcon.vue"],"sourcesContent":["<template>\n\t<i v-bind=\"iconAttributes\" v-html=\"icon\"></i>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, getCurrentInstance, inject, ref, watchEffect } from 'vue';\nimport { isCssColor } from '@/utilities/functions/isCssColor';\nimport type { Size as S } from '@/types/CommonProps';\n\nexport type Size = {\n\txs: number;\n\tsm: number;\n\tmd: number;\n\tlg: number;\n\txl: number;\n\txxl: number;\n};\n\nexport type BbIconProps = S<Size> & {\n\t/**\n\t * Define a color for the component.\n\t *\n\t * Either a custom color or a coded color in common HEX, RGB, etc... format.\n\t */\n\tcolor?: string;\n\t/**\n\t * Name of the icon to use\n\t */\n\ttype: string;\n};\nconst props = withDefaults(defineProps<BbIconProps>(), {\n\tsize: 'md',\n});\nlet icons: Record<string, () => Promise<string>> | undefined;\n// @ts-expect-error possibily undef\nconst isNuxt = !!getCurrentInstance()?.proxy?.$nuxt;\n\nif (isNuxt) {\n\t// @ts-expect-error possibily undef\n\tif (process.client) {\n\t\t// @ts-expect-error possibily undef\n\t\ticons = useNuxtApp()[`$icons`] as typeof icons; // eslint-disable-line no-undef\n\t}\n} else {\n\ticons = inject('icons');\n}\n\nconst sizeMap: Size = {\n\txs: 12,\n\tsm: 16,\n\tmd: 24,\n\tlg: 28,\n\txl: 36,\n\txxl: 40,\n};\n\nconst iconAttributes = computed(() => {\n\tconst classes: any = {\n\t\t'bb-icon': true,\n\t};\n\tconst width = computed(() => {\n\t\tlet dimension: number;\n\t\tif (typeof props.size === 'string') {\n\t\t\tdimension = sizeMap[props.size as keyof Size] ?? parseInt(props.size, 10);\n\t\t} else if (typeof props.size === 'number') {\n\t\t\tdimension = props.size;\n\t\t} else {\n\t\t\tdimension = 24;\n\t\t}\n\t\treturn dimension + `px`;\n\t});\n\tlet style: { [key: string]: any } = { width: width.value };\n\n\tif (props.color) {\n\t\tif (isCssColor(props.color)) {\n\t\t\tstyle.color = props.color;\n\t\t} else {\n\t\t\tclasses[`bb-icon-${props.color}`] = true;\n\t\t}\n\t}\n\treturn {\n\t\tclass: classes,\n\t\tstyle,\n\t};\n});\n\nconst icon = ref<string | null>(null);\n\nwatchEffect(async () => {\n\tif (icons) {\n\t\tif (typeof icons[props.type] === 'undefined')\n\t\t\tthrow new Error(`Icon \"${props.type}\" does not exist.`);\n\t\ticon.value = await icons[props.type]();\n\t}\n});\n</script>\n\n<style lang=\"postcss\">\n@import '@/assets/css/BbIcon';\n</style>\n"],"names":["props","__props","icons","_b","_a","getCurrentInstance","inject","sizeMap","iconAttributes","computed","classes","style","dimension","isCssColor","icon","ref","watchEffect"],"mappings":";;;;;;;;;;;AA8BA,UAAMA,IAAQC;AAGV,QAAAC;AAIJ,IAFe,CAAC,GAACC,KAAAC,IAAAC,EAAA,MAAA,gBAAAD,EAAsB,UAAtB,QAAAD,EAA6B,SAIzC,QAAQ,WAEHD,IAAA,WAAA,EAAa,UAGtBA,IAAQI,EAAO,OAAO;AAGvB,UAAMC,IAAgB;AAAA,MACrB,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,KAAK;AAAA,IAAA,GAGAC,IAAiBC,EAAS,MAAM;AACrC,YAAMC,IAAe;AAAA,QACpB,WAAW;AAAA,MAAA;AAaZ,UAAIC,IAAgC,EAAE,OAXxBF,EAAS,MAAM;AACxB,YAAAG;AACA,eAAA,OAAOZ,EAAM,QAAS,WACzBY,IAAYL,EAAQP,EAAM,IAAkB,KAAK,SAASA,EAAM,MAAM,EAAE,IAC9D,OAAOA,EAAM,QAAS,WAChCY,IAAYZ,EAAM,OAENY,IAAA,IAENA,IAAY;AAAA,MAAA,CACnB,EACkD,MAAM;AAEzD,aAAIZ,EAAM,UACLa,EAAWb,EAAM,KAAK,IACzBW,EAAM,QAAQX,EAAM,QAEpBU,EAAQ,WAAWV,EAAM,KAAK,EAAE,IAAI,KAG/B;AAAA,QACN,OAAOU;AAAA,QACP,OAAAC;AAAA,MAAA;AAAA,IACD,CACA,GAEKG,IAAOC,EAAmB,IAAI;AAEpC,WAAAC,EAAY,YAAY;AACvB,UAAId,GAAO;AACV,YAAI,OAAOA,EAAMF,EAAM,IAAI,IAAM;AAChC,gBAAM,IAAI,MAAM,SAASA,EAAM,IAAI,mBAAmB;AACvD,QAAAc,EAAK,QAAQ,MAAMZ,EAAMF,EAAM,IAAI,EAAE;AAAA,MACtC;AAAA,IAAA,CACA;;;"}
package/dist/index119.js CHANGED
@@ -1,46 +1,50 @@
1
- import { defineComponent as m, computed as r, openBlock as a, createElementBlock as d, normalizeProps as u, guardReactiveProps as z, createElementVNode as c } from "vue";
2
- import { isCssColor as f } from "./index219.js";
3
- const _ = /* @__PURE__ */ c("svg", {
4
- viewBox: "0 0 512 512",
5
- xmlns: "http://www.w3.org/2000/svg"
6
- }, [
7
- /* @__PURE__ */ c("path", {
8
- d: "M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z",
9
- fill: "currentColor"
10
- })
11
- ], -1), x = [
12
- _
13
- ], b = /* @__PURE__ */ m({
14
- __name: "BbSpinner",
1
+ import { defineComponent as v, ref as r, onMounted as p, onBeforeUnmount as h, openBlock as i, createBlock as l, resolveDynamicComponent as u, normalizeStyle as m, withCtx as f, renderSlot as d } from "vue";
2
+ import { throttle as g } from "./index219.js";
3
+ const O = /* @__PURE__ */ v({
4
+ __name: "BbSmoothHeight",
15
5
  props: {
16
- color: {},
17
- size: { default: "md" }
6
+ mutationOptions: { default: () => ({ childList: !0 }) },
7
+ resizeOptions: {},
8
+ strategy: { default: "resize" },
9
+ tag: { default: "div" },
10
+ transitionDuration: { default: 200 }
18
11
  },
19
- setup(n) {
20
- const e = n, i = {
21
- xs: 12,
22
- sm: 16,
23
- md: 24,
24
- lg: 28,
25
- xl: 36,
26
- xxl: 40
27
- }, l = r(() => {
28
- const s = {
29
- "bb-spinner": !0
30
- };
31
- let t = { width: r(() => {
32
- let o;
33
- return typeof e.size == "string" ? o = i[e.size] ?? parseInt(e.size, 10) : o = e.size, o + "px";
34
- }).value };
35
- return e.color && (f(e.color) ? t.color = e.color : s[`bb-spinner--${e.color}`] = !0), {
36
- class: s,
37
- style: t
38
- };
39
- });
40
- return (s, p) => (a(), d("span", u(z(l.value)), x, 16));
12
+ setup(c) {
13
+ const n = c, s = r(null), e = r(null), t = r(null);
14
+ globalThis.ResizeObserver && (p(() => {
15
+ n.strategy === "resize" ? e.value && (t.value = new ResizeObserver(a), t.value.observe(e.value, n.resizeOptions)) : n.strategy === "mutation" && e.value && (t.value = new MutationObserver(a), t.value.observe(e.value, n.mutationOptions)), a();
16
+ }), h(() => {
17
+ t.value && t.value.disconnect();
18
+ }));
19
+ const a = g(() => {
20
+ if (s.value && e.value) {
21
+ const o = e.value.scrollHeight + 2;
22
+ s.value.style.height = "0px", s.value.style.height = `${o}px`;
23
+ }
24
+ }, 200);
25
+ return (o, y) => (i(), l(u(o.tag), {
26
+ ref_key: "container",
27
+ ref: s,
28
+ class: "bb-smooth-height",
29
+ style: m({ "transition-duration": n.transitionDuration / 1e3 + "s" })
30
+ }, {
31
+ default: f(() => [
32
+ (i(), l(u(o.tag), {
33
+ ref_key: "content",
34
+ ref: e,
35
+ class: "content"
36
+ }, {
37
+ default: f(() => [
38
+ d(o.$slots, "default")
39
+ ]),
40
+ _: 3
41
+ }, 512))
42
+ ]),
43
+ _: 3
44
+ }, 8, ["style"]));
41
45
  }
42
46
  });
43
47
  export {
44
- b as default
48
+ O as default
45
49
  };
46
50
  //# sourceMappingURL=index119.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index119.js","sources":["../src/components/BbSpinner/BbSpinner.vue"],"sourcesContent":["<template>\n\t<span v-bind=\"iconAttributes\">\n\t\t<svg viewBox=\"0 0 512 512\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t\t<path\n\t\t\t\td=\"M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z\"\n\t\t\t\tfill=\"currentColor\"\n\t\t\t/>\n\t\t</svg>\n\t</span>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport { isCssColor } from '@/utilities/functions/isCssColor';\nimport type { Classes } from '@/types/Classes';\nimport type { CommonProps, Size as S } from '@/types/CommonProps';\nimport type { Size as IconSize } from '../BbIcon/BbIcon.vue';\n\nexport type Size = IconSize;\nexport type BbSpinnerProps = Pick<CommonProps, 'color'> & S<IconSize>;\n\nconst props = withDefaults(defineProps<BbSpinnerProps>(), {\n\tsize: 'md',\n});\n\nconst sizeMap: IconSize = {\n\txs: 12,\n\tsm: 16,\n\tmd: 24,\n\tlg: 28,\n\txl: 36,\n\txxl: 40,\n};\n\nconst iconAttributes = computed(() => {\n\tconst classes: Classes = {\n\t\t'bb-spinner': true,\n\t};\n\tconst width = computed(() => {\n\t\tlet dimension: number;\n\t\tif (typeof props.size === 'string') {\n\t\t\tdimension =\n\t\t\t\tsizeMap[props.size as keyof IconSize] ?? parseInt(props.size, 10);\n\t\t} else {\n\t\t\tdimension = props.size;\n\t\t}\n\t\treturn dimension + `px`;\n\t});\n\tlet style: { [key: string]: any } = { width: width.value };\n\n\tif (props.color) {\n\t\tif (isCssColor(props.color)) {\n\t\t\tstyle.color = props.color;\n\t\t} else {\n\t\t\tclasses[`bb-spinner--${props.color}`] = true;\n\t\t}\n\t}\n\treturn {\n\t\tclass: classes,\n\t\tstyle,\n\t};\n});\n</script>\n\n<style lang=\"postcss\">\n@import '@/assets/css/BbSpinner';\n</style>\n"],"names":["props","__props","sizeMap","iconAttributes","computed","classes","style","dimension","isCssColor"],"mappings":";;;;;;;;;;;;;;;;;;;AAqBA,UAAMA,IAAQC,GAIRC,IAAoB;AAAA,MACzB,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,KAAK;AAAA,IAAA,GAGAC,IAAiBC,EAAS,MAAM;AACrC,YAAMC,IAAmB;AAAA,QACxB,cAAc;AAAA,MAAA;AAYf,UAAIC,IAAgC,EAAE,OAVxBF,EAAS,MAAM;AACxB,YAAAG;AACA,eAAA,OAAOP,EAAM,QAAS,WACzBO,IACCL,EAAQF,EAAM,IAAsB,KAAK,SAASA,EAAM,MAAM,EAAE,IAEjEO,IAAYP,EAAM,MAEZO,IAAY;AAAA,MAAA,CACnB,EACkD,MAAM;AAEzD,aAAIP,EAAM,UACLQ,EAAWR,EAAM,KAAK,IACzBM,EAAM,QAAQN,EAAM,QAEpBK,EAAQ,eAAeL,EAAM,KAAK,EAAE,IAAI,KAGnC;AAAA,QACN,OAAOK;AAAA,QACP,OAAAC;AAAA,MAAA;AAAA,IACD,CACA;;;;"}
1
+ {"version":3,"file":"index119.js","sources":["../src/components/BbSmoothHeight/BbSmoothHeight.vue"],"sourcesContent":["<template>\n\t<component\n\t\t:is=\"tag\"\n\t\tref=\"container\"\n\t\tclass=\"bb-smooth-height\"\n\t\t:style=\"{ 'transition-duration': props.transitionDuration / 1000 + 's' }\"\n\t>\n\t\t<component :is=\"tag\" ref=\"content\" class=\"content\">\n\t\t\t<slot />\n\t\t</component>\n\t</component>\n</template>\n\n<script setup lang=\"ts\">\nimport type { CommonProps, NonVoidElementTag } from '@/types/CommonProps';\nimport { throttle } from '@/utilities/functions/throttle';\nimport { ref, onMounted, onBeforeUnmount } from 'vue';\n\nexport type BbSmoothHeightProps = {\n\t/**\n\t * Options to pass to the MutationObserver\n\t */\n\tmutationOptions?: MutationObserverInit; // eslint-disable-line no-undef\n\t/**\n\t * Options to pass to the ResizeObserver\n\t */\n\tresizeOptions?: ResizeObserverOptions; // eslint-disable-line no-undef\n\t/**\n\t * Define which strategy to use. By default is used 'resize' which means the\n\t * component will update on resizing.\n\t * You can also define 'mutation' to use a MutationObserver\n\t */\n\tstrategy?: 'resize' | 'mutation';\n} & NonVoidElementTag &\n\tPick<CommonProps, 'transitionDuration'>;\n\nconst props = withDefaults(defineProps<BbSmoothHeightProps>(), {\n\ttransitionDuration: 200,\n\tstrategy: 'resize',\n\tmutationOptions: () => ({ childList: true }),\n\ttag: 'div',\n});\n\nexport type BbSmoothHeightSlots = {\n\tdefault?: (props: object) => any;\n};\n\ndefineSlots<BbSmoothHeightSlots>();\n\nconst container = ref<HTMLElement | null>(null);\nconst content = ref<HTMLElement | null>(null);\nconst observer = ref<ResizeObserver | MutationObserver | null>(null);\n\nif (globalThis.ResizeObserver) {\n\tonMounted(() => {\n\t\tif (props.strategy === 'resize') {\n\t\t\tif (content.value) {\n\t\t\t\tobserver.value = new ResizeObserver(onContentGrow);\n\t\t\t\tobserver.value.observe(content.value, props.resizeOptions);\n\t\t\t}\n\t\t} else if (props.strategy === 'mutation') {\n\t\t\tif (content.value) {\n\t\t\t\tobserver.value = new MutationObserver(onContentGrow);\n\t\t\t\tobserver.value.observe(content.value, props.mutationOptions);\n\t\t\t}\n\t\t}\n\t\tonContentGrow();\n\t});\n\tonBeforeUnmount(() => {\n\t\tif (observer.value) {\n\t\t\tobserver.value.disconnect();\n\t\t}\n\t});\n}\n\n/**\n * This is called when content changes.\n * It could be called numerous times so throttle every 200ms\n */\nconst onContentGrow = throttle(() => {\n\tif (container.value && content.value) {\n\t\tconst contentHeight = content.value.scrollHeight + 2;\n\t\tcontainer.value.style.height = '0px';\n\t\tcontainer.value.style.height = `${contentHeight}px`;\n\t}\n}, 200);\n</script>\n\n<style lang=\"postcss\">\n@import '@/assets/css/BbSmoothHeight';\n</style>\n"],"names":["props","__props","container","ref","content","observer","onMounted","onContentGrow","onBeforeUnmount","throttle","contentHeight"],"mappings":";;;;;;;;;;;;AAoCA,UAAMA,IAAQC,GAaRC,IAAYC,EAAwB,IAAI,GACxCC,IAAUD,EAAwB,IAAI,GACtCE,IAAWF,EAA8C,IAAI;AAEnE,IAAI,WAAW,mBACdG,EAAU,MAAM;AACX,MAAAN,EAAM,aAAa,WAClBI,EAAQ,UACFC,EAAA,QAAQ,IAAI,eAAeE,CAAa,GACjDF,EAAS,MAAM,QAAQD,EAAQ,OAAOJ,EAAM,aAAa,KAEhDA,EAAM,aAAa,cACzBI,EAAQ,UACFC,EAAA,QAAQ,IAAI,iBAAiBE,CAAa,GACnDF,EAAS,MAAM,QAAQD,EAAQ,OAAOJ,EAAM,eAAe,IAG/CO;IAAA,CACd,GACDC,EAAgB,MAAM;AACrB,MAAIH,EAAS,SACZA,EAAS,MAAM;IAChB,CACA;AAOI,UAAAE,IAAgBE,EAAS,MAAM;AAChC,UAAAP,EAAU,SAASE,EAAQ,OAAO;AAC/B,cAAAM,IAAgBN,EAAQ,MAAM,eAAe;AACzC,QAAAF,EAAA,MAAM,MAAM,SAAS,OAC/BA,EAAU,MAAM,MAAM,SAAS,GAAGQ,CAAa;AAAA,MAChD;AAAA,OACE,GAAG;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index12.js CHANGED
@@ -1,2 +1,129 @@
1
-
1
+ import { defineComponent as C, ref as p, computed as n, watch as E, openBlock as u, createElementBlock as c, normalizeClass as I, normalizeProps as h, mergeProps as i, createCommentVNode as F, createElementVNode as d, renderSlot as N, guardReactiveProps as A } from "vue";
2
+ import { isCssColor as f } from "./index198.js";
3
+ import { when as L } from "./index199.js";
4
+ const M = {
5
+ "aria-hidden": "true",
6
+ class: "bb-base-checkbox-container"
7
+ }, S = /* @__PURE__ */ d("path", {
8
+ d: "M 297.574 224.786 L 318.309 243.134 L 371.568 189.232",
9
+ fill: "none",
10
+ "stroke-linecap": "round",
11
+ "stroke-width": "14px"
12
+ }, null, -1), J = [
13
+ S
14
+ ], $ = /* @__PURE__ */ C({
15
+ __name: "BaseCheckbox",
16
+ props: {
17
+ ariaDescribedby: {},
18
+ autofocus: {},
19
+ checked: {},
20
+ color: {},
21
+ disabled: { type: Boolean },
22
+ falseValue: { default: !1 },
23
+ hasErrors: { type: Boolean },
24
+ id: {},
25
+ indeterminate: {},
26
+ name: {},
27
+ readonly: {},
28
+ submitWhenFalse: { type: Boolean },
29
+ trueValue: { default: !0 },
30
+ modelValue: {}
31
+ },
32
+ emits: ["blur", "change", "click", "focus", "input", "keydown", "mousedown", "mouseup", "update:modelValue"],
33
+ setup(k, { emit: y }) {
34
+ const e = k, t = y, l = p(null), s = n(() => e.checked ? !0 : JSON.stringify(e.trueValue) === JSON.stringify(e.modelValue)), r = p(!1), v = n(() => ({
35
+ "bb-base-checkbox": !0,
36
+ "bb-base-checkbox--disabled": e.disabled,
37
+ "bb-base-checkbox--errors": e.hasErrors,
38
+ "bb-base-checkbox--indeterminate": e.indeterminate,
39
+ "bb-base-checkbox--readonly": e.readonly,
40
+ [`bb-base-checkbox--${e.color}`]: e.color && !f(e.color)
41
+ })), b = L(
42
+ (a) => typeof a != "string",
43
+ JSON.stringify
44
+ ), V = n(() => {
45
+ const a = b(e.falseValue);
46
+ return {
47
+ disabled: e.disabled,
48
+ name: e.name,
49
+ type: "hidden",
50
+ value: a
51
+ };
52
+ }), m = n(() => {
53
+ const a = b(e.trueValue), w = {
54
+ onBlur: (o) => {
55
+ r.value = !1, t("blur", o);
56
+ },
57
+ onChange: (o) => {
58
+ if (o.target instanceof HTMLInputElement) {
59
+ let B = o.target.checked ? e.trueValue : e.falseValue;
60
+ t("change", o), t("update:modelValue", B);
61
+ }
62
+ },
63
+ onClick: (o) => t("click", o),
64
+ onFocus: (o) => {
65
+ r.value = !0, t("focus", o);
66
+ },
67
+ onKeydown: (o) => t("keydown", o),
68
+ onMousedown: (o) => t("mousedown", o),
69
+ onMouseup: (o) => t("mouseup", o),
70
+ onInput: (o) => t("input", o)
71
+ };
72
+ return {
73
+ "aria-describedby": e.ariaDescribedby,
74
+ autofocus: e.autofocus,
75
+ checked: s.value,
76
+ // There is no such thing as readonly checkbox so we disable and style it with css
77
+ disabled: e.disabled || e.readonly,
78
+ id: e.id,
79
+ indeterminate: e.indeterminate,
80
+ name: e.name,
81
+ tabindex: e.disabled ? -1 : void 0,
82
+ type: "checkbox",
83
+ value: a,
84
+ ...w
85
+ };
86
+ }), x = n(() => ({
87
+ checked: s.value,
88
+ disabled: e.disabled,
89
+ falseValue: e.falseValue,
90
+ focused: r.value,
91
+ hasErrors: e.hasErrors,
92
+ id: e.id,
93
+ name: e.name,
94
+ parsedValue: m.value.value,
95
+ readonly: e.readonly,
96
+ trueValue: e.trueValue,
97
+ value: s.value ? e.trueValue : e.falseValue
98
+ })), g = n(() => {
99
+ let a = {};
100
+ return e.color && f(e.color) && (a.color = e.color), {
101
+ class: "bb-base-checkbox-container__icon",
102
+ style: a
103
+ };
104
+ });
105
+ return E(
106
+ () => [e.modelValue, e.checked, e.indeterminate],
107
+ () => {
108
+ l.value && (l.value.indeterminate = !!e.indeterminate);
109
+ }
110
+ ), (a, _) => (u(), c("span", {
111
+ class: I(v.value)
112
+ }, [
113
+ !s.value && a.submitWhenFalse ? (u(), c("input", h(i({ key: 0 }, V.value)), null, 16)) : F("", !0),
114
+ d("input", i(m.value, {
115
+ ref_key: "checkboxInput",
116
+ ref: l
117
+ }), null, 16),
118
+ d("span", M, [
119
+ N(a.$slots, "icon", h(A(x.value)), () => [
120
+ (u(), c("svg", i({ viewBox: "276.411 158.834 114.971 114.97" }, g.value), J, 16))
121
+ ])
122
+ ])
123
+ ], 2));
124
+ }
125
+ });
126
+ export {
127
+ $ as default
128
+ };
2
129
  //# sourceMappingURL=index12.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index12.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
1
+ {"version":3,"file":"index12.js","sources":["../src/components/BaseCheckbox/BaseCheckbox.vue"],"sourcesContent":["<template>\n\t<span :class=\"classes\">\n\t\t<input v-if=\"!checked && submitWhenFalse\" v-bind=\"hiddenInputAttributes\" />\n\t\t<input v-bind=\"inputAttributes\" ref=\"checkboxInput\" />\n\t\t<span aria-hidden=\"true\" class=\"bb-base-checkbox-container\">\n\t\t\t<slot name=\"icon\" v-bind=\"slotAttributes\">\n\t\t\t\t<svg viewBox=\"276.411 158.834 114.971 114.97\" v-bind=\"iconAttributes\">\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M 297.574 224.786 L 318.309 243.134 L 371.568 189.232\"\n\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\t\tstroke-width=\"14px\"\n\t\t\t\t\t></path>\n\t\t\t\t</svg>\n\t\t\t</slot>\n\t\t</span>\n\t</span>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref, watch } from 'vue';\nimport { isCssColor } from '@/utilities/functions/isCssColor';\nimport { when } from '@/utilities/functions/when';\nimport type { HTMLAttributes, InputHTMLAttributes } from 'vue';\n\nexport type BaseCheckboxProps = {\n\t/**\n\t * Guides to the browser as to the type of information expected in the field.\n\t */\n\tariaDescribedby?: InputHTMLAttributes['aria-describedby'];\n\t/**\n\t * Sets autofocus on page load.\n\t */\n\tautofocus?: InputHTMLAttributes['autofocus'];\n\n\t/**\n\t * Defines the input as checked\n\t */\n\tchecked?: InputHTMLAttributes['checked'];\n\n\t/**\n\t * Define a color for the component.\n\t *\n\t * Either a custom color or a coded color in common HEX, RGB, etc... format.\n\t */\n\tcolor?: string;\n\n\t/**\n\t * Disables the component\n\t */\n\tdisabled?: boolean;\n\n\t/**\n\t * Value of the input when unchecked. It handles any kind of serializable object.\n\t */\n\tfalseValue?: any;\n\n\t/**\n\t * Define if the component should be in an error state.\n\t * It usually attaches a CSS class for styling purposes.\n\t */\n\thasErrors?: boolean;\n\n\t/**\n\t * The identifier of the component.\n\t */\n\tid?: HTMLAttributes['id'];\n\n\t/**\n\t * Sets the input in an indeterminate state.\n\t */\n\tindeterminate?: InputHTMLAttributes['indeterminate'];\n\n\t/**\n\t * Defines the name of the input.\n\t */\n\tname?: InputHTMLAttributes['name'];\n\n\t/**\n\t * Sets the input in a readonly state.\n\t */\n\treadonly?: InputHTMLAttributes['readonly'];\n\n\t/**\n\t * Will submit \"falseValue\" if the input is not checked. Otherwise \"trueValue\" will be submitted.\n\t */\n\tsubmitWhenFalse?: boolean;\n\n\t/**\n\t * Value of the input when checked. It handles any kind of serializable object.\n\t */\n\ttrueValue?: any;\n\t/**\n\t * Used by v-model. Can be any serializable type.\n\t */\n\tmodelValue?: any;\n};\n\nexport type BaseCheckboxEvents = {\n\t(e: 'blur', event: FocusEvent): void;\n\t(e: 'change', event: Event): void;\n\t(e: 'click', event: MouseEvent): void;\n\t(e: 'focus', event: FocusEvent): void;\n\t(e: 'input', event: Event): void;\n\t(e: 'keydown', event: KeyboardEvent): void;\n\t(e: 'mousedown', event: MouseEvent): void;\n\t(e: 'mouseup', event: MouseEvent): void;\n\t(e: 'update:modelValue', value: any): void;\n};\n\nexport type SlotAttributes = {\n\tchecked: boolean;\n\tdisabled: Exclude<BaseCheckboxProps['disabled'], undefined>;\n\tfalseValue: any;\n\tfocused: boolean;\n\thasErrors: Exclude<BaseCheckboxProps['hasErrors'], undefined>;\n\tid: BaseCheckboxProps['id'];\n\tname: BaseCheckboxProps['name'];\n\tparsedValue: any;\n\treadonly: BaseCheckboxProps['readonly'];\n\ttrueValue: any;\n\tvalue: any;\n};\n\nconst props = withDefaults(defineProps<BaseCheckboxProps>(), {\n\ttrueValue: true,\n\tfalseValue: false,\n});\n\nconst emit = defineEmits<BaseCheckboxEvents>();\n\ndefineSlots<{\n\ticon?: (props: SlotAttributes) => any;\n}>();\n\nconst checkboxInput = ref<HTMLInputElement | null>(null);\n\nconst checked = computed(() => {\n\tif (props.checked) return true;\n\treturn JSON.stringify(props.trueValue) === JSON.stringify(props.modelValue);\n});\nconst hasFocus = ref(false);\n\nconst classes = computed(() => {\n\treturn {\n\t\t'bb-base-checkbox': true,\n\t\t'bb-base-checkbox--disabled': props.disabled,\n\t\t'bb-base-checkbox--errors': props.hasErrors,\n\t\t'bb-base-checkbox--indeterminate': props.indeterminate,\n\t\t'bb-base-checkbox--readonly': props.readonly,\n\t\t[`bb-base-checkbox--${props.color}`]:\n\t\t\tprops.color && !isCssColor(props.color),\n\t};\n});\n\n/**\n * This is used to keep the value compatible to common html expected values.\n * Convert to string everything that's not but do not double encode strings\n */\nconst makeInputValue = when(\n\t(item: unknown) => typeof item !== 'string',\n\tJSON.stringify\n);\n\nconst hiddenInputAttributes = computed(() => {\n\tconst value = makeInputValue(props.falseValue);\n\treturn {\n\t\tdisabled: props.disabled,\n\t\tname: props.name,\n\t\ttype: 'hidden',\n\t\tvalue: value,\n\t};\n});\n\nconst inputAttributes = computed(() => {\n\tconst value = makeInputValue(props.trueValue);\n\n\tconst onBlur = (event: FocusEvent): void => {\n\t\thasFocus.value = false;\n\t\temit('blur', event);\n\t};\n\n\tconst onChange = (event: Event): void => {\n\t\tif (event.target instanceof HTMLInputElement) {\n\t\t\tlet value = event.target.checked ? props.trueValue : props.falseValue;\n\n\t\t\temit('change', event);\n\t\t\temit('update:modelValue', value);\n\t\t}\n\t};\n\n\tconst onFocus = (event: FocusEvent): void => {\n\t\thasFocus.value = true;\n\t\temit('focus', event);\n\t};\n\n\tconst eventListeners = {\n\t\tonBlur,\n\t\tonChange,\n\t\tonClick: (event: MouseEvent) => emit('click', event),\n\t\tonFocus,\n\t\tonKeydown: (event: KeyboardEvent) => emit('keydown', event),\n\t\tonMousedown: (event: MouseEvent) => emit('mousedown', event),\n\t\tonMouseup: (event: MouseEvent) => emit('mouseup', event),\n\t\tonInput: (event: Event) => emit('input', event),\n\t};\n\n\treturn {\n\t\t'aria-describedby': props.ariaDescribedby,\n\t\tautofocus: props.autofocus,\n\t\tchecked: checked.value,\n\t\t// There is no such thing as readonly checkbox so we disable and style it with css\n\t\tdisabled: props.disabled || props.readonly,\n\t\tid: props.id,\n\t\tindeterminate: props.indeterminate,\n\t\tname: props.name,\n\t\ttabindex: props.disabled ? -1 : undefined,\n\t\ttype: 'checkbox',\n\t\tvalue: value,\n\t\t...eventListeners,\n\t};\n});\n\nconst slotAttributes = computed(() => ({\n\tchecked: checked.value,\n\tdisabled: props.disabled,\n\tfalseValue: props.falseValue,\n\tfocused: hasFocus.value,\n\thasErrors: props.hasErrors,\n\tid: props.id,\n\tname: props.name,\n\tparsedValue: inputAttributes.value.value,\n\treadonly: props.readonly,\n\ttrueValue: props.trueValue,\n\tvalue: checked.value ? props.trueValue : props.falseValue,\n}));\n\nconst iconAttributes = computed(() => {\n\tlet style: { [key: string]: string } = {};\n\tif (props.color && isCssColor(props.color)) {\n\t\tstyle.color = props.color;\n\t}\n\treturn {\n\t\tclass: 'bb-base-checkbox-container__icon',\n\t\tstyle,\n\t};\n});\n\n/**\n * Indeterminate is a very volatile prop that is reset upon clicking,\n * this keeps the state and the prop aligned\n */\nwatch(\n\t() => [props.modelValue, props.checked, props.indeterminate],\n\t() => {\n\t\tif (checkboxInput.value) {\n\t\t\tcheckboxInput.value.indeterminate = !!props.indeterminate;\n\t\t}\n\t}\n);\n</script>\n<style lang=\"postcss\">\n@import '@/assets/css/BaseCheckbox';\n</style>\n"],"names":["props","__props","emit","__emit","checkboxInput","ref","checked","computed","hasFocus","classes","isCssColor","makeInputValue","when","item","hiddenInputAttributes","value","inputAttributes","eventListeners","event","slotAttributes","iconAttributes","style","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4HA,UAAMA,IAAQC,GAKRC,IAAOC,GAMPC,IAAgBC,EAA6B,IAAI,GAEjDC,IAAUC,EAAS,MACpBP,EAAM,UAAgB,KACnB,KAAK,UAAUA,EAAM,SAAS,MAAM,KAAK,UAAUA,EAAM,UAAU,CAC1E,GACKQ,IAAWH,EAAI,EAAK,GAEpBI,IAAUF,EAAS,OACjB;AAAA,MACN,oBAAoB;AAAA,MACpB,8BAA8BP,EAAM;AAAA,MACpC,4BAA4BA,EAAM;AAAA,MAClC,mCAAmCA,EAAM;AAAA,MACzC,8BAA8BA,EAAM;AAAA,MACpC,CAAC,qBAAqBA,EAAM,KAAK,EAAE,GAClCA,EAAM,SAAS,CAACU,EAAWV,EAAM,KAAK;AAAA,IAAA,EAExC,GAMKW,IAAiBC;AAAA,MACtB,CAACC,MAAkB,OAAOA,KAAS;AAAA,MACnC,KAAK;AAAA,IAAA,GAGAC,IAAwBP,EAAS,MAAM;AACtC,YAAAQ,IAAQJ,EAAeX,EAAM,UAAU;AACtC,aAAA;AAAA,QACN,UAAUA,EAAM;AAAA,QAChB,MAAMA,EAAM;AAAA,QACZ,MAAM;AAAA,QACN,OAAAe;AAAA,MAAA;AAAA,IACD,CACA,GAEKC,IAAkBT,EAAS,MAAM;AAChC,YAAAQ,IAAQJ,EAAeX,EAAM,SAAS,GAqBtCiB,IAAiB;AAAA,QACtB,QApBc,CAACC,MAA4B;AAC3C,UAAAV,EAAS,QAAQ,IACjBN,EAAK,QAAQgB,CAAK;AAAA,QAAA;AAAA,QAmBlB,UAhBgB,CAACA,MAAuB;AACpC,cAAAA,EAAM,kBAAkB,kBAAkB;AAC7C,gBAAIH,IAAQG,EAAM,OAAO,UAAUlB,EAAM,YAAYA,EAAM;AAE3D,YAAAE,EAAK,UAAUgB,CAAK,GACpBhB,EAAK,qBAAqBa,CAAK;AAAA,UAChC;AAAA,QAAA;AAAA,QAWA,SAAS,CAACG,MAAsBhB,EAAK,SAASgB,CAAK;AAAA,QACnD,SATe,CAACA,MAA4B;AAC5C,UAAAV,EAAS,QAAQ,IACjBN,EAAK,SAASgB,CAAK;AAAA,QAAA;AAAA,QAQnB,WAAW,CAACA,MAAyBhB,EAAK,WAAWgB,CAAK;AAAA,QAC1D,aAAa,CAACA,MAAsBhB,EAAK,aAAagB,CAAK;AAAA,QAC3D,WAAW,CAACA,MAAsBhB,EAAK,WAAWgB,CAAK;AAAA,QACvD,SAAS,CAACA,MAAiBhB,EAAK,SAASgB,CAAK;AAAA,MAAA;AAGxC,aAAA;AAAA,QACN,oBAAoBlB,EAAM;AAAA,QAC1B,WAAWA,EAAM;AAAA,QACjB,SAASM,EAAQ;AAAA;AAAA,QAEjB,UAAUN,EAAM,YAAYA,EAAM;AAAA,QAClC,IAAIA,EAAM;AAAA,QACV,eAAeA,EAAM;AAAA,QACrB,MAAMA,EAAM;AAAA,QACZ,UAAUA,EAAM,WAAW,KAAK;AAAA,QAChC,MAAM;AAAA,QACN,OAAAe;AAAA,QACA,GAAGE;AAAA,MAAA;AAAA,IACJ,CACA,GAEKE,IAAiBZ,EAAS,OAAO;AAAA,MACtC,SAASD,EAAQ;AAAA,MACjB,UAAUN,EAAM;AAAA,MAChB,YAAYA,EAAM;AAAA,MAClB,SAASQ,EAAS;AAAA,MAClB,WAAWR,EAAM;AAAA,MACjB,IAAIA,EAAM;AAAA,MACV,MAAMA,EAAM;AAAA,MACZ,aAAagB,EAAgB,MAAM;AAAA,MACnC,UAAUhB,EAAM;AAAA,MAChB,WAAWA,EAAM;AAAA,MACjB,OAAOM,EAAQ,QAAQN,EAAM,YAAYA,EAAM;AAAA,IAC9C,EAAA,GAEIoB,IAAiBb,EAAS,MAAM;AACrC,UAAIc,IAAmC,CAAA;AACvC,aAAIrB,EAAM,SAASU,EAAWV,EAAM,KAAK,MACxCqB,EAAM,QAAQrB,EAAM,QAEd;AAAA,QACN,OAAO;AAAA,QACP,OAAAqB;AAAA,MAAA;AAAA,IACD,CACA;AAMD,WAAAC;AAAA,MACC,MAAM,CAACtB,EAAM,YAAYA,EAAM,SAASA,EAAM,aAAa;AAAA,MAC3D,MAAM;AACL,QAAII,EAAc,UACjBA,EAAc,MAAM,gBAAgB,CAAC,CAACJ,EAAM;AAAA,MAE9C;AAAA,IAAA;;;;;;;;;;;;;;;;"}
package/dist/index120.js CHANGED
@@ -1,5 +1,46 @@
1
- const r = (e) => typeof e > "u" || e === null;
1
+ import { defineComponent as m, computed as r, openBlock as a, createElementBlock as d, normalizeProps as u, guardReactiveProps as z, createElementVNode as c } from "vue";
2
+ import { isCssColor as f } from "./index198.js";
3
+ const _ = /* @__PURE__ */ c("svg", {
4
+ viewBox: "0 0 512 512",
5
+ xmlns: "http://www.w3.org/2000/svg"
6
+ }, [
7
+ /* @__PURE__ */ c("path", {
8
+ d: "M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z",
9
+ fill: "currentColor"
10
+ })
11
+ ], -1), x = [
12
+ _
13
+ ], b = /* @__PURE__ */ m({
14
+ __name: "BbSpinner",
15
+ props: {
16
+ color: {},
17
+ size: { default: "md" }
18
+ },
19
+ setup(n) {
20
+ const e = n, i = {
21
+ xs: 12,
22
+ sm: 16,
23
+ md: 24,
24
+ lg: 28,
25
+ xl: 36,
26
+ xxl: 40
27
+ }, l = r(() => {
28
+ const s = {
29
+ "bb-spinner": !0
30
+ };
31
+ let t = { width: r(() => {
32
+ let o;
33
+ return typeof e.size == "string" ? o = i[e.size] ?? parseInt(e.size, 10) : o = e.size, o + "px";
34
+ }).value };
35
+ return e.color && (f(e.color) ? t.color = e.color : s[`bb-spinner--${e.color}`] = !0), {
36
+ class: s,
37
+ style: t
38
+ };
39
+ });
40
+ return (s, p) => (a(), d("span", u(z(l.value)), x, 16));
41
+ }
42
+ });
2
43
  export {
3
- r as isNil
44
+ b as default
4
45
  };
5
46
  //# sourceMappingURL=index120.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index120.js","sources":["../src/utilities/functions/isNil.ts"],"sourcesContent":["/**\n * Returns true if the item is not null or undefined\n * @param value The item to check\n * @returns true | false\n */\nexport const isNil = (value: unknown) => {\n\tif (typeof value === 'undefined') return true;\n\tif (value === null) return true;\n\treturn false;\n};\n"],"names":["isNil","value"],"mappings":"AAKa,MAAAA,IAAQ,CAACC,MACjB,OAAOA,IAAU,OACjBA,MAAU;"}
1
+ {"version":3,"file":"index120.js","sources":["../src/components/BbSpinner/BbSpinner.vue"],"sourcesContent":["<template>\n\t<span v-bind=\"iconAttributes\">\n\t\t<svg viewBox=\"0 0 512 512\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t\t<path\n\t\t\t\td=\"M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z\"\n\t\t\t\tfill=\"currentColor\"\n\t\t\t/>\n\t\t</svg>\n\t</span>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport { isCssColor } from '@/utilities/functions/isCssColor';\nimport type { Classes } from '@/types/Classes';\nimport type { CommonProps, Size as S } from '@/types/CommonProps';\nimport type { Size as IconSize } from '../BbIcon/BbIcon.vue';\n\nexport type Size = IconSize;\nexport type BbSpinnerProps = Pick<CommonProps, 'color'> & S<IconSize>;\n\nconst props = withDefaults(defineProps<BbSpinnerProps>(), {\n\tsize: 'md',\n});\n\nconst sizeMap: IconSize = {\n\txs: 12,\n\tsm: 16,\n\tmd: 24,\n\tlg: 28,\n\txl: 36,\n\txxl: 40,\n};\n\nconst iconAttributes = computed(() => {\n\tconst classes: Classes = {\n\t\t'bb-spinner': true,\n\t};\n\tconst width = computed(() => {\n\t\tlet dimension: number;\n\t\tif (typeof props.size === 'string') {\n\t\t\tdimension =\n\t\t\t\tsizeMap[props.size as keyof IconSize] ?? parseInt(props.size, 10);\n\t\t} else {\n\t\t\tdimension = props.size;\n\t\t}\n\t\treturn dimension + `px`;\n\t});\n\tlet style: { [key: string]: any } = { width: width.value };\n\n\tif (props.color) {\n\t\tif (isCssColor(props.color)) {\n\t\t\tstyle.color = props.color;\n\t\t} else {\n\t\t\tclasses[`bb-spinner--${props.color}`] = true;\n\t\t}\n\t}\n\treturn {\n\t\tclass: classes,\n\t\tstyle,\n\t};\n});\n</script>\n\n<style lang=\"postcss\">\n@import '@/assets/css/BbSpinner';\n</style>\n"],"names":["props","__props","sizeMap","iconAttributes","computed","classes","style","dimension","isCssColor"],"mappings":";;;;;;;;;;;;;;;;;;;AAqBA,UAAMA,IAAQC,GAIRC,IAAoB;AAAA,MACzB,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,KAAK;AAAA,IAAA,GAGAC,IAAiBC,EAAS,MAAM;AACrC,YAAMC,IAAmB;AAAA,QACxB,cAAc;AAAA,MAAA;AAYf,UAAIC,IAAgC,EAAE,OAVxBF,EAAS,MAAM;AACxB,YAAAG;AACA,eAAA,OAAOP,EAAM,QAAS,WACzBO,IACCL,EAAQF,EAAM,IAAsB,KAAK,SAASA,EAAM,MAAM,EAAE,IAEjEO,IAAYP,EAAM,MAEZO,IAAY;AAAA,MAAA,CACnB,EACkD,MAAM;AAEzD,aAAIP,EAAM,UACLQ,EAAWR,EAAM,KAAK,IACzBM,EAAM,QAAQN,EAAM,QAEpBK,EAAQ,eAAeL,EAAM,KAAK,EAAE,IAAI,KAGnC;AAAA,QACN,OAAOK;AAAA,QACP,OAAAC;AAAA,MAAA;AAAA,IACD,CACA;;;;"}
package/dist/index121.js CHANGED
@@ -1,24 +1,5 @@
1
- import { clamp as o } from "./index197.js";
2
- const r = (t, e) => t * 100 / e, p = (t, e) => t / 100 * e, l = (t, e, n) => r(t - e, n - e), P = ({
3
- value: t = 0,
4
- originalBounds: e,
5
- targetBounds: n,
6
- step: c = 1
7
- }) => {
8
- const a = l(
9
- t,
10
- e.min,
11
- e.max
12
- ), m = p(
13
- a,
14
- n.max - n.min
15
- ) + n.min, s = Math.round(m / c) * c;
16
- return o(s, n.min, n.max);
17
- };
1
+ const r = (e) => typeof e > "u" || e === null;
18
2
  export {
19
- r as getAsPercentage,
20
- l as getAsPercentageBetween,
21
- p as getPercentageFrom,
22
- P as transposeValue
3
+ r as isNil
23
4
  };
24
5
  //# sourceMappingURL=index121.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index121.js","sources":["../src/utilities/functions/percentage.ts"],"sourcesContent":["import { clamp } from './clamp';\n\n/**\n * Get the percentage \"a\" represents in total\n * @returns\n */\nexport const getAsPercentage = (a: number, total: number) => (a * 100) / total;\n/**\n * Get \"a\" knowing the percentage\n * @returns\n */\nexport const getPercentageFrom = (a: number, total: number) =>\n\t(a / 100) * total;\n\n/**\n * Normalize the bounds of a value\n */\nexport const getAsPercentageBetween = (a: number, min: number, max: number) =>\n\tgetAsPercentage(a - min, max - min);\n\n/**\n * Get a value \"b\" that is the same percentage as \"a\" into it's target bounds.\n * EG 40% = 4 for a bound 0, 10 is transposed to 40% = 8\n * for bounds 0, 20, or again 40% = 4 for bound 10, 20\n */\ntype TransposeValueParameters = {\n\tvalue: number;\n\toriginalBounds: {\n\t\tmin: number;\n\t\tmax: number;\n\t};\n\ttargetBounds: {\n\t\tmin: number;\n\t\tmax: number;\n\t};\n\tstep: number;\n};\nexport const transposeValue: (params: TransposeValueParameters) => number = ({\n\tvalue = 0,\n\toriginalBounds,\n\ttargetBounds,\n\tstep = 1,\n}) => {\n\tconst percentageOfOriginal = getAsPercentageBetween(\n\t\tvalue,\n\t\toriginalBounds.min,\n\t\toriginalBounds.max\n\t);\n\tconst transposedValue = getPercentageFrom(\n\t\tpercentageOfOriginal,\n\t\ttargetBounds.max - targetBounds.min\n\t);\n\tconst adjusted = transposedValue + targetBounds.min;\n\tconst withStep = Math.round(adjusted / step) * step;\n\n\tconst clamped = clamp(withStep, targetBounds.min, targetBounds.max);\n\treturn clamped;\n};\n"],"names":["getAsPercentage","a","total","getPercentageFrom","getAsPercentageBetween","min","max","transposeValue","value","originalBounds","targetBounds","step","percentageOfOriginal","adjusted","withStep","clamp"],"mappings":";AAMO,MAAMA,IAAkB,CAACC,GAAWC,MAAmBD,IAAI,MAAOC,GAK5DC,IAAoB,CAACF,GAAWC,MAC3CD,IAAI,MAAOC,GAKAE,IAAyB,CAACH,GAAWI,GAAaC,MAC9DN,EAAgBC,IAAII,GAAKC,IAAMD,CAAG,GAmBtBE,IAA+D,CAAC;AAAA,EAC5E,OAAAC,IAAQ;AAAA,EACR,gBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,MAAAC,IAAO;AACR,MAAM;AACL,QAAMC,IAAuBR;AAAA,IAC5BI;AAAA,IACAC,EAAe;AAAA,IACfA,EAAe;AAAA,EAAA,GAMVI,IAJkBV;AAAA,IACvBS;AAAA,IACAF,EAAa,MAAMA,EAAa;AAAA,EAAA,IAEEA,EAAa,KAC1CI,IAAW,KAAK,MAAMD,IAAWF,CAAI,IAAIA;AAGxC,SADSI,EAAMD,GAAUJ,EAAa,KAAKA,EAAa,GAAG;AAEnE;"}
1
+ {"version":3,"file":"index121.js","sources":["../src/utilities/functions/isNil.ts"],"sourcesContent":["/**\n * Returns true if the item is not null or undefined\n * @param value The item to check\n * @returns true | false\n */\nexport const isNil = (value: unknown) => {\n\tif (typeof value === 'undefined') return true;\n\tif (value === null) return true;\n\treturn false;\n};\n"],"names":["isNil","value"],"mappings":"AAKa,MAAAA,IAAQ,CAACC,MACjB,OAAOA,IAAU,OACjBA,MAAU;"}
package/dist/index122.js CHANGED
@@ -1,5 +1,24 @@
1
- const o = (e) => new Promise((t) => setTimeout(t, e));
1
+ import { clamp as o } from "./index197.js";
2
+ const r = (t, e) => t * 100 / e, p = (t, e) => t / 100 * e, l = (t, e, n) => r(t - e, n - e), P = ({
3
+ value: t = 0,
4
+ originalBounds: e,
5
+ targetBounds: n,
6
+ step: c = 1
7
+ }) => {
8
+ const a = l(
9
+ t,
10
+ e.min,
11
+ e.max
12
+ ), m = p(
13
+ a,
14
+ n.max - n.min
15
+ ) + n.min, s = Math.round(m / c) * c;
16
+ return o(s, n.min, n.max);
17
+ };
2
18
  export {
3
- o as wait
19
+ r as getAsPercentage,
20
+ l as getAsPercentageBetween,
21
+ p as getPercentageFrom,
22
+ P as transposeValue
4
23
  };
5
24
  //# sourceMappingURL=index122.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index122.js","sources":["../src/utilities/functions/wait.ts"],"sourcesContent":["/** Wait a specified amount of time before resolving a promise */\nexport const wait: (ms: number) => Promise<void> = (ms) =>\n\tnew Promise((resolve) => setTimeout(resolve, ms));\n"],"names":["wait","ms","resolve"],"mappings":"AACa,MAAAA,IAAsC,CAACC,MACnD,IAAI,QAAQ,CAACC,MAAY,WAAWA,GAASD,CAAE,CAAC;"}
1
+ {"version":3,"file":"index122.js","sources":["../src/utilities/functions/percentage.ts"],"sourcesContent":["import { clamp } from './clamp';\n\n/**\n * Get the percentage \"a\" represents in total\n * @returns\n */\nexport const getAsPercentage = (a: number, total: number) => (a * 100) / total;\n/**\n * Get \"a\" knowing the percentage\n * @returns\n */\nexport const getPercentageFrom = (a: number, total: number) =>\n\t(a / 100) * total;\n\n/**\n * Normalize the bounds of a value\n */\nexport const getAsPercentageBetween = (a: number, min: number, max: number) =>\n\tgetAsPercentage(a - min, max - min);\n\n/**\n * Get a value \"b\" that is the same percentage as \"a\" into it's target bounds.\n * EG 40% = 4 for a bound 0, 10 is transposed to 40% = 8\n * for bounds 0, 20, or again 40% = 4 for bound 10, 20\n */\ntype TransposeValueParameters = {\n\tvalue: number;\n\toriginalBounds: {\n\t\tmin: number;\n\t\tmax: number;\n\t};\n\ttargetBounds: {\n\t\tmin: number;\n\t\tmax: number;\n\t};\n\tstep: number;\n};\nexport const transposeValue: (params: TransposeValueParameters) => number = ({\n\tvalue = 0,\n\toriginalBounds,\n\ttargetBounds,\n\tstep = 1,\n}) => {\n\tconst percentageOfOriginal = getAsPercentageBetween(\n\t\tvalue,\n\t\toriginalBounds.min,\n\t\toriginalBounds.max\n\t);\n\tconst transposedValue = getPercentageFrom(\n\t\tpercentageOfOriginal,\n\t\ttargetBounds.max - targetBounds.min\n\t);\n\tconst adjusted = transposedValue + targetBounds.min;\n\tconst withStep = Math.round(adjusted / step) * step;\n\n\tconst clamped = clamp(withStep, targetBounds.min, targetBounds.max);\n\treturn clamped;\n};\n"],"names":["getAsPercentage","a","total","getPercentageFrom","getAsPercentageBetween","min","max","transposeValue","value","originalBounds","targetBounds","step","percentageOfOriginal","adjusted","withStep","clamp"],"mappings":";AAMO,MAAMA,IAAkB,CAACC,GAAWC,MAAmBD,IAAI,MAAOC,GAK5DC,IAAoB,CAACF,GAAWC,MAC3CD,IAAI,MAAOC,GAKAE,IAAyB,CAACH,GAAWI,GAAaC,MAC9DN,EAAgBC,IAAII,GAAKC,IAAMD,CAAG,GAmBtBE,IAA+D,CAAC;AAAA,EAC5E,OAAAC,IAAQ;AAAA,EACR,gBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,MAAAC,IAAO;AACR,MAAM;AACL,QAAMC,IAAuBR;AAAA,IAC5BI;AAAA,IACAC,EAAe;AAAA,IACfA,EAAe;AAAA,EAAA,GAMVI,IAJkBV;AAAA,IACvBS;AAAA,IACAF,EAAa,MAAMA,EAAa;AAAA,EAAA,IAEEA,EAAa,KAC1CI,IAAW,KAAK,MAAMD,IAAWF,CAAI,IAAIA;AAGxC,SADSI,EAAMD,GAAUJ,EAAa,KAAKA,EAAa,GAAG;AAEnE;"}