plutonium 0.60.5 → 0.62.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 (199) hide show
  1. checksums.yaml +4 -4
  2. data/.claude/skills/plutonium/SKILL.md +19 -1
  3. data/.claude/skills/plutonium-app/SKILL.md +41 -0
  4. data/.claude/skills/plutonium-auth/SKILL.md +40 -0
  5. data/.claude/skills/plutonium-behavior/SKILL.md +47 -1
  6. data/.claude/skills/plutonium-kanban/SKILL.md +378 -0
  7. data/.claude/skills/plutonium-resource/SKILL.md +40 -0
  8. data/.claude/skills/plutonium-tenancy/SKILL.md +43 -0
  9. data/.claude/skills/plutonium-testing/SKILL.md +38 -0
  10. data/.claude/skills/plutonium-ui/SKILL.md +51 -0
  11. data/.claude/skills/plutonium-wizard/SKILL.md +469 -0
  12. data/.cliff.toml +6 -0
  13. data/Appraisals +3 -0
  14. data/CHANGELOG.md +576 -439
  15. data/CLAUDE.md +15 -7
  16. data/app/assets/plutonium.css +1 -1
  17. data/app/assets/plutonium.js +1173 -194
  18. data/app/assets/plutonium.js.map +4 -4
  19. data/app/assets/plutonium.min.js +53 -53
  20. data/app/assets/plutonium.min.js.map +4 -4
  21. data/app/views/layouts/basic.html.erb +7 -0
  22. data/app/views/plutonium/_flash_toasts.html.erb +2 -46
  23. data/app/views/plutonium/_toast.html.erb +52 -0
  24. data/app/views/resource/_kanban_move_action_form.html.erb +1 -0
  25. data/app/views/resource/_resource_kanban.html.erb +1 -0
  26. data/app/views/resource/kanban_move_form.html.erb +1 -0
  27. data/config/brakeman.ignore +2 -2
  28. data/db/migrate/wizard/20260615000001_create_plutonium_wizard_sessions.rb +57 -0
  29. data/docs/.vitepress/config.ts +45 -1
  30. data/docs/.vitepress/sync-skills.mjs +45 -0
  31. data/docs/ai.md +99 -0
  32. data/docs/guides/index.md +2 -0
  33. data/docs/guides/kanban.md +557 -0
  34. data/docs/guides/wizards.md +447 -0
  35. data/docs/public/images/guides/kanban-after-move.png +0 -0
  36. data/docs/public/images/guides/kanban-board-light.png +0 -0
  37. data/docs/public/images/guides/kanban-board.png +0 -0
  38. data/docs/public/images/guides/kanban-show-centered-modal.png +0 -0
  39. data/docs/public/images/guides/kanban-wip-toast.png +0 -0
  40. data/docs/public/images/guides/wizards-chooser.png +0 -0
  41. data/docs/public/images/guides/wizards-completed.png +0 -0
  42. data/docs/public/images/guides/wizards-index-action.png +0 -0
  43. data/docs/public/images/guides/wizards-repeater.png +0 -0
  44. data/docs/public/images/guides/wizards-review.png +0 -0
  45. data/docs/public/images/guides/wizards-step.png +0 -0
  46. data/docs/reference/behavior/policies.md +1 -1
  47. data/docs/reference/index.md +14 -0
  48. data/docs/reference/kanban/authorization.md +82 -0
  49. data/docs/reference/kanban/dsl.md +334 -0
  50. data/docs/reference/kanban/index.md +40 -0
  51. data/docs/reference/kanban/positioning.md +162 -0
  52. data/docs/reference/resource/definition.md +26 -1
  53. data/docs/reference/resource/model.md +26 -0
  54. data/docs/reference/ui/forms.md +77 -0
  55. data/docs/reference/ui/pages.md +2 -0
  56. data/docs/reference/wizard/anchoring-resume.md +194 -0
  57. data/docs/reference/wizard/dsl.md +337 -0
  58. data/docs/reference/wizard/index.md +33 -0
  59. data/docs/reference/wizard/one-time.md +129 -0
  60. data/docs/reference/wizard/registration-launch.md +177 -0
  61. data/docs/reference/wizard/storage-config.md +151 -0
  62. data/docs/superpowers/plans/2026-06-14-form-sectioning.md +2 -2
  63. data/docs/superpowers/plans/2026-06-15-wizard-dsl.md +1619 -0
  64. data/docs/superpowers/plans/2026-06-15-wizard-dsl.md.tasks.json +68 -0
  65. data/docs/superpowers/plans/2026-06-26-kanban-dsl.md +1128 -0
  66. data/docs/superpowers/plans/2026-06-26-kanban-dsl.md.tasks.json +24 -0
  67. data/docs/superpowers/plans/2026-07-02-kanban-drop-interactions.md +714 -0
  68. data/docs/superpowers/plans/2026-07-02-kanban-drop-interactions.md.tasks.json +68 -0
  69. data/docs/superpowers/specs/2026-06-15-wizard-dsl-design.md +836 -0
  70. data/docs/superpowers/specs/2026-06-15-wizard-dsl-examples.rb +245 -0
  71. data/docs/superpowers/specs/2026-06-17-wizard-relaunch-prompt-design.md +86 -0
  72. data/docs/superpowers/specs/2026-06-18-wizard-attachments-design.md +101 -0
  73. data/docs/superpowers/specs/2026-06-18-wizard-hosting-design.md +220 -0
  74. data/docs/superpowers/specs/2026-06-26-kanban-dsl-design.md +388 -0
  75. data/docs/superpowers/specs/2026-07-03-kanban-auth-simplification.md +159 -0
  76. data/gemfiles/postgres.gemfile +8 -0
  77. data/gemfiles/postgres.gemfile.lock +321 -0
  78. data/gemfiles/rails_7.gemfile +1 -0
  79. data/gemfiles/rails_7.gemfile.lock +1 -1
  80. data/gemfiles/rails_8.0.gemfile +1 -0
  81. data/gemfiles/rails_8.0.gemfile.lock +1 -1
  82. data/gemfiles/rails_8.1.gemfile +1 -0
  83. data/gemfiles/rails_8.1.gemfile.lock +14 -1
  84. data/lib/generators/pu/gem/active_shrine/active_shrine_generator.rb +5 -0
  85. data/lib/generators/pu/invites/templates/packages/invites/app/controllers/invites/user_invitations_controller.rb.tt +6 -1
  86. data/lib/plutonium/action/base.rb +17 -0
  87. data/lib/plutonium/auth/rodauth.rb +1 -2
  88. data/lib/plutonium/configuration.rb +16 -0
  89. data/lib/plutonium/core/controller.rb +20 -1
  90. data/lib/plutonium/definition/base.rb +25 -0
  91. data/lib/plutonium/definition/form_layout.rb +54 -35
  92. data/lib/plutonium/definition/index_views.rb +70 -1
  93. data/lib/plutonium/definition/wizards.rb +209 -0
  94. data/lib/plutonium/invites/concerns/invite_token.rb +9 -0
  95. data/lib/plutonium/invites/concerns/invite_user.rb +9 -0
  96. data/lib/plutonium/invites/controller.rb +4 -1
  97. data/lib/plutonium/kanban/action.rb +7 -0
  98. data/lib/plutonium/kanban/board.rb +40 -0
  99. data/lib/plutonium/kanban/broadcaster.rb +54 -0
  100. data/lib/plutonium/kanban/column.rb +122 -0
  101. data/lib/plutonium/kanban/context.rb +15 -0
  102. data/lib/plutonium/kanban/dsl.rb +71 -0
  103. data/lib/plutonium/kanban/grouping.rb +51 -0
  104. data/lib/plutonium/kanban/positioning.rb +75 -0
  105. data/lib/plutonium/kanban.rb +11 -0
  106. data/lib/plutonium/migrations.rb +40 -0
  107. data/lib/plutonium/models/has_cents.rb +30 -2
  108. data/lib/plutonium/positioning.rb +146 -0
  109. data/lib/plutonium/railtie.rb +33 -0
  110. data/lib/plutonium/resource/controller.rb +24 -1
  111. data/lib/plutonium/resource/controllers/crud_actions.rb +9 -1
  112. data/lib/plutonium/resource/controllers/kanban_actions.rb +851 -0
  113. data/lib/plutonium/resource/controllers/wizard_actions.rb +165 -0
  114. data/lib/plutonium/resource/policy.rb +14 -0
  115. data/lib/plutonium/routing/mapper_extensions.rb +45 -0
  116. data/lib/plutonium/routing/wizard_registration.rb +289 -0
  117. data/lib/plutonium/ui/display/components/currency.rb +41 -9
  118. data/lib/plutonium/ui/display/options/inferred_types.rb +2 -5
  119. data/lib/plutonium/ui/display/resource.rb +17 -12
  120. data/lib/plutonium/ui/form/base.rb +25 -5
  121. data/lib/plutonium/ui/form/components/currency.rb +64 -0
  122. data/lib/plutonium/ui/form/components/intl_tel_input.rb +27 -1
  123. data/lib/plutonium/ui/form/components/password.rb +126 -0
  124. data/lib/plutonium/ui/form/components/uppy.rb +26 -5
  125. data/lib/plutonium/ui/form/kanban_move.rb +46 -0
  126. data/lib/plutonium/ui/form/options/inferred_types.rb +26 -0
  127. data/lib/plutonium/ui/form/resource.rb +13 -1
  128. data/lib/plutonium/ui/form/theme.rb +7 -0
  129. data/lib/plutonium/ui/form/wizard.rb +63 -0
  130. data/lib/plutonium/ui/grid/card.rb +56 -18
  131. data/lib/plutonium/ui/kanban/card.rb +67 -0
  132. data/lib/plutonium/ui/kanban/color_dot.rb +36 -0
  133. data/lib/plutonium/ui/kanban/column.rb +411 -0
  134. data/lib/plutonium/ui/kanban/resource.rb +319 -0
  135. data/lib/plutonium/ui/layout/base.rb +1 -1
  136. data/lib/plutonium/ui/layout/resource_layout.rb +7 -1
  137. data/lib/plutonium/ui/modal/base.rb +30 -3
  138. data/lib/plutonium/ui/modal/centered.rb +5 -2
  139. data/lib/plutonium/ui/options/has_cents_field.rb +21 -0
  140. data/lib/plutonium/ui/page/index.rb +2 -1
  141. data/lib/plutonium/ui/page/interactive_action.rb +12 -2
  142. data/lib/plutonium/ui/page/kanban_move.rb +20 -0
  143. data/lib/plutonium/ui/page/show.rb +29 -1
  144. data/lib/plutonium/ui/page/wizard.rb +371 -0
  145. data/lib/plutonium/ui/page/wizard_chooser.rb +97 -0
  146. data/lib/plutonium/ui/page/wizard_completed.rb +86 -0
  147. data/lib/plutonium/ui/table/base.rb +1 -1
  148. data/lib/plutonium/ui/table/components/view_switcher.rb +2 -1
  149. data/lib/plutonium/ui/table/resource.rb +1 -1
  150. data/lib/plutonium/ui/wizard/review.rb +196 -0
  151. data/lib/plutonium/ui/wizard/stepper.rb +122 -0
  152. data/lib/plutonium/ui/wizard/summary_display.rb +92 -0
  153. data/lib/plutonium/version.rb +1 -1
  154. data/lib/plutonium/wizard/attachment_data.rb +42 -0
  155. data/lib/plutonium/wizard/attachments.rb +226 -0
  156. data/lib/plutonium/wizard/base.rb +216 -0
  157. data/lib/plutonium/wizard/base_controller.rb +31 -0
  158. data/lib/plutonium/wizard/configuration.rb +42 -0
  159. data/lib/plutonium/wizard/controller.rb +162 -0
  160. data/lib/plutonium/wizard/data.rb +134 -0
  161. data/lib/plutonium/wizard/driving.rb +639 -0
  162. data/lib/plutonium/wizard/dsl.rb +336 -0
  163. data/lib/plutonium/wizard/errors.rb +27 -0
  164. data/lib/plutonium/wizard/field_capture.rb +157 -0
  165. data/lib/plutonium/wizard/field_importer.rb +208 -0
  166. data/lib/plutonium/wizard/gate.rb +171 -0
  167. data/lib/plutonium/wizard/instance_key.rb +97 -0
  168. data/lib/plutonium/wizard/lazy_persisted.rb +77 -0
  169. data/lib/plutonium/wizard/resume.rb +250 -0
  170. data/lib/plutonium/wizard/review_step.rb +48 -0
  171. data/lib/plutonium/wizard/route_resolution.rb +40 -0
  172. data/lib/plutonium/wizard/runner.rb +684 -0
  173. data/lib/plutonium/wizard/session.rb +53 -0
  174. data/lib/plutonium/wizard/state.rb +35 -0
  175. data/lib/plutonium/wizard/step.rb +61 -0
  176. data/lib/plutonium/wizard/step_adapter.rb +103 -0
  177. data/lib/plutonium/wizard/store/active_record.rb +174 -0
  178. data/lib/plutonium/wizard/store/base.rb +42 -0
  179. data/lib/plutonium/wizard/store/memory.rb +44 -0
  180. data/lib/plutonium/wizard/sweep_job.rb +76 -0
  181. data/lib/plutonium/wizard.rb +86 -0
  182. data/lib/plutonium.rb +5 -0
  183. data/lib/rodauth/features/case_insensitive_login.rb +1 -1
  184. data/lib/tasks/release.rake +144 -191
  185. data/package.json +7 -5
  186. data/src/css/components.css +137 -0
  187. data/src/js/controllers/attachment_input_controller.js +15 -1
  188. data/src/js/controllers/currency_input_controller.js +39 -0
  189. data/src/js/controllers/dirty_form_guard_controller.js +155 -27
  190. data/src/js/controllers/intl_tel_input_controller.js +4 -0
  191. data/src/js/controllers/kanban_controller.js +717 -0
  192. data/src/js/controllers/password_sentinel_controller.js +39 -0
  193. data/src/js/controllers/register_controllers.js +8 -0
  194. data/src/js/controllers/remote_modal_controller.js +10 -0
  195. data/src/js/controllers/row_click_controller.js +14 -1
  196. data/src/js/controllers/wizard_controller.js +54 -0
  197. data/src/js/turbo/turbo_confirm.js +1 -1
  198. data/yarn.lock +945 -286
  199. metadata +113 -2
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: plutonium
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.60.5
4
+ version: 0.62.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stefan Froelich
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2026-06-30 00:00:00.000000000 Z
10
+ date: 2026-07-04 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: zeitwerk
@@ -444,10 +444,12 @@ files:
444
444
  - ".claude/skills/plutonium-app/SKILL.md"
445
445
  - ".claude/skills/plutonium-auth/SKILL.md"
446
446
  - ".claude/skills/plutonium-behavior/SKILL.md"
447
+ - ".claude/skills/plutonium-kanban/SKILL.md"
447
448
  - ".claude/skills/plutonium-resource/SKILL.md"
448
449
  - ".claude/skills/plutonium-tenancy/SKILL.md"
449
450
  - ".claude/skills/plutonium-testing/SKILL.md"
450
451
  - ".claude/skills/plutonium-ui/SKILL.md"
452
+ - ".claude/skills/plutonium-wizard/SKILL.md"
451
453
  - ".claude/skills/plutonium/SKILL.md"
452
454
  - ".cliff.toml"
453
455
  - ".node-version"
@@ -472,6 +474,7 @@ files:
472
474
  - app/assets/plutonium.min.js
473
475
  - app/assets/plutonium.min.js.map
474
476
  - app/assets/plutonium.png
477
+ - app/views/layouts/basic.html.erb
475
478
  - app/views/layouts/resource.html.erb
476
479
  - app/views/layouts/rodauth.html.erb
477
480
  - app/views/plutonium/_flash.html.erb
@@ -479,12 +482,15 @@ files:
479
482
  - app/views/plutonium/_flash_toasts.html.erb
480
483
  - app/views/plutonium/_resource_header.html.erb
481
484
  - app/views/plutonium/_resource_sidebar.html.erb
485
+ - app/views/plutonium/_toast.html.erb
482
486
  - app/views/resource/_interactive_action_form.html.erb
487
+ - app/views/resource/_kanban_move_action_form.html.erb
483
488
  - app/views/resource/_metric_card.html.erb
484
489
  - app/views/resource/_resource_details.html.erb
485
490
  - app/views/resource/_resource_details.rabl
486
491
  - app/views/resource/_resource_form.html.erb
487
492
  - app/views/resource/_resource_grid.html.erb
493
+ - app/views/resource/_resource_kanban.html.erb
488
494
  - app/views/resource/_resource_table.html.erb
489
495
  - app/views/resource/edit.html.erb
490
496
  - app/views/resource/errors.rabl
@@ -493,6 +499,7 @@ files:
493
499
  - app/views/resource/interactive_bulk_action.html.erb
494
500
  - app/views/resource/interactive_record_action.html.erb
495
501
  - app/views/resource/interactive_resource_action.html.erb
502
+ - app/views/resource/kanban_move_form.html.erb
496
503
  - app/views/resource/new.html.erb
497
504
  - app/views/resource/readme.md
498
505
  - app/views/resource/show.html.erb
@@ -545,7 +552,9 @@ files:
545
552
  - config/initializers/pagy.rb
546
553
  - config/initializers/rabl.rb
547
554
  - config/initializers/sqlite_alias.rb
555
+ - db/migrate/wizard/20260615000001_create_plutonium_wizard_sessions.rb
548
556
  - docs/.vitepress/config.ts
557
+ - docs/.vitepress/sync-skills.mjs
549
558
  - docs/.vitepress/theme/components/HomeAudienceSplit.vue
550
559
  - docs/.vitepress/theme/components/HomeCta.vue
551
560
  - docs/.vitepress/theme/components/HomeHero.vue
@@ -556,6 +565,7 @@ files:
556
565
  - docs/.vitepress/theme/components/SectionLanding.vue
557
566
  - docs/.vitepress/theme/custom.css
558
567
  - docs/.vitepress/theme/index.ts
568
+ - docs/ai.md
559
569
  - docs/getting-started/index.md
560
570
  - docs/getting-started/installation.md
561
571
  - docs/getting-started/tutorial/01-setup.md
@@ -574,6 +584,7 @@ files:
574
584
  - docs/guides/custom-actions.md
575
585
  - docs/guides/customizing-ui.md
576
586
  - docs/guides/index.md
587
+ - docs/guides/kanban.md
577
588
  - docs/guides/multi-tenancy.md
578
589
  - docs/guides/nested-resources.md
579
590
  - docs/guides/search-filtering.md
@@ -582,6 +593,7 @@ files:
582
593
  - docs/guides/troubleshooting.md
583
594
  - docs/guides/user-invites.md
584
595
  - docs/guides/user-profile.md
596
+ - docs/guides/wizards.md
585
597
  - docs/index.md
586
598
  - docs/og-image.html
587
599
  - docs/public/android-chrome-192x192.png
@@ -593,6 +605,11 @@ files:
593
605
  - docs/public/favicon.ico
594
606
  - docs/public/images/components/avatar.png
595
607
  - docs/public/images/guides/custom-actions-bulk.png
608
+ - docs/public/images/guides/kanban-after-move.png
609
+ - docs/public/images/guides/kanban-board-light.png
610
+ - docs/public/images/guides/kanban-board.png
611
+ - docs/public/images/guides/kanban-show-centered-modal.png
612
+ - docs/public/images/guides/kanban-wip-toast.png
596
613
  - docs/public/images/guides/multi-tenancy-dashboard.png
597
614
  - docs/public/images/guides/multi-tenancy-welcome.png
598
615
  - docs/public/images/guides/nested-inputs.png
@@ -604,6 +621,12 @@ files:
604
621
  - docs/public/images/guides/user-invites-landing.png
605
622
  - docs/public/images/guides/user-profile-edit.png
606
623
  - docs/public/images/guides/user-profile-show.png
624
+ - docs/public/images/guides/wizards-chooser.png
625
+ - docs/public/images/guides/wizards-completed.png
626
+ - docs/public/images/guides/wizards-index-action.png
627
+ - docs/public/images/guides/wizards-repeater.png
628
+ - docs/public/images/guides/wizards-review.png
629
+ - docs/public/images/guides/wizards-step.png
607
630
  - docs/public/images/home-index.png
608
631
  - docs/public/images/home-new.png
609
632
  - docs/public/images/home-show.png
@@ -653,6 +676,10 @@ files:
653
676
  - docs/reference/configuration.md
654
677
  - docs/reference/generators/lite.md
655
678
  - docs/reference/index.md
679
+ - docs/reference/kanban/authorization.md
680
+ - docs/reference/kanban/dsl.md
681
+ - docs/reference/kanban/index.md
682
+ - docs/reference/kanban/positioning.md
656
683
  - docs/reference/resource/actions.md
657
684
  - docs/reference/resource/definition.md
658
685
  - docs/reference/resource/export.md
@@ -672,6 +699,12 @@ files:
672
699
  - docs/reference/ui/layouts.md
673
700
  - docs/reference/ui/pages.md
674
701
  - docs/reference/ui/tables.md
702
+ - docs/reference/wizard/anchoring-resume.md
703
+ - docs/reference/wizard/dsl.md
704
+ - docs/reference/wizard/index.md
705
+ - docs/reference/wizard/one-time.md
706
+ - docs/reference/wizard/registration-launch.md
707
+ - docs/reference/wizard/storage-config.md
675
708
  - docs/superpowers/plans/2026-04-08-plutonium-skills-overhaul.md
676
709
  - docs/superpowers/plans/2026-04-14-plutonium-testing.md
677
710
  - docs/superpowers/plans/2026-04-14-plutonium-testing.md.tasks.json
@@ -689,6 +722,12 @@ files:
689
722
  - docs/superpowers/plans/2026-06-14-form-sectioning.md.tasks.json
690
723
  - docs/superpowers/plans/2026-06-14-railless-portal.md
691
724
  - docs/superpowers/plans/2026-06-14-railless-portal.md.tasks.json
725
+ - docs/superpowers/plans/2026-06-15-wizard-dsl.md
726
+ - docs/superpowers/plans/2026-06-15-wizard-dsl.md.tasks.json
727
+ - docs/superpowers/plans/2026-06-26-kanban-dsl.md
728
+ - docs/superpowers/plans/2026-06-26-kanban-dsl.md.tasks.json
729
+ - docs/superpowers/plans/2026-07-02-kanban-drop-interactions.md
730
+ - docs/superpowers/plans/2026-07-02-kanban-drop-interactions.md.tasks.json
692
731
  - docs/superpowers/specs/2026-04-08-plutonium-skills-overhaul-design.md
693
732
  - docs/superpowers/specs/2026-04-14-plutonium-testing-design.md
694
733
  - docs/superpowers/specs/2026-05-07-ui-layout-overhaul-design.md
@@ -702,8 +741,17 @@ files:
702
741
  - docs/superpowers/specs/2026-06-12-export-csv-default-action-design.md
703
742
  - docs/superpowers/specs/2026-06-14-form-sectioning-design.md
704
743
  - docs/superpowers/specs/2026-06-14-railless-portal-design.md
744
+ - docs/superpowers/specs/2026-06-15-wizard-dsl-design.md
745
+ - docs/superpowers/specs/2026-06-15-wizard-dsl-examples.rb
746
+ - docs/superpowers/specs/2026-06-17-wizard-relaunch-prompt-design.md
747
+ - docs/superpowers/specs/2026-06-18-wizard-attachments-design.md
748
+ - docs/superpowers/specs/2026-06-18-wizard-hosting-design.md
749
+ - docs/superpowers/specs/2026-06-26-kanban-dsl-design.md
750
+ - docs/superpowers/specs/2026-07-03-kanban-auth-simplification.md
705
751
  - esbuild.config.js
706
752
  - exe/pug
753
+ - gemfiles/postgres.gemfile
754
+ - gemfiles/postgres.gemfile.lock
707
755
  - gemfiles/rails_7.gemfile
708
756
  - gemfiles/rails_7.gemfile.lock
709
757
  - gemfiles/rails_8.0.gemfile
@@ -1012,6 +1060,7 @@ files:
1012
1060
  - lib/plutonium/definition/search.rb
1013
1061
  - lib/plutonium/definition/sorting.rb
1014
1062
  - lib/plutonium/definition/structured_inputs.rb
1063
+ - lib/plutonium/definition/wizards.rb
1015
1064
  - lib/plutonium/engine.rb
1016
1065
  - lib/plutonium/engine/validator.rb
1017
1066
  - lib/plutonium/helpers.rb
@@ -1040,16 +1089,27 @@ files:
1040
1089
  - lib/plutonium/invites/concerns/resend_invite.rb
1041
1090
  - lib/plutonium/invites/controller.rb
1042
1091
  - lib/plutonium/invites/pending_invite_check.rb
1092
+ - lib/plutonium/kanban.rb
1093
+ - lib/plutonium/kanban/action.rb
1094
+ - lib/plutonium/kanban/board.rb
1095
+ - lib/plutonium/kanban/broadcaster.rb
1096
+ - lib/plutonium/kanban/column.rb
1097
+ - lib/plutonium/kanban/context.rb
1098
+ - lib/plutonium/kanban/dsl.rb
1099
+ - lib/plutonium/kanban/grouping.rb
1100
+ - lib/plutonium/kanban/positioning.rb
1043
1101
  - lib/plutonium/lib/after_commit.rb
1044
1102
  - lib/plutonium/lib/bit_flags.rb
1045
1103
  - lib/plutonium/lib/deep_freezer.rb
1046
1104
  - lib/plutonium/lib/overlayed_hash.rb
1047
1105
  - lib/plutonium/lib/smart_cache.rb
1106
+ - lib/plutonium/migrations.rb
1048
1107
  - lib/plutonium/models/has_cents.rb
1049
1108
  - lib/plutonium/package/engine.rb
1050
1109
  - lib/plutonium/portal/controller.rb
1051
1110
  - lib/plutonium/portal/dynamic_controllers.rb
1052
1111
  - lib/plutonium/portal/engine.rb
1112
+ - lib/plutonium/positioning.rb
1053
1113
  - lib/plutonium/profile/security_section.rb
1054
1114
  - lib/plutonium/query/adhoc_block.rb
1055
1115
  - lib/plutonium/query/base.rb
@@ -1071,9 +1131,11 @@ files:
1071
1131
  - lib/plutonium/resource/controllers/defineable.rb
1072
1132
  - lib/plutonium/resource/controllers/export_csv.rb
1073
1133
  - lib/plutonium/resource/controllers/interactive_actions.rb
1134
+ - lib/plutonium/resource/controllers/kanban_actions.rb
1074
1135
  - lib/plutonium/resource/controllers/presentable.rb
1075
1136
  - lib/plutonium/resource/controllers/queryable.rb
1076
1137
  - lib/plutonium/resource/controllers/typeahead.rb
1138
+ - lib/plutonium/resource/controllers/wizard_actions.rb
1077
1139
  - lib/plutonium/resource/definition.rb
1078
1140
  - lib/plutonium/resource/interaction.rb
1079
1141
  - lib/plutonium/resource/policy.rb
@@ -1089,6 +1151,7 @@ files:
1089
1151
  - lib/plutonium/routing/mapper_extensions.rb
1090
1152
  - lib/plutonium/routing/resource_registration.rb
1091
1153
  - lib/plutonium/routing/route_set_extensions.rb
1154
+ - lib/plutonium/routing/wizard_registration.rb
1092
1155
  - lib/plutonium/structured_inputs/param_cleaner.rb
1093
1156
  - lib/plutonium/structured_inputs/params_concern.rb
1094
1157
  - lib/plutonium/support/parameters.rb
@@ -1132,12 +1195,14 @@ files:
1132
1195
  - lib/plutonium/ui/empty_card.rb
1133
1196
  - lib/plutonium/ui/export_button.rb
1134
1197
  - lib/plutonium/ui/form/base.rb
1198
+ - lib/plutonium/ui/form/components/currency.rb
1135
1199
  - lib/plutonium/ui/form/components/easymde.rb
1136
1200
  - lib/plutonium/ui/form/components/flatpickr.rb
1137
1201
  - lib/plutonium/ui/form/components/hidden_wrapper.rb
1138
1202
  - lib/plutonium/ui/form/components/intl_tel_input.rb
1139
1203
  - lib/plutonium/ui/form/components/json.rb
1140
1204
  - lib/plutonium/ui/form/components/key_value_store.rb
1205
+ - lib/plutonium/ui/form/components/password.rb
1141
1206
  - lib/plutonium/ui/form/components/resource_select.rb
1142
1207
  - lib/plutonium/ui/form/components/section.rb
1143
1208
  - lib/plutonium/ui/form/components/secure_association.rb
@@ -1151,13 +1216,19 @@ files:
1151
1216
  - lib/plutonium/ui/form/concerns/repeater_field_styles.rb
1152
1217
  - lib/plutonium/ui/form/concerns/typeahead_attributes.rb
1153
1218
  - lib/plutonium/ui/form/interaction.rb
1219
+ - lib/plutonium/ui/form/kanban_move.rb
1154
1220
  - lib/plutonium/ui/form/options/inferred_types.rb
1155
1221
  - lib/plutonium/ui/form/query.rb
1156
1222
  - lib/plutonium/ui/form/resource.rb
1157
1223
  - lib/plutonium/ui/form/theme.rb
1224
+ - lib/plutonium/ui/form/wizard.rb
1158
1225
  - lib/plutonium/ui/frame_navigator_panel.rb
1159
1226
  - lib/plutonium/ui/grid/card.rb
1160
1227
  - lib/plutonium/ui/grid/resource.rb
1228
+ - lib/plutonium/ui/kanban/card.rb
1229
+ - lib/plutonium/ui/kanban/color_dot.rb
1230
+ - lib/plutonium/ui/kanban/column.rb
1231
+ - lib/plutonium/ui/kanban/resource.rb
1161
1232
  - lib/plutonium/ui/layout/base.rb
1162
1233
  - lib/plutonium/ui/layout/basic_layout.rb
1163
1234
  - lib/plutonium/ui/layout/header.rb
@@ -1171,12 +1242,17 @@ files:
1171
1242
  - lib/plutonium/ui/modal/slideover.rb
1172
1243
  - lib/plutonium/ui/nav_grid_menu.rb
1173
1244
  - lib/plutonium/ui/nav_user.rb
1245
+ - lib/plutonium/ui/options/has_cents_field.rb
1174
1246
  - lib/plutonium/ui/page/base.rb
1175
1247
  - lib/plutonium/ui/page/edit.rb
1176
1248
  - lib/plutonium/ui/page/index.rb
1177
1249
  - lib/plutonium/ui/page/interactive_action.rb
1250
+ - lib/plutonium/ui/page/kanban_move.rb
1178
1251
  - lib/plutonium/ui/page/new.rb
1179
1252
  - lib/plutonium/ui/page/show.rb
1253
+ - lib/plutonium/ui/page/wizard.rb
1254
+ - lib/plutonium/ui/page/wizard_chooser.rb
1255
+ - lib/plutonium/ui/page/wizard_completed.rb
1180
1256
  - lib/plutonium/ui/page_header.rb
1181
1257
  - lib/plutonium/ui/panel.rb
1182
1258
  - lib/plutonium/ui/sidebar_menu.rb
@@ -1199,7 +1275,38 @@ files:
1199
1275
  - lib/plutonium/ui/table/display_theme.rb
1200
1276
  - lib/plutonium/ui/table/resource.rb
1201
1277
  - lib/plutonium/ui/table/theme.rb
1278
+ - lib/plutonium/ui/wizard/review.rb
1279
+ - lib/plutonium/ui/wizard/stepper.rb
1280
+ - lib/plutonium/ui/wizard/summary_display.rb
1202
1281
  - lib/plutonium/version.rb
1282
+ - lib/plutonium/wizard.rb
1283
+ - lib/plutonium/wizard/attachment_data.rb
1284
+ - lib/plutonium/wizard/attachments.rb
1285
+ - lib/plutonium/wizard/base.rb
1286
+ - lib/plutonium/wizard/base_controller.rb
1287
+ - lib/plutonium/wizard/configuration.rb
1288
+ - lib/plutonium/wizard/controller.rb
1289
+ - lib/plutonium/wizard/data.rb
1290
+ - lib/plutonium/wizard/driving.rb
1291
+ - lib/plutonium/wizard/dsl.rb
1292
+ - lib/plutonium/wizard/errors.rb
1293
+ - lib/plutonium/wizard/field_capture.rb
1294
+ - lib/plutonium/wizard/field_importer.rb
1295
+ - lib/plutonium/wizard/gate.rb
1296
+ - lib/plutonium/wizard/instance_key.rb
1297
+ - lib/plutonium/wizard/lazy_persisted.rb
1298
+ - lib/plutonium/wizard/resume.rb
1299
+ - lib/plutonium/wizard/review_step.rb
1300
+ - lib/plutonium/wizard/route_resolution.rb
1301
+ - lib/plutonium/wizard/runner.rb
1302
+ - lib/plutonium/wizard/session.rb
1303
+ - lib/plutonium/wizard/state.rb
1304
+ - lib/plutonium/wizard/step.rb
1305
+ - lib/plutonium/wizard/step_adapter.rb
1306
+ - lib/plutonium/wizard/store/active_record.rb
1307
+ - lib/plutonium/wizard/store/base.rb
1308
+ - lib/plutonium/wizard/store/memory.rb
1309
+ - lib/plutonium/wizard/sweep_job.rb
1203
1310
  - lib/rodauth/features/case_insensitive_login.rb
1204
1311
  - lib/rodauth/plugins.rb
1205
1312
  - lib/tasks/.keep
@@ -1231,6 +1338,7 @@ files:
1231
1338
  - src/js/controllers/capture_url_controller.js
1232
1339
  - src/js/controllers/clipboard_controller.js
1233
1340
  - src/js/controllers/color_mode_controller.js
1341
+ - src/js/controllers/currency_input_controller.js
1234
1342
  - src/js/controllers/dirty_form_guard_controller.js
1235
1343
  - src/js/controllers/easymde_controller.js
1236
1344
  - src/js/controllers/filter_panel_controller.js
@@ -1240,8 +1348,10 @@ files:
1240
1348
  - src/js/controllers/icon_rail_controller.js
1241
1349
  - src/js/controllers/icon_rail_flyout_controller.js
1242
1350
  - src/js/controllers/intl_tel_input_controller.js
1351
+ - src/js/controllers/kanban_controller.js
1243
1352
  - src/js/controllers/key_value_store_controller.js
1244
1353
  - src/js/controllers/nested_resource_form_fields_controller.js
1354
+ - src/js/controllers/password_sentinel_controller.js
1245
1355
  - src/js/controllers/password_visibility_controller.js
1246
1356
  - src/js/controllers/register_controllers.js
1247
1357
  - src/js/controllers/remote_modal_controller.js
@@ -1259,6 +1369,7 @@ files:
1259
1369
  - src/js/controllers/table_header_controller.js
1260
1370
  - src/js/controllers/textarea_autogrow_controller.js
1261
1371
  - src/js/controllers/view_switcher_controller.js
1372
+ - src/js/controllers/wizard_controller.js
1262
1373
  - src/js/core.js
1263
1374
  - src/js/plutonium.js
1264
1375
  - src/js/support/dom_element.js