Bug 1806951 - P3. Move necessary FormAutofillUtils to shared module. r=sgalich,dimi

Differential Revision: https://phabricator.services.mozilla.com/D174623
This commit is contained in:
Issam Mani 2023-05-02 09:42:29 +00:00
Родитель 182fae7345
Коммит 8a227dfff2
32 изменённых файлов: 44 добавлений и 46 удалений

Просмотреть файл

@ -11,7 +11,7 @@ const { FormAutofill } = ChromeUtils.importESModule(
"resource://autofill/FormAutofill.sys.mjs"
);
const { FormAutofillUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
);
class EditAutofillForm {

Просмотреть файл

@ -25,7 +25,7 @@ const { AutofillTelemetry } = ChromeUtils.import(
ChromeUtils.defineESModuleGetters(this, {
CreditCard: "resource://gre/modules/CreditCard.sys.mjs",
FormAutofillUtils: "resource://autofill/FormAutofillUtils.sys.mjs",
FormAutofillUtils: "resource://gre/modules/shared/FormAutofillUtils.sys.mjs",
OSKeyStore: "resource://gre/modules/OSKeyStore.sys.mjs",
formAutofillStorage: "resource://autofill/FormAutofillStorage.sys.mjs",
});

Просмотреть файл

@ -1,7 +1,7 @@
"use strict";
const { FormAutofillUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
);
ChromeUtils.defineESModuleGetters(this, {

Просмотреть файл

@ -66,7 +66,7 @@ async function run_test(path, dirs) {
"resource://autofill/FormAutofillHeuristics.sys.mjs"
);
const { FormAutofillUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
);
let eligibleFields = [];

Просмотреть файл

@ -11,7 +11,7 @@ let defaultDisabledTextColor;
let expectingPopup = null;
const { FormAutofillUtils } = SpecialPowers.ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
);
async function sleep(ms = 500, reason = "Intentionally wait for UI ready") {

Просмотреть файл

@ -6,7 +6,7 @@ const { FormAutofill } = ChromeUtils.importESModule(
"resource://autofill/FormAutofill.sys.mjs"
);
const { FormAutofillUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
);
const { OSKeyStoreTestUtils } = ChromeUtils.importESModule(
"resource://testing-common/OSKeyStoreTestUtils.sys.mjs"

Просмотреть файл

@ -35,7 +35,7 @@ add_task(async function test_DE_is_valid_testcase() {
});
let chromeScript = SpecialPowers.loadChromeScript(function test_country_data() {
/* eslint-env mozilla/chrome-script */
const {AddressDataLoader} = ChromeUtils.import("resource://autofill/FormAutofillUtils.jsm");
const {AddressDataLoader} = ChromeUtils.importESModule("resource://gre/modules/shared/FormAutofillUtils.sys.mjs");
let data = AddressDataLoader.getData("DE");
addMessageListener("CheckSubKeys", () => {
return !data.defaultLocale.sub_keys;

Просмотреть файл

@ -223,7 +223,7 @@ async function runHeuristicsTest(patterns, fixturePathPrefix) {
"resource://autofill/FormAutofillHeuristics.sys.mjs"
));
({ AddressDataLoader, FormAutofillUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
));
({ LabelUtils } = ChromeUtils.importESModule(
"resource://gre/modules/shared/LabelUtils.sys.mjs"

Просмотреть файл

@ -18,7 +18,7 @@ const SUPPORT_COUNTRIES_TESTCASES = [
var AddressDataLoader, FormAutofillUtils;
add_setup(async () => {
({ AddressDataLoader, FormAutofillUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
));
});

Просмотреть файл

@ -3,7 +3,7 @@
var FormAutofillUtils;
add_task(async function() {
({ FormAutofillUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
));
});

Просмотреть файл

@ -7,7 +7,7 @@
var FormAutofillNameUtils;
add_setup(async () => {
({ FormAutofillNameUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillNameUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillNameUtils.sys.mjs"
));
});

Просмотреть файл

@ -3,7 +3,7 @@
var FormAutofillUtils;
add_setup(async () => {
({ FormAutofillUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
));
});

Просмотреть файл

@ -7,7 +7,7 @@
var FormAutofillNameUtils;
add_task(async function() {
({ FormAutofillNameUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillNameUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillNameUtils.sys.mjs"
));
});

Просмотреть файл

@ -3,7 +3,7 @@
var FormAutofillUtils;
add_setup(async () => {
({ FormAutofillUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
));
});

Просмотреть файл

@ -10,7 +10,7 @@ const { FormAutofillHandler } = ChromeUtils.importESModule(
// Bug 1762063 - we need to fix this pattern of having to wrap destructuring calls in parentheses.
// We can't do a standard destructuring call because FormAutofillUtils is already declared as a var in head.js
({ FormAutofillUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
));
const { FIELD_STATES } = FormAutofillUtils;
const PREVIEW = FIELD_STATES.PREVIEW;

Просмотреть файл

@ -3,7 +3,7 @@
var FormAutofillUtils;
add_setup(async () => {
({ FormAutofillUtils } = ChromeUtils.importESModule(
"resource://autofill/FormAutofillUtils.sys.mjs"
"resource://gre/modules/shared/FormAutofillUtils.sys.mjs"
));
});

Просмотреть файл

@ -7,7 +7,7 @@ import { FormAutofill } from "resource://autofill/FormAutofill.sys.mjs";
const lazy = {};
ChromeUtils.defineESModuleGetters(lazy, {
FormAutofillUtils: "resource://autofill/FormAutofillUtils.sys.mjs",
FormAutofillUtils: "resource://gre/modules/shared/FormAutofillUtils.sys.mjs",
PhoneNumber: "resource://autofill/phonenumberutils/PhoneNumber.sys.mjs",
});

Просмотреть файл

@ -3,7 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
import { FormAutofillCreditCardSection } from "resource://autofill/FormAutofillHandler.sys.mjs";
import { FormAutofillUtils } from "resource://autofill/FormAutofillUtils.sys.mjs";
import { FormAutofillUtils } from "resource://gre/modules/shared/FormAutofillUtils.sys.mjs";
const { FIELD_STATES } = FormAutofillUtils;

Просмотреть файл

@ -37,7 +37,7 @@ import {
const lazy = {};
ChromeUtils.defineESModuleGetters(lazy, {
FormAutofillUtils: "resource://autofill/FormAutofillUtils.sys.mjs",
FormAutofillUtils: "resource://gre/modules/shared/FormAutofillUtils.sys.mjs" ,
FormLikeFactory: "resource://gre/modules/FormLikeFactory.sys.mjs",
LabelUtils: "resource://gre/modules/shared/LabelUtils.sys.mjs",
});

Просмотреть файл

@ -8,7 +8,7 @@ ChromeUtils.defineESModuleGetters(lazy, {
AutoCompleteChild: "resource://gre/actors/AutoCompleteChild.sys.mjs",
FormAutofill: "resource://autofill/FormAutofill.sys.mjs",
FormAutofillContent: "resource://autofill/FormAutofillContent.sys.mjs",
FormAutofillUtils: "resource://autofill/FormAutofillUtils.sys.mjs",
FormAutofillUtils: "resource://gre/modules/shared/FormAutofillUtils.sys.mjs",
setTimeout: "resource://gre/modules/Timer.sys.mjs",
});

Просмотреть файл

@ -20,7 +20,7 @@ ChromeUtils.defineESModuleGetters(lazy, {
CreditCardResult: "resource://autofill/ProfileAutoCompleteResult.sys.mjs",
FormAutofill: "resource://autofill/FormAutofill.sys.mjs",
FormAutofillHandler: "resource://autofill/FormAutofillHandler.sys.mjs",
FormAutofillUtils: "resource://autofill/FormAutofillUtils.sys.mjs",
FormAutofillUtils: "resource://gre/modules/shared/FormAutofillUtils.sys.mjs",
FormLikeFactory: "resource://gre/modules/FormLikeFactory.sys.mjs",
InsecurePasswordUtils: "resource://gre/modules/InsecurePasswordUtils.sys.mjs",
PrivateBrowsingUtils: "resource://gre/modules/PrivateBrowsingUtils.sys.mjs",

Просмотреть файл

@ -8,7 +8,7 @@
import { AppConstants } from "resource://gre/modules/AppConstants.sys.mjs";
import { FormAutofill } from "resource://autofill/FormAutofill.sys.mjs";
import { FormAutofillUtils } from "resource://autofill/FormAutofillUtils.sys.mjs";
import { FormAutofillUtils } from "resource://gre/modules/shared/FormAutofillUtils.sys.mjs";
import { XPCOMUtils } from "resource://gre/modules/XPCOMUtils.sys.mjs";
const lazy = {};

Просмотреть файл

@ -14,7 +14,7 @@ const lazy = {};
ChromeUtils.defineESModuleGetters(lazy, {
CreditCard: "resource://gre/modules/CreditCard.sys.mjs",
FormAutofillUtils: "resource://autofill/FormAutofillUtils.sys.mjs",
FormAutofillUtils: "resource://gre/modules/shared/FormAutofillUtils.sys.mjs",
LabelUtils: "resource://gre/modules/shared/LabelUtils.sys.mjs",
creditCardRulesets: "resource://autofill/CreditCardRuleset.sys.mjs",
});

Просмотреть файл

@ -28,7 +28,7 @@
// We expose a singleton from this module. Some tests may import the
// constructor via a backstage pass.
import { FormAutofill } from "resource://autofill/FormAutofill.sys.mjs";
import { FormAutofillUtils } from "resource://autofill/FormAutofillUtils.sys.mjs";
import { FormAutofillUtils } from "resource://gre/modules/shared/FormAutofillUtils.sys.mjs";
import { XPCOMUtils } from "resource://gre/modules/XPCOMUtils.sys.mjs";
const lazy = {};

Просмотреть файл

@ -15,7 +15,7 @@ const MANAGE_CREDITCARDS_URL =
"chrome://formautofill/content/manageCreditCards.xhtml";
import { FormAutofill } from "resource://autofill/FormAutofill.sys.mjs";
import { FormAutofillUtils } from "resource://autofill/FormAutofillUtils.sys.mjs";
import { FormAutofillUtils } from "resource://gre/modules/shared/FormAutofillUtils.sys.mjs";
import { AppConstants } from "resource://gre/modules/AppConstants.sys.mjs";
const lazy = {};

Просмотреть файл

@ -133,8 +133,9 @@ const lazy = {};
ChromeUtils.defineESModuleGetters(lazy, {
CreditCard: "resource://gre/modules/CreditCard.sys.mjs",
FormAutofillNameUtils: "resource://autofill/FormAutofillNameUtils.sys.mjs",
FormAutofillUtils: "resource://autofill/FormAutofillUtils.sys.mjs",
FormAutofillNameUtils:
"resource://gre/modules/shared/FormAutofillNameUtils.sys.mjs",
FormAutofillUtils: "resource://gre/modules/shared/FormAutofillUtils.sys.mjs",
OSKeyStore: "resource://gre/modules/OSKeyStore.sys.mjs",
PhoneNumber: "resource://autofill/phonenumberutils/PhoneNumber.sys.mjs",
});

Просмотреть файл

@ -8,7 +8,7 @@ const lazy = {};
ChromeUtils.defineESModuleGetters(lazy, {
CreditCard: "resource://gre/modules/CreditCard.sys.mjs",
FormAutofillUtils: "resource://autofill/FormAutofillUtils.sys.mjs",
FormAutofillUtils: "resource://gre/modules/shared/FormAutofillUtils.sys.mjs",
});
XPCOMUtils.defineLazyGetter(

Просмотреть файл

@ -9,7 +9,7 @@
import { AppConstants } from "resource://gre/modules/AppConstants.sys.mjs";
import { FormAutofill } from "resource://autofill/FormAutofill.sys.mjs";
import { FormAutofillUtils } from "resource://autofill/FormAutofillUtils.sys.mjs";
import { FormAutofillUtils } from "resource://gre/modules/shared/FormAutofillUtils.sys.mjs";
import { XPCOMUtils } from "resource://gre/modules/XPCOMUtils.sys.mjs";
const { AutofillTelemetry } = ChromeUtils.import(

Просмотреть файл

@ -19,7 +19,7 @@ const lazy = {};
ChromeUtils.defineESModuleGetters(lazy, {
CreditCard: "resource://gre/modules/CreditCard.sys.mjs",
FormAutofillUtils: "resource://autofill/FormAutofillUtils.sys.mjs",
FormAutofillUtils: "resource://gre/modules/shared/FormAutofillUtils.sys.mjs",
JSONFile: "resource://gre/modules/JSONFile.sys.mjs",
OSKeyStore: "resource://gre/modules/OSKeyStore.sys.mjs",
});

Просмотреть файл

@ -10,6 +10,8 @@ with Files("**"):
BUG_COMPONENT = ("Toolkit", "Form Autofill")
EXTRA_JS_MODULES.shared += [
"shared/FormAutofillNameUtils.sys.mjs",
"shared/FormAutofillUtils.sys.mjs",
"shared/LabelUtils.sys.mjs",
]

Просмотреть файл

@ -2,6 +2,12 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
import { FormAutofill } from "resource://autofill/FormAutofill.sys.mjs";
import { XPCOMUtils } from "resource://gre/modules/XPCOMUtils.sys.mjs";
import { CreditCard } from "resource://gre/modules/CreditCard.sys.mjs";
import { FormAutofillNameUtils } from "resource://gre/modules/shared/FormAutofillNameUtils.sys.mjs";
import { OSKeyStore } from "resource://gre/modules/OSKeyStore.sys.mjs";
export let FormAutofillUtils;
const ADDRESS_METADATA_PATH = "resource://autofill/addressmetadata/";
@ -56,17 +62,6 @@ const ELIGIBLE_INPUT_TYPES = ["text", "email", "tel", "number", "month"];
// attacks that fill the user's hard drive(s).
const MAX_FIELD_VALUE_LENGTH = 200;
import { FormAutofill } from "resource://autofill/FormAutofill.sys.mjs";
import { XPCOMUtils } from "resource://gre/modules/XPCOMUtils.sys.mjs";
const lazy = {};
ChromeUtils.defineESModuleGetters(lazy, {
CreditCard: "resource://gre/modules/CreditCard.sys.mjs",
FormAutofillNameUtils: "resource://autofill/FormAutofillNameUtils.sys.mjs",
OSKeyStore: "resource://gre/modules/OSKeyStore.sys.mjs",
});
export let AddressDataLoader = {
// Status of address data loading. We'll load all the countries with basic level 1
// information while requesting conutry information, and set country to true.
@ -274,11 +269,11 @@ FormAutofillUtils = {
},
isCCNumber(ccNumber) {
return lazy.CreditCard.isValidNumber(ccNumber);
return CreditCard.isValidNumber(ccNumber);
},
ensureLoggedIn(promptMessage) {
return lazy.OSKeyStore.ensureLoggedIn(
return OSKeyStore.ensureLoggedIn(
this._reauthEnabledByUser && promptMessage ? promptMessage : false
);
},
@ -289,7 +284,7 @@ FormAutofillUtils = {
* @returns {Array}
*/
getCreditCardNetworks() {
return lazy.CreditCard.getSupportedNetworks();
return CreditCard.getSupportedNetworks();
},
getCategoryFromFieldName(fieldName) {
@ -346,7 +341,7 @@ FormAutofillUtils = {
}
if (!("name" in address)) {
address.name = lazy.FormAutofillNameUtils.joinNameParts({
address.name = FormAutofillNameUtils.joinNameParts({
given: address["given-name"],
middle: address["additional-name"],
family: address["family-name"],
@ -1013,7 +1008,7 @@ FormAutofillUtils = {
for (let option of options) {
if (
[option.text, option.label, option.value].some(
s => lazy.CreditCard.getNetworkFromName(s) == network
s => CreditCard.getNetworkFromName(s) == network
)
) {
return option;