godown 3.0.0-canary.8 → 3.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 (510) hide show
  1. package/README.md +38 -9
  2. package/alert.d.ts +1 -0
  3. package/alert.d.ts.map +1 -1
  4. package/alert.js +1 -5
  5. package/alert.js.map +1 -1
  6. package/avatar.d.ts +1 -0
  7. package/avatar.d.ts.map +1 -1
  8. package/avatar.js +1 -5
  9. package/avatar.js.map +1 -1
  10. package/badge.d.ts +9 -0
  11. package/badge.d.ts.map +1 -0
  12. package/badge.js +2 -0
  13. package/badge.js.map +1 -0
  14. package/breath.js +1 -5
  15. package/breath.js.map +1 -1
  16. package/build/godown+lit.iife.js +59 -0
  17. package/build/godown+lit.iife.js.map +1 -0
  18. package/build/godown+lit.js +59 -0
  19. package/build/godown+lit.js.map +1 -0
  20. package/build/godown+lit.umd.js +59 -0
  21. package/build/godown+lit.umd.js.map +1 -0
  22. package/build/godown.iife.js +47 -0
  23. package/build/godown.js +48 -0
  24. package/build/godown.js.map +1 -0
  25. package/build/godown.umd.js +48 -0
  26. package/build/godown.umd.js.map +1 -0
  27. package/button.d.ts +1 -0
  28. package/button.d.ts.map +1 -1
  29. package/button.js +1 -5
  30. package/button.js.map +1 -1
  31. package/card.d.ts +1 -0
  32. package/card.d.ts.map +1 -1
  33. package/card.js +1 -5
  34. package/card.js.map +1 -1
  35. package/carousel.d.ts +1 -0
  36. package/carousel.d.ts.map +1 -1
  37. package/carousel.js +1 -5
  38. package/carousel.js.map +1 -1
  39. package/components/alert.d.ts +4 -1
  40. package/components/alert.d.ts.map +1 -1
  41. package/components/alert.js +1 -176
  42. package/components/alert.js.map +1 -1
  43. package/components/avatar.d.ts +8 -2
  44. package/components/avatar.d.ts.map +1 -1
  45. package/components/avatar.js +1 -61
  46. package/components/avatar.js.map +1 -1
  47. package/components/badge.d.ts +23 -0
  48. package/components/badge.d.ts.map +1 -0
  49. package/components/badge.js +2 -0
  50. package/components/badge.js.map +1 -0
  51. package/components/breath.d.ts +7 -4
  52. package/components/breath.d.ts.map +1 -1
  53. package/components/breath.js +1 -79
  54. package/components/breath.js.map +1 -1
  55. package/components/button.d.ts +19 -10
  56. package/components/button.d.ts.map +1 -1
  57. package/components/button.js +1 -165
  58. package/components/button.js.map +1 -1
  59. package/components/card.d.ts +3 -2
  60. package/components/card.d.ts.map +1 -1
  61. package/components/card.js +1 -53
  62. package/components/card.js.map +1 -1
  63. package/components/carousel.d.ts +10 -5
  64. package/components/carousel.d.ts.map +1 -1
  65. package/components/carousel.js +1 -112
  66. package/components/carousel.js.map +1 -1
  67. package/components/details.d.ts +6 -2
  68. package/components/details.d.ts.map +1 -1
  69. package/components/details.js +1 -49
  70. package/components/details.js.map +1 -1
  71. package/components/dialog.d.ts +8 -3
  72. package/components/dialog.d.ts.map +1 -1
  73. package/components/dialog.js +1 -93
  74. package/components/dialog.js.map +1 -1
  75. package/components/divider.d.ts +3 -3
  76. package/components/divider.d.ts.map +1 -1
  77. package/components/divider.js +1 -36
  78. package/components/divider.js.map +1 -1
  79. package/components/dragbox.d.ts +11 -9
  80. package/components/dragbox.d.ts.map +1 -1
  81. package/components/dragbox.js +1 -109
  82. package/components/dragbox.js.map +1 -1
  83. package/components/flex.d.ts +4 -1
  84. package/components/flex.d.ts.map +1 -1
  85. package/components/flex.js +1 -54
  86. package/components/flex.js.map +1 -1
  87. package/components/form.d.ts +3 -3
  88. package/components/form.d.ts.map +1 -1
  89. package/components/form.js +1 -77
  90. package/components/form.js.map +1 -1
  91. package/components/grid.d.ts +10 -3
  92. package/components/grid.d.ts.map +1 -1
  93. package/components/grid.js +1 -55
  94. package/components/grid.js.map +1 -1
  95. package/components/heading.d.ts +29 -0
  96. package/components/heading.d.ts.map +1 -0
  97. package/components/heading.js +2 -0
  98. package/components/heading.js.map +1 -0
  99. package/components/input.d.ts +7 -3
  100. package/components/input.d.ts.map +1 -1
  101. package/components/input.js +1 -50
  102. package/components/input.js.map +1 -1
  103. package/components/layout.d.ts +8 -9
  104. package/components/layout.d.ts.map +1 -1
  105. package/components/layout.js +1 -46
  106. package/components/layout.js.map +1 -1
  107. package/components/link.d.ts +8 -1
  108. package/components/link.d.ts.map +1 -1
  109. package/components/link.js +1 -42
  110. package/components/link.js.map +1 -1
  111. package/components/progress.d.ts +4 -11
  112. package/components/progress.d.ts.map +1 -1
  113. package/components/progress.js +1 -67
  114. package/components/progress.js.map +1 -1
  115. package/components/range.d.ts +22 -15
  116. package/components/range.d.ts.map +1 -1
  117. package/components/range.js +1 -273
  118. package/components/range.js.map +1 -1
  119. package/components/rotate.d.ts +4 -2
  120. package/components/rotate.d.ts.map +1 -1
  121. package/components/rotate.js +1 -56
  122. package/components/rotate.js.map +1 -1
  123. package/components/router.d.ts +20 -24
  124. package/components/router.d.ts.map +1 -1
  125. package/components/router.js +1 -250
  126. package/components/router.js.map +1 -1
  127. package/components/select.d.ts +8 -4
  128. package/components/select.d.ts.map +1 -1
  129. package/components/select.js +1 -212
  130. package/components/select.js.map +1 -1
  131. package/components/skeleton.d.ts +3 -1
  132. package/components/skeleton.d.ts.map +1 -1
  133. package/components/skeleton.js +1 -54
  134. package/components/skeleton.js.map +1 -1
  135. package/components/split.d.ts +25 -2
  136. package/components/split.d.ts.map +1 -1
  137. package/components/split.js +1 -128
  138. package/components/split.js.map +1 -1
  139. package/components/switch.d.ts +8 -5
  140. package/components/switch.d.ts.map +1 -1
  141. package/components/switch.js +1 -92
  142. package/components/switch.js.map +1 -1
  143. package/components/text.d.ts +3 -1
  144. package/components/text.d.ts.map +1 -1
  145. package/components/text.js +1 -43
  146. package/components/text.js.map +1 -1
  147. package/components/time.d.ts +8 -6
  148. package/components/time.d.ts.map +1 -1
  149. package/components/time.js +1 -85
  150. package/components/time.js.map +1 -1
  151. package/components/tooltip.d.ts +14 -2
  152. package/components/tooltip.d.ts.map +1 -1
  153. package/components/tooltip.js +1 -66
  154. package/components/tooltip.js.map +1 -1
  155. package/components/typewriter.d.ts +8 -14
  156. package/components/typewriter.d.ts.map +1 -1
  157. package/components/typewriter.js +1 -129
  158. package/components/typewriter.js.map +1 -1
  159. package/core/global-style.d.ts +2 -2
  160. package/core/global-style.d.ts.map +1 -1
  161. package/core/global-style.js +1 -45
  162. package/core/global-style.js.map +1 -1
  163. package/core/super-anchor.d.ts +2 -1
  164. package/core/super-anchor.d.ts.map +1 -1
  165. package/core/super-anchor.js +1 -38
  166. package/core/super-anchor.js.map +1 -1
  167. package/core/super-input.d.ts +6 -5
  168. package/core/super-input.d.ts.map +1 -1
  169. package/core/super-input.js +1 -111
  170. package/core/super-input.js.map +1 -1
  171. package/core/super-openable.d.ts +1 -1
  172. package/core/super-openable.d.ts.map +1 -1
  173. package/core/super-openable.js +1 -37
  174. package/core/super-openable.js.map +1 -1
  175. package/custom-elements.json +1 -1
  176. package/details.d.ts +1 -0
  177. package/details.d.ts.map +1 -1
  178. package/details.js +1 -5
  179. package/details.js.map +1 -1
  180. package/dev/alert.d.ts +1 -0
  181. package/dev/alert.d.ts.map +1 -1
  182. package/dev/alert.js +1 -0
  183. package/dev/alert.js.map +1 -1
  184. package/dev/avatar.d.ts +1 -0
  185. package/dev/avatar.d.ts.map +1 -1
  186. package/dev/avatar.js +1 -0
  187. package/dev/avatar.js.map +1 -1
  188. package/dev/badge.d.ts +9 -0
  189. package/dev/badge.d.ts.map +1 -0
  190. package/dev/badge.js +5 -0
  191. package/dev/badge.js.map +1 -0
  192. package/dev/button.d.ts +1 -0
  193. package/dev/button.d.ts.map +1 -1
  194. package/dev/button.js +1 -0
  195. package/dev/button.js.map +1 -1
  196. package/dev/card.d.ts +1 -0
  197. package/dev/card.d.ts.map +1 -1
  198. package/dev/card.js +1 -0
  199. package/dev/card.js.map +1 -1
  200. package/dev/carousel.d.ts +1 -0
  201. package/dev/carousel.d.ts.map +1 -1
  202. package/dev/carousel.js +1 -0
  203. package/dev/carousel.js.map +1 -1
  204. package/dev/components/alert.d.ts +4 -1
  205. package/dev/components/alert.d.ts.map +1 -1
  206. package/dev/components/alert.js +20 -23
  207. package/dev/components/alert.js.map +1 -1
  208. package/dev/components/avatar.d.ts +8 -2
  209. package/dev/components/avatar.d.ts.map +1 -1
  210. package/dev/components/avatar.js +23 -13
  211. package/dev/components/avatar.js.map +1 -1
  212. package/dev/components/badge.d.ts +23 -0
  213. package/dev/components/badge.d.ts.map +1 -0
  214. package/dev/components/badge.js +107 -0
  215. package/dev/components/badge.js.map +1 -0
  216. package/dev/components/breath.d.ts +7 -4
  217. package/dev/components/breath.d.ts.map +1 -1
  218. package/dev/components/breath.js +30 -26
  219. package/dev/components/breath.js.map +1 -1
  220. package/dev/components/button.d.ts +19 -10
  221. package/dev/components/button.d.ts.map +1 -1
  222. package/dev/components/button.js +47 -28
  223. package/dev/components/button.js.map +1 -1
  224. package/dev/components/card.d.ts +3 -2
  225. package/dev/components/card.d.ts.map +1 -1
  226. package/dev/components/card.js +23 -33
  227. package/dev/components/card.js.map +1 -1
  228. package/dev/components/carousel.d.ts +10 -5
  229. package/dev/components/carousel.d.ts.map +1 -1
  230. package/dev/components/carousel.js +33 -26
  231. package/dev/components/carousel.js.map +1 -1
  232. package/dev/components/details.d.ts +6 -2
  233. package/dev/components/details.d.ts.map +1 -1
  234. package/dev/components/details.js +24 -26
  235. package/dev/components/details.js.map +1 -1
  236. package/dev/components/dialog.d.ts +8 -3
  237. package/dev/components/dialog.d.ts.map +1 -1
  238. package/dev/components/dialog.js +21 -17
  239. package/dev/components/dialog.js.map +1 -1
  240. package/dev/components/divider.d.ts +3 -3
  241. package/dev/components/divider.d.ts.map +1 -1
  242. package/dev/components/divider.js +29 -17
  243. package/dev/components/divider.js.map +1 -1
  244. package/dev/components/dragbox.d.ts +11 -9
  245. package/dev/components/dragbox.d.ts.map +1 -1
  246. package/dev/components/dragbox.js +11 -4
  247. package/dev/components/dragbox.js.map +1 -1
  248. package/dev/components/flex.d.ts +4 -1
  249. package/dev/components/flex.d.ts.map +1 -1
  250. package/dev/components/flex.js +25 -9
  251. package/dev/components/flex.js.map +1 -1
  252. package/dev/components/form.d.ts +3 -3
  253. package/dev/components/form.d.ts.map +1 -1
  254. package/dev/components/form.js +2 -5
  255. package/dev/components/form.js.map +1 -1
  256. package/dev/components/grid.d.ts +10 -3
  257. package/dev/components/grid.d.ts.map +1 -1
  258. package/dev/components/grid.js +18 -10
  259. package/dev/components/grid.js.map +1 -1
  260. package/dev/components/heading.d.ts +29 -0
  261. package/dev/components/heading.d.ts.map +1 -0
  262. package/dev/components/heading.js +103 -0
  263. package/dev/components/heading.js.map +1 -0
  264. package/dev/components/input.d.ts +7 -3
  265. package/dev/components/input.d.ts.map +1 -1
  266. package/dev/components/input.js +18 -18
  267. package/dev/components/input.js.map +1 -1
  268. package/dev/components/layout.d.ts +8 -9
  269. package/dev/components/layout.d.ts.map +1 -1
  270. package/dev/components/layout.js +38 -25
  271. package/dev/components/layout.js.map +1 -1
  272. package/dev/components/link.d.ts +8 -1
  273. package/dev/components/link.d.ts.map +1 -1
  274. package/dev/components/link.js +15 -3
  275. package/dev/components/link.js.map +1 -1
  276. package/dev/components/progress.d.ts +4 -11
  277. package/dev/components/progress.d.ts.map +1 -1
  278. package/dev/components/progress.js +43 -49
  279. package/dev/components/progress.js.map +1 -1
  280. package/dev/components/range.d.ts +22 -15
  281. package/dev/components/range.d.ts.map +1 -1
  282. package/dev/components/range.js +56 -61
  283. package/dev/components/range.js.map +1 -1
  284. package/dev/components/rotate.d.ts +4 -2
  285. package/dev/components/rotate.d.ts.map +1 -1
  286. package/dev/components/rotate.js +3 -5
  287. package/dev/components/rotate.js.map +1 -1
  288. package/dev/components/router.d.ts +20 -24
  289. package/dev/components/router.d.ts.map +1 -1
  290. package/dev/components/router.js +23 -36
  291. package/dev/components/router.js.map +1 -1
  292. package/dev/components/select.d.ts +8 -4
  293. package/dev/components/select.d.ts.map +1 -1
  294. package/dev/components/select.js +44 -32
  295. package/dev/components/select.js.map +1 -1
  296. package/dev/components/skeleton.d.ts +3 -1
  297. package/dev/components/skeleton.d.ts.map +1 -1
  298. package/dev/components/skeleton.js +9 -9
  299. package/dev/components/skeleton.js.map +1 -1
  300. package/dev/components/split.d.ts +25 -2
  301. package/dev/components/split.d.ts.map +1 -1
  302. package/dev/components/split.js +71 -38
  303. package/dev/components/split.js.map +1 -1
  304. package/dev/components/switch.d.ts +8 -5
  305. package/dev/components/switch.d.ts.map +1 -1
  306. package/dev/components/switch.js +28 -31
  307. package/dev/components/switch.js.map +1 -1
  308. package/dev/components/text.d.ts +3 -1
  309. package/dev/components/text.d.ts.map +1 -1
  310. package/dev/components/text.js +12 -15
  311. package/dev/components/text.js.map +1 -1
  312. package/dev/components/time.d.ts +8 -6
  313. package/dev/components/time.d.ts.map +1 -1
  314. package/dev/components/time.js +8 -14
  315. package/dev/components/time.js.map +1 -1
  316. package/dev/components/tooltip.d.ts +14 -2
  317. package/dev/components/tooltip.d.ts.map +1 -1
  318. package/dev/components/tooltip.js +54 -24
  319. package/dev/components/tooltip.js.map +1 -1
  320. package/dev/components/typewriter.d.ts +8 -14
  321. package/dev/components/typewriter.d.ts.map +1 -1
  322. package/dev/components/typewriter.js +22 -37
  323. package/dev/components/typewriter.js.map +1 -1
  324. package/dev/core/global-style.d.ts +2 -2
  325. package/dev/core/global-style.d.ts.map +1 -1
  326. package/dev/core/global-style.js +18 -14
  327. package/dev/core/global-style.js.map +1 -1
  328. package/dev/core/super-anchor.d.ts +2 -1
  329. package/dev/core/super-anchor.d.ts.map +1 -1
  330. package/dev/core/super-anchor.js +25 -23
  331. package/dev/core/super-anchor.js.map +1 -1
  332. package/dev/core/super-input.d.ts +6 -5
  333. package/dev/core/super-input.d.ts.map +1 -1
  334. package/dev/core/super-input.js +43 -36
  335. package/dev/core/super-input.js.map +1 -1
  336. package/dev/core/super-openable.d.ts +1 -1
  337. package/dev/core/super-openable.d.ts.map +1 -1
  338. package/dev/core/super-openable.js +2 -2
  339. package/dev/core/super-openable.js.map +1 -1
  340. package/dev/details.d.ts +1 -0
  341. package/dev/details.d.ts.map +1 -1
  342. package/dev/details.js +1 -0
  343. package/dev/details.js.map +1 -1
  344. package/dev/dialog.d.ts +1 -0
  345. package/dev/dialog.d.ts.map +1 -1
  346. package/dev/dialog.js +1 -0
  347. package/dev/dialog.js.map +1 -1
  348. package/dev/divider.d.ts +1 -0
  349. package/dev/divider.d.ts.map +1 -1
  350. package/dev/divider.js +1 -0
  351. package/dev/divider.js.map +1 -1
  352. package/dev/dragbox.d.ts +1 -0
  353. package/dev/dragbox.d.ts.map +1 -1
  354. package/dev/dragbox.js +1 -0
  355. package/dev/dragbox.js.map +1 -1
  356. package/dev/flex.d.ts +1 -0
  357. package/dev/flex.d.ts.map +1 -1
  358. package/dev/flex.js +1 -0
  359. package/dev/flex.js.map +1 -1
  360. package/dev/form.d.ts +1 -0
  361. package/dev/form.d.ts.map +1 -1
  362. package/dev/form.js +1 -0
  363. package/dev/form.js.map +1 -1
  364. package/dev/grid.d.ts +1 -0
  365. package/dev/grid.d.ts.map +1 -1
  366. package/dev/grid.js +1 -0
  367. package/dev/grid.js.map +1 -1
  368. package/dev/heading.d.ts +9 -0
  369. package/dev/heading.d.ts.map +1 -0
  370. package/dev/heading.js +5 -0
  371. package/dev/heading.js.map +1 -0
  372. package/dev/index.d.ts +2 -0
  373. package/dev/index.d.ts.map +1 -1
  374. package/dev/index.js +2 -0
  375. package/dev/index.js.map +1 -1
  376. package/dev/layout.d.ts.map +1 -1
  377. package/dev/progress.d.ts.map +1 -1
  378. package/dev/router.d.ts.map +1 -1
  379. package/dev/split.d.ts +1 -1
  380. package/dev/split.d.ts.map +1 -1
  381. package/dev/typewriter.d.ts +1 -0
  382. package/dev/typewriter.d.ts.map +1 -1
  383. package/dev/typewriter.js +1 -0
  384. package/dev/typewriter.js.map +1 -1
  385. package/dialog.d.ts +1 -0
  386. package/dialog.d.ts.map +1 -1
  387. package/dialog.js +1 -5
  388. package/dialog.js.map +1 -1
  389. package/divider.d.ts +1 -0
  390. package/divider.d.ts.map +1 -1
  391. package/divider.js +1 -5
  392. package/divider.js.map +1 -1
  393. package/dragbox.d.ts +1 -0
  394. package/dragbox.d.ts.map +1 -1
  395. package/dragbox.js +1 -5
  396. package/dragbox.js.map +1 -1
  397. package/flex.d.ts +1 -0
  398. package/flex.d.ts.map +1 -1
  399. package/flex.js +1 -5
  400. package/flex.js.map +1 -1
  401. package/form.d.ts +1 -0
  402. package/form.d.ts.map +1 -1
  403. package/form.js +1 -5
  404. package/form.js.map +1 -1
  405. package/grid.d.ts +1 -0
  406. package/grid.d.ts.map +1 -1
  407. package/grid.js +1 -5
  408. package/grid.js.map +1 -1
  409. package/heading.d.ts +9 -0
  410. package/heading.d.ts.map +1 -0
  411. package/heading.js +2 -0
  412. package/heading.js.map +1 -0
  413. package/index.d.ts +2 -0
  414. package/index.d.ts.map +1 -1
  415. package/index.js +1 -56
  416. package/index.js.map +1 -1
  417. package/input.js +1 -5
  418. package/input.js.map +1 -1
  419. package/layout.d.ts.map +1 -1
  420. package/layout.js +1 -5
  421. package/layout.js.map +1 -1
  422. package/link.js +1 -5
  423. package/link.js.map +1 -1
  424. package/package.json +11 -6
  425. package/progress.d.ts.map +1 -1
  426. package/progress.js +1 -5
  427. package/progress.js.map +1 -1
  428. package/range.js +1 -5
  429. package/range.js.map +1 -1
  430. package/rotate.js +1 -5
  431. package/rotate.js.map +1 -1
  432. package/router.d.ts.map +1 -1
  433. package/router.js +1 -5
  434. package/router.js.map +1 -1
  435. package/select.js +1 -5
  436. package/select.js.map +1 -1
  437. package/skeleton.js +1 -5
  438. package/skeleton.js.map +1 -1
  439. package/split.d.ts +1 -1
  440. package/split.d.ts.map +1 -1
  441. package/split.js +1 -5
  442. package/split.js.map +1 -1
  443. package/src/alert.ts +2 -0
  444. package/src/avatar.ts +2 -0
  445. package/src/badge.ts +13 -0
  446. package/src/button.ts +2 -0
  447. package/src/card.ts +2 -0
  448. package/src/carousel.ts +2 -0
  449. package/src/components/alert.ts +26 -29
  450. package/src/components/avatar.ts +28 -17
  451. package/src/components/badge.ts +107 -0
  452. package/src/components/breath.ts +38 -31
  453. package/src/components/button.ts +55 -46
  454. package/src/components/card.ts +26 -34
  455. package/src/components/carousel.ts +48 -38
  456. package/src/components/details.ts +27 -28
  457. package/src/components/dialog.ts +30 -26
  458. package/src/components/divider.ts +29 -17
  459. package/src/components/dragbox.ts +25 -19
  460. package/src/components/flex.ts +26 -11
  461. package/src/components/form.ts +7 -9
  462. package/src/components/grid.ts +31 -13
  463. package/src/components/heading.ts +105 -0
  464. package/src/components/input.ts +23 -22
  465. package/src/components/layout.ts +26 -31
  466. package/src/components/link.ts +15 -4
  467. package/src/components/progress.ts +51 -52
  468. package/src/components/range.ts +82 -94
  469. package/src/components/rotate.ts +12 -11
  470. package/src/components/router.ts +59 -48
  471. package/src/components/select.ts +59 -47
  472. package/src/components/skeleton.ts +13 -11
  473. package/src/components/split.ts +90 -49
  474. package/src/components/switch.ts +38 -37
  475. package/src/components/text.ts +14 -21
  476. package/src/components/time.ts +20 -14
  477. package/src/components/tooltip.ts +54 -29
  478. package/src/components/typewriter.ts +41 -47
  479. package/src/core/global-style.ts +33 -19
  480. package/src/core/super-anchor.ts +30 -26
  481. package/src/core/super-input.ts +54 -54
  482. package/src/core/super-openable.ts +7 -7
  483. package/src/details.ts +2 -0
  484. package/src/dialog.ts +2 -0
  485. package/src/divider.ts +2 -0
  486. package/src/dragbox.ts +2 -0
  487. package/src/flex.ts +2 -0
  488. package/src/form.ts +2 -0
  489. package/src/grid.ts +2 -0
  490. package/src/heading.ts +13 -0
  491. package/src/index.ts +2 -0
  492. package/src/layout.ts +1 -0
  493. package/src/progress.ts +1 -0
  494. package/src/router.ts +1 -0
  495. package/src/split.ts +1 -1
  496. package/src/typewriter.ts +2 -0
  497. package/switch.js +1 -5
  498. package/switch.js.map +1 -1
  499. package/text.js +1 -5
  500. package/text.js.map +1 -1
  501. package/time.js +1 -5
  502. package/time.js.map +1 -1
  503. package/tooltip.js +1 -5
  504. package/tooltip.js.map +1 -1
  505. package/typewriter.d.ts +1 -0
  506. package/typewriter.d.ts.map +1 -1
  507. package/typewriter.js +1 -5
  508. package/typewriter.js.map +1 -1
  509. package/vscode.html-custom-data.json +1 -1
  510. package/web-types.json +1 -1
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "godown",
3
- "version": "3.0.0-canary.8",
4
- "description": "Simple, stylized, semantic web components",
3
+ "version": "3.0.0",
4
+ "description": "Non Composite Web Components Library",
5
5
  "type": "module",
6
6
  "main": "index.js",
7
7
  "exports": {
@@ -13,6 +13,8 @@
13
13
  "development": "./dev/*",
14
14
  "default": "./*"
15
15
  },
16
+ "./build/*": "./build/*",
17
+ "./src/*": "./src/*",
16
18
  "./*.json": "./*.json"
17
19
  },
18
20
  "repository": {
@@ -20,16 +22,19 @@
20
22
  "url": "https://github.com/startracex/godown.git",
21
23
  "directory": "packages/godown"
22
24
  },
23
- "keywords": [],
25
+ "keywords": [
26
+ "web-components",
27
+ "custom-elements"
28
+ ],
24
29
  "author": "startracex",
25
30
  "license": "MIT",
26
31
  "dependencies": {
27
32
  "fmtime": "^0.0.3",
28
33
  "lit": "^3.0.0",
29
34
  "tslib": "^2.7.0",
30
- "@godown/colors": "^0.0.1",
31
- "@godown/element": "^0.0.3",
32
- "@godown/f7-icon": "^0.0.3"
35
+ "@godown/colors": "^1.0.0",
36
+ "@godown/element": "^1.0.0",
37
+ "@godown/f7-icon": "^1.0.0"
33
38
  },
34
39
  "publishConfig": {
35
40
  "access": "public"
package/progress.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["src/progress.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,0BAA0B,CAAC;AAIhD,eAAe,QAAQ,CAAC;AAExB,cAAc,0BAA0B,CAAC;AACzC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,QAAQ,CAAC;KAC7B;CACF"}
1
+ {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["src/progress.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,0BAA0B,CAAC;AAIhD,eAAe,QAAQ,CAAC;AAExB,cAAc,0BAA0B,CAAC;AAEzC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,QAAQ,CAAC;KAC7B;CACF"}
package/progress.js CHANGED
@@ -1,6 +1,2 @@
1
- import Progress from './components/progress.js';
2
-
3
- Progress.define();
4
-
5
- export { Progress as default };
1
+ import o from"./components/progress.js";export{Progress}from"./components/progress.js";o.define();export{o as default};
6
2
  //# sourceMappingURL=progress.js.map
package/progress.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"progress.js","sources":["src/progress.ts"],"sourcesContent":null,"names":[],"mappings":";;AAEA,QAAQ,CAAC,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"progress.js","sources":["src/progress.ts"],"sourcesContent":null,"names":["Progress","define"],"mappings":"uFAEAA,EAASC"}
package/range.js CHANGED
@@ -1,6 +1,2 @@
1
- import Range from './components/range.js';
2
-
3
- Range.define();
4
-
5
- export { Range as default };
1
+ import e from"./components/range.js";export{Range}from"./components/range.js";e.define();export{e as default};
6
2
  //# sourceMappingURL=range.js.map
package/range.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"range.js","sources":["src/range.ts"],"sourcesContent":null,"names":[],"mappings":";;AAEA,KAAK,CAAC,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"range.js","sources":["src/range.ts"],"sourcesContent":null,"names":["Range","define"],"mappings":"8EAEAA,EAAMC"}
package/rotate.js CHANGED
@@ -1,6 +1,2 @@
1
- import Rotate from './components/rotate.js';
2
-
3
- Rotate.define();
4
-
5
- export { Rotate as default };
1
+ import o from"./components/rotate.js";export{Rotate}from"./components/rotate.js";o.define();export{o as default};
6
2
  //# sourceMappingURL=rotate.js.map
package/rotate.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rotate.js","sources":["src/rotate.ts"],"sourcesContent":null,"names":[],"mappings":";;AAEA,MAAM,CAAC,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"rotate.js","sources":["src/rotate.ts"],"sourcesContent":null,"names":["Rotate","define"],"mappings":"iFAEAA,EAAOC"}
package/router.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["src/router.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAI5C,eAAe,MAAM,CAAC;AAEtB,cAAc,wBAAwB,CAAC;AACvC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,eAAe,EAAE,MAAM,CAAC;KACzB;CACF"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["src/router.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAI5C,eAAe,MAAM,CAAC;AAEtB,cAAc,wBAAwB,CAAC;AAEvC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,eAAe,EAAE,MAAM,CAAC;KACzB;CACF"}
package/router.js CHANGED
@@ -1,6 +1,2 @@
1
- import Router from './components/router.js';
2
-
3
- Router.define();
4
-
5
- export { Router as default };
1
+ import o from"./components/router.js";export{Router}from"./components/router.js";o.define();export{o as default};
6
2
  //# sourceMappingURL=router.js.map
package/router.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sources":["src/router.ts"],"sourcesContent":null,"names":[],"mappings":";;AAEA,MAAM,CAAC,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"router.js","sources":["src/router.ts"],"sourcesContent":null,"names":["Router","define"],"mappings":"iFAEAA,EAAOC"}
package/select.js CHANGED
@@ -1,6 +1,2 @@
1
- import Select from './components/select.js';
2
-
3
- Select.define();
4
-
5
- export { Select as default };
1
+ import e from"./components/select.js";export{Select}from"./components/select.js";e.define();export{e as default};
6
2
  //# sourceMappingURL=select.js.map
package/select.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sources":["src/select.ts"],"sourcesContent":null,"names":[],"mappings":";;AAEA,MAAM,CAAC,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"select.js","sources":["src/select.ts"],"sourcesContent":null,"names":["Select","define"],"mappings":"iFAEAA,EAAOC"}
package/skeleton.js CHANGED
@@ -1,6 +1,2 @@
1
- import Skeleton from './components/skeleton.js';
2
-
3
- Skeleton.define();
4
-
5
- export { Skeleton as default };
1
+ import e from"./components/skeleton.js";export{Skeleton}from"./components/skeleton.js";e.define();export{e as default};
6
2
  //# sourceMappingURL=skeleton.js.map
package/skeleton.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton.js","sources":["src/skeleton.ts"],"sourcesContent":null,"names":[],"mappings":";;AAEA,QAAQ,CAAC,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"skeleton.js","sources":["src/skeleton.ts"],"sourcesContent":null,"names":["Skeleton","define"],"mappings":"uFAEAA,EAASC"}
package/split.d.ts CHANGED
@@ -3,7 +3,7 @@ export default Split;
3
3
  export * from "./components/split.js";
4
4
  declare global {
5
5
  interface HTMLElementTagNameMap {
6
- "godown-split-input": Split;
6
+ "godown-split": Split;
7
7
  }
8
8
  }
9
9
  //# sourceMappingURL=split.d.ts.map
package/split.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"split.d.ts","sourceRoot":"","sources":["src/split.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,uBAAuB,CAAC;AAI1C,eAAe,KAAK,CAAC;AAErB,cAAc,uBAAuB,CAAC;AAEtC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,oBAAoB,EAAE,KAAK,CAAC;KAC7B;CACF"}
1
+ {"version":3,"file":"split.d.ts","sourceRoot":"","sources":["src/split.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,uBAAuB,CAAC;AAI1C,eAAe,KAAK,CAAC;AAErB,cAAc,uBAAuB,CAAC;AAEtC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,cAAc,EAAE,KAAK,CAAC;KACvB;CACF"}
package/split.js CHANGED
@@ -1,6 +1,2 @@
1
- import Split from './components/split.js';
2
-
3
- Split.define();
4
-
5
- export { Split as default };
1
+ import o from"./components/split.js";export{Split}from"./components/split.js";o.define();export{o as default};
6
2
  //# sourceMappingURL=split.js.map
package/split.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"split.js","sources":["src/split.ts"],"sourcesContent":null,"names":[],"mappings":";;AAEA,KAAK,CAAC,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"split.js","sources":["src/split.ts"],"sourcesContent":null,"names":["Split","define"],"mappings":"8EAEAA,EAAMC"}
package/src/alert.ts CHANGED
@@ -4,6 +4,8 @@ Alert.define();
4
4
 
5
5
  export default Alert;
6
6
 
7
+ export * from "./components/alert.js";
8
+
7
9
  declare global {
8
10
  interface HTMLElementTagNameMap {
9
11
  "godown-alert": Alert;
package/src/avatar.ts CHANGED
@@ -4,6 +4,8 @@ Avatar.define();
4
4
 
5
5
  export default Avatar;
6
6
 
7
+ export * from "./components/avatar.js";
8
+
7
9
  declare global {
8
10
  interface HTMLElementTagNameMap {
9
11
  "godown-avatar": Avatar;
package/src/badge.ts ADDED
@@ -0,0 +1,13 @@
1
+ import Badge from "./components/badge.js";
2
+
3
+ Badge.define();
4
+
5
+ export default Badge;
6
+
7
+ export * from "./components/badge.js";
8
+
9
+ declare global {
10
+ interface HTMLElementTagNameMap {
11
+ "godown-badge": Badge;
12
+ }
13
+ }
package/src/button.ts CHANGED
@@ -4,6 +4,8 @@ Button.define();
4
4
 
5
5
  export default Button;
6
6
 
7
+ export * from "./components/button.js";
8
+
7
9
  declare global {
8
10
  interface HTMLElementTagNameMap {
9
11
  "godown-button": Button;
package/src/card.ts CHANGED
@@ -4,6 +4,8 @@ Card.define();
4
4
 
5
5
  export default Card;
6
6
 
7
+ export * from "./components/card.js";
8
+
7
9
  declare global {
8
10
  interface HTMLElementTagNameMap {
9
11
  "godown-card": Card;
package/src/carousel.ts CHANGED
@@ -4,6 +4,8 @@ Carousel.define();
4
4
 
5
5
  export default Carousel;
6
6
 
7
+ export * from "./components/carousel.js";
8
+
7
9
  declare global {
8
10
  interface HTMLElementTagNameMap {
9
11
  "godown-carousel": Carousel;
@@ -1,8 +1,4 @@
1
- import { godown } from "@godown/element/decorators/godown.js";
2
- import { styles } from "@godown/element/decorators/styles.js";
3
- import { htmlSlot } from "@godown/element/directives/html-slot.js";
4
- import { htmlStyle } from "@godown/element/directives/html-style.js";
5
- import { constructCSSObject, toVar } from "@godown/element/tools/css.js";
1
+ import { attr, constructCSSObject, godown, htmlSlot, htmlStyle, styles, toVar } from "@godown/element";
6
2
  import iconCheckAltCircle from "@godown/f7-icon/icons/checkmark-alt-circle.js";
7
3
  import iconExclamationCircle from "@godown/f7-icon/icons/exclamationmark-circle.js";
8
4
  import iconInfoCircle from "@godown/f7-icon/icons/info-circle.js";
@@ -11,7 +7,7 @@ import iconQuestionCircle from "@godown/f7-icon/icons/question-circle.js";
11
7
  import iconSlashCircle from "@godown/f7-icon/icons/slash-circle.js";
12
8
  import iconXmark from "@godown/f7-icon/icons/xmark.js";
13
9
  import iconXmarkCircle from "@godown/f7-icon/icons/xmark-circle.js";
14
- import { css, html } from "lit";
10
+ import { css, html, type TemplateResult } from "lit";
15
11
  import { property } from "lit/decorators.js";
16
12
 
17
13
  import { cssGlobalVars, GlobalStyle, scopePrefix } from "../core/global-style.js";
@@ -40,7 +36,7 @@ const darkStyles = constructCSSObject(
40
36
  white: [cssGlobalVars._colors.lightgray[2], cssGlobalVars._colors.darkgray[7]],
41
37
  black: [cssGlobalVars._colors.darkgray[8], cssGlobalVars._colors.lightgray[5]],
42
38
  },
43
- () => `:host`,
39
+ () => ":host",
44
40
  (prop) => toVar(prop),
45
41
  );
46
42
 
@@ -63,7 +59,7 @@ const lightStyles = constructCSSObject(
63
59
  white: [cssGlobalVars._colors.lightgray[0], cssGlobalVars._colors.darkgray[0]],
64
60
  black: [cssGlobalVars._colors.darkgray[7], cssGlobalVars._colors.lightgray[3]],
65
61
  },
66
- () => `:host`,
62
+ () => ":host",
67
63
  (prop) => toVar(prop),
68
64
  );
69
65
 
@@ -110,12 +106,14 @@ const calls = {
110
106
  * @slot - Alert content.
111
107
  * @slot title - Alert title.
112
108
  * @slot icon - Alert icon.
109
+ * @fires close - Fires when the alert is closed.
113
110
  * @category feedback
114
111
  */
115
112
  @godown(protoName)
116
113
  @styles(
117
114
  css`
118
- :host {
115
+ :host,
116
+ :where(:host([contents]) [part=root]) {
119
117
  border-radius: var(${cssScope}--border-radius);
120
118
  ${cssScope}--border-radius: .25em;
121
119
  ${cssScope}--border-width: .075em;
@@ -125,7 +123,7 @@ const calls = {
125
123
  width: 100%;
126
124
  }
127
125
 
128
- [part="root"] {
126
+ [part=root] {
129
127
  --color: var(${cssScope}--color);
130
128
  color: var(--color);
131
129
  width: 100%;
@@ -138,7 +136,7 @@ const calls = {
138
136
  background: var(${cssScope}--background);
139
137
  }
140
138
 
141
- [variant="blockquote"] {
139
+ [variant=blockquote] {
142
140
  border-radius: 0;
143
141
  border-left: var(${cssScope}--blockquote-width) solid var(--color);
144
142
  border-bottom: none;
@@ -147,34 +145,34 @@ const calls = {
147
145
  background: transparent;
148
146
  }
149
147
 
150
- [part="content"]{
148
+ [part=content] {
151
149
  color: var(--color);
152
150
  }
153
151
 
154
- [part="root"] {
152
+ [part=root] {
155
153
  display: grid;
156
154
  align-items: center;
157
155
  grid-template-columns: auto 1fr auto;
158
156
  grid-template-rows: auto 1fr;
159
157
  }
160
158
 
161
- [part="title"] {
159
+ [part=title] {
162
160
  line-height: 2em;
163
161
  }
164
162
 
165
- [part="icon"] {
163
+ [part=icon] {
166
164
  display: inline-grid;
167
165
  align-items: center;
168
166
  height: 2em;
169
167
  }
170
168
 
171
- [part="icon"] svg {
169
+ [part=icon] svg {
172
170
  margin-right: .5em;
173
171
  width: 1.25em;
174
172
  height: 1.25em;
175
173
  }
176
174
 
177
- [part="content"] {
175
+ [part=content] {
178
176
  grid-row: span 2 / span 2;
179
177
  line-height: 1.5em;
180
178
  }
@@ -240,32 +238,30 @@ class Alert extends GlobalStyle {
240
238
  @property()
241
239
  variant: "blockquote" | "dark" | "light" = "dark";
242
240
 
243
- protected render() {
241
+ protected render(): TemplateResult<1> {
244
242
  const color = calls[this.call]?.color || this.color;
245
243
  const icon = this.call ? calls[this.call].icon() : htmlSlot("icon");
246
- return [
247
- html`<div part="root" variant="${this.variant}">
244
+ return html`<div part="root" ${attr(this.observedRecord)}>
248
245
  <div part="icon">${icon}</div>
249
246
  <div part="content">
250
247
  <strong part="title">${this.title || htmlSlot("title")}</strong>
251
248
  ${this.content || htmlSlot()}
252
249
  </div>
253
250
  ${
254
- !this.hideClose && this.variant !== "blockquote"
255
- ? html`<div part="close" tabindex=0 @click="${this.close}">${iconXmark()}</div>`
256
- : ""
257
- }
258
- </div>`,
259
- htmlStyle(this.variant === "light" ? lightStyles[color] : darkStyles[color]),
260
- ];
251
+ !this.hideClose && this.variant !== "blockquote"
252
+ ? html`<div part="close" tabindex="0" @click="${this.close}">${iconXmark()}</div>`
253
+ : ""
254
+ }
255
+ ${htmlStyle(this.variant === "light" ? lightStyles[color] : darkStyles[color])}
256
+ </div>`;
261
257
  }
262
258
 
263
- close() {
259
+ close(): void {
264
260
  this.remove();
265
261
  this.dispatchEvent(new CustomEvent("close", { bubbles: true, composed: true }));
266
262
  }
267
263
 
268
- protected firstUpdated() {
264
+ protected firstUpdated(): void {
269
265
  if (this.autoclose) {
270
266
  setTimeout(() => this.close(), this.autoclose);
271
267
  }
@@ -280,3 +276,4 @@ class Alert extends GlobalStyle {
280
276
  }
281
277
 
282
278
  export default Alert;
279
+ export { Alert };
@@ -1,6 +1,5 @@
1
- import { godown, styles } from "@godown/element/decorators/index.js";
2
- import { htmlSlot } from "@godown/element/directives/index.js";
3
- import { css, html } from "lit";
1
+ import { attr, godown, htmlSlot, omit, styles } from "@godown/element";
2
+ import { css, html, type TemplateResult } from "lit";
4
3
  import { property } from "lit/decorators.js";
5
4
 
6
5
  import { GlobalStyle, scopePrefix } from "../core/global-style.js";
@@ -14,6 +13,7 @@ const cssScope = scopePrefix(protoName);
14
13
  * Renders as an image if it has a src property,
15
14
  * otherwise falls back to name or nameless slot.
16
15
  *
16
+ * @slot - Display content if no `src` or `name` provided.
17
17
  * @category display
18
18
  */
19
19
  @godown(protoName)
@@ -23,30 +23,36 @@ const cssScope = scopePrefix(protoName);
23
23
  ${cssScope}--size: 2em;
24
24
  width: var(${cssScope}--size);
25
25
  height: var(${cssScope}--size);
26
- display: inline-block;
27
26
  vertical-align: bottom;
28
27
  }
29
28
 
30
- :host([round]){
29
+ :host,
30
+ [part=root] {
31
+ display: inline-flex;
32
+ }
33
+
34
+ :host([contents]) [part=root] {
35
+ display: inline-flex;
36
+ width: inherit;
37
+ height: inherit;
38
+ }
39
+
40
+ :host([round]) {
31
41
  border-radius:50%;
32
42
  }
33
43
 
34
- [part="image"] {
44
+ [part=image] {
35
45
  width: 100%;
36
46
  height: 100%;
37
47
  object-fit: cover;
38
48
  }
39
49
 
40
- [part="root"] {
50
+ [part=root] {
41
51
  overflow: hidden;
42
52
  position: relative;
43
53
  border-radius: inherit;
44
54
  width: 100%;
45
55
  height: 100%;
46
- }
47
-
48
- [part="root"] {
49
- display: flex;
50
56
  align-items: center;
51
57
  justify-content: center;
52
58
  }
@@ -58,22 +64,26 @@ class Avatar extends GlobalStyle {
58
64
  */
59
65
  @property()
60
66
  src: string | undefined | null;
67
+
61
68
  /**
62
- * If the image is not available, the {@linkcode Avatar.format} will be displayed.
69
+ * If the image is not available, display name (call {@linkcode Avatar.format}).
63
70
  */
64
71
  @property()
65
72
  name = "";
66
73
 
74
+ /**
75
+ * Display rounded.
76
+ */
67
77
  @property({ type: Boolean })
68
78
  round = false;
69
79
 
70
- protected render() {
71
- return html`<div part="root">${this._renderAvatar()}</div>`;
80
+ protected render(): TemplateResult<1> {
81
+ return html`<div part="root" ${attr(omit(this.observedRecord, "src"))}>${this._renderAvatar()}</div>`;
72
82
  }
73
83
 
74
84
  private _renderAvatar() {
75
85
  if (this.src) {
76
- return html`<img part="image" src="${this.src}" @error=${this._handleError} alt="${this.name}">`;
86
+ return html`<img part="image" src="${this.src}" @error=${this._handleError} alt="${this.name}" />`;
77
87
  }
78
88
  if (this.name) {
79
89
  return html`<span part="name">${this.format()}</span>`;
@@ -81,13 +91,14 @@ class Avatar extends GlobalStyle {
81
91
  return htmlSlot();
82
92
  }
83
93
 
84
- format() {
94
+ format(): string {
85
95
  return this.name;
86
96
  }
87
97
 
88
- _handleError() {
98
+ _handleError(): void {
89
99
  this.src = undefined;
90
100
  }
91
101
  }
92
102
 
93
103
  export default Avatar;
104
+ export { Avatar };
@@ -0,0 +1,107 @@
1
+ import { attr, godown, htmlSlot, styles } from "@godown/element";
2
+ import { css, html, type TemplateResult } from "lit";
3
+ import { property } from "lit/decorators.js";
4
+
5
+ import { cssGlobalVars, GlobalStyle, scopePrefix } from "../core/global-style.js";
6
+
7
+ type Position = "top-right" | "top-left" | "bottom-right" | "bottom-left";
8
+
9
+ const protoName = "badge";
10
+ const cssScope = scopePrefix(protoName);
11
+
12
+ /**
13
+ * {@linkcode Badge} renders a badge.
14
+ *
15
+ * @slot - Badge content.
16
+ * @category display
17
+ */
18
+ @godown(protoName)
19
+ @styles(
20
+ css`
21
+ :host {
22
+ ${cssScope}--background: var(${cssGlobalVars.active});
23
+ ${cssScope}--offset: 0%;
24
+ ${cssScope}--offset-x: var(${cssScope}--offset);
25
+ ${cssScope}--offset-y: var(${cssScope}--offset);
26
+ }
27
+
28
+ :host,
29
+ :host([contents]) [part=root] {
30
+ display: inline-block;
31
+ }
32
+
33
+ [part=root] {
34
+ position: relative;
35
+ }
36
+
37
+ [part=badge] {
38
+ position: absolute;
39
+ font-size: 75%;
40
+ padding: 0 0.5em;
41
+ user-select: none;
42
+ border-radius: calc(infinity * 1px);
43
+ transform: translate(-50%, -50%);
44
+ left: var(--left);
45
+ top: var(--top);
46
+ background: var(${cssScope}--background);
47
+ }
48
+
49
+ [part=badge]:empty {
50
+ width: 0.5em;
51
+ height: 0.5em;
52
+ font-size: 100%;
53
+ padding: 0;
54
+ border-radius: 50%;
55
+ }
56
+
57
+ [position^=top] {
58
+ --top: calc(0% + var(${cssScope}--offset-y));
59
+ }
60
+
61
+ [position$=right] {
62
+ --left: calc(100% - var(${cssScope}--offset-x));
63
+ }
64
+
65
+ [position^=bottom] {
66
+ --top: calc(100% - var(${cssScope}--offset-y));
67
+ }
68
+
69
+ [position$=left] {
70
+ --left: calc(0% + var(${cssScope}--offset-x));
71
+ }
72
+ `,
73
+ )
74
+ class Badge extends GlobalStyle {
75
+ @property()
76
+ position: Position = "top-right";
77
+
78
+ @property({ type: Number })
79
+ value = 0;
80
+
81
+ /**
82
+ * If `true`, render a dot badge.
83
+ */
84
+ @property({ type: Boolean })
85
+ dot = false;
86
+
87
+ @property({ type: Number })
88
+ max = 99;
89
+
90
+ private formatValue(value: number): string {
91
+ return value > this.max ? this.max + "+" : value + "";
92
+ }
93
+
94
+ render(): TemplateResult<1> {
95
+ return html`<div part="root" ${attr(this.observedRecord)}>
96
+ ${htmlSlot()}
97
+ ${
98
+ this.value || this.dot
99
+ ? html`<div part="badge">${this.dot ? "" : this.formatValue(this.value)}</div>`
100
+ : ""
101
+ }
102
+ </div>`;
103
+ }
104
+ }
105
+
106
+ export default Badge;
107
+ export { Badge };