Patch by kpatenio <kpatenio@mozilla.com>. 1. Allows for selecting a custom path or the default (Documents) path for saving backups. The selection is passed from the "turn-on-scheduled-backups" dialog to "BackupService". 2. After pressing the "Choose" button in the dialog, a filepicker will appear so that a folder can be selected. 3. Once the dialog is confirmed, the absolute path is saved to a pref called "browser.backup.location" and saved in the service state. Other changes: - Added the Documents folder as the default save location - Added an onUpdate function for "browser.backup.location" that passes the updated BackupService state to registered widgets (backup settings section, dialogs) - Added Storybook entries and tests for the newly updated input and filepicker Figma: https://www.figma.com/design/vNbX4c0ws0L1qr0mxpKvsW/Fx-Backup?node-id=147-4568&t=tILUMKfg8c6Ed1Ul-0 (turn on backup dialog) Differential Revision: https://phabricator.services.mozilla.com/D210850
60 lines
1.7 KiB
JavaScript
60 lines
1.7 KiB
JavaScript
/* 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 http://mozilla.org/MPL/2.0/. */
|
|
|
|
// eslint-disable-next-line import/no-unresolved
|
|
import { html } from "lit.all.mjs";
|
|
import "./backup-settings.mjs";
|
|
|
|
window.MozXULElement.insertFTLIfNeeded("locales-preview/backupSettings.ftl");
|
|
window.MozXULElement.insertFTLIfNeeded("branding/brand.ftl");
|
|
|
|
export default {
|
|
title: "Domain-specific UI Widgets/Backup/Backup Settings",
|
|
component: "backup-settings",
|
|
argTypes: {},
|
|
};
|
|
|
|
const Template = ({ backupServiceState }) => html`
|
|
<backup-settings .backupServiceState=${backupServiceState}></backup-settings>
|
|
`;
|
|
|
|
export const BackingUpNotInProgress = Template.bind({});
|
|
BackingUpNotInProgress.args = {
|
|
backupServiceState: {
|
|
backupDirPath: "/Some/User/Documents",
|
|
backupInProgress: false,
|
|
defaultParent: {
|
|
path: "/Some/User/Documents",
|
|
fileName: "Documents",
|
|
},
|
|
scheduledBackupsEnabled: false,
|
|
},
|
|
};
|
|
|
|
export const BackingUpInProgress = Template.bind({});
|
|
BackingUpInProgress.args = {
|
|
backupServiceState: {
|
|
backupDirPath: "/Some/User/Documents",
|
|
backupInProgress: true,
|
|
defaultParent: {
|
|
path: "/Some/User/Documents",
|
|
fileName: "Documents",
|
|
},
|
|
scheduledBackupsEnabled: false,
|
|
},
|
|
};
|
|
|
|
export const ScheduledBackupsEnabled = Template.bind({});
|
|
ScheduledBackupsEnabled.args = {
|
|
backupServiceState: {
|
|
backupDirPath: "/Some/User/Documents",
|
|
backupInProgress: false,
|
|
defaultParent: {
|
|
path: "/Some/User/Documents",
|
|
fileName: "Documents",
|
|
},
|
|
scheduledBackupsEnabled: true,
|
|
},
|
|
};
|