plutonium 0.6.2 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (845) hide show
  1. checksums.yaml +4 -4
  2. data/.node-version +1 -0
  3. data/README copy.md +1 -2
  4. data/README.md +19 -5
  5. data/app/assets/css/plutonium.css +3 -0
  6. data/app/assets/icons/flags/ghana.svg +49 -0
  7. data/app/assets/icons/outline/address-book.svg +3 -0
  8. data/app/assets/icons/outline/adjustments-horizontal.svg +3 -0
  9. data/app/assets/icons/outline/adjustments-vertical.svg +3 -0
  10. data/app/assets/icons/outline/align-center.svg +3 -0
  11. data/app/assets/icons/outline/angle-down.svg +3 -0
  12. data/app/assets/icons/outline/angle-left.svg +3 -0
  13. data/app/assets/icons/outline/angle-right.svg +3 -0
  14. data/app/assets/icons/outline/angle-up.svg +3 -0
  15. data/app/assets/icons/outline/annotation.svg +3 -0
  16. data/app/assets/icons/outline/archive-arrow-down.svg +3 -0
  17. data/app/assets/icons/outline/archive.svg +3 -0
  18. data/app/assets/icons/outline/arrow-down-to-bracket.svg +3 -0
  19. data/app/assets/icons/outline/arrow-down.svg +3 -0
  20. data/app/assets/icons/outline/arrow-left-to-bracket.svg +3 -0
  21. data/app/assets/icons/outline/arrow-left.svg +3 -0
  22. data/app/assets/icons/outline/arrow-right-alt.svg +3 -0
  23. data/app/assets/icons/outline/arrow-right-to-bracket.svg +3 -0
  24. data/app/assets/icons/outline/arrow-right.svg +3 -0
  25. data/app/assets/icons/outline/arrow-sort-letters.svg +3 -0
  26. data/app/assets/icons/outline/arrow-up-down.svg +3 -0
  27. data/app/assets/icons/outline/arrow-up-from-bracket.svg +3 -0
  28. data/app/assets/icons/outline/arrow-up-right-down-left.svg +3 -0
  29. data/app/assets/icons/outline/arrow-up-right-from-square.svg +3 -0
  30. data/app/assets/icons/outline/arrow-up.svg +3 -0
  31. data/app/assets/icons/outline/arrows-repeat-count.svg +3 -0
  32. data/app/assets/icons/outline/arrows-repeat.svg +3 -0
  33. data/app/assets/icons/outline/atom.svg +3 -0
  34. data/app/assets/icons/outline/backward-step.svg +3 -0
  35. data/app/assets/icons/outline/badge-check.svg +3 -0
  36. data/app/assets/icons/outline/bars-from-left.svg +3 -0
  37. data/app/assets/icons/outline/bars.svg +3 -0
  38. data/app/assets/icons/outline/bell-active-alt.svg +3 -0
  39. data/app/assets/icons/outline/bell-active.svg +3 -0
  40. data/app/assets/icons/outline/bell-ring.svg +3 -0
  41. data/app/assets/icons/outline/bell.svg +3 -0
  42. data/app/assets/icons/outline/blender-phone.svg +3 -0
  43. data/app/assets/icons/outline/book-open.svg +3 -0
  44. data/app/assets/icons/outline/book.svg +3 -0
  45. data/app/assets/icons/outline/bookmark.svg +3 -0
  46. data/app/assets/icons/outline/brain.svg +3 -0
  47. data/app/assets/icons/outline/briefcase.svg +3 -0
  48. data/app/assets/icons/outline/bug.svg +3 -0
  49. data/app/assets/icons/outline/building.svg +3 -0
  50. data/app/assets/icons/outline/bullhorn.svg +3 -0
  51. data/app/assets/icons/outline/calendar-edit.svg +3 -0
  52. data/app/assets/icons/outline/calendar-month.svg +3 -0
  53. data/app/assets/icons/outline/calendar-plus.svg +3 -0
  54. data/app/assets/icons/outline/calendar-week.svg +3 -0
  55. data/app/assets/icons/outline/camera-photo.svg +4 -0
  56. data/app/assets/icons/outline/caption.svg +3 -0
  57. data/app/assets/icons/outline/caret-down.svg +3 -0
  58. data/app/assets/icons/outline/caret-left.svg +3 -0
  59. data/app/assets/icons/outline/caret-right.svg +3 -0
  60. data/app/assets/icons/outline/caret-sort.svg +3 -0
  61. data/app/assets/icons/outline/caret-up.svg +3 -0
  62. data/app/assets/icons/outline/cart-plus-alt.svg +3 -0
  63. data/app/assets/icons/outline/cart-plus.svg +3 -0
  64. data/app/assets/icons/outline/cart.svg +3 -0
  65. data/app/assets/icons/outline/cash.svg +3 -0
  66. data/app/assets/icons/outline/chart-line-down.svg +3 -0
  67. data/app/assets/icons/outline/chart-line-up.svg +3 -0
  68. data/app/assets/icons/outline/chart-mixed-dollar.svg +3 -0
  69. data/app/assets/icons/outline/chart-mixed.svg +3 -0
  70. data/app/assets/icons/outline/chart-pie.svg +4 -0
  71. data/app/assets/icons/outline/chart.svg +3 -0
  72. data/app/assets/icons/outline/check-circle.svg +3 -0
  73. data/app/assets/icons/outline/check-plus-circle.svg +3 -0
  74. data/app/assets/icons/outline/check.svg +3 -0
  75. data/app/assets/icons/outline/chevron-double-down.svg +3 -0
  76. data/app/assets/icons/outline/chevron-double-left.svg +3 -0
  77. data/app/assets/icons/outline/chevron-double-right.svg +3 -0
  78. data/app/assets/icons/outline/chevron-double-up.svg +3 -0
  79. data/app/assets/icons/outline/chevron-down.svg +3 -0
  80. data/app/assets/icons/outline/chevron-left.svg +3 -0
  81. data/app/assets/icons/outline/chevron-right.svg +3 -0
  82. data/app/assets/icons/outline/chevron-sort.svg +3 -0
  83. data/app/assets/icons/outline/chevron-up.svg +3 -0
  84. data/app/assets/icons/outline/circle-pause.svg +3 -0
  85. data/app/assets/icons/outline/circle-plus.svg +3 -0
  86. data/app/assets/icons/outline/clapperboard-play.svg +3 -0
  87. data/app/assets/icons/outline/clipboard-check.svg +3 -0
  88. data/app/assets/icons/outline/clipboard-list.svg +3 -0
  89. data/app/assets/icons/outline/clipboard.svg +3 -0
  90. data/app/assets/icons/outline/clock.svg +3 -0
  91. data/app/assets/icons/outline/close-circle.svg +3 -0
  92. data/app/assets/icons/outline/close.svg +3 -0
  93. data/app/assets/icons/outline/cloud-arrow-up.svg +3 -0
  94. data/app/assets/icons/outline/code-branch.svg +3 -0
  95. data/app/assets/icons/outline/code-fork.svg +3 -0
  96. data/app/assets/icons/outline/code-merge.svg +3 -0
  97. data/app/assets/icons/outline/code-pull-request.svg +3 -0
  98. data/app/assets/icons/outline/code.svg +3 -0
  99. data/app/assets/icons/outline/cog.svg +4 -0
  100. data/app/assets/icons/outline/column.svg +3 -0
  101. data/app/assets/icons/outline/command.svg +3 -0
  102. data/app/assets/icons/outline/compress.svg +3 -0
  103. data/app/assets/icons/outline/computer-speaker.svg +3 -0
  104. data/app/assets/icons/outline/credit-card.svg +3 -0
  105. data/app/assets/icons/outline/database.svg +3 -0
  106. data/app/assets/icons/outline/desktop-pc.svg +3 -0
  107. data/app/assets/icons/outline/dna.svg +3 -0
  108. data/app/assets/icons/outline/dollar.svg +3 -0
  109. data/app/assets/icons/outline/dots-horizontal.svg +3 -0
  110. data/app/assets/icons/outline/dots-vertical.svg +3 -0
  111. data/app/assets/icons/outline/download.svg +3 -0
  112. data/app/assets/icons/outline/draw-square.svg +3 -0
  113. data/app/assets/icons/outline/edit.svg +3 -0
  114. data/app/assets/icons/outline/envelope-open.svg +3 -0
  115. data/app/assets/icons/outline/envelope.svg +3 -0
  116. data/app/assets/icons/outline/euro.svg +3 -0
  117. data/app/assets/icons/outline/exclamation-circle.svg +3 -0
  118. data/app/assets/icons/outline/expand.svg +3 -0
  119. data/app/assets/icons/outline/eye-slash.svg +3 -0
  120. data/app/assets/icons/outline/eye.svg +4 -0
  121. data/app/assets/icons/outline/face-explode.svg +4 -0
  122. data/app/assets/icons/outline/face-grin-stars.svg +6 -0
  123. data/app/assets/icons/outline/face-grin.svg +3 -0
  124. data/app/assets/icons/outline/face-laugh.svg +3 -0
  125. data/app/assets/icons/outline/file-chart-bar.svg +3 -0
  126. data/app/assets/icons/outline/file-check.svg +3 -0
  127. data/app/assets/icons/outline/file-circle-plus.svg +3 -0
  128. data/app/assets/icons/outline/file-clone.svg +3 -0
  129. data/app/assets/icons/outline/file-code.svg +3 -0
  130. data/app/assets/icons/outline/file-copy-alt.svg +3 -0
  131. data/app/assets/icons/outline/file-copy.svg +3 -0
  132. data/app/assets/icons/outline/file-csv.svg +3 -0
  133. data/app/assets/icons/outline/file-export.svg +3 -0
  134. data/app/assets/icons/outline/file-image.svg +4 -0
  135. data/app/assets/icons/outline/file-import.svg +3 -0
  136. data/app/assets/icons/outline/file-invoice.svg +3 -0
  137. data/app/assets/icons/outline/file-lines.svg +3 -0
  138. data/app/assets/icons/outline/file-music.svg +3 -0
  139. data/app/assets/icons/outline/file-paste.svg +3 -0
  140. data/app/assets/icons/outline/file-pdf.svg +3 -0
  141. data/app/assets/icons/outline/file-pen.svg +3 -0
  142. data/app/assets/icons/outline/file-ppt.svg +3 -0
  143. data/app/assets/icons/outline/file-search.svg +3 -0
  144. data/app/assets/icons/outline/file-shield.svg +3 -0
  145. data/app/assets/icons/outline/file-video.svg +3 -0
  146. data/app/assets/icons/outline/file-word.svg +3 -0
  147. data/app/assets/icons/outline/file-zip.svg +3 -0
  148. data/app/assets/icons/outline/file.svg +3 -0
  149. data/app/assets/icons/outline/filter.svg +3 -0
  150. data/app/assets/icons/outline/fingerprint.svg +3 -0
  151. data/app/assets/icons/outline/fire.svg +3 -0
  152. data/app/assets/icons/outline/flag.svg +3 -0
  153. data/app/assets/icons/outline/folder-arrow-right.svg +3 -0
  154. data/app/assets/icons/outline/folder-duplicate.svg +3 -0
  155. data/app/assets/icons/outline/folder-open.svg +3 -0
  156. data/app/assets/icons/outline/folder-plus.svg +3 -0
  157. data/app/assets/icons/outline/folder.svg +3 -0
  158. data/app/assets/icons/outline/forward-step.svg +3 -0
  159. data/app/assets/icons/outline/forward.svg +3 -0
  160. data/app/assets/icons/outline/gift-box.svg +3 -0
  161. data/app/assets/icons/outline/globe.svg +3 -0
  162. data/app/assets/icons/outline/grid-plus.svg +3 -0
  163. data/app/assets/icons/outline/grid.svg +3 -0
  164. data/app/assets/icons/outline/headphones.svg +3 -0
  165. data/app/assets/icons/outline/heart.svg +3 -0
  166. data/app/assets/icons/outline/home.svg +3 -0
  167. data/app/assets/icons/outline/hourglass.svg +3 -0
  168. data/app/assets/icons/outline/image.svg +3 -0
  169. data/app/assets/icons/outline/inbox-full.svg +3 -0
  170. data/app/assets/icons/outline/inbox.svg +3 -0
  171. data/app/assets/icons/outline/indent.svg +3 -0
  172. data/app/assets/icons/outline/info-circle.svg +3 -0
  173. data/app/assets/icons/outline/keyboard.svg +5 -0
  174. data/app/assets/icons/outline/label.svg +3 -0
  175. data/app/assets/icons/outline/landmark.svg +3 -0
  176. data/app/assets/icons/outline/layers.svg +3 -0
  177. data/app/assets/icons/outline/letter-bold.svg +3 -0
  178. data/app/assets/icons/outline/letter-italic.svg +3 -0
  179. data/app/assets/icons/outline/letter-underline.svg +3 -0
  180. data/app/assets/icons/outline/life-saver.svg +3 -0
  181. data/app/assets/icons/outline/lightbulb.svg +3 -0
  182. data/app/assets/icons/outline/link.svg +3 -0
  183. data/app/assets/icons/outline/list-music.svg +3 -0
  184. data/app/assets/icons/outline/list.svg +3 -0
  185. data/app/assets/icons/outline/lock-open.svg +3 -0
  186. data/app/assets/icons/outline/lock-time.svg +3 -0
  187. data/app/assets/icons/outline/lock.svg +3 -0
  188. data/app/assets/icons/outline/mail-box.svg +3 -0
  189. data/app/assets/icons/outline/map-pin-alt.svg +4 -0
  190. data/app/assets/icons/outline/map-pin.svg +3 -0
  191. data/app/assets/icons/outline/message-caption.svg +3 -0
  192. data/app/assets/icons/outline/message-dots.svg +3 -0
  193. data/app/assets/icons/outline/messages.svg +3 -0
  194. data/app/assets/icons/outline/microphone.svg +3 -0
  195. data/app/assets/icons/outline/minimize.svg +3 -0
  196. data/app/assets/icons/outline/minus.svg +3 -0
  197. data/app/assets/icons/outline/mobile-phone.svg +3 -0
  198. data/app/assets/icons/outline/moon.svg +3 -0
  199. data/app/assets/icons/outline/newspaper.svg +3 -0
  200. data/app/assets/icons/outline/ordered-list.svg +3 -0
  201. data/app/assets/icons/outline/outdent.svg +3 -0
  202. data/app/assets/icons/outline/palette.svg +3 -0
  203. data/app/assets/icons/outline/paper-clip.svg +3 -0
  204. data/app/assets/icons/outline/paper-plane.svg +3 -0
  205. data/app/assets/icons/outline/paragraph.svg +3 -0
  206. data/app/assets/icons/outline/pause.svg +3 -0
  207. data/app/assets/icons/outline/pen-nib.svg +3 -0
  208. data/app/assets/icons/outline/pen.svg +3 -0
  209. data/app/assets/icons/outline/phone.svg +3 -0
  210. data/app/assets/icons/outline/play.svg +3 -0
  211. data/app/assets/icons/outline/plus.svg +3 -0
  212. data/app/assets/icons/outline/printer.svg +3 -0
  213. data/app/assets/icons/outline/profile-card.svg +3 -0
  214. data/app/assets/icons/outline/question-circle.svg +3 -0
  215. data/app/assets/icons/outline/quote.svg +3 -0
  216. data/app/assets/icons/outline/receipt.svg +3 -0
  217. data/app/assets/icons/outline/rectangle-list.svg +3 -0
  218. data/app/assets/icons/outline/redo.svg +3 -0
  219. data/app/assets/icons/outline/refresh.svg +3 -0
  220. data/app/assets/icons/outline/reply-all.svg +3 -0
  221. data/app/assets/icons/outline/reply.svg +3 -0
  222. data/app/assets/icons/outline/restore-window.svg +3 -0
  223. data/app/assets/icons/outline/rocket.svg +3 -0
  224. data/app/assets/icons/outline/ruler-combined.svg +3 -0
  225. data/app/assets/icons/outline/sale-percent.svg +3 -0
  226. data/app/assets/icons/outline/scale-balanced.svg +3 -0
  227. data/app/assets/icons/outline/search.svg +3 -0
  228. data/app/assets/icons/outline/share-all.svg +3 -0
  229. data/app/assets/icons/outline/share-nodes.svg +3 -0
  230. data/app/assets/icons/outline/shield-check.svg +3 -0
  231. data/app/assets/icons/outline/shield.svg +3 -0
  232. data/app/assets/icons/outline/shopping-bag.svg +3 -0
  233. data/app/assets/icons/outline/shuffle.svg +3 -0
  234. data/app/assets/icons/outline/sort-horizontal.svg +3 -0
  235. data/app/assets/icons/outline/sort.svg +3 -0
  236. data/app/assets/icons/outline/star-half-stroke.svg +3 -0
  237. data/app/assets/icons/outline/star-half.svg +3 -0
  238. data/app/assets/icons/outline/star.svg +3 -0
  239. data/app/assets/icons/outline/store.svg +3 -0
  240. data/app/assets/icons/outline/sun.svg +3 -0
  241. data/app/assets/icons/outline/swatchbook.svg +3 -0
  242. data/app/assets/icons/outline/table-column.svg +3 -0
  243. data/app/assets/icons/outline/table-row.svg +3 -0
  244. data/app/assets/icons/outline/tablet.svg +3 -0
  245. data/app/assets/icons/outline/tag.svg +3 -0
  246. data/app/assets/icons/outline/terminal.svg +3 -0
  247. data/app/assets/icons/outline/text-size.svg +3 -0
  248. data/app/assets/icons/outline/text-slash.svg +3 -0
  249. data/app/assets/icons/outline/thumbs-down.svg +3 -0
  250. data/app/assets/icons/outline/thumbs-up.svg +3 -0
  251. data/app/assets/icons/outline/ticket.svg +3 -0
  252. data/app/assets/icons/outline/trash-bin.svg +3 -0
  253. data/app/assets/icons/outline/truck.svg +3 -0
  254. data/app/assets/icons/outline/undo.svg +3 -0
  255. data/app/assets/icons/outline/upload.svg +3 -0
  256. data/app/assets/icons/outline/user-add.svg +3 -0
  257. data/app/assets/icons/outline/user-circle.svg +3 -0
  258. data/app/assets/icons/outline/user-edit.svg +3 -0
  259. data/app/assets/icons/outline/user-headset.svg +3 -0
  260. data/app/assets/icons/outline/user-remove.svg +3 -0
  261. data/app/assets/icons/outline/user-settings.svg +3 -0
  262. data/app/assets/icons/outline/user.svg +3 -0
  263. data/app/assets/icons/outline/users-group.svg +3 -0
  264. data/app/assets/icons/outline/users.svg +3 -0
  265. data/app/assets/icons/outline/video-camera.svg +3 -0
  266. data/app/assets/icons/outline/volume-down.svg +3 -0
  267. data/app/assets/icons/outline/volume-up.svg +3 -0
  268. data/app/assets/icons/outline/wallet.svg +3 -0
  269. data/app/assets/icons/outline/wand-magic-sparkles.svg +3 -0
  270. data/app/assets/icons/outline/window.svg +3 -0
  271. data/app/assets/icons/outline/zoom-in.svg +3 -0
  272. data/app/assets/icons/outline/zoom-out.svg +3 -0
  273. data/app/assets/icons/solid/X.svg +3 -0
  274. data/app/assets/icons/solid/address-book.svg +3 -0
  275. data/app/assets/icons/solid/adjustments-horizontal.svg +3 -0
  276. data/app/assets/icons/solid/adjustments-vertical.svg +3 -0
  277. data/app/assets/icons/solid/annotation.svg +3 -0
  278. data/app/assets/icons/solid/apple.svg +3 -0
  279. data/app/assets/icons/solid/archive-arrow-down.svg +3 -0
  280. data/app/assets/icons/solid/archive.svg +4 -0
  281. data/app/assets/icons/solid/arrow-right-alt.svg +3 -0
  282. data/app/assets/icons/solid/arrow-up-right-from-square.svg +4 -0
  283. data/app/assets/icons/solid/backward-step.svg +3 -0
  284. data/app/assets/icons/solid/badge-check.svg +3 -0
  285. data/app/assets/icons/solid/bell-active-alt.svg +3 -0
  286. data/app/assets/icons/solid/bell-active.svg +5 -0
  287. data/app/assets/icons/solid/bell-ring.svg +3 -0
  288. data/app/assets/icons/solid/bell.svg +3 -0
  289. data/app/assets/icons/solid/blender-phone.svg +3 -0
  290. data/app/assets/icons/solid/book-open.svg +3 -0
  291. data/app/assets/icons/solid/book.svg +3 -0
  292. data/app/assets/icons/solid/bookmark.svg +3 -0
  293. data/app/assets/icons/solid/brain.svg +3 -0
  294. data/app/assets/icons/solid/briefcase.svg +3 -0
  295. data/app/assets/icons/solid/bug.svg +3 -0
  296. data/app/assets/icons/solid/building.svg +3 -0
  297. data/app/assets/icons/solid/bullhorn.svg +3 -0
  298. data/app/assets/icons/solid/calendar-edit.svg +4 -0
  299. data/app/assets/icons/solid/calendar-month.svg +3 -0
  300. data/app/assets/icons/solid/calendar-plus.svg +3 -0
  301. data/app/assets/icons/solid/calendar-week.svg +3 -0
  302. data/app/assets/icons/solid/camera-photo.svg +3 -0
  303. data/app/assets/icons/solid/caption.svg +3 -0
  304. data/app/assets/icons/solid/caret-down.svg +3 -0
  305. data/app/assets/icons/solid/caret-left.svg +3 -0
  306. data/app/assets/icons/solid/caret-right.svg +3 -0
  307. data/app/assets/icons/solid/caret-sort.svg +3 -0
  308. data/app/assets/icons/solid/caret-up.svg +3 -0
  309. data/app/assets/icons/solid/cart-plus-alt.svg +4 -0
  310. data/app/assets/icons/solid/cart-plus.svg +4 -0
  311. data/app/assets/icons/solid/cart.svg +3 -0
  312. data/app/assets/icons/solid/cash.svg +5 -0
  313. data/app/assets/icons/solid/chart-mixed-dollar.svg +3 -0
  314. data/app/assets/icons/solid/chart-pie.svg +4 -0
  315. data/app/assets/icons/solid/check-circle.svg +3 -0
  316. data/app/assets/icons/solid/check-plus-circle.svg +4 -0
  317. data/app/assets/icons/solid/circle-pause.svg +3 -0
  318. data/app/assets/icons/solid/circle-plus.svg +3 -0
  319. data/app/assets/icons/solid/clapperboard-play.svg +3 -0
  320. data/app/assets/icons/solid/clipboard-check.svg +3 -0
  321. data/app/assets/icons/solid/clipboard-list.svg +3 -0
  322. data/app/assets/icons/solid/clipboard.svg +3 -0
  323. data/app/assets/icons/solid/clock.svg +3 -0
  324. data/app/assets/icons/solid/close-circle.svg +3 -0
  325. data/app/assets/icons/solid/cloud-arrow-up.svg +4 -0
  326. data/app/assets/icons/solid/code-branch.svg +3 -0
  327. data/app/assets/icons/solid/code-fork.svg +3 -0
  328. data/app/assets/icons/solid/code-merge.svg +3 -0
  329. data/app/assets/icons/solid/code-pull-request.svg +3 -0
  330. data/app/assets/icons/solid/cog.svg +3 -0
  331. data/app/assets/icons/solid/column.svg +3 -0
  332. data/app/assets/icons/solid/computer-speaker.svg +4 -0
  333. data/app/assets/icons/solid/credit-card.svg +4 -0
  334. data/app/assets/icons/solid/css.svg +3 -0
  335. data/app/assets/icons/solid/database.svg +3 -0
  336. data/app/assets/icons/solid/desktop-pc.svg +3 -0
  337. data/app/assets/icons/solid/discord.svg +3 -0
  338. data/app/assets/icons/solid/download.svg +4 -0
  339. data/app/assets/icons/solid/draw-square.svg +4 -0
  340. data/app/assets/icons/solid/dribbble.svg +3 -0
  341. data/app/assets/icons/solid/dropbox.svg +4 -0
  342. data/app/assets/icons/solid/edit.svg +4 -0
  343. data/app/assets/icons/solid/envelope-open.svg +4 -0
  344. data/app/assets/icons/solid/envelope.svg +4 -0
  345. data/app/assets/icons/solid/exclamation-circle.svg +3 -0
  346. data/app/assets/icons/solid/eye-slash.svg +5 -0
  347. data/app/assets/icons/solid/eye.svg +3 -0
  348. data/app/assets/icons/solid/face-explode.svg +3 -0
  349. data/app/assets/icons/solid/face-grin-stars.svg +3 -0
  350. data/app/assets/icons/solid/face-grin.svg +3 -0
  351. data/app/assets/icons/solid/face-laugh.svg +3 -0
  352. data/app/assets/icons/solid/facebook.svg +3 -0
  353. data/app/assets/icons/solid/file-chart-bar.svg +3 -0
  354. data/app/assets/icons/solid/file-check.svg +4 -0
  355. data/app/assets/icons/solid/file-circle-plus.svg +4 -0
  356. data/app/assets/icons/solid/file-clone.svg +4 -0
  357. data/app/assets/icons/solid/file-code.svg +3 -0
  358. data/app/assets/icons/solid/file-copy-alt.svg +4 -0
  359. data/app/assets/icons/solid/file-copy.svg +4 -0
  360. data/app/assets/icons/solid/file-csv.svg +3 -0
  361. data/app/assets/icons/solid/file-export.svg +3 -0
  362. data/app/assets/icons/solid/file-image.svg +3 -0
  363. data/app/assets/icons/solid/file-import.svg +3 -0
  364. data/app/assets/icons/solid/file-invoice.svg +3 -0
  365. data/app/assets/icons/solid/file-lines.svg +3 -0
  366. data/app/assets/icons/solid/file-music.svg +3 -0
  367. data/app/assets/icons/solid/file-paste.svg +4 -0
  368. data/app/assets/icons/solid/file-pdf.svg +3 -0
  369. data/app/assets/icons/solid/file-pen.svg +4 -0
  370. data/app/assets/icons/solid/file-ppt.svg +3 -0
  371. data/app/assets/icons/solid/file-search.svg +3 -0
  372. data/app/assets/icons/solid/file-shield.svg +4 -0
  373. data/app/assets/icons/solid/file-video.svg +3 -0
  374. data/app/assets/icons/solid/file-word.svg +3 -0
  375. data/app/assets/icons/solid/file-zip.svg +3 -0
  376. data/app/assets/icons/solid/file.svg +3 -0
  377. data/app/assets/icons/solid/filter.svg +3 -0
  378. data/app/assets/icons/solid/fire.svg +3 -0
  379. data/app/assets/icons/solid/flag.svg +3 -0
  380. data/app/assets/icons/solid/flowbite.svg +6 -0
  381. data/app/assets/icons/solid/folder-arrow-right.svg +3 -0
  382. data/app/assets/icons/solid/folder-duplicate.svg +4 -0
  383. data/app/assets/icons/solid/folder-open.svg +3 -0
  384. data/app/assets/icons/solid/folder-plus.svg +3 -0
  385. data/app/assets/icons/solid/folder.svg +3 -0
  386. data/app/assets/icons/solid/forward-step.svg +3 -0
  387. data/app/assets/icons/solid/forward.svg +3 -0
  388. data/app/assets/icons/solid/gift-box.svg +3 -0
  389. data/app/assets/icons/solid/github.svg +3 -0
  390. data/app/assets/icons/solid/globe.svg +3 -0
  391. data/app/assets/icons/solid/google.svg +3 -0
  392. data/app/assets/icons/solid/grid-plus.svg +3 -0
  393. data/app/assets/icons/solid/grid.svg +3 -0
  394. data/app/assets/icons/solid/headphones.svg +3 -0
  395. data/app/assets/icons/solid/heart.svg +3 -0
  396. data/app/assets/icons/solid/home.svg +3 -0
  397. data/app/assets/icons/solid/hourglass.svg +3 -0
  398. data/app/assets/icons/solid/html.svg +3 -0
  399. data/app/assets/icons/solid/image.svg +4 -0
  400. data/app/assets/icons/solid/inbox-full.svg +3 -0
  401. data/app/assets/icons/solid/inbox.svg +3 -0
  402. data/app/assets/icons/solid/indent.svg +3 -0
  403. data/app/assets/icons/solid/info-circle.svg +3 -0
  404. data/app/assets/icons/solid/keyboard.svg +3 -0
  405. data/app/assets/icons/solid/label.svg +3 -0
  406. data/app/assets/icons/solid/landmark.svg +4 -0
  407. data/app/assets/icons/solid/layers.svg +4 -0
  408. data/app/assets/icons/solid/life-saver.svg +3 -0
  409. data/app/assets/icons/solid/lightbulb.svg +3 -0
  410. data/app/assets/icons/solid/linkedin.svg +4 -0
  411. data/app/assets/icons/solid/list-music.svg +3 -0
  412. data/app/assets/icons/solid/lock-open.svg +3 -0
  413. data/app/assets/icons/solid/lock-time.svg +4 -0
  414. data/app/assets/icons/solid/lock.svg +3 -0
  415. data/app/assets/icons/solid/mail-box.svg +3 -0
  416. data/app/assets/icons/solid/map-pin-alt.svg +3 -0
  417. data/app/assets/icons/solid/map-pin.svg +3 -0
  418. data/app/assets/icons/solid/message-caption.svg +3 -0
  419. data/app/assets/icons/solid/message-dots.svg +3 -0
  420. data/app/assets/icons/solid/messages.svg +4 -0
  421. data/app/assets/icons/solid/microphone.svg +4 -0
  422. data/app/assets/icons/solid/mobile-phone.svg +3 -0
  423. data/app/assets/icons/solid/moon.svg +3 -0
  424. data/app/assets/icons/solid/newspaper.svg +3 -0
  425. data/app/assets/icons/solid/npm.svg +3 -0
  426. data/app/assets/icons/solid/outdent.svg +3 -0
  427. data/app/assets/icons/solid/palette.svg +3 -0
  428. data/app/assets/icons/solid/paper-plane.svg +3 -0
  429. data/app/assets/icons/solid/paragraph.svg +3 -0
  430. data/app/assets/icons/solid/pause.svg +3 -0
  431. data/app/assets/icons/solid/pen-nib.svg +3 -0
  432. data/app/assets/icons/solid/pen.svg +3 -0
  433. data/app/assets/icons/solid/phone.svg +3 -0
  434. data/app/assets/icons/solid/play.svg +3 -0
  435. data/app/assets/icons/solid/printer.svg +3 -0
  436. data/app/assets/icons/solid/profile-card.svg +3 -0
  437. data/app/assets/icons/solid/question-circle.svg +3 -0
  438. data/app/assets/icons/solid/quote.svg +3 -0
  439. data/app/assets/icons/solid/react.svg +4 -0
  440. data/app/assets/icons/solid/receipt.svg +3 -0
  441. data/app/assets/icons/solid/rectangle-list.svg +3 -0
  442. data/app/assets/icons/solid/reply-all.svg +3 -0
  443. data/app/assets/icons/solid/reply.svg +3 -0
  444. data/app/assets/icons/solid/rocket.svg +3 -0
  445. data/app/assets/icons/solid/sale-percent.svg +3 -0
  446. data/app/assets/icons/solid/scale-balanced.svg +3 -0
  447. data/app/assets/icons/solid/search.svg +4 -0
  448. data/app/assets/icons/solid/share-all.svg +3 -0
  449. data/app/assets/icons/solid/share-nodes.svg +3 -0
  450. data/app/assets/icons/solid/shield-check.svg +3 -0
  451. data/app/assets/icons/solid/shield.svg +3 -0
  452. data/app/assets/icons/solid/shopping-bag.svg +3 -0
  453. data/app/assets/icons/solid/stackoverflow.svg +4 -0
  454. data/app/assets/icons/solid/star-half-stroke.svg +3 -0
  455. data/app/assets/icons/solid/star-half.svg +3 -0
  456. data/app/assets/icons/solid/star.svg +3 -0
  457. data/app/assets/icons/solid/store.svg +3 -0
  458. data/app/assets/icons/solid/sun.svg +3 -0
  459. data/app/assets/icons/solid/swatchbook.svg +3 -0
  460. data/app/assets/icons/solid/table-column.svg +3 -0
  461. data/app/assets/icons/solid/table-row.svg +3 -0
  462. data/app/assets/icons/solid/tablet.svg +3 -0
  463. data/app/assets/icons/solid/tag.svg +3 -0
  464. data/app/assets/icons/solid/tailwind.svg +3 -0
  465. data/app/assets/icons/solid/terminal.svg +3 -0
  466. data/app/assets/icons/solid/thumbs-down.svg +3 -0
  467. data/app/assets/icons/solid/thumbs-up.svg +3 -0
  468. data/app/assets/icons/solid/ticket.svg +3 -0
  469. data/app/assets/icons/solid/trash-bin.svg +3 -0
  470. data/app/assets/icons/solid/truck.svg +3 -0
  471. data/app/assets/icons/solid/twitter.svg +3 -0
  472. data/app/assets/icons/solid/upload.svg +3 -0
  473. data/app/assets/icons/solid/user-add.svg +3 -0
  474. data/app/assets/icons/solid/user-circle.svg +3 -0
  475. data/app/assets/icons/solid/user-edit.svg +3 -0
  476. data/app/assets/icons/solid/user-headset.svg +3 -0
  477. data/app/assets/icons/solid/user-remove.svg +3 -0
  478. data/app/assets/icons/solid/user-settings.svg +3 -0
  479. data/app/assets/icons/solid/user.svg +3 -0
  480. data/app/assets/icons/solid/users-group.svg +3 -0
  481. data/app/assets/icons/solid/users.svg +3 -0
  482. data/app/assets/icons/solid/video-camera.svg +3 -0
  483. data/app/assets/icons/solid/volume-down.svg +4 -0
  484. data/app/assets/icons/solid/volume-up.svg +5 -0
  485. data/app/assets/icons/solid/vue.svg +3 -0
  486. data/app/assets/icons/solid/wallet.svg +4 -0
  487. data/app/assets/icons/solid/wand-magic-sparkles.svg +4 -0
  488. data/app/assets/icons/solid/window-restore.svg +4 -0
  489. data/app/assets/icons/solid/window.svg +3 -0
  490. data/app/assets/icons/solid/youtube.svg +3 -0
  491. data/app/assets/icons/solid/zoom-in.svg +3 -0
  492. data/app/assets/icons/solid/zoom-out.svg +3 -0
  493. data/app/assets/js/controllers/application.js +6 -0
  494. data/app/assets/js/controllers/dropdown_controller.js +12 -0
  495. data/app/assets/js/controllers/index.js +21 -0
  496. data/app/assets/js/plutonium.js +2 -0
  497. data/app/assets/js/turbo/index.js +5 -0
  498. data/app/assets/js/turbo/turbo_actions.js +8 -0
  499. data/app/assets/js/turbo/turbo_debug.js +30 -0
  500. data/app/assets/js/turbo/turbo_frame_monkey_patch.js +23 -0
  501. data/app/views/{resource → application}/_color_modes.html.erb +3 -1
  502. data/app/views/application/_flash.html.erb +1 -0
  503. data/app/views/application/_resource_header.html.erb +721 -0
  504. data/app/views/application/_resource_sidebar.html.erb +12 -0
  505. data/app/views/components/action_button/action_button_component.html.erb +7 -0
  506. data/app/views/components/action_button/action_button_component.rb +15 -0
  507. data/app/views/components/base.rb +50 -0
  508. data/app/views/components/block/block_component.html.erb +3 -0
  509. data/app/views/components/block/block_component.rb +40 -0
  510. data/app/views/components/breadcrumbs/breadcrumbs_component.html.erb +96 -0
  511. data/app/views/components/breadcrumbs/breadcrumbs_component.rb +9 -0
  512. data/app/views/components/button/button_component.html.erb +11 -0
  513. data/app/views/components/button/button_component.rb +123 -0
  514. data/app/views/components/dyna_frame_content/dyna_frame_content_component.html.erb +7 -0
  515. data/app/views/components/dyna_frame_content/dyna_frame_content_component.rb +6 -0
  516. data/app/views/components/dyna_frame_host/dyna_frame_host_component.html.erb +4 -0
  517. data/app/views/components/dyna_frame_host/dyna_frame_host_component.rb +11 -0
  518. data/app/views/components/empty_card/empty_card_component.html.erb +6 -0
  519. data/app/views/components/empty_card/empty_card_component.rb +7 -0
  520. data/app/views/components/form/form_builder.rb +71 -0
  521. data/app/views/components/form/form_component.html.erb +77 -0
  522. data/app/views/components/form/form_component.rb +23 -0
  523. data/app/views/components/form/form_controller.js +13 -0
  524. data/app/views/components/header/header_component.html.erb +1 -0
  525. data/app/views/components/header/header_component.rb +7 -0
  526. data/app/views/components/interactive_action_form/interactive_action_form_component.html.erb +41 -0
  527. data/app/views/components/interactive_action_form/interactive_action_form_component.rb +8 -0
  528. data/app/views/components/interactive_action_form/interactive_action_form_controller.js +13 -0
  529. data/app/views/components/pagination/pagination_component.html.erb +6 -0
  530. data/app/views/components/pagination/pagination_component.rb +91 -0
  531. data/app/views/components/panel/panel_component.html.erb +10 -0
  532. data/app/views/components/panel/panel_component.rb +11 -0
  533. data/app/views/components/sidebar/sidebar_component.html.erb +154 -0
  534. data/app/views/components/sidebar/sidebar_component.rb +15 -0
  535. data/app/views/components/sidebar_menu/sidebar_menu_component.html.erb +3 -0
  536. data/app/views/components/sidebar_menu/sidebar_menu_component.rb +13 -0
  537. data/app/views/components/sidebar_menu_item/sidebar_menu_item_component.html.erb +72 -0
  538. data/app/views/components/sidebar_menu_item/sidebar_menu_item_component.rb +23 -0
  539. data/app/views/components/skeleton/table/table_component.html.erb +18 -0
  540. data/app/views/components/skeleton/table/table_component.rb +6 -0
  541. data/app/views/components/tab_bar/tab_bar_component.html.erb +11 -0
  542. data/app/views/components/tab_bar/tab_bar_component.rb +9 -0
  543. data/app/views/components/tab_bar/tab_bar_controller.js +8 -0
  544. data/app/views/components/table/table_component.html.erb +92 -0
  545. data/app/views/components/table/table_component.rb +63 -0
  546. data/app/views/components/table/table_controller.js +8 -0
  547. data/app/views/components/table_search_input/table_search_input_component.html.erb +42 -0
  548. data/app/views/components/table_search_input/table_search_input_component.rb +10 -0
  549. data/app/views/components/table_search_input/table_search_input_controller.js +8 -0
  550. data/app/views/components/table_toolbar/table_toolbar_component.html.erb +7 -0
  551. data/app/views/components/table_toolbar/table_toolbar_component.rb +9 -0
  552. data/app/views/components/table_toolbar/table_toolbar_controller.js +8 -0
  553. data/app/views/components/toolbar/toolbar_component.html.erb +67 -0
  554. data/app/views/components/toolbar/toolbar_component.rb +18 -0
  555. data/app/views/components/toolbar/toolbar_controller.js +8 -0
  556. data/app/views/layouts/resource.html copy.erb +51 -0
  557. data/app/views/layouts/resource.html.erb +32 -25
  558. data/app/views/layouts/rodauth.html.erb +32 -0
  559. data/app/views/resource/_interactive_resource_action_form.html.erb +4 -26
  560. data/app/views/resource/_resource_details.html.erb +26 -0
  561. data/app/views/resource/{_resource.rabl → _resource_details.rabl} +1 -1
  562. data/app/views/resource/_resource_form.html.erb +5 -0
  563. data/app/views/resource/_resource_table.html.erb +15 -0
  564. data/app/views/resource/edit.html.erb +4 -9
  565. data/app/views/resource/index.html.erb +4 -18
  566. data/app/views/resource/interactive_resource_collection_action.html.erb +3 -10
  567. data/app/views/resource/interactive_resource_record_action.html.erb +3 -10
  568. data/app/views/resource/interactive_resource_recordless_action.html.erb +3 -10
  569. data/app/views/resource/new.html.erb +3 -10
  570. data/app/views/resource/show.html.erb +4 -13
  571. data/app/views/resource/show.rabl +1 -1
  572. data/brakeman.ignore +5 -5
  573. data/build.js +12 -0
  574. data/config/initializers/hotwire_turbo_monkey_patches.rb +12 -0
  575. data/{lib/plutonium → config}/initializers/pagy.rb +0 -1
  576. data/config/initializers/simple_form.rb +54 -0
  577. data/lib/active_model/validations/array_validator.rb +1 -1
  578. data/lib/active_model/validations/attached_validator.rb +1 -1
  579. data/lib/active_model/validations/url_validator.rb +1 -1
  580. data/lib/generators/pu/core/install/install_generator.rb +1 -1
  581. data/lib/generators/pu/core/install/templates/app/controllers/resource_controller.rb.tt +2 -1
  582. data/lib/generators/pu/core/install/templates/app/interactions/resource_interaction.rb.tt +1 -1
  583. data/lib/generators/pu/core/install/templates/app/models/resource_record.rb.tt +1 -1
  584. data/lib/generators/pu/core/install/templates/app/policies/resource_policy.rb.tt +1 -1
  585. data/lib/generators/pu/core/install/templates/app/presenters/resource_presenter.rb.tt +1 -1
  586. data/lib/generators/pu/core/install/templates/app/query_objects/resource_query_object.rb.tt +2 -0
  587. data/lib/generators/pu/core/install/templates/config/packages.rb +1 -3
  588. data/lib/generators/pu/gem/pagy/pagy_generator.rb +1 -1
  589. data/lib/generators/pu/gem/rabl/rabl_generator.rb +1 -1
  590. data/lib/generators/pu/gem/simple_form/simple_form_generator.rb +1 -1
  591. data/lib/generators/pu/gen/component/component_generator.rb +87 -0
  592. data/lib/generators/pu/gen/component/templates/component.html.erb.tt +3 -0
  593. data/lib/generators/pu/gen/component/templates/component.rb.tt +9 -0
  594. data/lib/generators/pu/gen/component/templates/controller.js.tt +8 -0
  595. data/lib/generators/pu/lib/plutonium_generators/concerns/actions.rb +353 -0
  596. data/lib/generators/pu/lib/plutonium_generators/concerns/config.rb +39 -0
  597. data/lib/generators/pu/lib/plutonium_generators/concerns/logger.rb +36 -0
  598. data/lib/generators/pu/lib/plutonium_generators/concerns/serializer.rb +39 -0
  599. data/lib/generators/pu/lib/plutonium_generators/generator.rb +86 -0
  600. data/lib/generators/pu/lib/plutonium_generators/installer.rb +205 -0
  601. data/lib/generators/pu/lib/plutonium_generators/model_generator.rb +151 -0
  602. data/lib/generators/pu/lib/plutonium_generators.rb +7 -0
  603. data/lib/generators/pu/pkg/app/app_generator.rb +14 -4
  604. data/lib/generators/pu/pkg/app/templates/app/controllers/app_controller.rb.tt +5 -0
  605. data/lib/generators/pu/pkg/app/templates/app/controllers/dashboard_controller.rb.tt +6 -0
  606. data/lib/generators/pu/pkg/app/templates/app/controllers/{resource_controller.rb.tt → package_controller.rb.tt} +3 -3
  607. data/lib/generators/pu/pkg/app/templates/app/{interactions/resource_interaction.rb.tt → query_objects/resource_query_object.rb.tt} +1 -1
  608. data/lib/generators/pu/pkg/app/templates/app/views/package/dashboard/index.html.erb +23 -0
  609. data/lib/generators/pu/pkg/app/templates/config/routes.rb.tt +5 -3
  610. data/lib/generators/pu/pkg/feature/feature_generator.rb +4 -4
  611. data/lib/generators/pu/pkg/feature/templates/app/query_objects/resource_query_object.rb.tt +4 -0
  612. data/lib/generators/pu/{resource → res}/conn/conn_generator.rb +3 -2
  613. data/lib/generators/pu/res/conn/templates/.keep +0 -0
  614. data/lib/generators/pu/{resource → res}/conn/templates/app/controllers/resource_controller.rb.tt +1 -1
  615. data/lib/generators/pu/res/conn/templates/app/query_objects/resource_query_object.rb.tt +3 -0
  616. data/lib/generators/pu/res/model/model_generator.rb +36 -0
  617. data/lib/generators/pu/{resource → res}/model/templates/model.rb.tt +1 -1
  618. data/lib/generators/pu/res/scaffold/scaffold_generator.rb +43 -0
  619. data/lib/generators/pu/res/scaffold/templates/.keep +0 -0
  620. data/lib/generators/pu/{resource/model → res/scaffold}/templates/policy.rb.tt +2 -2
  621. data/lib/generators/pu/{resource/model → res/scaffold}/templates/presenter.rb.tt +0 -5
  622. data/lib/generators/pu/res/scaffold/templates/query_object.rb.tt +17 -0
  623. data/lib/generators/pu/rodauth/account_generator.rb +6 -17
  624. data/lib/generators/pu/rodauth/concerns/account_selector.rb +5 -1
  625. data/lib/generators/pu/rodauth/migration/active_record/base.erb +0 -4
  626. data/lib/generators/pu/rodauth/migration_generator.rb +2 -4
  627. data/lib/generators/pu/rodauth/templates/app/controllers/plugin_controller.rb.tt +11 -1
  628. data/lib/generators/pu/rodauth/templates/app/controllers/rodauth_controller.rb.tt +2 -1
  629. data/lib/generators/pu/rodauth/templates/app/mailers/account_mailer.rb.tt +1 -1
  630. data/lib/generators/pu/rodauth/templates/app/misc/account_rodauth_plugin.rb.tt +26 -11
  631. data/lib/generators/pu/rodauth/templates/app/misc/rodauth_plugin.rb.tt +1 -1
  632. data/lib/generators/pu/rodauth/templates/app/models/account.rb.tt +4 -1
  633. data/lib/generators/pu/rodauth/views_generator.rb +1 -14
  634. data/lib/plutonium/application/controller.rb +43 -0
  635. data/lib/plutonium/auth/{public_access.rb → public.rb} +1 -1
  636. data/lib/plutonium/auth.rb +0 -5
  637. data/lib/plutonium/builders/menus/sidebar_menu.rb.bk +26 -0
  638. data/lib/plutonium/builders/menus/sidebar_menu_item.rb.bk +28 -0
  639. data/lib/plutonium/component_registry.rb +19 -0
  640. data/lib/plutonium/config.rb +17 -2
  641. data/lib/plutonium/core/action.rb +9 -6
  642. data/lib/plutonium/core/actions/collection.rb +4 -0
  643. data/lib/plutonium/core/actions/destroy_action.rb +5 -3
  644. data/lib/plutonium/core/actions/edit_action.rb +5 -3
  645. data/lib/plutonium/core/actions/interactive_action.rb +1 -1
  646. data/lib/plutonium/core/actions/new_action.rb +5 -3
  647. data/lib/plutonium/core/actions/show_action.rb +5 -3
  648. data/lib/plutonium/core/autodiscovery/input_discoverer.rb +0 -2
  649. data/lib/plutonium/core/autodiscovery/renderer_discoverer.rb +0 -2
  650. data/lib/plutonium/core/controllers/authorizable.rb +3 -5
  651. data/lib/plutonium/core/controllers/base.rb +86 -0
  652. data/lib/plutonium/core/controllers/bootable.rb +5 -24
  653. data/lib/plutonium/core/controllers/crud_actions.rb +43 -8
  654. data/lib/plutonium/core/controllers/entity_scoping.rb +16 -5
  655. data/lib/plutonium/core/controllers/interactive_actions.rb +9 -7
  656. data/lib/plutonium/core/controllers/presentable.rb +11 -11
  657. data/lib/plutonium/core/controllers/queryable.rb +26 -0
  658. data/lib/plutonium/core/definers/input_definer.rb +47 -7
  659. data/lib/plutonium/core/definers/renderer_definer.rb +5 -3
  660. data/lib/plutonium/core/fields/inputs/base.rb +3 -3
  661. data/lib/plutonium/core/fields/inputs/date_time_input.rb +13 -0
  662. data/lib/plutonium/core/fields/inputs/factory.rb +13 -4
  663. data/lib/plutonium/core/fields/inputs/noop_input.rb +1 -1
  664. data/lib/plutonium/core/fields/inputs/phone_input.rb +22 -0
  665. data/lib/plutonium/core/fields/inputs/polymorphic_belongs_to_association_input.rb +47 -0
  666. data/lib/plutonium/core/fields/inputs/simple_form_association_input.rb +3 -2
  667. data/lib/plutonium/core/fields/inputs/simple_form_input.rb +4 -1
  668. data/lib/plutonium/core/fields/renderers/association_renderer.rb +4 -7
  669. data/lib/plutonium/core/ui/collection.rb +12 -8
  670. data/lib/plutonium/core/ui/detail.rb +8 -5
  671. data/lib/plutonium/core/ui/form.rb +6 -5
  672. data/lib/plutonium/helpers/action_buttons_helper.rb +23 -23
  673. data/lib/plutonium/helpers/application_helper.rb +0 -4
  674. data/lib/plutonium/helpers/attachment_helper.rb +1 -1
  675. data/lib/plutonium/helpers/component_helper.rb +14 -0
  676. data/lib/plutonium/helpers/display_helper.rb +6 -6
  677. data/lib/plutonium/helpers/form_helper.rb +29 -10
  678. data/lib/plutonium/helpers/table_helper.rb +35 -0
  679. data/lib/plutonium/helpers/turbo_helper.rb +2 -2
  680. data/lib/plutonium/helpers.rb +6 -19
  681. data/lib/plutonium/icons.rb +25 -0
  682. data/lib/plutonium/lib/after_commit.rb +2 -2
  683. data/lib/plutonium/{packaging → pkg}/app.rb +8 -6
  684. data/lib/plutonium/{packaging/package.rb → pkg/base.rb} +6 -2
  685. data/lib/plutonium/{packaging → pkg}/feature.rb +2 -2
  686. data/lib/plutonium/preserved__/{field.rb → field.rb.bk} +1 -1
  687. data/lib/plutonium/preserved__/{input.rb → input.rb.bk} +1 -1
  688. data/lib/plutonium/railtie.rb +17 -3
  689. data/lib/plutonium/reactor/core.rb +34 -19
  690. data/lib/plutonium/refinements/parameter_refinements.rb +2 -0
  691. data/lib/plutonium/resource/context.rb +5 -0
  692. data/lib/plutonium/resource/controller.rb +138 -0
  693. data/lib/plutonium/resource/interaction.rb +8 -0
  694. data/lib/plutonium/{reactor/resource_policy.rb → resource/policy.rb} +10 -3
  695. data/lib/plutonium/{reactor → resource}/policy_context.rb +1 -1
  696. data/lib/plutonium/{reactor/resource_presenter.rb → resource/presenter.rb} +2 -6
  697. data/lib/plutonium/resource/query_object.rb +219 -0
  698. data/lib/plutonium/{reactor/resource_record.rb → resource/record.rb} +55 -35
  699. data/lib/plutonium/rodauth/controller_methods.rb +12 -0
  700. data/lib/plutonium/{simple_form_components → simple_form}/attachment_component.rb +2 -0
  701. data/lib/plutonium/{simple_form_components → simple_form}/input_group_component.rb +2 -0
  702. data/lib/plutonium/version.rb +1 -1
  703. data/lib/plutonium.rb +33 -16
  704. data/package-lock.json +2523 -0
  705. data/package.json +21 -0
  706. data/postcss.config.js +11 -0
  707. data/public/plutonium-assets/application.css +1617 -811
  708. data/public/plutonium-assets/application.js +299 -300
  709. data/tailwind.config.js +91 -0
  710. metadata +754 -176
  711. data/app/views/resource/_details.html.erb +0 -6
  712. data/app/views/resource/_empty_card.html.erb +0 -12
  713. data/app/views/resource/_form.html.erb +0 -32
  714. data/app/views/resource/_header.html.erb +0 -8
  715. data/app/views/resource/_messages.html.erb +0 -1
  716. data/app/views/resource/_pagination.html.erb +0 -6
  717. data/app/views/resource/_pagy_pagination.html.erb +0 -15
  718. data/app/views/resource/_resource.html.erb +0 -1
  719. data/app/views/resource/_sidebar.html.erb +0 -11
  720. data/app/views/resource/_sidebar_menu.html.erb +0 -1
  721. data/app/views/resource/_table.html.erb +0 -78
  722. data/app/views/resource/_table_actions.html.erb +0 -15
  723. data/app/views/resource/_toolbar.html.erb +0 -22
  724. data/app/views/resource/_toolbar_actions.html.erb +0 -16
  725. data/app/views/resource/_toolbar_breadcrumbs.html.erb +0 -32
  726. data/app/views/resource/_toolbar_search_input.erb +0 -27
  727. data/lib/generators/pu/resource/model/model_generator.rb +0 -163
  728. data/lib/generators/pu/resource/scaffold/scaffold_generator.rb +0 -219
  729. data/lib/generators/pu/resource/scaffold/templates/app/controllers/admin_resources/resource_controller.rb.tt +0 -7
  730. data/lib/generators/pu/resource/scaffold/templates/app/controllers/entity_resources/resource_controller.rb.tt +0 -7
  731. data/lib/generators/pu/resource/scaffold/templates/app/policies/resources/admin/resource_policy.rb.tt +0 -22
  732. data/lib/generators/pu/resource/scaffold/templates/app/policies/resources/entity/resource_policy.rb.tt +0 -22
  733. data/lib/generators/pu/resource/scaffold/templates/app/policies/resources/resource_policy.rb.tt +0 -13
  734. data/lib/generators/pu/resource/scaffold/templates/app/resources/resource/admin_presenter.rb.tt +0 -7
  735. data/lib/generators/pu/resource/scaffold/templates/app/resources/resource/entity_presenter.rb.tt +0 -7
  736. data/lib/generators/pu/resource/scaffold/templates/app/resources/resource/presenter.rb.tt +0 -23
  737. data/lib/generators/pu/resource/scaffold/templates/app/views/resources/resource/_resource.html.erb.tt +0 -3
  738. data/lib/generators/pu/resource/scaffold/templates/app/views/resources/resource/_resource.rabl +0 -7
  739. data/lib/generators/pu/rodauth/templates/app/views/rodauth/_email_auth_request_form.html.erb +0 -7
  740. data/lib/generators/pu/rodauth/templates/app/views/rodauth/_login_form.html.erb +0 -26
  741. data/lib/generators/pu/rodauth/templates/app/views/rodauth/_login_form_footer.html.erb +0 -9
  742. data/lib/generators/pu/rodauth/templates/app/views/rodauth/add_recovery_codes.html.erb +0 -6
  743. data/lib/generators/pu/rodauth/templates/app/views/rodauth/change_login.html.erb +0 -27
  744. data/lib/generators/pu/rodauth/templates/app/views/rodauth/change_password.html.erb +0 -27
  745. data/lib/generators/pu/rodauth/templates/app/views/rodauth/close_account.html.erb +0 -13
  746. data/lib/generators/pu/rodauth/templates/app/views/rodauth/confirm_password.html.erb +0 -11
  747. data/lib/generators/pu/rodauth/templates/app/views/rodauth/create_account.html.erb +0 -35
  748. data/lib/generators/pu/rodauth/templates/app/views/rodauth/email_auth.html.erb +0 -5
  749. data/lib/generators/pu/rodauth/templates/app/views/rodauth/login.html.erb +0 -4
  750. data/lib/generators/pu/rodauth/templates/app/views/rodauth/logout.html.erb +0 -14
  751. data/lib/generators/pu/rodauth/templates/app/views/rodauth/multi_phase_login.html.erb +0 -3
  752. data/lib/generators/pu/rodauth/templates/app/views/rodauth/otp_auth.html.erb +0 -15
  753. data/lib/generators/pu/rodauth/templates/app/views/rodauth/otp_disable.html.erb +0 -13
  754. data/lib/generators/pu/rodauth/templates/app/views/rodauth/otp_setup.html.erb +0 -41
  755. data/lib/generators/pu/rodauth/templates/app/views/rodauth/recovery_auth.html.erb +0 -11
  756. data/lib/generators/pu/rodauth/templates/app/views/rodauth/recovery_codes.html.erb +0 -13
  757. data/lib/generators/pu/rodauth/templates/app/views/rodauth/remember.html.erb +0 -22
  758. data/lib/generators/pu/rodauth/templates/app/views/rodauth/reset_password.html.erb +0 -19
  759. data/lib/generators/pu/rodauth/templates/app/views/rodauth/reset_password_request.html.erb +0 -17
  760. data/lib/generators/pu/rodauth/templates/app/views/rodauth/sms_auth.html.erb +0 -15
  761. data/lib/generators/pu/rodauth/templates/app/views/rodauth/sms_confirm.html.erb +0 -15
  762. data/lib/generators/pu/rodauth/templates/app/views/rodauth/sms_disable.html.erb +0 -13
  763. data/lib/generators/pu/rodauth/templates/app/views/rodauth/sms_request.html.erb +0 -5
  764. data/lib/generators/pu/rodauth/templates/app/views/rodauth/sms_setup.html.erb +0 -23
  765. data/lib/generators/pu/rodauth/templates/app/views/rodauth/two_factor_auth.html.erb +0 -5
  766. data/lib/generators/pu/rodauth/templates/app/views/rodauth/two_factor_disable.html.erb +0 -13
  767. data/lib/generators/pu/rodauth/templates/app/views/rodauth/two_factor_manage.html.erb +0 -22
  768. data/lib/generators/pu/rodauth/templates/app/views/rodauth/unlock_account.html.erb +0 -15
  769. data/lib/generators/pu/rodauth/templates/app/views/rodauth/unlock_account_request.html.erb +0 -9
  770. data/lib/generators/pu/rodauth/templates/app/views/rodauth/verify_account.html.erb +0 -21
  771. data/lib/generators/pu/rodauth/templates/app/views/rodauth/verify_account_resend.html.erb +0 -17
  772. data/lib/generators/pu/rodauth/templates/app/views/rodauth/verify_login_change.html.erb +0 -5
  773. data/lib/generators/pu/rodauth/templates/app/views/rodauth/webauthn_auth.html.erb +0 -15
  774. data/lib/generators/pu/rodauth/templates/app/views/rodauth/webauthn_autofill.html.erb +0 -10
  775. data/lib/generators/pu/rodauth/templates/app/views/rodauth/webauthn_remove.html.erb +0 -23
  776. data/lib/generators/pu/rodauth/templates/app/views/rodauth/webauthn_setup.html.erb +0 -23
  777. data/lib/plutonium/core/actions.rb +0 -17
  778. data/lib/plutonium/core/app_controller.rb +0 -121
  779. data/lib/plutonium/core/autodiscovery.rb +0 -13
  780. data/lib/plutonium/core/controllers.rb +0 -16
  781. data/lib/plutonium/core/definers.rb +0 -14
  782. data/lib/plutonium/core/fields/inputs.rb +0 -20
  783. data/lib/plutonium/core/fields/renderers.rb +0 -16
  784. data/lib/plutonium/core/fields.rb +0 -12
  785. data/lib/plutonium/core/ui.rb +0 -13
  786. data/lib/plutonium/core.rb +0 -16
  787. data/lib/plutonium/helpers/menu_helper.rb +0 -69
  788. data/lib/plutonium/helpers/pagination_helper.rb +0 -9
  789. data/lib/plutonium/initializers/TODO +0 -2
  790. data/lib/plutonium/initializers/patches.rb +0 -2
  791. data/lib/plutonium/initializers/simple_form.rb +0 -405
  792. data/lib/plutonium/packaging.rb +0 -9
  793. data/lib/plutonium/policy.rb +0 -8
  794. data/lib/plutonium/reactor/resource_context.rb +0 -5
  795. data/lib/plutonium/reactor/resource_controller.rb +0 -131
  796. data/lib/plutonium/reactor/resource_interaction.rb +0 -8
  797. data/lib/plutonium/reactor.rb +0 -14
  798. /data/app/views/{resource/_flash.html.erb → application/_flash_alerts.html.erb} +0 -0
  799. /data/app/views/{resource/_toast.html.erb → application/_flash_toasts.html.erb} +0 -0
  800. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/_email_auth_request_form.html.erb +0 -0
  801. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/_login_form.html.erb +0 -0
  802. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/_login_form_footer.html.erb +0 -0
  803. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/add_recovery_codes.html.erb +0 -0
  804. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/change_login.html.erb +0 -0
  805. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/change_password.html.erb +0 -0
  806. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/close_account.html.erb +0 -0
  807. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/confirm_password.html.erb +0 -0
  808. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/create_account.html.erb +0 -0
  809. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/email_auth.html.erb +0 -0
  810. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/login.html.erb +0 -0
  811. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/logout.html.erb +0 -0
  812. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/multi_phase_login.html.erb +0 -0
  813. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/otp_auth.html.erb +0 -0
  814. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/otp_disable.html.erb +0 -0
  815. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/otp_setup.html.erb +0 -0
  816. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/recovery_auth.html.erb +0 -0
  817. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/recovery_codes.html.erb +0 -0
  818. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/remember.html.erb +0 -0
  819. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/reset_password.html.erb +0 -0
  820. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/reset_password_request.html.erb +0 -0
  821. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/sms_auth.html.erb +0 -0
  822. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/sms_confirm.html.erb +0 -0
  823. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/sms_disable.html.erb +0 -0
  824. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/sms_request.html.erb +0 -0
  825. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/sms_setup.html.erb +0 -0
  826. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/two_factor_auth.html.erb +0 -0
  827. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/two_factor_disable.html.erb +0 -0
  828. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/two_factor_manage.html.erb +0 -0
  829. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/unlock_account.html.erb +0 -0
  830. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/unlock_account_request.html.erb +0 -0
  831. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/verify_account.html.erb +0 -0
  832. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/verify_account_resend.html.erb +0 -0
  833. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/verify_login_change.html.erb +0 -0
  834. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/webauthn_auth.html.erb +0 -0
  835. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/webauthn_autofill.html.erb +0 -0
  836. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/webauthn_remove.html.erb +0 -0
  837. /data/{lib/generators/pu/rodauth/templates/app/views/rodauth/tailwind → app/views/rodauth}/webauthn_setup.html.erb +0 -0
  838. /data/{lib/plutonium → config}/initializers/rabl.rb +0 -0
  839. /data/lib/generators/pu/{resource/conn/templates → pkg/app/templates/app/views/package}/.keep +0 -0
  840. /data/lib/generators/pu/{resource → res}/conn/templates/app/policies/resource_policy.rb.tt +0 -0
  841. /data/lib/generators/pu/{resource → res}/conn/templates/app/presenters/resource_presenter.rb.tt +0 -0
  842. /data/lib/generators/pu/{resource → res}/model/USAGE +0 -0
  843. /data/lib/generators/pu/{resource → res}/model/templates/create_table_migration.rb.tt +0 -0
  844. /data/lib/generators/pu/{resource → res}/model/templates/module.rb.tt +0 -0
  845. /data/lib/generators/pu/{resource/model → res/scaffold}/templates/controller.rb.tt +0 -0
data/package-lock.json ADDED
@@ -0,0 +1,2523 @@
1
+ {
2
+ "name": "plutonium",
3
+ "lockfileVersion": 3,
4
+ "requires": true,
5
+ "packages": {
6
+ "": {
7
+ "devDependencies": {
8
+ "@hotwired/stimulus": "^3.2.2",
9
+ "@hotwired/turbo": "^8.0.4",
10
+ "@tailwindcss/forms": "^0.5.7",
11
+ "autoprefixer": "^10.4.18",
12
+ "esbuild": "^0.20.1",
13
+ "esbuild-plugin-manifest": "^1.0.3",
14
+ "flowbite": "^2.3.0",
15
+ "lodash.debounce": "^4.0.8",
16
+ "postcss": "^8.4.35",
17
+ "postcss-cli": "^11.0.0",
18
+ "postcss-hash": "^3.0.0",
19
+ "tailwindcss": "^3.4.1"
20
+ }
21
+ },
22
+ "node_modules/@alloc/quick-lru": {
23
+ "version": "5.2.0",
24
+ "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz",
25
+ "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==",
26
+ "dev": true,
27
+ "engines": {
28
+ "node": ">=10"
29
+ },
30
+ "funding": {
31
+ "url": "https://github.com/sponsors/sindresorhus"
32
+ }
33
+ },
34
+ "node_modules/@esbuild/aix-ppc64": {
35
+ "version": "0.20.1",
36
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.1.tgz",
37
+ "integrity": "sha512-m55cpeupQ2DbuRGQMMZDzbv9J9PgVelPjlcmM5kxHnrBdBx6REaEd7LamYV7Dm8N7rCyR/XwU6rVP8ploKtIkA==",
38
+ "cpu": [
39
+ "ppc64"
40
+ ],
41
+ "dev": true,
42
+ "optional": true,
43
+ "os": [
44
+ "aix"
45
+ ],
46
+ "engines": {
47
+ "node": ">=12"
48
+ }
49
+ },
50
+ "node_modules/@esbuild/android-arm": {
51
+ "version": "0.20.1",
52
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.1.tgz",
53
+ "integrity": "sha512-4j0+G27/2ZXGWR5okcJi7pQYhmkVgb4D7UKwxcqrjhvp5TKWx3cUjgB1CGj1mfdmJBQ9VnUGgUhign+FPF2Zgw==",
54
+ "cpu": [
55
+ "arm"
56
+ ],
57
+ "dev": true,
58
+ "optional": true,
59
+ "os": [
60
+ "android"
61
+ ],
62
+ "engines": {
63
+ "node": ">=12"
64
+ }
65
+ },
66
+ "node_modules/@esbuild/android-arm64": {
67
+ "version": "0.20.1",
68
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.1.tgz",
69
+ "integrity": "sha512-hCnXNF0HM6AjowP+Zou0ZJMWWa1VkD77BXe959zERgGJBBxB+sV+J9f/rcjeg2c5bsukD/n17RKWXGFCO5dD5A==",
70
+ "cpu": [
71
+ "arm64"
72
+ ],
73
+ "dev": true,
74
+ "optional": true,
75
+ "os": [
76
+ "android"
77
+ ],
78
+ "engines": {
79
+ "node": ">=12"
80
+ }
81
+ },
82
+ "node_modules/@esbuild/android-x64": {
83
+ "version": "0.20.1",
84
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.1.tgz",
85
+ "integrity": "sha512-MSfZMBoAsnhpS+2yMFYIQUPs8Z19ajwfuaSZx+tSl09xrHZCjbeXXMsUF/0oq7ojxYEpsSo4c0SfjxOYXRbpaA==",
86
+ "cpu": [
87
+ "x64"
88
+ ],
89
+ "dev": true,
90
+ "optional": true,
91
+ "os": [
92
+ "android"
93
+ ],
94
+ "engines": {
95
+ "node": ">=12"
96
+ }
97
+ },
98
+ "node_modules/@esbuild/darwin-arm64": {
99
+ "version": "0.20.1",
100
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.1.tgz",
101
+ "integrity": "sha512-Ylk6rzgMD8klUklGPzS414UQLa5NPXZD5tf8JmQU8GQrj6BrFA/Ic9tb2zRe1kOZyCbGl+e8VMbDRazCEBqPvA==",
102
+ "cpu": [
103
+ "arm64"
104
+ ],
105
+ "dev": true,
106
+ "optional": true,
107
+ "os": [
108
+ "darwin"
109
+ ],
110
+ "engines": {
111
+ "node": ">=12"
112
+ }
113
+ },
114
+ "node_modules/@esbuild/darwin-x64": {
115
+ "version": "0.20.1",
116
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.1.tgz",
117
+ "integrity": "sha512-pFIfj7U2w5sMp52wTY1XVOdoxw+GDwy9FsK3OFz4BpMAjvZVs0dT1VXs8aQm22nhwoIWUmIRaE+4xow8xfIDZA==",
118
+ "cpu": [
119
+ "x64"
120
+ ],
121
+ "dev": true,
122
+ "optional": true,
123
+ "os": [
124
+ "darwin"
125
+ ],
126
+ "engines": {
127
+ "node": ">=12"
128
+ }
129
+ },
130
+ "node_modules/@esbuild/freebsd-arm64": {
131
+ "version": "0.20.1",
132
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.1.tgz",
133
+ "integrity": "sha512-UyW1WZvHDuM4xDz0jWun4qtQFauNdXjXOtIy7SYdf7pbxSWWVlqhnR/T2TpX6LX5NI62spt0a3ldIIEkPM6RHw==",
134
+ "cpu": [
135
+ "arm64"
136
+ ],
137
+ "dev": true,
138
+ "optional": true,
139
+ "os": [
140
+ "freebsd"
141
+ ],
142
+ "engines": {
143
+ "node": ">=12"
144
+ }
145
+ },
146
+ "node_modules/@esbuild/freebsd-x64": {
147
+ "version": "0.20.1",
148
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.1.tgz",
149
+ "integrity": "sha512-itPwCw5C+Jh/c624vcDd9kRCCZVpzpQn8dtwoYIt2TJF3S9xJLiRohnnNrKwREvcZYx0n8sCSbvGH349XkcQeg==",
150
+ "cpu": [
151
+ "x64"
152
+ ],
153
+ "dev": true,
154
+ "optional": true,
155
+ "os": [
156
+ "freebsd"
157
+ ],
158
+ "engines": {
159
+ "node": ">=12"
160
+ }
161
+ },
162
+ "node_modules/@esbuild/linux-arm": {
163
+ "version": "0.20.1",
164
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.1.tgz",
165
+ "integrity": "sha512-LojC28v3+IhIbfQ+Vu4Ut5n3wKcgTu6POKIHN9Wpt0HnfgUGlBuyDDQR4jWZUZFyYLiz4RBBBmfU6sNfn6RhLw==",
166
+ "cpu": [
167
+ "arm"
168
+ ],
169
+ "dev": true,
170
+ "optional": true,
171
+ "os": [
172
+ "linux"
173
+ ],
174
+ "engines": {
175
+ "node": ">=12"
176
+ }
177
+ },
178
+ "node_modules/@esbuild/linux-arm64": {
179
+ "version": "0.20.1",
180
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.1.tgz",
181
+ "integrity": "sha512-cX8WdlF6Cnvw/DO9/X7XLH2J6CkBnz7Twjpk56cshk9sjYVcuh4sXQBy5bmTwzBjNVZze2yaV1vtcJS04LbN8w==",
182
+ "cpu": [
183
+ "arm64"
184
+ ],
185
+ "dev": true,
186
+ "optional": true,
187
+ "os": [
188
+ "linux"
189
+ ],
190
+ "engines": {
191
+ "node": ">=12"
192
+ }
193
+ },
194
+ "node_modules/@esbuild/linux-ia32": {
195
+ "version": "0.20.1",
196
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.1.tgz",
197
+ "integrity": "sha512-4H/sQCy1mnnGkUt/xszaLlYJVTz3W9ep52xEefGtd6yXDQbz/5fZE5dFLUgsPdbUOQANcVUa5iO6g3nyy5BJiw==",
198
+ "cpu": [
199
+ "ia32"
200
+ ],
201
+ "dev": true,
202
+ "optional": true,
203
+ "os": [
204
+ "linux"
205
+ ],
206
+ "engines": {
207
+ "node": ">=12"
208
+ }
209
+ },
210
+ "node_modules/@esbuild/linux-loong64": {
211
+ "version": "0.20.1",
212
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.1.tgz",
213
+ "integrity": "sha512-c0jgtB+sRHCciVXlyjDcWb2FUuzlGVRwGXgI+3WqKOIuoo8AmZAddzeOHeYLtD+dmtHw3B4Xo9wAUdjlfW5yYA==",
214
+ "cpu": [
215
+ "loong64"
216
+ ],
217
+ "dev": true,
218
+ "optional": true,
219
+ "os": [
220
+ "linux"
221
+ ],
222
+ "engines": {
223
+ "node": ">=12"
224
+ }
225
+ },
226
+ "node_modules/@esbuild/linux-mips64el": {
227
+ "version": "0.20.1",
228
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.1.tgz",
229
+ "integrity": "sha512-TgFyCfIxSujyuqdZKDZ3yTwWiGv+KnlOeXXitCQ+trDODJ+ZtGOzLkSWngynP0HZnTsDyBbPy7GWVXWaEl6lhA==",
230
+ "cpu": [
231
+ "mips64el"
232
+ ],
233
+ "dev": true,
234
+ "optional": true,
235
+ "os": [
236
+ "linux"
237
+ ],
238
+ "engines": {
239
+ "node": ">=12"
240
+ }
241
+ },
242
+ "node_modules/@esbuild/linux-ppc64": {
243
+ "version": "0.20.1",
244
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.1.tgz",
245
+ "integrity": "sha512-b+yuD1IUeL+Y93PmFZDZFIElwbmFfIKLKlYI8M6tRyzE6u7oEP7onGk0vZRh8wfVGC2dZoy0EqX1V8qok4qHaw==",
246
+ "cpu": [
247
+ "ppc64"
248
+ ],
249
+ "dev": true,
250
+ "optional": true,
251
+ "os": [
252
+ "linux"
253
+ ],
254
+ "engines": {
255
+ "node": ">=12"
256
+ }
257
+ },
258
+ "node_modules/@esbuild/linux-riscv64": {
259
+ "version": "0.20.1",
260
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.1.tgz",
261
+ "integrity": "sha512-wpDlpE0oRKZwX+GfomcALcouqjjV8MIX8DyTrxfyCfXxoKQSDm45CZr9fanJ4F6ckD4yDEPT98SrjvLwIqUCgg==",
262
+ "cpu": [
263
+ "riscv64"
264
+ ],
265
+ "dev": true,
266
+ "optional": true,
267
+ "os": [
268
+ "linux"
269
+ ],
270
+ "engines": {
271
+ "node": ">=12"
272
+ }
273
+ },
274
+ "node_modules/@esbuild/linux-s390x": {
275
+ "version": "0.20.1",
276
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.1.tgz",
277
+ "integrity": "sha512-5BepC2Au80EohQ2dBpyTquqGCES7++p7G+7lXe1bAIvMdXm4YYcEfZtQrP4gaoZ96Wv1Ute61CEHFU7h4FMueQ==",
278
+ "cpu": [
279
+ "s390x"
280
+ ],
281
+ "dev": true,
282
+ "optional": true,
283
+ "os": [
284
+ "linux"
285
+ ],
286
+ "engines": {
287
+ "node": ">=12"
288
+ }
289
+ },
290
+ "node_modules/@esbuild/linux-x64": {
291
+ "version": "0.20.1",
292
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.1.tgz",
293
+ "integrity": "sha512-5gRPk7pKuaIB+tmH+yKd2aQTRpqlf1E4f/mC+tawIm/CGJemZcHZpp2ic8oD83nKgUPMEd0fNanrnFljiruuyA==",
294
+ "cpu": [
295
+ "x64"
296
+ ],
297
+ "dev": true,
298
+ "optional": true,
299
+ "os": [
300
+ "linux"
301
+ ],
302
+ "engines": {
303
+ "node": ">=12"
304
+ }
305
+ },
306
+ "node_modules/@esbuild/netbsd-x64": {
307
+ "version": "0.20.1",
308
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.1.tgz",
309
+ "integrity": "sha512-4fL68JdrLV2nVW2AaWZBv3XEm3Ae3NZn/7qy2KGAt3dexAgSVT+Hc97JKSZnqezgMlv9x6KV0ZkZY7UO5cNLCg==",
310
+ "cpu": [
311
+ "x64"
312
+ ],
313
+ "dev": true,
314
+ "optional": true,
315
+ "os": [
316
+ "netbsd"
317
+ ],
318
+ "engines": {
319
+ "node": ">=12"
320
+ }
321
+ },
322
+ "node_modules/@esbuild/openbsd-x64": {
323
+ "version": "0.20.1",
324
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.1.tgz",
325
+ "integrity": "sha512-GhRuXlvRE+twf2ES+8REbeCb/zeikNqwD3+6S5y5/x+DYbAQUNl0HNBs4RQJqrechS4v4MruEr8ZtAin/hK5iw==",
326
+ "cpu": [
327
+ "x64"
328
+ ],
329
+ "dev": true,
330
+ "optional": true,
331
+ "os": [
332
+ "openbsd"
333
+ ],
334
+ "engines": {
335
+ "node": ">=12"
336
+ }
337
+ },
338
+ "node_modules/@esbuild/sunos-x64": {
339
+ "version": "0.20.1",
340
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.1.tgz",
341
+ "integrity": "sha512-ZnWEyCM0G1Ex6JtsygvC3KUUrlDXqOihw8RicRuQAzw+c4f1D66YlPNNV3rkjVW90zXVsHwZYWbJh3v+oQFM9Q==",
342
+ "cpu": [
343
+ "x64"
344
+ ],
345
+ "dev": true,
346
+ "optional": true,
347
+ "os": [
348
+ "sunos"
349
+ ],
350
+ "engines": {
351
+ "node": ">=12"
352
+ }
353
+ },
354
+ "node_modules/@esbuild/win32-arm64": {
355
+ "version": "0.20.1",
356
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.1.tgz",
357
+ "integrity": "sha512-QZ6gXue0vVQY2Oon9WyLFCdSuYbXSoxaZrPuJ4c20j6ICedfsDilNPYfHLlMH7vGfU5DQR0czHLmJvH4Nzis/A==",
358
+ "cpu": [
359
+ "arm64"
360
+ ],
361
+ "dev": true,
362
+ "optional": true,
363
+ "os": [
364
+ "win32"
365
+ ],
366
+ "engines": {
367
+ "node": ">=12"
368
+ }
369
+ },
370
+ "node_modules/@esbuild/win32-ia32": {
371
+ "version": "0.20.1",
372
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.1.tgz",
373
+ "integrity": "sha512-HzcJa1NcSWTAU0MJIxOho8JftNp9YALui3o+Ny7hCh0v5f90nprly1U3Sj1Ldj/CvKKdvvFsCRvDkpsEMp4DNw==",
374
+ "cpu": [
375
+ "ia32"
376
+ ],
377
+ "dev": true,
378
+ "optional": true,
379
+ "os": [
380
+ "win32"
381
+ ],
382
+ "engines": {
383
+ "node": ">=12"
384
+ }
385
+ },
386
+ "node_modules/@esbuild/win32-x64": {
387
+ "version": "0.20.1",
388
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.1.tgz",
389
+ "integrity": "sha512-0MBh53o6XtI6ctDnRMeQ+xoCN8kD2qI1rY1KgF/xdWQwoFeKou7puvDfV8/Wv4Ctx2rRpET/gGdz3YlNtNACSA==",
390
+ "cpu": [
391
+ "x64"
392
+ ],
393
+ "dev": true,
394
+ "optional": true,
395
+ "os": [
396
+ "win32"
397
+ ],
398
+ "engines": {
399
+ "node": ">=12"
400
+ }
401
+ },
402
+ "node_modules/@hotwired/stimulus": {
403
+ "version": "3.2.2",
404
+ "resolved": "https://registry.npmjs.org/@hotwired/stimulus/-/stimulus-3.2.2.tgz",
405
+ "integrity": "sha512-eGeIqNOQpXoPAIP7tC1+1Yc1yl1xnwYqg+3mzqxyrbE5pg5YFBZcA6YoTiByJB6DKAEsiWtl6tjTJS4IYtbB7A==",
406
+ "dev": true
407
+ },
408
+ "node_modules/@hotwired/turbo": {
409
+ "version": "8.0.4",
410
+ "resolved": "https://registry.npmjs.org/@hotwired/turbo/-/turbo-8.0.4.tgz",
411
+ "integrity": "sha512-mlZEFUZrJnpfj+g/XeCWWuokvQyN68WvM78JM+0jfSFc98wegm259vCbC1zSllcspRwbgXK31ibehCy5PA78/Q==",
412
+ "dev": true,
413
+ "engines": {
414
+ "node": ">= 14"
415
+ }
416
+ },
417
+ "node_modules/@isaacs/cliui": {
418
+ "version": "8.0.2",
419
+ "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
420
+ "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
421
+ "dev": true,
422
+ "dependencies": {
423
+ "string-width": "^5.1.2",
424
+ "string-width-cjs": "npm:string-width@^4.2.0",
425
+ "strip-ansi": "^7.0.1",
426
+ "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
427
+ "wrap-ansi": "^8.1.0",
428
+ "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
429
+ },
430
+ "engines": {
431
+ "node": ">=12"
432
+ }
433
+ },
434
+ "node_modules/@jridgewell/gen-mapping": {
435
+ "version": "0.3.5",
436
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
437
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
438
+ "dev": true,
439
+ "dependencies": {
440
+ "@jridgewell/set-array": "^1.2.1",
441
+ "@jridgewell/sourcemap-codec": "^1.4.10",
442
+ "@jridgewell/trace-mapping": "^0.3.24"
443
+ },
444
+ "engines": {
445
+ "node": ">=6.0.0"
446
+ }
447
+ },
448
+ "node_modules/@jridgewell/resolve-uri": {
449
+ "version": "3.1.2",
450
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
451
+ "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
452
+ "dev": true,
453
+ "engines": {
454
+ "node": ">=6.0.0"
455
+ }
456
+ },
457
+ "node_modules/@jridgewell/set-array": {
458
+ "version": "1.2.1",
459
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
460
+ "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
461
+ "dev": true,
462
+ "engines": {
463
+ "node": ">=6.0.0"
464
+ }
465
+ },
466
+ "node_modules/@jridgewell/sourcemap-codec": {
467
+ "version": "1.4.15",
468
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
469
+ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
470
+ "dev": true
471
+ },
472
+ "node_modules/@jridgewell/trace-mapping": {
473
+ "version": "0.3.25",
474
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
475
+ "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
476
+ "dev": true,
477
+ "dependencies": {
478
+ "@jridgewell/resolve-uri": "^3.1.0",
479
+ "@jridgewell/sourcemap-codec": "^1.4.14"
480
+ }
481
+ },
482
+ "node_modules/@nodelib/fs.scandir": {
483
+ "version": "2.1.5",
484
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
485
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
486
+ "dev": true,
487
+ "dependencies": {
488
+ "@nodelib/fs.stat": "2.0.5",
489
+ "run-parallel": "^1.1.9"
490
+ },
491
+ "engines": {
492
+ "node": ">= 8"
493
+ }
494
+ },
495
+ "node_modules/@nodelib/fs.stat": {
496
+ "version": "2.0.5",
497
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
498
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
499
+ "dev": true,
500
+ "engines": {
501
+ "node": ">= 8"
502
+ }
503
+ },
504
+ "node_modules/@nodelib/fs.walk": {
505
+ "version": "1.2.8",
506
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
507
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
508
+ "dev": true,
509
+ "dependencies": {
510
+ "@nodelib/fs.scandir": "2.1.5",
511
+ "fastq": "^1.6.0"
512
+ },
513
+ "engines": {
514
+ "node": ">= 8"
515
+ }
516
+ },
517
+ "node_modules/@pkgjs/parseargs": {
518
+ "version": "0.11.0",
519
+ "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
520
+ "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
521
+ "dev": true,
522
+ "optional": true,
523
+ "engines": {
524
+ "node": ">=14"
525
+ }
526
+ },
527
+ "node_modules/@popperjs/core": {
528
+ "version": "2.11.8",
529
+ "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
530
+ "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==",
531
+ "dev": true,
532
+ "funding": {
533
+ "type": "opencollective",
534
+ "url": "https://opencollective.com/popperjs"
535
+ }
536
+ },
537
+ "node_modules/@sindresorhus/merge-streams": {
538
+ "version": "2.3.0",
539
+ "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz",
540
+ "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==",
541
+ "dev": true,
542
+ "engines": {
543
+ "node": ">=18"
544
+ },
545
+ "funding": {
546
+ "url": "https://github.com/sponsors/sindresorhus"
547
+ }
548
+ },
549
+ "node_modules/@tailwindcss/forms": {
550
+ "version": "0.5.7",
551
+ "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.7.tgz",
552
+ "integrity": "sha512-QE7X69iQI+ZXwldE+rzasvbJiyV/ju1FGHH0Qn2W3FKbuYtqp8LKcy6iSw79fVUT5/Vvf+0XgLCeYVG+UV6hOw==",
553
+ "dev": true,
554
+ "dependencies": {
555
+ "mini-svg-data-uri": "^1.2.3"
556
+ },
557
+ "peerDependencies": {
558
+ "tailwindcss": ">=3.0.0 || >= 3.0.0-alpha.1"
559
+ }
560
+ },
561
+ "node_modules/ansi-regex": {
562
+ "version": "6.0.1",
563
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
564
+ "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
565
+ "dev": true,
566
+ "engines": {
567
+ "node": ">=12"
568
+ },
569
+ "funding": {
570
+ "url": "https://github.com/chalk/ansi-regex?sponsor=1"
571
+ }
572
+ },
573
+ "node_modules/ansi-styles": {
574
+ "version": "6.2.1",
575
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
576
+ "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==",
577
+ "dev": true,
578
+ "engines": {
579
+ "node": ">=12"
580
+ },
581
+ "funding": {
582
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
583
+ }
584
+ },
585
+ "node_modules/any-promise": {
586
+ "version": "1.3.0",
587
+ "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
588
+ "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==",
589
+ "dev": true
590
+ },
591
+ "node_modules/anymatch": {
592
+ "version": "3.1.3",
593
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
594
+ "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
595
+ "dev": true,
596
+ "dependencies": {
597
+ "normalize-path": "^3.0.0",
598
+ "picomatch": "^2.0.4"
599
+ },
600
+ "engines": {
601
+ "node": ">= 8"
602
+ }
603
+ },
604
+ "node_modules/arg": {
605
+ "version": "5.0.2",
606
+ "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
607
+ "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==",
608
+ "dev": true
609
+ },
610
+ "node_modules/autoprefixer": {
611
+ "version": "10.4.18",
612
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.18.tgz",
613
+ "integrity": "sha512-1DKbDfsr6KUElM6wg+0zRNkB/Q7WcKYAaK+pzXn+Xqmszm/5Xa9coeNdtP88Vi+dPzZnMjhge8GIV49ZQkDa+g==",
614
+ "dev": true,
615
+ "funding": [
616
+ {
617
+ "type": "opencollective",
618
+ "url": "https://opencollective.com/postcss/"
619
+ },
620
+ {
621
+ "type": "tidelift",
622
+ "url": "https://tidelift.com/funding/github/npm/autoprefixer"
623
+ },
624
+ {
625
+ "type": "github",
626
+ "url": "https://github.com/sponsors/ai"
627
+ }
628
+ ],
629
+ "dependencies": {
630
+ "browserslist": "^4.23.0",
631
+ "caniuse-lite": "^1.0.30001591",
632
+ "fraction.js": "^4.3.7",
633
+ "normalize-range": "^0.1.2",
634
+ "picocolors": "^1.0.0",
635
+ "postcss-value-parser": "^4.2.0"
636
+ },
637
+ "bin": {
638
+ "autoprefixer": "bin/autoprefixer"
639
+ },
640
+ "engines": {
641
+ "node": "^10 || ^12 || >=14"
642
+ },
643
+ "peerDependencies": {
644
+ "postcss": "^8.1.0"
645
+ }
646
+ },
647
+ "node_modules/balanced-match": {
648
+ "version": "1.0.2",
649
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
650
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
651
+ "dev": true
652
+ },
653
+ "node_modules/binary-extensions": {
654
+ "version": "2.2.0",
655
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
656
+ "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
657
+ "dev": true,
658
+ "engines": {
659
+ "node": ">=8"
660
+ }
661
+ },
662
+ "node_modules/brace-expansion": {
663
+ "version": "2.0.1",
664
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
665
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
666
+ "dev": true,
667
+ "dependencies": {
668
+ "balanced-match": "^1.0.0"
669
+ }
670
+ },
671
+ "node_modules/braces": {
672
+ "version": "3.0.2",
673
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
674
+ "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
675
+ "dev": true,
676
+ "dependencies": {
677
+ "fill-range": "^7.0.1"
678
+ },
679
+ "engines": {
680
+ "node": ">=8"
681
+ }
682
+ },
683
+ "node_modules/browserslist": {
684
+ "version": "4.23.0",
685
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz",
686
+ "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==",
687
+ "dev": true,
688
+ "funding": [
689
+ {
690
+ "type": "opencollective",
691
+ "url": "https://opencollective.com/browserslist"
692
+ },
693
+ {
694
+ "type": "tidelift",
695
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
696
+ },
697
+ {
698
+ "type": "github",
699
+ "url": "https://github.com/sponsors/ai"
700
+ }
701
+ ],
702
+ "dependencies": {
703
+ "caniuse-lite": "^1.0.30001587",
704
+ "electron-to-chromium": "^1.4.668",
705
+ "node-releases": "^2.0.14",
706
+ "update-browserslist-db": "^1.0.13"
707
+ },
708
+ "bin": {
709
+ "browserslist": "cli.js"
710
+ },
711
+ "engines": {
712
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
713
+ }
714
+ },
715
+ "node_modules/camelcase-css": {
716
+ "version": "2.0.1",
717
+ "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
718
+ "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
719
+ "dev": true,
720
+ "engines": {
721
+ "node": ">= 6"
722
+ }
723
+ },
724
+ "node_modules/caniuse-lite": {
725
+ "version": "1.0.30001596",
726
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001596.tgz",
727
+ "integrity": "sha512-zpkZ+kEr6We7w63ORkoJ2pOfBwBkY/bJrG/UZ90qNb45Isblu8wzDgevEOrRL1r9dWayHjYiiyCMEXPn4DweGQ==",
728
+ "dev": true,
729
+ "funding": [
730
+ {
731
+ "type": "opencollective",
732
+ "url": "https://opencollective.com/browserslist"
733
+ },
734
+ {
735
+ "type": "tidelift",
736
+ "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
737
+ },
738
+ {
739
+ "type": "github",
740
+ "url": "https://github.com/sponsors/ai"
741
+ }
742
+ ]
743
+ },
744
+ "node_modules/chokidar": {
745
+ "version": "3.6.0",
746
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
747
+ "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
748
+ "dev": true,
749
+ "dependencies": {
750
+ "anymatch": "~3.1.2",
751
+ "braces": "~3.0.2",
752
+ "glob-parent": "~5.1.2",
753
+ "is-binary-path": "~2.1.0",
754
+ "is-glob": "~4.0.1",
755
+ "normalize-path": "~3.0.0",
756
+ "readdirp": "~3.6.0"
757
+ },
758
+ "engines": {
759
+ "node": ">= 8.10.0"
760
+ },
761
+ "funding": {
762
+ "url": "https://paulmillr.com/funding/"
763
+ },
764
+ "optionalDependencies": {
765
+ "fsevents": "~2.3.2"
766
+ }
767
+ },
768
+ "node_modules/chokidar/node_modules/glob-parent": {
769
+ "version": "5.1.2",
770
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
771
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
772
+ "dev": true,
773
+ "dependencies": {
774
+ "is-glob": "^4.0.1"
775
+ },
776
+ "engines": {
777
+ "node": ">= 6"
778
+ }
779
+ },
780
+ "node_modules/cliui": {
781
+ "version": "8.0.1",
782
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
783
+ "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
784
+ "dev": true,
785
+ "dependencies": {
786
+ "string-width": "^4.2.0",
787
+ "strip-ansi": "^6.0.1",
788
+ "wrap-ansi": "^7.0.0"
789
+ },
790
+ "engines": {
791
+ "node": ">=12"
792
+ }
793
+ },
794
+ "node_modules/cliui/node_modules/ansi-regex": {
795
+ "version": "5.0.1",
796
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
797
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
798
+ "dev": true,
799
+ "engines": {
800
+ "node": ">=8"
801
+ }
802
+ },
803
+ "node_modules/cliui/node_modules/ansi-styles": {
804
+ "version": "4.3.0",
805
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
806
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
807
+ "dev": true,
808
+ "dependencies": {
809
+ "color-convert": "^2.0.1"
810
+ },
811
+ "engines": {
812
+ "node": ">=8"
813
+ },
814
+ "funding": {
815
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
816
+ }
817
+ },
818
+ "node_modules/cliui/node_modules/emoji-regex": {
819
+ "version": "8.0.0",
820
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
821
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
822
+ "dev": true
823
+ },
824
+ "node_modules/cliui/node_modules/string-width": {
825
+ "version": "4.2.3",
826
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
827
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
828
+ "dev": true,
829
+ "dependencies": {
830
+ "emoji-regex": "^8.0.0",
831
+ "is-fullwidth-code-point": "^3.0.0",
832
+ "strip-ansi": "^6.0.1"
833
+ },
834
+ "engines": {
835
+ "node": ">=8"
836
+ }
837
+ },
838
+ "node_modules/cliui/node_modules/strip-ansi": {
839
+ "version": "6.0.1",
840
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
841
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
842
+ "dev": true,
843
+ "dependencies": {
844
+ "ansi-regex": "^5.0.1"
845
+ },
846
+ "engines": {
847
+ "node": ">=8"
848
+ }
849
+ },
850
+ "node_modules/cliui/node_modules/wrap-ansi": {
851
+ "version": "7.0.0",
852
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
853
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
854
+ "dev": true,
855
+ "dependencies": {
856
+ "ansi-styles": "^4.0.0",
857
+ "string-width": "^4.1.0",
858
+ "strip-ansi": "^6.0.0"
859
+ },
860
+ "engines": {
861
+ "node": ">=10"
862
+ },
863
+ "funding": {
864
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
865
+ }
866
+ },
867
+ "node_modules/color-convert": {
868
+ "version": "2.0.1",
869
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
870
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
871
+ "dev": true,
872
+ "dependencies": {
873
+ "color-name": "~1.1.4"
874
+ },
875
+ "engines": {
876
+ "node": ">=7.0.0"
877
+ }
878
+ },
879
+ "node_modules/color-name": {
880
+ "version": "1.1.4",
881
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
882
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
883
+ "dev": true
884
+ },
885
+ "node_modules/commander": {
886
+ "version": "4.1.1",
887
+ "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz",
888
+ "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==",
889
+ "dev": true,
890
+ "engines": {
891
+ "node": ">= 6"
892
+ }
893
+ },
894
+ "node_modules/cross-spawn": {
895
+ "version": "7.0.3",
896
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
897
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
898
+ "dev": true,
899
+ "dependencies": {
900
+ "path-key": "^3.1.0",
901
+ "shebang-command": "^2.0.0",
902
+ "which": "^2.0.1"
903
+ },
904
+ "engines": {
905
+ "node": ">= 8"
906
+ }
907
+ },
908
+ "node_modules/cssesc": {
909
+ "version": "3.0.0",
910
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
911
+ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
912
+ "dev": true,
913
+ "bin": {
914
+ "cssesc": "bin/cssesc"
915
+ },
916
+ "engines": {
917
+ "node": ">=4"
918
+ }
919
+ },
920
+ "node_modules/dependency-graph": {
921
+ "version": "0.11.0",
922
+ "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz",
923
+ "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==",
924
+ "dev": true,
925
+ "engines": {
926
+ "node": ">= 0.6.0"
927
+ }
928
+ },
929
+ "node_modules/didyoumean": {
930
+ "version": "1.2.2",
931
+ "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
932
+ "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
933
+ "dev": true
934
+ },
935
+ "node_modules/dlv": {
936
+ "version": "1.1.3",
937
+ "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
938
+ "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
939
+ "dev": true
940
+ },
941
+ "node_modules/eastasianwidth": {
942
+ "version": "0.2.0",
943
+ "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
944
+ "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
945
+ "dev": true
946
+ },
947
+ "node_modules/electron-to-chromium": {
948
+ "version": "1.4.695",
949
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.695.tgz",
950
+ "integrity": "sha512-eMijZmeqPtm774pCZIOrfUHMs/7ls++W1sLhxwqgu8KQ8E2WmMtzwyqOMt0XXUJ3HTIPfuwlfwF+I5cwnfItBA==",
951
+ "dev": true
952
+ },
953
+ "node_modules/emoji-regex": {
954
+ "version": "9.2.2",
955
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
956
+ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
957
+ "dev": true
958
+ },
959
+ "node_modules/esbuild": {
960
+ "version": "0.20.1",
961
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.1.tgz",
962
+ "integrity": "sha512-OJwEgrpWm/PCMsLVWXKqvcjme3bHNpOgN7Tb6cQnR5n0TPbQx1/Xrn7rqM+wn17bYeT6MGB5sn1Bh5YiGi70nA==",
963
+ "dev": true,
964
+ "hasInstallScript": true,
965
+ "bin": {
966
+ "esbuild": "bin/esbuild"
967
+ },
968
+ "engines": {
969
+ "node": ">=12"
970
+ },
971
+ "optionalDependencies": {
972
+ "@esbuild/aix-ppc64": "0.20.1",
973
+ "@esbuild/android-arm": "0.20.1",
974
+ "@esbuild/android-arm64": "0.20.1",
975
+ "@esbuild/android-x64": "0.20.1",
976
+ "@esbuild/darwin-arm64": "0.20.1",
977
+ "@esbuild/darwin-x64": "0.20.1",
978
+ "@esbuild/freebsd-arm64": "0.20.1",
979
+ "@esbuild/freebsd-x64": "0.20.1",
980
+ "@esbuild/linux-arm": "0.20.1",
981
+ "@esbuild/linux-arm64": "0.20.1",
982
+ "@esbuild/linux-ia32": "0.20.1",
983
+ "@esbuild/linux-loong64": "0.20.1",
984
+ "@esbuild/linux-mips64el": "0.20.1",
985
+ "@esbuild/linux-ppc64": "0.20.1",
986
+ "@esbuild/linux-riscv64": "0.20.1",
987
+ "@esbuild/linux-s390x": "0.20.1",
988
+ "@esbuild/linux-x64": "0.20.1",
989
+ "@esbuild/netbsd-x64": "0.20.1",
990
+ "@esbuild/openbsd-x64": "0.20.1",
991
+ "@esbuild/sunos-x64": "0.20.1",
992
+ "@esbuild/win32-arm64": "0.20.1",
993
+ "@esbuild/win32-ia32": "0.20.1",
994
+ "@esbuild/win32-x64": "0.20.1"
995
+ }
996
+ },
997
+ "node_modules/esbuild-plugin-manifest": {
998
+ "version": "1.0.3",
999
+ "resolved": "https://registry.npmjs.org/esbuild-plugin-manifest/-/esbuild-plugin-manifest-1.0.3.tgz",
1000
+ "integrity": "sha512-Z3UbubjJg16CEqnZblVeyQbEo6sHb4x21RPNnq8mYC7g8xqvgqC9xmyRBMYISDbsnlQixSIE+ZHqMVKymbDgaQ==",
1001
+ "dev": true,
1002
+ "dependencies": {
1003
+ "proper-lockfile": "^4.1.2"
1004
+ },
1005
+ "peerDependencies": {
1006
+ "esbuild": "~0"
1007
+ }
1008
+ },
1009
+ "node_modules/escalade": {
1010
+ "version": "3.1.2",
1011
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz",
1012
+ "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==",
1013
+ "dev": true,
1014
+ "engines": {
1015
+ "node": ">=6"
1016
+ }
1017
+ },
1018
+ "node_modules/fast-glob": {
1019
+ "version": "3.3.2",
1020
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
1021
+ "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
1022
+ "dev": true,
1023
+ "dependencies": {
1024
+ "@nodelib/fs.stat": "^2.0.2",
1025
+ "@nodelib/fs.walk": "^1.2.3",
1026
+ "glob-parent": "^5.1.2",
1027
+ "merge2": "^1.3.0",
1028
+ "micromatch": "^4.0.4"
1029
+ },
1030
+ "engines": {
1031
+ "node": ">=8.6.0"
1032
+ }
1033
+ },
1034
+ "node_modules/fast-glob/node_modules/glob-parent": {
1035
+ "version": "5.1.2",
1036
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
1037
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
1038
+ "dev": true,
1039
+ "dependencies": {
1040
+ "is-glob": "^4.0.1"
1041
+ },
1042
+ "engines": {
1043
+ "node": ">= 6"
1044
+ }
1045
+ },
1046
+ "node_modules/fastq": {
1047
+ "version": "1.17.1",
1048
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz",
1049
+ "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==",
1050
+ "dev": true,
1051
+ "dependencies": {
1052
+ "reusify": "^1.0.4"
1053
+ }
1054
+ },
1055
+ "node_modules/fill-range": {
1056
+ "version": "7.0.1",
1057
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
1058
+ "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
1059
+ "dev": true,
1060
+ "dependencies": {
1061
+ "to-regex-range": "^5.0.1"
1062
+ },
1063
+ "engines": {
1064
+ "node": ">=8"
1065
+ }
1066
+ },
1067
+ "node_modules/flowbite": {
1068
+ "version": "2.3.0",
1069
+ "resolved": "https://registry.npmjs.org/flowbite/-/flowbite-2.3.0.tgz",
1070
+ "integrity": "sha512-pm3JRo8OIJHGfFYWgaGpPv8E+UdWy0Z3gEAGufw+G/1dusaU/P1zoBLiQpf2/+bYAi+GBQtPVG86KYlV0W+AFQ==",
1071
+ "dev": true,
1072
+ "dependencies": {
1073
+ "@popperjs/core": "^2.9.3",
1074
+ "mini-svg-data-uri": "^1.4.3"
1075
+ }
1076
+ },
1077
+ "node_modules/foreground-child": {
1078
+ "version": "3.1.1",
1079
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
1080
+ "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
1081
+ "dev": true,
1082
+ "dependencies": {
1083
+ "cross-spawn": "^7.0.0",
1084
+ "signal-exit": "^4.0.1"
1085
+ },
1086
+ "engines": {
1087
+ "node": ">=14"
1088
+ },
1089
+ "funding": {
1090
+ "url": "https://github.com/sponsors/isaacs"
1091
+ }
1092
+ },
1093
+ "node_modules/fraction.js": {
1094
+ "version": "4.3.7",
1095
+ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz",
1096
+ "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==",
1097
+ "dev": true,
1098
+ "engines": {
1099
+ "node": "*"
1100
+ },
1101
+ "funding": {
1102
+ "type": "patreon",
1103
+ "url": "https://github.com/sponsors/rawify"
1104
+ }
1105
+ },
1106
+ "node_modules/fs-extra": {
1107
+ "version": "11.2.0",
1108
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
1109
+ "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
1110
+ "dev": true,
1111
+ "dependencies": {
1112
+ "graceful-fs": "^4.2.0",
1113
+ "jsonfile": "^6.0.1",
1114
+ "universalify": "^2.0.0"
1115
+ },
1116
+ "engines": {
1117
+ "node": ">=14.14"
1118
+ }
1119
+ },
1120
+ "node_modules/fsevents": {
1121
+ "version": "2.3.3",
1122
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
1123
+ "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
1124
+ "dev": true,
1125
+ "hasInstallScript": true,
1126
+ "optional": true,
1127
+ "os": [
1128
+ "darwin"
1129
+ ],
1130
+ "engines": {
1131
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
1132
+ }
1133
+ },
1134
+ "node_modules/function-bind": {
1135
+ "version": "1.1.2",
1136
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
1137
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
1138
+ "dev": true,
1139
+ "funding": {
1140
+ "url": "https://github.com/sponsors/ljharb"
1141
+ }
1142
+ },
1143
+ "node_modules/get-caller-file": {
1144
+ "version": "2.0.5",
1145
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
1146
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
1147
+ "dev": true,
1148
+ "engines": {
1149
+ "node": "6.* || 8.* || >= 10.*"
1150
+ }
1151
+ },
1152
+ "node_modules/get-stdin": {
1153
+ "version": "9.0.0",
1154
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz",
1155
+ "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==",
1156
+ "dev": true,
1157
+ "engines": {
1158
+ "node": ">=12"
1159
+ },
1160
+ "funding": {
1161
+ "url": "https://github.com/sponsors/sindresorhus"
1162
+ }
1163
+ },
1164
+ "node_modules/glob": {
1165
+ "version": "10.3.10",
1166
+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz",
1167
+ "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==",
1168
+ "dev": true,
1169
+ "dependencies": {
1170
+ "foreground-child": "^3.1.0",
1171
+ "jackspeak": "^2.3.5",
1172
+ "minimatch": "^9.0.1",
1173
+ "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0",
1174
+ "path-scurry": "^1.10.1"
1175
+ },
1176
+ "bin": {
1177
+ "glob": "dist/esm/bin.mjs"
1178
+ },
1179
+ "engines": {
1180
+ "node": ">=16 || 14 >=14.17"
1181
+ },
1182
+ "funding": {
1183
+ "url": "https://github.com/sponsors/isaacs"
1184
+ }
1185
+ },
1186
+ "node_modules/glob-parent": {
1187
+ "version": "6.0.2",
1188
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
1189
+ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
1190
+ "dev": true,
1191
+ "dependencies": {
1192
+ "is-glob": "^4.0.3"
1193
+ },
1194
+ "engines": {
1195
+ "node": ">=10.13.0"
1196
+ }
1197
+ },
1198
+ "node_modules/globby": {
1199
+ "version": "14.0.1",
1200
+ "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.1.tgz",
1201
+ "integrity": "sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==",
1202
+ "dev": true,
1203
+ "dependencies": {
1204
+ "@sindresorhus/merge-streams": "^2.1.0",
1205
+ "fast-glob": "^3.3.2",
1206
+ "ignore": "^5.2.4",
1207
+ "path-type": "^5.0.0",
1208
+ "slash": "^5.1.0",
1209
+ "unicorn-magic": "^0.1.0"
1210
+ },
1211
+ "engines": {
1212
+ "node": ">=18"
1213
+ },
1214
+ "funding": {
1215
+ "url": "https://github.com/sponsors/sindresorhus"
1216
+ }
1217
+ },
1218
+ "node_modules/graceful-fs": {
1219
+ "version": "4.2.11",
1220
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
1221
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
1222
+ "dev": true
1223
+ },
1224
+ "node_modules/hasown": {
1225
+ "version": "2.0.1",
1226
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.1.tgz",
1227
+ "integrity": "sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==",
1228
+ "dev": true,
1229
+ "dependencies": {
1230
+ "function-bind": "^1.1.2"
1231
+ },
1232
+ "engines": {
1233
+ "node": ">= 0.4"
1234
+ }
1235
+ },
1236
+ "node_modules/ignore": {
1237
+ "version": "5.3.1",
1238
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz",
1239
+ "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==",
1240
+ "dev": true,
1241
+ "engines": {
1242
+ "node": ">= 4"
1243
+ }
1244
+ },
1245
+ "node_modules/is-binary-path": {
1246
+ "version": "2.1.0",
1247
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
1248
+ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
1249
+ "dev": true,
1250
+ "dependencies": {
1251
+ "binary-extensions": "^2.0.0"
1252
+ },
1253
+ "engines": {
1254
+ "node": ">=8"
1255
+ }
1256
+ },
1257
+ "node_modules/is-core-module": {
1258
+ "version": "2.13.1",
1259
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz",
1260
+ "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==",
1261
+ "dev": true,
1262
+ "dependencies": {
1263
+ "hasown": "^2.0.0"
1264
+ },
1265
+ "funding": {
1266
+ "url": "https://github.com/sponsors/ljharb"
1267
+ }
1268
+ },
1269
+ "node_modules/is-extglob": {
1270
+ "version": "2.1.1",
1271
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
1272
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
1273
+ "dev": true,
1274
+ "engines": {
1275
+ "node": ">=0.10.0"
1276
+ }
1277
+ },
1278
+ "node_modules/is-fullwidth-code-point": {
1279
+ "version": "3.0.0",
1280
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
1281
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
1282
+ "dev": true,
1283
+ "engines": {
1284
+ "node": ">=8"
1285
+ }
1286
+ },
1287
+ "node_modules/is-glob": {
1288
+ "version": "4.0.3",
1289
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
1290
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
1291
+ "dev": true,
1292
+ "dependencies": {
1293
+ "is-extglob": "^2.1.1"
1294
+ },
1295
+ "engines": {
1296
+ "node": ">=0.10.0"
1297
+ }
1298
+ },
1299
+ "node_modules/is-number": {
1300
+ "version": "7.0.0",
1301
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
1302
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
1303
+ "dev": true,
1304
+ "engines": {
1305
+ "node": ">=0.12.0"
1306
+ }
1307
+ },
1308
+ "node_modules/isexe": {
1309
+ "version": "2.0.0",
1310
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1311
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
1312
+ "dev": true
1313
+ },
1314
+ "node_modules/jackspeak": {
1315
+ "version": "2.3.6",
1316
+ "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz",
1317
+ "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==",
1318
+ "dev": true,
1319
+ "dependencies": {
1320
+ "@isaacs/cliui": "^8.0.2"
1321
+ },
1322
+ "engines": {
1323
+ "node": ">=14"
1324
+ },
1325
+ "funding": {
1326
+ "url": "https://github.com/sponsors/isaacs"
1327
+ },
1328
+ "optionalDependencies": {
1329
+ "@pkgjs/parseargs": "^0.11.0"
1330
+ }
1331
+ },
1332
+ "node_modules/jiti": {
1333
+ "version": "1.21.0",
1334
+ "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz",
1335
+ "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==",
1336
+ "dev": true,
1337
+ "bin": {
1338
+ "jiti": "bin/jiti.js"
1339
+ }
1340
+ },
1341
+ "node_modules/jsonfile": {
1342
+ "version": "6.1.0",
1343
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
1344
+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
1345
+ "dev": true,
1346
+ "dependencies": {
1347
+ "universalify": "^2.0.0"
1348
+ },
1349
+ "optionalDependencies": {
1350
+ "graceful-fs": "^4.1.6"
1351
+ }
1352
+ },
1353
+ "node_modules/lilconfig": {
1354
+ "version": "2.1.0",
1355
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz",
1356
+ "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==",
1357
+ "dev": true,
1358
+ "engines": {
1359
+ "node": ">=10"
1360
+ }
1361
+ },
1362
+ "node_modules/lines-and-columns": {
1363
+ "version": "1.2.4",
1364
+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
1365
+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
1366
+ "dev": true
1367
+ },
1368
+ "node_modules/lodash.debounce": {
1369
+ "version": "4.0.8",
1370
+ "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
1371
+ "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==",
1372
+ "dev": true
1373
+ },
1374
+ "node_modules/lru-cache": {
1375
+ "version": "10.2.0",
1376
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz",
1377
+ "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==",
1378
+ "dev": true,
1379
+ "engines": {
1380
+ "node": "14 || >=16.14"
1381
+ }
1382
+ },
1383
+ "node_modules/merge2": {
1384
+ "version": "1.4.1",
1385
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
1386
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
1387
+ "dev": true,
1388
+ "engines": {
1389
+ "node": ">= 8"
1390
+ }
1391
+ },
1392
+ "node_modules/micromatch": {
1393
+ "version": "4.0.5",
1394
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
1395
+ "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
1396
+ "dev": true,
1397
+ "dependencies": {
1398
+ "braces": "^3.0.2",
1399
+ "picomatch": "^2.3.1"
1400
+ },
1401
+ "engines": {
1402
+ "node": ">=8.6"
1403
+ }
1404
+ },
1405
+ "node_modules/mini-svg-data-uri": {
1406
+ "version": "1.4.4",
1407
+ "resolved": "https://registry.npmjs.org/mini-svg-data-uri/-/mini-svg-data-uri-1.4.4.tgz",
1408
+ "integrity": "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==",
1409
+ "dev": true,
1410
+ "bin": {
1411
+ "mini-svg-data-uri": "cli.js"
1412
+ }
1413
+ },
1414
+ "node_modules/minimatch": {
1415
+ "version": "9.0.3",
1416
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz",
1417
+ "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
1418
+ "dev": true,
1419
+ "dependencies": {
1420
+ "brace-expansion": "^2.0.1"
1421
+ },
1422
+ "engines": {
1423
+ "node": ">=16 || 14 >=14.17"
1424
+ },
1425
+ "funding": {
1426
+ "url": "https://github.com/sponsors/isaacs"
1427
+ }
1428
+ },
1429
+ "node_modules/minimist": {
1430
+ "version": "1.2.8",
1431
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
1432
+ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
1433
+ "dev": true,
1434
+ "funding": {
1435
+ "url": "https://github.com/sponsors/ljharb"
1436
+ }
1437
+ },
1438
+ "node_modules/minipass": {
1439
+ "version": "7.0.4",
1440
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz",
1441
+ "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==",
1442
+ "dev": true,
1443
+ "engines": {
1444
+ "node": ">=16 || 14 >=14.17"
1445
+ }
1446
+ },
1447
+ "node_modules/mkdirp": {
1448
+ "version": "0.5.6",
1449
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
1450
+ "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
1451
+ "dev": true,
1452
+ "dependencies": {
1453
+ "minimist": "^1.2.6"
1454
+ },
1455
+ "bin": {
1456
+ "mkdirp": "bin/cmd.js"
1457
+ }
1458
+ },
1459
+ "node_modules/mz": {
1460
+ "version": "2.7.0",
1461
+ "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz",
1462
+ "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==",
1463
+ "dev": true,
1464
+ "dependencies": {
1465
+ "any-promise": "^1.0.0",
1466
+ "object-assign": "^4.0.1",
1467
+ "thenify-all": "^1.0.0"
1468
+ }
1469
+ },
1470
+ "node_modules/nanoid": {
1471
+ "version": "3.3.7",
1472
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
1473
+ "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
1474
+ "dev": true,
1475
+ "funding": [
1476
+ {
1477
+ "type": "github",
1478
+ "url": "https://github.com/sponsors/ai"
1479
+ }
1480
+ ],
1481
+ "bin": {
1482
+ "nanoid": "bin/nanoid.cjs"
1483
+ },
1484
+ "engines": {
1485
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
1486
+ }
1487
+ },
1488
+ "node_modules/node-releases": {
1489
+ "version": "2.0.14",
1490
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
1491
+ "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==",
1492
+ "dev": true
1493
+ },
1494
+ "node_modules/normalize-path": {
1495
+ "version": "3.0.0",
1496
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
1497
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
1498
+ "dev": true,
1499
+ "engines": {
1500
+ "node": ">=0.10.0"
1501
+ }
1502
+ },
1503
+ "node_modules/normalize-range": {
1504
+ "version": "0.1.2",
1505
+ "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
1506
+ "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==",
1507
+ "dev": true,
1508
+ "engines": {
1509
+ "node": ">=0.10.0"
1510
+ }
1511
+ },
1512
+ "node_modules/object-assign": {
1513
+ "version": "4.1.1",
1514
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
1515
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
1516
+ "dev": true,
1517
+ "engines": {
1518
+ "node": ">=0.10.0"
1519
+ }
1520
+ },
1521
+ "node_modules/object-hash": {
1522
+ "version": "3.0.0",
1523
+ "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz",
1524
+ "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
1525
+ "dev": true,
1526
+ "engines": {
1527
+ "node": ">= 6"
1528
+ }
1529
+ },
1530
+ "node_modules/path-key": {
1531
+ "version": "3.1.1",
1532
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
1533
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
1534
+ "dev": true,
1535
+ "engines": {
1536
+ "node": ">=8"
1537
+ }
1538
+ },
1539
+ "node_modules/path-parse": {
1540
+ "version": "1.0.7",
1541
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
1542
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
1543
+ "dev": true
1544
+ },
1545
+ "node_modules/path-scurry": {
1546
+ "version": "1.10.1",
1547
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz",
1548
+ "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==",
1549
+ "dev": true,
1550
+ "dependencies": {
1551
+ "lru-cache": "^9.1.1 || ^10.0.0",
1552
+ "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
1553
+ },
1554
+ "engines": {
1555
+ "node": ">=16 || 14 >=14.17"
1556
+ },
1557
+ "funding": {
1558
+ "url": "https://github.com/sponsors/isaacs"
1559
+ }
1560
+ },
1561
+ "node_modules/path-type": {
1562
+ "version": "5.0.0",
1563
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz",
1564
+ "integrity": "sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==",
1565
+ "dev": true,
1566
+ "engines": {
1567
+ "node": ">=12"
1568
+ },
1569
+ "funding": {
1570
+ "url": "https://github.com/sponsors/sindresorhus"
1571
+ }
1572
+ },
1573
+ "node_modules/picocolors": {
1574
+ "version": "1.0.0",
1575
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
1576
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
1577
+ "dev": true
1578
+ },
1579
+ "node_modules/picomatch": {
1580
+ "version": "2.3.1",
1581
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
1582
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
1583
+ "dev": true,
1584
+ "engines": {
1585
+ "node": ">=8.6"
1586
+ },
1587
+ "funding": {
1588
+ "url": "https://github.com/sponsors/jonschlinkert"
1589
+ }
1590
+ },
1591
+ "node_modules/pify": {
1592
+ "version": "2.3.0",
1593
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
1594
+ "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
1595
+ "dev": true,
1596
+ "engines": {
1597
+ "node": ">=0.10.0"
1598
+ }
1599
+ },
1600
+ "node_modules/pirates": {
1601
+ "version": "4.0.6",
1602
+ "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz",
1603
+ "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==",
1604
+ "dev": true,
1605
+ "engines": {
1606
+ "node": ">= 6"
1607
+ }
1608
+ },
1609
+ "node_modules/postcss": {
1610
+ "version": "8.4.35",
1611
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.35.tgz",
1612
+ "integrity": "sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==",
1613
+ "dev": true,
1614
+ "funding": [
1615
+ {
1616
+ "type": "opencollective",
1617
+ "url": "https://opencollective.com/postcss/"
1618
+ },
1619
+ {
1620
+ "type": "tidelift",
1621
+ "url": "https://tidelift.com/funding/github/npm/postcss"
1622
+ },
1623
+ {
1624
+ "type": "github",
1625
+ "url": "https://github.com/sponsors/ai"
1626
+ }
1627
+ ],
1628
+ "dependencies": {
1629
+ "nanoid": "^3.3.7",
1630
+ "picocolors": "^1.0.0",
1631
+ "source-map-js": "^1.0.2"
1632
+ },
1633
+ "engines": {
1634
+ "node": "^10 || ^12 || >=14"
1635
+ }
1636
+ },
1637
+ "node_modules/postcss-cli": {
1638
+ "version": "11.0.0",
1639
+ "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-11.0.0.tgz",
1640
+ "integrity": "sha512-xMITAI7M0u1yolVcXJ9XTZiO9aO49mcoKQy6pCDFdMh9kGqhzLVpWxeD/32M/QBmkhcGypZFFOLNLmIW4Pg4RA==",
1641
+ "dev": true,
1642
+ "dependencies": {
1643
+ "chokidar": "^3.3.0",
1644
+ "dependency-graph": "^0.11.0",
1645
+ "fs-extra": "^11.0.0",
1646
+ "get-stdin": "^9.0.0",
1647
+ "globby": "^14.0.0",
1648
+ "picocolors": "^1.0.0",
1649
+ "postcss-load-config": "^5.0.0",
1650
+ "postcss-reporter": "^7.0.0",
1651
+ "pretty-hrtime": "^1.0.3",
1652
+ "read-cache": "^1.0.0",
1653
+ "slash": "^5.0.0",
1654
+ "yargs": "^17.0.0"
1655
+ },
1656
+ "bin": {
1657
+ "postcss": "index.js"
1658
+ },
1659
+ "engines": {
1660
+ "node": ">=18"
1661
+ },
1662
+ "peerDependencies": {
1663
+ "postcss": "^8.0.0"
1664
+ }
1665
+ },
1666
+ "node_modules/postcss-cli/node_modules/lilconfig": {
1667
+ "version": "3.1.1",
1668
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz",
1669
+ "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==",
1670
+ "dev": true,
1671
+ "engines": {
1672
+ "node": ">=14"
1673
+ },
1674
+ "funding": {
1675
+ "url": "https://github.com/sponsors/antonk52"
1676
+ }
1677
+ },
1678
+ "node_modules/postcss-cli/node_modules/postcss-load-config": {
1679
+ "version": "5.0.3",
1680
+ "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-5.0.3.tgz",
1681
+ "integrity": "sha512-90pBBI5apUVruIEdCxZic93Wm+i9fTrp7TXbgdUCH+/L+2WnfpITSpq5dFU/IPvbv7aNiMlQISpUkAm3fEcvgQ==",
1682
+ "dev": true,
1683
+ "funding": [
1684
+ {
1685
+ "type": "opencollective",
1686
+ "url": "https://opencollective.com/postcss/"
1687
+ },
1688
+ {
1689
+ "type": "github",
1690
+ "url": "https://github.com/sponsors/ai"
1691
+ }
1692
+ ],
1693
+ "dependencies": {
1694
+ "lilconfig": "^3.0.0",
1695
+ "yaml": "^2.3.4"
1696
+ },
1697
+ "engines": {
1698
+ "node": ">= 18"
1699
+ },
1700
+ "peerDependencies": {
1701
+ "jiti": ">=1.21.0",
1702
+ "postcss": ">=8.0.9"
1703
+ },
1704
+ "peerDependenciesMeta": {
1705
+ "jiti": {
1706
+ "optional": true
1707
+ },
1708
+ "postcss": {
1709
+ "optional": true
1710
+ }
1711
+ }
1712
+ },
1713
+ "node_modules/postcss-hash": {
1714
+ "version": "3.0.0",
1715
+ "resolved": "https://registry.npmjs.org/postcss-hash/-/postcss-hash-3.0.0.tgz",
1716
+ "integrity": "sha512-ltbQpW4VJ1JyP8CwGBJRPWh3SXPDbTvuZiPRo5/s+scxC1Qa0mOC6PzUHCtD0Rnogy1CnaTRqRC6CSwhZF6SVg==",
1717
+ "dev": true,
1718
+ "dependencies": {
1719
+ "mkdirp": "^0.5.1"
1720
+ }
1721
+ },
1722
+ "node_modules/postcss-import": {
1723
+ "version": "15.1.0",
1724
+ "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz",
1725
+ "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==",
1726
+ "dev": true,
1727
+ "dependencies": {
1728
+ "postcss-value-parser": "^4.0.0",
1729
+ "read-cache": "^1.0.0",
1730
+ "resolve": "^1.1.7"
1731
+ },
1732
+ "engines": {
1733
+ "node": ">=14.0.0"
1734
+ },
1735
+ "peerDependencies": {
1736
+ "postcss": "^8.0.0"
1737
+ }
1738
+ },
1739
+ "node_modules/postcss-js": {
1740
+ "version": "4.0.1",
1741
+ "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz",
1742
+ "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==",
1743
+ "dev": true,
1744
+ "dependencies": {
1745
+ "camelcase-css": "^2.0.1"
1746
+ },
1747
+ "engines": {
1748
+ "node": "^12 || ^14 || >= 16"
1749
+ },
1750
+ "funding": {
1751
+ "type": "opencollective",
1752
+ "url": "https://opencollective.com/postcss/"
1753
+ },
1754
+ "peerDependencies": {
1755
+ "postcss": "^8.4.21"
1756
+ }
1757
+ },
1758
+ "node_modules/postcss-load-config": {
1759
+ "version": "4.0.2",
1760
+ "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz",
1761
+ "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==",
1762
+ "dev": true,
1763
+ "funding": [
1764
+ {
1765
+ "type": "opencollective",
1766
+ "url": "https://opencollective.com/postcss/"
1767
+ },
1768
+ {
1769
+ "type": "github",
1770
+ "url": "https://github.com/sponsors/ai"
1771
+ }
1772
+ ],
1773
+ "dependencies": {
1774
+ "lilconfig": "^3.0.0",
1775
+ "yaml": "^2.3.4"
1776
+ },
1777
+ "engines": {
1778
+ "node": ">= 14"
1779
+ },
1780
+ "peerDependencies": {
1781
+ "postcss": ">=8.0.9",
1782
+ "ts-node": ">=9.0.0"
1783
+ },
1784
+ "peerDependenciesMeta": {
1785
+ "postcss": {
1786
+ "optional": true
1787
+ },
1788
+ "ts-node": {
1789
+ "optional": true
1790
+ }
1791
+ }
1792
+ },
1793
+ "node_modules/postcss-load-config/node_modules/lilconfig": {
1794
+ "version": "3.1.1",
1795
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz",
1796
+ "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==",
1797
+ "dev": true,
1798
+ "engines": {
1799
+ "node": ">=14"
1800
+ },
1801
+ "funding": {
1802
+ "url": "https://github.com/sponsors/antonk52"
1803
+ }
1804
+ },
1805
+ "node_modules/postcss-nested": {
1806
+ "version": "6.0.1",
1807
+ "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz",
1808
+ "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==",
1809
+ "dev": true,
1810
+ "dependencies": {
1811
+ "postcss-selector-parser": "^6.0.11"
1812
+ },
1813
+ "engines": {
1814
+ "node": ">=12.0"
1815
+ },
1816
+ "funding": {
1817
+ "type": "opencollective",
1818
+ "url": "https://opencollective.com/postcss/"
1819
+ },
1820
+ "peerDependencies": {
1821
+ "postcss": "^8.2.14"
1822
+ }
1823
+ },
1824
+ "node_modules/postcss-reporter": {
1825
+ "version": "7.1.0",
1826
+ "resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-7.1.0.tgz",
1827
+ "integrity": "sha512-/eoEylGWyy6/DOiMP5lmFRdmDKThqgn7D6hP2dXKJI/0rJSO1ADFNngZfDzxL0YAxFvws+Rtpuji1YIHj4mySA==",
1828
+ "dev": true,
1829
+ "funding": [
1830
+ {
1831
+ "type": "opencollective",
1832
+ "url": "https://opencollective.com/postcss/"
1833
+ },
1834
+ {
1835
+ "type": "github",
1836
+ "url": "https://github.com/sponsors/ai"
1837
+ }
1838
+ ],
1839
+ "dependencies": {
1840
+ "picocolors": "^1.0.0",
1841
+ "thenby": "^1.3.4"
1842
+ },
1843
+ "engines": {
1844
+ "node": ">=10"
1845
+ },
1846
+ "peerDependencies": {
1847
+ "postcss": "^8.1.0"
1848
+ }
1849
+ },
1850
+ "node_modules/postcss-selector-parser": {
1851
+ "version": "6.0.15",
1852
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz",
1853
+ "integrity": "sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==",
1854
+ "dev": true,
1855
+ "dependencies": {
1856
+ "cssesc": "^3.0.0",
1857
+ "util-deprecate": "^1.0.2"
1858
+ },
1859
+ "engines": {
1860
+ "node": ">=4"
1861
+ }
1862
+ },
1863
+ "node_modules/postcss-value-parser": {
1864
+ "version": "4.2.0",
1865
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
1866
+ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
1867
+ "dev": true
1868
+ },
1869
+ "node_modules/pretty-hrtime": {
1870
+ "version": "1.0.3",
1871
+ "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz",
1872
+ "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==",
1873
+ "dev": true,
1874
+ "engines": {
1875
+ "node": ">= 0.8"
1876
+ }
1877
+ },
1878
+ "node_modules/proper-lockfile": {
1879
+ "version": "4.1.2",
1880
+ "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz",
1881
+ "integrity": "sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==",
1882
+ "dev": true,
1883
+ "dependencies": {
1884
+ "graceful-fs": "^4.2.4",
1885
+ "retry": "^0.12.0",
1886
+ "signal-exit": "^3.0.2"
1887
+ }
1888
+ },
1889
+ "node_modules/proper-lockfile/node_modules/signal-exit": {
1890
+ "version": "3.0.7",
1891
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
1892
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
1893
+ "dev": true
1894
+ },
1895
+ "node_modules/queue-microtask": {
1896
+ "version": "1.2.3",
1897
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
1898
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
1899
+ "dev": true,
1900
+ "funding": [
1901
+ {
1902
+ "type": "github",
1903
+ "url": "https://github.com/sponsors/feross"
1904
+ },
1905
+ {
1906
+ "type": "patreon",
1907
+ "url": "https://www.patreon.com/feross"
1908
+ },
1909
+ {
1910
+ "type": "consulting",
1911
+ "url": "https://feross.org/support"
1912
+ }
1913
+ ]
1914
+ },
1915
+ "node_modules/read-cache": {
1916
+ "version": "1.0.0",
1917
+ "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
1918
+ "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==",
1919
+ "dev": true,
1920
+ "dependencies": {
1921
+ "pify": "^2.3.0"
1922
+ }
1923
+ },
1924
+ "node_modules/readdirp": {
1925
+ "version": "3.6.0",
1926
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
1927
+ "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
1928
+ "dev": true,
1929
+ "dependencies": {
1930
+ "picomatch": "^2.2.1"
1931
+ },
1932
+ "engines": {
1933
+ "node": ">=8.10.0"
1934
+ }
1935
+ },
1936
+ "node_modules/require-directory": {
1937
+ "version": "2.1.1",
1938
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
1939
+ "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
1940
+ "dev": true,
1941
+ "engines": {
1942
+ "node": ">=0.10.0"
1943
+ }
1944
+ },
1945
+ "node_modules/resolve": {
1946
+ "version": "1.22.8",
1947
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
1948
+ "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
1949
+ "dev": true,
1950
+ "dependencies": {
1951
+ "is-core-module": "^2.13.0",
1952
+ "path-parse": "^1.0.7",
1953
+ "supports-preserve-symlinks-flag": "^1.0.0"
1954
+ },
1955
+ "bin": {
1956
+ "resolve": "bin/resolve"
1957
+ },
1958
+ "funding": {
1959
+ "url": "https://github.com/sponsors/ljharb"
1960
+ }
1961
+ },
1962
+ "node_modules/retry": {
1963
+ "version": "0.12.0",
1964
+ "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
1965
+ "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==",
1966
+ "dev": true,
1967
+ "engines": {
1968
+ "node": ">= 4"
1969
+ }
1970
+ },
1971
+ "node_modules/reusify": {
1972
+ "version": "1.0.4",
1973
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
1974
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
1975
+ "dev": true,
1976
+ "engines": {
1977
+ "iojs": ">=1.0.0",
1978
+ "node": ">=0.10.0"
1979
+ }
1980
+ },
1981
+ "node_modules/run-parallel": {
1982
+ "version": "1.2.0",
1983
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
1984
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
1985
+ "dev": true,
1986
+ "funding": [
1987
+ {
1988
+ "type": "github",
1989
+ "url": "https://github.com/sponsors/feross"
1990
+ },
1991
+ {
1992
+ "type": "patreon",
1993
+ "url": "https://www.patreon.com/feross"
1994
+ },
1995
+ {
1996
+ "type": "consulting",
1997
+ "url": "https://feross.org/support"
1998
+ }
1999
+ ],
2000
+ "dependencies": {
2001
+ "queue-microtask": "^1.2.2"
2002
+ }
2003
+ },
2004
+ "node_modules/shebang-command": {
2005
+ "version": "2.0.0",
2006
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
2007
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
2008
+ "dev": true,
2009
+ "dependencies": {
2010
+ "shebang-regex": "^3.0.0"
2011
+ },
2012
+ "engines": {
2013
+ "node": ">=8"
2014
+ }
2015
+ },
2016
+ "node_modules/shebang-regex": {
2017
+ "version": "3.0.0",
2018
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
2019
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
2020
+ "dev": true,
2021
+ "engines": {
2022
+ "node": ">=8"
2023
+ }
2024
+ },
2025
+ "node_modules/signal-exit": {
2026
+ "version": "4.1.0",
2027
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
2028
+ "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
2029
+ "dev": true,
2030
+ "engines": {
2031
+ "node": ">=14"
2032
+ },
2033
+ "funding": {
2034
+ "url": "https://github.com/sponsors/isaacs"
2035
+ }
2036
+ },
2037
+ "node_modules/slash": {
2038
+ "version": "5.1.0",
2039
+ "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz",
2040
+ "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==",
2041
+ "dev": true,
2042
+ "engines": {
2043
+ "node": ">=14.16"
2044
+ },
2045
+ "funding": {
2046
+ "url": "https://github.com/sponsors/sindresorhus"
2047
+ }
2048
+ },
2049
+ "node_modules/source-map-js": {
2050
+ "version": "1.0.2",
2051
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
2052
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
2053
+ "dev": true,
2054
+ "engines": {
2055
+ "node": ">=0.10.0"
2056
+ }
2057
+ },
2058
+ "node_modules/string-width": {
2059
+ "version": "5.1.2",
2060
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
2061
+ "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
2062
+ "dev": true,
2063
+ "dependencies": {
2064
+ "eastasianwidth": "^0.2.0",
2065
+ "emoji-regex": "^9.2.2",
2066
+ "strip-ansi": "^7.0.1"
2067
+ },
2068
+ "engines": {
2069
+ "node": ">=12"
2070
+ },
2071
+ "funding": {
2072
+ "url": "https://github.com/sponsors/sindresorhus"
2073
+ }
2074
+ },
2075
+ "node_modules/string-width-cjs": {
2076
+ "name": "string-width",
2077
+ "version": "4.2.3",
2078
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
2079
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
2080
+ "dev": true,
2081
+ "dependencies": {
2082
+ "emoji-regex": "^8.0.0",
2083
+ "is-fullwidth-code-point": "^3.0.0",
2084
+ "strip-ansi": "^6.0.1"
2085
+ },
2086
+ "engines": {
2087
+ "node": ">=8"
2088
+ }
2089
+ },
2090
+ "node_modules/string-width-cjs/node_modules/ansi-regex": {
2091
+ "version": "5.0.1",
2092
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
2093
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
2094
+ "dev": true,
2095
+ "engines": {
2096
+ "node": ">=8"
2097
+ }
2098
+ },
2099
+ "node_modules/string-width-cjs/node_modules/emoji-regex": {
2100
+ "version": "8.0.0",
2101
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
2102
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
2103
+ "dev": true
2104
+ },
2105
+ "node_modules/string-width-cjs/node_modules/strip-ansi": {
2106
+ "version": "6.0.1",
2107
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
2108
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
2109
+ "dev": true,
2110
+ "dependencies": {
2111
+ "ansi-regex": "^5.0.1"
2112
+ },
2113
+ "engines": {
2114
+ "node": ">=8"
2115
+ }
2116
+ },
2117
+ "node_modules/strip-ansi": {
2118
+ "version": "7.1.0",
2119
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
2120
+ "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
2121
+ "dev": true,
2122
+ "dependencies": {
2123
+ "ansi-regex": "^6.0.1"
2124
+ },
2125
+ "engines": {
2126
+ "node": ">=12"
2127
+ },
2128
+ "funding": {
2129
+ "url": "https://github.com/chalk/strip-ansi?sponsor=1"
2130
+ }
2131
+ },
2132
+ "node_modules/strip-ansi-cjs": {
2133
+ "name": "strip-ansi",
2134
+ "version": "6.0.1",
2135
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
2136
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
2137
+ "dev": true,
2138
+ "dependencies": {
2139
+ "ansi-regex": "^5.0.1"
2140
+ },
2141
+ "engines": {
2142
+ "node": ">=8"
2143
+ }
2144
+ },
2145
+ "node_modules/strip-ansi-cjs/node_modules/ansi-regex": {
2146
+ "version": "5.0.1",
2147
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
2148
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
2149
+ "dev": true,
2150
+ "engines": {
2151
+ "node": ">=8"
2152
+ }
2153
+ },
2154
+ "node_modules/sucrase": {
2155
+ "version": "3.35.0",
2156
+ "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz",
2157
+ "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==",
2158
+ "dev": true,
2159
+ "dependencies": {
2160
+ "@jridgewell/gen-mapping": "^0.3.2",
2161
+ "commander": "^4.0.0",
2162
+ "glob": "^10.3.10",
2163
+ "lines-and-columns": "^1.1.6",
2164
+ "mz": "^2.7.0",
2165
+ "pirates": "^4.0.1",
2166
+ "ts-interface-checker": "^0.1.9"
2167
+ },
2168
+ "bin": {
2169
+ "sucrase": "bin/sucrase",
2170
+ "sucrase-node": "bin/sucrase-node"
2171
+ },
2172
+ "engines": {
2173
+ "node": ">=16 || 14 >=14.17"
2174
+ }
2175
+ },
2176
+ "node_modules/supports-preserve-symlinks-flag": {
2177
+ "version": "1.0.0",
2178
+ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
2179
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
2180
+ "dev": true,
2181
+ "engines": {
2182
+ "node": ">= 0.4"
2183
+ },
2184
+ "funding": {
2185
+ "url": "https://github.com/sponsors/ljharb"
2186
+ }
2187
+ },
2188
+ "node_modules/tailwindcss": {
2189
+ "version": "3.4.1",
2190
+ "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.1.tgz",
2191
+ "integrity": "sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==",
2192
+ "dev": true,
2193
+ "dependencies": {
2194
+ "@alloc/quick-lru": "^5.2.0",
2195
+ "arg": "^5.0.2",
2196
+ "chokidar": "^3.5.3",
2197
+ "didyoumean": "^1.2.2",
2198
+ "dlv": "^1.1.3",
2199
+ "fast-glob": "^3.3.0",
2200
+ "glob-parent": "^6.0.2",
2201
+ "is-glob": "^4.0.3",
2202
+ "jiti": "^1.19.1",
2203
+ "lilconfig": "^2.1.0",
2204
+ "micromatch": "^4.0.5",
2205
+ "normalize-path": "^3.0.0",
2206
+ "object-hash": "^3.0.0",
2207
+ "picocolors": "^1.0.0",
2208
+ "postcss": "^8.4.23",
2209
+ "postcss-import": "^15.1.0",
2210
+ "postcss-js": "^4.0.1",
2211
+ "postcss-load-config": "^4.0.1",
2212
+ "postcss-nested": "^6.0.1",
2213
+ "postcss-selector-parser": "^6.0.11",
2214
+ "resolve": "^1.22.2",
2215
+ "sucrase": "^3.32.0"
2216
+ },
2217
+ "bin": {
2218
+ "tailwind": "lib/cli.js",
2219
+ "tailwindcss": "lib/cli.js"
2220
+ },
2221
+ "engines": {
2222
+ "node": ">=14.0.0"
2223
+ }
2224
+ },
2225
+ "node_modules/thenby": {
2226
+ "version": "1.3.4",
2227
+ "resolved": "https://registry.npmjs.org/thenby/-/thenby-1.3.4.tgz",
2228
+ "integrity": "sha512-89Gi5raiWA3QZ4b2ePcEwswC3me9JIg+ToSgtE0JWeCynLnLxNr/f9G+xfo9K+Oj4AFdom8YNJjibIARTJmapQ==",
2229
+ "dev": true
2230
+ },
2231
+ "node_modules/thenify": {
2232
+ "version": "3.3.1",
2233
+ "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz",
2234
+ "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==",
2235
+ "dev": true,
2236
+ "dependencies": {
2237
+ "any-promise": "^1.0.0"
2238
+ }
2239
+ },
2240
+ "node_modules/thenify-all": {
2241
+ "version": "1.6.0",
2242
+ "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz",
2243
+ "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==",
2244
+ "dev": true,
2245
+ "dependencies": {
2246
+ "thenify": ">= 3.1.0 < 4"
2247
+ },
2248
+ "engines": {
2249
+ "node": ">=0.8"
2250
+ }
2251
+ },
2252
+ "node_modules/to-regex-range": {
2253
+ "version": "5.0.1",
2254
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
2255
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
2256
+ "dev": true,
2257
+ "dependencies": {
2258
+ "is-number": "^7.0.0"
2259
+ },
2260
+ "engines": {
2261
+ "node": ">=8.0"
2262
+ }
2263
+ },
2264
+ "node_modules/ts-interface-checker": {
2265
+ "version": "0.1.13",
2266
+ "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz",
2267
+ "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==",
2268
+ "dev": true
2269
+ },
2270
+ "node_modules/unicorn-magic": {
2271
+ "version": "0.1.0",
2272
+ "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz",
2273
+ "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==",
2274
+ "dev": true,
2275
+ "engines": {
2276
+ "node": ">=18"
2277
+ },
2278
+ "funding": {
2279
+ "url": "https://github.com/sponsors/sindresorhus"
2280
+ }
2281
+ },
2282
+ "node_modules/universalify": {
2283
+ "version": "2.0.1",
2284
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
2285
+ "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
2286
+ "dev": true,
2287
+ "engines": {
2288
+ "node": ">= 10.0.0"
2289
+ }
2290
+ },
2291
+ "node_modules/update-browserslist-db": {
2292
+ "version": "1.0.13",
2293
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz",
2294
+ "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==",
2295
+ "dev": true,
2296
+ "funding": [
2297
+ {
2298
+ "type": "opencollective",
2299
+ "url": "https://opencollective.com/browserslist"
2300
+ },
2301
+ {
2302
+ "type": "tidelift",
2303
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
2304
+ },
2305
+ {
2306
+ "type": "github",
2307
+ "url": "https://github.com/sponsors/ai"
2308
+ }
2309
+ ],
2310
+ "dependencies": {
2311
+ "escalade": "^3.1.1",
2312
+ "picocolors": "^1.0.0"
2313
+ },
2314
+ "bin": {
2315
+ "update-browserslist-db": "cli.js"
2316
+ },
2317
+ "peerDependencies": {
2318
+ "browserslist": ">= 4.21.0"
2319
+ }
2320
+ },
2321
+ "node_modules/util-deprecate": {
2322
+ "version": "1.0.2",
2323
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
2324
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
2325
+ "dev": true
2326
+ },
2327
+ "node_modules/which": {
2328
+ "version": "2.0.2",
2329
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
2330
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
2331
+ "dev": true,
2332
+ "dependencies": {
2333
+ "isexe": "^2.0.0"
2334
+ },
2335
+ "bin": {
2336
+ "node-which": "bin/node-which"
2337
+ },
2338
+ "engines": {
2339
+ "node": ">= 8"
2340
+ }
2341
+ },
2342
+ "node_modules/wrap-ansi": {
2343
+ "version": "8.1.0",
2344
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
2345
+ "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
2346
+ "dev": true,
2347
+ "dependencies": {
2348
+ "ansi-styles": "^6.1.0",
2349
+ "string-width": "^5.0.1",
2350
+ "strip-ansi": "^7.0.1"
2351
+ },
2352
+ "engines": {
2353
+ "node": ">=12"
2354
+ },
2355
+ "funding": {
2356
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
2357
+ }
2358
+ },
2359
+ "node_modules/wrap-ansi-cjs": {
2360
+ "name": "wrap-ansi",
2361
+ "version": "7.0.0",
2362
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
2363
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
2364
+ "dev": true,
2365
+ "dependencies": {
2366
+ "ansi-styles": "^4.0.0",
2367
+ "string-width": "^4.1.0",
2368
+ "strip-ansi": "^6.0.0"
2369
+ },
2370
+ "engines": {
2371
+ "node": ">=10"
2372
+ },
2373
+ "funding": {
2374
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
2375
+ }
2376
+ },
2377
+ "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": {
2378
+ "version": "5.0.1",
2379
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
2380
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
2381
+ "dev": true,
2382
+ "engines": {
2383
+ "node": ">=8"
2384
+ }
2385
+ },
2386
+ "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": {
2387
+ "version": "4.3.0",
2388
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
2389
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
2390
+ "dev": true,
2391
+ "dependencies": {
2392
+ "color-convert": "^2.0.1"
2393
+ },
2394
+ "engines": {
2395
+ "node": ">=8"
2396
+ },
2397
+ "funding": {
2398
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
2399
+ }
2400
+ },
2401
+ "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": {
2402
+ "version": "8.0.0",
2403
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
2404
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
2405
+ "dev": true
2406
+ },
2407
+ "node_modules/wrap-ansi-cjs/node_modules/string-width": {
2408
+ "version": "4.2.3",
2409
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
2410
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
2411
+ "dev": true,
2412
+ "dependencies": {
2413
+ "emoji-regex": "^8.0.0",
2414
+ "is-fullwidth-code-point": "^3.0.0",
2415
+ "strip-ansi": "^6.0.1"
2416
+ },
2417
+ "engines": {
2418
+ "node": ">=8"
2419
+ }
2420
+ },
2421
+ "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": {
2422
+ "version": "6.0.1",
2423
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
2424
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
2425
+ "dev": true,
2426
+ "dependencies": {
2427
+ "ansi-regex": "^5.0.1"
2428
+ },
2429
+ "engines": {
2430
+ "node": ">=8"
2431
+ }
2432
+ },
2433
+ "node_modules/y18n": {
2434
+ "version": "5.0.8",
2435
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
2436
+ "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
2437
+ "dev": true,
2438
+ "engines": {
2439
+ "node": ">=10"
2440
+ }
2441
+ },
2442
+ "node_modules/yaml": {
2443
+ "version": "2.4.1",
2444
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.1.tgz",
2445
+ "integrity": "sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==",
2446
+ "dev": true,
2447
+ "bin": {
2448
+ "yaml": "bin.mjs"
2449
+ },
2450
+ "engines": {
2451
+ "node": ">= 14"
2452
+ }
2453
+ },
2454
+ "node_modules/yargs": {
2455
+ "version": "17.7.2",
2456
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
2457
+ "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
2458
+ "dev": true,
2459
+ "dependencies": {
2460
+ "cliui": "^8.0.1",
2461
+ "escalade": "^3.1.1",
2462
+ "get-caller-file": "^2.0.5",
2463
+ "require-directory": "^2.1.1",
2464
+ "string-width": "^4.2.3",
2465
+ "y18n": "^5.0.5",
2466
+ "yargs-parser": "^21.1.1"
2467
+ },
2468
+ "engines": {
2469
+ "node": ">=12"
2470
+ }
2471
+ },
2472
+ "node_modules/yargs-parser": {
2473
+ "version": "21.1.1",
2474
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
2475
+ "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
2476
+ "dev": true,
2477
+ "engines": {
2478
+ "node": ">=12"
2479
+ }
2480
+ },
2481
+ "node_modules/yargs/node_modules/ansi-regex": {
2482
+ "version": "5.0.1",
2483
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
2484
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
2485
+ "dev": true,
2486
+ "engines": {
2487
+ "node": ">=8"
2488
+ }
2489
+ },
2490
+ "node_modules/yargs/node_modules/emoji-regex": {
2491
+ "version": "8.0.0",
2492
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
2493
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
2494
+ "dev": true
2495
+ },
2496
+ "node_modules/yargs/node_modules/string-width": {
2497
+ "version": "4.2.3",
2498
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
2499
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
2500
+ "dev": true,
2501
+ "dependencies": {
2502
+ "emoji-regex": "^8.0.0",
2503
+ "is-fullwidth-code-point": "^3.0.0",
2504
+ "strip-ansi": "^6.0.1"
2505
+ },
2506
+ "engines": {
2507
+ "node": ">=8"
2508
+ }
2509
+ },
2510
+ "node_modules/yargs/node_modules/strip-ansi": {
2511
+ "version": "6.0.1",
2512
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
2513
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
2514
+ "dev": true,
2515
+ "dependencies": {
2516
+ "ansi-regex": "^5.0.1"
2517
+ },
2518
+ "engines": {
2519
+ "node": ">=8"
2520
+ }
2521
+ }
2522
+ }
2523
+ }