feat: add subscription manager to handle subscription sharing (#1517)

* feat: add subscription manager to handle subscription sharing

* fix(services): add missing methods to the interface

* fix(services): add subscription manager specs

* feat(snjs): add subscriptions e2e tests

* fix(snjs): add wait in subscription cancelling test

* fix(snjs): checking for canceled invitations in tests

* fix(snjs): add e2e test for restored limit of subscription invitations

* chore(lint): fix linter issues
This commit is contained in:
Karol Sójko
2022-09-13 10:28:11 +02:00
committed by GitHub
parent 2b830c0fae
commit 55b1409a80
55 changed files with 512 additions and 91 deletions

View File

@@ -1,6 +1,7 @@
import { Environment } from '@standardnotes/models'
import { WebClientRequiresDesktopMethods } from './DesktopWebCommunication'
import { DeviceInterface } from './DeviceInterface'
import { Environment } from './Environments'
import { WebOrDesktopDeviceInterface } from './WebOrDesktopDeviceInterface'
/* istanbul ignore file */

View File

@@ -1,10 +1,10 @@
import { Environment } from './Environments'
import { ApplicationIdentifier } from '@standardnotes/common'
import {
FullyFormedTransferPayload,
TransferPayload,
LegacyRawKeychainValue,
NamespacedRootKeyInKeychain,
Environment,
} from '@standardnotes/models'
/**

View File

@@ -1,17 +0,0 @@
export enum Environment {
Web = 1,
Desktop = 2,
Mobile = 3,
NativeMobileWeb = 4,
}
export enum Platform {
Ios = 1,
Android = 2,
MacWeb = 3,
MacDesktop = 4,
WindowsWeb = 5,
WindowsDesktop = 6,
LinuxWeb = 7,
LinuxDesktop = 8,
}

View File

@@ -1,6 +1,5 @@
import { DeviceInterface } from './DeviceInterface'
import { Environment } from './Environments'
import { RawKeychainValue } from '@standardnotes/models'
import { Environment, RawKeychainValue } from '@standardnotes/models'
export interface MobileDeviceInterface extends DeviceInterface {
environment: Environment.Mobile

View File

@@ -1,5 +1,6 @@
import { Environment } from '@standardnotes/models'
import { DeviceInterface } from './DeviceInterface'
import { Environment } from './Environments'
import { MobileDeviceInterface } from './MobileDeviceInterface'
import { isMobileDevice } from './TypeCheck'

View File

@@ -1,6 +1,6 @@
import { Environment } from './Environments'
import { MobileDeviceInterface } from './MobileDeviceInterface'
import { DeviceInterface } from './DeviceInterface'
import { Environment } from '@standardnotes/models'
/* istanbul ignore file */