@oneonefour/rkui 0.0.0-stage → 0.0.3

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 (1068) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +67 -2
  3. package/THIRD_PARTY_NOTICES.md +60 -0
  4. package/astro/index.d.ts +14 -0
  5. package/astro/index.js +153 -0
  6. package/dist/colors.d.ts +74 -0
  7. package/dist/colors.js +263 -0
  8. package/dist/fonts/jetbrains-mono/OFL.txt +93 -0
  9. package/dist/fonts/jetbrains-mono/jetbrains-mono-greek.woff2 +0 -0
  10. package/dist/fonts/jetbrains-mono/jetbrains-mono-italic-greek.woff2 +0 -0
  11. package/dist/fonts/jetbrains-mono/jetbrains-mono-italic-latin.woff2 +0 -0
  12. package/dist/fonts/jetbrains-mono/jetbrains-mono-italic-symbols.woff2 +0 -0
  13. package/dist/fonts/jetbrains-mono/jetbrains-mono-latin.woff2 +0 -0
  14. package/dist/fonts/jetbrains-mono/jetbrains-mono-symbols.woff2 +0 -0
  15. package/dist/fonts/roboto-slab/LICENSE.txt +202 -0
  16. package/dist/fonts/roboto-slab/roboto-slab-greek.woff2 +0 -0
  17. package/dist/fonts/roboto-slab/roboto-slab-latin.woff2 +0 -0
  18. package/dist/fonts/roboto-slab/roboto-slab-symbols.woff2 +0 -0
  19. package/dist/fonts/xmind/OFL.txt +93 -0
  20. package/dist/fonts/xmind/xmind-greek.woff2 +0 -0
  21. package/dist/fonts/xmind/xmind-italic-greek.woff2 +0 -0
  22. package/dist/fonts/xmind/xmind-italic-latin.woff2 +0 -0
  23. package/dist/fonts/xmind/xmind-italic-symbols.woff2 +0 -0
  24. package/dist/fonts/xmind/xmind-latin.woff2 +0 -0
  25. package/dist/fonts/xmind/xmind-symbols.woff2 +0 -0
  26. package/dist/icons/LICENSE-phosphor.txt +21 -0
  27. package/dist/icons/LICENSE-tabler.txt +21 -0
  28. package/dist/icons/acorn.svg +1 -0
  29. package/dist/icons/acorn.vue +1 -0
  30. package/dist/icons/air-traffic-control.svg +1 -0
  31. package/dist/icons/air-traffic-control.vue +1 -0
  32. package/dist/icons/airplane-in-flight.svg +1 -0
  33. package/dist/icons/airplane-in-flight.vue +1 -0
  34. package/dist/icons/airplane-landing.svg +1 -0
  35. package/dist/icons/airplane-landing.vue +1 -0
  36. package/dist/icons/airplane-takeoff.svg +1 -0
  37. package/dist/icons/airplane-takeoff.vue +1 -0
  38. package/dist/icons/airplane-taxiing.svg +1 -0
  39. package/dist/icons/airplane-taxiing.vue +1 -0
  40. package/dist/icons/airplane-tilt.svg +1 -0
  41. package/dist/icons/airplane-tilt.vue +1 -0
  42. package/dist/icons/airplane.svg +1 -0
  43. package/dist/icons/airplane.vue +1 -0
  44. package/dist/icons/ambulance.svg +1 -0
  45. package/dist/icons/ambulance.vue +1 -0
  46. package/dist/icons/anchor-simple.svg +1 -0
  47. package/dist/icons/anchor-simple.vue +1 -0
  48. package/dist/icons/anchor.svg +1 -0
  49. package/dist/icons/anchor.vue +1 -0
  50. package/dist/icons/angle.svg +1 -0
  51. package/dist/icons/angle.vue +1 -0
  52. package/dist/icons/aperture.svg +1 -0
  53. package/dist/icons/aperture.vue +1 -0
  54. package/dist/icons/app-window.svg +1 -0
  55. package/dist/icons/app-window.vue +1 -0
  56. package/dist/icons/approximate-equals.svg +1 -0
  57. package/dist/icons/approximate-equals.vue +1 -0
  58. package/dist/icons/arrow-counter-clockwise.svg +1 -0
  59. package/dist/icons/arrow-counter-clockwise.vue +1 -0
  60. package/dist/icons/arrow-left.svg +1 -0
  61. package/dist/icons/arrow-left.vue +1 -0
  62. package/dist/icons/arrow-right.svg +1 -0
  63. package/dist/icons/arrow-right.vue +1 -0
  64. package/dist/icons/arrow-square-out.svg +1 -0
  65. package/dist/icons/arrow-square-out.vue +1 -0
  66. package/dist/icons/arrow-up.svg +1 -0
  67. package/dist/icons/arrow-up.vue +1 -0
  68. package/dist/icons/arrows-out.svg +1 -0
  69. package/dist/icons/arrows-out.vue +1 -0
  70. package/dist/icons/atom.svg +1 -0
  71. package/dist/icons/atom.vue +1 -0
  72. package/dist/icons/bank.svg +1 -0
  73. package/dist/icons/bank.vue +1 -0
  74. package/dist/icons/barn.svg +1 -0
  75. package/dist/icons/barn.vue +1 -0
  76. package/dist/icons/barricade.svg +1 -0
  77. package/dist/icons/barricade.vue +1 -0
  78. package/dist/icons/battery-charging.svg +1 -0
  79. package/dist/icons/battery-charging.vue +1 -0
  80. package/dist/icons/bezier-curve.svg +1 -0
  81. package/dist/icons/bezier-curve.vue +1 -0
  82. package/dist/icons/bicycle.svg +1 -0
  83. package/dist/icons/bicycle.vue +1 -0
  84. package/dist/icons/binary.svg +1 -0
  85. package/dist/icons/binary.vue +1 -0
  86. package/dist/icons/binoculars.svg +1 -0
  87. package/dist/icons/binoculars.vue +1 -0
  88. package/dist/icons/biohazard.svg +1 -0
  89. package/dist/icons/biohazard.vue +1 -0
  90. package/dist/icons/bird.svg +1 -0
  91. package/dist/icons/bird.vue +1 -0
  92. package/dist/icons/blueprint.svg +1 -0
  93. package/dist/icons/blueprint.vue +1 -0
  94. package/dist/icons/boat.svg +1 -0
  95. package/dist/icons/boat.vue +1 -0
  96. package/dist/icons/book-open-text.svg +1 -0
  97. package/dist/icons/book-open-text.vue +1 -0
  98. package/dist/icons/bounding-box.svg +1 -0
  99. package/dist/icons/bounding-box.vue +1 -0
  100. package/dist/icons/brackets-angle.svg +1 -0
  101. package/dist/icons/brackets-angle.vue +1 -0
  102. package/dist/icons/brackets-curly.svg +1 -0
  103. package/dist/icons/brackets-curly.vue +1 -0
  104. package/dist/icons/brackets-round.svg +1 -0
  105. package/dist/icons/brackets-round.vue +1 -0
  106. package/dist/icons/brackets-square.svg +1 -0
  107. package/dist/icons/brackets-square.vue +1 -0
  108. package/dist/icons/brain.svg +1 -0
  109. package/dist/icons/brain.vue +1 -0
  110. package/dist/icons/bridge.svg +1 -0
  111. package/dist/icons/bridge.vue +1 -0
  112. package/dist/icons/briefcase.svg +1 -0
  113. package/dist/icons/briefcase.vue +1 -0
  114. package/dist/icons/browser.svg +1 -0
  115. package/dist/icons/browser.vue +1 -0
  116. package/dist/icons/bug-beetle.svg +1 -0
  117. package/dist/icons/bug-beetle.vue +1 -0
  118. package/dist/icons/bug.svg +1 -0
  119. package/dist/icons/bug.vue +1 -0
  120. package/dist/icons/building-apartment.svg +1 -0
  121. package/dist/icons/building-apartment.vue +1 -0
  122. package/dist/icons/building-office.svg +1 -0
  123. package/dist/icons/building-office.vue +1 -0
  124. package/dist/icons/building.svg +1 -0
  125. package/dist/icons/building.vue +1 -0
  126. package/dist/icons/buildings.svg +1 -0
  127. package/dist/icons/buildings.vue +1 -0
  128. package/dist/icons/bulldozer.svg +1 -0
  129. package/dist/icons/bulldozer.vue +1 -0
  130. package/dist/icons/bus.svg +1 -0
  131. package/dist/icons/bus.vue +1 -0
  132. package/dist/icons/butterfly.svg +1 -0
  133. package/dist/icons/butterfly.vue +1 -0
  134. package/dist/icons/cable-car.svg +1 -0
  135. package/dist/icons/cable-car.vue +1 -0
  136. package/dist/icons/cactus.svg +1 -0
  137. package/dist/icons/cactus.vue +1 -0
  138. package/dist/icons/calculator.svg +1 -0
  139. package/dist/icons/calculator.vue +1 -0
  140. package/dist/icons/calendar-blank.svg +1 -0
  141. package/dist/icons/calendar-blank.vue +1 -0
  142. package/dist/icons/camera.svg +1 -0
  143. package/dist/icons/camera.vue +1 -0
  144. package/dist/icons/campfire.svg +1 -0
  145. package/dist/icons/campfire.vue +1 -0
  146. package/dist/icons/car-battery.svg +1 -0
  147. package/dist/icons/car-battery.vue +1 -0
  148. package/dist/icons/car-profile.svg +1 -0
  149. package/dist/icons/car-profile.vue +1 -0
  150. package/dist/icons/car-simple.svg +1 -0
  151. package/dist/icons/car-simple.vue +1 -0
  152. package/dist/icons/car.svg +1 -0
  153. package/dist/icons/car.vue +1 -0
  154. package/dist/icons/caret-down.svg +1 -0
  155. package/dist/icons/caret-down.vue +1 -0
  156. package/dist/icons/caret-left.svg +1 -0
  157. package/dist/icons/caret-left.vue +1 -0
  158. package/dist/icons/caret-right.svg +1 -0
  159. package/dist/icons/caret-right.vue +1 -0
  160. package/dist/icons/caret-up.svg +1 -0
  161. package/dist/icons/caret-up.vue +1 -0
  162. package/dist/icons/cell-tower.svg +1 -0
  163. package/dist/icons/cell-tower.vue +1 -0
  164. package/dist/icons/chalkboard-teacher.svg +1 -0
  165. package/dist/icons/chalkboard-teacher.vue +1 -0
  166. package/dist/icons/charging-station.svg +1 -0
  167. package/dist/icons/charging-station.vue +1 -0
  168. package/dist/icons/chart-bar-horizontal.svg +1 -0
  169. package/dist/icons/chart-bar-horizontal.vue +1 -0
  170. package/dist/icons/chart-bar.svg +1 -0
  171. package/dist/icons/chart-bar.vue +1 -0
  172. package/dist/icons/chart-donut.svg +1 -0
  173. package/dist/icons/chart-donut.vue +1 -0
  174. package/dist/icons/chart-line-down.svg +1 -0
  175. package/dist/icons/chart-line-down.vue +1 -0
  176. package/dist/icons/chart-line-up.svg +1 -0
  177. package/dist/icons/chart-line-up.vue +1 -0
  178. package/dist/icons/chart-line.svg +1 -0
  179. package/dist/icons/chart-line.vue +1 -0
  180. package/dist/icons/chart-pie-slice.svg +1 -0
  181. package/dist/icons/chart-pie-slice.vue +1 -0
  182. package/dist/icons/chart-pie.svg +1 -0
  183. package/dist/icons/chart-pie.vue +1 -0
  184. package/dist/icons/chart-polar.svg +1 -0
  185. package/dist/icons/chart-polar.vue +1 -0
  186. package/dist/icons/chart-scatter.svg +1 -0
  187. package/dist/icons/chart-scatter.vue +1 -0
  188. package/dist/icons/check-circle.svg +1 -0
  189. package/dist/icons/check-circle.vue +1 -0
  190. package/dist/icons/check.svg +1 -0
  191. package/dist/icons/check.vue +1 -0
  192. package/dist/icons/circle-half.svg +1 -0
  193. package/dist/icons/circle-half.vue +1 -0
  194. package/dist/icons/circle-notch.svg +1 -0
  195. package/dist/icons/circle-notch.vue +1 -0
  196. package/dist/icons/circuitry.svg +1 -0
  197. package/dist/icons/circuitry.vue +1 -0
  198. package/dist/icons/city.svg +1 -0
  199. package/dist/icons/city.vue +1 -0
  200. package/dist/icons/clock.svg +1 -0
  201. package/dist/icons/clock.vue +1 -0
  202. package/dist/icons/closed-captioning.svg +1 -0
  203. package/dist/icons/closed-captioning.vue +1 -0
  204. package/dist/icons/cloud-arrow-down.svg +1 -0
  205. package/dist/icons/cloud-arrow-down.vue +1 -0
  206. package/dist/icons/cloud-arrow-up.svg +1 -0
  207. package/dist/icons/cloud-arrow-up.vue +1 -0
  208. package/dist/icons/cloud-check.svg +1 -0
  209. package/dist/icons/cloud-check.vue +1 -0
  210. package/dist/icons/cloud-fog.svg +1 -0
  211. package/dist/icons/cloud-fog.vue +1 -0
  212. package/dist/icons/cloud-lightning.svg +1 -0
  213. package/dist/icons/cloud-lightning.vue +1 -0
  214. package/dist/icons/cloud-moon.svg +1 -0
  215. package/dist/icons/cloud-moon.vue +1 -0
  216. package/dist/icons/cloud-rain.svg +1 -0
  217. package/dist/icons/cloud-rain.vue +1 -0
  218. package/dist/icons/cloud-slash.svg +1 -0
  219. package/dist/icons/cloud-slash.vue +1 -0
  220. package/dist/icons/cloud-snow.svg +1 -0
  221. package/dist/icons/cloud-snow.vue +1 -0
  222. package/dist/icons/cloud-sun.svg +1 -0
  223. package/dist/icons/cloud-sun.vue +1 -0
  224. package/dist/icons/cloud-warning.svg +1 -0
  225. package/dist/icons/cloud-warning.vue +1 -0
  226. package/dist/icons/cloud-x.svg +1 -0
  227. package/dist/icons/cloud-x.vue +1 -0
  228. package/dist/icons/cloud.svg +1 -0
  229. package/dist/icons/cloud.vue +1 -0
  230. package/dist/icons/clover.svg +1 -0
  231. package/dist/icons/clover.vue +1 -0
  232. package/dist/icons/code-block.svg +1 -0
  233. package/dist/icons/code-block.vue +1 -0
  234. package/dist/icons/code-simple.svg +1 -0
  235. package/dist/icons/code-simple.vue +1 -0
  236. package/dist/icons/code.svg +1 -0
  237. package/dist/icons/code.vue +1 -0
  238. package/dist/icons/columns.svg +1 -0
  239. package/dist/icons/columns.vue +1 -0
  240. package/dist/icons/command.svg +1 -0
  241. package/dist/icons/command.vue +1 -0
  242. package/dist/icons/compass-rose.svg +1 -0
  243. package/dist/icons/compass-rose.vue +1 -0
  244. package/dist/icons/compass-tool.svg +1 -0
  245. package/dist/icons/compass-tool.vue +1 -0
  246. package/dist/icons/compass.svg +1 -0
  247. package/dist/icons/compass.vue +1 -0
  248. package/dist/icons/computer-tower.svg +1 -0
  249. package/dist/icons/computer-tower.vue +1 -0
  250. package/dist/icons/copy.svg +1 -0
  251. package/dist/icons/copy.vue +1 -0
  252. package/dist/icons/cow.svg +1 -0
  253. package/dist/icons/cow.vue +1 -0
  254. package/dist/icons/cpu.svg +1 -0
  255. package/dist/icons/cpu.vue +1 -0
  256. package/dist/icons/crane-tower.svg +1 -0
  257. package/dist/icons/crane-tower.vue +1 -0
  258. package/dist/icons/crane.svg +1 -0
  259. package/dist/icons/crane.vue +1 -0
  260. package/dist/icons/cube-focus.svg +1 -0
  261. package/dist/icons/cube-focus.vue +1 -0
  262. package/dist/icons/cube-transparent.svg +1 -0
  263. package/dist/icons/cube-transparent.vue +1 -0
  264. package/dist/icons/cube.svg +1 -0
  265. package/dist/icons/cube.vue +1 -0
  266. package/dist/icons/cylinder.svg +1 -0
  267. package/dist/icons/cylinder.vue +1 -0
  268. package/dist/icons/database.svg +1 -0
  269. package/dist/icons/database.vue +1 -0
  270. package/dist/icons/desktop-tower.svg +1 -0
  271. package/dist/icons/desktop-tower.vue +1 -0
  272. package/dist/icons/desktop.svg +1 -0
  273. package/dist/icons/desktop.vue +1 -0
  274. package/dist/icons/dice-five.svg +1 -0
  275. package/dist/icons/dice-five.vue +1 -0
  276. package/dist/icons/divide.svg +1 -0
  277. package/dist/icons/divide.vue +1 -0
  278. package/dist/icons/dna.svg +1 -0
  279. package/dist/icons/dna.vue +1 -0
  280. package/dist/icons/download-simple.svg +1 -0
  281. package/dist/icons/download-simple.vue +1 -0
  282. package/dist/icons/drone.svg +1 -0
  283. package/dist/icons/drone.vue +1 -0
  284. package/dist/icons/drop-half-bottom.svg +1 -0
  285. package/dist/icons/drop-half-bottom.vue +1 -0
  286. package/dist/icons/drop-half.svg +1 -0
  287. package/dist/icons/drop-half.vue +1 -0
  288. package/dist/icons/drop-simple.svg +1 -0
  289. package/dist/icons/drop-simple.vue +1 -0
  290. package/dist/icons/drop-slash.svg +1 -0
  291. package/dist/icons/drop-slash.vue +1 -0
  292. package/dist/icons/drop.svg +1 -0
  293. package/dist/icons/drop.vue +1 -0
  294. package/dist/icons/engine.svg +1 -0
  295. package/dist/icons/engine.vue +1 -0
  296. package/dist/icons/envelope-simple.svg +1 -0
  297. package/dist/icons/envelope-simple.vue +1 -0
  298. package/dist/icons/equals.svg +1 -0
  299. package/dist/icons/equals.vue +1 -0
  300. package/dist/icons/eye-slash.svg +1 -0
  301. package/dist/icons/eye-slash.vue +1 -0
  302. package/dist/icons/eye.svg +1 -0
  303. package/dist/icons/eye.vue +1 -0
  304. package/dist/icons/face-mask.svg +1 -0
  305. package/dist/icons/face-mask.vue +1 -0
  306. package/dist/icons/factory.svg +1 -0
  307. package/dist/icons/factory.vue +1 -0
  308. package/dist/icons/farm.svg +1 -0
  309. package/dist/icons/farm.vue +1 -0
  310. package/dist/icons/file-archive.svg +1 -0
  311. package/dist/icons/file-archive.vue +1 -0
  312. package/dist/icons/file-arrow-down.svg +1 -0
  313. package/dist/icons/file-arrow-down.vue +1 -0
  314. package/dist/icons/file-c-sharp.svg +1 -0
  315. package/dist/icons/file-c-sharp.vue +1 -0
  316. package/dist/icons/file-c.svg +1 -0
  317. package/dist/icons/file-c.vue +1 -0
  318. package/dist/icons/file-cloud.svg +1 -0
  319. package/dist/icons/file-cloud.vue +1 -0
  320. package/dist/icons/file-code.svg +1 -0
  321. package/dist/icons/file-code.vue +1 -0
  322. package/dist/icons/file-cpp.svg +1 -0
  323. package/dist/icons/file-cpp.vue +1 -0
  324. package/dist/icons/file-css.svg +1 -0
  325. package/dist/icons/file-css.vue +1 -0
  326. package/dist/icons/file-csv.svg +1 -0
  327. package/dist/icons/file-csv.vue +1 -0
  328. package/dist/icons/file-html.svg +1 -0
  329. package/dist/icons/file-html.vue +1 -0
  330. package/dist/icons/file-image.svg +1 -0
  331. package/dist/icons/file-image.vue +1 -0
  332. package/dist/icons/file-ini.svg +1 -0
  333. package/dist/icons/file-ini.vue +1 -0
  334. package/dist/icons/file-js.svg +1 -0
  335. package/dist/icons/file-js.vue +1 -0
  336. package/dist/icons/file-jsx.svg +1 -0
  337. package/dist/icons/file-jsx.vue +1 -0
  338. package/dist/icons/file-md.svg +1 -0
  339. package/dist/icons/file-md.vue +1 -0
  340. package/dist/icons/file-pdf.svg +1 -0
  341. package/dist/icons/file-pdf.vue +1 -0
  342. package/dist/icons/file-py.svg +1 -0
  343. package/dist/icons/file-py.vue +1 -0
  344. package/dist/icons/file-rs.svg +1 -0
  345. package/dist/icons/file-rs.vue +1 -0
  346. package/dist/icons/file-sql.svg +1 -0
  347. package/dist/icons/file-sql.vue +1 -0
  348. package/dist/icons/file-svg.svg +1 -0
  349. package/dist/icons/file-svg.vue +1 -0
  350. package/dist/icons/file-text.svg +1 -0
  351. package/dist/icons/file-text.vue +1 -0
  352. package/dist/icons/file-ts.svg +1 -0
  353. package/dist/icons/file-ts.vue +1 -0
  354. package/dist/icons/file-tsx.svg +1 -0
  355. package/dist/icons/file-tsx.vue +1 -0
  356. package/dist/icons/file-txt.svg +1 -0
  357. package/dist/icons/file-txt.vue +1 -0
  358. package/dist/icons/file-vue.svg +1 -0
  359. package/dist/icons/file-vue.vue +1 -0
  360. package/dist/icons/file-xls.svg +1 -0
  361. package/dist/icons/file-xls.vue +1 -0
  362. package/dist/icons/file-zip.svg +1 -0
  363. package/dist/icons/file-zip.vue +1 -0
  364. package/dist/icons/fire-simple.svg +1 -0
  365. package/dist/icons/fire-simple.vue +1 -0
  366. package/dist/icons/fire-truck.svg +1 -0
  367. package/dist/icons/fire-truck.vue +1 -0
  368. package/dist/icons/fire.svg +1 -0
  369. package/dist/icons/fire.vue +1 -0
  370. package/dist/icons/fish-simple.svg +1 -0
  371. package/dist/icons/fish-simple.vue +1 -0
  372. package/dist/icons/fish.svg +1 -0
  373. package/dist/icons/fish.vue +1 -0
  374. package/dist/icons/flame.svg +1 -0
  375. package/dist/icons/flame.vue +1 -0
  376. package/dist/icons/flask.svg +1 -0
  377. package/dist/icons/flask.vue +1 -0
  378. package/dist/icons/flow-arrow.svg +1 -0
  379. package/dist/icons/flow-arrow.vue +1 -0
  380. package/dist/icons/flower-lotus.svg +1 -0
  381. package/dist/icons/flower-lotus.vue +1 -0
  382. package/dist/icons/flower-tulip.svg +1 -0
  383. package/dist/icons/flower-tulip.vue +1 -0
  384. package/dist/icons/flower.svg +1 -0
  385. package/dist/icons/flower.vue +1 -0
  386. package/dist/icons/footprints.svg +1 -0
  387. package/dist/icons/footprints.vue +1 -0
  388. package/dist/icons/function.svg +1 -0
  389. package/dist/icons/function.vue +1 -0
  390. package/dist/icons/funnel.svg +1 -0
  391. package/dist/icons/funnel.vue +1 -0
  392. package/dist/icons/garage.svg +1 -0
  393. package/dist/icons/garage.vue +1 -0
  394. package/dist/icons/gas-can.svg +1 -0
  395. package/dist/icons/gas-can.vue +1 -0
  396. package/dist/icons/gas-pump.svg +1 -0
  397. package/dist/icons/gas-pump.vue +1 -0
  398. package/dist/icons/gauge.svg +1 -0
  399. package/dist/icons/gauge.vue +1 -0
  400. package/dist/icons/gear-fine.svg +1 -0
  401. package/dist/icons/gear-fine.vue +1 -0
  402. package/dist/icons/gear-six.svg +1 -0
  403. package/dist/icons/gear-six.vue +1 -0
  404. package/dist/icons/gear.svg +1 -0
  405. package/dist/icons/gear.vue +1 -0
  406. package/dist/icons/git-branch.svg +1 -0
  407. package/dist/icons/git-branch.vue +1 -0
  408. package/dist/icons/git-commit.svg +1 -0
  409. package/dist/icons/git-commit.vue +1 -0
  410. package/dist/icons/git-diff.svg +1 -0
  411. package/dist/icons/git-diff.vue +1 -0
  412. package/dist/icons/git-fork.svg +1 -0
  413. package/dist/icons/git-fork.vue +1 -0
  414. package/dist/icons/git-merge.svg +1 -0
  415. package/dist/icons/git-merge.vue +1 -0
  416. package/dist/icons/git-pull-request.svg +1 -0
  417. package/dist/icons/git-pull-request.vue +1 -0
  418. package/dist/icons/globe-hemisphere-east.svg +1 -0
  419. package/dist/icons/globe-hemisphere-east.vue +1 -0
  420. package/dist/icons/globe-hemisphere-west.svg +1 -0
  421. package/dist/icons/globe-hemisphere-west.vue +1 -0
  422. package/dist/icons/globe-simple.svg +1 -0
  423. package/dist/icons/globe-simple.vue +1 -0
  424. package/dist/icons/globe-stand.svg +1 -0
  425. package/dist/icons/globe-stand.vue +1 -0
  426. package/dist/icons/globe.svg +1 -0
  427. package/dist/icons/globe.vue +1 -0
  428. package/dist/icons/gps-fix.svg +1 -0
  429. package/dist/icons/gps-fix.vue +1 -0
  430. package/dist/icons/gps.svg +1 -0
  431. package/dist/icons/gps.vue +1 -0
  432. package/dist/icons/gradient.svg +1 -0
  433. package/dist/icons/gradient.vue +1 -0
  434. package/dist/icons/graduation-cap.svg +1 -0
  435. package/dist/icons/graduation-cap.vue +1 -0
  436. package/dist/icons/grains-slash.svg +1 -0
  437. package/dist/icons/grains-slash.vue +1 -0
  438. package/dist/icons/grains.svg +1 -0
  439. package/dist/icons/grains.vue +1 -0
  440. package/dist/icons/graph.svg +1 -0
  441. package/dist/icons/graph.vue +1 -0
  442. package/dist/icons/graphics-card.svg +1 -0
  443. package/dist/icons/graphics-card.vue +1 -0
  444. package/dist/icons/greater-than-or-equal.svg +1 -0
  445. package/dist/icons/greater-than-or-equal.vue +1 -0
  446. package/dist/icons/greater-than.svg +1 -0
  447. package/dist/icons/greater-than.vue +1 -0
  448. package/dist/icons/grid-four.svg +1 -0
  449. package/dist/icons/grid-four.vue +1 -0
  450. package/dist/icons/grid-nine.svg +1 -0
  451. package/dist/icons/grid-nine.vue +1 -0
  452. package/dist/icons/hammer.svg +1 -0
  453. package/dist/icons/hammer.vue +1 -0
  454. package/dist/icons/hand-waving.svg +1 -0
  455. package/dist/icons/hand-waving.vue +1 -0
  456. package/dist/icons/hard-drive.svg +1 -0
  457. package/dist/icons/hard-drive.vue +1 -0
  458. package/dist/icons/hard-drives.svg +1 -0
  459. package/dist/icons/hard-drives.vue +1 -0
  460. package/dist/icons/hard-hat.svg +1 -0
  461. package/dist/icons/hard-hat.vue +1 -0
  462. package/dist/icons/head-circuit.svg +1 -0
  463. package/dist/icons/head-circuit.vue +1 -0
  464. package/dist/icons/hospital.svg +1 -0
  465. package/dist/icons/hospital.vue +1 -0
  466. package/dist/icons/house-line.svg +1 -0
  467. package/dist/icons/house-line.vue +1 -0
  468. package/dist/icons/house-simple.svg +1 -0
  469. package/dist/icons/house-simple.vue +1 -0
  470. package/dist/icons/house.svg +1 -0
  471. package/dist/icons/house.vue +1 -0
  472. package/dist/icons/hurricane.svg +1 -0
  473. package/dist/icons/hurricane.vue +1 -0
  474. package/dist/icons/identification-card.svg +1 -0
  475. package/dist/icons/identification-card.vue +1 -0
  476. package/dist/icons/image.svg +1 -0
  477. package/dist/icons/image.vue +1 -0
  478. package/dist/icons/images.svg +1 -0
  479. package/dist/icons/images.vue +1 -0
  480. package/dist/icons/infinity.svg +1 -0
  481. package/dist/icons/infinity.vue +1 -0
  482. package/dist/icons/info.svg +1 -0
  483. package/dist/icons/info.vue +1 -0
  484. package/dist/icons/intersect-three.svg +1 -0
  485. package/dist/icons/intersect-three.vue +1 -0
  486. package/dist/icons/intersection.svg +1 -0
  487. package/dist/icons/intersection.vue +1 -0
  488. package/dist/icons/island.svg +1 -0
  489. package/dist/icons/island.vue +1 -0
  490. package/dist/icons/jeep.svg +1 -0
  491. package/dist/icons/jeep.vue +1 -0
  492. package/dist/icons/kanban.svg +1 -0
  493. package/dist/icons/kanban.vue +1 -0
  494. package/dist/icons/keyboard.svg +1 -0
  495. package/dist/icons/keyboard.vue +1 -0
  496. package/dist/icons/laptop.svg +1 -0
  497. package/dist/icons/laptop.vue +1 -0
  498. package/dist/icons/leaf.svg +1 -0
  499. package/dist/icons/leaf.vue +1 -0
  500. package/dist/icons/less-than-or-equal.svg +1 -0
  501. package/dist/icons/less-than-or-equal.vue +1 -0
  502. package/dist/icons/less-than.svg +1 -0
  503. package/dist/icons/less-than.vue +1 -0
  504. package/dist/icons/lightbulb.svg +1 -0
  505. package/dist/icons/lightbulb.vue +1 -0
  506. package/dist/icons/lighthouse.svg +1 -0
  507. package/dist/icons/lighthouse.vue +1 -0
  508. package/dist/icons/lightning-slash.svg +1 -0
  509. package/dist/icons/lightning-slash.vue +1 -0
  510. package/dist/icons/lightning.svg +1 -0
  511. package/dist/icons/lightning.vue +1 -0
  512. package/dist/icons/line-segment.svg +1 -0
  513. package/dist/icons/line-segment.vue +1 -0
  514. package/dist/icons/line-segments.svg +1 -0
  515. package/dist/icons/line-segments.vue +1 -0
  516. package/dist/icons/link.svg +1 -0
  517. package/dist/icons/link.vue +1 -0
  518. package/dist/icons/list-bullets.svg +1 -0
  519. package/dist/icons/list-bullets.vue +1 -0
  520. package/dist/icons/list.svg +1 -0
  521. package/dist/icons/list.vue +1 -0
  522. package/dist/icons/magic-wand.svg +1 -0
  523. package/dist/icons/magic-wand.vue +1 -0
  524. package/dist/icons/magnet-straight.svg +1 -0
  525. package/dist/icons/magnet-straight.vue +1 -0
  526. package/dist/icons/magnet.svg +1 -0
  527. package/dist/icons/magnet.vue +1 -0
  528. package/dist/icons/magnifying-glass-minus.svg +1 -0
  529. package/dist/icons/magnifying-glass-minus.vue +1 -0
  530. package/dist/icons/magnifying-glass-plus.svg +1 -0
  531. package/dist/icons/magnifying-glass-plus.vue +1 -0
  532. package/dist/icons/magnifying-glass.svg +1 -0
  533. package/dist/icons/magnifying-glass.vue +1 -0
  534. package/dist/icons/map-pin-area.svg +1 -0
  535. package/dist/icons/map-pin-area.vue +1 -0
  536. package/dist/icons/map-pin-line.svg +1 -0
  537. package/dist/icons/map-pin-line.vue +1 -0
  538. package/dist/icons/map-pin-simple-area.svg +1 -0
  539. package/dist/icons/map-pin-simple-area.vue +1 -0
  540. package/dist/icons/map-pin-simple-line.svg +1 -0
  541. package/dist/icons/map-pin-simple-line.vue +1 -0
  542. package/dist/icons/map-pin-simple.svg +1 -0
  543. package/dist/icons/map-pin-simple.vue +1 -0
  544. package/dist/icons/map-pin.svg +1 -0
  545. package/dist/icons/map-pin.vue +1 -0
  546. package/dist/icons/map-trifold.svg +1 -0
  547. package/dist/icons/map-trifold.vue +1 -0
  548. package/dist/icons/math-operations.svg +1 -0
  549. package/dist/icons/math-operations.vue +1 -0
  550. package/dist/icons/member-of.svg +1 -0
  551. package/dist/icons/member-of.vue +1 -0
  552. package/dist/icons/memory.svg +1 -0
  553. package/dist/icons/memory.vue +1 -0
  554. package/dist/icons/meteor.svg +1 -0
  555. package/dist/icons/meteor.vue +1 -0
  556. package/dist/icons/microscope.svg +1 -0
  557. package/dist/icons/microscope.vue +1 -0
  558. package/dist/icons/minus.svg +1 -0
  559. package/dist/icons/minus.vue +1 -0
  560. package/dist/icons/monitor.svg +1 -0
  561. package/dist/icons/monitor.vue +1 -0
  562. package/dist/icons/moon-stars.svg +1 -0
  563. package/dist/icons/moon-stars.vue +1 -0
  564. package/dist/icons/moon.svg +1 -0
  565. package/dist/icons/moon.vue +1 -0
  566. package/dist/icons/moped-front.svg +1 -0
  567. package/dist/icons/moped-front.vue +1 -0
  568. package/dist/icons/moped.svg +1 -0
  569. package/dist/icons/moped.vue +1 -0
  570. package/dist/icons/motorcycle.svg +1 -0
  571. package/dist/icons/motorcycle.vue +1 -0
  572. package/dist/icons/mountains.svg +1 -0
  573. package/dist/icons/mountains.vue +1 -0
  574. package/dist/icons/navigation-arrow.svg +1 -0
  575. package/dist/icons/navigation-arrow.vue +1 -0
  576. package/dist/icons/network.svg +1 -0
  577. package/dist/icons/network.vue +1 -0
  578. package/dist/icons/newspaper-clipping.svg +1 -0
  579. package/dist/icons/newspaper-clipping.vue +1 -0
  580. package/dist/icons/not-equals.svg +1 -0
  581. package/dist/icons/not-equals.vue +1 -0
  582. package/dist/icons/not-member-of.svg +1 -0
  583. package/dist/icons/not-member-of.vue +1 -0
  584. package/dist/icons/not-subset-of.svg +1 -0
  585. package/dist/icons/not-subset-of.vue +1 -0
  586. package/dist/icons/not-superset-of.svg +1 -0
  587. package/dist/icons/not-superset-of.vue +1 -0
  588. package/dist/icons/notebook.svg +1 -0
  589. package/dist/icons/notebook.vue +1 -0
  590. package/dist/icons/nuclear-plant.svg +1 -0
  591. package/dist/icons/nuclear-plant.vue +1 -0
  592. package/dist/icons/package.svg +1 -0
  593. package/dist/icons/package.vue +1 -0
  594. package/dist/icons/paint-brush.svg +1 -0
  595. package/dist/icons/paint-brush.vue +1 -0
  596. package/dist/icons/palette.svg +1 -0
  597. package/dist/icons/palette.vue +1 -0
  598. package/dist/icons/park.svg +1 -0
  599. package/dist/icons/park.vue +1 -0
  600. package/dist/icons/path.svg +1 -0
  601. package/dist/icons/path.vue +1 -0
  602. package/dist/icons/pause.svg +1 -0
  603. package/dist/icons/pause.vue +1 -0
  604. package/dist/icons/pen-nib.svg +1 -0
  605. package/dist/icons/pen-nib.vue +1 -0
  606. package/dist/icons/percent.svg +1 -0
  607. package/dist/icons/percent.vue +1 -0
  608. package/dist/icons/person-simple-bike.svg +1 -0
  609. package/dist/icons/person-simple-bike.vue +1 -0
  610. package/dist/icons/person-simple-circle.svg +1 -0
  611. package/dist/icons/person-simple-circle.vue +1 -0
  612. package/dist/icons/person-simple-hike.svg +1 -0
  613. package/dist/icons/person-simple-hike.vue +1 -0
  614. package/dist/icons/person-simple-walk.svg +1 -0
  615. package/dist/icons/person-simple-walk.vue +1 -0
  616. package/dist/icons/pi.svg +1 -0
  617. package/dist/icons/pi.vue +1 -0
  618. package/dist/icons/picnic-table.svg +1 -0
  619. package/dist/icons/picnic-table.vue +1 -0
  620. package/dist/icons/planet.svg +1 -0
  621. package/dist/icons/planet.vue +1 -0
  622. package/dist/icons/plant.svg +1 -0
  623. package/dist/icons/plant.vue +1 -0
  624. package/dist/icons/play.svg +1 -0
  625. package/dist/icons/play.vue +1 -0
  626. package/dist/icons/plug-charging.svg +1 -0
  627. package/dist/icons/plug-charging.vue +1 -0
  628. package/dist/icons/plug.svg +1 -0
  629. package/dist/icons/plug.vue +1 -0
  630. package/dist/icons/plus-minus.svg +1 -0
  631. package/dist/icons/plus-minus.vue +1 -0
  632. package/dist/icons/plus.svg +1 -0
  633. package/dist/icons/plus.vue +1 -0
  634. package/dist/icons/police-car.svg +1 -0
  635. package/dist/icons/police-car.vue +1 -0
  636. package/dist/icons/potted-plant.svg +1 -0
  637. package/dist/icons/potted-plant.vue +1 -0
  638. package/dist/icons/presentation-chart.svg +1 -0
  639. package/dist/icons/presentation-chart.vue +1 -0
  640. package/dist/icons/printer.svg +1 -0
  641. package/dist/icons/printer.vue +1 -0
  642. package/dist/icons/pulse.svg +1 -0
  643. package/dist/icons/pulse.vue +1 -0
  644. package/dist/icons/puzzle-piece.svg +1 -0
  645. package/dist/icons/puzzle-piece.vue +1 -0
  646. package/dist/icons/question.svg +1 -0
  647. package/dist/icons/question.vue +1 -0
  648. package/dist/icons/quotes.svg +1 -0
  649. package/dist/icons/quotes.vue +1 -0
  650. package/dist/icons/radical.svg +1 -0
  651. package/dist/icons/radical.vue +1 -0
  652. package/dist/icons/radioactive.svg +1 -0
  653. package/dist/icons/radioactive.vue +1 -0
  654. package/dist/icons/rainbow-cloud.svg +1 -0
  655. package/dist/icons/rainbow-cloud.vue +1 -0
  656. package/dist/icons/rainbow.svg +1 -0
  657. package/dist/icons/rainbow.vue +1 -0
  658. package/dist/icons/recycle.svg +1 -0
  659. package/dist/icons/recycle.vue +1 -0
  660. package/dist/icons/road-horizon.svg +1 -0
  661. package/dist/icons/road-horizon.vue +1 -0
  662. package/dist/icons/robot.svg +1 -0
  663. package/dist/icons/robot.vue +1 -0
  664. package/dist/icons/rocket-launch.svg +1 -0
  665. package/dist/icons/rocket-launch.vue +1 -0
  666. package/dist/icons/rocket.svg +1 -0
  667. package/dist/icons/rocket.vue +1 -0
  668. package/dist/icons/rows.svg +1 -0
  669. package/dist/icons/rows.vue +1 -0
  670. package/dist/icons/rss.svg +1 -0
  671. package/dist/icons/rss.vue +1 -0
  672. package/dist/icons/ruler.svg +1 -0
  673. package/dist/icons/ruler.vue +1 -0
  674. package/dist/icons/sailboat.svg +1 -0
  675. package/dist/icons/sailboat.vue +1 -0
  676. package/dist/icons/satellite.svg +1 -0
  677. package/dist/icons/satellite.vue +1 -0
  678. package/dist/icons/scales.svg +1 -0
  679. package/dist/icons/scales.vue +1 -0
  680. package/dist/icons/scooter.svg +1 -0
  681. package/dist/icons/scooter.vue +1 -0
  682. package/dist/icons/screwdriver.svg +1 -0
  683. package/dist/icons/screwdriver.vue +1 -0
  684. package/dist/icons/seal-check.svg +1 -0
  685. package/dist/icons/seal-check.vue +1 -0
  686. package/dist/icons/share-network.svg +1 -0
  687. package/dist/icons/share-network.vue +1 -0
  688. package/dist/icons/shipping-container.svg +1 -0
  689. package/dist/icons/shipping-container.vue +1 -0
  690. package/dist/icons/shooting-star.svg +1 -0
  691. package/dist/icons/shooting-star.vue +1 -0
  692. package/dist/icons/shovel.svg +1 -0
  693. package/dist/icons/shovel.vue +1 -0
  694. package/dist/icons/shuffle.svg +1 -0
  695. package/dist/icons/shuffle.vue +1 -0
  696. package/dist/icons/sigma.svg +1 -0
  697. package/dist/icons/sigma.vue +1 -0
  698. package/dist/icons/signpost.svg +1 -0
  699. package/dist/icons/signpost.vue +1 -0
  700. package/dist/icons/sliders-horizontal.svg +1 -0
  701. package/dist/icons/sliders-horizontal.vue +1 -0
  702. package/dist/icons/snowflake.svg +1 -0
  703. package/dist/icons/snowflake.vue +1 -0
  704. package/dist/icons/solar-panel.svg +1 -0
  705. package/dist/icons/solar-panel.vue +1 -0
  706. package/dist/icons/solar-roof.svg +1 -0
  707. package/dist/icons/solar-roof.vue +1 -0
  708. package/dist/icons/sparkle.svg +1 -0
  709. package/dist/icons/sparkle.vue +1 -0
  710. package/dist/icons/speaker-high.svg +1 -0
  711. package/dist/icons/speaker-high.vue +1 -0
  712. package/dist/icons/speaker-slash.svg +1 -0
  713. package/dist/icons/speaker-slash.vue +1 -0
  714. package/dist/icons/speedometer.svg +1 -0
  715. package/dist/icons/speedometer.vue +1 -0
  716. package/dist/icons/sphere.svg +1 -0
  717. package/dist/icons/sphere.vue +1 -0
  718. package/dist/icons/sprite.svg +418 -0
  719. package/dist/icons/stack-simple.svg +1 -0
  720. package/dist/icons/stack-simple.vue +1 -0
  721. package/dist/icons/stack.svg +1 -0
  722. package/dist/icons/stack.vue +1 -0
  723. package/dist/icons/star-four.svg +1 -0
  724. package/dist/icons/star-four.vue +1 -0
  725. package/dist/icons/star.svg +1 -0
  726. package/dist/icons/star.vue +1 -0
  727. package/dist/icons/steering-wheel.svg +1 -0
  728. package/dist/icons/steering-wheel.vue +1 -0
  729. package/dist/icons/stop.svg +1 -0
  730. package/dist/icons/stop.vue +1 -0
  731. package/dist/icons/storefront.svg +1 -0
  732. package/dist/icons/storefront.vue +1 -0
  733. package/dist/icons/subset-of.svg +1 -0
  734. package/dist/icons/subset-of.vue +1 -0
  735. package/dist/icons/subset-proper-of.svg +1 -0
  736. package/dist/icons/subset-proper-of.vue +1 -0
  737. package/dist/icons/subway.svg +1 -0
  738. package/dist/icons/subway.vue +1 -0
  739. package/dist/icons/sun-dim.svg +1 -0
  740. package/dist/icons/sun-dim.vue +1 -0
  741. package/dist/icons/sun-horizon.svg +1 -0
  742. package/dist/icons/sun-horizon.vue +1 -0
  743. package/dist/icons/sun.svg +1 -0
  744. package/dist/icons/sun.vue +1 -0
  745. package/dist/icons/superset-of.svg +1 -0
  746. package/dist/icons/superset-of.vue +1 -0
  747. package/dist/icons/superset-proper-of.svg +1 -0
  748. package/dist/icons/superset-proper-of.vue +1 -0
  749. package/dist/icons/table.svg +1 -0
  750. package/dist/icons/table.vue +1 -0
  751. package/dist/icons/tag.svg +1 -0
  752. package/dist/icons/tag.vue +1 -0
  753. package/dist/icons/taxi.svg +1 -0
  754. package/dist/icons/taxi.vue +1 -0
  755. package/dist/icons/tent.svg +1 -0
  756. package/dist/icons/tent.vue +1 -0
  757. package/dist/icons/terminal-window.svg +1 -0
  758. package/dist/icons/terminal-window.vue +1 -0
  759. package/dist/icons/terminal.svg +1 -0
  760. package/dist/icons/terminal.vue +1 -0
  761. package/dist/icons/test-tube.svg +1 -0
  762. package/dist/icons/test-tube.vue +1 -0
  763. package/dist/icons/thermometer-cold.svg +1 -0
  764. package/dist/icons/thermometer-cold.vue +1 -0
  765. package/dist/icons/thermometer-hot.svg +1 -0
  766. package/dist/icons/thermometer-hot.vue +1 -0
  767. package/dist/icons/thermometer-simple.svg +1 -0
  768. package/dist/icons/thermometer-simple.vue +1 -0
  769. package/dist/icons/thermometer.svg +1 -0
  770. package/dist/icons/thermometer.vue +1 -0
  771. package/dist/icons/tire.svg +1 -0
  772. package/dist/icons/tire.vue +1 -0
  773. package/dist/icons/toolbox.svg +1 -0
  774. package/dist/icons/toolbox.vue +1 -0
  775. package/dist/icons/tornado.svg +1 -0
  776. package/dist/icons/tornado.vue +1 -0
  777. package/dist/icons/tractor.svg +1 -0
  778. package/dist/icons/tractor.vue +1 -0
  779. package/dist/icons/traffic-cone.svg +1 -0
  780. package/dist/icons/traffic-cone.vue +1 -0
  781. package/dist/icons/traffic-sign.svg +1 -0
  782. package/dist/icons/traffic-sign.vue +1 -0
  783. package/dist/icons/traffic-signal.svg +1 -0
  784. package/dist/icons/traffic-signal.vue +1 -0
  785. package/dist/icons/train-regional.svg +1 -0
  786. package/dist/icons/train-regional.vue +1 -0
  787. package/dist/icons/train-simple.svg +1 -0
  788. package/dist/icons/train-simple.vue +1 -0
  789. package/dist/icons/train.svg +1 -0
  790. package/dist/icons/train.vue +1 -0
  791. package/dist/icons/tram.svg +1 -0
  792. package/dist/icons/tram.vue +1 -0
  793. package/dist/icons/translate.svg +1 -0
  794. package/dist/icons/translate.vue +1 -0
  795. package/dist/icons/tree-evergreen.svg +1 -0
  796. package/dist/icons/tree-evergreen.vue +1 -0
  797. package/dist/icons/tree-palm.svg +1 -0
  798. package/dist/icons/tree-palm.vue +1 -0
  799. package/dist/icons/tree-structure.svg +1 -0
  800. package/dist/icons/tree-structure.vue +1 -0
  801. package/dist/icons/tree-view.svg +1 -0
  802. package/dist/icons/tree-view.vue +1 -0
  803. package/dist/icons/tree.svg +1 -0
  804. package/dist/icons/tree.vue +1 -0
  805. package/dist/icons/trend-down.svg +1 -0
  806. package/dist/icons/trend-down.vue +1 -0
  807. package/dist/icons/trend-up.svg +1 -0
  808. package/dist/icons/trend-up.vue +1 -0
  809. package/dist/icons/trophy.svg +1 -0
  810. package/dist/icons/trophy.vue +1 -0
  811. package/dist/icons/truck-trailer.svg +1 -0
  812. package/dist/icons/truck-trailer.vue +1 -0
  813. package/dist/icons/truck.svg +1 -0
  814. package/dist/icons/truck.vue +1 -0
  815. package/dist/icons/umbrella-simple.svg +1 -0
  816. package/dist/icons/umbrella-simple.vue +1 -0
  817. package/dist/icons/umbrella.svg +1 -0
  818. package/dist/icons/umbrella.vue +1 -0
  819. package/dist/icons/union.svg +1 -0
  820. package/dist/icons/union.vue +1 -0
  821. package/dist/icons/upload-simple.svg +1 -0
  822. package/dist/icons/upload-simple.vue +1 -0
  823. package/dist/icons/users.svg +1 -0
  824. package/dist/icons/users.vue +1 -0
  825. package/dist/icons/van.svg +1 -0
  826. package/dist/icons/van.vue +1 -0
  827. package/dist/icons/vector-three.svg +1 -0
  828. package/dist/icons/vector-three.vue +1 -0
  829. package/dist/icons/vector-two.svg +1 -0
  830. package/dist/icons/vector-two.vue +1 -0
  831. package/dist/icons/video.svg +1 -0
  832. package/dist/icons/video.vue +1 -0
  833. package/dist/icons/virus.svg +1 -0
  834. package/dist/icons/virus.vue +1 -0
  835. package/dist/icons/warehouse.svg +1 -0
  836. package/dist/icons/warehouse.vue +1 -0
  837. package/dist/icons/warning.svg +1 -0
  838. package/dist/icons/warning.vue +1 -0
  839. package/dist/icons/wave-sawtooth.svg +1 -0
  840. package/dist/icons/wave-sawtooth.vue +1 -0
  841. package/dist/icons/wave-sine.svg +1 -0
  842. package/dist/icons/wave-sine.vue +1 -0
  843. package/dist/icons/wave-square.svg +1 -0
  844. package/dist/icons/wave-square.vue +1 -0
  845. package/dist/icons/wave-triangle.svg +1 -0
  846. package/dist/icons/wave-triangle.vue +1 -0
  847. package/dist/icons/waveform.svg +1 -0
  848. package/dist/icons/waveform.vue +1 -0
  849. package/dist/icons/waves.svg +1 -0
  850. package/dist/icons/waves.vue +1 -0
  851. package/dist/icons/wind.svg +1 -0
  852. package/dist/icons/wind.vue +1 -0
  853. package/dist/icons/windmill.svg +1 -0
  854. package/dist/icons/windmill.vue +1 -0
  855. package/dist/icons/wrench.svg +1 -0
  856. package/dist/icons/wrench.vue +1 -0
  857. package/dist/icons/x-circle.svg +1 -0
  858. package/dist/icons/x-circle.vue +1 -0
  859. package/dist/icons/x.svg +1 -0
  860. package/dist/icons/x.vue +1 -0
  861. package/dist/rkui.css +1 -0
  862. package/dist/rkui.js +41 -0
  863. package/dist/types/components/alert/alert-enhance.d.ts +0 -0
  864. package/dist/types/components/code/highlight.d.ts +9 -0
  865. package/dist/types/components/drawer/drawer-enhance.d.ts +21 -0
  866. package/dist/types/components/file/file-enhance.d.ts +6 -0
  867. package/dist/types/components/folder/folder-enhance.d.ts +1 -0
  868. package/dist/types/components/overflow/overflow-enhance.d.ts +1 -0
  869. package/dist/types/components/quote/quote-enhance.d.ts +1 -0
  870. package/dist/types/components/sidebar/sidebar-enhance.d.ts +1 -0
  871. package/dist/types/components/table/table-enhance.d.ts +1 -0
  872. package/dist/types/components/tooltip/tooltip-enhance.d.ts +7 -0
  873. package/dist/types/shared/after-slide.d.ts +10 -0
  874. package/dist/types/shared/clock-face.d.ts +93 -0
  875. package/dist/types/shared/dial-face.d.ts +58 -0
  876. package/dist/types/shared/dial-geometry.d.ts +66 -0
  877. package/dist/types/shared/each-element.d.ts +9 -0
  878. package/dist/types/shared/light-angle.d.ts +22 -0
  879. package/package.json +100 -4
  880. package/src/base/base.css +144 -0
  881. package/src/base/fonts.css +158 -0
  882. package/src/base/type.css +17 -0
  883. package/src/components/alert/Alert.vue +66 -0
  884. package/src/components/alert/alert-enhance.js +43 -0
  885. package/src/components/alert/alert.css +125 -0
  886. package/src/components/badge/Badge.vue +74 -0
  887. package/src/components/badge/BadgeHost.vue +24 -0
  888. package/src/components/badge/badge.css +142 -0
  889. package/src/components/ballot/Ballot.vue +71 -0
  890. package/src/components/ballot/BallotOption.vue +83 -0
  891. package/src/components/ballot/ballot.css +208 -0
  892. package/src/components/breadcrumbs/Breadcrumbs.vue +47 -0
  893. package/src/components/breadcrumbs/breadcrumbs.css +104 -0
  894. package/src/components/button/Button.vue +130 -0
  895. package/src/components/button/button.css +93 -0
  896. package/src/components/callout/Callout.vue +31 -0
  897. package/src/components/callout/callout.css +39 -0
  898. package/src/components/card/Card.vue +59 -0
  899. package/src/components/card/card.css +117 -0
  900. package/src/components/checkbox/Checkbox.vue +50 -0
  901. package/src/components/checkbox/Radio.vue +51 -0
  902. package/src/components/checkbox/checkbox.css +82 -0
  903. package/src/components/chip/Chip.vue +60 -0
  904. package/src/components/chip/ChipGroup.vue +59 -0
  905. package/src/components/chip/chip.css +73 -0
  906. package/src/components/clock/Clock.vue +200 -0
  907. package/src/components/clock/clock-element.ts +6 -0
  908. package/src/components/clock/clock.css +258 -0
  909. package/src/components/code/CodeBlock.vue +210 -0
  910. package/src/components/code/code.css +185 -0
  911. package/src/components/code/highlight.js +46 -0
  912. package/src/components/color-picker/ColorInput.vue +54 -0
  913. package/src/components/color-picker/ColorPicker.vue +110 -0
  914. package/src/components/color-picker/ColorTile.vue +28 -0
  915. package/src/components/color-picker/color-picker-element.ts +7 -0
  916. package/src/components/color-picker/color-picker.css +219 -0
  917. package/src/components/date-time/date-time.css +53 -0
  918. package/src/components/dial/Dial.vue +247 -0
  919. package/src/components/dial/dial-element.ts +6 -0
  920. package/src/components/dial/dial.css +299 -0
  921. package/src/components/drawer/Cabinet.vue +67 -0
  922. package/src/components/drawer/Drawer.vue +155 -0
  923. package/src/components/drawer/drawer-enhance.js +123 -0
  924. package/src/components/drawer/drawer.css +889 -0
  925. package/src/components/field/Field.vue +49 -0
  926. package/src/components/field/field.css +31 -0
  927. package/src/components/figure/figure.css +30 -0
  928. package/src/components/file/File.vue +73 -0
  929. package/src/components/file/file-enhance.js +35 -0
  930. package/src/components/file/file.css +130 -0
  931. package/src/components/folder/Folder.vue +241 -0
  932. package/src/components/folder/Tab.vue +25 -0
  933. package/src/components/folder/folder-enhance.js +231 -0
  934. package/src/components/folder/folder.css +582 -0
  935. package/src/components/folder/tab-items.ts +67 -0
  936. package/src/components/folder/tab-slot.ts +80 -0
  937. package/src/components/header-band/HeaderBand.vue +52 -0
  938. package/src/components/header-band/header-band.css +54 -0
  939. package/src/components/icon/icon.css +20 -0
  940. package/src/components/input/Input.vue +69 -0
  941. package/src/components/input/Textarea.vue +68 -0
  942. package/src/components/input/input.css +66 -0
  943. package/src/components/light-direction/LightDirection.vue +64 -0
  944. package/src/components/light-direction/light-direction-element.ts +6 -0
  945. package/src/components/loader/Loader.vue +39 -0
  946. package/src/components/loader/loader.css +132 -0
  947. package/src/components/logo/Logo.vue +128 -0
  948. package/src/components/logo/logo.css +233 -0
  949. package/src/components/maths/Equation.vue +64 -0
  950. package/src/components/maths/EquationReference.vue +31 -0
  951. package/src/components/maths/Maths.vue +32 -0
  952. package/src/components/maths/maths.css +220 -0
  953. package/src/components/maths/render-maths.ts +45 -0
  954. package/src/components/motion/Motion.vue +23 -0
  955. package/src/components/motion/motion.css +19 -0
  956. package/src/components/number/Stepper.vue +138 -0
  957. package/src/components/number/number.css +116 -0
  958. package/src/components/number/stepper-element.ts +6 -0
  959. package/src/components/overflow/Scroll.vue +43 -0
  960. package/src/components/overflow/overflow-enhance.js +45 -0
  961. package/src/components/overflow/overflow.css +397 -0
  962. package/src/components/pagination/Pagination.vue +254 -0
  963. package/src/components/pagination/pagination.css +87 -0
  964. package/src/components/popup/Popup.vue +26 -0
  965. package/src/components/popup/popup.css +53 -0
  966. package/src/components/progress/Progress.vue +47 -0
  967. package/src/components/progress/progress.css +170 -0
  968. package/src/components/quote/Quote.vue +48 -0
  969. package/src/components/quote/quote-enhance.js +70 -0
  970. package/src/components/quote/quote.css +73 -0
  971. package/src/components/range/Range.vue +169 -0
  972. package/src/components/range/range-element.ts +8 -0
  973. package/src/components/range/range.css +315 -0
  974. package/src/components/range-ticks/range-ticks.css +29 -0
  975. package/src/components/search/Search.vue +113 -0
  976. package/src/components/search/search.css +138 -0
  977. package/src/components/segmented/Segmented.vue +46 -0
  978. package/src/components/segmented/SegmentedOption.vue +61 -0
  979. package/src/components/segmented/segmented.css +181 -0
  980. package/src/components/select/Select.vue +181 -0
  981. package/src/components/select/select.css +93 -0
  982. package/src/components/sidebar/Sidebar.vue +79 -0
  983. package/src/components/sidebar/SidebarGroup.vue +29 -0
  984. package/src/components/sidebar/SidebarLink.vue +46 -0
  985. package/src/components/sidebar/sidebar-enhance.js +26 -0
  986. package/src/components/sidebar/sidebar.css +543 -0
  987. package/src/components/spinner/Spinner.vue +36 -0
  988. package/src/components/spinner/spinner.css +147 -0
  989. package/src/components/spinner-dots/Dots.vue +48 -0
  990. package/src/components/spinner-dots/spinner-dots.css +167 -0
  991. package/src/components/sticky-note/StickyNote.vue +104 -0
  992. package/src/components/sticky-note/sticky-note.css +206 -0
  993. package/src/components/switch/Switch.vue +52 -0
  994. package/src/components/switch/switch.css +73 -0
  995. package/src/components/table/Table.vue +142 -0
  996. package/src/components/table/table-enhance.js +58 -0
  997. package/src/components/table/table.css +622 -0
  998. package/src/components/theme-toggle/ThemeToggle.vue +114 -0
  999. package/src/components/theme-toggle/theme-toggle-element.ts +6 -0
  1000. package/src/components/theme-toggle/theme-toggle.css +7 -0
  1001. package/src/components/tiles/Tile.vue +90 -0
  1002. package/src/components/tiles/Tiles.vue +45 -0
  1003. package/src/components/tiles/tiles.css +93 -0
  1004. package/src/components/tooltip/Tooltip.vue +31 -0
  1005. package/src/components/tooltip/tooltip-enhance.js +42 -0
  1006. package/src/components/tooltip/tooltip.css +118 -0
  1007. package/src/components/topbar/BackToTop.vue +18 -0
  1008. package/src/components/topbar/TopBar.vue +25 -0
  1009. package/src/components/topbar/topbar.css +127 -0
  1010. package/src/components/water/Flask.vue +44 -0
  1011. package/src/components/water/Pending.vue +32 -0
  1012. package/src/components/water/water.css +262 -0
  1013. package/src/components/widget-frame/WidgetFrame.vue +31 -0
  1014. package/src/components/widget-frame/widget-frame.css +46 -0
  1015. package/src/enhance.js +13 -0
  1016. package/src/fonts/jetbrains-mono/OFL.txt +93 -0
  1017. package/src/fonts/jetbrains-mono/jetbrains-mono-greek.woff2 +0 -0
  1018. package/src/fonts/jetbrains-mono/jetbrains-mono-italic-greek.woff2 +0 -0
  1019. package/src/fonts/jetbrains-mono/jetbrains-mono-italic-latin.woff2 +0 -0
  1020. package/src/fonts/jetbrains-mono/jetbrains-mono-italic-symbols.woff2 +0 -0
  1021. package/src/fonts/jetbrains-mono/jetbrains-mono-latin.woff2 +0 -0
  1022. package/src/fonts/jetbrains-mono/jetbrains-mono-symbols.woff2 +0 -0
  1023. package/src/fonts/roboto-slab/LICENSE.txt +202 -0
  1024. package/src/fonts/roboto-slab/roboto-slab-greek.woff2 +0 -0
  1025. package/src/fonts/roboto-slab/roboto-slab-latin.woff2 +0 -0
  1026. package/src/fonts/roboto-slab/roboto-slab-symbols.woff2 +0 -0
  1027. package/src/fonts/xmind/OFL.txt +93 -0
  1028. package/src/fonts/xmind/xmind-greek.woff2 +0 -0
  1029. package/src/fonts/xmind/xmind-italic-greek.woff2 +0 -0
  1030. package/src/fonts/xmind/xmind-italic-latin.woff2 +0 -0
  1031. package/src/fonts/xmind/xmind-italic-symbols.woff2 +0 -0
  1032. package/src/fonts/xmind/xmind-latin.woff2 +0 -0
  1033. package/src/fonts/xmind/xmind-symbols.woff2 +0 -0
  1034. package/src/head-scripts/table-init.js +9 -0
  1035. package/src/head-scripts/theme-init.js +10 -0
  1036. package/src/icons/LICENSE-phosphor.txt +21 -0
  1037. package/src/icons/LICENSE-tabler.txt +21 -0
  1038. package/src/icons/icon-set.js +715 -0
  1039. package/src/icons/sources/satellite-duotone.svg +2 -0
  1040. package/src/index.css +64 -0
  1041. package/src/interactive-enhance.js +22 -0
  1042. package/src/interactive.css +239 -0
  1043. package/src/shared/after-slide.js +14 -0
  1044. package/src/shared/astro-attributes.d.ts +58 -0
  1045. package/src/shared/clock-face.js +148 -0
  1046. package/src/shared/component-id.ts +17 -0
  1047. package/src/shared/define-element.ts +51 -0
  1048. package/src/shared/dial-face.js +111 -0
  1049. package/src/shared/dial-geometry.js +96 -0
  1050. package/src/shared/each-element.js +38 -0
  1051. package/src/shared/field-attrs.ts +32 -0
  1052. package/src/shared/hues.ts +111 -0
  1053. package/src/shared/light-angle.js +49 -0
  1054. package/src/shared/live-value.ts +142 -0
  1055. package/src/shared/model-start.ts +23 -0
  1056. package/src/shared/option-group.ts +19 -0
  1057. package/src/shared/option-slot.ts +97 -0
  1058. package/src/shared/slot-html.ts +53 -0
  1059. package/src/shared/split-attrs.ts +64 -0
  1060. package/src/shared/starting-option.ts +14 -0
  1061. package/src/tokens/colors.css +122 -0
  1062. package/src/tokens/fallback.css +67 -0
  1063. package/src/tokens/motion.css +31 -0
  1064. package/src/tokens/palettes.css +36 -0
  1065. package/src/tokens/shadow-color.css +178 -0
  1066. package/src/tokens/shadows.css +127 -0
  1067. package/src/tokens/space.css +20 -0
  1068. package/src/tsconfig.json +19 -0
@@ -0,0 +1,397 @@
1
+ /* Scroll region: content that scrolls sideways when it is too wide, such as a long code line, a
2
+ wide equation or table, or a strip of tabs. Put .rkui-scroll on the element that scrolls, with
3
+ tabindex="0" so the keyboard can scroll it (and, outside a component, a role and a label).
4
+
5
+ <div class="rkui-scroll" tabindex="0" role="region" aria-label="…">
6
+ <table>…</table>
7
+ </div>
8
+
9
+ Three dots in a narrow gutter at each edge show that there is more to see, on that side only
10
+ and never when everything fits. A toon scrollbar shows on hover and keyboard focus; its space
11
+ is kept while it is hidden, so the content doesn't move when it shows.
12
+
13
+ Opt-in modifier: .rkui-scroll--bar keeps the scrollbar visible, with no dots. Use it on an
14
+ element with side borders of its own, which the dots' gutters would replace.
15
+
16
+ The dots follow the scroll position with a scroll-driven animation. Browsers without one get
17
+ them from overflow-enhance.js instead, and show the scrollbar at all times.
18
+
19
+ Two looks for the dots, plain or a pill: set data-rkui-dots="pill" on <html> or on any
20
+ container (or one region, or a component's outer element, where its `dots` prop writes it) and
21
+ its dots sit in a raised yellow pill that slides in from the edge, in wider gutters. Sidebars
22
+ (sidebar.css) take it too. data-rkui-dots="plain" switches back inside it. Browsers without
23
+ @scope show plain dots in the wider gutters.
24
+
25
+ The scrollbar's look and the pill's colours pass down: set any of these on <html>, a container
26
+ or a component to change every scroll region inside it. Each falls back to its default.
27
+ --rkui-scroll-track the track (--rkui-raised)
28
+ --rkui-scroll-track-edge the track's outline (--rkui-line-unfilled)
29
+ --rkui-scroll-thumb the thumb (--rkui-selected)
30
+ --rkui-scroll-thumb-edge the thumb's outline (--rkui-line)
31
+ --rkui-scroll-bar-size the scrollbar's thickness (0.875rem)
32
+ --rkui-pill-fill the pill (--rkui-selected)
33
+ --rkui-pill-edge the pill's outline (--rkui-line)
34
+ --rkui-pill-dot the dots on the pill (--rkui-on-selected)
35
+
36
+ Every other scrollbar on the page (the page's own, a textarea's, a plain <pre>'s) takes the
37
+ colours set on <html>, in the browser's own shape, with no dots and no hiding. */
38
+
39
+ :root {
40
+ --rkui-scroll-bar-size: 0.875rem;
41
+ }
42
+
43
+ /* The colours each scrollbar is drawn in: the settings above, or their defaults. Each scroller
44
+ works out its own, so the defaults follow a palette container's colours, and one that hides
45
+ its scrollbar (below) doesn't hide a nested one's. A sidebar's scroller (sidebar.css) shares
46
+ the scrollbar, stood on end. */
47
+ :root,
48
+ .rkui-scroll,
49
+ .rkui-sidebar-scroll {
50
+ --rkui-scroll-drawn-track: var(--rkui-scroll-track, var(--rkui-raised));
51
+ --rkui-scroll-drawn-track-edge: var(--rkui-scroll-track-edge, var(--rkui-line-unfilled));
52
+ --rkui-scroll-drawn-thumb: var(--rkui-scroll-thumb, var(--rkui-selected));
53
+ --rkui-scroll-drawn-thumb-edge: var(--rkui-scroll-thumb-edge, var(--rkui-line));
54
+ }
55
+
56
+ .rkui-scroll {
57
+ overflow-x: auto;
58
+ }
59
+
60
+ .rkui-scroll:focus-visible {
61
+ outline: var(--rkui-focus-width) solid var(--rkui-focus);
62
+ outline-offset: var(--rkui-outline-width);
63
+ box-shadow: 0 0 0 var(--rkui-outline-width) var(--rkui-line-unfilled);
64
+ }
65
+
66
+ /* The scrollbar: a pill track with an outlined thumb, like the range slider. A styled WebKit
67
+ scrollbar is always drawn, even where the system hides scrollbars until you scroll (macOS).
68
+ Firefox can't style the parts, so it gets the colours only. The track stops short of the ends
69
+ along its own axis. */
70
+ :is(.rkui-scroll, .rkui-sidebar-scroll)::-webkit-scrollbar {
71
+ width: var(--rkui-scroll-bar-size);
72
+ height: var(--rkui-scroll-bar-size);
73
+ }
74
+
75
+ :is(.rkui-scroll, .rkui-sidebar-scroll)::-webkit-scrollbar-track {
76
+ border: var(--rkui-outline-width) solid var(--rkui-scroll-drawn-track-edge);
77
+ border-radius: var(--rkui-radius-pill);
78
+ background: var(--rkui-scroll-drawn-track);
79
+ }
80
+
81
+ .rkui-scroll::-webkit-scrollbar-track {
82
+ margin-inline: var(--rkui-radius);
83
+ }
84
+
85
+ .rkui-sidebar-scroll::-webkit-scrollbar-track {
86
+ margin-block: var(--rkui-radius);
87
+ }
88
+
89
+ :is(.rkui-scroll, .rkui-sidebar-scroll)::-webkit-scrollbar-thumb {
90
+ border: var(--rkui-outline-width) solid var(--rkui-scroll-drawn-thumb-edge);
91
+ border-radius: var(--rkui-radius-pill);
92
+ background: var(--rkui-scroll-drawn-thumb);
93
+ }
94
+
95
+ /* Every other scrollbar: the colours only. */
96
+ :root {
97
+ scrollbar-color: var(--rkui-scroll-drawn-thumb) var(--rkui-scroll-drawn-track);
98
+ }
99
+
100
+ /* Chrome draws no styled parts where scrollbar-color is set, so a scroller that has them drops the
101
+ page's colours. Firefox ESR 153 matches this selector without styling the parts, so its
102
+ scrollers' scrollbars stay grey. */
103
+ @supports selector(::-webkit-scrollbar) {
104
+ .rkui-scroll,
105
+ .rkui-sidebar-scroll {
106
+ scrollbar-color: auto;
107
+ }
108
+ }
109
+
110
+ @supports not selector(::-webkit-scrollbar) {
111
+ .rkui-scroll,
112
+ .rkui-sidebar-scroll {
113
+ scrollbar-color: var(--rkui-scroll-drawn-thumb) var(--rkui-scroll-drawn-track);
114
+ }
115
+ }
116
+
117
+ /* The width of the dots' gutters, and 0 where there are none. Not inherited, so a region nested
118
+ in another doesn't take its gutters. */
119
+ @property --rkui-scroll-gutter {
120
+ syntax: '<length>';
121
+ inherits: false;
122
+ initial-value: 0px;
123
+ }
124
+
125
+ /* The dots, in the text colour (cream in dark mode, whatever the highlight). The gutters are
126
+ borders because content is clipped inside the border, so it never runs under the dots. Each dot
127
+ is a background layer; a scroll container's background stays put while its content scrolls. */
128
+ .rkui-scroll:not(.rkui-scroll--bar) {
129
+ --rkui-scroll-gutter: var(--rkui-dots-gutter);
130
+ --rkui-dot-size: 0.3rem;
131
+ --rkui-dot-spacing: 0.55rem;
132
+ --rkui-dot-inset: calc((var(--rkui-scroll-gutter) - var(--rkui-dot-size)) / 2);
133
+ --rkui-dot-start: radial-gradient(
134
+ closest-side,
135
+ color-mix(in srgb, var(--rkui-fg) calc(var(--rkui-scroll-more-start) * 100%), transparent) 90%,
136
+ transparent
137
+ );
138
+ --rkui-dot-end: radial-gradient(
139
+ closest-side,
140
+ color-mix(in srgb, var(--rkui-fg) calc(var(--rkui-scroll-more-end) * 100%), transparent) 90%,
141
+ transparent
142
+ );
143
+
144
+ border-inline: var(--rkui-scroll-gutter) solid transparent;
145
+ background-image:
146
+ var(--rkui-dot-start), var(--rkui-dot-start), var(--rkui-dot-start), var(--rkui-dot-end),
147
+ var(--rkui-dot-end), var(--rkui-dot-end);
148
+ background-position:
149
+ left var(--rkui-dot-inset) top calc(50% - var(--rkui-dot-spacing)),
150
+ left var(--rkui-dot-inset) center,
151
+ left var(--rkui-dot-inset) top calc(50% + var(--rkui-dot-spacing)),
152
+ right var(--rkui-dot-inset) top calc(50% - var(--rkui-dot-spacing)),
153
+ right var(--rkui-dot-inset) center,
154
+ right var(--rkui-dot-inset) top calc(50% + var(--rkui-dot-spacing));
155
+ background-size: var(--rkui-dot-size) var(--rkui-dot-size);
156
+ background-repeat: no-repeat;
157
+ background-origin: border-box;
158
+ }
159
+
160
+ /* The pill look's colours, which the card sidebar's hints share (sidebar.css). */
161
+ :root {
162
+ --rkui-pill-fill: var(--rkui-selected);
163
+ --rkui-pill-edge: var(--rkui-line);
164
+ --rkui-pill-dot: var(--rkui-on-selected);
165
+ }
166
+
167
+ /* A scroll region draws its pills' shadows itself, in this colour: the region's own shadow colour,
168
+ which the colour shadow turns to the pill's shade (shadow-color.css). */
169
+ .rkui-scroll {
170
+ --rkui-pill-shadow-color: var(--rkui-shadow-color);
171
+ }
172
+
173
+ /* The pill's size across and along it (shorter in a scroll region, to sit on a strip of tabs
174
+ clear of the sheet), and the width of a scroll region's dot gutters in each look. Inherited,
175
+ so the nearest data-rkui-dots wins; a code block's caption and Folder's tabs line up with them. */
176
+ :root {
177
+ --rkui-pill-width: var(--rkui-space-4);
178
+ --rkui-pill-length: var(--rkui-space-7);
179
+ }
180
+
181
+ /* Never shorter than this: each cap's inner half, and its shadow's, must stay under the middle. */
182
+ .rkui-scroll {
183
+ --rkui-pill-length: 1.75rem;
184
+ }
185
+
186
+ :root,
187
+ [data-rkui-dots='plain'] {
188
+ --rkui-dots-gutter: 0.75rem;
189
+ }
190
+
191
+ [data-rkui-dots='pill'] {
192
+ --rkui-dots-gutter: calc(
193
+ var(--rkui-pill-width) + 2 * (var(--rkui-shadow-offset) + var(--rkui-outline-width))
194
+ );
195
+ }
196
+
197
+ /* The pill: each gutter holds the pill (two round caps under a straight middle, all outlined) on
198
+ its slab shadow (the same three shapes, offset, and widened by the shadow's edge), with
199
+ smaller dots on top. The pill and its shadow are centred together, so the shadow stays clear
200
+ of whatever is below. Each side's pill slides out past its edge as that side's
201
+ --rkui-scroll-more falls to 0. Forced colours keep their system-colour edges. */
202
+ @scope ([data-rkui-dots='pill']) to ([data-rkui-dots='plain']) {
203
+ @media (forced-colors: none) {
204
+ :scope.rkui-scroll:not(.rkui-scroll--bar),
205
+ .rkui-scroll:not(.rkui-scroll--bar) {
206
+ --rkui-dot-size: 0.25rem;
207
+ --rkui-dot-spacing: 0.4rem;
208
+ --rkui-pill-line: var(--rkui-outline-width);
209
+ --rkui-pill-shadow-width: calc(var(--rkui-pill-width) + 2 * var(--rkui-pill-line));
210
+ /* How far apart the caps' centres are */
211
+ --rkui-pill-mid: calc(var(--rkui-pill-length) - var(--rkui-pill-width));
212
+ /* The straight middle's length: a pixel short, so rounding never pokes it past the caps */
213
+ --rkui-pill-straight: calc(var(--rkui-pill-mid) - 1px);
214
+ /* How far in from its edge each pill sits when it shows */
215
+ --rkui-pill-inset: calc((var(--rkui-scroll-gutter) - var(--rkui-pill-width)) / 2);
216
+ --rkui-pill-start: calc(
217
+ var(--rkui-pill-inset) - (1 - var(--rkui-scroll-more-start)) * var(--rkui-scroll-gutter)
218
+ );
219
+ --rkui-pill-end: calc(
220
+ var(--rkui-pill-inset) - (1 - var(--rkui-scroll-more-end)) * var(--rkui-scroll-gutter)
221
+ );
222
+ --rkui-pill-dot-inset: calc((var(--rkui-pill-width) - var(--rkui-dot-size)) / 2);
223
+ --rkui-pill-dx: var(--rkui-shadow-offset-x);
224
+ --rkui-pill-dy: var(--rkui-shadow-offset-y);
225
+ /* The pill's centre along the gutter, and its caps' centres */
226
+ --rkui-pill-y: calc(50% - var(--rkui-pill-dy) / 2);
227
+ --rkui-pill-cap-up: calc(var(--rkui-pill-y) - var(--rkui-pill-mid) / 2);
228
+ --rkui-pill-cap-down: calc(var(--rkui-pill-y) + var(--rkui-pill-mid) / 2);
229
+
230
+ --rkui-pill-dots: radial-gradient(closest-side, var(--rkui-pill-dot) 90%, transparent);
231
+ --rkui-pill-cap: radial-gradient(
232
+ closest-side,
233
+ var(--rkui-pill-fill) calc(100% - var(--rkui-pill-line)),
234
+ var(--rkui-pill-edge) calc(100% - var(--rkui-pill-line)) calc(100% - 0.5px),
235
+ transparent
236
+ );
237
+ --rkui-pill-middle: linear-gradient(
238
+ to right,
239
+ var(--rkui-pill-edge) var(--rkui-pill-line),
240
+ var(--rkui-pill-fill) var(--rkui-pill-line) calc(100% - var(--rkui-pill-line)),
241
+ var(--rkui-pill-edge) calc(100% - var(--rkui-pill-line))
242
+ );
243
+ --rkui-pill-shadow-cap: radial-gradient(
244
+ closest-side,
245
+ var(--rkui-pill-shadow-color) calc(100% - var(--rkui-pill-line)),
246
+ var(--rkui-shadow-edge) calc(100% - var(--rkui-pill-line)) calc(100% - 0.5px),
247
+ transparent
248
+ );
249
+ --rkui-pill-shadow-middle: linear-gradient(
250
+ to right,
251
+ var(--rkui-shadow-edge) var(--rkui-pill-line),
252
+ var(--rkui-pill-shadow-color) var(--rkui-pill-line) calc(100% - var(--rkui-pill-line)),
253
+ var(--rkui-shadow-edge) calc(100% - var(--rkui-pill-line))
254
+ );
255
+
256
+ /* For each side: three dots, the pill's middle and caps, the shadow's middle and caps. */
257
+ background-image:
258
+ var(--rkui-pill-dots), var(--rkui-pill-dots), var(--rkui-pill-dots),
259
+ var(--rkui-pill-middle), var(--rkui-pill-cap), var(--rkui-pill-cap),
260
+ var(--rkui-pill-shadow-middle), var(--rkui-pill-shadow-cap), var(--rkui-pill-shadow-cap),
261
+ var(--rkui-pill-dots), var(--rkui-pill-dots), var(--rkui-pill-dots),
262
+ var(--rkui-pill-middle), var(--rkui-pill-cap), var(--rkui-pill-cap),
263
+ var(--rkui-pill-shadow-middle), var(--rkui-pill-shadow-cap), var(--rkui-pill-shadow-cap);
264
+ background-position:
265
+ left calc(var(--rkui-pill-start) + var(--rkui-pill-dot-inset)) top
266
+ calc(var(--rkui-pill-y) - var(--rkui-dot-spacing)),
267
+ left calc(var(--rkui-pill-start) + var(--rkui-pill-dot-inset)) top var(--rkui-pill-y),
268
+ left calc(var(--rkui-pill-start) + var(--rkui-pill-dot-inset)) top
269
+ calc(var(--rkui-pill-y) + var(--rkui-dot-spacing)),
270
+ left var(--rkui-pill-start) top var(--rkui-pill-y),
271
+ left var(--rkui-pill-start) top var(--rkui-pill-cap-up),
272
+ left var(--rkui-pill-start) top var(--rkui-pill-cap-down),
273
+ left calc(var(--rkui-pill-start) - var(--rkui-pill-line) + var(--rkui-pill-dx)) top
274
+ calc(var(--rkui-pill-y) + var(--rkui-pill-dy)),
275
+ left calc(var(--rkui-pill-start) - var(--rkui-pill-line) + var(--rkui-pill-dx)) top
276
+ calc(var(--rkui-pill-cap-up) + var(--rkui-pill-dy)),
277
+ left calc(var(--rkui-pill-start) - var(--rkui-pill-line) + var(--rkui-pill-dx)) top
278
+ calc(var(--rkui-pill-cap-down) + var(--rkui-pill-dy)),
279
+ right calc(var(--rkui-pill-end) + var(--rkui-pill-dot-inset)) top
280
+ calc(var(--rkui-pill-y) - var(--rkui-dot-spacing)),
281
+ right calc(var(--rkui-pill-end) + var(--rkui-pill-dot-inset)) top var(--rkui-pill-y),
282
+ right calc(var(--rkui-pill-end) + var(--rkui-pill-dot-inset)) top
283
+ calc(var(--rkui-pill-y) + var(--rkui-dot-spacing)),
284
+ right var(--rkui-pill-end) top var(--rkui-pill-y),
285
+ right var(--rkui-pill-end) top var(--rkui-pill-cap-up),
286
+ right var(--rkui-pill-end) top var(--rkui-pill-cap-down),
287
+ right calc(var(--rkui-pill-end) - var(--rkui-pill-line) - var(--rkui-pill-dx)) top
288
+ calc(var(--rkui-pill-y) + var(--rkui-pill-dy)),
289
+ right calc(var(--rkui-pill-end) - var(--rkui-pill-line) - var(--rkui-pill-dx)) top
290
+ calc(var(--rkui-pill-cap-up) + var(--rkui-pill-dy)),
291
+ right calc(var(--rkui-pill-end) - var(--rkui-pill-line) - var(--rkui-pill-dx)) top
292
+ calc(var(--rkui-pill-cap-down) + var(--rkui-pill-dy));
293
+ background-size:
294
+ var(--rkui-dot-size) var(--rkui-dot-size),
295
+ var(--rkui-dot-size) var(--rkui-dot-size),
296
+ var(--rkui-dot-size) var(--rkui-dot-size),
297
+ var(--rkui-pill-width) var(--rkui-pill-straight),
298
+ var(--rkui-pill-width) var(--rkui-pill-width),
299
+ var(--rkui-pill-width) var(--rkui-pill-width),
300
+ var(--rkui-pill-shadow-width) var(--rkui-pill-straight),
301
+ var(--rkui-pill-shadow-width) var(--rkui-pill-shadow-width),
302
+ var(--rkui-pill-shadow-width) var(--rkui-pill-shadow-width),
303
+ var(--rkui-dot-size) var(--rkui-dot-size),
304
+ var(--rkui-dot-size) var(--rkui-dot-size),
305
+ var(--rkui-dot-size) var(--rkui-dot-size),
306
+ var(--rkui-pill-width) var(--rkui-pill-straight),
307
+ var(--rkui-pill-width) var(--rkui-pill-width),
308
+ var(--rkui-pill-width) var(--rkui-pill-width),
309
+ var(--rkui-pill-shadow-width) var(--rkui-pill-straight),
310
+ var(--rkui-pill-shadow-width) var(--rkui-pill-shadow-width),
311
+ var(--rkui-pill-shadow-width) var(--rkui-pill-shadow-width);
312
+ }
313
+ }
314
+ }
315
+
316
+ /* 1 while there is more to scroll to on that side, and 0 at that end. Registered so that the
317
+ scroll-driven animation can fade them. */
318
+ @property --rkui-scroll-more-start {
319
+ syntax: '<number>';
320
+ inherits: false;
321
+ initial-value: 0;
322
+ }
323
+
324
+ @property --rkui-scroll-more-end {
325
+ syntax: '<number>';
326
+ inherits: false;
327
+ initial-value: 0;
328
+ }
329
+
330
+ @keyframes rkui-scroll-more {
331
+ from {
332
+ --rkui-scroll-more-start: 0;
333
+ --rkui-scroll-more-end: 1;
334
+ }
335
+
336
+ 5%,
337
+ 95% {
338
+ --rkui-scroll-more-start: 1;
339
+ --rkui-scroll-more-end: 1;
340
+ }
341
+
342
+ to {
343
+ --rkui-scroll-more-start: 1;
344
+ --rkui-scroll-more-end: 0;
345
+ }
346
+ }
347
+
348
+ /* Forced colours drop gradients, so the dots become a system-colour edge instead. */
349
+ @keyframes rkui-scroll-more-forced {
350
+ from {
351
+ border-inline-start-color: Canvas;
352
+ border-inline-end-color: CanvasText;
353
+ }
354
+
355
+ 5%,
356
+ 95% {
357
+ border-inline-color: CanvasText;
358
+ }
359
+
360
+ to {
361
+ border-inline-start-color: CanvasText;
362
+ border-inline-end-color: Canvas;
363
+ }
364
+ }
365
+
366
+ /* A scroll timeline is inactive when nothing overflows, so the animation has no effect and both
367
+ properties keep their initial 0. Longhands only: the minifier folds a shorthand and
368
+ animation-timeline into one shorthand, which some browsers reject whole. */
369
+ @supports (animation-timeline: scroll()) {
370
+ .rkui-scroll {
371
+ animation-name: rkui-scroll-more;
372
+ animation-duration: auto;
373
+ animation-timing-function: linear;
374
+ animation-fill-mode: both;
375
+ animation-timeline: scroll(self inline);
376
+ }
377
+
378
+ /* The dots show that there is more, so the scrollbar waits for hover or keyboard focus. Forced
379
+ colours keep it visible. */
380
+ @media (forced-colors: none) {
381
+ .rkui-scroll:not(.rkui-scroll--bar, :hover, :focus-visible, :has(:focus-visible)) {
382
+ --rkui-scroll-drawn-track: transparent;
383
+ --rkui-scroll-drawn-track-edge: transparent;
384
+ --rkui-scroll-drawn-thumb: transparent;
385
+ --rkui-scroll-drawn-thumb-edge: transparent;
386
+ }
387
+ }
388
+
389
+ @media (forced-colors: active) {
390
+ .rkui-scroll:not(.rkui-scroll--bar) {
391
+ --rkui-scroll-gutter: var(--rkui-space-1);
392
+
393
+ border-inline-color: Canvas;
394
+ animation-name: rkui-scroll-more, rkui-scroll-more-forced;
395
+ }
396
+ }
397
+ }
@@ -0,0 +1,254 @@
1
+ <!--
2
+ Pagination around the page's content, with no JavaScript: a link to every page, with ‹ › links
3
+ to the previous and next pages (`steps`). The current page is marked `aria-current="page"`. The
4
+ slot is the page's content. `class`, `style` and other attributes go on the outer div.
5
+
6
+ As folder tabs (the default) the links stand on a sheet holding the content, on any side of it
7
+ (`placement`); on the left and right they stack down its edge, upright. As tiles, round page
8
+ tiles sit between Previous and Next buttons, above or below the content.
9
+
10
+ The links never wrap. With `overflow="collapse"` (the default), folder-enhance.js shows as many as
11
+ fit: the first and last pages, the current one and its neighbours, and more pages around it as
12
+ there is room, with "…" for the rest. On a narrow screen the links go to their small size, then
13
+ leave out the first and last pages, showing ‹ current › and as many pages around it as fit, and
14
+ scroll only if even ‹ current › doesn't fit. Without the script they scroll. With
15
+ `overflow="scroll"` the strip links the pages near the current one and scrolls; folder-enhance.js
16
+ puts a thin bar on its outer side while it doesn't fit.
17
+
18
+ @example
19
+ <Pagination :current="2" :total="9" :href="(page) => `/posts/${page}/`">
20
+ <p>Posts 11 to 20.</p>
21
+ </Pagination>
22
+ -->
23
+ <script setup lang="ts">
24
+ import { computed } from 'vue'
25
+ import CaretLeftIcon from '@oneonefour/rkui/icons/caret-left.vue'
26
+ import CaretRightIcon from '@oneonefour/rkui/icons/caret-right.vue'
27
+ import Button from '../button/Button.vue'
28
+
29
+ interface Props {
30
+ /** The current page, counting from 1. */
31
+ current: number
32
+ /** How many pages there are. */
33
+ total: number
34
+ /** Where a page's link goes. */
35
+ href: (page: number) => string
36
+ /** The nav's accessible name; "Pagination" when left out. */
37
+ label?: string
38
+ /** A sheet in the selected tint, for folder tabs; the raised surface when left out. */
39
+ tinted?: boolean
40
+ /**
41
+ * 'folder' (tabs on a sheet) or 'tiles' (tiles between buttons); 'folder' when left out.
42
+ * Open, see DECISIONS ("Pagination").
43
+ */
44
+ variant?: 'folder' | 'tiles'
45
+ /**
46
+ * The side of the content the links go on; 'top' when left out. Tiles go only on the top or the
47
+ * bottom.
48
+ */
49
+ placement?: 'top' | 'bottom' | 'left' | 'right'
50
+ /**
51
+ * When the links don't fit: 'collapse' (as many pages as fit) or 'scroll' (the pages near the
52
+ * current one, in a strip that scrolls); 'collapse' when left out.
53
+ */
54
+ overflow?: 'collapse' | 'scroll'
55
+ /** The ‹ › links to the previous and next pages; shown when left out. */
56
+ steps?: boolean
57
+ /**
58
+ * The look of the dots at the ends of a strip of links that scrolls (on the top or the bottom),
59
+ * written as `data-rkui-dots` on the outer div: 'plain', or 'pill' for dots in a raised pill; the
60
+ * page's setting when left out.
61
+ */
62
+ dots?: 'plain' | 'pill'
63
+ }
64
+
65
+ const {
66
+ current,
67
+ total,
68
+ href,
69
+ label = 'Pagination',
70
+ tinted,
71
+ variant = 'folder',
72
+ placement = 'top',
73
+ overflow = 'collapse',
74
+ steps = true,
75
+ dots,
76
+ } = defineProps<Props>()
77
+
78
+ if (variant === 'tiles' && (placement === 'left' || placement === 'right')) {
79
+ throw new Error(`Pagination: tiles go on the top or the bottom, not the ${placement}.`)
80
+ }
81
+
82
+ /** How many pages either side of the current one a scrolling strip links. */
83
+ const SCROLL_REACH = 3
84
+
85
+ /**
86
+ * One entry in the strip: a page, with whether a "…" may show beside it, or a gap of left-out
87
+ * pages.
88
+ */
89
+ interface Entry {
90
+ page: number | null
91
+ gapBefore?: boolean
92
+ gapAfter?: boolean
93
+ }
94
+
95
+ /**
96
+ * Every page when collapsing, and the first page may show a "…" after it, and the last one before
97
+ * it, for the pages folder-enhance.js hides. When scrolling, the first and last pages and those
98
+ * within SCROLL_REACH of the current one, with a gap (page null) where pages are left out, never
99
+ * for a single page.
100
+ */
101
+ const entries = computed(() => {
102
+ const near = (page: number) => overflow === 'collapse' || Math.abs(page - current) <= SCROLL_REACH
103
+ const entries: Entry[] = []
104
+ for (let page = 1; page <= total; page++) {
105
+ const lone = (page === 2 && near(3)) || (page === total - 1 && near(total - 2))
106
+ if (page === 1 || page === total || near(page) || lone) {
107
+ entries.push({ page })
108
+ } else if (entries.at(-1)?.page !== null) {
109
+ entries.push({ page: null })
110
+ }
111
+ }
112
+ if (overflow === 'collapse' && entries.length > 2) {
113
+ entries[0].gapAfter = true
114
+ ;(entries.at(-1) as Entry).gapBefore = true
115
+ }
116
+ return entries
117
+ })
118
+
119
+ /** The page before and after the current one, or null at either end. */
120
+ const previous = computed(() => (current > 1 ? current - 1 : null))
121
+ const next = computed(() => (current < total ? current + 1 : null))
122
+
123
+ /** Below and right of the content, the links come after it, as they are read. */
124
+ const parts = computed(() =>
125
+ placement === 'bottom' || placement === 'right' ? ['content', 'strip'] : ['strip', 'content'],
126
+ )
127
+ </script>
128
+
129
+ <template>
130
+ <div
131
+ v-if="variant === 'folder'"
132
+ :class="[
133
+ 'rkui-folder',
134
+ `rkui-folder--${overflow}`,
135
+ { [`rkui-folder--${placement}`]: placement !== 'top', 'rkui-folder--tinted': tinted },
136
+ ]"
137
+ :data-rkui-dots="dots"
138
+ >
139
+ <template v-for="part in parts" :key="part">
140
+ <nav v-if="part === 'strip'" class="rkui-folder-strip" :aria-label="label">
141
+ <div
142
+ class="rkui-folder-scrollbar rkui-scroll rkui-scroll--bar"
143
+ aria-hidden="true"
144
+ tabindex="-1"
145
+ hidden
146
+ >
147
+ <div></div>
148
+ </div>
149
+ <ol
150
+ :class="[
151
+ 'rkui-folder-tabs',
152
+ 'rkui-scroll',
153
+ { 'rkui-scroll--bar': placement === 'left' || placement === 'right' },
154
+ ]"
155
+ >
156
+ <li v-if="steps" class="rkui-folder-step rkui-folder-step--previous">
157
+ <a
158
+ :class="['rkui-folder-tab', { 'rkui-folder-tab--off': !previous }]"
159
+ :href="previous ? href(previous) : undefined"
160
+ :rel="previous ? 'prev' : undefined"
161
+ :aria-hidden="previous ? undefined : 'true'"
162
+ >
163
+ <CaretLeftIcon class="rkui-icon rkui-icon--small" />
164
+ <span v-if="previous" class="rkui-visually-hidden">Previous page</span>
165
+ </a>
166
+ </li>
167
+ <template v-for="(entry, i) in entries" :key="entry.page ?? `gap-${i}`">
168
+ <li v-if="entry.page === null">…</li>
169
+ <li v-else class="rkui-strip-item">
170
+ <span v-if="entry.gapBefore" class="rkui-strip-gap">…</span>
171
+ <a
172
+ class="rkui-folder-tab"
173
+ :href="href(entry.page)"
174
+ :aria-current="entry.page === current ? 'page' : undefined"
175
+ >
176
+ <span class="rkui-pagination-number">{{ entry.page }}</span>
177
+ </a>
178
+ <span v-if="entry.gapAfter" class="rkui-strip-gap">…</span>
179
+ </li>
180
+ </template>
181
+ <li v-if="steps" class="rkui-folder-step rkui-folder-step--next">
182
+ <a
183
+ :class="['rkui-folder-tab', { 'rkui-folder-tab--off': !next }]"
184
+ :href="next ? href(next) : undefined"
185
+ :rel="next ? 'next' : undefined"
186
+ :aria-hidden="next ? undefined : 'true'"
187
+ >
188
+ <CaretRightIcon class="rkui-icon rkui-icon--small" />
189
+ <span v-if="next" class="rkui-visually-hidden">Next page</span>
190
+ </a>
191
+ </li>
192
+ </ol>
193
+ </nav>
194
+ <div v-else class="rkui-folder-sheet">
195
+ <slot />
196
+ </div>
197
+ </template>
198
+ </div>
199
+ <div
200
+ v-else
201
+ :class="[
202
+ 'rkui-pagination-tiles',
203
+ `rkui-pagination-tiles--${overflow}`,
204
+ { 'rkui-pagination-tiles--bottom': placement === 'bottom' },
205
+ ]"
206
+ :data-rkui-dots="dots"
207
+ >
208
+ <template v-for="part in parts" :key="part">
209
+ <nav v-if="part === 'strip'" class="rkui-pagination" :aria-label="label">
210
+ <Button
211
+ v-if="steps"
212
+ small
213
+ :href="previous ? href(previous) : undefined"
214
+ :disabled="!previous"
215
+ :rel="previous ? 'prev' : undefined"
216
+ >
217
+ <CaretLeftIcon class="rkui-icon rkui-icon--small" />
218
+ <span class="rkui-pagination-word">Previous</span>
219
+ </Button>
220
+ <div class="rkui-pagination-pages">
221
+ <ol class="rkui-tiles rkui-tiles--compact rkui-scroll">
222
+ <template v-for="(entry, i) in entries" :key="entry.page ?? `gap-${i}`">
223
+ <li v-if="entry.page === null">…</li>
224
+ <li v-else class="rkui-strip-item">
225
+ <span v-if="entry.gapBefore" class="rkui-strip-gap">…</span>
226
+ <a
227
+ class="rkui-tile"
228
+ :href="href(entry.page)"
229
+ :aria-current="entry.page === current ? 'page' : undefined"
230
+ >
231
+ {{ entry.page }}
232
+ </a>
233
+ <span v-if="entry.gapAfter" class="rkui-strip-gap">…</span>
234
+ </li>
235
+ </template>
236
+ </ol>
237
+ </div>
238
+ <Button
239
+ v-if="steps"
240
+ small
241
+ :href="next ? href(next) : undefined"
242
+ :disabled="!next"
243
+ :rel="next ? 'next' : undefined"
244
+ >
245
+ <span class="rkui-pagination-word">Next</span>
246
+ <CaretRightIcon class="rkui-icon rkui-icon--small" />
247
+ </Button>
248
+ </nav>
249
+ <div v-else>
250
+ <slot />
251
+ </div>
252
+ </template>
253
+ </div>
254
+ </template>