diff --git a/app/javascript/controllers/tiptap/nodes/donation_goal_node.js b/app/javascript/controllers/tiptap/nodes/donation_goal_node.js index 96913fe23f..1b7ba45625 100644 --- a/app/javascript/controllers/tiptap/nodes/donation_goal_node.js +++ b/app/javascript/controllers/tiptap/nodes/donation_goal_node.js @@ -1,7 +1,7 @@ import { Node } from '@tiptap/core' export const DonationGoalNode = Node.create({ - name: 'donationGoal', + name: 'Announcement::Block::DonationGoal', atom: true, group: 'block', priority: 2000, diff --git a/app/javascript/controllers/tiptap/nodes/donation_summary_node.js b/app/javascript/controllers/tiptap/nodes/donation_summary_node.js index 8b0acd079a..dbd64cf60c 100644 --- a/app/javascript/controllers/tiptap/nodes/donation_summary_node.js +++ b/app/javascript/controllers/tiptap/nodes/donation_summary_node.js @@ -1,7 +1,7 @@ import { Node } from '@tiptap/core' export const DonationSummaryNode = Node.create({ - name: 'donationSummary', + name: 'Announcement::Block::DonationSummary', atom: true, group: 'block', priority: 2000, diff --git a/app/javascript/controllers/tiptap/nodes/hcb_code_node.js b/app/javascript/controllers/tiptap/nodes/hcb_code_node.js index b002472d0c..efd001c5f2 100644 --- a/app/javascript/controllers/tiptap/nodes/hcb_code_node.js +++ b/app/javascript/controllers/tiptap/nodes/hcb_code_node.js @@ -1,7 +1,7 @@ import { Node } from '@tiptap/core' export const HcbCodeNode = Node.create({ - name: 'hcbCode', + name: 'Announcement::Block::HcbCode', atom: true, group: 'block', priority: 2000, diff --git a/app/jobs/one_time_jobs/migrate_block_types.rb b/app/jobs/one_time_jobs/migrate_block_types.rb new file mode 100644 index 0000000000..0611c856bf --- /dev/null +++ b/app/jobs/one_time_jobs/migrate_block_types.rb @@ -0,0 +1,30 @@ +# frozen_string_literal: true + +module OneTimeJobs + class MigrateBlockTypes + def self.perform + Announcement.find_each do |announcement| + new_content = ProsemirrorService::Renderer.map_nodes announcement.content do |node| + new_type = case node["type"] + when "donationGoal" + "Announcement::Block::DonationGoal" + when "donationSummary" + "Announcement::Block::DonationSummary" + when "hcbCode" + "Announcement::Block::HcbCode" + else + node["type"] + end + + node["type"] = new_type + end + + announcement.content = new_content + + announcement.save! + end + + end + + end +end diff --git a/app/services/prosemirror_service/donation_goal_node.rb b/app/services/prosemirror_service/donation_goal_node.rb index 8a49e65358..22b828dc40 100644 --- a/app/services/prosemirror_service/donation_goal_node.rb +++ b/app/services/prosemirror_service/donation_goal_node.rb @@ -2,9 +2,7 @@ module ProsemirrorService class DonationGoalNode < ProsemirrorToHtml::Nodes::Node - include ApplicationHelper - - @node_type = "donationGoal" + @node_type = "Announcement::Block::DonationGoal" @tag_name = "div" def tag diff --git a/app/services/prosemirror_service/donation_summary_node.rb b/app/services/prosemirror_service/donation_summary_node.rb index e6b99afa82..5f675e67f5 100644 --- a/app/services/prosemirror_service/donation_summary_node.rb +++ b/app/services/prosemirror_service/donation_summary_node.rb @@ -2,7 +2,7 @@ module ProsemirrorService class DonationSummaryNode < ProsemirrorToHtml::Nodes::Node - @node_type = "donationSummary" + @node_type = "Announcement::Block::DonationSummary" @tag_name = "div" def tag diff --git a/app/services/prosemirror_service/hcb_code_node.rb b/app/services/prosemirror_service/hcb_code_node.rb index 9a73116c59..396225efef 100644 --- a/app/services/prosemirror_service/hcb_code_node.rb +++ b/app/services/prosemirror_service/hcb_code_node.rb @@ -2,7 +2,7 @@ module ProsemirrorService class HcbCodeNode < ProsemirrorToHtml::Nodes::Node - @node_type = "hcbCode" + @node_type = "Announcement::Block::HcbCode" @tag_name = "div" def tag