diff --git a/bedrock/mozorg/blocks/anonym.py b/bedrock/mozorg/blocks/anonym.py index 75a31a2b8a6..062e2733b76 100644 --- a/bedrock/mozorg/blocks/anonym.py +++ b/bedrock/mozorg/blocks/anonym.py @@ -8,6 +8,7 @@ from wagtail import blocks from wagtail.contrib.table_block.blocks import TableBlock from wagtail.images.blocks import ImageChooserBlock +from wagtail.snippets.blocks import SnippetChooserBlock from wagtail_link_block.blocks import LinkBlock from wagtail_thumbnail_choice_block import ThumbnailChoiceBlock @@ -450,12 +451,23 @@ class Meta: label_format = "Logo Card - {heading}" +class PersonCardBlock(blocks.StructBlock): + person = SnippetChooserBlock("mozorg.Person") + link = blocks.ListBlock(LinkWithTextBlock(), min_num=0, max_num=1, default=[]) + + class Meta: + template = "mozorg/cms/anonym/blocks/person-card.html" + label = "Person Card" + label_format = "Person Card - {person}" + + class CardsListBlock(blocks.StructBlock): settings = CardListSettings() cards = blocks.StreamBlock( [ ("icon_card", IconCardBlock()), ("logo_card", LogoCardBlock()), + ("person_card", PersonCardBlock()), ], min_num=1, max_num=4, @@ -507,6 +519,29 @@ class Meta: value_class = SectionBlockSettingsValue +class ListItemBlock(blocks.StructBlock): + heading_text = blocks.CharBlock(label="Heading") + supporting_text = blocks.RichTextBlock(features=BASIC_TEXT_FEATURES) + + class Meta: + label = "List Item" + label_format = "{heading_text}" + template = "mozorg/cms/anonym/blocks/list-item.html" + form_classname = "compact-form struct-block" + + +class TwoColumnBlock(blocks.StructBlock): + heading_text = blocks.CharBlock(label="Heading") + subheading_text = blocks.RichTextBlock(features=BASIC_TEXT_FEATURES) + second_column = blocks.ListBlock(ListItemBlock(), min_num=0) + + class Meta: + label = "Two Column Block" + label_format = "Two Column - {heading_text}" + template = "mozorg/cms/anonym/blocks/two-column.html" + form_classname = "compact-form struct-block" + + class SectionBlock(blocks.StructBlock): is_section_block = True @@ -525,6 +560,7 @@ class SectionBlock(blocks.StructBlock): ("stats_list_block", StatsListBlock()), ("people_list", PeopleListBlock()), ("table", TableBlock()), + ("two_column", TwoColumnBlock()), ], required=False, ) diff --git a/bedrock/mozorg/migrations/0028_alter_anonymcontentsubpage_content_and_more.py b/bedrock/mozorg/migrations/0028_alter_anonymcontentsubpage_content_and_more.py new file mode 100644 index 00000000000..232bbc6950e --- /dev/null +++ b/bedrock/mozorg/migrations/0028_alter_anonymcontentsubpage_content_and_more.py @@ -0,0 +1,2112 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at https://mozilla.org/MPL/2.0/. + +# Generated by Django 5.2.9 on 2025-12-23 14:29 + +import uuid + +import django.db.models.deletion +from django.db import migrations, models + +import wagtail.admin.forms.choosers +import wagtail.fields + + +class Migration(migrations.Migration): + dependencies = [ + ("cms", "0004_bedrocklocale"), + ("mozorg", "0027_anonymindexpage_navigation_and_more"), + ("wagtailcore", "0096_referenceindex_referenceindex_source_object_and_more"), + ] + + operations = [ + migrations.AlterField( + model_name="anonymcontentsubpage", + name="content", + field=wagtail.fields.StreamField( + [("section", 41), ("toggle_items", 50), ("call_to_action", 52)], + blank=True, + block_lookup={ + 0: ( + "wagtail.blocks.CharBlock", + (), + { + "help_text": "Optional: Add an ID to make this section linkable from navigation (e.g., 'overview', 'features')", + "max_length": 100, + "required": False, + }, + ), + 1: ( + "wagtail.blocks.ChoiceBlock", + [], + {"choices": [("", "---"), ("index", "Index"), ("top_glow", "Top Glow")], "inline_form": True, "required": False}, + ), + 2: ("wagtail.blocks.StructBlock", [[("anchor_id", 0), ("theme", 1)]], {}), + 3: ( + "wagtail.blocks.RichTextBlock", + (), + {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], "required": False}, + ), + 4: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use Bold to make parts of this text black.", + }, + ), + 5: ( + "wagtail.blocks.BooleanBlock", + (), + { + "default": False, + "help_text": "The Default width is constrained to the layout grid with a max-width, centered on the page.", + "inline_form": True, + "label": "Make Full Width", + "required": False, + }, + ), + 6: ("wagtail.blocks.StructBlock", [[("make_full_width", 5)]], {}), + 7: ("wagtail.images.blocks.ImageChooserBlock", (), {}), + 8: ("wagtail.blocks.StructBlock", [[("settings", 6), ("image", 7)]], {}), + 9: ("wagtail.blocks.BooleanBlock", (), {"default": False, "help_text": "The default behavior is stacked", "required": False}), + 10: ( + "wagtail.blocks.BooleanBlock", + (), + {"default": False, "help_text": "Add divider lines between cards on desktop", "required": False}, + ), + 11: ("wagtail.blocks.StructBlock", [[("scrollable_on_mobile", 9), ("dividers_between_cards_on_desktop", 10)]], {}), + 12: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("", "---"), + ("IRL", "IRL"), + ("accessibility", "Accessibility"), + ("accounts", "Accounts"), + ("add-search-engine", "Add Search Engine"), + ("ai", "AI"), + ("alert", "Alert"), + ("arrow-down", "Arrow Down"), + ("arrow-left-white", "Arrow Left White"), + ("arrow-left", "Arrow Left"), + ("arrow-right-white", "Arrow Right White"), + ("arrow-right", "Arrow Right"), + ("arrow-up", "Arrow Up"), + ("audio-card", "Audio Card"), + ("audio-mute", "Audio Mute"), + ("audio", "Audio"), + ("auto-play-block", "Auto Play Block"), + ("back", "Back"), + ("bell", "Bell"), + ("beta", "Beta"), + ("blog", "Blog"), + ("bookmark-menu", "Bookmark Menu"), + ("bookmark-narrow", "Bookmark Narrow"), + ("bookmark-remove", "Bookmark Remove"), + ("bookmark", "Bookmark"), + ("brightness", "Brightness"), + ("browser", "Browser"), + ("calendar", "Calendar"), + ("careers", "Careers"), + ("caret-down-white", "Caret Down White"), + ("caret-down", "Caret Down"), + ("caret-up", "Caret Up"), + ("chat", "Chat"), + ("check", "Check"), + ("close-white", "Close White"), + ("close", "Close"), + ("cloud", "Cloud"), + ("command-console", "Command Console"), + ("command-noautohide", "Command Noautohide"), + ("common-voice", "Common Voice"), + ("copy", "Copy"), + ("customize", "Customize"), + ("cut", "Cut"), + ("data-collection", "Data Collection"), + ("data-insights", "Data Insights"), + ("data-pie", "Data Pie"), + ("default-browser", "Default Browser"), + ("delete", "Delete"), + ("desktop", "Desktop"), + ("dev-edition", "Dev Edition"), + ("developer-innovations", "Developer Innovations"), + ("developer", "Developer"), + ("dictionaries", "Dictionaries"), + ("dock-bottom", "Dock Bottom"), + ("dock-left", "Dock Left"), + ("dock-right", "Dock Right"), + ("dock-undock", "Dock Undock"), + ("download-white", "Download White"), + ("download", "Download"), + ("earth", "Earth"), + ("edit-write", "Edit Write"), + ("email", "Email"), + ("enterprise", "Enterprise"), + ("event", "Event"), + ("expand-white", "Expand White"), + ("expand", "Expand"), + ("experiments", "Experiments"), + ("extension-available-update", "Extension Available Update"), + ("extension-recent-updates", "Extension Recent Updates"), + ("extensions-legacy", "Extensions Legacy"), + ("extensions", "Extensions"), + ("external-link-white", "External Link White"), + ("external-link", "External Link"), + ("eye-closed", "Eye Closed"), + ("eye-open", "Eye Open"), + ("facebook-container", "Facebook Container"), + ("features", "Features"), + ("feeback", "Feeback"), + ("file-code", "File Code"), + ("file-image", "File Image"), + ("file-lock", "File Lock"), + ("file-music", "File Music"), + ("file-text", "File Text"), + ("file", "File"), + ("fire-tv", "Fire TV"), + ("firefox-reality", "Firefox Reality"), + ("folder-open", "Folder Open"), + ("folder-plus", "Folder Plus"), + ("folder-save", "Folder Save"), + ("folder", "Folder"), + ("font", "Font"), + ("forget", "Forget"), + ("form fill", "Form Fill"), + ("forward", "Forward"), + ("full-screen-disabled", "Full Screen Disabled"), + ("full-screen-exit", "Full Screen Exit"), + ("full-screen", "Full Screen"), + ("gear", "Gear"), + ("get-involved", "Get Involved"), + ("globe-white", "Globe White"), + ("globe", "Globe"), + ("hashtag-narrow", "Hashtag Narrow"), + ("hashtag", "Hashtag"), + ("headphone", "Headphone"), + ("heart-white", "Heart White"), + ("heart", "Heart"), + ("help", "Help"), + ("highlight", "Highlight"), + ("history", "History"), + ("home", "Home"), + ("hubs", "Hubs"), + ("identity-notification", "Identity Notification"), + ("identity", "Identity"), + ("image", "Image"), + ("import", "Import"), + ("inbox", "Inbox"), + ("info", "Info"), + ("labs", "Labs"), + ("language", "Language"), + ("library", "Library"), + ("link", "Link"), + ("listen", "Listen"), + ("lite", "Lite"), + ("location-disabled", "Location Disabled"), + ("location-macos-disabled", "Location Macos Disabled"), + ("location-macos", "Location Macos"), + ("location-pin", "Location Pin"), + ("location-windows-disabled", "Location Windows Disabled"), + ("location-windows", "Location Windows"), + ("location", "Location"), + ("lock", "Lock"), + ("lockbox", "Lockbox"), + ("login", "Login"), + ("mail", "Mail"), + ("maximize", "Maximize"), + ("megaphone", "Megaphone"), + ("menu-white", "Menu White"), + ("menu", "Menu"), + ("microphone-disabled", "Microphone Disabled"), + ("microphone", "Microphone"), + ("midi", "Midi"), + ("minimize", "Minimize"), + ("minus", "Minus"), + ("mobile-narrow", "Mobile Narrow"), + ("mobile", "Mobile"), + ("monitor", "Monitor"), + ("more-horizontal", "More Horizontal"), + ("more-vertical", "More Vertical"), + ("mountain", "Mountain"), + ("mouse-pointer-disabled", "Mouse Pointer Disabled"), + ("mouse-pointer", "Mouse Pointer"), + ("mozilla", "Mozilla"), + ("new", "New"), + ("nightly", "Nightly"), + ("notes", "Notes"), + ("notifications-disabled", "Notifications Disabled"), + ("notifications", "Notifications"), + ("open-in-new", "Open In New"), + ("open", "Open"), + ("opensource", "Opensource"), + ("overflow", "Overflow"), + ("paperclip-narrow", "Paperclip Narrow"), + ("paperclip", "Paperclip"), + ("paste", "Paste"), + ("pause-white", "Pause White"), + ("pause", "Pause"), + ("performance", "Performance"), + ("photon", "Photon"), + ("pin-remove", "Pin Remove"), + ("pin", "Pin"), + ("play-white", "Play White"), + ("play", "Play"), + ("plugin-disabled", "Plugin Disabled"), + ("plugin", "Plugin"), + ("plus", "Plus"), + ("pocket-list", "Pocket List"), + ("pocket-remove", "Pocket Remove"), + ("pocket", "Pocket"), + ("popular", "Popular"), + ("popup-block", "Popup Block"), + ("preferences", "Preferences"), + ("pricetag", "Pricetag"), + ("pricetag-white", "Pricetag White"), + ("printer", "Printer"), + ("privacy", "Privacy"), + ("private-browsing", "Private Browsing"), + ("protocol", "Protocol"), + ("proton", "Proton"), + ("query", "Query"), + ("quit", "Quit"), + ("quote", "Quote"), + ("read", "Read"), + ("reader-mode", "Reader Mode"), + ("redo", "Redo"), + ("refresh", "Refresh"), + ("release-notes", "Release Notes"), + ("reminders", "Reminders"), + ("report-narrow", "Report Narrow"), + ("report", "Report"), + ("resources", "Resources"), + ("restore-session", "Restore Session"), + ("rhombus-layers", "Rhombus Layers"), + ("rhombus-layers-white", "Rhombus Layers White"), + ("screen-share-disabled", "Screen Share Disabled"), + ("screen-share", "Screen Share"), + ("screenshot", "Screenshot"), + ("search-white", "Search White"), + ("search", "Search"), + ("secure-broken", "Secure Broken"), + ("secure-mixed", "Secure Mixed"), + ("secure", "Secure"), + ("security", "Security"), + ("send-to-device", "Send To Device"), + ("send", "Send"), + ("settings", "Settings"), + ("share-windows", "Share Windows"), + ("share", "Share"), + ("shield", "Shield"), + ("sidebar", "Sidebar"), + ("sign-in", "Sign In"), + ("sign-up", "Sign Up"), + ("sound-off", "Sound Off"), + ("sound-on", "Sound On"), + ("star", "Star"), + ("stop", "Stop"), + ("store-data-disabled", "Store Data Disabled"), + ("store-data", "Store Data"), + ("sub-item", "Sub Item"), + ("subscribe", "Subscribe"), + ("sync", "Sync"), + ("tab-mobile", "Tab Mobile"), + ("tab-new", "Tab New"), + ("tab", "Tab"), + ("tablet", "Tablet"), + ("thumbs-up-narrow", "Thumbs Up Narrow"), + ("thumbs-up", "Thumbs Up"), + ("toggle-off", "Toggle Off"), + ("toggle-on", "Toggle On"), + ("toolbar", "Toolbar"), + ("top-sites", "Top Sites"), + ("tracing-protection-disabled", "Tracing Protection Disabled"), + ("tracking-protection", "Tracking Protection"), + ("trash-narrow", "Trash Narrow"), + ("trash", "Trash"), + ("turbo-mode", "Turbo Mode"), + ("undo", "Undo"), + ("update", "Update"), + ("user", "User"), + ("video-card", "Video Card"), + ("video-recoder-disabled", "Video Recoder Disabled"), + ("video-recorder", "Video Recorder"), + ("warning", "Warning"), + ("watch", "Watch"), + ("web-of-things", "Web Of Things"), + ("web-vr", "Web Vr"), + ("window-new", "Window New"), + ("window", "Window"), + ("zoom-in", "Zoom In"), + ("zoom-out", "Zoom Out"), + ], + "inline_form": True, + "required": False, + }, + ), + 13: ("wagtail.blocks.CharBlock", (), {"label": "Heading"}), + 14: ("wagtail.blocks.RichTextBlock", (), {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"]}), + 15: ("wagtail.blocks.StructBlock", [[("icon", 12), ("heading", 13), ("text", 14)]], {}), + 16: ("wagtail.blocks.CharBlock", (), {"label": "Link Text"}), + 17: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("page", "Page"), + ("file", "File"), + ("custom_url", "Custom URL"), + ("email", "Email"), + ("anchor", "Anchor"), + ("phone", "Phone"), + ], + "classname": "link_choice_type_selector", + "label": "Link to", + "required": False, + }, + ), + 18: ("wagtail.blocks.PageChooserBlock", (), {"form_classname": "page_link", "label": "Page", "required": False}), + 19: ("wagtail.documents.blocks.DocumentChooserBlock", (), {"form_classname": "file_link", "label": "File", "required": False}), + 20: ( + "wagtail.blocks.CharBlock", + (), + { + "form_classname": "custom_url_link url_field", + "label": "Custom URL", + "max_length": 300, + "required": False, + "validators": [wagtail.admin.forms.choosers.URLOrAbsolutePathValidator()], + }, + ), + 21: ("wagtail.blocks.CharBlock", (), {"form_classname": "anchor_link", "label": "#", "max_length": 300, "required": False}), + 22: ("wagtail.blocks.EmailBlock", (), {"required": False}), + 23: ("wagtail.blocks.CharBlock", (), {"form_classname": "phone_link", "label": "Phone", "max_length": 30, "required": False}), + 24: ( + "wagtail.blocks.BooleanBlock", + (), + {"form_classname": "new_window_toggle", "label": "Open in new window", "required": False}, + ), + 25: ( + "wagtail.blocks.StructBlock", + [ + [ + ("link_to", 17), + ("page", 18), + ("file", 19), + ("custom_url", 20), + ("anchor", 21), + ("email", 22), + ("phone", 23), + ("new_window", 24), + ] + ], + {}, + ), + 26: ("wagtail.blocks.StructBlock", [[("label", 16), ("link", 25)]], {}), + 27: ("wagtail.blocks.ListBlock", (26,), {"default": [], "max_num": 1, "min_num": 0}), + 28: ("wagtail.blocks.StructBlock", [[("logo", 7), ("heading", 13), ("text", 14), ("button", 27)]], {}), + 29: ("wagtail.snippets.blocks.SnippetChooserBlock", ("mozorg.Person",), {}), + 30: ("wagtail.blocks.StructBlock", [[("person", 29), ("link", 27)]], {}), + 31: ("wagtail.blocks.StreamBlock", [[("icon_card", 15), ("logo_card", 28), ("person_card", 30)]], {"max_num": 4, "min_num": 1}), + 32: ("wagtail.blocks.StructBlock", [[("settings", 11), ("cards", 31)]], {}), + 33: ("wagtail.images.blocks.ImageChooserBlock", (), {"required": False}), + 34: ( + "wagtail.blocks.StructBlock", + [ + [ + ("image", 33), + ("heading", 13), + ("statistic1_value", 14), + ("statistic1_label", 14), + ("statistic2_value", 14), + ("statistic2_label", 14), + ] + ], + {}, + ), + 35: ("wagtail.blocks.StreamBlock", [[("stat", 34)]], {}), + 36: ("wagtail.blocks.StructBlock", [[("stats", 35)]], {}), + 37: ("wagtail.blocks.ListBlock", (7,), {"default": [], "max_num": 8, "min_num": 1}), + 38: ("wagtail.blocks.StructBlock", [[("people_photos", 37), ("text", 14)]], {}), + 39: ("wagtail.contrib.table_block.blocks.TableBlock", (), {}), + 40: ( + "wagtail.blocks.StreamBlock", + [[("figure_block", 8), ("cards_list", 32), ("stats_list_block", 36), ("people_list", 38), ("table", 39)]], + {"required": False}, + ), + 41: ( + "wagtail.blocks.StructBlock", + [ + [ + ("settings", 2), + ("superheading_text", 3), + ("heading_text", 4), + ("subheading_text", 3), + ("section_content", 40), + ("action", 27), + ] + ], + {}, + ), + 42: ( + "wagtail.blocks.CharBlock", + (), + {"help_text": "Optional: Add an ID to make this section linkable from navigation", "max_length": 100, "required": False}, + ), + 43: ("wagtail.blocks.StructBlock", [[("anchor_id", 42)]], {}), + 44: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("IRL", "IRL"), + ("accessibility", "Accessibility"), + ("accounts", "Accounts"), + ("add-search-engine", "Add Search Engine"), + ("ai", "AI"), + ("alert", "Alert"), + ("arrow-down", "Arrow Down"), + ("arrow-left-white", "Arrow Left White"), + ("arrow-left", "Arrow Left"), + ("arrow-right-white", "Arrow Right White"), + ("arrow-right", "Arrow Right"), + ("arrow-up", "Arrow Up"), + ("audio-card", "Audio Card"), + ("audio-mute", "Audio Mute"), + ("audio", "Audio"), + ("auto-play-block", "Auto Play Block"), + ("back", "Back"), + ("bell", "Bell"), + ("beta", "Beta"), + ("blog", "Blog"), + ("bookmark-menu", "Bookmark Menu"), + ("bookmark-narrow", "Bookmark Narrow"), + ("bookmark-remove", "Bookmark Remove"), + ("bookmark", "Bookmark"), + ("brightness", "Brightness"), + ("browser", "Browser"), + ("calendar", "Calendar"), + ("careers", "Careers"), + ("caret-down-white", "Caret Down White"), + ("caret-down", "Caret Down"), + ("caret-up", "Caret Up"), + ("chat", "Chat"), + ("check", "Check"), + ("close-white", "Close White"), + ("close", "Close"), + ("cloud", "Cloud"), + ("command-console", "Command Console"), + ("command-noautohide", "Command Noautohide"), + ("common-voice", "Common Voice"), + ("copy", "Copy"), + ("customize", "Customize"), + ("cut", "Cut"), + ("data-collection", "Data Collection"), + ("data-insights", "Data Insights"), + ("data-pie", "Data Pie"), + ("default-browser", "Default Browser"), + ("delete", "Delete"), + ("desktop", "Desktop"), + ("dev-edition", "Dev Edition"), + ("developer-innovations", "Developer Innovations"), + ("developer", "Developer"), + ("dictionaries", "Dictionaries"), + ("dock-bottom", "Dock Bottom"), + ("dock-left", "Dock Left"), + ("dock-right", "Dock Right"), + ("dock-undock", "Dock Undock"), + ("download-white", "Download White"), + ("download", "Download"), + ("earth", "Earth"), + ("edit-write", "Edit Write"), + ("email", "Email"), + ("enterprise", "Enterprise"), + ("event", "Event"), + ("expand-white", "Expand White"), + ("expand", "Expand"), + ("experiments", "Experiments"), + ("extension-available-update", "Extension Available Update"), + ("extension-recent-updates", "Extension Recent Updates"), + ("extensions-legacy", "Extensions Legacy"), + ("extensions", "Extensions"), + ("external-link-white", "External Link White"), + ("external-link", "External Link"), + ("eye-closed", "Eye Closed"), + ("eye-open", "Eye Open"), + ("facebook-container", "Facebook Container"), + ("features", "Features"), + ("feeback", "Feeback"), + ("file-code", "File Code"), + ("file-image", "File Image"), + ("file-lock", "File Lock"), + ("file-music", "File Music"), + ("file-text", "File Text"), + ("file", "File"), + ("fire-tv", "Fire TV"), + ("firefox-reality", "Firefox Reality"), + ("folder-open", "Folder Open"), + ("folder-plus", "Folder Plus"), + ("folder-save", "Folder Save"), + ("folder", "Folder"), + ("font", "Font"), + ("forget", "Forget"), + ("form fill", "Form Fill"), + ("forward", "Forward"), + ("full-screen-disabled", "Full Screen Disabled"), + ("full-screen-exit", "Full Screen Exit"), + ("full-screen", "Full Screen"), + ("gear", "Gear"), + ("get-involved", "Get Involved"), + ("globe-white", "Globe White"), + ("globe", "Globe"), + ("hashtag-narrow", "Hashtag Narrow"), + ("hashtag", "Hashtag"), + ("headphone", "Headphone"), + ("heart-white", "Heart White"), + ("heart", "Heart"), + ("help", "Help"), + ("highlight", "Highlight"), + ("history", "History"), + ("home", "Home"), + ("hubs", "Hubs"), + ("identity-notification", "Identity Notification"), + ("identity", "Identity"), + ("image", "Image"), + ("import", "Import"), + ("inbox", "Inbox"), + ("info", "Info"), + ("labs", "Labs"), + ("language", "Language"), + ("library", "Library"), + ("link", "Link"), + ("listen", "Listen"), + ("lite", "Lite"), + ("location-disabled", "Location Disabled"), + ("location-macos-disabled", "Location Macos Disabled"), + ("location-macos", "Location Macos"), + ("location-pin", "Location Pin"), + ("location-windows-disabled", "Location Windows Disabled"), + ("location-windows", "Location Windows"), + ("location", "Location"), + ("lock", "Lock"), + ("lockbox", "Lockbox"), + ("login", "Login"), + ("mail", "Mail"), + ("maximize", "Maximize"), + ("megaphone", "Megaphone"), + ("menu-white", "Menu White"), + ("menu", "Menu"), + ("microphone-disabled", "Microphone Disabled"), + ("microphone", "Microphone"), + ("midi", "Midi"), + ("minimize", "Minimize"), + ("minus", "Minus"), + ("mobile-narrow", "Mobile Narrow"), + ("mobile", "Mobile"), + ("monitor", "Monitor"), + ("more-horizontal", "More Horizontal"), + ("more-vertical", "More Vertical"), + ("mountain", "Mountain"), + ("mouse-pointer-disabled", "Mouse Pointer Disabled"), + ("mouse-pointer", "Mouse Pointer"), + ("mozilla", "Mozilla"), + ("new", "New"), + ("nightly", "Nightly"), + ("notes", "Notes"), + ("notifications-disabled", "Notifications Disabled"), + ("notifications", "Notifications"), + ("open-in-new", "Open In New"), + ("open", "Open"), + ("opensource", "Opensource"), + ("overflow", "Overflow"), + ("paperclip-narrow", "Paperclip Narrow"), + ("paperclip", "Paperclip"), + ("paste", "Paste"), + ("pause-white", "Pause White"), + ("pause", "Pause"), + ("performance", "Performance"), + ("photon", "Photon"), + ("pin-remove", "Pin Remove"), + ("pin", "Pin"), + ("play-white", "Play White"), + ("play", "Play"), + ("plugin-disabled", "Plugin Disabled"), + ("plugin", "Plugin"), + ("plus", "Plus"), + ("pocket-list", "Pocket List"), + ("pocket-remove", "Pocket Remove"), + ("pocket", "Pocket"), + ("popular", "Popular"), + ("popup-block", "Popup Block"), + ("preferences", "Preferences"), + ("pricetag", "Pricetag"), + ("pricetag-white", "Pricetag White"), + ("printer", "Printer"), + ("privacy", "Privacy"), + ("private-browsing", "Private Browsing"), + ("protocol", "Protocol"), + ("proton", "Proton"), + ("query", "Query"), + ("quit", "Quit"), + ("quote", "Quote"), + ("read", "Read"), + ("reader-mode", "Reader Mode"), + ("redo", "Redo"), + ("refresh", "Refresh"), + ("release-notes", "Release Notes"), + ("reminders", "Reminders"), + ("report-narrow", "Report Narrow"), + ("report", "Report"), + ("resources", "Resources"), + ("restore-session", "Restore Session"), + ("rhombus-layers", "Rhombus Layers"), + ("rhombus-layers-white", "Rhombus Layers White"), + ("screen-share-disabled", "Screen Share Disabled"), + ("screen-share", "Screen Share"), + ("screenshot", "Screenshot"), + ("search-white", "Search White"), + ("search", "Search"), + ("secure-broken", "Secure Broken"), + ("secure-mixed", "Secure Mixed"), + ("secure", "Secure"), + ("security", "Security"), + ("send-to-device", "Send To Device"), + ("send", "Send"), + ("settings", "Settings"), + ("share-windows", "Share Windows"), + ("share", "Share"), + ("shield", "Shield"), + ("sidebar", "Sidebar"), + ("sign-in", "Sign In"), + ("sign-up", "Sign Up"), + ("sound-off", "Sound Off"), + ("sound-on", "Sound On"), + ("star", "Star"), + ("stop", "Stop"), + ("store-data-disabled", "Store Data Disabled"), + ("store-data", "Store Data"), + ("sub-item", "Sub Item"), + ("subscribe", "Subscribe"), + ("sync", "Sync"), + ("tab-mobile", "Tab Mobile"), + ("tab-new", "Tab New"), + ("tab", "Tab"), + ("tablet", "Tablet"), + ("thumbs-up-narrow", "Thumbs Up Narrow"), + ("thumbs-up", "Thumbs Up"), + ("toggle-off", "Toggle Off"), + ("toggle-on", "Toggle On"), + ("toolbar", "Toolbar"), + ("top-sites", "Top Sites"), + ("tracing-protection-disabled", "Tracing Protection Disabled"), + ("tracking-protection", "Tracking Protection"), + ("trash-narrow", "Trash Narrow"), + ("trash", "Trash"), + ("turbo-mode", "Turbo Mode"), + ("undo", "Undo"), + ("update", "Update"), + ("user", "User"), + ("video-card", "Video Card"), + ("video-recoder-disabled", "Video Recoder Disabled"), + ("video-recorder", "Video Recorder"), + ("warning", "Warning"), + ("watch", "Watch"), + ("web-of-things", "Web Of Things"), + ("web-vr", "Web Vr"), + ("window-new", "Window New"), + ("window", "Window"), + ("zoom-in", "Zoom In"), + ("zoom-out", "Zoom Out"), + ], + "inline_form": True, + }, + ), + 45: ("wagtail.blocks.CharBlock", (), {}), + 46: ("wagtail.blocks.StructBlock", [[("first_section", 41), ("second_section", 41)]], {}), + 47: ("wagtail.blocks.StreamBlock", [[("two_column_block", 46)]], {"required": True}), + 48: ("wagtail.blocks.StructBlock", [[("icon", 44), ("toggle_text", 45), ("toggle_content", 47)]], {}), + 49: ("wagtail.blocks.StreamBlock", [[("toggle_items", 48)]], {"required": True}), + 50: ("wagtail.blocks.StructBlock", [[("settings", 43), ("toggle_items", 49)]], {}), + 51: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use bold to make parts of this text black.", + }, + ), + 52: ("wagtail.blocks.StructBlock", [[("settings", 43), ("heading", 51), ("button", 27)]], {}), + }, + null=True, + ), + ), + migrations.AlterField( + model_name="anonymindexpage", + name="content", + field=wagtail.fields.StreamField( + [("section", 41), ("call_to_action", 45)], + blank=True, + block_lookup={ + 0: ( + "wagtail.blocks.CharBlock", + (), + { + "help_text": "Optional: Add an ID to make this section linkable from navigation (e.g., 'overview', 'features')", + "max_length": 100, + "required": False, + }, + ), + 1: ( + "wagtail.blocks.ChoiceBlock", + [], + {"choices": [("", "---"), ("index", "Index"), ("top_glow", "Top Glow")], "inline_form": True, "required": False}, + ), + 2: ("wagtail.blocks.StructBlock", [[("anchor_id", 0), ("theme", 1)]], {}), + 3: ( + "wagtail.blocks.RichTextBlock", + (), + {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], "required": False}, + ), + 4: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use Bold to make parts of this text black.", + }, + ), + 5: ( + "wagtail.blocks.BooleanBlock", + (), + { + "default": False, + "help_text": "The Default width is constrained to the layout grid with a max-width, centered on the page.", + "inline_form": True, + "label": "Make Full Width", + "required": False, + }, + ), + 6: ("wagtail.blocks.StructBlock", [[("make_full_width", 5)]], {}), + 7: ("wagtail.images.blocks.ImageChooserBlock", (), {}), + 8: ("wagtail.blocks.StructBlock", [[("settings", 6), ("image", 7)]], {}), + 9: ("wagtail.blocks.BooleanBlock", (), {"default": False, "help_text": "The default behavior is stacked", "required": False}), + 10: ( + "wagtail.blocks.BooleanBlock", + (), + {"default": False, "help_text": "Add divider lines between cards on desktop", "required": False}, + ), + 11: ("wagtail.blocks.StructBlock", [[("scrollable_on_mobile", 9), ("dividers_between_cards_on_desktop", 10)]], {}), + 12: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("", "---"), + ("IRL", "IRL"), + ("accessibility", "Accessibility"), + ("accounts", "Accounts"), + ("add-search-engine", "Add Search Engine"), + ("ai", "AI"), + ("alert", "Alert"), + ("arrow-down", "Arrow Down"), + ("arrow-left-white", "Arrow Left White"), + ("arrow-left", "Arrow Left"), + ("arrow-right-white", "Arrow Right White"), + ("arrow-right", "Arrow Right"), + ("arrow-up", "Arrow Up"), + ("audio-card", "Audio Card"), + ("audio-mute", "Audio Mute"), + ("audio", "Audio"), + ("auto-play-block", "Auto Play Block"), + ("back", "Back"), + ("bell", "Bell"), + ("beta", "Beta"), + ("blog", "Blog"), + ("bookmark-menu", "Bookmark Menu"), + ("bookmark-narrow", "Bookmark Narrow"), + ("bookmark-remove", "Bookmark Remove"), + ("bookmark", "Bookmark"), + ("brightness", "Brightness"), + ("browser", "Browser"), + ("calendar", "Calendar"), + ("careers", "Careers"), + ("caret-down-white", "Caret Down White"), + ("caret-down", "Caret Down"), + ("caret-up", "Caret Up"), + ("chat", "Chat"), + ("check", "Check"), + ("close-white", "Close White"), + ("close", "Close"), + ("cloud", "Cloud"), + ("command-console", "Command Console"), + ("command-noautohide", "Command Noautohide"), + ("common-voice", "Common Voice"), + ("copy", "Copy"), + ("customize", "Customize"), + ("cut", "Cut"), + ("data-collection", "Data Collection"), + ("data-insights", "Data Insights"), + ("data-pie", "Data Pie"), + ("default-browser", "Default Browser"), + ("delete", "Delete"), + ("desktop", "Desktop"), + ("dev-edition", "Dev Edition"), + ("developer-innovations", "Developer Innovations"), + ("developer", "Developer"), + ("dictionaries", "Dictionaries"), + ("dock-bottom", "Dock Bottom"), + ("dock-left", "Dock Left"), + ("dock-right", "Dock Right"), + ("dock-undock", "Dock Undock"), + ("download-white", "Download White"), + ("download", "Download"), + ("earth", "Earth"), + ("edit-write", "Edit Write"), + ("email", "Email"), + ("enterprise", "Enterprise"), + ("event", "Event"), + ("expand-white", "Expand White"), + ("expand", "Expand"), + ("experiments", "Experiments"), + ("extension-available-update", "Extension Available Update"), + ("extension-recent-updates", "Extension Recent Updates"), + ("extensions-legacy", "Extensions Legacy"), + ("extensions", "Extensions"), + ("external-link-white", "External Link White"), + ("external-link", "External Link"), + ("eye-closed", "Eye Closed"), + ("eye-open", "Eye Open"), + ("facebook-container", "Facebook Container"), + ("features", "Features"), + ("feeback", "Feeback"), + ("file-code", "File Code"), + ("file-image", "File Image"), + ("file-lock", "File Lock"), + ("file-music", "File Music"), + ("file-text", "File Text"), + ("file", "File"), + ("fire-tv", "Fire TV"), + ("firefox-reality", "Firefox Reality"), + ("folder-open", "Folder Open"), + ("folder-plus", "Folder Plus"), + ("folder-save", "Folder Save"), + ("folder", "Folder"), + ("font", "Font"), + ("forget", "Forget"), + ("form fill", "Form Fill"), + ("forward", "Forward"), + ("full-screen-disabled", "Full Screen Disabled"), + ("full-screen-exit", "Full Screen Exit"), + ("full-screen", "Full Screen"), + ("gear", "Gear"), + ("get-involved", "Get Involved"), + ("globe-white", "Globe White"), + ("globe", "Globe"), + ("hashtag-narrow", "Hashtag Narrow"), + ("hashtag", "Hashtag"), + ("headphone", "Headphone"), + ("heart-white", "Heart White"), + ("heart", "Heart"), + ("help", "Help"), + ("highlight", "Highlight"), + ("history", "History"), + ("home", "Home"), + ("hubs", "Hubs"), + ("identity-notification", "Identity Notification"), + ("identity", "Identity"), + ("image", "Image"), + ("import", "Import"), + ("inbox", "Inbox"), + ("info", "Info"), + ("labs", "Labs"), + ("language", "Language"), + ("library", "Library"), + ("link", "Link"), + ("listen", "Listen"), + ("lite", "Lite"), + ("location-disabled", "Location Disabled"), + ("location-macos-disabled", "Location Macos Disabled"), + ("location-macos", "Location Macos"), + ("location-pin", "Location Pin"), + ("location-windows-disabled", "Location Windows Disabled"), + ("location-windows", "Location Windows"), + ("location", "Location"), + ("lock", "Lock"), + ("lockbox", "Lockbox"), + ("login", "Login"), + ("mail", "Mail"), + ("maximize", "Maximize"), + ("megaphone", "Megaphone"), + ("menu-white", "Menu White"), + ("menu", "Menu"), + ("microphone-disabled", "Microphone Disabled"), + ("microphone", "Microphone"), + ("midi", "Midi"), + ("minimize", "Minimize"), + ("minus", "Minus"), + ("mobile-narrow", "Mobile Narrow"), + ("mobile", "Mobile"), + ("monitor", "Monitor"), + ("more-horizontal", "More Horizontal"), + ("more-vertical", "More Vertical"), + ("mountain", "Mountain"), + ("mouse-pointer-disabled", "Mouse Pointer Disabled"), + ("mouse-pointer", "Mouse Pointer"), + ("mozilla", "Mozilla"), + ("new", "New"), + ("nightly", "Nightly"), + ("notes", "Notes"), + ("notifications-disabled", "Notifications Disabled"), + ("notifications", "Notifications"), + ("open-in-new", "Open In New"), + ("open", "Open"), + ("opensource", "Opensource"), + ("overflow", "Overflow"), + ("paperclip-narrow", "Paperclip Narrow"), + ("paperclip", "Paperclip"), + ("paste", "Paste"), + ("pause-white", "Pause White"), + ("pause", "Pause"), + ("performance", "Performance"), + ("photon", "Photon"), + ("pin-remove", "Pin Remove"), + ("pin", "Pin"), + ("play-white", "Play White"), + ("play", "Play"), + ("plugin-disabled", "Plugin Disabled"), + ("plugin", "Plugin"), + ("plus", "Plus"), + ("pocket-list", "Pocket List"), + ("pocket-remove", "Pocket Remove"), + ("pocket", "Pocket"), + ("popular", "Popular"), + ("popup-block", "Popup Block"), + ("preferences", "Preferences"), + ("pricetag", "Pricetag"), + ("pricetag-white", "Pricetag White"), + ("printer", "Printer"), + ("privacy", "Privacy"), + ("private-browsing", "Private Browsing"), + ("protocol", "Protocol"), + ("proton", "Proton"), + ("query", "Query"), + ("quit", "Quit"), + ("quote", "Quote"), + ("read", "Read"), + ("reader-mode", "Reader Mode"), + ("redo", "Redo"), + ("refresh", "Refresh"), + ("release-notes", "Release Notes"), + ("reminders", "Reminders"), + ("report-narrow", "Report Narrow"), + ("report", "Report"), + ("resources", "Resources"), + ("restore-session", "Restore Session"), + ("rhombus-layers", "Rhombus Layers"), + ("rhombus-layers-white", "Rhombus Layers White"), + ("screen-share-disabled", "Screen Share Disabled"), + ("screen-share", "Screen Share"), + ("screenshot", "Screenshot"), + ("search-white", "Search White"), + ("search", "Search"), + ("secure-broken", "Secure Broken"), + ("secure-mixed", "Secure Mixed"), + ("secure", "Secure"), + ("security", "Security"), + ("send-to-device", "Send To Device"), + ("send", "Send"), + ("settings", "Settings"), + ("share-windows", "Share Windows"), + ("share", "Share"), + ("shield", "Shield"), + ("sidebar", "Sidebar"), + ("sign-in", "Sign In"), + ("sign-up", "Sign Up"), + ("sound-off", "Sound Off"), + ("sound-on", "Sound On"), + ("star", "Star"), + ("stop", "Stop"), + ("store-data-disabled", "Store Data Disabled"), + ("store-data", "Store Data"), + ("sub-item", "Sub Item"), + ("subscribe", "Subscribe"), + ("sync", "Sync"), + ("tab-mobile", "Tab Mobile"), + ("tab-new", "Tab New"), + ("tab", "Tab"), + ("tablet", "Tablet"), + ("thumbs-up-narrow", "Thumbs Up Narrow"), + ("thumbs-up", "Thumbs Up"), + ("toggle-off", "Toggle Off"), + ("toggle-on", "Toggle On"), + ("toolbar", "Toolbar"), + ("top-sites", "Top Sites"), + ("tracing-protection-disabled", "Tracing Protection Disabled"), + ("tracking-protection", "Tracking Protection"), + ("trash-narrow", "Trash Narrow"), + ("trash", "Trash"), + ("turbo-mode", "Turbo Mode"), + ("undo", "Undo"), + ("update", "Update"), + ("user", "User"), + ("video-card", "Video Card"), + ("video-recoder-disabled", "Video Recoder Disabled"), + ("video-recorder", "Video Recorder"), + ("warning", "Warning"), + ("watch", "Watch"), + ("web-of-things", "Web Of Things"), + ("web-vr", "Web Vr"), + ("window-new", "Window New"), + ("window", "Window"), + ("zoom-in", "Zoom In"), + ("zoom-out", "Zoom Out"), + ], + "inline_form": True, + "required": False, + }, + ), + 13: ("wagtail.blocks.CharBlock", (), {"label": "Heading"}), + 14: ("wagtail.blocks.RichTextBlock", (), {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"]}), + 15: ("wagtail.blocks.StructBlock", [[("icon", 12), ("heading", 13), ("text", 14)]], {}), + 16: ("wagtail.blocks.CharBlock", (), {"label": "Link Text"}), + 17: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("page", "Page"), + ("file", "File"), + ("custom_url", "Custom URL"), + ("email", "Email"), + ("anchor", "Anchor"), + ("phone", "Phone"), + ], + "classname": "link_choice_type_selector", + "label": "Link to", + "required": False, + }, + ), + 18: ("wagtail.blocks.PageChooserBlock", (), {"form_classname": "page_link", "label": "Page", "required": False}), + 19: ("wagtail.documents.blocks.DocumentChooserBlock", (), {"form_classname": "file_link", "label": "File", "required": False}), + 20: ( + "wagtail.blocks.CharBlock", + (), + { + "form_classname": "custom_url_link url_field", + "label": "Custom URL", + "max_length": 300, + "required": False, + "validators": [wagtail.admin.forms.choosers.URLOrAbsolutePathValidator()], + }, + ), + 21: ("wagtail.blocks.CharBlock", (), {"form_classname": "anchor_link", "label": "#", "max_length": 300, "required": False}), + 22: ("wagtail.blocks.EmailBlock", (), {"required": False}), + 23: ("wagtail.blocks.CharBlock", (), {"form_classname": "phone_link", "label": "Phone", "max_length": 30, "required": False}), + 24: ( + "wagtail.blocks.BooleanBlock", + (), + {"form_classname": "new_window_toggle", "label": "Open in new window", "required": False}, + ), + 25: ( + "wagtail.blocks.StructBlock", + [ + [ + ("link_to", 17), + ("page", 18), + ("file", 19), + ("custom_url", 20), + ("anchor", 21), + ("email", 22), + ("phone", 23), + ("new_window", 24), + ] + ], + {}, + ), + 26: ("wagtail.blocks.StructBlock", [[("label", 16), ("link", 25)]], {}), + 27: ("wagtail.blocks.ListBlock", (26,), {"default": [], "max_num": 1, "min_num": 0}), + 28: ("wagtail.blocks.StructBlock", [[("logo", 7), ("heading", 13), ("text", 14), ("button", 27)]], {}), + 29: ("wagtail.snippets.blocks.SnippetChooserBlock", ("mozorg.Person",), {}), + 30: ("wagtail.blocks.StructBlock", [[("person", 29), ("link", 27)]], {}), + 31: ("wagtail.blocks.StreamBlock", [[("icon_card", 15), ("logo_card", 28), ("person_card", 30)]], {"max_num": 4, "min_num": 1}), + 32: ("wagtail.blocks.StructBlock", [[("settings", 11), ("cards", 31)]], {}), + 33: ("wagtail.images.blocks.ImageChooserBlock", (), {"required": False}), + 34: ( + "wagtail.blocks.StructBlock", + [ + [ + ("image", 33), + ("heading", 13), + ("statistic1_value", 14), + ("statistic1_label", 14), + ("statistic2_value", 14), + ("statistic2_label", 14), + ] + ], + {}, + ), + 35: ("wagtail.blocks.StreamBlock", [[("stat", 34)]], {}), + 36: ("wagtail.blocks.StructBlock", [[("stats", 35)]], {}), + 37: ("wagtail.blocks.ListBlock", (7,), {"default": [], "max_num": 8, "min_num": 1}), + 38: ("wagtail.blocks.StructBlock", [[("people_photos", 37), ("text", 14)]], {}), + 39: ("wagtail.contrib.table_block.blocks.TableBlock", (), {}), + 40: ( + "wagtail.blocks.StreamBlock", + [[("figure_block", 8), ("cards_list", 32), ("stats_list_block", 36), ("people_list", 38), ("table", 39)]], + {"required": False}, + ), + 41: ( + "wagtail.blocks.StructBlock", + [ + [ + ("settings", 2), + ("superheading_text", 3), + ("heading_text", 4), + ("subheading_text", 3), + ("section_content", 40), + ("action", 27), + ] + ], + {}, + ), + 42: ( + "wagtail.blocks.CharBlock", + (), + {"help_text": "Optional: Add an ID to make this section linkable from navigation", "max_length": 100, "required": False}, + ), + 43: ("wagtail.blocks.StructBlock", [[("anchor_id", 42)]], {}), + 44: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use bold to make parts of this text black.", + }, + ), + 45: ("wagtail.blocks.StructBlock", [[("settings", 43), ("heading", 44), ("button", 27)]], {}), + }, + null=True, + ), + ), + migrations.AlterField( + model_name="anonymtopandbottompage", + name="bottom_content", + field=wagtail.fields.StreamField( + [("section", 41), ("call_to_action", 45)], + blank=True, + block_lookup={ + 0: ( + "wagtail.blocks.CharBlock", + (), + { + "help_text": "Optional: Add an ID to make this section linkable from navigation (e.g., 'overview', 'features')", + "max_length": 100, + "required": False, + }, + ), + 1: ( + "wagtail.blocks.ChoiceBlock", + [], + {"choices": [("", "---"), ("index", "Index"), ("top_glow", "Top Glow")], "inline_form": True, "required": False}, + ), + 2: ("wagtail.blocks.StructBlock", [[("anchor_id", 0), ("theme", 1)]], {}), + 3: ( + "wagtail.blocks.RichTextBlock", + (), + {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], "required": False}, + ), + 4: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use Bold to make parts of this text black.", + }, + ), + 5: ( + "wagtail.blocks.BooleanBlock", + (), + { + "default": False, + "help_text": "The Default width is constrained to the layout grid with a max-width, centered on the page.", + "inline_form": True, + "label": "Make Full Width", + "required": False, + }, + ), + 6: ("wagtail.blocks.StructBlock", [[("make_full_width", 5)]], {}), + 7: ("wagtail.images.blocks.ImageChooserBlock", (), {}), + 8: ("wagtail.blocks.StructBlock", [[("settings", 6), ("image", 7)]], {}), + 9: ("wagtail.blocks.BooleanBlock", (), {"default": False, "help_text": "The default behavior is stacked", "required": False}), + 10: ( + "wagtail.blocks.BooleanBlock", + (), + {"default": False, "help_text": "Add divider lines between cards on desktop", "required": False}, + ), + 11: ("wagtail.blocks.StructBlock", [[("scrollable_on_mobile", 9), ("dividers_between_cards_on_desktop", 10)]], {}), + 12: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("", "---"), + ("IRL", "IRL"), + ("accessibility", "Accessibility"), + ("accounts", "Accounts"), + ("add-search-engine", "Add Search Engine"), + ("ai", "AI"), + ("alert", "Alert"), + ("arrow-down", "Arrow Down"), + ("arrow-left-white", "Arrow Left White"), + ("arrow-left", "Arrow Left"), + ("arrow-right-white", "Arrow Right White"), + ("arrow-right", "Arrow Right"), + ("arrow-up", "Arrow Up"), + ("audio-card", "Audio Card"), + ("audio-mute", "Audio Mute"), + ("audio", "Audio"), + ("auto-play-block", "Auto Play Block"), + ("back", "Back"), + ("bell", "Bell"), + ("beta", "Beta"), + ("blog", "Blog"), + ("bookmark-menu", "Bookmark Menu"), + ("bookmark-narrow", "Bookmark Narrow"), + ("bookmark-remove", "Bookmark Remove"), + ("bookmark", "Bookmark"), + ("brightness", "Brightness"), + ("browser", "Browser"), + ("calendar", "Calendar"), + ("careers", "Careers"), + ("caret-down-white", "Caret Down White"), + ("caret-down", "Caret Down"), + ("caret-up", "Caret Up"), + ("chat", "Chat"), + ("check", "Check"), + ("close-white", "Close White"), + ("close", "Close"), + ("cloud", "Cloud"), + ("command-console", "Command Console"), + ("command-noautohide", "Command Noautohide"), + ("common-voice", "Common Voice"), + ("copy", "Copy"), + ("customize", "Customize"), + ("cut", "Cut"), + ("data-collection", "Data Collection"), + ("data-insights", "Data Insights"), + ("data-pie", "Data Pie"), + ("default-browser", "Default Browser"), + ("delete", "Delete"), + ("desktop", "Desktop"), + ("dev-edition", "Dev Edition"), + ("developer-innovations", "Developer Innovations"), + ("developer", "Developer"), + ("dictionaries", "Dictionaries"), + ("dock-bottom", "Dock Bottom"), + ("dock-left", "Dock Left"), + ("dock-right", "Dock Right"), + ("dock-undock", "Dock Undock"), + ("download-white", "Download White"), + ("download", "Download"), + ("earth", "Earth"), + ("edit-write", "Edit Write"), + ("email", "Email"), + ("enterprise", "Enterprise"), + ("event", "Event"), + ("expand-white", "Expand White"), + ("expand", "Expand"), + ("experiments", "Experiments"), + ("extension-available-update", "Extension Available Update"), + ("extension-recent-updates", "Extension Recent Updates"), + ("extensions-legacy", "Extensions Legacy"), + ("extensions", "Extensions"), + ("external-link-white", "External Link White"), + ("external-link", "External Link"), + ("eye-closed", "Eye Closed"), + ("eye-open", "Eye Open"), + ("facebook-container", "Facebook Container"), + ("features", "Features"), + ("feeback", "Feeback"), + ("file-code", "File Code"), + ("file-image", "File Image"), + ("file-lock", "File Lock"), + ("file-music", "File Music"), + ("file-text", "File Text"), + ("file", "File"), + ("fire-tv", "Fire TV"), + ("firefox-reality", "Firefox Reality"), + ("folder-open", "Folder Open"), + ("folder-plus", "Folder Plus"), + ("folder-save", "Folder Save"), + ("folder", "Folder"), + ("font", "Font"), + ("forget", "Forget"), + ("form fill", "Form Fill"), + ("forward", "Forward"), + ("full-screen-disabled", "Full Screen Disabled"), + ("full-screen-exit", "Full Screen Exit"), + ("full-screen", "Full Screen"), + ("gear", "Gear"), + ("get-involved", "Get Involved"), + ("globe-white", "Globe White"), + ("globe", "Globe"), + ("hashtag-narrow", "Hashtag Narrow"), + ("hashtag", "Hashtag"), + ("headphone", "Headphone"), + ("heart-white", "Heart White"), + ("heart", "Heart"), + ("help", "Help"), + ("highlight", "Highlight"), + ("history", "History"), + ("home", "Home"), + ("hubs", "Hubs"), + ("identity-notification", "Identity Notification"), + ("identity", "Identity"), + ("image", "Image"), + ("import", "Import"), + ("inbox", "Inbox"), + ("info", "Info"), + ("labs", "Labs"), + ("language", "Language"), + ("library", "Library"), + ("link", "Link"), + ("listen", "Listen"), + ("lite", "Lite"), + ("location-disabled", "Location Disabled"), + ("location-macos-disabled", "Location Macos Disabled"), + ("location-macos", "Location Macos"), + ("location-pin", "Location Pin"), + ("location-windows-disabled", "Location Windows Disabled"), + ("location-windows", "Location Windows"), + ("location", "Location"), + ("lock", "Lock"), + ("lockbox", "Lockbox"), + ("login", "Login"), + ("mail", "Mail"), + ("maximize", "Maximize"), + ("megaphone", "Megaphone"), + ("menu-white", "Menu White"), + ("menu", "Menu"), + ("microphone-disabled", "Microphone Disabled"), + ("microphone", "Microphone"), + ("midi", "Midi"), + ("minimize", "Minimize"), + ("minus", "Minus"), + ("mobile-narrow", "Mobile Narrow"), + ("mobile", "Mobile"), + ("monitor", "Monitor"), + ("more-horizontal", "More Horizontal"), + ("more-vertical", "More Vertical"), + ("mountain", "Mountain"), + ("mouse-pointer-disabled", "Mouse Pointer Disabled"), + ("mouse-pointer", "Mouse Pointer"), + ("mozilla", "Mozilla"), + ("new", "New"), + ("nightly", "Nightly"), + ("notes", "Notes"), + ("notifications-disabled", "Notifications Disabled"), + ("notifications", "Notifications"), + ("open-in-new", "Open In New"), + ("open", "Open"), + ("opensource", "Opensource"), + ("overflow", "Overflow"), + ("paperclip-narrow", "Paperclip Narrow"), + ("paperclip", "Paperclip"), + ("paste", "Paste"), + ("pause-white", "Pause White"), + ("pause", "Pause"), + ("performance", "Performance"), + ("photon", "Photon"), + ("pin-remove", "Pin Remove"), + ("pin", "Pin"), + ("play-white", "Play White"), + ("play", "Play"), + ("plugin-disabled", "Plugin Disabled"), + ("plugin", "Plugin"), + ("plus", "Plus"), + ("pocket-list", "Pocket List"), + ("pocket-remove", "Pocket Remove"), + ("pocket", "Pocket"), + ("popular", "Popular"), + ("popup-block", "Popup Block"), + ("preferences", "Preferences"), + ("pricetag", "Pricetag"), + ("pricetag-white", "Pricetag White"), + ("printer", "Printer"), + ("privacy", "Privacy"), + ("private-browsing", "Private Browsing"), + ("protocol", "Protocol"), + ("proton", "Proton"), + ("query", "Query"), + ("quit", "Quit"), + ("quote", "Quote"), + ("read", "Read"), + ("reader-mode", "Reader Mode"), + ("redo", "Redo"), + ("refresh", "Refresh"), + ("release-notes", "Release Notes"), + ("reminders", "Reminders"), + ("report-narrow", "Report Narrow"), + ("report", "Report"), + ("resources", "Resources"), + ("restore-session", "Restore Session"), + ("rhombus-layers", "Rhombus Layers"), + ("rhombus-layers-white", "Rhombus Layers White"), + ("screen-share-disabled", "Screen Share Disabled"), + ("screen-share", "Screen Share"), + ("screenshot", "Screenshot"), + ("search-white", "Search White"), + ("search", "Search"), + ("secure-broken", "Secure Broken"), + ("secure-mixed", "Secure Mixed"), + ("secure", "Secure"), + ("security", "Security"), + ("send-to-device", "Send To Device"), + ("send", "Send"), + ("settings", "Settings"), + ("share-windows", "Share Windows"), + ("share", "Share"), + ("shield", "Shield"), + ("sidebar", "Sidebar"), + ("sign-in", "Sign In"), + ("sign-up", "Sign Up"), + ("sound-off", "Sound Off"), + ("sound-on", "Sound On"), + ("star", "Star"), + ("stop", "Stop"), + ("store-data-disabled", "Store Data Disabled"), + ("store-data", "Store Data"), + ("sub-item", "Sub Item"), + ("subscribe", "Subscribe"), + ("sync", "Sync"), + ("tab-mobile", "Tab Mobile"), + ("tab-new", "Tab New"), + ("tab", "Tab"), + ("tablet", "Tablet"), + ("thumbs-up-narrow", "Thumbs Up Narrow"), + ("thumbs-up", "Thumbs Up"), + ("toggle-off", "Toggle Off"), + ("toggle-on", "Toggle On"), + ("toolbar", "Toolbar"), + ("top-sites", "Top Sites"), + ("tracing-protection-disabled", "Tracing Protection Disabled"), + ("tracking-protection", "Tracking Protection"), + ("trash-narrow", "Trash Narrow"), + ("trash", "Trash"), + ("turbo-mode", "Turbo Mode"), + ("undo", "Undo"), + ("update", "Update"), + ("user", "User"), + ("video-card", "Video Card"), + ("video-recoder-disabled", "Video Recoder Disabled"), + ("video-recorder", "Video Recorder"), + ("warning", "Warning"), + ("watch", "Watch"), + ("web-of-things", "Web Of Things"), + ("web-vr", "Web Vr"), + ("window-new", "Window New"), + ("window", "Window"), + ("zoom-in", "Zoom In"), + ("zoom-out", "Zoom Out"), + ], + "inline_form": True, + "required": False, + }, + ), + 13: ("wagtail.blocks.CharBlock", (), {"label": "Heading"}), + 14: ("wagtail.blocks.RichTextBlock", (), {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"]}), + 15: ("wagtail.blocks.StructBlock", [[("icon", 12), ("heading", 13), ("text", 14)]], {}), + 16: ("wagtail.blocks.CharBlock", (), {"label": "Link Text"}), + 17: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("page", "Page"), + ("file", "File"), + ("custom_url", "Custom URL"), + ("email", "Email"), + ("anchor", "Anchor"), + ("phone", "Phone"), + ], + "classname": "link_choice_type_selector", + "label": "Link to", + "required": False, + }, + ), + 18: ("wagtail.blocks.PageChooserBlock", (), {"form_classname": "page_link", "label": "Page", "required": False}), + 19: ("wagtail.documents.blocks.DocumentChooserBlock", (), {"form_classname": "file_link", "label": "File", "required": False}), + 20: ( + "wagtail.blocks.CharBlock", + (), + { + "form_classname": "custom_url_link url_field", + "label": "Custom URL", + "max_length": 300, + "required": False, + "validators": [wagtail.admin.forms.choosers.URLOrAbsolutePathValidator()], + }, + ), + 21: ("wagtail.blocks.CharBlock", (), {"form_classname": "anchor_link", "label": "#", "max_length": 300, "required": False}), + 22: ("wagtail.blocks.EmailBlock", (), {"required": False}), + 23: ("wagtail.blocks.CharBlock", (), {"form_classname": "phone_link", "label": "Phone", "max_length": 30, "required": False}), + 24: ( + "wagtail.blocks.BooleanBlock", + (), + {"form_classname": "new_window_toggle", "label": "Open in new window", "required": False}, + ), + 25: ( + "wagtail.blocks.StructBlock", + [ + [ + ("link_to", 17), + ("page", 18), + ("file", 19), + ("custom_url", 20), + ("anchor", 21), + ("email", 22), + ("phone", 23), + ("new_window", 24), + ] + ], + {}, + ), + 26: ("wagtail.blocks.StructBlock", [[("label", 16), ("link", 25)]], {}), + 27: ("wagtail.blocks.ListBlock", (26,), {"default": [], "max_num": 1, "min_num": 0}), + 28: ("wagtail.blocks.StructBlock", [[("logo", 7), ("heading", 13), ("text", 14), ("button", 27)]], {}), + 29: ("wagtail.snippets.blocks.SnippetChooserBlock", ("mozorg.Person",), {}), + 30: ("wagtail.blocks.StructBlock", [[("person", 29), ("link", 27)]], {}), + 31: ("wagtail.blocks.StreamBlock", [[("icon_card", 15), ("logo_card", 28), ("person_card", 30)]], {"max_num": 4, "min_num": 1}), + 32: ("wagtail.blocks.StructBlock", [[("settings", 11), ("cards", 31)]], {}), + 33: ("wagtail.images.blocks.ImageChooserBlock", (), {"required": False}), + 34: ( + "wagtail.blocks.StructBlock", + [ + [ + ("image", 33), + ("heading", 13), + ("statistic1_value", 14), + ("statistic1_label", 14), + ("statistic2_value", 14), + ("statistic2_label", 14), + ] + ], + {}, + ), + 35: ("wagtail.blocks.StreamBlock", [[("stat", 34)]], {}), + 36: ("wagtail.blocks.StructBlock", [[("stats", 35)]], {}), + 37: ("wagtail.blocks.ListBlock", (7,), {"default": [], "max_num": 8, "min_num": 1}), + 38: ("wagtail.blocks.StructBlock", [[("people_photos", 37), ("text", 14)]], {}), + 39: ("wagtail.contrib.table_block.blocks.TableBlock", (), {}), + 40: ( + "wagtail.blocks.StreamBlock", + [[("figure_block", 8), ("cards_list", 32), ("stats_list_block", 36), ("people_list", 38), ("table", 39)]], + {"required": False}, + ), + 41: ( + "wagtail.blocks.StructBlock", + [ + [ + ("settings", 2), + ("superheading_text", 3), + ("heading_text", 4), + ("subheading_text", 3), + ("section_content", 40), + ("action", 27), + ] + ], + {}, + ), + 42: ( + "wagtail.blocks.CharBlock", + (), + {"help_text": "Optional: Add an ID to make this section linkable from navigation", "max_length": 100, "required": False}, + ), + 43: ("wagtail.blocks.StructBlock", [[("anchor_id", 42)]], {}), + 44: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use bold to make parts of this text black.", + }, + ), + 45: ("wagtail.blocks.StructBlock", [[("settings", 43), ("heading", 44), ("button", 27)]], {}), + }, + null=True, + ), + ), + migrations.AlterField( + model_name="anonymtopandbottompage", + name="top_content", + field=wagtail.fields.StreamField( + [("section", 41), ("call_to_action", 45)], + blank=True, + block_lookup={ + 0: ( + "wagtail.blocks.CharBlock", + (), + { + "help_text": "Optional: Add an ID to make this section linkable from navigation (e.g., 'overview', 'features')", + "max_length": 100, + "required": False, + }, + ), + 1: ( + "wagtail.blocks.ChoiceBlock", + [], + {"choices": [("", "---"), ("index", "Index"), ("top_glow", "Top Glow")], "inline_form": True, "required": False}, + ), + 2: ("wagtail.blocks.StructBlock", [[("anchor_id", 0), ("theme", 1)]], {}), + 3: ( + "wagtail.blocks.RichTextBlock", + (), + {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], "required": False}, + ), + 4: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use Bold to make parts of this text black.", + }, + ), + 5: ( + "wagtail.blocks.BooleanBlock", + (), + { + "default": False, + "help_text": "The Default width is constrained to the layout grid with a max-width, centered on the page.", + "inline_form": True, + "label": "Make Full Width", + "required": False, + }, + ), + 6: ("wagtail.blocks.StructBlock", [[("make_full_width", 5)]], {}), + 7: ("wagtail.images.blocks.ImageChooserBlock", (), {}), + 8: ("wagtail.blocks.StructBlock", [[("settings", 6), ("image", 7)]], {}), + 9: ("wagtail.blocks.BooleanBlock", (), {"default": False, "help_text": "The default behavior is stacked", "required": False}), + 10: ( + "wagtail.blocks.BooleanBlock", + (), + {"default": False, "help_text": "Add divider lines between cards on desktop", "required": False}, + ), + 11: ("wagtail.blocks.StructBlock", [[("scrollable_on_mobile", 9), ("dividers_between_cards_on_desktop", 10)]], {}), + 12: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("", "---"), + ("IRL", "IRL"), + ("accessibility", "Accessibility"), + ("accounts", "Accounts"), + ("add-search-engine", "Add Search Engine"), + ("ai", "AI"), + ("alert", "Alert"), + ("arrow-down", "Arrow Down"), + ("arrow-left-white", "Arrow Left White"), + ("arrow-left", "Arrow Left"), + ("arrow-right-white", "Arrow Right White"), + ("arrow-right", "Arrow Right"), + ("arrow-up", "Arrow Up"), + ("audio-card", "Audio Card"), + ("audio-mute", "Audio Mute"), + ("audio", "Audio"), + ("auto-play-block", "Auto Play Block"), + ("back", "Back"), + ("bell", "Bell"), + ("beta", "Beta"), + ("blog", "Blog"), + ("bookmark-menu", "Bookmark Menu"), + ("bookmark-narrow", "Bookmark Narrow"), + ("bookmark-remove", "Bookmark Remove"), + ("bookmark", "Bookmark"), + ("brightness", "Brightness"), + ("browser", "Browser"), + ("calendar", "Calendar"), + ("careers", "Careers"), + ("caret-down-white", "Caret Down White"), + ("caret-down", "Caret Down"), + ("caret-up", "Caret Up"), + ("chat", "Chat"), + ("check", "Check"), + ("close-white", "Close White"), + ("close", "Close"), + ("cloud", "Cloud"), + ("command-console", "Command Console"), + ("command-noautohide", "Command Noautohide"), + ("common-voice", "Common Voice"), + ("copy", "Copy"), + ("customize", "Customize"), + ("cut", "Cut"), + ("data-collection", "Data Collection"), + ("data-insights", "Data Insights"), + ("data-pie", "Data Pie"), + ("default-browser", "Default Browser"), + ("delete", "Delete"), + ("desktop", "Desktop"), + ("dev-edition", "Dev Edition"), + ("developer-innovations", "Developer Innovations"), + ("developer", "Developer"), + ("dictionaries", "Dictionaries"), + ("dock-bottom", "Dock Bottom"), + ("dock-left", "Dock Left"), + ("dock-right", "Dock Right"), + ("dock-undock", "Dock Undock"), + ("download-white", "Download White"), + ("download", "Download"), + ("earth", "Earth"), + ("edit-write", "Edit Write"), + ("email", "Email"), + ("enterprise", "Enterprise"), + ("event", "Event"), + ("expand-white", "Expand White"), + ("expand", "Expand"), + ("experiments", "Experiments"), + ("extension-available-update", "Extension Available Update"), + ("extension-recent-updates", "Extension Recent Updates"), + ("extensions-legacy", "Extensions Legacy"), + ("extensions", "Extensions"), + ("external-link-white", "External Link White"), + ("external-link", "External Link"), + ("eye-closed", "Eye Closed"), + ("eye-open", "Eye Open"), + ("facebook-container", "Facebook Container"), + ("features", "Features"), + ("feeback", "Feeback"), + ("file-code", "File Code"), + ("file-image", "File Image"), + ("file-lock", "File Lock"), + ("file-music", "File Music"), + ("file-text", "File Text"), + ("file", "File"), + ("fire-tv", "Fire TV"), + ("firefox-reality", "Firefox Reality"), + ("folder-open", "Folder Open"), + ("folder-plus", "Folder Plus"), + ("folder-save", "Folder Save"), + ("folder", "Folder"), + ("font", "Font"), + ("forget", "Forget"), + ("form fill", "Form Fill"), + ("forward", "Forward"), + ("full-screen-disabled", "Full Screen Disabled"), + ("full-screen-exit", "Full Screen Exit"), + ("full-screen", "Full Screen"), + ("gear", "Gear"), + ("get-involved", "Get Involved"), + ("globe-white", "Globe White"), + ("globe", "Globe"), + ("hashtag-narrow", "Hashtag Narrow"), + ("hashtag", "Hashtag"), + ("headphone", "Headphone"), + ("heart-white", "Heart White"), + ("heart", "Heart"), + ("help", "Help"), + ("highlight", "Highlight"), + ("history", "History"), + ("home", "Home"), + ("hubs", "Hubs"), + ("identity-notification", "Identity Notification"), + ("identity", "Identity"), + ("image", "Image"), + ("import", "Import"), + ("inbox", "Inbox"), + ("info", "Info"), + ("labs", "Labs"), + ("language", "Language"), + ("library", "Library"), + ("link", "Link"), + ("listen", "Listen"), + ("lite", "Lite"), + ("location-disabled", "Location Disabled"), + ("location-macos-disabled", "Location Macos Disabled"), + ("location-macos", "Location Macos"), + ("location-pin", "Location Pin"), + ("location-windows-disabled", "Location Windows Disabled"), + ("location-windows", "Location Windows"), + ("location", "Location"), + ("lock", "Lock"), + ("lockbox", "Lockbox"), + ("login", "Login"), + ("mail", "Mail"), + ("maximize", "Maximize"), + ("megaphone", "Megaphone"), + ("menu-white", "Menu White"), + ("menu", "Menu"), + ("microphone-disabled", "Microphone Disabled"), + ("microphone", "Microphone"), + ("midi", "Midi"), + ("minimize", "Minimize"), + ("minus", "Minus"), + ("mobile-narrow", "Mobile Narrow"), + ("mobile", "Mobile"), + ("monitor", "Monitor"), + ("more-horizontal", "More Horizontal"), + ("more-vertical", "More Vertical"), + ("mountain", "Mountain"), + ("mouse-pointer-disabled", "Mouse Pointer Disabled"), + ("mouse-pointer", "Mouse Pointer"), + ("mozilla", "Mozilla"), + ("new", "New"), + ("nightly", "Nightly"), + ("notes", "Notes"), + ("notifications-disabled", "Notifications Disabled"), + ("notifications", "Notifications"), + ("open-in-new", "Open In New"), + ("open", "Open"), + ("opensource", "Opensource"), + ("overflow", "Overflow"), + ("paperclip-narrow", "Paperclip Narrow"), + ("paperclip", "Paperclip"), + ("paste", "Paste"), + ("pause-white", "Pause White"), + ("pause", "Pause"), + ("performance", "Performance"), + ("photon", "Photon"), + ("pin-remove", "Pin Remove"), + ("pin", "Pin"), + ("play-white", "Play White"), + ("play", "Play"), + ("plugin-disabled", "Plugin Disabled"), + ("plugin", "Plugin"), + ("plus", "Plus"), + ("pocket-list", "Pocket List"), + ("pocket-remove", "Pocket Remove"), + ("pocket", "Pocket"), + ("popular", "Popular"), + ("popup-block", "Popup Block"), + ("preferences", "Preferences"), + ("pricetag", "Pricetag"), + ("pricetag-white", "Pricetag White"), + ("printer", "Printer"), + ("privacy", "Privacy"), + ("private-browsing", "Private Browsing"), + ("protocol", "Protocol"), + ("proton", "Proton"), + ("query", "Query"), + ("quit", "Quit"), + ("quote", "Quote"), + ("read", "Read"), + ("reader-mode", "Reader Mode"), + ("redo", "Redo"), + ("refresh", "Refresh"), + ("release-notes", "Release Notes"), + ("reminders", "Reminders"), + ("report-narrow", "Report Narrow"), + ("report", "Report"), + ("resources", "Resources"), + ("restore-session", "Restore Session"), + ("rhombus-layers", "Rhombus Layers"), + ("rhombus-layers-white", "Rhombus Layers White"), + ("screen-share-disabled", "Screen Share Disabled"), + ("screen-share", "Screen Share"), + ("screenshot", "Screenshot"), + ("search-white", "Search White"), + ("search", "Search"), + ("secure-broken", "Secure Broken"), + ("secure-mixed", "Secure Mixed"), + ("secure", "Secure"), + ("security", "Security"), + ("send-to-device", "Send To Device"), + ("send", "Send"), + ("settings", "Settings"), + ("share-windows", "Share Windows"), + ("share", "Share"), + ("shield", "Shield"), + ("sidebar", "Sidebar"), + ("sign-in", "Sign In"), + ("sign-up", "Sign Up"), + ("sound-off", "Sound Off"), + ("sound-on", "Sound On"), + ("star", "Star"), + ("stop", "Stop"), + ("store-data-disabled", "Store Data Disabled"), + ("store-data", "Store Data"), + ("sub-item", "Sub Item"), + ("subscribe", "Subscribe"), + ("sync", "Sync"), + ("tab-mobile", "Tab Mobile"), + ("tab-new", "Tab New"), + ("tab", "Tab"), + ("tablet", "Tablet"), + ("thumbs-up-narrow", "Thumbs Up Narrow"), + ("thumbs-up", "Thumbs Up"), + ("toggle-off", "Toggle Off"), + ("toggle-on", "Toggle On"), + ("toolbar", "Toolbar"), + ("top-sites", "Top Sites"), + ("tracing-protection-disabled", "Tracing Protection Disabled"), + ("tracking-protection", "Tracking Protection"), + ("trash-narrow", "Trash Narrow"), + ("trash", "Trash"), + ("turbo-mode", "Turbo Mode"), + ("undo", "Undo"), + ("update", "Update"), + ("user", "User"), + ("video-card", "Video Card"), + ("video-recoder-disabled", "Video Recoder Disabled"), + ("video-recorder", "Video Recorder"), + ("warning", "Warning"), + ("watch", "Watch"), + ("web-of-things", "Web Of Things"), + ("web-vr", "Web Vr"), + ("window-new", "Window New"), + ("window", "Window"), + ("zoom-in", "Zoom In"), + ("zoom-out", "Zoom Out"), + ], + "inline_form": True, + "required": False, + }, + ), + 13: ("wagtail.blocks.CharBlock", (), {"label": "Heading"}), + 14: ("wagtail.blocks.RichTextBlock", (), {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"]}), + 15: ("wagtail.blocks.StructBlock", [[("icon", 12), ("heading", 13), ("text", 14)]], {}), + 16: ("wagtail.blocks.CharBlock", (), {"label": "Link Text"}), + 17: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("page", "Page"), + ("file", "File"), + ("custom_url", "Custom URL"), + ("email", "Email"), + ("anchor", "Anchor"), + ("phone", "Phone"), + ], + "classname": "link_choice_type_selector", + "label": "Link to", + "required": False, + }, + ), + 18: ("wagtail.blocks.PageChooserBlock", (), {"form_classname": "page_link", "label": "Page", "required": False}), + 19: ("wagtail.documents.blocks.DocumentChooserBlock", (), {"form_classname": "file_link", "label": "File", "required": False}), + 20: ( + "wagtail.blocks.CharBlock", + (), + { + "form_classname": "custom_url_link url_field", + "label": "Custom URL", + "max_length": 300, + "required": False, + "validators": [wagtail.admin.forms.choosers.URLOrAbsolutePathValidator()], + }, + ), + 21: ("wagtail.blocks.CharBlock", (), {"form_classname": "anchor_link", "label": "#", "max_length": 300, "required": False}), + 22: ("wagtail.blocks.EmailBlock", (), {"required": False}), + 23: ("wagtail.blocks.CharBlock", (), {"form_classname": "phone_link", "label": "Phone", "max_length": 30, "required": False}), + 24: ( + "wagtail.blocks.BooleanBlock", + (), + {"form_classname": "new_window_toggle", "label": "Open in new window", "required": False}, + ), + 25: ( + "wagtail.blocks.StructBlock", + [ + [ + ("link_to", 17), + ("page", 18), + ("file", 19), + ("custom_url", 20), + ("anchor", 21), + ("email", 22), + ("phone", 23), + ("new_window", 24), + ] + ], + {}, + ), + 26: ("wagtail.blocks.StructBlock", [[("label", 16), ("link", 25)]], {}), + 27: ("wagtail.blocks.ListBlock", (26,), {"default": [], "max_num": 1, "min_num": 0}), + 28: ("wagtail.blocks.StructBlock", [[("logo", 7), ("heading", 13), ("text", 14), ("button", 27)]], {}), + 29: ("wagtail.snippets.blocks.SnippetChooserBlock", ("mozorg.Person",), {}), + 30: ("wagtail.blocks.StructBlock", [[("person", 29), ("link", 27)]], {}), + 31: ("wagtail.blocks.StreamBlock", [[("icon_card", 15), ("logo_card", 28), ("person_card", 30)]], {"max_num": 4, "min_num": 1}), + 32: ("wagtail.blocks.StructBlock", [[("settings", 11), ("cards", 31)]], {}), + 33: ("wagtail.images.blocks.ImageChooserBlock", (), {"required": False}), + 34: ( + "wagtail.blocks.StructBlock", + [ + [ + ("image", 33), + ("heading", 13), + ("statistic1_value", 14), + ("statistic1_label", 14), + ("statistic2_value", 14), + ("statistic2_label", 14), + ] + ], + {}, + ), + 35: ("wagtail.blocks.StreamBlock", [[("stat", 34)]], {}), + 36: ("wagtail.blocks.StructBlock", [[("stats", 35)]], {}), + 37: ("wagtail.blocks.ListBlock", (7,), {"default": [], "max_num": 8, "min_num": 1}), + 38: ("wagtail.blocks.StructBlock", [[("people_photos", 37), ("text", 14)]], {}), + 39: ("wagtail.contrib.table_block.blocks.TableBlock", (), {}), + 40: ( + "wagtail.blocks.StreamBlock", + [[("figure_block", 8), ("cards_list", 32), ("stats_list_block", 36), ("people_list", 38), ("table", 39)]], + {"required": False}, + ), + 41: ( + "wagtail.blocks.StructBlock", + [ + [ + ("settings", 2), + ("superheading_text", 3), + ("heading_text", 4), + ("subheading_text", 3), + ("section_content", 40), + ("action", 27), + ] + ], + {}, + ), + 42: ( + "wagtail.blocks.CharBlock", + (), + {"help_text": "Optional: Add an ID to make this section linkable from navigation", "max_length": 100, "required": False}, + ), + 43: ("wagtail.blocks.StructBlock", [[("anchor_id", 42)]], {}), + 44: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use bold to make parts of this text black.", + }, + ), + 45: ("wagtail.blocks.StructBlock", [[("settings", 43), ("heading", 44), ("button", 27)]], {}), + }, + null=True, + ), + ), + migrations.CreateModel( + name="Person", + fields=[ + ("id", models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name="ID")), + ("translation_key", models.UUIDField(default=uuid.uuid4, editable=False)), + ("name", models.CharField(max_length=255)), + ("position", models.CharField(max_length=255)), + ("description", models.TextField(blank=True)), + ("image", models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to="cms.bedrockimage")), + ( + "locale", + models.ForeignKey( + editable=False, on_delete=django.db.models.deletion.PROTECT, related_name="+", to="wagtailcore.locale", verbose_name="locale" + ), + ), + ], + options={ + "verbose_name": "Person", + "verbose_name_plural": "People", + "abstract": False, + "unique_together": {("translation_key", "locale")}, + }, + ), + ] diff --git a/bedrock/mozorg/migrations/0029_alter_anonymcontentsubpage_content_and_more.py b/bedrock/mozorg/migrations/0029_alter_anonymcontentsubpage_content_and_more.py new file mode 100644 index 00000000000..ee3fd81ab4c --- /dev/null +++ b/bedrock/mozorg/migrations/0029_alter_anonymcontentsubpage_content_and_more.py @@ -0,0 +1,2096 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at https://mozilla.org/MPL/2.0/. + +# Generated by Django 5.2.9 on 2025-12-23 15:46 + +from django.db import migrations + +import wagtail.admin.forms.choosers +import wagtail.fields + + +class Migration(migrations.Migration): + dependencies = [ + ("mozorg", "0028_alter_anonymcontentsubpage_content_and_more"), + ] + + operations = [ + migrations.AlterField( + model_name="anonymcontentsubpage", + name="content", + field=wagtail.fields.StreamField( + [("section", 44), ("toggle_items", 53), ("call_to_action", 55)], + blank=True, + block_lookup={ + 0: ( + "wagtail.blocks.CharBlock", + (), + { + "help_text": "Optional: Add an ID to make this section linkable from navigation (e.g., 'overview', 'features')", + "max_length": 100, + "required": False, + }, + ), + 1: ( + "wagtail.blocks.ChoiceBlock", + [], + {"choices": [("", "---"), ("index", "Index"), ("top_glow", "Top Glow")], "inline_form": True, "required": False}, + ), + 2: ("wagtail.blocks.StructBlock", [[("anchor_id", 0), ("theme", 1)]], {}), + 3: ( + "wagtail.blocks.RichTextBlock", + (), + {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], "required": False}, + ), + 4: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use Bold to make parts of this text black.", + }, + ), + 5: ( + "wagtail.blocks.BooleanBlock", + (), + { + "default": False, + "help_text": "The Default width is constrained to the layout grid with a max-width, centered on the page.", + "inline_form": True, + "label": "Make Full Width", + "required": False, + }, + ), + 6: ("wagtail.blocks.StructBlock", [[("make_full_width", 5)]], {}), + 7: ("wagtail.images.blocks.ImageChooserBlock", (), {}), + 8: ("wagtail.blocks.StructBlock", [[("settings", 6), ("image", 7)]], {}), + 9: ("wagtail.blocks.BooleanBlock", (), {"default": False, "help_text": "The default behavior is stacked", "required": False}), + 10: ( + "wagtail.blocks.BooleanBlock", + (), + {"default": False, "help_text": "Add divider lines between cards on desktop", "required": False}, + ), + 11: ("wagtail.blocks.StructBlock", [[("scrollable_on_mobile", 9), ("dividers_between_cards_on_desktop", 10)]], {}), + 12: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("", "---"), + ("IRL", "IRL"), + ("accessibility", "Accessibility"), + ("accounts", "Accounts"), + ("add-search-engine", "Add Search Engine"), + ("ai", "AI"), + ("alert", "Alert"), + ("arrow-down", "Arrow Down"), + ("arrow-left-white", "Arrow Left White"), + ("arrow-left", "Arrow Left"), + ("arrow-right-white", "Arrow Right White"), + ("arrow-right", "Arrow Right"), + ("arrow-up", "Arrow Up"), + ("audio-card", "Audio Card"), + ("audio-mute", "Audio Mute"), + ("audio", "Audio"), + ("auto-play-block", "Auto Play Block"), + ("back", "Back"), + ("bell", "Bell"), + ("beta", "Beta"), + ("blog", "Blog"), + ("bookmark-menu", "Bookmark Menu"), + ("bookmark-narrow", "Bookmark Narrow"), + ("bookmark-remove", "Bookmark Remove"), + ("bookmark", "Bookmark"), + ("brightness", "Brightness"), + ("browser", "Browser"), + ("calendar", "Calendar"), + ("careers", "Careers"), + ("caret-down-white", "Caret Down White"), + ("caret-down", "Caret Down"), + ("caret-up", "Caret Up"), + ("chat", "Chat"), + ("check", "Check"), + ("close-white", "Close White"), + ("close", "Close"), + ("cloud", "Cloud"), + ("command-console", "Command Console"), + ("command-noautohide", "Command Noautohide"), + ("common-voice", "Common Voice"), + ("copy", "Copy"), + ("customize", "Customize"), + ("cut", "Cut"), + ("data-collection", "Data Collection"), + ("data-insights", "Data Insights"), + ("data-pie", "Data Pie"), + ("default-browser", "Default Browser"), + ("delete", "Delete"), + ("desktop", "Desktop"), + ("dev-edition", "Dev Edition"), + ("developer-innovations", "Developer Innovations"), + ("developer", "Developer"), + ("dictionaries", "Dictionaries"), + ("dock-bottom", "Dock Bottom"), + ("dock-left", "Dock Left"), + ("dock-right", "Dock Right"), + ("dock-undock", "Dock Undock"), + ("download-white", "Download White"), + ("download", "Download"), + ("earth", "Earth"), + ("edit-write", "Edit Write"), + ("email", "Email"), + ("enterprise", "Enterprise"), + ("event", "Event"), + ("expand-white", "Expand White"), + ("expand", "Expand"), + ("experiments", "Experiments"), + ("extension-available-update", "Extension Available Update"), + ("extension-recent-updates", "Extension Recent Updates"), + ("extensions-legacy", "Extensions Legacy"), + ("extensions", "Extensions"), + ("external-link-white", "External Link White"), + ("external-link", "External Link"), + ("eye-closed", "Eye Closed"), + ("eye-open", "Eye Open"), + ("facebook-container", "Facebook Container"), + ("features", "Features"), + ("feeback", "Feeback"), + ("file-code", "File Code"), + ("file-image", "File Image"), + ("file-lock", "File Lock"), + ("file-music", "File Music"), + ("file-text", "File Text"), + ("file", "File"), + ("fire-tv", "Fire TV"), + ("firefox-reality", "Firefox Reality"), + ("folder-open", "Folder Open"), + ("folder-plus", "Folder Plus"), + ("folder-save", "Folder Save"), + ("folder", "Folder"), + ("font", "Font"), + ("forget", "Forget"), + ("form fill", "Form Fill"), + ("forward", "Forward"), + ("full-screen-disabled", "Full Screen Disabled"), + ("full-screen-exit", "Full Screen Exit"), + ("full-screen", "Full Screen"), + ("gear", "Gear"), + ("get-involved", "Get Involved"), + ("globe-white", "Globe White"), + ("globe", "Globe"), + ("hashtag-narrow", "Hashtag Narrow"), + ("hashtag", "Hashtag"), + ("headphone", "Headphone"), + ("heart-white", "Heart White"), + ("heart", "Heart"), + ("help", "Help"), + ("highlight", "Highlight"), + ("history", "History"), + ("home", "Home"), + ("hubs", "Hubs"), + ("identity-notification", "Identity Notification"), + ("identity", "Identity"), + ("image", "Image"), + ("import", "Import"), + ("inbox", "Inbox"), + ("info", "Info"), + ("labs", "Labs"), + ("language", "Language"), + ("library", "Library"), + ("link", "Link"), + ("listen", "Listen"), + ("lite", "Lite"), + ("location-disabled", "Location Disabled"), + ("location-macos-disabled", "Location Macos Disabled"), + ("location-macos", "Location Macos"), + ("location-pin", "Location Pin"), + ("location-windows-disabled", "Location Windows Disabled"), + ("location-windows", "Location Windows"), + ("location", "Location"), + ("lock", "Lock"), + ("lockbox", "Lockbox"), + ("login", "Login"), + ("mail", "Mail"), + ("maximize", "Maximize"), + ("megaphone", "Megaphone"), + ("menu-white", "Menu White"), + ("menu", "Menu"), + ("microphone-disabled", "Microphone Disabled"), + ("microphone", "Microphone"), + ("midi", "Midi"), + ("minimize", "Minimize"), + ("minus", "Minus"), + ("mobile-narrow", "Mobile Narrow"), + ("mobile", "Mobile"), + ("monitor", "Monitor"), + ("more-horizontal", "More Horizontal"), + ("more-vertical", "More Vertical"), + ("mountain", "Mountain"), + ("mouse-pointer-disabled", "Mouse Pointer Disabled"), + ("mouse-pointer", "Mouse Pointer"), + ("mozilla", "Mozilla"), + ("new", "New"), + ("nightly", "Nightly"), + ("notes", "Notes"), + ("notifications-disabled", "Notifications Disabled"), + ("notifications", "Notifications"), + ("open-in-new", "Open In New"), + ("open", "Open"), + ("opensource", "Opensource"), + ("overflow", "Overflow"), + ("paperclip-narrow", "Paperclip Narrow"), + ("paperclip", "Paperclip"), + ("paste", "Paste"), + ("pause-white", "Pause White"), + ("pause", "Pause"), + ("performance", "Performance"), + ("photon", "Photon"), + ("pin-remove", "Pin Remove"), + ("pin", "Pin"), + ("play-white", "Play White"), + ("play", "Play"), + ("plugin-disabled", "Plugin Disabled"), + ("plugin", "Plugin"), + ("plus", "Plus"), + ("pocket-list", "Pocket List"), + ("pocket-remove", "Pocket Remove"), + ("pocket", "Pocket"), + ("popular", "Popular"), + ("popup-block", "Popup Block"), + ("preferences", "Preferences"), + ("pricetag", "Pricetag"), + ("pricetag-white", "Pricetag White"), + ("printer", "Printer"), + ("privacy", "Privacy"), + ("private-browsing", "Private Browsing"), + ("protocol", "Protocol"), + ("proton", "Proton"), + ("query", "Query"), + ("quit", "Quit"), + ("quote", "Quote"), + ("read", "Read"), + ("reader-mode", "Reader Mode"), + ("redo", "Redo"), + ("refresh", "Refresh"), + ("release-notes", "Release Notes"), + ("reminders", "Reminders"), + ("report-narrow", "Report Narrow"), + ("report", "Report"), + ("resources", "Resources"), + ("restore-session", "Restore Session"), + ("rhombus-layers", "Rhombus Layers"), + ("rhombus-layers-white", "Rhombus Layers White"), + ("screen-share-disabled", "Screen Share Disabled"), + ("screen-share", "Screen Share"), + ("screenshot", "Screenshot"), + ("search-white", "Search White"), + ("search", "Search"), + ("secure-broken", "Secure Broken"), + ("secure-mixed", "Secure Mixed"), + ("secure", "Secure"), + ("security", "Security"), + ("send-to-device", "Send To Device"), + ("send", "Send"), + ("settings", "Settings"), + ("share-windows", "Share Windows"), + ("share", "Share"), + ("shield", "Shield"), + ("sidebar", "Sidebar"), + ("sign-in", "Sign In"), + ("sign-up", "Sign Up"), + ("sound-off", "Sound Off"), + ("sound-on", "Sound On"), + ("star", "Star"), + ("stop", "Stop"), + ("store-data-disabled", "Store Data Disabled"), + ("store-data", "Store Data"), + ("sub-item", "Sub Item"), + ("subscribe", "Subscribe"), + ("sync", "Sync"), + ("tab-mobile", "Tab Mobile"), + ("tab-new", "Tab New"), + ("tab", "Tab"), + ("tablet", "Tablet"), + ("thumbs-up-narrow", "Thumbs Up Narrow"), + ("thumbs-up", "Thumbs Up"), + ("toggle-off", "Toggle Off"), + ("toggle-on", "Toggle On"), + ("toolbar", "Toolbar"), + ("top-sites", "Top Sites"), + ("tracing-protection-disabled", "Tracing Protection Disabled"), + ("tracking-protection", "Tracking Protection"), + ("trash-narrow", "Trash Narrow"), + ("trash", "Trash"), + ("turbo-mode", "Turbo Mode"), + ("undo", "Undo"), + ("update", "Update"), + ("user", "User"), + ("video-card", "Video Card"), + ("video-recoder-disabled", "Video Recoder Disabled"), + ("video-recorder", "Video Recorder"), + ("warning", "Warning"), + ("watch", "Watch"), + ("web-of-things", "Web Of Things"), + ("web-vr", "Web Vr"), + ("window-new", "Window New"), + ("window", "Window"), + ("zoom-in", "Zoom In"), + ("zoom-out", "Zoom Out"), + ], + "inline_form": True, + "required": False, + }, + ), + 13: ("wagtail.blocks.CharBlock", (), {"label": "Heading"}), + 14: ("wagtail.blocks.RichTextBlock", (), {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"]}), + 15: ("wagtail.blocks.StructBlock", [[("icon", 12), ("heading", 13), ("text", 14)]], {}), + 16: ("wagtail.blocks.CharBlock", (), {"label": "Link Text"}), + 17: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("page", "Page"), + ("file", "File"), + ("custom_url", "Custom URL"), + ("email", "Email"), + ("anchor", "Anchor"), + ("phone", "Phone"), + ], + "classname": "link_choice_type_selector", + "label": "Link to", + "required": False, + }, + ), + 18: ("wagtail.blocks.PageChooserBlock", (), {"form_classname": "page_link", "label": "Page", "required": False}), + 19: ("wagtail.documents.blocks.DocumentChooserBlock", (), {"form_classname": "file_link", "label": "File", "required": False}), + 20: ( + "wagtail.blocks.CharBlock", + (), + { + "form_classname": "custom_url_link url_field", + "label": "Custom URL", + "max_length": 300, + "required": False, + "validators": [wagtail.admin.forms.choosers.URLOrAbsolutePathValidator()], + }, + ), + 21: ("wagtail.blocks.CharBlock", (), {"form_classname": "anchor_link", "label": "#", "max_length": 300, "required": False}), + 22: ("wagtail.blocks.EmailBlock", (), {"required": False}), + 23: ("wagtail.blocks.CharBlock", (), {"form_classname": "phone_link", "label": "Phone", "max_length": 30, "required": False}), + 24: ( + "wagtail.blocks.BooleanBlock", + (), + {"form_classname": "new_window_toggle", "label": "Open in new window", "required": False}, + ), + 25: ( + "wagtail.blocks.StructBlock", + [ + [ + ("link_to", 17), + ("page", 18), + ("file", 19), + ("custom_url", 20), + ("anchor", 21), + ("email", 22), + ("phone", 23), + ("new_window", 24), + ] + ], + {}, + ), + 26: ("wagtail.blocks.StructBlock", [[("label", 16), ("link", 25)]], {}), + 27: ("wagtail.blocks.ListBlock", (26,), {"default": [], "max_num": 1, "min_num": 0}), + 28: ("wagtail.blocks.StructBlock", [[("logo", 7), ("heading", 13), ("text", 14), ("button", 27)]], {}), + 29: ("wagtail.snippets.blocks.SnippetChooserBlock", ("mozorg.Person",), {}), + 30: ("wagtail.blocks.StructBlock", [[("person", 29), ("link", 27)]], {}), + 31: ("wagtail.blocks.StreamBlock", [[("icon_card", 15), ("logo_card", 28), ("person_card", 30)]], {"max_num": 4, "min_num": 1}), + 32: ("wagtail.blocks.StructBlock", [[("settings", 11), ("cards", 31)]], {}), + 33: ("wagtail.images.blocks.ImageChooserBlock", (), {"required": False}), + 34: ( + "wagtail.blocks.StructBlock", + [ + [ + ("image", 33), + ("heading", 13), + ("statistic1_value", 14), + ("statistic1_label", 14), + ("statistic2_value", 14), + ("statistic2_label", 14), + ] + ], + {}, + ), + 35: ("wagtail.blocks.StreamBlock", [[("stat", 34)]], {}), + 36: ("wagtail.blocks.StructBlock", [[("stats", 35)]], {}), + 37: ("wagtail.blocks.ListBlock", (7,), {"default": [], "max_num": 8, "min_num": 1}), + 38: ("wagtail.blocks.StructBlock", [[("people_photos", 37), ("text", 14)]], {}), + 39: ("wagtail.contrib.table_block.blocks.TableBlock", (), {}), + 40: ("wagtail.blocks.StructBlock", [[("heading_text", 13), ("supporting_text", 14)]], {}), + 41: ("wagtail.blocks.ListBlock", (40,), {"min_num": 0}), + 42: ("wagtail.blocks.StructBlock", [[("heading_text", 13), ("subheading_text", 14), ("second_column", 41)]], {}), + 43: ( + "wagtail.blocks.StreamBlock", + [[("figure_block", 8), ("cards_list", 32), ("stats_list_block", 36), ("people_list", 38), ("table", 39), ("two_column", 42)]], + {"required": False}, + ), + 44: ( + "wagtail.blocks.StructBlock", + [ + [ + ("settings", 2), + ("superheading_text", 3), + ("heading_text", 4), + ("subheading_text", 3), + ("section_content", 43), + ("action", 27), + ] + ], + {}, + ), + 45: ( + "wagtail.blocks.CharBlock", + (), + {"help_text": "Optional: Add an ID to make this section linkable from navigation", "max_length": 100, "required": False}, + ), + 46: ("wagtail.blocks.StructBlock", [[("anchor_id", 45)]], {}), + 47: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("IRL", "IRL"), + ("accessibility", "Accessibility"), + ("accounts", "Accounts"), + ("add-search-engine", "Add Search Engine"), + ("ai", "AI"), + ("alert", "Alert"), + ("arrow-down", "Arrow Down"), + ("arrow-left-white", "Arrow Left White"), + ("arrow-left", "Arrow Left"), + ("arrow-right-white", "Arrow Right White"), + ("arrow-right", "Arrow Right"), + ("arrow-up", "Arrow Up"), + ("audio-card", "Audio Card"), + ("audio-mute", "Audio Mute"), + ("audio", "Audio"), + ("auto-play-block", "Auto Play Block"), + ("back", "Back"), + ("bell", "Bell"), + ("beta", "Beta"), + ("blog", "Blog"), + ("bookmark-menu", "Bookmark Menu"), + ("bookmark-narrow", "Bookmark Narrow"), + ("bookmark-remove", "Bookmark Remove"), + ("bookmark", "Bookmark"), + ("brightness", "Brightness"), + ("browser", "Browser"), + ("calendar", "Calendar"), + ("careers", "Careers"), + ("caret-down-white", "Caret Down White"), + ("caret-down", "Caret Down"), + ("caret-up", "Caret Up"), + ("chat", "Chat"), + ("check", "Check"), + ("close-white", "Close White"), + ("close", "Close"), + ("cloud", "Cloud"), + ("command-console", "Command Console"), + ("command-noautohide", "Command Noautohide"), + ("common-voice", "Common Voice"), + ("copy", "Copy"), + ("customize", "Customize"), + ("cut", "Cut"), + ("data-collection", "Data Collection"), + ("data-insights", "Data Insights"), + ("data-pie", "Data Pie"), + ("default-browser", "Default Browser"), + ("delete", "Delete"), + ("desktop", "Desktop"), + ("dev-edition", "Dev Edition"), + ("developer-innovations", "Developer Innovations"), + ("developer", "Developer"), + ("dictionaries", "Dictionaries"), + ("dock-bottom", "Dock Bottom"), + ("dock-left", "Dock Left"), + ("dock-right", "Dock Right"), + ("dock-undock", "Dock Undock"), + ("download-white", "Download White"), + ("download", "Download"), + ("earth", "Earth"), + ("edit-write", "Edit Write"), + ("email", "Email"), + ("enterprise", "Enterprise"), + ("event", "Event"), + ("expand-white", "Expand White"), + ("expand", "Expand"), + ("experiments", "Experiments"), + ("extension-available-update", "Extension Available Update"), + ("extension-recent-updates", "Extension Recent Updates"), + ("extensions-legacy", "Extensions Legacy"), + ("extensions", "Extensions"), + ("external-link-white", "External Link White"), + ("external-link", "External Link"), + ("eye-closed", "Eye Closed"), + ("eye-open", "Eye Open"), + ("facebook-container", "Facebook Container"), + ("features", "Features"), + ("feeback", "Feeback"), + ("file-code", "File Code"), + ("file-image", "File Image"), + ("file-lock", "File Lock"), + ("file-music", "File Music"), + ("file-text", "File Text"), + ("file", "File"), + ("fire-tv", "Fire TV"), + ("firefox-reality", "Firefox Reality"), + ("folder-open", "Folder Open"), + ("folder-plus", "Folder Plus"), + ("folder-save", "Folder Save"), + ("folder", "Folder"), + ("font", "Font"), + ("forget", "Forget"), + ("form fill", "Form Fill"), + ("forward", "Forward"), + ("full-screen-disabled", "Full Screen Disabled"), + ("full-screen-exit", "Full Screen Exit"), + ("full-screen", "Full Screen"), + ("gear", "Gear"), + ("get-involved", "Get Involved"), + ("globe-white", "Globe White"), + ("globe", "Globe"), + ("hashtag-narrow", "Hashtag Narrow"), + ("hashtag", "Hashtag"), + ("headphone", "Headphone"), + ("heart-white", "Heart White"), + ("heart", "Heart"), + ("help", "Help"), + ("highlight", "Highlight"), + ("history", "History"), + ("home", "Home"), + ("hubs", "Hubs"), + ("identity-notification", "Identity Notification"), + ("identity", "Identity"), + ("image", "Image"), + ("import", "Import"), + ("inbox", "Inbox"), + ("info", "Info"), + ("labs", "Labs"), + ("language", "Language"), + ("library", "Library"), + ("link", "Link"), + ("listen", "Listen"), + ("lite", "Lite"), + ("location-disabled", "Location Disabled"), + ("location-macos-disabled", "Location Macos Disabled"), + ("location-macos", "Location Macos"), + ("location-pin", "Location Pin"), + ("location-windows-disabled", "Location Windows Disabled"), + ("location-windows", "Location Windows"), + ("location", "Location"), + ("lock", "Lock"), + ("lockbox", "Lockbox"), + ("login", "Login"), + ("mail", "Mail"), + ("maximize", "Maximize"), + ("megaphone", "Megaphone"), + ("menu-white", "Menu White"), + ("menu", "Menu"), + ("microphone-disabled", "Microphone Disabled"), + ("microphone", "Microphone"), + ("midi", "Midi"), + ("minimize", "Minimize"), + ("minus", "Minus"), + ("mobile-narrow", "Mobile Narrow"), + ("mobile", "Mobile"), + ("monitor", "Monitor"), + ("more-horizontal", "More Horizontal"), + ("more-vertical", "More Vertical"), + ("mountain", "Mountain"), + ("mouse-pointer-disabled", "Mouse Pointer Disabled"), + ("mouse-pointer", "Mouse Pointer"), + ("mozilla", "Mozilla"), + ("new", "New"), + ("nightly", "Nightly"), + ("notes", "Notes"), + ("notifications-disabled", "Notifications Disabled"), + ("notifications", "Notifications"), + ("open-in-new", "Open In New"), + ("open", "Open"), + ("opensource", "Opensource"), + ("overflow", "Overflow"), + ("paperclip-narrow", "Paperclip Narrow"), + ("paperclip", "Paperclip"), + ("paste", "Paste"), + ("pause-white", "Pause White"), + ("pause", "Pause"), + ("performance", "Performance"), + ("photon", "Photon"), + ("pin-remove", "Pin Remove"), + ("pin", "Pin"), + ("play-white", "Play White"), + ("play", "Play"), + ("plugin-disabled", "Plugin Disabled"), + ("plugin", "Plugin"), + ("plus", "Plus"), + ("pocket-list", "Pocket List"), + ("pocket-remove", "Pocket Remove"), + ("pocket", "Pocket"), + ("popular", "Popular"), + ("popup-block", "Popup Block"), + ("preferences", "Preferences"), + ("pricetag", "Pricetag"), + ("pricetag-white", "Pricetag White"), + ("printer", "Printer"), + ("privacy", "Privacy"), + ("private-browsing", "Private Browsing"), + ("protocol", "Protocol"), + ("proton", "Proton"), + ("query", "Query"), + ("quit", "Quit"), + ("quote", "Quote"), + ("read", "Read"), + ("reader-mode", "Reader Mode"), + ("redo", "Redo"), + ("refresh", "Refresh"), + ("release-notes", "Release Notes"), + ("reminders", "Reminders"), + ("report-narrow", "Report Narrow"), + ("report", "Report"), + ("resources", "Resources"), + ("restore-session", "Restore Session"), + ("rhombus-layers", "Rhombus Layers"), + ("rhombus-layers-white", "Rhombus Layers White"), + ("screen-share-disabled", "Screen Share Disabled"), + ("screen-share", "Screen Share"), + ("screenshot", "Screenshot"), + ("search-white", "Search White"), + ("search", "Search"), + ("secure-broken", "Secure Broken"), + ("secure-mixed", "Secure Mixed"), + ("secure", "Secure"), + ("security", "Security"), + ("send-to-device", "Send To Device"), + ("send", "Send"), + ("settings", "Settings"), + ("share-windows", "Share Windows"), + ("share", "Share"), + ("shield", "Shield"), + ("sidebar", "Sidebar"), + ("sign-in", "Sign In"), + ("sign-up", "Sign Up"), + ("sound-off", "Sound Off"), + ("sound-on", "Sound On"), + ("star", "Star"), + ("stop", "Stop"), + ("store-data-disabled", "Store Data Disabled"), + ("store-data", "Store Data"), + ("sub-item", "Sub Item"), + ("subscribe", "Subscribe"), + ("sync", "Sync"), + ("tab-mobile", "Tab Mobile"), + ("tab-new", "Tab New"), + ("tab", "Tab"), + ("tablet", "Tablet"), + ("thumbs-up-narrow", "Thumbs Up Narrow"), + ("thumbs-up", "Thumbs Up"), + ("toggle-off", "Toggle Off"), + ("toggle-on", "Toggle On"), + ("toolbar", "Toolbar"), + ("top-sites", "Top Sites"), + ("tracing-protection-disabled", "Tracing Protection Disabled"), + ("tracking-protection", "Tracking Protection"), + ("trash-narrow", "Trash Narrow"), + ("trash", "Trash"), + ("turbo-mode", "Turbo Mode"), + ("undo", "Undo"), + ("update", "Update"), + ("user", "User"), + ("video-card", "Video Card"), + ("video-recoder-disabled", "Video Recoder Disabled"), + ("video-recorder", "Video Recorder"), + ("warning", "Warning"), + ("watch", "Watch"), + ("web-of-things", "Web Of Things"), + ("web-vr", "Web Vr"), + ("window-new", "Window New"), + ("window", "Window"), + ("zoom-in", "Zoom In"), + ("zoom-out", "Zoom Out"), + ], + "inline_form": True, + }, + ), + 48: ("wagtail.blocks.CharBlock", (), {}), + 49: ("wagtail.blocks.StructBlock", [[("first_section", 44), ("second_section", 44)]], {}), + 50: ("wagtail.blocks.StreamBlock", [[("two_column_block", 49)]], {"required": True}), + 51: ("wagtail.blocks.StructBlock", [[("icon", 47), ("toggle_text", 48), ("toggle_content", 50)]], {}), + 52: ("wagtail.blocks.StreamBlock", [[("toggle_items", 51)]], {"required": True}), + 53: ("wagtail.blocks.StructBlock", [[("settings", 46), ("toggle_items", 52)]], {}), + 54: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use bold to make parts of this text black.", + }, + ), + 55: ("wagtail.blocks.StructBlock", [[("settings", 46), ("heading", 54), ("button", 27)]], {}), + }, + null=True, + ), + ), + migrations.AlterField( + model_name="anonymindexpage", + name="content", + field=wagtail.fields.StreamField( + [("section", 44), ("call_to_action", 48)], + blank=True, + block_lookup={ + 0: ( + "wagtail.blocks.CharBlock", + (), + { + "help_text": "Optional: Add an ID to make this section linkable from navigation (e.g., 'overview', 'features')", + "max_length": 100, + "required": False, + }, + ), + 1: ( + "wagtail.blocks.ChoiceBlock", + [], + {"choices": [("", "---"), ("index", "Index"), ("top_glow", "Top Glow")], "inline_form": True, "required": False}, + ), + 2: ("wagtail.blocks.StructBlock", [[("anchor_id", 0), ("theme", 1)]], {}), + 3: ( + "wagtail.blocks.RichTextBlock", + (), + {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], "required": False}, + ), + 4: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use Bold to make parts of this text black.", + }, + ), + 5: ( + "wagtail.blocks.BooleanBlock", + (), + { + "default": False, + "help_text": "The Default width is constrained to the layout grid with a max-width, centered on the page.", + "inline_form": True, + "label": "Make Full Width", + "required": False, + }, + ), + 6: ("wagtail.blocks.StructBlock", [[("make_full_width", 5)]], {}), + 7: ("wagtail.images.blocks.ImageChooserBlock", (), {}), + 8: ("wagtail.blocks.StructBlock", [[("settings", 6), ("image", 7)]], {}), + 9: ("wagtail.blocks.BooleanBlock", (), {"default": False, "help_text": "The default behavior is stacked", "required": False}), + 10: ( + "wagtail.blocks.BooleanBlock", + (), + {"default": False, "help_text": "Add divider lines between cards on desktop", "required": False}, + ), + 11: ("wagtail.blocks.StructBlock", [[("scrollable_on_mobile", 9), ("dividers_between_cards_on_desktop", 10)]], {}), + 12: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("", "---"), + ("IRL", "IRL"), + ("accessibility", "Accessibility"), + ("accounts", "Accounts"), + ("add-search-engine", "Add Search Engine"), + ("ai", "AI"), + ("alert", "Alert"), + ("arrow-down", "Arrow Down"), + ("arrow-left-white", "Arrow Left White"), + ("arrow-left", "Arrow Left"), + ("arrow-right-white", "Arrow Right White"), + ("arrow-right", "Arrow Right"), + ("arrow-up", "Arrow Up"), + ("audio-card", "Audio Card"), + ("audio-mute", "Audio Mute"), + ("audio", "Audio"), + ("auto-play-block", "Auto Play Block"), + ("back", "Back"), + ("bell", "Bell"), + ("beta", "Beta"), + ("blog", "Blog"), + ("bookmark-menu", "Bookmark Menu"), + ("bookmark-narrow", "Bookmark Narrow"), + ("bookmark-remove", "Bookmark Remove"), + ("bookmark", "Bookmark"), + ("brightness", "Brightness"), + ("browser", "Browser"), + ("calendar", "Calendar"), + ("careers", "Careers"), + ("caret-down-white", "Caret Down White"), + ("caret-down", "Caret Down"), + ("caret-up", "Caret Up"), + ("chat", "Chat"), + ("check", "Check"), + ("close-white", "Close White"), + ("close", "Close"), + ("cloud", "Cloud"), + ("command-console", "Command Console"), + ("command-noautohide", "Command Noautohide"), + ("common-voice", "Common Voice"), + ("copy", "Copy"), + ("customize", "Customize"), + ("cut", "Cut"), + ("data-collection", "Data Collection"), + ("data-insights", "Data Insights"), + ("data-pie", "Data Pie"), + ("default-browser", "Default Browser"), + ("delete", "Delete"), + ("desktop", "Desktop"), + ("dev-edition", "Dev Edition"), + ("developer-innovations", "Developer Innovations"), + ("developer", "Developer"), + ("dictionaries", "Dictionaries"), + ("dock-bottom", "Dock Bottom"), + ("dock-left", "Dock Left"), + ("dock-right", "Dock Right"), + ("dock-undock", "Dock Undock"), + ("download-white", "Download White"), + ("download", "Download"), + ("earth", "Earth"), + ("edit-write", "Edit Write"), + ("email", "Email"), + ("enterprise", "Enterprise"), + ("event", "Event"), + ("expand-white", "Expand White"), + ("expand", "Expand"), + ("experiments", "Experiments"), + ("extension-available-update", "Extension Available Update"), + ("extension-recent-updates", "Extension Recent Updates"), + ("extensions-legacy", "Extensions Legacy"), + ("extensions", "Extensions"), + ("external-link-white", "External Link White"), + ("external-link", "External Link"), + ("eye-closed", "Eye Closed"), + ("eye-open", "Eye Open"), + ("facebook-container", "Facebook Container"), + ("features", "Features"), + ("feeback", "Feeback"), + ("file-code", "File Code"), + ("file-image", "File Image"), + ("file-lock", "File Lock"), + ("file-music", "File Music"), + ("file-text", "File Text"), + ("file", "File"), + ("fire-tv", "Fire TV"), + ("firefox-reality", "Firefox Reality"), + ("folder-open", "Folder Open"), + ("folder-plus", "Folder Plus"), + ("folder-save", "Folder Save"), + ("folder", "Folder"), + ("font", "Font"), + ("forget", "Forget"), + ("form fill", "Form Fill"), + ("forward", "Forward"), + ("full-screen-disabled", "Full Screen Disabled"), + ("full-screen-exit", "Full Screen Exit"), + ("full-screen", "Full Screen"), + ("gear", "Gear"), + ("get-involved", "Get Involved"), + ("globe-white", "Globe White"), + ("globe", "Globe"), + ("hashtag-narrow", "Hashtag Narrow"), + ("hashtag", "Hashtag"), + ("headphone", "Headphone"), + ("heart-white", "Heart White"), + ("heart", "Heart"), + ("help", "Help"), + ("highlight", "Highlight"), + ("history", "History"), + ("home", "Home"), + ("hubs", "Hubs"), + ("identity-notification", "Identity Notification"), + ("identity", "Identity"), + ("image", "Image"), + ("import", "Import"), + ("inbox", "Inbox"), + ("info", "Info"), + ("labs", "Labs"), + ("language", "Language"), + ("library", "Library"), + ("link", "Link"), + ("listen", "Listen"), + ("lite", "Lite"), + ("location-disabled", "Location Disabled"), + ("location-macos-disabled", "Location Macos Disabled"), + ("location-macos", "Location Macos"), + ("location-pin", "Location Pin"), + ("location-windows-disabled", "Location Windows Disabled"), + ("location-windows", "Location Windows"), + ("location", "Location"), + ("lock", "Lock"), + ("lockbox", "Lockbox"), + ("login", "Login"), + ("mail", "Mail"), + ("maximize", "Maximize"), + ("megaphone", "Megaphone"), + ("menu-white", "Menu White"), + ("menu", "Menu"), + ("microphone-disabled", "Microphone Disabled"), + ("microphone", "Microphone"), + ("midi", "Midi"), + ("minimize", "Minimize"), + ("minus", "Minus"), + ("mobile-narrow", "Mobile Narrow"), + ("mobile", "Mobile"), + ("monitor", "Monitor"), + ("more-horizontal", "More Horizontal"), + ("more-vertical", "More Vertical"), + ("mountain", "Mountain"), + ("mouse-pointer-disabled", "Mouse Pointer Disabled"), + ("mouse-pointer", "Mouse Pointer"), + ("mozilla", "Mozilla"), + ("new", "New"), + ("nightly", "Nightly"), + ("notes", "Notes"), + ("notifications-disabled", "Notifications Disabled"), + ("notifications", "Notifications"), + ("open-in-new", "Open In New"), + ("open", "Open"), + ("opensource", "Opensource"), + ("overflow", "Overflow"), + ("paperclip-narrow", "Paperclip Narrow"), + ("paperclip", "Paperclip"), + ("paste", "Paste"), + ("pause-white", "Pause White"), + ("pause", "Pause"), + ("performance", "Performance"), + ("photon", "Photon"), + ("pin-remove", "Pin Remove"), + ("pin", "Pin"), + ("play-white", "Play White"), + ("play", "Play"), + ("plugin-disabled", "Plugin Disabled"), + ("plugin", "Plugin"), + ("plus", "Plus"), + ("pocket-list", "Pocket List"), + ("pocket-remove", "Pocket Remove"), + ("pocket", "Pocket"), + ("popular", "Popular"), + ("popup-block", "Popup Block"), + ("preferences", "Preferences"), + ("pricetag", "Pricetag"), + ("pricetag-white", "Pricetag White"), + ("printer", "Printer"), + ("privacy", "Privacy"), + ("private-browsing", "Private Browsing"), + ("protocol", "Protocol"), + ("proton", "Proton"), + ("query", "Query"), + ("quit", "Quit"), + ("quote", "Quote"), + ("read", "Read"), + ("reader-mode", "Reader Mode"), + ("redo", "Redo"), + ("refresh", "Refresh"), + ("release-notes", "Release Notes"), + ("reminders", "Reminders"), + ("report-narrow", "Report Narrow"), + ("report", "Report"), + ("resources", "Resources"), + ("restore-session", "Restore Session"), + ("rhombus-layers", "Rhombus Layers"), + ("rhombus-layers-white", "Rhombus Layers White"), + ("screen-share-disabled", "Screen Share Disabled"), + ("screen-share", "Screen Share"), + ("screenshot", "Screenshot"), + ("search-white", "Search White"), + ("search", "Search"), + ("secure-broken", "Secure Broken"), + ("secure-mixed", "Secure Mixed"), + ("secure", "Secure"), + ("security", "Security"), + ("send-to-device", "Send To Device"), + ("send", "Send"), + ("settings", "Settings"), + ("share-windows", "Share Windows"), + ("share", "Share"), + ("shield", "Shield"), + ("sidebar", "Sidebar"), + ("sign-in", "Sign In"), + ("sign-up", "Sign Up"), + ("sound-off", "Sound Off"), + ("sound-on", "Sound On"), + ("star", "Star"), + ("stop", "Stop"), + ("store-data-disabled", "Store Data Disabled"), + ("store-data", "Store Data"), + ("sub-item", "Sub Item"), + ("subscribe", "Subscribe"), + ("sync", "Sync"), + ("tab-mobile", "Tab Mobile"), + ("tab-new", "Tab New"), + ("tab", "Tab"), + ("tablet", "Tablet"), + ("thumbs-up-narrow", "Thumbs Up Narrow"), + ("thumbs-up", "Thumbs Up"), + ("toggle-off", "Toggle Off"), + ("toggle-on", "Toggle On"), + ("toolbar", "Toolbar"), + ("top-sites", "Top Sites"), + ("tracing-protection-disabled", "Tracing Protection Disabled"), + ("tracking-protection", "Tracking Protection"), + ("trash-narrow", "Trash Narrow"), + ("trash", "Trash"), + ("turbo-mode", "Turbo Mode"), + ("undo", "Undo"), + ("update", "Update"), + ("user", "User"), + ("video-card", "Video Card"), + ("video-recoder-disabled", "Video Recoder Disabled"), + ("video-recorder", "Video Recorder"), + ("warning", "Warning"), + ("watch", "Watch"), + ("web-of-things", "Web Of Things"), + ("web-vr", "Web Vr"), + ("window-new", "Window New"), + ("window", "Window"), + ("zoom-in", "Zoom In"), + ("zoom-out", "Zoom Out"), + ], + "inline_form": True, + "required": False, + }, + ), + 13: ("wagtail.blocks.CharBlock", (), {"label": "Heading"}), + 14: ("wagtail.blocks.RichTextBlock", (), {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"]}), + 15: ("wagtail.blocks.StructBlock", [[("icon", 12), ("heading", 13), ("text", 14)]], {}), + 16: ("wagtail.blocks.CharBlock", (), {"label": "Link Text"}), + 17: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("page", "Page"), + ("file", "File"), + ("custom_url", "Custom URL"), + ("email", "Email"), + ("anchor", "Anchor"), + ("phone", "Phone"), + ], + "classname": "link_choice_type_selector", + "label": "Link to", + "required": False, + }, + ), + 18: ("wagtail.blocks.PageChooserBlock", (), {"form_classname": "page_link", "label": "Page", "required": False}), + 19: ("wagtail.documents.blocks.DocumentChooserBlock", (), {"form_classname": "file_link", "label": "File", "required": False}), + 20: ( + "wagtail.blocks.CharBlock", + (), + { + "form_classname": "custom_url_link url_field", + "label": "Custom URL", + "max_length": 300, + "required": False, + "validators": [wagtail.admin.forms.choosers.URLOrAbsolutePathValidator()], + }, + ), + 21: ("wagtail.blocks.CharBlock", (), {"form_classname": "anchor_link", "label": "#", "max_length": 300, "required": False}), + 22: ("wagtail.blocks.EmailBlock", (), {"required": False}), + 23: ("wagtail.blocks.CharBlock", (), {"form_classname": "phone_link", "label": "Phone", "max_length": 30, "required": False}), + 24: ( + "wagtail.blocks.BooleanBlock", + (), + {"form_classname": "new_window_toggle", "label": "Open in new window", "required": False}, + ), + 25: ( + "wagtail.blocks.StructBlock", + [ + [ + ("link_to", 17), + ("page", 18), + ("file", 19), + ("custom_url", 20), + ("anchor", 21), + ("email", 22), + ("phone", 23), + ("new_window", 24), + ] + ], + {}, + ), + 26: ("wagtail.blocks.StructBlock", [[("label", 16), ("link", 25)]], {}), + 27: ("wagtail.blocks.ListBlock", (26,), {"default": [], "max_num": 1, "min_num": 0}), + 28: ("wagtail.blocks.StructBlock", [[("logo", 7), ("heading", 13), ("text", 14), ("button", 27)]], {}), + 29: ("wagtail.snippets.blocks.SnippetChooserBlock", ("mozorg.Person",), {}), + 30: ("wagtail.blocks.StructBlock", [[("person", 29), ("link", 27)]], {}), + 31: ("wagtail.blocks.StreamBlock", [[("icon_card", 15), ("logo_card", 28), ("person_card", 30)]], {"max_num": 4, "min_num": 1}), + 32: ("wagtail.blocks.StructBlock", [[("settings", 11), ("cards", 31)]], {}), + 33: ("wagtail.images.blocks.ImageChooserBlock", (), {"required": False}), + 34: ( + "wagtail.blocks.StructBlock", + [ + [ + ("image", 33), + ("heading", 13), + ("statistic1_value", 14), + ("statistic1_label", 14), + ("statistic2_value", 14), + ("statistic2_label", 14), + ] + ], + {}, + ), + 35: ("wagtail.blocks.StreamBlock", [[("stat", 34)]], {}), + 36: ("wagtail.blocks.StructBlock", [[("stats", 35)]], {}), + 37: ("wagtail.blocks.ListBlock", (7,), {"default": [], "max_num": 8, "min_num": 1}), + 38: ("wagtail.blocks.StructBlock", [[("people_photos", 37), ("text", 14)]], {}), + 39: ("wagtail.contrib.table_block.blocks.TableBlock", (), {}), + 40: ("wagtail.blocks.StructBlock", [[("heading_text", 13), ("supporting_text", 14)]], {}), + 41: ("wagtail.blocks.ListBlock", (40,), {"min_num": 0}), + 42: ("wagtail.blocks.StructBlock", [[("heading_text", 13), ("subheading_text", 14), ("second_column", 41)]], {}), + 43: ( + "wagtail.blocks.StreamBlock", + [[("figure_block", 8), ("cards_list", 32), ("stats_list_block", 36), ("people_list", 38), ("table", 39), ("two_column", 42)]], + {"required": False}, + ), + 44: ( + "wagtail.blocks.StructBlock", + [ + [ + ("settings", 2), + ("superheading_text", 3), + ("heading_text", 4), + ("subheading_text", 3), + ("section_content", 43), + ("action", 27), + ] + ], + {}, + ), + 45: ( + "wagtail.blocks.CharBlock", + (), + {"help_text": "Optional: Add an ID to make this section linkable from navigation", "max_length": 100, "required": False}, + ), + 46: ("wagtail.blocks.StructBlock", [[("anchor_id", 45)]], {}), + 47: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use bold to make parts of this text black.", + }, + ), + 48: ("wagtail.blocks.StructBlock", [[("settings", 46), ("heading", 47), ("button", 27)]], {}), + }, + null=True, + ), + ), + migrations.AlterField( + model_name="anonymtopandbottompage", + name="bottom_content", + field=wagtail.fields.StreamField( + [("section", 44), ("call_to_action", 48)], + blank=True, + block_lookup={ + 0: ( + "wagtail.blocks.CharBlock", + (), + { + "help_text": "Optional: Add an ID to make this section linkable from navigation (e.g., 'overview', 'features')", + "max_length": 100, + "required": False, + }, + ), + 1: ( + "wagtail.blocks.ChoiceBlock", + [], + {"choices": [("", "---"), ("index", "Index"), ("top_glow", "Top Glow")], "inline_form": True, "required": False}, + ), + 2: ("wagtail.blocks.StructBlock", [[("anchor_id", 0), ("theme", 1)]], {}), + 3: ( + "wagtail.blocks.RichTextBlock", + (), + {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], "required": False}, + ), + 4: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use Bold to make parts of this text black.", + }, + ), + 5: ( + "wagtail.blocks.BooleanBlock", + (), + { + "default": False, + "help_text": "The Default width is constrained to the layout grid with a max-width, centered on the page.", + "inline_form": True, + "label": "Make Full Width", + "required": False, + }, + ), + 6: ("wagtail.blocks.StructBlock", [[("make_full_width", 5)]], {}), + 7: ("wagtail.images.blocks.ImageChooserBlock", (), {}), + 8: ("wagtail.blocks.StructBlock", [[("settings", 6), ("image", 7)]], {}), + 9: ("wagtail.blocks.BooleanBlock", (), {"default": False, "help_text": "The default behavior is stacked", "required": False}), + 10: ( + "wagtail.blocks.BooleanBlock", + (), + {"default": False, "help_text": "Add divider lines between cards on desktop", "required": False}, + ), + 11: ("wagtail.blocks.StructBlock", [[("scrollable_on_mobile", 9), ("dividers_between_cards_on_desktop", 10)]], {}), + 12: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("", "---"), + ("IRL", "IRL"), + ("accessibility", "Accessibility"), + ("accounts", "Accounts"), + ("add-search-engine", "Add Search Engine"), + ("ai", "AI"), + ("alert", "Alert"), + ("arrow-down", "Arrow Down"), + ("arrow-left-white", "Arrow Left White"), + ("arrow-left", "Arrow Left"), + ("arrow-right-white", "Arrow Right White"), + ("arrow-right", "Arrow Right"), + ("arrow-up", "Arrow Up"), + ("audio-card", "Audio Card"), + ("audio-mute", "Audio Mute"), + ("audio", "Audio"), + ("auto-play-block", "Auto Play Block"), + ("back", "Back"), + ("bell", "Bell"), + ("beta", "Beta"), + ("blog", "Blog"), + ("bookmark-menu", "Bookmark Menu"), + ("bookmark-narrow", "Bookmark Narrow"), + ("bookmark-remove", "Bookmark Remove"), + ("bookmark", "Bookmark"), + ("brightness", "Brightness"), + ("browser", "Browser"), + ("calendar", "Calendar"), + ("careers", "Careers"), + ("caret-down-white", "Caret Down White"), + ("caret-down", "Caret Down"), + ("caret-up", "Caret Up"), + ("chat", "Chat"), + ("check", "Check"), + ("close-white", "Close White"), + ("close", "Close"), + ("cloud", "Cloud"), + ("command-console", "Command Console"), + ("command-noautohide", "Command Noautohide"), + ("common-voice", "Common Voice"), + ("copy", "Copy"), + ("customize", "Customize"), + ("cut", "Cut"), + ("data-collection", "Data Collection"), + ("data-insights", "Data Insights"), + ("data-pie", "Data Pie"), + ("default-browser", "Default Browser"), + ("delete", "Delete"), + ("desktop", "Desktop"), + ("dev-edition", "Dev Edition"), + ("developer-innovations", "Developer Innovations"), + ("developer", "Developer"), + ("dictionaries", "Dictionaries"), + ("dock-bottom", "Dock Bottom"), + ("dock-left", "Dock Left"), + ("dock-right", "Dock Right"), + ("dock-undock", "Dock Undock"), + ("download-white", "Download White"), + ("download", "Download"), + ("earth", "Earth"), + ("edit-write", "Edit Write"), + ("email", "Email"), + ("enterprise", "Enterprise"), + ("event", "Event"), + ("expand-white", "Expand White"), + ("expand", "Expand"), + ("experiments", "Experiments"), + ("extension-available-update", "Extension Available Update"), + ("extension-recent-updates", "Extension Recent Updates"), + ("extensions-legacy", "Extensions Legacy"), + ("extensions", "Extensions"), + ("external-link-white", "External Link White"), + ("external-link", "External Link"), + ("eye-closed", "Eye Closed"), + ("eye-open", "Eye Open"), + ("facebook-container", "Facebook Container"), + ("features", "Features"), + ("feeback", "Feeback"), + ("file-code", "File Code"), + ("file-image", "File Image"), + ("file-lock", "File Lock"), + ("file-music", "File Music"), + ("file-text", "File Text"), + ("file", "File"), + ("fire-tv", "Fire TV"), + ("firefox-reality", "Firefox Reality"), + ("folder-open", "Folder Open"), + ("folder-plus", "Folder Plus"), + ("folder-save", "Folder Save"), + ("folder", "Folder"), + ("font", "Font"), + ("forget", "Forget"), + ("form fill", "Form Fill"), + ("forward", "Forward"), + ("full-screen-disabled", "Full Screen Disabled"), + ("full-screen-exit", "Full Screen Exit"), + ("full-screen", "Full Screen"), + ("gear", "Gear"), + ("get-involved", "Get Involved"), + ("globe-white", "Globe White"), + ("globe", "Globe"), + ("hashtag-narrow", "Hashtag Narrow"), + ("hashtag", "Hashtag"), + ("headphone", "Headphone"), + ("heart-white", "Heart White"), + ("heart", "Heart"), + ("help", "Help"), + ("highlight", "Highlight"), + ("history", "History"), + ("home", "Home"), + ("hubs", "Hubs"), + ("identity-notification", "Identity Notification"), + ("identity", "Identity"), + ("image", "Image"), + ("import", "Import"), + ("inbox", "Inbox"), + ("info", "Info"), + ("labs", "Labs"), + ("language", "Language"), + ("library", "Library"), + ("link", "Link"), + ("listen", "Listen"), + ("lite", "Lite"), + ("location-disabled", "Location Disabled"), + ("location-macos-disabled", "Location Macos Disabled"), + ("location-macos", "Location Macos"), + ("location-pin", "Location Pin"), + ("location-windows-disabled", "Location Windows Disabled"), + ("location-windows", "Location Windows"), + ("location", "Location"), + ("lock", "Lock"), + ("lockbox", "Lockbox"), + ("login", "Login"), + ("mail", "Mail"), + ("maximize", "Maximize"), + ("megaphone", "Megaphone"), + ("menu-white", "Menu White"), + ("menu", "Menu"), + ("microphone-disabled", "Microphone Disabled"), + ("microphone", "Microphone"), + ("midi", "Midi"), + ("minimize", "Minimize"), + ("minus", "Minus"), + ("mobile-narrow", "Mobile Narrow"), + ("mobile", "Mobile"), + ("monitor", "Monitor"), + ("more-horizontal", "More Horizontal"), + ("more-vertical", "More Vertical"), + ("mountain", "Mountain"), + ("mouse-pointer-disabled", "Mouse Pointer Disabled"), + ("mouse-pointer", "Mouse Pointer"), + ("mozilla", "Mozilla"), + ("new", "New"), + ("nightly", "Nightly"), + ("notes", "Notes"), + ("notifications-disabled", "Notifications Disabled"), + ("notifications", "Notifications"), + ("open-in-new", "Open In New"), + ("open", "Open"), + ("opensource", "Opensource"), + ("overflow", "Overflow"), + ("paperclip-narrow", "Paperclip Narrow"), + ("paperclip", "Paperclip"), + ("paste", "Paste"), + ("pause-white", "Pause White"), + ("pause", "Pause"), + ("performance", "Performance"), + ("photon", "Photon"), + ("pin-remove", "Pin Remove"), + ("pin", "Pin"), + ("play-white", "Play White"), + ("play", "Play"), + ("plugin-disabled", "Plugin Disabled"), + ("plugin", "Plugin"), + ("plus", "Plus"), + ("pocket-list", "Pocket List"), + ("pocket-remove", "Pocket Remove"), + ("pocket", "Pocket"), + ("popular", "Popular"), + ("popup-block", "Popup Block"), + ("preferences", "Preferences"), + ("pricetag", "Pricetag"), + ("pricetag-white", "Pricetag White"), + ("printer", "Printer"), + ("privacy", "Privacy"), + ("private-browsing", "Private Browsing"), + ("protocol", "Protocol"), + ("proton", "Proton"), + ("query", "Query"), + ("quit", "Quit"), + ("quote", "Quote"), + ("read", "Read"), + ("reader-mode", "Reader Mode"), + ("redo", "Redo"), + ("refresh", "Refresh"), + ("release-notes", "Release Notes"), + ("reminders", "Reminders"), + ("report-narrow", "Report Narrow"), + ("report", "Report"), + ("resources", "Resources"), + ("restore-session", "Restore Session"), + ("rhombus-layers", "Rhombus Layers"), + ("rhombus-layers-white", "Rhombus Layers White"), + ("screen-share-disabled", "Screen Share Disabled"), + ("screen-share", "Screen Share"), + ("screenshot", "Screenshot"), + ("search-white", "Search White"), + ("search", "Search"), + ("secure-broken", "Secure Broken"), + ("secure-mixed", "Secure Mixed"), + ("secure", "Secure"), + ("security", "Security"), + ("send-to-device", "Send To Device"), + ("send", "Send"), + ("settings", "Settings"), + ("share-windows", "Share Windows"), + ("share", "Share"), + ("shield", "Shield"), + ("sidebar", "Sidebar"), + ("sign-in", "Sign In"), + ("sign-up", "Sign Up"), + ("sound-off", "Sound Off"), + ("sound-on", "Sound On"), + ("star", "Star"), + ("stop", "Stop"), + ("store-data-disabled", "Store Data Disabled"), + ("store-data", "Store Data"), + ("sub-item", "Sub Item"), + ("subscribe", "Subscribe"), + ("sync", "Sync"), + ("tab-mobile", "Tab Mobile"), + ("tab-new", "Tab New"), + ("tab", "Tab"), + ("tablet", "Tablet"), + ("thumbs-up-narrow", "Thumbs Up Narrow"), + ("thumbs-up", "Thumbs Up"), + ("toggle-off", "Toggle Off"), + ("toggle-on", "Toggle On"), + ("toolbar", "Toolbar"), + ("top-sites", "Top Sites"), + ("tracing-protection-disabled", "Tracing Protection Disabled"), + ("tracking-protection", "Tracking Protection"), + ("trash-narrow", "Trash Narrow"), + ("trash", "Trash"), + ("turbo-mode", "Turbo Mode"), + ("undo", "Undo"), + ("update", "Update"), + ("user", "User"), + ("video-card", "Video Card"), + ("video-recoder-disabled", "Video Recoder Disabled"), + ("video-recorder", "Video Recorder"), + ("warning", "Warning"), + ("watch", "Watch"), + ("web-of-things", "Web Of Things"), + ("web-vr", "Web Vr"), + ("window-new", "Window New"), + ("window", "Window"), + ("zoom-in", "Zoom In"), + ("zoom-out", "Zoom Out"), + ], + "inline_form": True, + "required": False, + }, + ), + 13: ("wagtail.blocks.CharBlock", (), {"label": "Heading"}), + 14: ("wagtail.blocks.RichTextBlock", (), {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"]}), + 15: ("wagtail.blocks.StructBlock", [[("icon", 12), ("heading", 13), ("text", 14)]], {}), + 16: ("wagtail.blocks.CharBlock", (), {"label": "Link Text"}), + 17: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("page", "Page"), + ("file", "File"), + ("custom_url", "Custom URL"), + ("email", "Email"), + ("anchor", "Anchor"), + ("phone", "Phone"), + ], + "classname": "link_choice_type_selector", + "label": "Link to", + "required": False, + }, + ), + 18: ("wagtail.blocks.PageChooserBlock", (), {"form_classname": "page_link", "label": "Page", "required": False}), + 19: ("wagtail.documents.blocks.DocumentChooserBlock", (), {"form_classname": "file_link", "label": "File", "required": False}), + 20: ( + "wagtail.blocks.CharBlock", + (), + { + "form_classname": "custom_url_link url_field", + "label": "Custom URL", + "max_length": 300, + "required": False, + "validators": [wagtail.admin.forms.choosers.URLOrAbsolutePathValidator()], + }, + ), + 21: ("wagtail.blocks.CharBlock", (), {"form_classname": "anchor_link", "label": "#", "max_length": 300, "required": False}), + 22: ("wagtail.blocks.EmailBlock", (), {"required": False}), + 23: ("wagtail.blocks.CharBlock", (), {"form_classname": "phone_link", "label": "Phone", "max_length": 30, "required": False}), + 24: ( + "wagtail.blocks.BooleanBlock", + (), + {"form_classname": "new_window_toggle", "label": "Open in new window", "required": False}, + ), + 25: ( + "wagtail.blocks.StructBlock", + [ + [ + ("link_to", 17), + ("page", 18), + ("file", 19), + ("custom_url", 20), + ("anchor", 21), + ("email", 22), + ("phone", 23), + ("new_window", 24), + ] + ], + {}, + ), + 26: ("wagtail.blocks.StructBlock", [[("label", 16), ("link", 25)]], {}), + 27: ("wagtail.blocks.ListBlock", (26,), {"default": [], "max_num": 1, "min_num": 0}), + 28: ("wagtail.blocks.StructBlock", [[("logo", 7), ("heading", 13), ("text", 14), ("button", 27)]], {}), + 29: ("wagtail.snippets.blocks.SnippetChooserBlock", ("mozorg.Person",), {}), + 30: ("wagtail.blocks.StructBlock", [[("person", 29), ("link", 27)]], {}), + 31: ("wagtail.blocks.StreamBlock", [[("icon_card", 15), ("logo_card", 28), ("person_card", 30)]], {"max_num": 4, "min_num": 1}), + 32: ("wagtail.blocks.StructBlock", [[("settings", 11), ("cards", 31)]], {}), + 33: ("wagtail.images.blocks.ImageChooserBlock", (), {"required": False}), + 34: ( + "wagtail.blocks.StructBlock", + [ + [ + ("image", 33), + ("heading", 13), + ("statistic1_value", 14), + ("statistic1_label", 14), + ("statistic2_value", 14), + ("statistic2_label", 14), + ] + ], + {}, + ), + 35: ("wagtail.blocks.StreamBlock", [[("stat", 34)]], {}), + 36: ("wagtail.blocks.StructBlock", [[("stats", 35)]], {}), + 37: ("wagtail.blocks.ListBlock", (7,), {"default": [], "max_num": 8, "min_num": 1}), + 38: ("wagtail.blocks.StructBlock", [[("people_photos", 37), ("text", 14)]], {}), + 39: ("wagtail.contrib.table_block.blocks.TableBlock", (), {}), + 40: ("wagtail.blocks.StructBlock", [[("heading_text", 13), ("supporting_text", 14)]], {}), + 41: ("wagtail.blocks.ListBlock", (40,), {"min_num": 0}), + 42: ("wagtail.blocks.StructBlock", [[("heading_text", 13), ("subheading_text", 14), ("second_column", 41)]], {}), + 43: ( + "wagtail.blocks.StreamBlock", + [[("figure_block", 8), ("cards_list", 32), ("stats_list_block", 36), ("people_list", 38), ("table", 39), ("two_column", 42)]], + {"required": False}, + ), + 44: ( + "wagtail.blocks.StructBlock", + [ + [ + ("settings", 2), + ("superheading_text", 3), + ("heading_text", 4), + ("subheading_text", 3), + ("section_content", 43), + ("action", 27), + ] + ], + {}, + ), + 45: ( + "wagtail.blocks.CharBlock", + (), + {"help_text": "Optional: Add an ID to make this section linkable from navigation", "max_length": 100, "required": False}, + ), + 46: ("wagtail.blocks.StructBlock", [[("anchor_id", 45)]], {}), + 47: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use bold to make parts of this text black.", + }, + ), + 48: ("wagtail.blocks.StructBlock", [[("settings", 46), ("heading", 47), ("button", 27)]], {}), + }, + null=True, + ), + ), + migrations.AlterField( + model_name="anonymtopandbottompage", + name="top_content", + field=wagtail.fields.StreamField( + [("section", 44), ("call_to_action", 48)], + blank=True, + block_lookup={ + 0: ( + "wagtail.blocks.CharBlock", + (), + { + "help_text": "Optional: Add an ID to make this section linkable from navigation (e.g., 'overview', 'features')", + "max_length": 100, + "required": False, + }, + ), + 1: ( + "wagtail.blocks.ChoiceBlock", + [], + {"choices": [("", "---"), ("index", "Index"), ("top_glow", "Top Glow")], "inline_form": True, "required": False}, + ), + 2: ("wagtail.blocks.StructBlock", [[("anchor_id", 0), ("theme", 1)]], {}), + 3: ( + "wagtail.blocks.RichTextBlock", + (), + {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], "required": False}, + ), + 4: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use Bold to make parts of this text black.", + }, + ), + 5: ( + "wagtail.blocks.BooleanBlock", + (), + { + "default": False, + "help_text": "The Default width is constrained to the layout grid with a max-width, centered on the page.", + "inline_form": True, + "label": "Make Full Width", + "required": False, + }, + ), + 6: ("wagtail.blocks.StructBlock", [[("make_full_width", 5)]], {}), + 7: ("wagtail.images.blocks.ImageChooserBlock", (), {}), + 8: ("wagtail.blocks.StructBlock", [[("settings", 6), ("image", 7)]], {}), + 9: ("wagtail.blocks.BooleanBlock", (), {"default": False, "help_text": "The default behavior is stacked", "required": False}), + 10: ( + "wagtail.blocks.BooleanBlock", + (), + {"default": False, "help_text": "Add divider lines between cards on desktop", "required": False}, + ), + 11: ("wagtail.blocks.StructBlock", [[("scrollable_on_mobile", 9), ("dividers_between_cards_on_desktop", 10)]], {}), + 12: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("", "---"), + ("IRL", "IRL"), + ("accessibility", "Accessibility"), + ("accounts", "Accounts"), + ("add-search-engine", "Add Search Engine"), + ("ai", "AI"), + ("alert", "Alert"), + ("arrow-down", "Arrow Down"), + ("arrow-left-white", "Arrow Left White"), + ("arrow-left", "Arrow Left"), + ("arrow-right-white", "Arrow Right White"), + ("arrow-right", "Arrow Right"), + ("arrow-up", "Arrow Up"), + ("audio-card", "Audio Card"), + ("audio-mute", "Audio Mute"), + ("audio", "Audio"), + ("auto-play-block", "Auto Play Block"), + ("back", "Back"), + ("bell", "Bell"), + ("beta", "Beta"), + ("blog", "Blog"), + ("bookmark-menu", "Bookmark Menu"), + ("bookmark-narrow", "Bookmark Narrow"), + ("bookmark-remove", "Bookmark Remove"), + ("bookmark", "Bookmark"), + ("brightness", "Brightness"), + ("browser", "Browser"), + ("calendar", "Calendar"), + ("careers", "Careers"), + ("caret-down-white", "Caret Down White"), + ("caret-down", "Caret Down"), + ("caret-up", "Caret Up"), + ("chat", "Chat"), + ("check", "Check"), + ("close-white", "Close White"), + ("close", "Close"), + ("cloud", "Cloud"), + ("command-console", "Command Console"), + ("command-noautohide", "Command Noautohide"), + ("common-voice", "Common Voice"), + ("copy", "Copy"), + ("customize", "Customize"), + ("cut", "Cut"), + ("data-collection", "Data Collection"), + ("data-insights", "Data Insights"), + ("data-pie", "Data Pie"), + ("default-browser", "Default Browser"), + ("delete", "Delete"), + ("desktop", "Desktop"), + ("dev-edition", "Dev Edition"), + ("developer-innovations", "Developer Innovations"), + ("developer", "Developer"), + ("dictionaries", "Dictionaries"), + ("dock-bottom", "Dock Bottom"), + ("dock-left", "Dock Left"), + ("dock-right", "Dock Right"), + ("dock-undock", "Dock Undock"), + ("download-white", "Download White"), + ("download", "Download"), + ("earth", "Earth"), + ("edit-write", "Edit Write"), + ("email", "Email"), + ("enterprise", "Enterprise"), + ("event", "Event"), + ("expand-white", "Expand White"), + ("expand", "Expand"), + ("experiments", "Experiments"), + ("extension-available-update", "Extension Available Update"), + ("extension-recent-updates", "Extension Recent Updates"), + ("extensions-legacy", "Extensions Legacy"), + ("extensions", "Extensions"), + ("external-link-white", "External Link White"), + ("external-link", "External Link"), + ("eye-closed", "Eye Closed"), + ("eye-open", "Eye Open"), + ("facebook-container", "Facebook Container"), + ("features", "Features"), + ("feeback", "Feeback"), + ("file-code", "File Code"), + ("file-image", "File Image"), + ("file-lock", "File Lock"), + ("file-music", "File Music"), + ("file-text", "File Text"), + ("file", "File"), + ("fire-tv", "Fire TV"), + ("firefox-reality", "Firefox Reality"), + ("folder-open", "Folder Open"), + ("folder-plus", "Folder Plus"), + ("folder-save", "Folder Save"), + ("folder", "Folder"), + ("font", "Font"), + ("forget", "Forget"), + ("form fill", "Form Fill"), + ("forward", "Forward"), + ("full-screen-disabled", "Full Screen Disabled"), + ("full-screen-exit", "Full Screen Exit"), + ("full-screen", "Full Screen"), + ("gear", "Gear"), + ("get-involved", "Get Involved"), + ("globe-white", "Globe White"), + ("globe", "Globe"), + ("hashtag-narrow", "Hashtag Narrow"), + ("hashtag", "Hashtag"), + ("headphone", "Headphone"), + ("heart-white", "Heart White"), + ("heart", "Heart"), + ("help", "Help"), + ("highlight", "Highlight"), + ("history", "History"), + ("home", "Home"), + ("hubs", "Hubs"), + ("identity-notification", "Identity Notification"), + ("identity", "Identity"), + ("image", "Image"), + ("import", "Import"), + ("inbox", "Inbox"), + ("info", "Info"), + ("labs", "Labs"), + ("language", "Language"), + ("library", "Library"), + ("link", "Link"), + ("listen", "Listen"), + ("lite", "Lite"), + ("location-disabled", "Location Disabled"), + ("location-macos-disabled", "Location Macos Disabled"), + ("location-macos", "Location Macos"), + ("location-pin", "Location Pin"), + ("location-windows-disabled", "Location Windows Disabled"), + ("location-windows", "Location Windows"), + ("location", "Location"), + ("lock", "Lock"), + ("lockbox", "Lockbox"), + ("login", "Login"), + ("mail", "Mail"), + ("maximize", "Maximize"), + ("megaphone", "Megaphone"), + ("menu-white", "Menu White"), + ("menu", "Menu"), + ("microphone-disabled", "Microphone Disabled"), + ("microphone", "Microphone"), + ("midi", "Midi"), + ("minimize", "Minimize"), + ("minus", "Minus"), + ("mobile-narrow", "Mobile Narrow"), + ("mobile", "Mobile"), + ("monitor", "Monitor"), + ("more-horizontal", "More Horizontal"), + ("more-vertical", "More Vertical"), + ("mountain", "Mountain"), + ("mouse-pointer-disabled", "Mouse Pointer Disabled"), + ("mouse-pointer", "Mouse Pointer"), + ("mozilla", "Mozilla"), + ("new", "New"), + ("nightly", "Nightly"), + ("notes", "Notes"), + ("notifications-disabled", "Notifications Disabled"), + ("notifications", "Notifications"), + ("open-in-new", "Open In New"), + ("open", "Open"), + ("opensource", "Opensource"), + ("overflow", "Overflow"), + ("paperclip-narrow", "Paperclip Narrow"), + ("paperclip", "Paperclip"), + ("paste", "Paste"), + ("pause-white", "Pause White"), + ("pause", "Pause"), + ("performance", "Performance"), + ("photon", "Photon"), + ("pin-remove", "Pin Remove"), + ("pin", "Pin"), + ("play-white", "Play White"), + ("play", "Play"), + ("plugin-disabled", "Plugin Disabled"), + ("plugin", "Plugin"), + ("plus", "Plus"), + ("pocket-list", "Pocket List"), + ("pocket-remove", "Pocket Remove"), + ("pocket", "Pocket"), + ("popular", "Popular"), + ("popup-block", "Popup Block"), + ("preferences", "Preferences"), + ("pricetag", "Pricetag"), + ("pricetag-white", "Pricetag White"), + ("printer", "Printer"), + ("privacy", "Privacy"), + ("private-browsing", "Private Browsing"), + ("protocol", "Protocol"), + ("proton", "Proton"), + ("query", "Query"), + ("quit", "Quit"), + ("quote", "Quote"), + ("read", "Read"), + ("reader-mode", "Reader Mode"), + ("redo", "Redo"), + ("refresh", "Refresh"), + ("release-notes", "Release Notes"), + ("reminders", "Reminders"), + ("report-narrow", "Report Narrow"), + ("report", "Report"), + ("resources", "Resources"), + ("restore-session", "Restore Session"), + ("rhombus-layers", "Rhombus Layers"), + ("rhombus-layers-white", "Rhombus Layers White"), + ("screen-share-disabled", "Screen Share Disabled"), + ("screen-share", "Screen Share"), + ("screenshot", "Screenshot"), + ("search-white", "Search White"), + ("search", "Search"), + ("secure-broken", "Secure Broken"), + ("secure-mixed", "Secure Mixed"), + ("secure", "Secure"), + ("security", "Security"), + ("send-to-device", "Send To Device"), + ("send", "Send"), + ("settings", "Settings"), + ("share-windows", "Share Windows"), + ("share", "Share"), + ("shield", "Shield"), + ("sidebar", "Sidebar"), + ("sign-in", "Sign In"), + ("sign-up", "Sign Up"), + ("sound-off", "Sound Off"), + ("sound-on", "Sound On"), + ("star", "Star"), + ("stop", "Stop"), + ("store-data-disabled", "Store Data Disabled"), + ("store-data", "Store Data"), + ("sub-item", "Sub Item"), + ("subscribe", "Subscribe"), + ("sync", "Sync"), + ("tab-mobile", "Tab Mobile"), + ("tab-new", "Tab New"), + ("tab", "Tab"), + ("tablet", "Tablet"), + ("thumbs-up-narrow", "Thumbs Up Narrow"), + ("thumbs-up", "Thumbs Up"), + ("toggle-off", "Toggle Off"), + ("toggle-on", "Toggle On"), + ("toolbar", "Toolbar"), + ("top-sites", "Top Sites"), + ("tracing-protection-disabled", "Tracing Protection Disabled"), + ("tracking-protection", "Tracking Protection"), + ("trash-narrow", "Trash Narrow"), + ("trash", "Trash"), + ("turbo-mode", "Turbo Mode"), + ("undo", "Undo"), + ("update", "Update"), + ("user", "User"), + ("video-card", "Video Card"), + ("video-recoder-disabled", "Video Recoder Disabled"), + ("video-recorder", "Video Recorder"), + ("warning", "Warning"), + ("watch", "Watch"), + ("web-of-things", "Web Of Things"), + ("web-vr", "Web Vr"), + ("window-new", "Window New"), + ("window", "Window"), + ("zoom-in", "Zoom In"), + ("zoom-out", "Zoom Out"), + ], + "inline_form": True, + "required": False, + }, + ), + 13: ("wagtail.blocks.CharBlock", (), {"label": "Heading"}), + 14: ("wagtail.blocks.RichTextBlock", (), {"features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"]}), + 15: ("wagtail.blocks.StructBlock", [[("icon", 12), ("heading", 13), ("text", 14)]], {}), + 16: ("wagtail.blocks.CharBlock", (), {"label": "Link Text"}), + 17: ( + "wagtail.blocks.ChoiceBlock", + [], + { + "choices": [ + ("page", "Page"), + ("file", "File"), + ("custom_url", "Custom URL"), + ("email", "Email"), + ("anchor", "Anchor"), + ("phone", "Phone"), + ], + "classname": "link_choice_type_selector", + "label": "Link to", + "required": False, + }, + ), + 18: ("wagtail.blocks.PageChooserBlock", (), {"form_classname": "page_link", "label": "Page", "required": False}), + 19: ("wagtail.documents.blocks.DocumentChooserBlock", (), {"form_classname": "file_link", "label": "File", "required": False}), + 20: ( + "wagtail.blocks.CharBlock", + (), + { + "form_classname": "custom_url_link url_field", + "label": "Custom URL", + "max_length": 300, + "required": False, + "validators": [wagtail.admin.forms.choosers.URLOrAbsolutePathValidator()], + }, + ), + 21: ("wagtail.blocks.CharBlock", (), {"form_classname": "anchor_link", "label": "#", "max_length": 300, "required": False}), + 22: ("wagtail.blocks.EmailBlock", (), {"required": False}), + 23: ("wagtail.blocks.CharBlock", (), {"form_classname": "phone_link", "label": "Phone", "max_length": 30, "required": False}), + 24: ( + "wagtail.blocks.BooleanBlock", + (), + {"form_classname": "new_window_toggle", "label": "Open in new window", "required": False}, + ), + 25: ( + "wagtail.blocks.StructBlock", + [ + [ + ("link_to", 17), + ("page", 18), + ("file", 19), + ("custom_url", 20), + ("anchor", 21), + ("email", 22), + ("phone", 23), + ("new_window", 24), + ] + ], + {}, + ), + 26: ("wagtail.blocks.StructBlock", [[("label", 16), ("link", 25)]], {}), + 27: ("wagtail.blocks.ListBlock", (26,), {"default": [], "max_num": 1, "min_num": 0}), + 28: ("wagtail.blocks.StructBlock", [[("logo", 7), ("heading", 13), ("text", 14), ("button", 27)]], {}), + 29: ("wagtail.snippets.blocks.SnippetChooserBlock", ("mozorg.Person",), {}), + 30: ("wagtail.blocks.StructBlock", [[("person", 29), ("link", 27)]], {}), + 31: ("wagtail.blocks.StreamBlock", [[("icon_card", 15), ("logo_card", 28), ("person_card", 30)]], {"max_num": 4, "min_num": 1}), + 32: ("wagtail.blocks.StructBlock", [[("settings", 11), ("cards", 31)]], {}), + 33: ("wagtail.images.blocks.ImageChooserBlock", (), {"required": False}), + 34: ( + "wagtail.blocks.StructBlock", + [ + [ + ("image", 33), + ("heading", 13), + ("statistic1_value", 14), + ("statistic1_label", 14), + ("statistic2_value", 14), + ("statistic2_label", 14), + ] + ], + {}, + ), + 35: ("wagtail.blocks.StreamBlock", [[("stat", 34)]], {}), + 36: ("wagtail.blocks.StructBlock", [[("stats", 35)]], {}), + 37: ("wagtail.blocks.ListBlock", (7,), {"default": [], "max_num": 8, "min_num": 1}), + 38: ("wagtail.blocks.StructBlock", [[("people_photos", 37), ("text", 14)]], {}), + 39: ("wagtail.contrib.table_block.blocks.TableBlock", (), {}), + 40: ("wagtail.blocks.StructBlock", [[("heading_text", 13), ("supporting_text", 14)]], {}), + 41: ("wagtail.blocks.ListBlock", (40,), {"min_num": 0}), + 42: ("wagtail.blocks.StructBlock", [[("heading_text", 13), ("subheading_text", 14), ("second_column", 41)]], {}), + 43: ( + "wagtail.blocks.StreamBlock", + [[("figure_block", 8), ("cards_list", 32), ("stats_list_block", 36), ("people_list", 38), ("table", 39), ("two_column", 42)]], + {"required": False}, + ), + 44: ( + "wagtail.blocks.StructBlock", + [ + [ + ("settings", 2), + ("superheading_text", 3), + ("heading_text", 4), + ("subheading_text", 3), + ("section_content", 43), + ("action", 27), + ] + ], + {}, + ), + 45: ( + "wagtail.blocks.CharBlock", + (), + {"help_text": "Optional: Add an ID to make this section linkable from navigation", "max_length": 100, "required": False}, + ), + 46: ("wagtail.blocks.StructBlock", [[("anchor_id", 45)]], {}), + 47: ( + "wagtail.blocks.RichTextBlock", + (), + { + "features": ["bold", "italic", "link", "superscript", "subscript", "strikethrough"], + "help_text": "Use bold to make parts of this text black.", + }, + ), + 48: ("wagtail.blocks.StructBlock", [[("settings", 46), ("heading", 47), ("button", 27)]], {}), + }, + null=True, + ), + ), + ] diff --git a/bedrock/mozorg/models.py b/bedrock/mozorg/models.py index ddd3bd3f5e6..75cf79e694f 100644 --- a/bedrock/mozorg/models.py +++ b/bedrock/mozorg/models.py @@ -241,6 +241,47 @@ def __str__(self): return f"{self.notification_text} - Notification Snippet" +@register_snippet +class Person(TranslatableMixin): + image = models.ForeignKey( + "cms.BedrockImage", + null=True, + blank=False, + on_delete=models.SET_NULL, + related_name="+", + ) + name = models.CharField( + max_length=255, + blank=False, + ) + position = models.CharField( + max_length=255, + blank=False, + ) + description = models.TextField( + blank=True, + ) + + panels = [ + MultiFieldPanel( + [ + FieldPanel("image", heading="Image"), + FieldPanel("name", heading="Name"), + FieldPanel("position", heading="Position"), + FieldPanel("description", heading="Description"), + ], + heading="Person", + ), + ] + + class Meta(TranslatableMixin.Meta): + verbose_name = "Person" + verbose_name_plural = "People" + + def __str__(self): + return f"{self.name} - {self.position}" + + class LeadershipPage(AbstractBedrockCMSPage): max_count = 1 # Ensure there's only one instance of this page subpage_types = [] # This page type cannot have any children diff --git a/bedrock/mozorg/templates/mozorg/cms/anonym/blocks/list-item.html b/bedrock/mozorg/templates/mozorg/cms/anonym/blocks/list-item.html new file mode 100644 index 00000000000..2bb38d4ed8c --- /dev/null +++ b/bedrock/mozorg/templates/mozorg/cms/anonym/blocks/list-item.html @@ -0,0 +1,10 @@ +{# + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at https://mozilla.org/MPL/2.0/. +#} + +
{{ value.subheading_text }}
+