Created
March 6, 2025 08:59
-
-
Save flodolo/cb7329e74c52532eb4575f4a9754687a to your computer and use it in GitHub Desktop.
megalist migration
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Any copyright is dedicated to the Public Domain. | |
# http://creativecommons.org/publicdomain/zero/1.0/ | |
from fluent.migrate.helpers import transforms_from | |
from fluent.migrate.transforms import TransformPattern | |
import fluent.syntax.ast as FTL | |
class REPLACE_TOTAL(TransformPattern): | |
def visit_TextElement(self, node): | |
node.value = node.value.replace("$count", "$total") | |
return node | |
def visit_SelectExpression(self, node): | |
if node.selector.id.name == "count": | |
node.selector.id.name = "total" | |
return node | |
def migrate(ctx): | |
"""Bug 1948988 - Expose contextual-manager.ftl to localization, part {index}.""" | |
source_autofill = "/browser/browser/preferences/formAutofill.ftl" | |
source_logins = "browser/browser/aboutLogins.ftl" | |
target = "toolkit/toolkit/passwordmgr/contextual-manager.ftl" | |
ctx.add_transforms( | |
target, | |
target, | |
[ | |
FTL.Message( | |
id=FTL.Identifier("contextual-manager-passwords-remove-all-confirm"), | |
value=REPLACE_TOTAL( | |
source_logins, | |
"about-logins-confirm-remove-all-dialog-checkbox-label2", | |
), | |
), | |
# Capitalization difference | |
FTL.Message( | |
id=FTL.Identifier( | |
"contextual-manager-passwords-remove-all-confirm-button" | |
), | |
value=REPLACE_TOTAL( | |
source_logins, | |
"about-logins-confirm-remove-all-dialog-confirm-button-label", | |
), | |
), | |
], | |
) | |
ctx.add_transforms( | |
target, | |
target, | |
transforms_from( | |
""" | |
# Capitalization difference | |
contextual-manager-filter-input = | |
.placeholder = {COPY_PATTERN(from_path, "about-logins-login-filter2.placeholder")} | |
.key = {COPY_PATTERN(from_path, "about-logins-login-filter2.key")} | |
.aria-label = {COPY_PATTERN(from_path, "about-logins-login-filter2.placeholder")} | |
contextual-manager-command-copy = {COPY_PATTERN(from_path, "login-item-copy-username-button-text")} | |
contextual-manager-command-edit = {COPY_PATTERN(from_path, "login-item-edit-button")} | |
contextual-manager-command-save = {COPY_PATTERN(from_path, "login-item-save-new-button")} | |
contextual-manager-command-cancel = {COPY_PATTERN(from_path, "login-item-cancel-button")} | |
contextual-manager-passwords-section-label = {COPY_PATTERN(from_path, "about-logins-page-title-name")} | |
contextual-manager-passwords-command-create = {COPY_PATTERN(from_path, "create-login-button.title")} | |
# Capitalization difference | |
contextual-manager-passwords-command-import-from-browser = {COPY_PATTERN(from_path, "about-logins-menu-menuitem-import-from-another-browser")} | |
# Capitalization difference | |
contextual-manager-passwords-command-import = {COPY_PATTERN(from_path, "about-logins-menu-menuitem-import-from-a-file")} | |
# Capitalization difference | |
contextual-manager-passwords-command-export = {COPY_PATTERN(from_path, "about-logins-menu-menuitem-export-logins2")} | |
contextual-manager-passwords-command-help = {COPY_PATTERN(from_path, "about-logins-menu-menuitem-help")} | |
contextual-manager-passwords-export-os-auth-dialog-message-win = {COPY_PATTERN(from_path, "about-logins-export-password-os-auth-dialog-message2-win")} | |
contextual-manager-passwords-export-os-auth-dialog-message-macosx = {COPY_PATTERN(from_path, "about-logins-export-password-os-auth-dialog-message2-macosx")} | |
contextual-manager-passwords-reveal-password-os-auth-dialog-message-win = {COPY_PATTERN(from_path, "about-logins-reveal-password-os-auth-dialog-message-win")} | |
contextual-manager-passwords-reveal-password-os-auth-dialog-message-macosx = {COPY_PATTERN(from_path, "about-logins-reveal-password-os-auth-dialog-message-macosx")} | |
contextual-manager-passwords-edit-password-os-auth-dialog-message-win = {COPY_PATTERN(from_path, "about-logins-edit-login-os-auth-dialog-message2-win")} | |
contextual-manager-passwords-edit-password-os-auth-dialog-message-macosx = {COPY_PATTERN(from_path, "about-logins-edit-login-os-auth-dialog-message2-macosx")} | |
contextual-manager-passwords-copy-password-os-auth-dialog-message-win = {COPY_PATTERN(from_path, "about-logins-copy-password-os-auth-dialog-message-win")} | |
contextual-manager-passwords-copy-password-os-auth-dialog-message-macosx = {COPY_PATTERN(from_path, "about-logins-copy-password-os-auth-dialog-message-macosx")} | |
contextual-manager-passwords-import-file-picker-import-button = {COPY_PATTERN(from_path, "about-logins-import-file-picker-import-button")} | |
contextual-manager-passwords-import-file-picker-csv-filter-title = {COPY_PATTERN(from_path, "about-logins-import-file-picker-csv-filter-title")} | |
contextual-manager-passwords-import-file-picker-tsv-filter-title = {COPY_PATTERN(from_path, "about-logins-import-file-picker-tsv-filter-title")} | |
contextual-manager-passwords-import-success-button = {COPY_PATTERN(from_path, "about-logins-import-dialog-done")} | |
contextual-manager-passwords-import-error-button-cancel = {COPY_PATTERN(from_path, "about-logins-import-dialog-error-cancel")} | |
contextual-manager-passwords-export-success-button = {COPY_PATTERN(from_path, "about-logins-import-dialog-done")} | |
contextual-manager-export-passwords-dialog-confirm-button = {COPY_PATTERN(from_path, "about-logins-confirm-export-dialog-confirm-button2")} | |
contextual-manager-passwords-export-file-picker-title = {COPY_PATTERN(from_path, "about-logins-export-file-picker-title2")} | |
contextual-manager-passwords-export-file-picker-export-button = {COPY_PATTERN(from_path, "about-logins-export-file-picker-export-button")} | |
contextual-manager-passwords-export-file-picker-csv-filter-title = {COPY_PATTERN(from_path, "about-logins-import-file-picker-csv-filter-title")} | |
contextual-manager-passwords-count = {COPY_PATTERN(from_path, "login-list-count2")} | |
contextual-manager-passwords-filtered-count = {COPY_PATTERN(from_path, "login-list-filtered-count2")} | |
contextual-manager-passwords-update-password-success-button = {COPY_PATTERN(from_path, "about-logins-import-dialog-done")} | |
contextual-manager-passwords-delete-password-success-button = {COPY_PATTERN(from_path, "about-logins-import-dialog-done")} | |
contextual-manager-passwords-remove-login-card-title = {COPY_PATTERN(from_path, "about-logins-confirm-delete-dialog-title")} | |
contextual-manager-passwords-remove-login-card-remove-button = {COPY_PATTERN(from_path, "about-logins-login-item-remove-button")} | |
contextual-manager-passwords-remove-login-card-cancel-button = {COPY_PATTERN(from_path, "login-item-cancel-button")} | |
contextual-manager-passwords-create-label = | |
.label = {COPY_PATTERN(from_path, "create-login-button.title")} | |
contextual-manager-passwords-list-label = | |
.aria-label = {COPY_PATTERN(from_path, "about-logins-page-title-name")} | |
contextual-manager-copy-icon = | |
.alt = {COPY_PATTERN(from_path, "login-item-copy-password-button-text")} | |
""", | |
from_path=source_logins, | |
), | |
) | |
ctx.add_transforms( | |
target, | |
target, | |
transforms_from( | |
""" | |
contextual-manager-card-number-label = {COPY_PATTERN(from_path, "autofill-card-number")} | |
contextual-manager-card-holder-label = {COPY_PATTERN(from_path, "autofill-card-name-on-card")} | |
contextual-manager-addresses-section-label = {COPY_PATTERN(from_path, "autofill-manage-addresses-list-header")} | |
contextual-manager-address-name-label = {COPY_PATTERN(from_path, "autofill-address-name")} | |
contextual-manager-address-phone-label = {COPY_PATTERN(from_path, "autofill-address-tel")} | |
contextual-manager-address-email-label = {COPY_PATTERN(from_path, "autofill-address-email")} | |
""", | |
from_path=source_autofill, | |
), | |
) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment