karafka-web 0.11.5 → 0.11.6

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 (517) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/Gemfile +9 -10
  4. data/Gemfile.lint +14 -0
  5. data/Gemfile.lint.lock +123 -0
  6. data/Gemfile.lock +15 -16
  7. data/README.md +15 -15
  8. data/Rakefile +2 -2
  9. data/bin/balance_specs +120 -0
  10. data/bin/check_coverage +31 -0
  11. data/bin/collect_timings +83 -0
  12. data/bin/rspecs +10 -0
  13. data/bin/rspecs_parallel +111 -0
  14. data/docker-compose.yml +1 -1
  15. data/karafka-web.gemspec +35 -35
  16. data/lib/karafka/web/cli/base.rb +2 -2
  17. data/lib/karafka/web/cli/help.rb +2 -2
  18. data/lib/karafka/web/cli/install.rb +3 -3
  19. data/lib/karafka/web/cli/migrate.rb +3 -3
  20. data/lib/karafka/web/cli/reset.rb +3 -3
  21. data/lib/karafka/web/cli/uninstall.rb +1 -1
  22. data/lib/karafka/web/config.rb +40 -32
  23. data/lib/karafka/web/contracts/base.rb +2 -2
  24. data/lib/karafka/web/deserializer.rb +5 -5
  25. data/lib/karafka/web/installer.rb +14 -14
  26. data/lib/karafka/web/management/actions/base.rb +5 -5
  27. data/lib/karafka/web/management/actions/clean_boot_file.rb +3 -3
  28. data/lib/karafka/web/management/actions/create_initial_states.rb +8 -8
  29. data/lib/karafka/web/management/actions/enable.rb +3 -3
  30. data/lib/karafka/web/management/actions/extend_boot_file.rb +3 -3
  31. data/lib/karafka/web/management/migrations/base.rb +3 -3
  32. data/lib/karafka/web/management/migrations/consumers_metrics/0_set_initial.rb +1 -1
  33. data/lib/karafka/web/management/migrations/consumers_metrics/1699543515_fill_missing_received_and_sent_bytes.rb +1 -1
  34. data/lib/karafka/web/management/migrations/consumers_metrics/1700234522_introduce_waiting.rb +1 -1
  35. data/lib/karafka/web/management/migrations/consumers_metrics/1700234522_remove_processing.rb +1 -1
  36. data/lib/karafka/web/management/migrations/consumers_metrics/1704722380_split_listeners_into_active_and_paused.rb +7 -7
  37. data/lib/karafka/web/management/migrations/consumers_metrics/1706607960_introduce_lag_total.rb +1 -1
  38. data/lib/karafka/web/management/migrations/consumers_metrics/1706611396_rename_lag_total_to_lag_hybrid.rb +1 -1
  39. data/lib/karafka/web/management/migrations/consumers_metrics/1716218393_populate_jobs_metrics.rb +1 -1
  40. data/lib/karafka/web/management/migrations/consumers_reports/1761645571_rename_process_name_to_id.rb +1 -1
  41. data/lib/karafka/web/management/migrations/consumers_reports/1765657887_add_group_instance_id_to_subscription_groups.rb +42 -0
  42. data/lib/karafka/web/management/migrations/consumers_states/0_set_initial.rb +2 -2
  43. data/lib/karafka/web/management/migrations/consumers_states/1699543515_fill_missing_received_and_sent_bytes.rb +1 -1
  44. data/lib/karafka/web/management/migrations/consumers_states/1700234522_introduce_waiting.rb +1 -1
  45. data/lib/karafka/web/management/migrations/consumers_states/1700234522_remove_processing.rb +1 -1
  46. data/lib/karafka/web/management/migrations/consumers_states/1704722380_split_listeners_into_active_and_paused.rb +7 -7
  47. data/lib/karafka/web/management/migrations/consumers_states/1706607960_introduce_lag_total.rb +1 -1
  48. data/lib/karafka/web/management/migrations/consumers_states/1706611396_rename_lag_total_to_lag_hybrid.rb +1 -1
  49. data/lib/karafka/web/management/migrations/consumers_states/1716218393_add_jobs_counter.rb +1 -1
  50. data/lib/karafka/web/management/migrator.rb +2 -2
  51. data/lib/karafka/web/pro/commanding/commands/base.rb +20 -4
  52. data/lib/karafka/web/pro/commanding/commands/consumers/quiet.rb +22 -5
  53. data/lib/karafka/web/pro/commanding/commands/consumers/stop.rb +22 -5
  54. data/lib/karafka/web/pro/commanding/commands/consumers/trace.rb +21 -4
  55. data/lib/karafka/web/pro/commanding/commands/partitions/pause.rb +20 -3
  56. data/lib/karafka/web/pro/commanding/commands/partitions/resume.rb +20 -3
  57. data/lib/karafka/web/pro/commanding/commands/partitions/seek.rb +20 -3
  58. data/lib/karafka/web/pro/commanding/commands/topics/pause.rb +48 -0
  59. data/lib/karafka/web/pro/commanding/commands/topics/resume.rb +49 -0
  60. data/lib/karafka/web/pro/commanding/config.rb +23 -5
  61. data/lib/karafka/web/pro/commanding/contracts/config.rb +21 -4
  62. data/lib/karafka/web/pro/commanding/dispatcher.rb +61 -26
  63. data/lib/karafka/web/pro/commanding/handlers/partitions/commands/base.rb +20 -3
  64. data/lib/karafka/web/pro/commanding/handlers/partitions/commands/pause.rb +21 -4
  65. data/lib/karafka/web/pro/commanding/handlers/partitions/commands/resume.rb +20 -3
  66. data/lib/karafka/web/pro/commanding/handlers/partitions/commands/seek.rb +24 -7
  67. data/lib/karafka/web/pro/commanding/handlers/partitions/executor.rb +36 -12
  68. data/lib/karafka/web/pro/commanding/handlers/partitions/listener.rb +47 -8
  69. data/lib/karafka/web/pro/commanding/handlers/partitions/tracker.rb +62 -13
  70. data/lib/karafka/web/pro/commanding/handlers/topics/commands/base.rb +109 -0
  71. data/lib/karafka/web/pro/commanding/handlers/topics/commands/pause.rb +76 -0
  72. data/lib/karafka/web/pro/commanding/handlers/topics/commands/resume.rb +56 -0
  73. data/lib/karafka/web/pro/commanding/handlers/topics/executor.rb +75 -0
  74. data/lib/karafka/web/pro/commanding/handlers/topics/listener.rb +82 -0
  75. data/lib/karafka/web/pro/commanding/handlers/topics/tracker.rb +81 -0
  76. data/lib/karafka/web/pro/commanding/listener.rb +23 -6
  77. data/lib/karafka/web/pro/commanding/manager.rb +44 -23
  78. data/lib/karafka/web/pro/commanding/matcher.rb +46 -18
  79. data/lib/karafka/web/pro/commanding/matchers/base.rb +87 -0
  80. data/lib/karafka/web/pro/commanding/matchers/consumer_group_id.rb +58 -0
  81. data/lib/karafka/web/pro/commanding/matchers/message_type.rb +49 -0
  82. data/lib/karafka/web/pro/commanding/matchers/partition_id.rb +61 -0
  83. data/lib/karafka/web/pro/commanding/matchers/process_id.rb +58 -0
  84. data/lib/karafka/web/pro/commanding/matchers/schema_version.rb +44 -0
  85. data/lib/karafka/web/pro/commanding/matchers/topic.rb +58 -0
  86. data/lib/karafka/web/pro/commanding/request.rb +19 -2
  87. data/lib/karafka/web/pro/commanding.rb +19 -2
  88. data/lib/karafka/web/pro/loader.rb +20 -3
  89. data/lib/karafka/web/pro/ui/app.rb +25 -8
  90. data/lib/karafka/web/pro/ui/controllers/base_controller.rb +19 -2
  91. data/lib/karafka/web/pro/ui/controllers/cluster_controller.rb +19 -2
  92. data/lib/karafka/web/pro/ui/controllers/consumers/base_controller.rb +19 -2
  93. data/lib/karafka/web/pro/ui/controllers/consumers/commanding_controller.rb +37 -15
  94. data/lib/karafka/web/pro/ui/controllers/consumers/commands_controller.rb +23 -6
  95. data/lib/karafka/web/pro/ui/controllers/consumers/consumers_controller.rb +19 -2
  96. data/lib/karafka/web/pro/ui/controllers/consumers/controls_controller.rb +19 -2
  97. data/lib/karafka/web/pro/ui/controllers/consumers/jobs_controller.rb +19 -2
  98. data/lib/karafka/web/pro/ui/controllers/consumers/partitions/base_controller.rb +43 -42
  99. data/lib/karafka/web/pro/ui/controllers/consumers/partitions/offsets_controller.rb +36 -17
  100. data/lib/karafka/web/pro/ui/controllers/consumers/partitions/pauses_controller.rb +59 -33
  101. data/lib/karafka/web/pro/ui/controllers/consumers/topics/pauses_controller.rb +164 -0
  102. data/lib/karafka/web/pro/ui/controllers/dashboard_controller.rb +19 -2
  103. data/lib/karafka/web/pro/ui/controllers/dlq_controller.rb +26 -9
  104. data/lib/karafka/web/pro/ui/controllers/errors_controller.rb +25 -9
  105. data/lib/karafka/web/pro/ui/controllers/explorer/base_controller.rb +19 -2
  106. data/lib/karafka/web/pro/ui/controllers/explorer/explorer_controller.rb +22 -5
  107. data/lib/karafka/web/pro/ui/controllers/explorer/messages_controller.rb +26 -9
  108. data/lib/karafka/web/pro/ui/controllers/explorer/search_controller.rb +23 -6
  109. data/lib/karafka/web/pro/ui/controllers/health_controller.rb +19 -2
  110. data/lib/karafka/web/pro/ui/controllers/jobs_controller.rb +19 -2
  111. data/lib/karafka/web/pro/ui/controllers/recurring_tasks_controller.rb +22 -5
  112. data/lib/karafka/web/pro/ui/controllers/routing_controller.rb +19 -2
  113. data/lib/karafka/web/pro/ui/controllers/scheduled_messages/base_controller.rb +19 -2
  114. data/lib/karafka/web/pro/ui/controllers/scheduled_messages/explorer_controller.rb +25 -8
  115. data/lib/karafka/web/pro/ui/controllers/scheduled_messages/messages_controller.rb +21 -4
  116. data/lib/karafka/web/pro/ui/controllers/scheduled_messages/schedules_controller.rb +26 -9
  117. data/lib/karafka/web/pro/ui/controllers/status_controller.rb +19 -2
  118. data/lib/karafka/web/pro/ui/controllers/support_controller.rb +19 -2
  119. data/lib/karafka/web/pro/ui/controllers/topics/base_controller.rb +19 -2
  120. data/lib/karafka/web/pro/ui/controllers/topics/configs_controller.rb +20 -3
  121. data/lib/karafka/web/pro/ui/controllers/topics/distributions_controller.rb +20 -3
  122. data/lib/karafka/web/pro/ui/controllers/topics/offsets_controller.rb +19 -2
  123. data/lib/karafka/web/pro/ui/controllers/topics/replications_controller.rb +41 -2
  124. data/lib/karafka/web/pro/ui/controllers/topics/topics_controller.rb +24 -7
  125. data/lib/karafka/web/pro/ui/controllers/ux_controller.rb +19 -2
  126. data/lib/karafka/web/pro/ui/lib/branding/config.rb +19 -2
  127. data/lib/karafka/web/pro/ui/lib/branding/contracts/config.rb +21 -4
  128. data/lib/karafka/web/pro/ui/lib/branding.rb +19 -2
  129. data/lib/karafka/web/pro/ui/lib/features.rb +19 -2
  130. data/lib/karafka/web/pro/ui/lib/patterns_detector.rb +19 -2
  131. data/lib/karafka/web/pro/ui/lib/policies/config.rb +19 -2
  132. data/lib/karafka/web/pro/ui/lib/policies/contracts/config.rb +21 -4
  133. data/lib/karafka/web/pro/ui/lib/policies/messages.rb +20 -3
  134. data/lib/karafka/web/pro/ui/lib/policies/requests.rb +19 -2
  135. data/lib/karafka/web/pro/ui/lib/policies.rb +19 -2
  136. data/lib/karafka/web/pro/ui/lib/safe_runner.rb +20 -3
  137. data/lib/karafka/web/pro/ui/lib/search/config.rb +19 -2
  138. data/lib/karafka/web/pro/ui/lib/search/contracts/config.rb +21 -4
  139. data/lib/karafka/web/pro/ui/lib/search/contracts/form.rb +24 -6
  140. data/lib/karafka/web/pro/ui/lib/search/matchers/base.rb +21 -4
  141. data/lib/karafka/web/pro/ui/lib/search/matchers/raw_header_includes.rb +19 -2
  142. data/lib/karafka/web/pro/ui/lib/search/matchers/raw_key_includes.rb +19 -2
  143. data/lib/karafka/web/pro/ui/lib/search/matchers/raw_payload_includes.rb +20 -3
  144. data/lib/karafka/web/pro/ui/lib/search/normalizer.rb +26 -9
  145. data/lib/karafka/web/pro/ui/lib/search/runner.rb +33 -16
  146. data/lib/karafka/web/pro/ui/lib/search.rb +19 -2
  147. data/lib/karafka/web/pro/ui/routes/base.rb +19 -2
  148. data/lib/karafka/web/pro/ui/routes/cluster.rb +21 -4
  149. data/lib/karafka/web/pro/ui/routes/consumers.rb +83 -49
  150. data/lib/karafka/web/pro/ui/routes/dashboard.rb +20 -3
  151. data/lib/karafka/web/pro/ui/routes/dlq.rb +20 -3
  152. data/lib/karafka/web/pro/ui/routes/errors.rb +21 -4
  153. data/lib/karafka/web/pro/ui/routes/explorer.rb +33 -16
  154. data/lib/karafka/web/pro/ui/routes/health.rb +26 -9
  155. data/lib/karafka/web/pro/ui/routes/jobs.rb +23 -6
  156. data/lib/karafka/web/pro/ui/routes/recurring_tasks.rb +29 -12
  157. data/lib/karafka/web/pro/ui/routes/routing.rb +20 -3
  158. data/lib/karafka/web/pro/ui/routes/scheduled_messages.rb +28 -11
  159. data/lib/karafka/web/pro/ui/routes/status.rb +20 -3
  160. data/lib/karafka/web/pro/ui/routes/support.rb +20 -3
  161. data/lib/karafka/web/pro/ui/routes/topics.rb +29 -12
  162. data/lib/karafka/web/pro/ui/routes/ux.rb +20 -3
  163. data/lib/karafka/web/pro/ui/views/cluster/_breadcrumbs.erb +13 -2
  164. data/lib/karafka/web/pro/ui/views/cluster/_broker.erb +13 -2
  165. data/lib/karafka/web/pro/ui/views/cluster/_config.erb +14 -3
  166. data/lib/karafka/web/pro/ui/views/cluster/_tabs.erb +13 -2
  167. data/lib/karafka/web/pro/ui/views/cluster/index.erb +13 -2
  168. data/lib/karafka/web/pro/ui/views/cluster/show.erb +13 -2
  169. data/lib/karafka/web/pro/ui/views/consumers/commands/_backtrace.erb +13 -2
  170. data/lib/karafka/web/pro/ui/views/consumers/commands/_breadcrumbs.erb +13 -2
  171. data/lib/karafka/web/pro/ui/views/consumers/commands/_command.erb +24 -66
  172. data/lib/karafka/web/pro/ui/views/consumers/commands/_command_details.erb +13 -2
  173. data/lib/karafka/web/pro/ui/views/consumers/commands/_empty.erb +13 -2
  174. data/lib/karafka/web/pro/ui/views/consumers/commands/_incompatible_command.erb +19 -0
  175. data/lib/karafka/web/pro/ui/views/consumers/commands/_incompatible_schema.erb +13 -2
  176. data/lib/karafka/web/pro/ui/views/consumers/commands/_table.erb +15 -4
  177. data/lib/karafka/web/pro/ui/views/consumers/commands/details/_acceptance.erb +19 -0
  178. data/lib/karafka/web/pro/ui/views/consumers/commands/details/_request.erb +19 -0
  179. data/lib/karafka/web/pro/ui/views/consumers/commands/details/_result.erb +27 -0
  180. data/lib/karafka/web/pro/ui/views/consumers/commands/index.erb +13 -2
  181. data/lib/karafka/web/pro/ui/views/consumers/commands/metadata/_request.erb +52 -0
  182. data/lib/karafka/web/pro/ui/views/consumers/commands/metadata/_response.erb +46 -0
  183. data/lib/karafka/web/pro/ui/views/consumers/commands/rows/_command_name_badge.erb +40 -0
  184. data/lib/karafka/web/pro/ui/views/consumers/commands/rows/_request.erb +47 -0
  185. data/lib/karafka/web/pro/ui/views/consumers/commands/rows/_response.erb +46 -0
  186. data/lib/karafka/web/pro/ui/views/consumers/commands/show.erb +14 -15
  187. data/lib/karafka/web/pro/ui/views/consumers/consumers/_breadcrumbs.erb +13 -2
  188. data/lib/karafka/web/pro/ui/views/consumers/consumers/_consumer.erb +13 -2
  189. data/lib/karafka/web/pro/ui/views/consumers/consumers/_consumer_performance.erb +13 -2
  190. data/lib/karafka/web/pro/ui/views/consumers/consumers/_tabs.erb +13 -2
  191. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_commands.erb +13 -2
  192. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_consumer_group.erb +13 -2
  193. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_metrics.erb +13 -2
  194. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_no_subscriptions.erb +13 -2
  195. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_partition.erb +15 -5
  196. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_partition_edit_options.erb +16 -5
  197. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_stopped.erb +13 -2
  198. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_subscription_group.erb +31 -7
  199. data/lib/karafka/web/pro/ui/views/consumers/consumers/consumer/_tabs.erb +13 -2
  200. data/lib/karafka/web/pro/ui/views/consumers/consumers/details.erb +13 -2
  201. data/lib/karafka/web/pro/ui/views/consumers/consumers/index.erb +13 -2
  202. data/lib/karafka/web/pro/ui/views/consumers/consumers/performance.erb +13 -2
  203. data/lib/karafka/web/pro/ui/views/consumers/consumers/subscriptions.erb +13 -2
  204. data/lib/karafka/web/pro/ui/views/consumers/controls/_breadcrumbs.erb +13 -2
  205. data/lib/karafka/web/pro/ui/views/consumers/controls/_controls.erb +14 -3
  206. data/lib/karafka/web/pro/ui/views/consumers/controls/index.erb +35 -7
  207. data/lib/karafka/web/pro/ui/views/consumers/jobs/_breadcrumbs.erb +13 -2
  208. data/lib/karafka/web/pro/ui/views/consumers/jobs/_job.erb +14 -3
  209. data/lib/karafka/web/pro/ui/views/consumers/jobs/_no_jobs.erb +13 -2
  210. data/lib/karafka/web/pro/ui/views/consumers/jobs/pending.erb +13 -2
  211. data/lib/karafka/web/pro/ui/views/consumers/jobs/running.erb +13 -2
  212. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/_basics.erb +20 -13
  213. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/_breadcrumbs.erb +37 -46
  214. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/_form.erb +25 -14
  215. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/_not_running_error.erb +13 -2
  216. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/_running_warning.erb +13 -2
  217. data/lib/karafka/web/pro/ui/views/consumers/partitions/offsets/edit.erb +17 -6
  218. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_active_not_editable.erb +13 -2
  219. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_adjusting_warning.erb +14 -3
  220. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_breadcrumbs.erb +40 -48
  221. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_edit_form.erb +18 -8
  222. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_lrj_not_manageable.erb +13 -2
  223. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_new_form.erb +22 -11
  224. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_not_running.erb +13 -2
  225. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/_partition_info.erb +57 -0
  226. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/edit.erb +16 -5
  227. data/lib/karafka/web/pro/ui/views/consumers/partitions/pauses/new.erb +16 -5
  228. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_adjusting_warning.erb +38 -0
  229. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_breadcrumbs.erb +46 -0
  230. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_edit_form.erb +66 -0
  231. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_lrj_not_manageable.erb +30 -0
  232. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_new_form.erb +86 -0
  233. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_not_running.erb +27 -0
  234. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/_topic_info.erb +72 -0
  235. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/edit.erb +29 -0
  236. data/lib/karafka/web/pro/ui/views/consumers/topics/pauses/new.erb +29 -0
  237. data/lib/karafka/web/pro/ui/views/dashboard/index.erb +13 -2
  238. data/lib/karafka/web/pro/ui/views/dlq/_breadcrumbs.erb +13 -2
  239. data/lib/karafka/web/pro/ui/views/dlq/_no_topics.erb +13 -2
  240. data/lib/karafka/web/pro/ui/views/dlq/_topic.erb +13 -2
  241. data/lib/karafka/web/pro/ui/views/dlq/index.erb +13 -2
  242. data/lib/karafka/web/pro/ui/views/errors/_breadcrumbs.erb +13 -2
  243. data/lib/karafka/web/pro/ui/views/errors/_error.erb +14 -3
  244. data/lib/karafka/web/pro/ui/views/errors/_partition_option.erb +18 -5
  245. data/lib/karafka/web/pro/ui/views/errors/_selector.erb +14 -3
  246. data/lib/karafka/web/pro/ui/views/errors/_table.erb +14 -3
  247. data/lib/karafka/web/pro/ui/views/errors/index.erb +39 -26
  248. data/lib/karafka/web/pro/ui/views/errors/partition.erb +50 -37
  249. data/lib/karafka/web/pro/ui/views/errors/show.erb +14 -3
  250. data/lib/karafka/web/pro/ui/views/explorer/explorer/_breadcrumbs.erb +13 -2
  251. data/lib/karafka/web/pro/ui/views/explorer/explorer/_failed_deserialization.erb +13 -2
  252. data/lib/karafka/web/pro/ui/views/explorer/explorer/_filtered.erb +13 -2
  253. data/lib/karafka/web/pro/ui/views/explorer/explorer/_message.erb +14 -3
  254. data/lib/karafka/web/pro/ui/views/explorer/explorer/_no_topics.erb +13 -2
  255. data/lib/karafka/web/pro/ui/views/explorer/explorer/_partition_option.erb +18 -5
  256. data/lib/karafka/web/pro/ui/views/explorer/explorer/_selector.erb +14 -3
  257. data/lib/karafka/web/pro/ui/views/explorer/explorer/_topic.erb +13 -2
  258. data/lib/karafka/web/pro/ui/views/explorer/explorer/index.erb +13 -2
  259. data/lib/karafka/web/pro/ui/views/explorer/explorer/message/_metadata.erb +13 -2
  260. data/lib/karafka/web/pro/ui/views/explorer/explorer/message/_payload.erb +13 -2
  261. data/lib/karafka/web/pro/ui/views/explorer/explorer/message/_resources_utilization.erb +13 -2
  262. data/lib/karafka/web/pro/ui/views/explorer/explorer/message/_too_big_to_be_displayed.erb +15 -4
  263. data/lib/karafka/web/pro/ui/views/explorer/explorer/messages/_detail.erb +13 -2
  264. data/lib/karafka/web/pro/ui/views/explorer/explorer/messages/_headers.erb +13 -2
  265. data/lib/karafka/web/pro/ui/views/explorer/explorer/messages/_key.erb +13 -2
  266. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition/_cleaned.erb +13 -2
  267. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition/_empty.erb +13 -2
  268. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition/_messages.erb +14 -3
  269. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition/_time_selector.erb +14 -3
  270. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition/_timestamp_selector.erb +15 -3
  271. data/lib/karafka/web/pro/ui/views/explorer/explorer/partition.erb +52 -39
  272. data/lib/karafka/web/pro/ui/views/explorer/explorer/show.erb +13 -2
  273. data/lib/karafka/web/pro/ui/views/explorer/explorer/topic/_actions.erb +39 -26
  274. data/lib/karafka/web/pro/ui/views/explorer/explorer/topic/_empty.erb +13 -2
  275. data/lib/karafka/web/pro/ui/views/explorer/explorer/topic/_limited.erb +13 -2
  276. data/lib/karafka/web/pro/ui/views/explorer/explorer/topic.erb +13 -2
  277. data/lib/karafka/web/pro/ui/views/explorer/messages/_breadcrumbs.erb +13 -2
  278. data/lib/karafka/web/pro/ui/views/explorer/messages/forward.erb +28 -16
  279. data/lib/karafka/web/pro/ui/views/explorer/search/_breadcrumbs.erb +13 -2
  280. data/lib/karafka/web/pro/ui/views/explorer/search/_fix_errors.erb +13 -2
  281. data/lib/karafka/web/pro/ui/views/explorer/search/_metadata.erb +13 -2
  282. data/lib/karafka/web/pro/ui/views/explorer/search/_no_results.erb +13 -2
  283. data/lib/karafka/web/pro/ui/views/explorer/search/_no_search_criteria.erb +13 -2
  284. data/lib/karafka/web/pro/ui/views/explorer/search/_search_criteria.erb +14 -3
  285. data/lib/karafka/web/pro/ui/views/explorer/search/_search_modal.erb +27 -15
  286. data/lib/karafka/web/pro/ui/views/explorer/search/_timeout.erb +13 -2
  287. data/lib/karafka/web/pro/ui/views/explorer/search/index.erb +13 -2
  288. data/lib/karafka/web/pro/ui/views/health/_breadcrumbs.erb +13 -2
  289. data/lib/karafka/web/pro/ui/views/health/_no_data.erb +13 -2
  290. data/lib/karafka/web/pro/ui/views/health/_no_partition_data.erb +13 -2
  291. data/lib/karafka/web/pro/ui/views/health/_partition.erb +22 -6
  292. data/lib/karafka/web/pro/ui/views/health/_partition_lags.erb +13 -2
  293. data/lib/karafka/web/pro/ui/views/health/_partition_offset.erb +13 -2
  294. data/lib/karafka/web/pro/ui/views/health/_partition_times.erb +13 -2
  295. data/lib/karafka/web/pro/ui/views/health/_partitions_with_fallback.erb +15 -2
  296. data/lib/karafka/web/pro/ui/views/health/_table_metadata.erb +13 -2
  297. data/lib/karafka/web/pro/ui/views/health/_tabs.erb +13 -2
  298. data/lib/karafka/web/pro/ui/views/health/_topic_edit_options.erb +64 -0
  299. data/lib/karafka/web/pro/ui/views/health/changes.erb +14 -2
  300. data/lib/karafka/web/pro/ui/views/health/cluster_lags.erb +13 -2
  301. data/lib/karafka/web/pro/ui/views/health/lags.erb +14 -2
  302. data/lib/karafka/web/pro/ui/views/health/offsets.erb +14 -2
  303. data/lib/karafka/web/pro/ui/views/health/overview.erb +29 -5
  304. data/lib/karafka/web/pro/ui/views/jobs/_job.erb +14 -3
  305. data/lib/karafka/web/pro/ui/views/jobs/_no_jobs.erb +13 -2
  306. data/lib/karafka/web/pro/ui/views/jobs/pending.erb +13 -2
  307. data/lib/karafka/web/pro/ui/views/jobs/running.erb +13 -2
  308. data/lib/karafka/web/pro/ui/views/recurring_tasks/_actions.erb +13 -2
  309. data/lib/karafka/web/pro/ui/views/recurring_tasks/_batch_actions.erb +13 -2
  310. data/lib/karafka/web/pro/ui/views/recurring_tasks/_breadcrumbs.erb +13 -2
  311. data/lib/karafka/web/pro/ui/views/recurring_tasks/_log.erb +13 -2
  312. data/lib/karafka/web/pro/ui/views/recurring_tasks/_not_active.erb +13 -2
  313. data/lib/karafka/web/pro/ui/views/recurring_tasks/_tabs.erb +13 -2
  314. data/lib/karafka/web/pro/ui/views/recurring_tasks/_task.erb +14 -3
  315. data/lib/karafka/web/pro/ui/views/recurring_tasks/logs.erb +13 -2
  316. data/lib/karafka/web/pro/ui/views/recurring_tasks/schedule.erb +14 -3
  317. data/lib/karafka/web/pro/ui/views/routing/_consumer_group.erb +14 -3
  318. data/lib/karafka/web/pro/ui/views/routing/_detail.erb +13 -2
  319. data/lib/karafka/web/pro/ui/views/routing/_topic.erb +14 -3
  320. data/lib/karafka/web/pro/ui/views/routing/index.erb +13 -2
  321. data/lib/karafka/web/pro/ui/views/routing/show.erb +13 -2
  322. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/_breadcrumbs.erb +13 -2
  323. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/_key.erb +13 -2
  324. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/_message.erb +13 -2
  325. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/_messages.erb +14 -3
  326. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/message/_cancel.erb +14 -3
  327. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/message/_compacted.erb +13 -2
  328. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/message/_schedule.erb +14 -3
  329. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/message/_tombstone.erb +14 -3
  330. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/message/_unknown.erb +14 -3
  331. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/partition.erb +52 -39
  332. data/lib/karafka/web/pro/ui/views/scheduled_messages/explorer/topic.erb +13 -2
  333. data/lib/karafka/web/pro/ui/views/scheduled_messages/schedules/_breadcrumbs.erb +13 -2
  334. data/lib/karafka/web/pro/ui/views/scheduled_messages/schedules/_no_groups.erb +13 -2
  335. data/lib/karafka/web/pro/ui/views/scheduled_messages/schedules/index.erb +13 -2
  336. data/lib/karafka/web/pro/ui/views/scheduled_messages/schedules/show.erb +14 -3
  337. data/lib/karafka/web/pro/ui/views/shared/_navigation.erb +14 -3
  338. data/lib/karafka/web/pro/ui/views/shared/_rdkafka_form_error_alert_box.erb +13 -2
  339. data/lib/karafka/web/pro/ui/views/shared/branding/_label.erb +13 -2
  340. data/lib/karafka/web/pro/ui/views/shared/branding/_notice.erb +13 -2
  341. data/lib/karafka/web/pro/ui/views/topics/configs/_breadcrumbs.erb +13 -2
  342. data/lib/karafka/web/pro/ui/views/topics/configs/_config.erb +14 -3
  343. data/lib/karafka/web/pro/ui/views/topics/configs/_delete_button.erb +13 -2
  344. data/lib/karafka/web/pro/ui/views/topics/configs/_edit_form.erb +17 -6
  345. data/lib/karafka/web/pro/ui/views/topics/configs/_edit_plan.erb +13 -2
  346. data/lib/karafka/web/pro/ui/views/topics/configs/_edit_warning.erb +13 -2
  347. data/lib/karafka/web/pro/ui/views/topics/configs/edit.erb +21 -10
  348. data/lib/karafka/web/pro/ui/views/topics/configs/index.erb +14 -3
  349. data/lib/karafka/web/pro/ui/views/topics/distributions/_add_partitions_button.erb +13 -2
  350. data/lib/karafka/web/pro/ui/views/topics/distributions/_badges.erb +13 -2
  351. data/lib/karafka/web/pro/ui/views/topics/distributions/_breadcrumbs.erb +13 -2
  352. data/lib/karafka/web/pro/ui/views/topics/distributions/_chart.erb +13 -2
  353. data/lib/karafka/web/pro/ui/views/topics/distributions/_edit_form.erb +18 -6
  354. data/lib/karafka/web/pro/ui/views/topics/distributions/_edit_hints.erb +13 -2
  355. data/lib/karafka/web/pro/ui/views/topics/distributions/_edit_warnings.erb +13 -2
  356. data/lib/karafka/web/pro/ui/views/topics/distributions/_empty_partitions.erb +13 -2
  357. data/lib/karafka/web/pro/ui/views/topics/distributions/_limited.erb +13 -2
  358. data/lib/karafka/web/pro/ui/views/topics/distributions/_partition.erb +13 -2
  359. data/lib/karafka/web/pro/ui/views/topics/distributions/edit.erb +13 -2
  360. data/lib/karafka/web/pro/ui/views/topics/distributions/show.erb +13 -2
  361. data/lib/karafka/web/pro/ui/views/topics/offsets/_breadcrumbs.erb +13 -2
  362. data/lib/karafka/web/pro/ui/views/topics/offsets/_partition.erb +13 -2
  363. data/lib/karafka/web/pro/ui/views/topics/offsets/show.erb +13 -2
  364. data/lib/karafka/web/pro/ui/views/topics/replications/_breadcrumbs.erb +13 -2
  365. data/lib/karafka/web/pro/ui/views/topics/replications/_metric_box.erb +20 -0
  366. data/lib/karafka/web/pro/ui/views/topics/replications/_partition.erb +13 -2
  367. data/lib/karafka/web/pro/ui/views/topics/replications/_replication_info.erb +65 -0
  368. data/lib/karafka/web/pro/ui/views/topics/replications/_resilience_success.erb +24 -0
  369. data/lib/karafka/web/pro/ui/views/topics/replications/_warning_low_durability.erb +67 -0
  370. data/lib/karafka/web/pro/ui/views/topics/replications/_warning_no_redundancy.erb +66 -0
  371. data/lib/karafka/web/pro/ui/views/topics/replications/_warning_zero_fault_tolerance.erb +67 -0
  372. data/lib/karafka/web/pro/ui/views/topics/replications/show.erb +15 -2
  373. data/lib/karafka/web/pro/ui/views/topics/topics/_breadcrumbs.erb +13 -2
  374. data/lib/karafka/web/pro/ui/views/topics/topics/_create_button.erb +13 -2
  375. data/lib/karafka/web/pro/ui/views/topics/topics/_create_hints.erb +13 -2
  376. data/lib/karafka/web/pro/ui/views/topics/topics/_delete_form.erb +13 -2
  377. data/lib/karafka/web/pro/ui/views/topics/topics/_delete_hints.erb +13 -2
  378. data/lib/karafka/web/pro/ui/views/topics/topics/_delete_warning.erb +13 -2
  379. data/lib/karafka/web/pro/ui/views/topics/topics/_new_form.erb +25 -11
  380. data/lib/karafka/web/pro/ui/views/topics/topics/_tabs.erb +13 -2
  381. data/lib/karafka/web/pro/ui/views/topics/topics/_topic.erb +13 -2
  382. data/lib/karafka/web/pro/ui/views/topics/topics/edit.erb +13 -2
  383. data/lib/karafka/web/pro/ui/views/topics/topics/index.erb +13 -2
  384. data/lib/karafka/web/pro/ui/views/topics/topics/new.erb +13 -2
  385. data/lib/karafka/web/processing/consumer.rb +1 -1
  386. data/lib/karafka/web/processing/consumers/aggregators/metrics.rb +11 -11
  387. data/lib/karafka/web/processing/consumers/aggregators/state.rb +4 -3
  388. data/lib/karafka/web/processing/consumers/reports_migrator.rb +2 -2
  389. data/lib/karafka/web/processing/consumers/schema_manager.rb +1 -1
  390. data/lib/karafka/web/processing/publisher.rb +2 -2
  391. data/lib/karafka/web/producer.rb +61 -0
  392. data/lib/karafka/web/tracking/consumers/contracts/report.rb +2 -2
  393. data/lib/karafka/web/tracking/consumers/contracts/subscription_group.rb +1 -0
  394. data/lib/karafka/web/tracking/consumers/listeners/booting.rb +1 -1
  395. data/lib/karafka/web/tracking/consumers/listeners/connections.rb +7 -2
  396. data/lib/karafka/web/tracking/consumers/listeners/errors.rb +10 -10
  397. data/lib/karafka/web/tracking/consumers/listeners/pausing.rb +1 -1
  398. data/lib/karafka/web/tracking/consumers/listeners/processing.rb +25 -25
  399. data/lib/karafka/web/tracking/consumers/listeners/statistics.rb +35 -35
  400. data/lib/karafka/web/tracking/consumers/reporter.rb +2 -2
  401. data/lib/karafka/web/tracking/consumers/sampler/enrichers/consumer_groups.rb +1 -0
  402. data/lib/karafka/web/tracking/consumers/sampler/metrics/base.rb +2 -1
  403. data/lib/karafka/web/tracking/consumers/sampler/metrics/container.rb +15 -15
  404. data/lib/karafka/web/tracking/consumers/sampler/metrics/network.rb +6 -6
  405. data/lib/karafka/web/tracking/consumers/sampler/metrics/os.rb +41 -37
  406. data/lib/karafka/web/tracking/consumers/sampler.rb +7 -7
  407. data/lib/karafka/web/tracking/helpers/error_info.rb +10 -10
  408. data/lib/karafka/web/tracking/helpers/sysconf.rb +2 -2
  409. data/lib/karafka/web/tracking/helpers/ttls/array.rb +1 -1
  410. data/lib/karafka/web/tracking/helpers/ttls/hash.rb +1 -1
  411. data/lib/karafka/web/tracking/helpers/ttls/stats.rb +4 -4
  412. data/lib/karafka/web/tracking/producers/listeners/booting.rb +1 -1
  413. data/lib/karafka/web/tracking/producers/listeners/errors.rb +2 -2
  414. data/lib/karafka/web/tracking/producers/reporter.rb +2 -2
  415. data/lib/karafka/web/tracking/producers/sampler.rb +1 -1
  416. data/lib/karafka/web/tracking/ui/errors.rb +4 -4
  417. data/lib/karafka/web/ui/app.rb +2 -2
  418. data/lib/karafka/web/ui/base.rb +30 -30
  419. data/lib/karafka/web/ui/controllers/base_controller.rb +24 -24
  420. data/lib/karafka/web/ui/controllers/cluster_controller.rb +3 -3
  421. data/lib/karafka/web/ui/controllers/requests/params.rb +6 -6
  422. data/lib/karafka/web/ui/helpers/application_helper.rb +59 -59
  423. data/lib/karafka/web/ui/helpers/paths_helper.rb +15 -7
  424. data/lib/karafka/web/ui/helpers/tailwind_helper.rb +6 -6
  425. data/lib/karafka/web/ui/helpers/time_helper.rb +1 -1
  426. data/lib/karafka/web/ui/helpers/topics_helper.rb +4 -4
  427. data/lib/karafka/web/ui/lib/admin.rb +2 -2
  428. data/lib/karafka/web/ui/lib/paginations/base.rb +7 -7
  429. data/lib/karafka/web/ui/lib/paginations/offset_based.rb +2 -2
  430. data/lib/karafka/web/ui/lib/paginations/page_based.rb +1 -1
  431. data/lib/karafka/web/ui/lib/paginations/paginators/arrays.rb +3 -3
  432. data/lib/karafka/web/ui/lib/paginations/watermark_offsets_based.rb +1 -1
  433. data/lib/karafka/web/ui/lib/sorter.rb +2 -2
  434. data/lib/karafka/web/ui/models/counters.rb +1 -1
  435. data/lib/karafka/web/ui/models/health.rb +1 -0
  436. data/lib/karafka/web/ui/models/jobs.rb +2 -2
  437. data/lib/karafka/web/ui/models/message.rb +9 -9
  438. data/lib/karafka/web/ui/models/metrics/charts/aggregated.rb +3 -3
  439. data/lib/karafka/web/ui/models/metrics/charts/topics.rb +3 -3
  440. data/lib/karafka/web/ui/models/metrics/topics.rb +8 -8
  441. data/lib/karafka/web/ui/models/processes.rb +3 -3
  442. data/lib/karafka/web/ui/models/recurring_tasks/schedule.rb +2 -2
  443. data/lib/karafka/web/ui/models/status/checks/base.rb +127 -0
  444. data/lib/karafka/web/ui/models/status/checks/commands_topic_presence.rb +52 -0
  445. data/lib/karafka/web/ui/models/status/checks/connection.rb +68 -0
  446. data/lib/karafka/web/ui/models/status/checks/consumers_reports.rb +34 -0
  447. data/lib/karafka/web/ui/models/status/checks/consumers_reports_schema_state.rb +32 -0
  448. data/lib/karafka/web/ui/models/status/checks/consumers_schemas.rb +44 -0
  449. data/lib/karafka/web/ui/models/status/checks/enabled.rb +39 -0
  450. data/lib/karafka/web/ui/models/status/checks/initial_consumers_metrics.rb +48 -0
  451. data/lib/karafka/web/ui/models/status/checks/initial_consumers_state.rb +48 -0
  452. data/lib/karafka/web/ui/models/status/checks/live_reporting.rb +31 -0
  453. data/lib/karafka/web/ui/models/status/checks/materializing_lag.rb +49 -0
  454. data/lib/karafka/web/ui/models/status/checks/partitions.rb +45 -0
  455. data/lib/karafka/web/ui/models/status/checks/pro_subscription.rb +29 -0
  456. data/lib/karafka/web/ui/models/status/checks/replication.rb +51 -0
  457. data/lib/karafka/web/ui/models/status/checks/routing_topics_presence.rb +53 -0
  458. data/lib/karafka/web/ui/models/status/checks/state_calculation.rb +39 -0
  459. data/lib/karafka/web/ui/models/status/checks/topics.rb +44 -0
  460. data/lib/karafka/web/ui/models/status/context.rb +142 -0
  461. data/lib/karafka/web/ui/models/status/step.rb +64 -0
  462. data/lib/karafka/web/ui/models/status.rb +70 -356
  463. data/lib/karafka/web/ui/models/topic.rb +2 -2
  464. data/lib/karafka/web/ui/public/javascripts/application.min.js +1 -1
  465. data/lib/karafka/web/ui/public/javascripts/application.min.js.br +0 -0
  466. data/lib/karafka/web/ui/public/javascripts/application.min.js.gz +0 -0
  467. data/lib/karafka/web/ui/public/javascripts/components/live_poll.js +2 -2
  468. data/lib/karafka/web/ui/public/stylesheets/application.min.css +4660 -2524
  469. data/lib/karafka/web/ui/public/stylesheets/application.min.css.br +0 -0
  470. data/lib/karafka/web/ui/public/stylesheets/application.min.css.gz +0 -0
  471. data/lib/karafka/web/ui/public/stylesheets/libs/tailwind.css +62 -3
  472. data/lib/karafka/web/ui/routes/assets.rb +7 -7
  473. data/lib/karafka/web/ui/routes/cluster.rb +4 -4
  474. data/lib/karafka/web/ui/routes/consumers.rb +2 -2
  475. data/lib/karafka/web/ui/routes/dashboard.rb +1 -1
  476. data/lib/karafka/web/ui/routes/errors.rb +2 -2
  477. data/lib/karafka/web/ui/routes/jobs.rb +4 -4
  478. data/lib/karafka/web/ui/routes/routing.rb +1 -1
  479. data/lib/karafka/web/ui/routes/status.rb +1 -1
  480. data/lib/karafka/web/ui/routes/support.rb +1 -1
  481. data/lib/karafka/web/ui/routes/ux.rb +1 -1
  482. data/lib/karafka/web/ui/views/cluster/_partition.erb +1 -0
  483. data/lib/karafka/web/ui/views/dashboard/_counters.erb +16 -16
  484. data/lib/karafka/web/ui/views/errors/_detail.erb +2 -3
  485. data/lib/karafka/web/ui/views/errors/_error.erb +1 -1
  486. data/lib/karafka/web/ui/views/errors/index.erb +1 -1
  487. data/lib/karafka/web/ui/views/errors/show.erb +1 -1
  488. data/lib/karafka/web/ui/views/jobs/_job.erb +1 -1
  489. data/lib/karafka/web/ui/views/layout.erb +1 -1
  490. data/lib/karafka/web/ui/views/routing/_consumer_group.erb +1 -1
  491. data/lib/karafka/web/ui/views/routing/_topic.erb +1 -1
  492. data/lib/karafka/web/ui/views/shared/_header.erb +5 -5
  493. data/lib/karafka/web/ui/views/shared/_navigation.erb +1 -1
  494. data/lib/karafka/web/ui/views/shared/alerts/_error.erb +2 -2
  495. data/lib/karafka/web/ui/views/shared/alerts/_info.erb +1 -1
  496. data/lib/karafka/web/ui/views/shared/alerts/_primary.erb +1 -1
  497. data/lib/karafka/web/ui/views/shared/alerts/_secondary.erb +1 -1
  498. data/lib/karafka/web/ui/views/shared/alerts/_success.erb +1 -1
  499. data/lib/karafka/web/ui/views/shared/alerts/_warning.erb +2 -2
  500. data/lib/karafka/web/ui/views/shared/exceptions/not_allowed.erb +3 -3
  501. data/lib/karafka/web/ui/views/shared/exceptions/not_found.erb +4 -4
  502. data/lib/karafka/web/ui/views/shared/exceptions/pro_only.erb +4 -4
  503. data/lib/karafka/web/ui/views/shared/exceptions/unhandled_error.erb +4 -4
  504. data/lib/karafka/web/ui/views/status/show.erb +15 -0
  505. data/lib/karafka/web/ui/views/status/warnings/_commands_topic_presence.erb +14 -0
  506. data/lib/karafka/web/ui/views/ux/_code.erb +0 -1
  507. data/lib/karafka/web/ui/views/ux/_data_table.erb +79 -0
  508. data/lib/karafka/web/ui/views/ux/_headers.erb +1 -1
  509. data/lib/karafka/web/ui/views/ux/_pagination.erb +1 -1
  510. data/lib/karafka/web/version.rb +1 -1
  511. data/lib/karafka/web.rb +17 -17
  512. data/package-lock.json +480 -92
  513. data/package.json +3 -1
  514. data/renovate.json +12 -11
  515. data/tailwind.config.js +4 -7
  516. metadata +72 -3
  517. data/lib/karafka/web/pro/ui/views/consumers/commands/_metadata.erb +0 -44
@@ -1,9 +1,20 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <% view_title "Republishing of message with offset #{@message.offset} from partition #{@message.partition}" %>
5
16
 
6
- <% alert_box_info('Message Republishing Operation') do %>
17
+ <% alert_box_info('Message Republishing Operation') do %>
7
18
  <p>
8
19
  You are about to republish a copy of this message to another topic. This operation:
9
20
  </p>
@@ -34,7 +45,7 @@
34
45
  <%== csrf_tag(republish_path) %>
35
46
 
36
47
  <div class="flex items-center w-full mb-4">
37
- <label class="w-1/4 text-gray-700">Source Topic:</label>
48
+ <label class="w-1/4 text-base-content/70">Source Topic:</label>
38
49
  <div class="w-3/4">
39
50
  <code class="bg-base-200 px-2 py-1 rounded-sm">
40
51
  <%= @message.topic %>
@@ -43,7 +54,7 @@
43
54
  </div>
44
55
 
45
56
  <div class="flex items-center w-full mb-4">
46
- <label class="w-1/4 text-gray-700">Source Partition:</label>
57
+ <label class="w-1/4 text-base-content/70">Source Partition:</label>
47
58
  <div class="w-3/4">
48
59
  <code class="bg-base-200 px-2 py-1 rounded-sm">
49
60
  <%= @message.partition %>
@@ -52,14 +63,14 @@
52
63
  </div>
53
64
 
54
65
  <div class="flex items-center w-full mb-6">
55
- <label class="w-1/4 text-gray-700">Source Offset:</label>
66
+ <label class="w-1/4 text-base-content/70">Source Offset:</label>
56
67
  <div class="w-3/4">
57
68
  <code class="bg-base-200 px-2 py-1 rounded-sm"><%= @message.offset %></code>
58
69
  </div>
59
70
  </div>
60
71
 
61
72
  <div class="flex items-center w-full mb-6">
62
- <label class="w-1/4 text-gray-700">Source Raw Key:</label>
73
+ <label class="w-1/4 text-base-content/70">Source Raw Key:</label>
63
74
  <div class="w-3/4">
64
75
  <% if @message.raw_key %>
65
76
  <code class="bg-base-200 px-2 py-1 rounded-sm"><%= @message.raw_key %></code>
@@ -70,7 +81,7 @@
70
81
  </div>
71
82
 
72
83
  <div class="flex items-center w-full mb-6">
73
- <label class="w-1/4 text-gray-700">Target Topic:</label>
84
+ <label class="w-1/4 text-base-content/70">Target Topic:</label>
74
85
  <div class="w-3/4">
75
86
  <select name="target_topic" class="select select-bordered w-full" required>
76
87
  <option value="" data-partitions="1">Select Target Topic</option>
@@ -84,14 +95,14 @@
84
95
  </option>
85
96
  <% end %>
86
97
  </select>
87
- <div class="text-sm text-gray-500 mt-1">
98
+ <div class="text-sm text-base-content/70 mt-1">
88
99
  Topic to which the message will be forwarded
89
100
  </div>
90
101
  </div>
91
102
  </div>
92
103
 
93
104
  <div class="flex items-center w-full mb-8">
94
- <label class="w-1/4 text-gray-700">Target Partition:</label>
105
+ <label class="w-1/4 text-base-content/70">Target Partition:</label>
95
106
  <div class="w-3/4">
96
107
  <input
97
108
  type="number"
@@ -102,24 +113,25 @@
102
113
  max="10000"
103
114
  id="target_partition"
104
115
  value="<%= @target_partition %>"
105
- />
106
- <div class="text-sm text-gray-500 mt-1">
116
+ autocomplete="on"
117
+ >
118
+ <div class="text-sm text-base-content/70 mt-1">
107
119
  Optional. If left empty, partition will be assigned based on key or round-robin strategy
108
120
  </div>
109
121
  </div>
110
122
  </div>
111
123
 
112
124
  <div class="flex items-center w-full">
113
- <label class="w-1/4 text-gray-700">Delivery Options:</label>
125
+ <label class="w-1/4 text-base-content/70">Delivery Options:</label>
114
126
  <div class="w-3/4">
115
127
  <label class="flex items-center gap-4 cursor-pointer">
116
128
  <input type="hidden" name="include_source_headers" value="off">
117
- <input type="checkbox" name="include_source_headers" class="checkbox checkbox-primary" checked />
129
+ <input type="checkbox" name="include_source_headers" class="checkbox checkbox-primary" checked>
118
130
  <div class="space-y-1">
119
131
  <div class="flex items-center gap-2">
120
132
  Include source message headers
121
133
  </div>
122
- <div class="text-sm text-gray-500">
134
+ <div class="text-sm text-base-content/70">
123
135
  Add origin headers with source topic, partition, and offset information for traceability
124
136
  </div>
125
137
  </div>
@@ -127,7 +139,7 @@
127
139
  </div>
128
140
  </div>
129
141
 
130
- <div class="fieldset text-center mt-8">
142
+ <div class="fieldset text-center mt-6">
131
143
  <div class="flex gap-4 justify-end">
132
144
  <a href="<%= explorer_topics_path(@message.topic, @message.partition, @message.offset) %>" class="btn btn-ghost">
133
145
  Cancel
@@ -1,4 +1,15 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <%== partial 'explorer/explorer/breadcrumbs' %>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <%==
5
16
  alert_error('Search criteria are not correct. Please fix them.')
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <div id="search-metadata-details" class="hidden">
5
16
  <div class="data-table-wrapper">
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <%==
5
16
  alert_info('No results found. Try aligning your search criteria.')
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <div id="no-search-criteria">
5
16
  <%==
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <div class="col-span-4">
5
16
  <section class="actions">
@@ -21,7 +32,7 @@
21
32
  </div>
22
33
 
23
34
  <div class="col-span-8">
24
- <section class="items-center text-end text-gray-700 text-end mt-1 mb-2">
35
+ <section class="items-center text-end text-base-content/70 text-end mt-1 mb-2">
25
36
  <% if @search_criteria && @errors.empty? %>
26
37
  Search criteria:
27
38
 
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <%
5
16
  # We do not want to use any additional gems. That's why this is done that way
@@ -26,7 +37,7 @@
26
37
 
27
38
  <h3 class="text-lg mb-3">Edit Search Parameters</h3>
28
39
 
29
- <hr />
40
+ <hr>
30
41
 
31
42
  <form
32
43
  id="messages-search-form"
@@ -45,10 +56,10 @@
45
56
  <% end %>
46
57
 
47
58
  <div class="flex items-center w-full">
48
- <label for="input-field" class="w-1/3 text-gray-700">Matcher:</label>
59
+ <label for="input-field" class="w-1/4 text-base-content/70">Matcher:</label>
49
60
 
50
61
  <select
51
- class="w-2/3 block select select-bordered"
62
+ class="w-3/4 block select select-bordered"
52
63
  id="matcher"
53
64
  name="search[matcher]"
54
65
  required
@@ -62,24 +73,25 @@
62
73
  </div>
63
74
 
64
75
  <div class="flex items-center w-full">
65
- <label for="input-field" class="w-1/3 text-gray-700">Phrase:</label>
76
+ <label for="input-field" class="w-1/4 text-base-content/70">Phrase:</label>
66
77
 
67
78
  <input
68
79
  type="text"
69
- class="w-2/3 block input input-bordered"
80
+ class="w-3/4 block input input-bordered"
70
81
  id="phrase"
71
82
  name="search[phrase]"
72
83
  value="<%= phrase %>"
73
84
  placeholder="Enter phrase to search for"
74
85
  required
86
+ autocomplete="on"
75
87
  >
76
88
  </div>
77
89
 
78
90
  <div class="flex items-center w-full">
79
- <label for="input-field" class="w-1/3 text-gray-700">Partitions:</label>
91
+ <label for="input-field" class="w-1/4 text-base-content/70">Partitions:</label>
80
92
 
81
93
  <select
82
- class="w-2/3 h-auto min-h-fit block bordered input p-4"
94
+ class="w-3/4 h-auto min-h-fit block input input-bordered p-4"
83
95
  id="partitions"
84
96
  name="search[partitions][]"
85
97
  multiple
@@ -99,9 +111,9 @@
99
111
  </div>
100
112
 
101
113
  <div class="flex items-center w-full">
102
- <label for="input-field" class="w-1/3 text-gray-700">Offset:</label>
114
+ <label for="input-field" class="w-1/4 text-base-content/70">Offset:</label>
103
115
 
104
- <div class="flex flex-col space-y-2 w-2/3">
116
+ <div class="flex flex-col space-y-2 w-3/4">
105
117
  <label class="flex items-center space-x-2">
106
118
  <input type="radio" class="radio" name="search[offset_type]" id="offset-latest" value="latest" <%= 'checked' if offset_type == 'latest' || offset_type.empty? %>>
107
119
  <span>Latest</span>
@@ -110,19 +122,19 @@
110
122
  <input type="radio" class="radio" name="search[offset_type]" id="offset-value" value="offset" <%= 'checked' if offset_type == 'offset' %>>
111
123
  <span>Offset</span>
112
124
  </label>
113
- <input type="number" value="<%= offset %>" class="input input-bordered mt-2" id="offset-input" name="search[offset]" min="0" disabled>
125
+ <input type="number" value="<%= offset %>" class="input input-bordered mt-2" id="offset-input" name="search[offset]" min="0" disabled autocomplete="on">
114
126
  <label class="flex items-center space-x-2">
115
127
  <input type="radio" class="radio" name="search[offset_type]" id="offset-timestamp" value="timestamp" <%= 'checked' if offset_type == 'timestamp' %>>
116
128
  <span>Timestamp (in ms)</span>
117
129
  </label>
118
- <input type="number" value="<%= timestamp %>" class="input input-bordered mt-2" id="offset-timestamp-input" name="search[timestamp]" min="0" max="<%= ((Time.now.to_f + 60 * 60 * 24 * 31) * 1_000).to_i %>" disabled>
130
+ <input type="number" value="<%= timestamp %>" class="input input-bordered mt-2" id="offset-timestamp-input" name="search[timestamp]" min="0" max="<%= ((Time.now.to_f + 60 * 60 * 24 * 31) * 1_000).to_i %>" disabled autocomplete="on">
119
131
  </div>
120
132
  </div>
121
133
 
122
134
  <div class="flex items-center w-full">
123
- <label for="input-field" class="w-1/3 text-gray-700">Messages:</label>
135
+ <label for="input-field" class="w-1/4 text-base-content/70">Messages:</label>
124
136
 
125
- <select class="w-2/3 block select select-bordered" id="limit" name="search[limit]" required>
137
+ <select class="w-3/4 block select select-bordered" id="limit" name="search[limit]" required>
126
138
  <% @limits.each do |available_limit| %>
127
139
  <option value="<%= available_limit %>" <%= 'selected' if limit == available_limit %>>
128
140
  <%= available_limit %>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <%==
5
16
  alert_warning('Search results may be incomplete due to reaching the search timeout limit.')
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <% view_title @search_criteria ? "Search Results from #{@topic_id}" : @topic_id %>
5
16
 
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <li>
5
16
  <a href="<%= root_path('health') %>">
@@ -1,4 +1,15 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <%== alert_info('No health data is available. It may mean no processes are running.') %>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <tr class="text-muted">
5
16
  <td><%= partition_id %></td>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <tr class="<%= lso_risk_state_bg(details) %> status-row-<%= details.process.status %>">
5
16
  <td>
@@ -28,13 +39,18 @@
28
39
  <a href="<%= consumer_path(details.process.id, 'subscriptions') %>">
29
40
  <%== truncate(details.process.id, strategy: :middle) %>
30
41
  </a>
31
- </td>
32
- <td>
42
+ <% if details.instance_id %>
43
+ <br>
44
+ <small class="tooltip text-xs opacity-70" data-tip="Static Membership ID (group.instance.id)">
45
+ <%= details.instance_id %>
46
+ </small>
47
+ <% end %>
48
+ </td>
49
+ <td class="options">
33
50
  <%== partial(
34
51
  'consumers/consumers/consumer/partition_edit_options',
35
52
  locals: {
36
- process: details.process,
37
- subscription_group_id: details.subscription_group_id,
53
+ consumer_group_id: consumer_group_id,
38
54
  topic_name: topic_name,
39
55
  partition: details
40
56
  }
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <tr class="<%= lso_risk_state_bg(details) %> status-row-<%= details.process.status %>">
5
16
  <td>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <tr class="<%= lso_risk_state_bg(details) %>">
5
16
  <td>
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <tr class="<%= lso_risk_state_bg(details) %> status-row-<%= details.process.status %>">
5
16
  <td>
@@ -1,10 +1,22 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <%#
5
16
  Renders partitions with fallback for missing partition data
6
17
 
7
18
  Required locals:
19
+ - consumer_group_id: ID of the consumer group
8
20
  - topic_details: Hash containing :partitions and :partitions_count
9
21
  - topic_name: Name of the topic
10
22
  - partition_partial: Path to the partition partial to render
@@ -18,6 +30,7 @@
18
30
  partial(
19
31
  partition_partial,
20
32
  locals: {
33
+ consumer_group_id: consumer_group_id,
21
34
  topic_name: topic_name,
22
35
  partition_id: partition_id,
23
36
  details: details
@@ -1,5 +1,16 @@
1
- <%# This code is part of Karafka Pro, a commercial component not licensed under LGPL. %>
2
- <%# See LICENSE for details. %>
1
+ <%# Karafka Pro - Source Available Commercial Software %>
2
+ <%# Copyright (c) 2017-present Maciej Mensfeld. All rights reserved. %>
3
+ <%# This software is NOT open source. It is source-available commercial software %>
4
+ <%# requiring a paid license for use. It is NOT covered by LGPL. %>
5
+ <%# PROHIBITED: Use without a valid commercial license %>
6
+ <%# PROHIBITED: Redistribution, modification, or derivative works without authorization %>
7
+ <%# PROHIBITED: Use as training data for AI/ML models or inclusion in datasets %>
8
+ <%# PROHIBITED: Scraping, crawling, or automated collection for any purpose %>
9
+ <%# PERMITTED: Reading, referencing, and linking for personal or commercial use %>
10
+ <%# PERMITTED: Runtime retrieval by AI assistants, coding agents, and RAG systems %>
11
+ <%# PERMITTED: for the purpose of providing contextual help to Karafka users %>
12
+ <%# License: https://karafka.io/docs/Pro-License-Comm/ %>
13
+ <%# Contact: contact@karafka.io %>
3
14
 
4
15
  <p class="table_metadata">
5
16
  Last rebalance: