plutonium 0.16.4 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (717) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/plutonium.css +9 -1
  3. data/app/assets/plutonium.js +23273 -9599
  4. data/app/assets/plutonium.js.map +4 -4
  5. data/app/assets/plutonium.min.js +159 -49
  6. data/app/assets/plutonium.min.js.map +4 -4
  7. data/app/views/plutonium/_resource_header.html.erb +33 -24
  8. data/app/views/plutonium/_resource_sidebar.html.erb +10 -8
  9. data/app/views/rodauth/otp_unlock.html.erb +22 -0
  10. data/app/views/rodauth/otp_unlock_not_available.html.erb +14 -0
  11. data/app/views/rodauth/webauthn_remove.html.erb +1 -0
  12. data/docs/guide/getting-started/resources.md +2 -2
  13. data/docs/guide/tutorial.md +4 -4
  14. data/gemfiles/rails_7.gemfile.lock +406 -0
  15. data/lib/generators/pu/core/assets/assets_generator.rb +1 -1
  16. data/lib/generators/pu/res/conn/conn_generator.rb +24 -10
  17. data/lib/generators/pu/rodauth/concerns/configuration.rb +11 -0
  18. data/lib/generators/pu/rodauth/concerns/feature_selector.rb +4 -0
  19. data/lib/generators/pu/rodauth/install_generator.rb +3 -1
  20. data/lib/generators/pu/rodauth/migration/active_record/otp_unlock.erb +7 -0
  21. data/lib/generators/pu/rodauth/templates/INSTRUCTIONS +2 -46
  22. data/lib/generators/pu/rodauth/templates/app/controllers/plugin_controller.rb.tt +3 -3
  23. data/lib/generators/pu/rodauth/templates/app/mailers/rodauth_mailer.rb.tt +50 -1
  24. data/lib/generators/pu/rodauth/templates/app/rodauth/account_rodauth_plugin.rb.tt +37 -3
  25. data/lib/generators/pu/rodauth/templates/app/rodauth/rodauth_plugin.rb.tt +33 -8
  26. data/lib/generators/pu/rodauth/templates/app/views/rodauth_mailer/otp_disabled.text.erb +2 -0
  27. data/lib/generators/pu/rodauth/templates/app/views/rodauth_mailer/otp_locked_out.text.erb +9 -0
  28. data/lib/generators/pu/rodauth/templates/app/views/rodauth_mailer/otp_setup.text.erb +2 -0
  29. data/lib/generators/pu/rodauth/templates/app/views/rodauth_mailer/otp_unlock_failed.text.erb +8 -0
  30. data/lib/generators/pu/rodauth/templates/app/views/rodauth_mailer/otp_unlocked.text.erb +2 -0
  31. data/lib/generators/pu/rodauth/templates/app/views/rodauth_mailer/webauthn_authenticator_added.text.erb +3 -0
  32. data/lib/generators/pu/rodauth/templates/app/views/rodauth_mailer/webauthn_authenticator_removed.text.erb +3 -0
  33. data/lib/generators/pu/rodauth/views_generator.rb +1 -12
  34. data/lib/plutonium/core/controllers/authorizable.rb +3 -1
  35. data/lib/plutonium/helpers/application_helper.rb +0 -8
  36. data/lib/plutonium/helpers.rb +0 -3
  37. data/lib/plutonium/railtie.rb +0 -14
  38. data/lib/plutonium/reloader.rb +2 -12
  39. data/lib/plutonium/rodauth/controller_methods.rb +1 -3
  40. data/lib/plutonium/ui/component/behaviour.rb +1 -1
  41. data/lib/plutonium/ui/component/kit.rb +59 -15
  42. data/lib/plutonium/ui/display/base.rb +6 -2
  43. data/lib/plutonium/ui/display/{component → components}/association.rb +1 -1
  44. data/lib/plutonium/ui/display/components/attachment.rb +93 -0
  45. data/lib/plutonium/ui/display/{component → components}/markdown.rb +2 -1
  46. data/lib/plutonium/ui/display/resource.rb +21 -6
  47. data/lib/plutonium/ui/display/theme.rb +2 -1
  48. data/lib/plutonium/ui/form/base.rb +7 -0
  49. data/lib/plutonium/ui/form/components/belongs_to.rb +45 -1
  50. data/lib/plutonium/ui/form/components/has_many.rb +45 -1
  51. data/lib/plutonium/ui/form/components/uppy.rb +173 -0
  52. data/lib/plutonium/ui/form/query.rb +5 -5
  53. data/lib/plutonium/ui/form/resource.rb +6 -6
  54. data/lib/plutonium/ui/form/theme.rb +6 -2
  55. data/lib/plutonium/ui/frame_navigator_panel.rb +25 -4
  56. data/lib/plutonium/ui/layout/base.rb +1 -1
  57. data/lib/plutonium/ui/layout/header.rb +1 -1
  58. data/lib/plutonium/ui/layout/sidebar.rb +0 -1
  59. data/lib/plutonium/ui/nav_grid_menu.rb +93 -0
  60. data/lib/plutonium/ui/nav_user.rb +121 -0
  61. data/lib/plutonium/ui/panel.rb +2 -2
  62. data/lib/plutonium/ui/sidebar_menu.rb +19 -39
  63. data/lib/plutonium/ui/tab_list.rb +73 -0
  64. data/lib/plutonium/ui/table/base.rb +7 -1
  65. data/lib/plutonium/ui/table/components/attachment.rb +71 -0
  66. data/lib/plutonium/ui/table/components/pagy_info.rb +12 -4
  67. data/lib/plutonium/ui/table/components/pagy_pagination.rb +5 -5
  68. data/lib/plutonium/ui/table/display_theme.rb +2 -1
  69. data/lib/plutonium/ui/table/resource.rb +11 -12
  70. data/lib/plutonium/version.rb +1 -1
  71. data/package-lock.json +356 -18
  72. data/package.json +6 -2
  73. data/src/css/plutonium.css +3 -0
  74. data/src/js/controllers/attachment_input_controller.js +241 -0
  75. data/src/js/controllers/attachment_preview_container_controller.js +15 -0
  76. data/src/js/controllers/attachment_preview_controller.js +63 -0
  77. data/src/js/controllers/color_mode_controller.js +0 -1
  78. data/src/js/controllers/easymde_controller.js +0 -1
  79. data/src/js/controllers/flatpickr_controller.js +0 -1
  80. data/src/js/controllers/form_controller.js +0 -1
  81. data/src/js/controllers/frame_navigator_controller.js +16 -12
  82. data/src/js/controllers/intl_tel_input_controller.js +0 -1
  83. data/src/js/controllers/register_controllers.js +12 -30
  84. data/src/js/controllers/resource_collapse_controller.js +0 -1
  85. data/src/js/controllers/resource_dismiss_controller.js +0 -1
  86. data/src/js/controllers/resource_drop_down_controller.js +161 -9
  87. data/src/js/controllers/{header_controller.js → resource_header_controller.js} +1 -0
  88. data/src/js/controllers/resource_tab_list_controller.js +64 -0
  89. data/src/js/controllers/select_navigator.js +16 -0
  90. data/src/js/controllers/slim_select_controller.js +0 -1
  91. data/src/js/support/dom_element.js +78 -0
  92. data/src/js/support/mime_icon.js +127 -0
  93. data/tailwind.options.js +0 -5
  94. metadata +29 -642
  95. data/README copy.md +0 -83
  96. data/app/assets/application.js.bk +0 -31419
  97. data/app/assets/icons/flags/ghana.svg +0 -49
  98. data/app/assets/icons/outline/address-book.svg +0 -3
  99. data/app/assets/icons/outline/adjustments-horizontal.svg +0 -3
  100. data/app/assets/icons/outline/adjustments-vertical.svg +0 -3
  101. data/app/assets/icons/outline/align-center.svg +0 -3
  102. data/app/assets/icons/outline/angle-down.svg +0 -3
  103. data/app/assets/icons/outline/angle-left.svg +0 -3
  104. data/app/assets/icons/outline/angle-right.svg +0 -3
  105. data/app/assets/icons/outline/angle-up.svg +0 -3
  106. data/app/assets/icons/outline/annotation.svg +0 -3
  107. data/app/assets/icons/outline/archive-arrow-down.svg +0 -3
  108. data/app/assets/icons/outline/archive.svg +0 -3
  109. data/app/assets/icons/outline/arrow-down-to-bracket.svg +0 -3
  110. data/app/assets/icons/outline/arrow-down.svg +0 -3
  111. data/app/assets/icons/outline/arrow-left-to-bracket.svg +0 -3
  112. data/app/assets/icons/outline/arrow-left.svg +0 -3
  113. data/app/assets/icons/outline/arrow-right-alt.svg +0 -3
  114. data/app/assets/icons/outline/arrow-right-to-bracket.svg +0 -3
  115. data/app/assets/icons/outline/arrow-right.svg +0 -3
  116. data/app/assets/icons/outline/arrow-sort-letters.svg +0 -3
  117. data/app/assets/icons/outline/arrow-up-down.svg +0 -3
  118. data/app/assets/icons/outline/arrow-up-from-bracket.svg +0 -3
  119. data/app/assets/icons/outline/arrow-up-right-down-left.svg +0 -3
  120. data/app/assets/icons/outline/arrow-up-right-from-square.svg +0 -3
  121. data/app/assets/icons/outline/arrow-up.svg +0 -3
  122. data/app/assets/icons/outline/arrows-repeat-count.svg +0 -3
  123. data/app/assets/icons/outline/arrows-repeat.svg +0 -3
  124. data/app/assets/icons/outline/atom.svg +0 -3
  125. data/app/assets/icons/outline/backward-step.svg +0 -3
  126. data/app/assets/icons/outline/badge-check.svg +0 -3
  127. data/app/assets/icons/outline/bars-from-left.svg +0 -3
  128. data/app/assets/icons/outline/bars.svg +0 -3
  129. data/app/assets/icons/outline/bell-active-alt.svg +0 -3
  130. data/app/assets/icons/outline/bell-active.svg +0 -3
  131. data/app/assets/icons/outline/bell-ring.svg +0 -3
  132. data/app/assets/icons/outline/bell.svg +0 -3
  133. data/app/assets/icons/outline/blender-phone.svg +0 -3
  134. data/app/assets/icons/outline/book-open.svg +0 -3
  135. data/app/assets/icons/outline/book.svg +0 -3
  136. data/app/assets/icons/outline/bookmark.svg +0 -3
  137. data/app/assets/icons/outline/brain.svg +0 -3
  138. data/app/assets/icons/outline/briefcase.svg +0 -3
  139. data/app/assets/icons/outline/bug.svg +0 -3
  140. data/app/assets/icons/outline/building.svg +0 -3
  141. data/app/assets/icons/outline/bullhorn.svg +0 -3
  142. data/app/assets/icons/outline/calendar-edit.svg +0 -3
  143. data/app/assets/icons/outline/calendar-month.svg +0 -3
  144. data/app/assets/icons/outline/calendar-plus.svg +0 -3
  145. data/app/assets/icons/outline/calendar-week.svg +0 -3
  146. data/app/assets/icons/outline/camera-photo.svg +0 -4
  147. data/app/assets/icons/outline/caption.svg +0 -3
  148. data/app/assets/icons/outline/caret-down.svg +0 -3
  149. data/app/assets/icons/outline/caret-left.svg +0 -3
  150. data/app/assets/icons/outline/caret-right.svg +0 -3
  151. data/app/assets/icons/outline/caret-sort.svg +0 -3
  152. data/app/assets/icons/outline/caret-up.svg +0 -3
  153. data/app/assets/icons/outline/cart-plus-alt.svg +0 -3
  154. data/app/assets/icons/outline/cart-plus.svg +0 -3
  155. data/app/assets/icons/outline/cart.svg +0 -3
  156. data/app/assets/icons/outline/cash.svg +0 -3
  157. data/app/assets/icons/outline/chart-line-down.svg +0 -3
  158. data/app/assets/icons/outline/chart-line-up.svg +0 -3
  159. data/app/assets/icons/outline/chart-mixed-dollar.svg +0 -3
  160. data/app/assets/icons/outline/chart-mixed.svg +0 -3
  161. data/app/assets/icons/outline/chart-pie.svg +0 -4
  162. data/app/assets/icons/outline/chart.svg +0 -3
  163. data/app/assets/icons/outline/check-circle.svg +0 -3
  164. data/app/assets/icons/outline/check-plus-circle.svg +0 -3
  165. data/app/assets/icons/outline/check.svg +0 -3
  166. data/app/assets/icons/outline/chevron-double-down.svg +0 -3
  167. data/app/assets/icons/outline/chevron-double-left.svg +0 -3
  168. data/app/assets/icons/outline/chevron-double-right.svg +0 -3
  169. data/app/assets/icons/outline/chevron-double-up.svg +0 -3
  170. data/app/assets/icons/outline/chevron-down.svg +0 -3
  171. data/app/assets/icons/outline/chevron-left.svg +0 -3
  172. data/app/assets/icons/outline/chevron-right.svg +0 -3
  173. data/app/assets/icons/outline/chevron-sort.svg +0 -3
  174. data/app/assets/icons/outline/chevron-up.svg +0 -3
  175. data/app/assets/icons/outline/circle-pause.svg +0 -3
  176. data/app/assets/icons/outline/circle-plus.svg +0 -3
  177. data/app/assets/icons/outline/clapperboard-play.svg +0 -3
  178. data/app/assets/icons/outline/clipboard-check.svg +0 -3
  179. data/app/assets/icons/outline/clipboard-list.svg +0 -3
  180. data/app/assets/icons/outline/clipboard.svg +0 -3
  181. data/app/assets/icons/outline/clock.svg +0 -3
  182. data/app/assets/icons/outline/close-circle.svg +0 -3
  183. data/app/assets/icons/outline/close.svg +0 -3
  184. data/app/assets/icons/outline/cloud-arrow-up.svg +0 -3
  185. data/app/assets/icons/outline/code-branch.svg +0 -3
  186. data/app/assets/icons/outline/code-fork.svg +0 -3
  187. data/app/assets/icons/outline/code-merge.svg +0 -3
  188. data/app/assets/icons/outline/code-pull-request.svg +0 -3
  189. data/app/assets/icons/outline/code.svg +0 -3
  190. data/app/assets/icons/outline/cog.svg +0 -4
  191. data/app/assets/icons/outline/column.svg +0 -3
  192. data/app/assets/icons/outline/command.svg +0 -3
  193. data/app/assets/icons/outline/compress.svg +0 -3
  194. data/app/assets/icons/outline/computer-speaker.svg +0 -3
  195. data/app/assets/icons/outline/credit-card.svg +0 -3
  196. data/app/assets/icons/outline/database.svg +0 -3
  197. data/app/assets/icons/outline/desktop-pc.svg +0 -3
  198. data/app/assets/icons/outline/dna.svg +0 -3
  199. data/app/assets/icons/outline/dollar.svg +0 -3
  200. data/app/assets/icons/outline/dots-horizontal.svg +0 -3
  201. data/app/assets/icons/outline/dots-vertical.svg +0 -3
  202. data/app/assets/icons/outline/download.svg +0 -3
  203. data/app/assets/icons/outline/draw-square.svg +0 -3
  204. data/app/assets/icons/outline/edit.svg +0 -3
  205. data/app/assets/icons/outline/envelope-open.svg +0 -3
  206. data/app/assets/icons/outline/envelope.svg +0 -3
  207. data/app/assets/icons/outline/euro.svg +0 -3
  208. data/app/assets/icons/outline/exclamation-circle.svg +0 -3
  209. data/app/assets/icons/outline/expand.svg +0 -3
  210. data/app/assets/icons/outline/eye-slash.svg +0 -3
  211. data/app/assets/icons/outline/eye.svg +0 -4
  212. data/app/assets/icons/outline/face-explode.svg +0 -4
  213. data/app/assets/icons/outline/face-grin-stars.svg +0 -6
  214. data/app/assets/icons/outline/face-grin.svg +0 -3
  215. data/app/assets/icons/outline/face-laugh.svg +0 -3
  216. data/app/assets/icons/outline/file-chart-bar.svg +0 -3
  217. data/app/assets/icons/outline/file-check.svg +0 -3
  218. data/app/assets/icons/outline/file-circle-plus.svg +0 -3
  219. data/app/assets/icons/outline/file-clone.svg +0 -3
  220. data/app/assets/icons/outline/file-code.svg +0 -3
  221. data/app/assets/icons/outline/file-copy-alt.svg +0 -3
  222. data/app/assets/icons/outline/file-copy.svg +0 -3
  223. data/app/assets/icons/outline/file-csv.svg +0 -3
  224. data/app/assets/icons/outline/file-export.svg +0 -3
  225. data/app/assets/icons/outline/file-image.svg +0 -4
  226. data/app/assets/icons/outline/file-import.svg +0 -3
  227. data/app/assets/icons/outline/file-invoice.svg +0 -3
  228. data/app/assets/icons/outline/file-lines.svg +0 -3
  229. data/app/assets/icons/outline/file-music.svg +0 -3
  230. data/app/assets/icons/outline/file-paste.svg +0 -3
  231. data/app/assets/icons/outline/file-pdf.svg +0 -3
  232. data/app/assets/icons/outline/file-pen.svg +0 -3
  233. data/app/assets/icons/outline/file-ppt.svg +0 -3
  234. data/app/assets/icons/outline/file-search.svg +0 -3
  235. data/app/assets/icons/outline/file-shield.svg +0 -3
  236. data/app/assets/icons/outline/file-video.svg +0 -3
  237. data/app/assets/icons/outline/file-word.svg +0 -3
  238. data/app/assets/icons/outline/file-zip.svg +0 -3
  239. data/app/assets/icons/outline/file.svg +0 -3
  240. data/app/assets/icons/outline/filter.svg +0 -3
  241. data/app/assets/icons/outline/fingerprint.svg +0 -3
  242. data/app/assets/icons/outline/fire.svg +0 -3
  243. data/app/assets/icons/outline/flag.svg +0 -3
  244. data/app/assets/icons/outline/folder-arrow-right.svg +0 -3
  245. data/app/assets/icons/outline/folder-duplicate.svg +0 -3
  246. data/app/assets/icons/outline/folder-open.svg +0 -3
  247. data/app/assets/icons/outline/folder-plus.svg +0 -3
  248. data/app/assets/icons/outline/folder.svg +0 -3
  249. data/app/assets/icons/outline/forward-step.svg +0 -3
  250. data/app/assets/icons/outline/forward.svg +0 -3
  251. data/app/assets/icons/outline/gift-box.svg +0 -3
  252. data/app/assets/icons/outline/globe.svg +0 -3
  253. data/app/assets/icons/outline/grid-plus.svg +0 -3
  254. data/app/assets/icons/outline/grid.svg +0 -3
  255. data/app/assets/icons/outline/headphones.svg +0 -3
  256. data/app/assets/icons/outline/heart.svg +0 -3
  257. data/app/assets/icons/outline/home.svg +0 -3
  258. data/app/assets/icons/outline/hourglass.svg +0 -3
  259. data/app/assets/icons/outline/image.svg +0 -3
  260. data/app/assets/icons/outline/inbox-full.svg +0 -3
  261. data/app/assets/icons/outline/inbox.svg +0 -3
  262. data/app/assets/icons/outline/indent.svg +0 -3
  263. data/app/assets/icons/outline/info-circle.svg +0 -3
  264. data/app/assets/icons/outline/keyboard.svg +0 -5
  265. data/app/assets/icons/outline/label.svg +0 -3
  266. data/app/assets/icons/outline/landmark.svg +0 -3
  267. data/app/assets/icons/outline/layers.svg +0 -3
  268. data/app/assets/icons/outline/letter-bold.svg +0 -3
  269. data/app/assets/icons/outline/letter-italic.svg +0 -3
  270. data/app/assets/icons/outline/letter-underline.svg +0 -3
  271. data/app/assets/icons/outline/life-saver.svg +0 -3
  272. data/app/assets/icons/outline/lightbulb.svg +0 -3
  273. data/app/assets/icons/outline/link.svg +0 -3
  274. data/app/assets/icons/outline/list-music.svg +0 -3
  275. data/app/assets/icons/outline/list.svg +0 -3
  276. data/app/assets/icons/outline/lock-open.svg +0 -3
  277. data/app/assets/icons/outline/lock-time.svg +0 -3
  278. data/app/assets/icons/outline/lock.svg +0 -3
  279. data/app/assets/icons/outline/mail-box.svg +0 -3
  280. data/app/assets/icons/outline/map-pin-alt.svg +0 -4
  281. data/app/assets/icons/outline/map-pin.svg +0 -3
  282. data/app/assets/icons/outline/message-caption.svg +0 -3
  283. data/app/assets/icons/outline/message-dots.svg +0 -3
  284. data/app/assets/icons/outline/messages.svg +0 -3
  285. data/app/assets/icons/outline/microphone.svg +0 -3
  286. data/app/assets/icons/outline/minimize.svg +0 -3
  287. data/app/assets/icons/outline/minus.svg +0 -3
  288. data/app/assets/icons/outline/mobile-phone.svg +0 -3
  289. data/app/assets/icons/outline/moon.svg +0 -3
  290. data/app/assets/icons/outline/newspaper.svg +0 -3
  291. data/app/assets/icons/outline/ordered-list.svg +0 -3
  292. data/app/assets/icons/outline/outdent.svg +0 -3
  293. data/app/assets/icons/outline/palette.svg +0 -3
  294. data/app/assets/icons/outline/paper-clip.svg +0 -3
  295. data/app/assets/icons/outline/paper-plane.svg +0 -3
  296. data/app/assets/icons/outline/paragraph.svg +0 -3
  297. data/app/assets/icons/outline/pause.svg +0 -3
  298. data/app/assets/icons/outline/pen-nib.svg +0 -3
  299. data/app/assets/icons/outline/pen.svg +0 -3
  300. data/app/assets/icons/outline/phone.svg +0 -3
  301. data/app/assets/icons/outline/play.svg +0 -3
  302. data/app/assets/icons/outline/plus.svg +0 -3
  303. data/app/assets/icons/outline/printer.svg +0 -3
  304. data/app/assets/icons/outline/profile-card.svg +0 -3
  305. data/app/assets/icons/outline/question-circle.svg +0 -3
  306. data/app/assets/icons/outline/quote.svg +0 -3
  307. data/app/assets/icons/outline/receipt.svg +0 -3
  308. data/app/assets/icons/outline/rectangle-list.svg +0 -3
  309. data/app/assets/icons/outline/redo.svg +0 -3
  310. data/app/assets/icons/outline/refresh.svg +0 -3
  311. data/app/assets/icons/outline/reply-all.svg +0 -3
  312. data/app/assets/icons/outline/reply.svg +0 -3
  313. data/app/assets/icons/outline/restore-window.svg +0 -3
  314. data/app/assets/icons/outline/rocket.svg +0 -3
  315. data/app/assets/icons/outline/ruler-combined.svg +0 -3
  316. data/app/assets/icons/outline/sale-percent.svg +0 -3
  317. data/app/assets/icons/outline/scale-balanced.svg +0 -3
  318. data/app/assets/icons/outline/search.svg +0 -3
  319. data/app/assets/icons/outline/share-all.svg +0 -3
  320. data/app/assets/icons/outline/share-nodes.svg +0 -3
  321. data/app/assets/icons/outline/shield-check.svg +0 -3
  322. data/app/assets/icons/outline/shield.svg +0 -3
  323. data/app/assets/icons/outline/shopping-bag.svg +0 -3
  324. data/app/assets/icons/outline/shuffle.svg +0 -3
  325. data/app/assets/icons/outline/sort-horizontal.svg +0 -3
  326. data/app/assets/icons/outline/sort.svg +0 -3
  327. data/app/assets/icons/outline/star-half-stroke.svg +0 -3
  328. data/app/assets/icons/outline/star-half.svg +0 -3
  329. data/app/assets/icons/outline/star.svg +0 -3
  330. data/app/assets/icons/outline/store.svg +0 -3
  331. data/app/assets/icons/outline/sun.svg +0 -3
  332. data/app/assets/icons/outline/swatchbook.svg +0 -3
  333. data/app/assets/icons/outline/table-column.svg +0 -3
  334. data/app/assets/icons/outline/table-row.svg +0 -3
  335. data/app/assets/icons/outline/tablet.svg +0 -3
  336. data/app/assets/icons/outline/tag.svg +0 -3
  337. data/app/assets/icons/outline/terminal.svg +0 -3
  338. data/app/assets/icons/outline/text-size.svg +0 -3
  339. data/app/assets/icons/outline/text-slash.svg +0 -3
  340. data/app/assets/icons/outline/thumbs-down.svg +0 -3
  341. data/app/assets/icons/outline/thumbs-up.svg +0 -3
  342. data/app/assets/icons/outline/ticket.svg +0 -3
  343. data/app/assets/icons/outline/trash-bin.svg +0 -3
  344. data/app/assets/icons/outline/truck.svg +0 -3
  345. data/app/assets/icons/outline/undo.svg +0 -3
  346. data/app/assets/icons/outline/upload.svg +0 -3
  347. data/app/assets/icons/outline/user-add.svg +0 -3
  348. data/app/assets/icons/outline/user-circle.svg +0 -3
  349. data/app/assets/icons/outline/user-edit.svg +0 -3
  350. data/app/assets/icons/outline/user-headset.svg +0 -3
  351. data/app/assets/icons/outline/user-remove.svg +0 -3
  352. data/app/assets/icons/outline/user-settings.svg +0 -3
  353. data/app/assets/icons/outline/user.svg +0 -3
  354. data/app/assets/icons/outline/users-group.svg +0 -3
  355. data/app/assets/icons/outline/users.svg +0 -3
  356. data/app/assets/icons/outline/video-camera.svg +0 -3
  357. data/app/assets/icons/outline/volume-down.svg +0 -3
  358. data/app/assets/icons/outline/volume-up.svg +0 -3
  359. data/app/assets/icons/outline/wallet.svg +0 -3
  360. data/app/assets/icons/outline/wand-magic-sparkles.svg +0 -3
  361. data/app/assets/icons/outline/window.svg +0 -3
  362. data/app/assets/icons/outline/zoom-in.svg +0 -3
  363. data/app/assets/icons/outline/zoom-out.svg +0 -3
  364. data/app/assets/icons/solid/X.svg +0 -3
  365. data/app/assets/icons/solid/address-book.svg +0 -3
  366. data/app/assets/icons/solid/adjustments-horizontal.svg +0 -3
  367. data/app/assets/icons/solid/adjustments-vertical.svg +0 -3
  368. data/app/assets/icons/solid/annotation.svg +0 -3
  369. data/app/assets/icons/solid/apple.svg +0 -3
  370. data/app/assets/icons/solid/archive-arrow-down.svg +0 -3
  371. data/app/assets/icons/solid/archive.svg +0 -4
  372. data/app/assets/icons/solid/arrow-right-alt.svg +0 -3
  373. data/app/assets/icons/solid/arrow-up-right-from-square.svg +0 -4
  374. data/app/assets/icons/solid/backward-step.svg +0 -3
  375. data/app/assets/icons/solid/badge-check.svg +0 -3
  376. data/app/assets/icons/solid/bell-active-alt.svg +0 -3
  377. data/app/assets/icons/solid/bell-active.svg +0 -5
  378. data/app/assets/icons/solid/bell-ring.svg +0 -3
  379. data/app/assets/icons/solid/bell.svg +0 -3
  380. data/app/assets/icons/solid/blender-phone.svg +0 -3
  381. data/app/assets/icons/solid/book-open.svg +0 -3
  382. data/app/assets/icons/solid/book.svg +0 -3
  383. data/app/assets/icons/solid/bookmark.svg +0 -3
  384. data/app/assets/icons/solid/brain.svg +0 -3
  385. data/app/assets/icons/solid/briefcase.svg +0 -3
  386. data/app/assets/icons/solid/bug.svg +0 -3
  387. data/app/assets/icons/solid/building.svg +0 -3
  388. data/app/assets/icons/solid/bullhorn.svg +0 -3
  389. data/app/assets/icons/solid/calendar-edit.svg +0 -4
  390. data/app/assets/icons/solid/calendar-month.svg +0 -3
  391. data/app/assets/icons/solid/calendar-plus.svg +0 -3
  392. data/app/assets/icons/solid/calendar-week.svg +0 -3
  393. data/app/assets/icons/solid/camera-photo.svg +0 -3
  394. data/app/assets/icons/solid/caption.svg +0 -3
  395. data/app/assets/icons/solid/caret-down.svg +0 -3
  396. data/app/assets/icons/solid/caret-left.svg +0 -3
  397. data/app/assets/icons/solid/caret-right.svg +0 -3
  398. data/app/assets/icons/solid/caret-sort.svg +0 -3
  399. data/app/assets/icons/solid/caret-up.svg +0 -3
  400. data/app/assets/icons/solid/cart-plus-alt.svg +0 -4
  401. data/app/assets/icons/solid/cart-plus.svg +0 -4
  402. data/app/assets/icons/solid/cart.svg +0 -3
  403. data/app/assets/icons/solid/cash.svg +0 -5
  404. data/app/assets/icons/solid/chart-mixed-dollar.svg +0 -3
  405. data/app/assets/icons/solid/chart-pie.svg +0 -4
  406. data/app/assets/icons/solid/check-circle.svg +0 -3
  407. data/app/assets/icons/solid/check-plus-circle.svg +0 -4
  408. data/app/assets/icons/solid/circle-pause.svg +0 -3
  409. data/app/assets/icons/solid/circle-plus.svg +0 -3
  410. data/app/assets/icons/solid/clapperboard-play.svg +0 -3
  411. data/app/assets/icons/solid/clipboard-check.svg +0 -3
  412. data/app/assets/icons/solid/clipboard-list.svg +0 -3
  413. data/app/assets/icons/solid/clipboard.svg +0 -3
  414. data/app/assets/icons/solid/clock.svg +0 -3
  415. data/app/assets/icons/solid/close-circle.svg +0 -3
  416. data/app/assets/icons/solid/cloud-arrow-up.svg +0 -4
  417. data/app/assets/icons/solid/code-branch.svg +0 -3
  418. data/app/assets/icons/solid/code-fork.svg +0 -3
  419. data/app/assets/icons/solid/code-merge.svg +0 -3
  420. data/app/assets/icons/solid/code-pull-request.svg +0 -3
  421. data/app/assets/icons/solid/cog.svg +0 -3
  422. data/app/assets/icons/solid/column.svg +0 -3
  423. data/app/assets/icons/solid/computer-speaker.svg +0 -4
  424. data/app/assets/icons/solid/credit-card.svg +0 -4
  425. data/app/assets/icons/solid/css.svg +0 -3
  426. data/app/assets/icons/solid/database.svg +0 -3
  427. data/app/assets/icons/solid/desktop-pc.svg +0 -3
  428. data/app/assets/icons/solid/discord.svg +0 -3
  429. data/app/assets/icons/solid/download.svg +0 -4
  430. data/app/assets/icons/solid/draw-square.svg +0 -4
  431. data/app/assets/icons/solid/dribbble.svg +0 -3
  432. data/app/assets/icons/solid/dropbox.svg +0 -4
  433. data/app/assets/icons/solid/edit.svg +0 -4
  434. data/app/assets/icons/solid/envelope-open.svg +0 -4
  435. data/app/assets/icons/solid/envelope.svg +0 -4
  436. data/app/assets/icons/solid/exclamation-circle.svg +0 -3
  437. data/app/assets/icons/solid/eye-slash.svg +0 -5
  438. data/app/assets/icons/solid/eye.svg +0 -3
  439. data/app/assets/icons/solid/face-explode.svg +0 -3
  440. data/app/assets/icons/solid/face-grin-stars.svg +0 -3
  441. data/app/assets/icons/solid/face-grin.svg +0 -3
  442. data/app/assets/icons/solid/face-laugh.svg +0 -3
  443. data/app/assets/icons/solid/facebook.svg +0 -3
  444. data/app/assets/icons/solid/file-chart-bar.svg +0 -3
  445. data/app/assets/icons/solid/file-check.svg +0 -4
  446. data/app/assets/icons/solid/file-circle-plus.svg +0 -4
  447. data/app/assets/icons/solid/file-clone.svg +0 -4
  448. data/app/assets/icons/solid/file-code.svg +0 -3
  449. data/app/assets/icons/solid/file-copy-alt.svg +0 -4
  450. data/app/assets/icons/solid/file-copy.svg +0 -4
  451. data/app/assets/icons/solid/file-csv.svg +0 -3
  452. data/app/assets/icons/solid/file-export.svg +0 -3
  453. data/app/assets/icons/solid/file-image.svg +0 -3
  454. data/app/assets/icons/solid/file-import.svg +0 -3
  455. data/app/assets/icons/solid/file-invoice.svg +0 -3
  456. data/app/assets/icons/solid/file-lines.svg +0 -3
  457. data/app/assets/icons/solid/file-music.svg +0 -3
  458. data/app/assets/icons/solid/file-paste.svg +0 -4
  459. data/app/assets/icons/solid/file-pdf.svg +0 -3
  460. data/app/assets/icons/solid/file-pen.svg +0 -4
  461. data/app/assets/icons/solid/file-ppt.svg +0 -3
  462. data/app/assets/icons/solid/file-search.svg +0 -3
  463. data/app/assets/icons/solid/file-shield.svg +0 -4
  464. data/app/assets/icons/solid/file-video.svg +0 -3
  465. data/app/assets/icons/solid/file-word.svg +0 -3
  466. data/app/assets/icons/solid/file-zip.svg +0 -3
  467. data/app/assets/icons/solid/file.svg +0 -3
  468. data/app/assets/icons/solid/filter.svg +0 -3
  469. data/app/assets/icons/solid/fire.svg +0 -3
  470. data/app/assets/icons/solid/flag.svg +0 -3
  471. data/app/assets/icons/solid/flowbite.svg +0 -6
  472. data/app/assets/icons/solid/folder-arrow-right.svg +0 -3
  473. data/app/assets/icons/solid/folder-duplicate.svg +0 -4
  474. data/app/assets/icons/solid/folder-open.svg +0 -3
  475. data/app/assets/icons/solid/folder-plus.svg +0 -3
  476. data/app/assets/icons/solid/folder.svg +0 -3
  477. data/app/assets/icons/solid/forward-step.svg +0 -3
  478. data/app/assets/icons/solid/forward.svg +0 -3
  479. data/app/assets/icons/solid/gift-box.svg +0 -3
  480. data/app/assets/icons/solid/github.svg +0 -3
  481. data/app/assets/icons/solid/globe.svg +0 -3
  482. data/app/assets/icons/solid/google.svg +0 -3
  483. data/app/assets/icons/solid/grid-plus.svg +0 -3
  484. data/app/assets/icons/solid/grid.svg +0 -3
  485. data/app/assets/icons/solid/headphones.svg +0 -3
  486. data/app/assets/icons/solid/heart.svg +0 -3
  487. data/app/assets/icons/solid/home.svg +0 -3
  488. data/app/assets/icons/solid/hourglass.svg +0 -3
  489. data/app/assets/icons/solid/html.svg +0 -3
  490. data/app/assets/icons/solid/image.svg +0 -4
  491. data/app/assets/icons/solid/inbox-full.svg +0 -3
  492. data/app/assets/icons/solid/inbox.svg +0 -3
  493. data/app/assets/icons/solid/indent.svg +0 -3
  494. data/app/assets/icons/solid/info-circle.svg +0 -3
  495. data/app/assets/icons/solid/keyboard.svg +0 -3
  496. data/app/assets/icons/solid/label.svg +0 -3
  497. data/app/assets/icons/solid/landmark.svg +0 -4
  498. data/app/assets/icons/solid/layers.svg +0 -4
  499. data/app/assets/icons/solid/life-saver.svg +0 -3
  500. data/app/assets/icons/solid/lightbulb.svg +0 -3
  501. data/app/assets/icons/solid/linkedin.svg +0 -4
  502. data/app/assets/icons/solid/list-music.svg +0 -3
  503. data/app/assets/icons/solid/lock-open.svg +0 -3
  504. data/app/assets/icons/solid/lock-time.svg +0 -4
  505. data/app/assets/icons/solid/lock.svg +0 -3
  506. data/app/assets/icons/solid/mail-box.svg +0 -3
  507. data/app/assets/icons/solid/map-pin-alt.svg +0 -3
  508. data/app/assets/icons/solid/map-pin.svg +0 -3
  509. data/app/assets/icons/solid/message-caption.svg +0 -3
  510. data/app/assets/icons/solid/message-dots.svg +0 -3
  511. data/app/assets/icons/solid/messages.svg +0 -4
  512. data/app/assets/icons/solid/microphone.svg +0 -4
  513. data/app/assets/icons/solid/mobile-phone.svg +0 -3
  514. data/app/assets/icons/solid/moon.svg +0 -3
  515. data/app/assets/icons/solid/newspaper.svg +0 -3
  516. data/app/assets/icons/solid/npm.svg +0 -3
  517. data/app/assets/icons/solid/outdent.svg +0 -3
  518. data/app/assets/icons/solid/palette.svg +0 -3
  519. data/app/assets/icons/solid/paper-plane.svg +0 -3
  520. data/app/assets/icons/solid/paragraph.svg +0 -3
  521. data/app/assets/icons/solid/pause.svg +0 -3
  522. data/app/assets/icons/solid/pen-nib.svg +0 -3
  523. data/app/assets/icons/solid/pen.svg +0 -3
  524. data/app/assets/icons/solid/phone.svg +0 -3
  525. data/app/assets/icons/solid/play.svg +0 -3
  526. data/app/assets/icons/solid/printer.svg +0 -3
  527. data/app/assets/icons/solid/profile-card.svg +0 -3
  528. data/app/assets/icons/solid/question-circle.svg +0 -3
  529. data/app/assets/icons/solid/quote.svg +0 -3
  530. data/app/assets/icons/solid/react.svg +0 -4
  531. data/app/assets/icons/solid/receipt.svg +0 -3
  532. data/app/assets/icons/solid/rectangle-list.svg +0 -3
  533. data/app/assets/icons/solid/reply-all.svg +0 -3
  534. data/app/assets/icons/solid/reply.svg +0 -3
  535. data/app/assets/icons/solid/rocket.svg +0 -3
  536. data/app/assets/icons/solid/sale-percent.svg +0 -3
  537. data/app/assets/icons/solid/scale-balanced.svg +0 -3
  538. data/app/assets/icons/solid/search.svg +0 -4
  539. data/app/assets/icons/solid/share-all.svg +0 -3
  540. data/app/assets/icons/solid/share-nodes.svg +0 -3
  541. data/app/assets/icons/solid/shield-check.svg +0 -3
  542. data/app/assets/icons/solid/shield.svg +0 -3
  543. data/app/assets/icons/solid/shopping-bag.svg +0 -3
  544. data/app/assets/icons/solid/stackoverflow.svg +0 -4
  545. data/app/assets/icons/solid/star-half-stroke.svg +0 -3
  546. data/app/assets/icons/solid/star-half.svg +0 -3
  547. data/app/assets/icons/solid/star.svg +0 -3
  548. data/app/assets/icons/solid/store.svg +0 -3
  549. data/app/assets/icons/solid/sun.svg +0 -3
  550. data/app/assets/icons/solid/swatchbook.svg +0 -3
  551. data/app/assets/icons/solid/table-column.svg +0 -3
  552. data/app/assets/icons/solid/table-row.svg +0 -3
  553. data/app/assets/icons/solid/tablet.svg +0 -3
  554. data/app/assets/icons/solid/tag.svg +0 -3
  555. data/app/assets/icons/solid/tailwind.svg +0 -3
  556. data/app/assets/icons/solid/terminal.svg +0 -3
  557. data/app/assets/icons/solid/thumbs-down.svg +0 -3
  558. data/app/assets/icons/solid/thumbs-up.svg +0 -3
  559. data/app/assets/icons/solid/ticket.svg +0 -3
  560. data/app/assets/icons/solid/trash-bin.svg +0 -3
  561. data/app/assets/icons/solid/truck.svg +0 -3
  562. data/app/assets/icons/solid/twitter.svg +0 -3
  563. data/app/assets/icons/solid/upload.svg +0 -3
  564. data/app/assets/icons/solid/user-add.svg +0 -3
  565. data/app/assets/icons/solid/user-circle.svg +0 -3
  566. data/app/assets/icons/solid/user-edit.svg +0 -3
  567. data/app/assets/icons/solid/user-headset.svg +0 -3
  568. data/app/assets/icons/solid/user-remove.svg +0 -3
  569. data/app/assets/icons/solid/user-settings.svg +0 -3
  570. data/app/assets/icons/solid/user.svg +0 -3
  571. data/app/assets/icons/solid/users-group.svg +0 -3
  572. data/app/assets/icons/solid/users.svg +0 -3
  573. data/app/assets/icons/solid/video-camera.svg +0 -3
  574. data/app/assets/icons/solid/volume-down.svg +0 -4
  575. data/app/assets/icons/solid/volume-up.svg +0 -5
  576. data/app/assets/icons/solid/vue.svg +0 -3
  577. data/app/assets/icons/solid/wallet.svg +0 -4
  578. data/app/assets/icons/solid/wand-magic-sparkles.svg +0 -4
  579. data/app/assets/icons/solid/window-restore.svg +0 -4
  580. data/app/assets/icons/solid/window.svg +0 -3
  581. data/app/assets/icons/solid/youtube.svg +0 -3
  582. data/app/assets/icons/solid/zoom-in.svg +0 -3
  583. data/app/assets/icons/solid/zoom-out.svg +0 -3
  584. data/app/views/components/action_button/action_button_component.html.erb +0 -7
  585. data/app/views/components/action_button/action_button_component.rb +0 -15
  586. data/app/views/components/attributes.rb +0 -184
  587. data/app/views/components/base.rb +0 -29
  588. data/app/views/components/block/block_component.html.erb +0 -3
  589. data/app/views/components/block/block_component.rb +0 -44
  590. data/app/views/components/breadcrumbs/breadcrumbs_component.html.erb +0 -96
  591. data/app/views/components/breadcrumbs/breadcrumbs_component.rb +0 -9
  592. data/app/views/components/button/button_component.html.erb +0 -11
  593. data/app/views/components/button/button_component.rb +0 -128
  594. data/app/views/components/dyna_frame_content/dyna_frame_content_component.html.erb +0 -8
  595. data/app/views/components/dyna_frame_content/dyna_frame_content_component.rb +0 -6
  596. data/app/views/components/dyna_frame_host/dyna_frame_host_component.html.erb +0 -3
  597. data/app/views/components/dyna_frame_host/dyna_frame_host_component.rb +0 -18
  598. data/app/views/components/empty_card/empty_card_component.html.erb +0 -6
  599. data/app/views/components/empty_card/empty_card_component.rb +0 -7
  600. data/app/views/components/form/form_builder.rb +0 -75
  601. data/app/views/components/form/form_component.html.erb +0 -73
  602. data/app/views/components/form/form_component.rb +0 -23
  603. data/app/views/components/has_many_panel/has_many_panel_component.html.erb +0 -25
  604. data/app/views/components/has_many_panel/has_many_panel_component.rb +0 -16
  605. data/app/views/components/header/header_component.html.erb +0 -1
  606. data/app/views/components/header/header_component.rb +0 -7
  607. data/app/views/components/interactive_action_form/interactive_action_form_component.html.erb +0 -39
  608. data/app/views/components/interactive_action_form/interactive_action_form_component.rb +0 -8
  609. data/app/views/components/nav_grid_menu/nav_grid_menu_component.html.erb +0 -24
  610. data/app/views/components/nav_grid_menu/nav_grid_menu_component.rb +0 -23
  611. data/app/views/components/nav_grid_menu_item/nav_grid_menu_item_component.html.erb +0 -4
  612. data/app/views/components/nav_grid_menu_item/nav_grid_menu_item_component.rb +0 -20
  613. data/app/views/components/nav_user/nav_user_component.html.erb +0 -50
  614. data/app/views/components/nav_user/nav_user_component.rb +0 -32
  615. data/app/views/components/nav_user_link/nav_user_link_component.html.erb +0 -7
  616. data/app/views/components/nav_user_link/nav_user_link_component.rb +0 -23
  617. data/app/views/components/nav_user_section/nav_user_section_component.html.erb +0 -7
  618. data/app/views/components/nav_user_section/nav_user_section_component.rb +0 -18
  619. data/app/views/components/nested_resource_form_fields/nested_resource_form_fields_component.html.erb +0 -64
  620. data/app/views/components/nested_resource_form_fields/nested_resource_form_fields_component.rb +0 -29
  621. data/app/views/components/pagination/pagination_component.html.erb +0 -6
  622. data/app/views/components/pagination/pagination_component.rb +0 -94
  623. data/app/views/components/panel/panel_component.html.erb +0 -17
  624. data/app/views/components/panel/panel_component.rb +0 -17
  625. data/app/views/components/resource_header/resource_header_component.html.erb +0 -83
  626. data/app/views/components/resource_header/resource_header_component.rb +0 -30
  627. data/app/views/components/resource_layout/resource_layout_component.html.erb +0 -53
  628. data/app/views/components/resource_layout/resource_layout_component.rb +0 -41
  629. data/app/views/components/sidebar/sidebar_component.html.erb +0 -69
  630. data/app/views/components/sidebar/sidebar_component.rb +0 -23
  631. data/app/views/components/sidebar_menu/sidebar_menu_component.html.erb +0 -5
  632. data/app/views/components/sidebar_menu/sidebar_menu_component.rb +0 -17
  633. data/app/views/components/sidebar_menu_item/sidebar_menu_item_component.html.erb +0 -64
  634. data/app/views/components/sidebar_menu_item/sidebar_menu_item_component.rb +0 -52
  635. data/app/views/components/skeleton/table/table_component.html.erb +0 -18
  636. data/app/views/components/skeleton/table/table_component.rb +0 -6
  637. data/app/views/components/table/table_component.html.erb +0 -43
  638. data/app/views/components/table/table_component.rb +0 -159
  639. data/app/views/components/table_search_input/table_search_input_component.html.erb +0 -48
  640. data/app/views/components/table_search_input/table_search_input_component.rb +0 -15
  641. data/app/views/components/table_toolbar/table_toolbar_component.html.erb +0 -7
  642. data/app/views/components/table_toolbar/table_toolbar_component.rb +0 -17
  643. data/app/views/components/toolbar/toolbar_component.html.erb +0 -67
  644. data/app/views/components/toolbar/toolbar_component.rb +0 -26
  645. data/app/views/layouts/resource.html copy.erb +0 -49
  646. data/app/views/plutonium/_resource_header.html copy.erb +0 -287
  647. data/lib/generators/pu/gen/component/component_generator.rb +0 -99
  648. data/lib/generators/pu/gen/component/templates/component.html.erb.tt +0 -3
  649. data/lib/generators/pu/gen/component/templates/component.rb.tt +0 -15
  650. data/lib/generators/pu/gen/component/templates/controller.js.tt +0 -8
  651. data/lib/plutonium/builders/menus/sidebar_menu.rb.bk +0 -26
  652. data/lib/plutonium/builders/menus/sidebar_menu_item.rb.bk +0 -28
  653. data/lib/plutonium/component_registry.rb +0 -19
  654. data/lib/plutonium/core/action.rb +0 -49
  655. data/lib/plutonium/core/actions/basic_action.rb +0 -16
  656. data/lib/plutonium/core/actions/collection.rb +0 -37
  657. data/lib/plutonium/core/actions/destroy_action.rb +0 -23
  658. data/lib/plutonium/core/actions/edit_action.rb +0 -21
  659. data/lib/plutonium/core/actions/interactive_action.rb +0 -64
  660. data/lib/plutonium/core/actions/new_action.rb +0 -20
  661. data/lib/plutonium/core/actions/show_action.rb +0 -19
  662. data/lib/plutonium/core/associations/renderers/base.rb +0 -77
  663. data/lib/plutonium/core/associations/renderers/factory.rb +0 -36
  664. data/lib/plutonium/core/associations/renderers/has_many_renderer.rb +0 -18
  665. data/lib/plutonium/core/autodiscovery/association_renderer_discoverer.rb +0 -31
  666. data/lib/plutonium/core/autodiscovery/discoverer.rb +0 -15
  667. data/lib/plutonium/core/autodiscovery/input_discoverer.rb +0 -31
  668. data/lib/plutonium/core/autodiscovery/renderer_discoverer.rb +0 -31
  669. data/lib/plutonium/core/definers/action_definer.rb +0 -25
  670. data/lib/plutonium/core/definers/association_renderer_definer.rb +0 -33
  671. data/lib/plutonium/core/definers/field_definer.rb +0 -19
  672. data/lib/plutonium/core/definers/field_input_definer.rb +0 -77
  673. data/lib/plutonium/core/definers/field_renderer_definer.rb +0 -37
  674. data/lib/plutonium/core/fields/inputs/attachment_input.rb +0 -24
  675. data/lib/plutonium/core/fields/inputs/base.rb +0 -110
  676. data/lib/plutonium/core/fields/inputs/belongs_to_association_input.rb +0 -15
  677. data/lib/plutonium/core/fields/inputs/checkbox_input.rb +0 -15
  678. data/lib/plutonium/core/fields/inputs/date_time_input.rb +0 -15
  679. data/lib/plutonium/core/fields/inputs/factory.rb +0 -50
  680. data/lib/plutonium/core/fields/inputs/has_many_association_input.rb +0 -15
  681. data/lib/plutonium/core/fields/inputs/nested_input.rb +0 -72
  682. data/lib/plutonium/core/fields/inputs/noop_input.rb +0 -16
  683. data/lib/plutonium/core/fields/inputs/phone_input.rb +0 -22
  684. data/lib/plutonium/core/fields/inputs/polymorphic_belongs_to_association_input.rb +0 -48
  685. data/lib/plutonium/core/fields/inputs/simple_form_association_input.rb +0 -26
  686. data/lib/plutonium/core/fields/inputs/simple_form_input.rb +0 -13
  687. data/lib/plutonium/core/fields/renderers/association_renderer.rb +0 -28
  688. data/lib/plutonium/core/fields/renderers/attachment_renderer.rb +0 -21
  689. data/lib/plutonium/core/fields/renderers/base.rb +0 -83
  690. data/lib/plutonium/core/fields/renderers/basic_renderer.rb +0 -13
  691. data/lib/plutonium/core/fields/renderers/factory.rb +0 -37
  692. data/lib/plutonium/core/renderable.rb +0 -20
  693. data/lib/plutonium/core/ui/collection.rb +0 -18
  694. data/lib/plutonium/core/ui/detail.rb +0 -15
  695. data/lib/plutonium/core/ui/form.rb +0 -12
  696. data/lib/plutonium/helpers/action_buttons_helper.rb +0 -32
  697. data/lib/plutonium/helpers/component_helper.rb +0 -14
  698. data/lib/plutonium/helpers/form_helper.rb +0 -50
  699. data/lib/plutonium/icons.rb +0 -32
  700. data/lib/plutonium/preserved__/field.rb.bk +0 -65
  701. data/lib/plutonium/preserved__/input.rb.bk +0 -93
  702. data/lib/plutonium/ui/table/components/pagy_page_info.rb +0 -70
  703. data/src/js/controllers/has_many_panel_controller.js +0 -8
  704. data/src/js/controllers/interactive_action_form_controller.js +0 -13
  705. data/src/js/controllers/nav_grid_menu_controller.js +0 -8
  706. data/src/js/controllers/nav_grid_menu_item_controller.js +0 -8
  707. data/src/js/controllers/nav_user_controller.js +0 -8
  708. data/src/js/controllers/nav_user_link_controller.js +0 -8
  709. data/src/js/controllers/nav_user_section_controller.js +0 -8
  710. data/src/js/controllers/resource_layout_controller.js +0 -8
  711. data/src/js/controllers/sidebar_controller.js +0 -8
  712. data/src/js/controllers/sidebar_menu_controller.js +0 -8
  713. data/src/js/controllers/sidebar_menu_item_controller.js +0 -8
  714. data/src/js/controllers/table_controller.js +0 -8
  715. data/src/js/controllers/table_search_input_controller.js +0 -8
  716. data/src/js/controllers/table_toolbar_controller.js +0 -8
  717. data/src/js/controllers/toolbar_controller.js +0 -8
@@ -1,287 +0,0 @@
1
- <%# locals: (sidebar_toggle:) %>
2
-
3
- <%= render_component :resource_header, sidebar_toggle: do |header| %>
4
- <% header.with_action do %>
5
- <%=
6
- render_component :nav_grid_menu, label: "Apps" do |menu|
7
- menu.with_item url: "#", name: "Sales", icon: "outline/sale-percent"
8
- menu.with_item url: "#", name: "Users", icon: "outline/users"
9
- end
10
- %>
11
- <% end %>
12
-
13
- <% header.with_action do %>
14
- <%= render_component :nav_user, email: current_user.try(:email) || current_user, logout_url: try(:logout_url) do |nav_user| %>
15
- <% nav_user.with_section do |section| %>
16
- <% section.with_link url: "#", label: "My profile" %>
17
- <% section.with_link url: "#", label: "Account settings" %>
18
- <% end %>
19
-
20
- <% nav_user.with_section do |section| %>
21
- <% section.with_link url: "#", label: "My likes" do |link| %>
22
- <% link.with_leading do %>
23
- <%= render_icon "outline/heart", classname: "mr-2 text-gray-400" %>
24
- <% end %>
25
- <% end %>
26
-
27
- <% section.with_link url: "#", label: "Pro version" do |link| %>
28
- <% link.with_leading do %>
29
- <%= render_icon "outline/fire", classname: "mr-2 text-primary-600 dark:text-primary-500" %>
30
- <% end %>
31
- <% link.with_trailing do %>
32
- <%= render_icon "outline/angle-right", size: :sm %>
33
- <% end %>
34
- <% end %>
35
- <% end %>
36
- <% end %>
37
- <% end %>
38
-
39
- <%#
40
-
41
- <!-- Notifications -->
42
- <div data-controller="resource-drop-down">
43
- <button
44
- type="button"
45
- data-resource-drop-down-target="trigger"
46
- class="p-2 mr-1 text-gray-500 rounded-lg hover:text-gray-900 hover:bg-gray-100 dark:text-gray-200 dark:hover:text-white dark:hover:bg-gray-700 focus:ring-4 focus:ring-gray-300 dark:focus:ring-gray-600">
47
- <span class="sr-only">View notifications</span>
48
- <!-- Bell icon -->
49
- <svg
50
- aria-hidden="true"
51
- class="w-6 h-6"
52
- fill="currentColor"
53
- viewBox="0 0 20 20"
54
- xmlns="http://www.w3.org/2000/svg">
55
- <path
56
- d="M10 2a6 6 0 00-6 6v3.586l-.707.707A1 1 0 004 14h12a1 1 0 00.707-1.707L16 11.586V8a6 6 0 00-6-6zM10 18a3 3 0 01-3-3h6a3 3 0 01-3 3z"></path>
57
- </svg>
58
- </button>
59
- <!-- Dropdown menu -->
60
- <div
61
- data-resource-drop-down-target="menu"
62
- class="hidden overflow-hidden z-50 my-4 max-w-sm text-base list-none bg-white divide-y divide-gray-100 shadow-lg dark:divide-gray-600 dark:bg-gray-700 rounded-xl">
63
- <div
64
- class="block py-2 px-4 text-base font-medium text-center text-gray-700 bg-gray-50 dark:bg-gray-600 dark:text-gray-300">
65
- Notifications
66
- </div>
67
- <div>
68
- <a
69
- href="#"
70
- class="flex py-3 px-4 border-b hover:bg-gray-100 dark:hover:bg-gray-600 dark:border-gray-600">
71
- <div class="shrink-0">
72
- <img
73
- class="w-11 h-11 rounded-full"
74
- src="https://flowbite.s3.amazonaws.com/blocks/marketing-ui/avatars/bonnie-green.png"
75
- alt="Bonnie Green avatar"
76
- />
77
- <div
78
- class="flex absolute justify-center items-center ml-6 -mt-5 w-5 h-5 rounded-full border border-white bg-primary-700 dark:border-gray-700">
79
- <svg
80
- aria-hidden="true"
81
- class="w-3 h-3 text-white"
82
- fill="currentColor"
83
- viewBox="0 0 20 20"
84
- xmlns="http://www.w3.org/2000/svg">
85
- <path
86
- d="M8.707 7.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l2-2a1 1 0 00-1.414-1.414L11 7.586V3a1 1 0 10-2 0v4.586l-.293-.293z"></path>
87
- <path
88
- d="M3 5a2 2 0 012-2h1a1 1 0 010 2H5v7h2l1 2h4l1-2h2V5h-1a1 1 0 110-2h1a2 2 0 012 2v10a2 2 0 01-2 2H5a2 2 0 01-2-2V5z"></path>
89
- </svg>
90
- </div>
91
- </div>
92
- <div class="pl-3 w-full">
93
- <div
94
- class="text-gray-500 font-normal text-sm mb-1.5 dark:text-gray-200">
95
- New message from
96
- <span class="font-semibold text-gray-900 dark:text-white"
97
- >Bonnie Green</span
98
- >: "Hey, what's up? All set for the presentation?"
99
- </div>
100
- <div
101
- class="text-xs font-medium text-primary-600 dark:text-primary-500">
102
- a few moments ago
103
- </div>
104
- </div>
105
- </a>
106
- <a
107
- href="#"
108
- class="flex py-3 px-4 border-b hover:bg-gray-100 dark:hover:bg-gray-600 dark:border-gray-600">
109
- <div class="shrink-0">
110
- <img
111
- class="w-11 h-11 rounded-full"
112
- src="https://flowbite.s3.amazonaws.com/blocks/marketing-ui/avatars/jese-leos.png"
113
- alt="Jese Leos avatar"
114
- />
115
- <div
116
- class="flex absolute justify-center items-center ml-6 -mt-5 w-5 h-5 bg-gray-900 rounded-full border border-white dark:border-gray-700">
117
- <svg
118
- aria-hidden="true"
119
- class="w-3 h-3 text-white"
120
- fill="currentColor"
121
- viewBox="0 0 20 20"
122
- xmlns="http://www.w3.org/2000/svg">
123
- <path
124
- d="M8 9a3 3 0 100-6 3 3 0 000 6zM8 11a6 6 0 016 6H2a6 6 0 016-6zM16 7a1 1 0 10-2 0v1h-1a1 1 0 100 2h1v1a1 1 0 102 0v-1h1a1 1 0 100-2h-1V7z"></path>
125
- </svg>
126
- </div>
127
- </div>
128
- <div class="pl-3 w-full">
129
- <div
130
- class="text-gray-500 font-normal text-sm mb-1.5 dark:text-gray-200">
131
- <span class="font-semibold text-gray-900 dark:text-white"
132
- >Jese leos</span>
133
- and
134
- <span class="font-medium text-gray-900 dark:text-white"
135
- >5 others</span>
136
- started following you.
137
- </div>
138
- <div
139
- class="text-xs font-medium text-primary-600 dark:text-primary-500">
140
- 10 minutes ago
141
- </div>
142
- </div>
143
- </a>
144
- <a
145
- href="#"
146
- class="flex py-3 px-4 border-b hover:bg-gray-100 dark:hover:bg-gray-600 dark:border-gray-600">
147
- <div class="shrink-0">
148
- <img
149
- class="w-11 h-11 rounded-full"
150
- src="https://flowbite.s3.amazonaws.com/blocks/marketing-ui/avatars/joseph-mcfall.png"
151
- alt="Joseph McFall avatar"
152
- />
153
- <div
154
- class="flex absolute justify-center items-center ml-6 -mt-5 w-5 h-5 bg-red-600 rounded-full border border-white dark:border-gray-700">
155
- <svg
156
- aria-hidden="true"
157
- class="w-3 h-3 text-white"
158
- fill="currentColor"
159
- viewBox="0 0 20 20"
160
- xmlns="http://www.w3.org/2000/svg">
161
- <path
162
- fill-rule="evenodd"
163
- d="M3.172 5.172a4 4 0 015.656 0L10 6.343l1.172-1.171a4 4 0 115.656 5.656L10 17.657l-6.828-6.829a4 4 0 010-5.656z"
164
- clip-rule="evenodd"
165
- ></path>
166
- </svg>
167
- </div>
168
- </div>
169
- <div class="pl-3 w-full">
170
- <div
171
- class="text-gray-500 font-normal text-sm mb-1.5 dark:text-gray-200">
172
- <span class="font-semibold text-gray-900 dark:text-white"
173
- >Joseph Mcfall</span>
174
- and
175
- <span class="font-medium text-gray-900 dark:text-white"
176
- >141 others</span>
177
- love your story. See it and view more stories.
178
- </div>
179
- <div
180
- class="text-xs font-medium text-primary-600 dark:text-primary-500">
181
- 44 minutes ago
182
- </div>
183
- </div>
184
- </a>
185
- <a
186
- href="#"
187
- class="flex py-3 px-4 border-b hover:bg-gray-100 dark:hover:bg-gray-600 dark:border-gray-600">
188
- <div class="shrink-0">
189
- <img
190
- class="w-11 h-11 rounded-full"
191
- src="https://flowbite.s3.amazonaws.com/blocks/marketing-ui/avatars/roberta-casas.png"
192
- alt="Roberta Casas image"
193
- />
194
- <div
195
- class="flex absolute justify-center items-center ml-6 -mt-5 w-5 h-5 bg-green-400 rounded-full border border-white dark:border-gray-700">
196
- <svg
197
- aria-hidden="true"
198
- class="w-3 h-3 text-white"
199
- fill="currentColor"
200
- viewBox="0 0 20 20"
201
- xmlns="http://www.w3.org/2000/svg">
202
- <path
203
- fill-rule="evenodd"
204
- d="M18 13V5a2 2 0 00-2-2H4a2 2 0 00-2 2v8a2 2 0 002 2h3l3 3 3-3h3a2 2 0 002-2zM5 7a1 1 0 011-1h8a1 1 0 110 2H6a1 1 0 01-1-1zm1 3a1 1 0 100 2h3a1 1 0 100-2H6z"
205
- clip-rule="evenodd"></path>
206
- </svg>
207
- </div>
208
- </div>
209
- <div class="pl-3 w-full">
210
- <div
211
- class="text-gray-500 font-normal text-sm mb-1.5 dark:text-gray-200">
212
- <span class="font-semibold text-gray-900 dark:text-white"
213
- >Leslie Livingston</span>
214
- mentioned you in a comment:
215
- <span
216
- class="font-medium text-primary-600 dark:text-primary-500"
217
- >@bonnie.green</span>
218
- what do you say?
219
- </div>
220
- <div
221
- class="text-xs font-medium text-primary-600 dark:text-primary-500">
222
- 1 hour ago
223
- </div>
224
- </div>
225
- </a>
226
- <a
227
- href="#"
228
- class="flex py-3 px-4 hover:bg-gray-100 dark:hover:bg-gray-600">
229
- <div class="shrink-0">
230
- <img
231
- class="w-11 h-11 rounded-full"
232
- src="https://flowbite.s3.amazonaws.com/blocks/marketing-ui/avatars/robert-brown.png"
233
- alt="Robert image"
234
- />
235
- <div
236
- class="flex absolute justify-center items-center ml-6 -mt-5 w-5 h-5 bg-purple-500 rounded-full border border-white dark:border-gray-700">
237
- <svg
238
- aria-hidden="true"
239
- class="w-3 h-3 text-white"
240
- fill="currentColor"
241
- viewBox="0 0 20 20"
242
- xmlns="http://www.w3.org/2000/svg">
243
- <path
244
- d="M2 6a2 2 0 012-2h6a2 2 0 012 2v8a2 2 0 01-2 2H4a2 2 0 01-2-2V6zM14.553 7.106A1 1 0 0014 8v4a1 1 0 00.553.894l2 1A1 1 0 0018 13V7a1 1 0 00-1.447-.894l-2 1z"
245
- ></path>
246
- </svg>
247
- </div>
248
- </div>
249
- <div class="pl-3 w-full">
250
- <div
251
- class="text-gray-500 font-normal text-sm mb-1.5 dark:text-gray-200">
252
- <span class="font-semibold text-gray-900 dark:text-white"
253
- >Robert Brown</span>
254
- posted a new video: Glassmorphism - learn how to implement
255
- the new design trend.
256
- </div>
257
- <div
258
- class="text-xs font-medium text-primary-600 dark:text-primary-500">
259
- 3 hours ago
260
- </div>
261
- </div>
262
- </a>
263
- </div>
264
- <a
265
- href="#"
266
- class="block py-2 text-md font-medium text-center text-gray-900 bg-gray-50 hover:bg-gray-100 dark:bg-gray-600 dark:text-white dark:hover:underline">
267
- <div class="inline-flex items-center">
268
- <svg
269
- aria-hidden="true"
270
- class="mr-2 w-4 h-4 text-gray-500 dark:text-gray-200"
271
- fill="currentColor"
272
- viewBox="0 0 20 20"
273
- xmlns="http://www.w3.org/2000/svg">
274
- <path d="M10 12a2 2 0 100-4 2 2 0 000 4z"></path>
275
- <path
276
- fill-rule="evenodd"
277
- d="M.458 10C1.732 5.943 5.522 3 10 3s8.268 2.943 9.542 7c-1.274 4.057-5.064 7-9.542 7S1.732 14.057.458 10zM14 10a4 4 0 11-8 0 4 4 0 018 0z"
278
- clip-rule="evenodd"></path>
279
- </svg>
280
- View all
281
- </div>
282
- </a>
283
- </div>
284
- </div>
285
-
286
- %>
287
- <% end %>
@@ -1,99 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- return unless PlutoniumGenerators.cli?
4
-
5
- module Pu
6
- module Gen
7
- class ComponentGenerator < Rails::Generators::Base
8
- source_root File.expand_path("templates", __dir__)
9
-
10
- desc "Create a view component"
11
-
12
- argument :name
13
-
14
- def normalize_name
15
- @name = name.camelize.gsub(/Component$/, "")
16
- end
17
-
18
- def start
19
- template "component.rb", "#{component_path}.rb"
20
- template "component.html.erb", "#{component_path}.html.erb"
21
- template "controller.js", controller_path
22
-
23
- controllers_index_file = File.join __dir__, "../../../../../src/js/controllers/register_controllers.js"
24
- insert_into_file controllers_index_file, controller_import, after: /.*Import controllers here*\n/
25
- insert_into_file controllers_index_file, controller_registration, after: /.*Register controllers here*\n/
26
- end
27
-
28
- protected
29
-
30
- def dest_dir
31
- "app/views/components/"
32
- end
33
-
34
- def component_name
35
- name.demodulize
36
- end
37
-
38
- def component_classname
39
- "#{component_name}Component"
40
- end
41
-
42
- def component_module
43
- name.deconstantize.presence
44
- end
45
-
46
- def component_namespace
47
- ["PlutoniumUi", component_module].compact.join "::"
48
- end
49
-
50
- def component_reference
51
- [component_namespace, component_classname].compact.join "::"
52
- end
53
-
54
- def component_dir
55
- [component_module, component_name.underscore].compact.join("::").underscore
56
- end
57
-
58
- def component_base_path
59
- File.join dest_dir, component_dir, component_name.underscore
60
- end
61
-
62
- def component_path
63
- "#{component_base_path}_component"
64
- end
65
-
66
- def component_identifier
67
- [component_module, component_name].compact.join("::").gsub("::", "__").underscore
68
- end
69
-
70
- def controller_filename
71
- "#{[component_module, component_name].compact.join("::").underscore}_controller.js"
72
- end
73
-
74
- def controllers_dir
75
- File.join "src", "js", "controllers"
76
- end
77
-
78
- def controller_path
79
- File.join controllers_dir, controller_filename
80
- end
81
-
82
- def controller_identifier
83
- component_identifier.dasherize
84
- end
85
-
86
- def controller_reference
87
- [component_module, "#{component_name}Controller"].compact.join("")
88
- end
89
-
90
- def controller_import
91
- "import #{controller_reference} from \"./#{controller_filename}\"\n"
92
- end
93
-
94
- def controller_registration
95
- " application.register(\"#{controller_identifier}\", #{controller_reference})\n"
96
- end
97
- end
98
- end
99
- end
@@ -1,3 +0,0 @@
1
- <div <%%= attributes_html %>>
2
- <%%= content %>
3
- </div>
@@ -1,15 +0,0 @@
1
- module <%= component_namespace %>
2
- class <%= component_classname %> < PlutoniumUi::Base
3
- private
4
-
5
- def base_attributes
6
- # base attributes go here
7
- {
8
- classname: "<%= controller_identifier %>",
9
- controller: "<%= controller_identifier %>"
10
- }
11
- end
12
- end
13
- end
14
-
15
- Plutonium::ComponentRegistry.register :<%= component_identifier %>, to: <%= component_reference %>
@@ -1,8 +0,0 @@
1
- import { Controller } from "@hotwired/stimulus"
2
-
3
- // Connects to data-controller="<%= controller_identifier %>"
4
- export default class extends Controller {
5
- connect() {
6
- console.log(`<%= controller_identifier %> connected: ${this.element}`)
7
- }
8
- }
@@ -1,26 +0,0 @@
1
- module Plutonium
2
- module Builders
3
- class SidebarMenu
4
- attr_reader :items
5
-
6
- def initialize(&)
7
- @items = []
8
- instance_eval(&)
9
- end
10
-
11
- def item(name, indicator: nil, url: nil, &block)
12
- if block && indicator
13
- raise ArgumentError, "Items with children cannot have an indicator."
14
- end
15
-
16
- item = SidebarMenuItem.new(name, indicator: indicator)
17
- if block
18
- item.items(&block)
19
- else
20
- item.url(url)
21
- end
22
- @items << item
23
- end
24
- end
25
- end
26
- end
@@ -1,28 +0,0 @@
1
- module Plutonium
2
- module Builders
3
- class SidebarMenuItem
4
- attr_accessor :name, :value
5
- attr_reader :indicator
6
-
7
- def initialize(name, indicator: nil, value: nil)
8
- @name = name
9
- @indicator = indicator
10
- @value = value
11
- end
12
-
13
- def url(url)
14
- @value = url
15
- end
16
-
17
- def items(&)
18
- raise ArgumentError, "Indicator not allowed for items with children" if @indicator
19
- @value = Menu.new(&).items
20
- end
21
-
22
- def indicator=(indicator)
23
- raise ArgumentError, "Indicator not allowed for items with children" if @value.is_a?(Array)
24
- @indicator = indicator
25
- end
26
- end
27
- end
28
- end
@@ -1,19 +0,0 @@
1
- require "active_support/core_ext/class/attribute"
2
- require "active_support/core_ext/hash/indifferent_access"
3
-
4
- module Plutonium
5
- class ComponentRegistry
6
- class_attribute :mappings, instance_accessor: false, instance_predicate: false, default: {}.with_indifferent_access
7
-
8
- class UnregisteredComponent < StandardError; end
9
-
10
- def self.register(*types, to:)
11
- self.mappings = mappings.merge types.each_with_object({}) { |t, m| m[t] = to }
12
- end
13
-
14
- def self.resolve(name)
15
- raise UnregisteredComponent.new("no such component registered: #{name.inspect}") unless mappings[name]
16
- mappings[name]
17
- end
18
- end
19
- end
@@ -1,49 +0,0 @@
1
- module Plutonium
2
- module Core
3
- class Action
4
- RouteOptions = Data.define :action, :method, :options do
5
- def initialize(action: nil, method: :get, options: {})
6
- super
7
- end
8
- end
9
-
10
- attr_reader :name, :label, :icon, :route_options, :confirmation, :turbo_frame, :color, :category, :position
11
-
12
- def initialize(
13
- name, label: nil, icon: nil, color: nil, confirmation: nil, route_options: nil, turbo_frame: nil,
14
- collection_action: false, collection_record_action: false, record_action: false, bulk_action: false,
15
- category: nil, position: 50
16
- )
17
- @name = name
18
- @icon = icon
19
- @label = label || name.to_s.humanize
20
- @route_options = route_options || RouteOptions.new
21
- @turbo_frame = turbo_frame
22
- @color = color
23
- @confirmation = confirmation
24
- @collection_action = collection_action
25
- @collection_record_action = collection_record_action
26
- @record_action = record_action
27
- @bulk_action = bulk_action
28
- @category = category
29
- @position = position
30
- end
31
-
32
- def collection_action?
33
- @collection_action
34
- end
35
-
36
- def collection_record_action?
37
- @collection_record_action
38
- end
39
-
40
- def record_action?
41
- @record_action
42
- end
43
-
44
- def bulk_action?
45
- @bulk_action
46
- end
47
- end
48
- end
49
- end
@@ -1,16 +0,0 @@
1
- module Plutonium
2
- module Core
3
- module Actions
4
- class BasicAction < Plutonium::Core::Action
5
- def initialize(*, **kwargs)
6
- kwargs.reverse_merge! action_options
7
- super
8
- end
9
-
10
- private
11
-
12
- def action_options = {}
13
- end
14
- end
15
- end
16
- end
@@ -1,37 +0,0 @@
1
- module Plutonium
2
- module Core
3
- module Actions
4
- class Collection
5
- delegate_missing_to :@collection
6
-
7
- def initialize(collection = {})
8
- @collection = collection
9
- end
10
-
11
- def permitted_for(policy)
12
- Collection.new(@collection.select { |name, action| policy.allowed_to? :"#{action.name}?" })
13
- end
14
-
15
- def collection_actions
16
- Collection.new(@collection.select { |name, action| action.collection_action? })
17
- end
18
-
19
- def collection_record_actions
20
- Collection.new(@collection.select { |name, action| action.collection_record_action? })
21
- end
22
-
23
- def record_actions
24
- Collection.new(@collection.select { |name, action| action.record_action? })
25
- end
26
-
27
- def bulk_actions
28
- Collection.new(@collection.select { |name, action| action.bulk_action? })
29
- end
30
-
31
- def values
32
- super.sort_by { |value| value.position }
33
- end
34
- end
35
- end
36
- end
37
- end
@@ -1,23 +0,0 @@
1
- module Plutonium
2
- module Core
3
- module Actions
4
- class DestroyAction < BasicAction
5
- private
6
-
7
- def action_options
8
- {
9
- icon: "outline/trash-bin",
10
- route_options: Plutonium::Core::Action::RouteOptions.new(method: :delete),
11
- color: :red,
12
- confirmation: "Are you sure?",
13
- turbo_frame: "_top",
14
- collection_record_action: true,
15
- record_action: true,
16
- category: :standard,
17
- position: 100
18
- }
19
- end
20
- end
21
- end
22
- end
23
- end
@@ -1,21 +0,0 @@
1
- module Plutonium
2
- module Core
3
- module Actions
4
- class EditAction < BasicAction
5
- private
6
-
7
- def action_options
8
- {
9
- icon: "outline/edit",
10
- route_options: Plutonium::Core::Action::RouteOptions.new(action: :edit),
11
- color: :yellow,
12
- collection_record_action: true,
13
- record_action: true,
14
- category: :standard,
15
- position: 20
16
- }
17
- end
18
- end
19
- end
20
- end
21
- end