@exodus/headless 2.0.0-alpha.59 → 2.0.0-alpha.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/package.json +8 -8
- package/src/atoms/base-asset-names-to-monitor.js +1 -0
- package/src/dependencies/atoms.js +1 -28
- package/src/dependencies/modules.js +0 -2
- package/src/dependencies/utils.js +0 -4
- package/src/features/available-assets/index.js +15 -0
- package/src/index.js +3 -1
- package/src/features/connected-origins/api.js +0 -23
- package/src/features/connected-origins/index.js +0 -31
- package/src/features/connected-origins/plugin.js +0 -18
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [2.0.0-alpha.60](https://github.com/ExodusMovement/exodus-hydra/compare/@exodus/headless@2.0.0-alpha.59...@exodus/headless@2.0.0-alpha.60) (2023-07-04)
|
|
7
|
+
|
|
8
|
+
### ⚠ BREAKING CHANGES
|
|
9
|
+
|
|
10
|
+
- export feature definition from connected origins (#2164)
|
|
11
|
+
|
|
12
|
+
### Features
|
|
13
|
+
|
|
14
|
+
- **address-provider:** move mock config atom and setter ([#2235](https://github.com/ExodusMovement/exodus-hydra/issues/2235)) ([b051025](https://github.com/ExodusMovement/exodus-hydra/commit/b0510256d557246589f939b64bec7e38b17ef779))
|
|
15
|
+
- export feature definition from connected origins ([#2164](https://github.com/ExodusMovement/exodus-hydra/issues/2164)) ([b1fd09d](https://github.com/ExodusMovement/exodus-hydra/commit/b1fd09d7d05d2088f4e12da80a983850d91659f5))
|
|
16
|
+
|
|
6
17
|
## [2.0.0-alpha.59](https://github.com/ExodusMovement/exodus-hydra/compare/@exodus/headless@2.0.0-alpha.58...@exodus/headless@2.0.0-alpha.59) (2023-07-04)
|
|
7
18
|
|
|
8
19
|
**Note:** Version bump only for package @exodus/headless
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@exodus/headless",
|
|
3
|
-
"version": "2.0.0-alpha.
|
|
3
|
+
"version": "2.0.0-alpha.60",
|
|
4
4
|
"description": "The platform-agnostic Exodus wallet SDK",
|
|
5
5
|
"author": "Exodus Movement Inc.",
|
|
6
6
|
"main": "src/index.js",
|
|
@@ -26,9 +26,9 @@
|
|
|
26
26
|
"test": "jest --runInBand"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@exodus/ab-testing": "^
|
|
29
|
+
"@exodus/ab-testing": "^6.0.0",
|
|
30
30
|
"@exodus/address-provider": "^4.2.0",
|
|
31
|
-
"@exodus/apy-rates": "^
|
|
31
|
+
"@exodus/apy-rates": "^3.0.0",
|
|
32
32
|
"@exodus/atoms": "^5.2.1",
|
|
33
33
|
"@exodus/auto-enable-assets-plugin": "^4.0.1",
|
|
34
34
|
"@exodus/available-assets": "^2.0.2",
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
"@exodus/basic-utils": "^2.0.0",
|
|
37
37
|
"@exodus/blockchain-metadata": "^8.1.0",
|
|
38
38
|
"@exodus/config": "^7.0.0",
|
|
39
|
-
"@exodus/connected-origins": "^
|
|
40
|
-
"@exodus/crypto-news-monitor": "^
|
|
39
|
+
"@exodus/connected-origins": "^2.0.0",
|
|
40
|
+
"@exodus/crypto-news-monitor": "^3.0.0",
|
|
41
41
|
"@exodus/dependency-injection": "^2.0.0",
|
|
42
42
|
"@exodus/dependency-preprocessors": "^2.8.2",
|
|
43
43
|
"@exodus/enabled-assets": "^6.0.2",
|
|
@@ -49,12 +49,12 @@
|
|
|
49
49
|
"@exodus/geolocation": "^2.0.1",
|
|
50
50
|
"@exodus/key-identifier-provider": "^1.1.3",
|
|
51
51
|
"@exodus/keychain": "^4.1.0",
|
|
52
|
-
"@exodus/kyc": "^
|
|
52
|
+
"@exodus/kyc": "^4.0.0",
|
|
53
53
|
"@exodus/market-history": "^3.1.2",
|
|
54
54
|
"@exodus/module": "^1.0.0",
|
|
55
55
|
"@exodus/nfts": "^2.1.1",
|
|
56
56
|
"@exodus/rates-monitor": "^2.0.1",
|
|
57
|
-
"@exodus/top-movers-monitor": "^
|
|
57
|
+
"@exodus/top-movers-monitor": "^3.0.0",
|
|
58
58
|
"@exodus/wallet": "^6.0.1",
|
|
59
59
|
"@exodus/wallet-accounts": "^8.0.1",
|
|
60
60
|
"@exodus/wallet-compatibility-modes": "^2.0.0",
|
|
@@ -89,5 +89,5 @@
|
|
|
89
89
|
"nock": "^13.3.1",
|
|
90
90
|
"p-defer": "^4.0.0"
|
|
91
91
|
},
|
|
92
|
-
"gitHead": "
|
|
92
|
+
"gitHead": "3772b0c9e6727aa1ed14f0a3d703e93c08b65c8a"
|
|
93
93
|
}
|
|
@@ -31,6 +31,7 @@ const createBaseAssetNamesToMonitorAtom = ({
|
|
|
31
31
|
|
|
32
32
|
export default {
|
|
33
33
|
id: 'baseAssetNamesToMonitorAtom',
|
|
34
|
+
type: 'atom',
|
|
34
35
|
factory: createBaseAssetNamesToMonitorAtom,
|
|
35
36
|
dependencies: ['assetsModule', 'availableAssetNamesAtom', 'enabledAssetsAtom', 'restoreAtom'],
|
|
36
37
|
}
|
|
@@ -1,32 +1,5 @@
|
|
|
1
|
-
import { createStorageAtomFactory } from '@exodus/atoms'
|
|
2
|
-
import { availableAssetNamesAtomDefinition } from '@exodus/available-assets/atoms'
|
|
3
|
-
|
|
4
1
|
import baseAssetNamesToMonitorAtomDefinition from '../atoms/base-asset-names-to-monitor'
|
|
5
|
-
import { withType } from './utils'
|
|
6
2
|
|
|
7
|
-
const createAtomDependencies = () =>
|
|
8
|
-
[
|
|
9
|
-
{ definition: availableAssetNamesAtomDefinition },
|
|
10
|
-
{
|
|
11
|
-
definition: {
|
|
12
|
-
id: 'mockConfigAtom',
|
|
13
|
-
factory: ({ storage }) =>
|
|
14
|
-
createStorageAtomFactory({ storage })({
|
|
15
|
-
key: 'mockConfig',
|
|
16
|
-
defaultValue: {},
|
|
17
|
-
isSoleWriter: true,
|
|
18
|
-
}),
|
|
19
|
-
dependencies: ['storage'],
|
|
20
|
-
},
|
|
21
|
-
storage: { namespace: 'mockConfig' },
|
|
22
|
-
aliases: [
|
|
23
|
-
{
|
|
24
|
-
implementationId: 'unsafeStorage',
|
|
25
|
-
interfaceId: 'storage',
|
|
26
|
-
},
|
|
27
|
-
],
|
|
28
|
-
},
|
|
29
|
-
{ definition: baseAssetNamesToMonitorAtomDefinition },
|
|
30
|
-
].map(withType('atom'))
|
|
3
|
+
const createAtomDependencies = () => [{ definition: baseAssetNamesToMonitorAtomDefinition }]
|
|
31
4
|
|
|
32
5
|
export default createAtomDependencies
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import availableAssetsModuleDefinition from '@exodus/available-assets/module'
|
|
2
1
|
import createKeyIdentifierProvider from '@exodus/key-identifier-provider'
|
|
3
2
|
import walletCompatibilityModesDefinition from '@exodus/wallet-compatibility-modes/module'
|
|
4
3
|
|
|
@@ -26,7 +25,6 @@ const createModuleDependencies = ({ config }) =>
|
|
|
26
25
|
definition: walletCompatibilityModesDefinition,
|
|
27
26
|
},
|
|
28
27
|
{ definition: unlockEncryptedStorageDefinition },
|
|
29
|
-
{ definition: availableAssetsModuleDefinition, writesAtoms: ['availableAssetNamesAtom'] },
|
|
30
28
|
].map(withType('module'))
|
|
31
29
|
|
|
32
30
|
export default createModuleDependencies
|
|
@@ -2,10 +2,6 @@ export const wrapConstant = ({ id, type, value }) => ({
|
|
|
2
2
|
definition: { id, type, factory: () => value },
|
|
3
3
|
})
|
|
4
4
|
|
|
5
|
-
export const insertIf = (module, enabled) => {
|
|
6
|
-
return enabled ? [module] : []
|
|
7
|
-
}
|
|
8
|
-
|
|
9
5
|
export const withType =
|
|
10
6
|
(type) =>
|
|
11
7
|
({ definition, ...rest }) => ({
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { availableAssetNamesAtomDefinition } from '@exodus/available-assets/atoms'
|
|
2
|
+
import availableAssetsModuleDefinition from '@exodus/available-assets/module'
|
|
3
|
+
|
|
4
|
+
const availableAssets = () => ({
|
|
5
|
+
id: 'availableAssets',
|
|
6
|
+
definitions: [
|
|
7
|
+
{
|
|
8
|
+
definition: { type: 'module', ...availableAssetsModuleDefinition },
|
|
9
|
+
writesAtoms: ['availableAssetNamesAtom'],
|
|
10
|
+
},
|
|
11
|
+
{ definition: availableAssetNamesAtomDefinition },
|
|
12
|
+
],
|
|
13
|
+
})
|
|
14
|
+
|
|
15
|
+
export default availableAssets
|
package/src/index.js
CHANGED
|
@@ -2,6 +2,7 @@ import abTesting from '@exodus/ab-testing'
|
|
|
2
2
|
import addressProvider from '@exodus/address-provider'
|
|
3
3
|
import apyRates from '@exodus/apy-rates'
|
|
4
4
|
import { pick } from '@exodus/basic-utils'
|
|
5
|
+
import connectedOrigins from '@exodus/connected-origins'
|
|
5
6
|
import cryptoNews from '@exodus/crypto-news-monitor'
|
|
6
7
|
import keychain from '@exodus/keychain'
|
|
7
8
|
import kyc from '@exodus/kyc'
|
|
@@ -10,9 +11,9 @@ import topMovers from '@exodus/top-movers-monitor'
|
|
|
10
11
|
import createApi from './api'
|
|
11
12
|
import attachAtoms from './atoms/attach'
|
|
12
13
|
import { atomsToAttach } from './constants'
|
|
14
|
+
import availableAssets from './features/available-assets'
|
|
13
15
|
import balances from './features/balances'
|
|
14
16
|
import blockchainMetadata from './features/blockchain-metadata'
|
|
15
|
-
import connectedOrigins from './features/connected-origins'
|
|
16
17
|
import enabledAssets from './features/enabled-assets'
|
|
17
18
|
import featureFlags from './features/feature-flags'
|
|
18
19
|
import fees from './features/fees'
|
|
@@ -37,6 +38,7 @@ const createExodus = ({ adapters, config, port }) => {
|
|
|
37
38
|
ioc.use(keychain(config.keychain))
|
|
38
39
|
ioc.use(walletAccounts())
|
|
39
40
|
ioc.use(blockchainMetadata())
|
|
41
|
+
ioc.use(availableAssets())
|
|
40
42
|
ioc.use(enabledAssets())
|
|
41
43
|
ioc.use(balances())
|
|
42
44
|
ioc.use(fiatBalances())
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
const connectedOriginsApi = ({ connectedOrigins, connectedOriginsAtom }) => ({
|
|
2
|
-
connectedOrigins: {
|
|
3
|
-
get: connectedOriginsAtom.get,
|
|
4
|
-
add: connectedOrigins.add,
|
|
5
|
-
clear: connectedOrigins.clear,
|
|
6
|
-
untrust: connectedOrigins.untrust,
|
|
7
|
-
isTrusted: connectedOrigins.isTrusted,
|
|
8
|
-
isAutoApprove: connectedOrigins.isAutoApprove,
|
|
9
|
-
setFavorite: connectedOrigins.setFavorite,
|
|
10
|
-
setAutoApprove: connectedOrigins.setAutoApprove,
|
|
11
|
-
connect: connectedOrigins.connect,
|
|
12
|
-
disconnect: connectedOrigins.disconnect,
|
|
13
|
-
updateConnection: connectedOrigins.updateConnection,
|
|
14
|
-
clearConnections: connectedOrigins.clearConnections,
|
|
15
|
-
},
|
|
16
|
-
})
|
|
17
|
-
|
|
18
|
-
export default {
|
|
19
|
-
id: 'connectedOriginsApi',
|
|
20
|
-
type: 'api',
|
|
21
|
-
factory: connectedOriginsApi,
|
|
22
|
-
dependencies: ['connectedOrigins', 'connectedOriginsAtom'],
|
|
23
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { connectedOriginsAtomDefinition } from '@exodus/connected-origins/atoms'
|
|
2
|
-
import connectedOriginsDefinition from '@exodus/connected-origins/module'
|
|
3
|
-
|
|
4
|
-
import connectedOriginsApiDefinition from './api'
|
|
5
|
-
import connectedOriginsPluginDefinition from './plugin'
|
|
6
|
-
|
|
7
|
-
const connectedOrigins = () => {
|
|
8
|
-
return {
|
|
9
|
-
id: 'connectedOrigins',
|
|
10
|
-
definitions: [
|
|
11
|
-
{
|
|
12
|
-
definition: connectedOriginsAtomDefinition,
|
|
13
|
-
storage: { namespace: 'connectedOrigins' },
|
|
14
|
-
aliases: [
|
|
15
|
-
{
|
|
16
|
-
implementationId: 'unsafeStorage',
|
|
17
|
-
interfaceId: 'storage',
|
|
18
|
-
},
|
|
19
|
-
],
|
|
20
|
-
},
|
|
21
|
-
{
|
|
22
|
-
definition: connectedOriginsDefinition,
|
|
23
|
-
writesAtoms: ['connectedOriginsAtom'],
|
|
24
|
-
},
|
|
25
|
-
{ definition: connectedOriginsPluginDefinition },
|
|
26
|
-
{ definition: connectedOriginsApiDefinition },
|
|
27
|
-
],
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export default connectedOrigins
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
const connectedOriginsPlugin = ({ connectedOrigins }) => {
|
|
2
|
-
const onUnlock = async () => {
|
|
3
|
-
await connectedOrigins.load()
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
const onClear = async () => {
|
|
7
|
-
await connectedOrigins.clear()
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
return { onUnlock, onClear }
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export default {
|
|
14
|
-
id: 'connectedOriginsLifecyclePlugin',
|
|
15
|
-
type: 'plugin',
|
|
16
|
-
factory: connectedOriginsPlugin,
|
|
17
|
-
dependencies: ['connectedOrigins'],
|
|
18
|
-
}
|