/* This file is part of GNU Taler (C) 2021 Taler Systems S.A. GNU Taler is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version. GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Taler; see the file COPYING. If not, see */ /** * * @author Sebastian Javier Marchano (sebasjm) */ import { ProviderPaymentType } from '@gnu-taler/taler-wallet-core'; import { FunctionalComponent } from 'preact'; import { ProviderView as TestedComponent } from './ProviderDetailPage'; export default { title: 'popup/backup/details', component: TestedComponent, argTypes: { onRetry: { action: 'onRetry' }, onDelete: { action: 'onDelete' }, onBack: { action: 'onBack' }, } }; function createExample(Component: FunctionalComponent, props: Partial) { const r = (args: any) => r.args = props return r } export const NotDefined = createExample(TestedComponent, { currency: 'ARS', }); export const Active = createExample(TestedComponent, { currency: 'ARS', info: { "active": true, "syncProviderBaseUrl": "http://sync.taler:9967/", "lastSuccessfulBackupTimestamp": { "t_ms": 1625063925078 }, "paymentProposalIds": [ "43Q5WWRJPNS4SE9YKS54H9THDS94089EDGXW9EHBPN6E7M184XEG" ], "paymentStatus": { "type": ProviderPaymentType.Paid, "paidUntil": { "t_ms": 1656599921000 } }, "terms": { "annualFee": "ARS:1", "storageLimitInMegabytes": 16, "supportedProtocolVersion": "0.0" } } }); export const ActiveErrorSync = createExample(TestedComponent, { currency: 'ARS', info: { "active": true, "syncProviderBaseUrl": "http://sync.taler:9967/", "lastSuccessfulBackupTimestamp": { "t_ms": 1625063925078 }, lastAttemptedBackupTimestamp: { "t_ms": 1625063925078 }, "paymentProposalIds": [ "43Q5WWRJPNS4SE9YKS54H9THDS94089EDGXW9EHBPN6E7M184XEG" ], "paymentStatus": { "type": ProviderPaymentType.Paid, "paidUntil": { "t_ms": 1656599921000 } }, lastError: { code: 2002, details: 'details', hint: 'error hint from the server', message: 'message' }, "terms": { "annualFee": "ARS:1", "storageLimitInMegabytes": 16, "supportedProtocolVersion": "0.0" } } }); export const ActiveBackupProblemUnreadable = createExample(TestedComponent, { currency: 'ARS', info: { "active": true, "syncProviderBaseUrl": "http://sync.taler:9967/", "lastSuccessfulBackupTimestamp": { "t_ms": 1625063925078 }, "paymentProposalIds": [ "43Q5WWRJPNS4SE9YKS54H9THDS94089EDGXW9EHBPN6E7M184XEG" ], "paymentStatus": { "type": ProviderPaymentType.Paid, "paidUntil": { "t_ms": 1656599921000 } }, backupProblem: { type: 'backup-unreadable' }, "terms": { "annualFee": "ARS:1", "storageLimitInMegabytes": 16, "supportedProtocolVersion": "0.0" } } }); export const ActiveBackupProblemDevice = createExample(TestedComponent, { currency: 'ARS', info: { "active": true, "syncProviderBaseUrl": "http://sync.taler:9967/", "lastSuccessfulBackupTimestamp": { "t_ms": 1625063925078 }, "paymentProposalIds": [ "43Q5WWRJPNS4SE9YKS54H9THDS94089EDGXW9EHBPN6E7M184XEG" ], "paymentStatus": { "type": ProviderPaymentType.Paid, "paidUntil": { "t_ms": 1656599921000 } }, backupProblem: { type: 'backup-conflicting-device', myDeviceId: 'my-device-id', otherDeviceId: 'other-device-id', backupTimestamp: { "t_ms": 1656599921000 } }, "terms": { "annualFee": "ARS:1", "storageLimitInMegabytes": 16, "supportedProtocolVersion": "0.0" } } }); export const InactiveUnpaid = createExample(TestedComponent, { currency: 'ARS', info: { "active": false, "syncProviderBaseUrl": "http://sync.demo.taler.net/", "paymentProposalIds": [], "paymentStatus": { "type": ProviderPaymentType.Unpaid, }, "terms": { "annualFee": "ARS:0.1", "storageLimitInMegabytes": 16, "supportedProtocolVersion": "0.0" } } }); export const InactiveInsufficientBalance = createExample(TestedComponent, { currency: 'ARS', info: { "active": false, "syncProviderBaseUrl": "http://sync.demo.taler.net/", "paymentProposalIds": [], "paymentStatus": { "type": ProviderPaymentType.InsufficientBalance, }, "terms": { "annualFee": "ARS:0.1", "storageLimitInMegabytes": 16, "supportedProtocolVersion": "0.0" } } }); export const InactivePending = createExample(TestedComponent, { currency: 'ARS', info: { "active": false, "syncProviderBaseUrl": "http://sync.demo.taler.net/", "paymentProposalIds": [], "paymentStatus": { "type": ProviderPaymentType.Pending, }, "terms": { "annualFee": "ARS:0.1", "storageLimitInMegabytes": 16, "supportedProtocolVersion": "0.0" } } });