@exodus/analytics-validation 3.0.1 → 3.2.0
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 +12 -0
- package/lib/events.d.ts +77 -0
- package/lib/main.schemasafe.json +39 -0
- package/lib/pay/pay-deposit-blocked.schemasafe.json +29 -0
- package/lib/wealth/stocks-buy-amount-dismissed.schemasafe.json +43 -0
- package/lib/wealth/stocks-buy-amount-ready.schemasafe.json +33 -0
- package/lib/wealth/stocks-buy-amount-view.schemasafe.json +3 -0
- package/lib/wealth/stocks-buy-blocked.schemasafe.json +37 -0
- package/lib/wealth/stocks-buy-confirm-blocked.schemasafe.json +34 -0
- package/lib/wealth/stocks-buy-confirm-dismissed.schemasafe.json +36 -0
- package/lib/wealth/stocks-buy-confirm-ready.schemasafe.json +33 -0
- package/lib/wealth/stocks-buy-confirm-view.schemasafe.json +6 -0
- package/lib/wealth/stocks-buy-deposit-tap.schemasafe.json +33 -0
- package/lib/wealth/stocks-buy-success.schemasafe.json +33 -0
- package/lib/wealth/stocks-buy.schemasafe.json +6 -0
- package/lib/wealth/stocks-sell-confirm-blocked.schemasafe.json +34 -0
- package/lib/wealth/stocks-sell-confirm-dismissed.schemasafe.json +36 -0
- package/lib/wealth/stocks-sell-confirm-ready.schemasafe.json +33 -0
- package/lib/wealth/stocks-sell-success.schemasafe.json +33 -0
- package/lib/wealth/stocks-sell.schemasafe.json +6 -0
- package/package.json +3 -3
- package/schemasafe.config.js +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
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
|
+
## [3.2.0](https://github.com/ExodusMovement/exodus-hydra/compare/@exodus/analytics-validation@3.1.0...@exodus/analytics-validation@3.2.0) (2026-07-02)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- **analytics-validation:** add stocks buy funnel telemetry schemas ([#17453](https://github.com/ExodusMovement/exodus-hydra/issues/17453)) ([a9f9a70](https://github.com/ExodusMovement/exodus-hydra/commit/a9f9a7024836bb902ddde52b17f385eafe581495))
|
|
11
|
+
|
|
12
|
+
## [3.1.0](https://github.com/ExodusMovement/exodus-hydra/compare/@exodus/analytics-validation@3.0.1...@exodus/analytics-validation@3.1.0) (2026-06-19)
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
- **analytics-validation:** add PayDepositBlocked event schema ([#17248](https://github.com/ExodusMovement/exodus-hydra/issues/17248)) ([49e3f14](https://github.com/ExodusMovement/exodus-hydra/commit/49e3f14b9e1c3990840dd13e93ce5455c329d064)), closes [ExodusMovement/exodus-mobile#40803](https://github.com/ExodusMovement/exodus-mobile/issues/40803)
|
|
17
|
+
|
|
6
18
|
## [3.0.1](https://github.com/ExodusMovement/exodus-hydra/compare/@exodus/analytics-validation@3.0.0...@exodus/analytics-validation@3.0.1) (2026-06-19)
|
|
7
19
|
|
|
8
20
|
**Note:** Version bump only for package @exodus/analytics-validation
|
package/lib/events.d.ts
CHANGED
|
@@ -789,6 +789,10 @@ export interface AnalyticsEventMap {
|
|
|
789
789
|
amount?: number
|
|
790
790
|
amountUsd?: number
|
|
791
791
|
}
|
|
792
|
+
"PayDepositBlocked": {
|
|
793
|
+
depositType?: string
|
|
794
|
+
reason?: string
|
|
795
|
+
}
|
|
792
796
|
"PayDepositMethodAdd": {
|
|
793
797
|
depositType?: string
|
|
794
798
|
}
|
|
@@ -1329,18 +1333,68 @@ export interface AnalyticsEventMap {
|
|
|
1329
1333
|
"StocksBuy": {
|
|
1330
1334
|
asset?: string
|
|
1331
1335
|
amountUsd?: number
|
|
1336
|
+
confirmReadyS?: number
|
|
1337
|
+
timeToConfirmS?: number
|
|
1338
|
+
}
|
|
1339
|
+
"StocksBuyAmountDismissed": {
|
|
1340
|
+
asset?: string
|
|
1341
|
+
amountUsd?: number
|
|
1342
|
+
buttonReady?: boolean
|
|
1343
|
+
errorType?: string
|
|
1344
|
+
balanceUsd?: number
|
|
1345
|
+
durationS?: number
|
|
1346
|
+
}
|
|
1347
|
+
"StocksBuyAmountReady": {
|
|
1348
|
+
asset?: string
|
|
1349
|
+
amountUsd?: number
|
|
1350
|
+
timeToReadyS?: number
|
|
1332
1351
|
}
|
|
1333
1352
|
"StocksBuyAmountView": {
|
|
1334
1353
|
asset?: string
|
|
1354
|
+
balanceUsd?: number
|
|
1355
|
+
}
|
|
1356
|
+
"StocksBuyBlocked": {
|
|
1357
|
+
asset?: string
|
|
1358
|
+
amountUsd?: number
|
|
1359
|
+
errorType?: string
|
|
1360
|
+
balanceUsd?: number
|
|
1361
|
+
}
|
|
1362
|
+
"StocksBuyConfirmBlocked": {
|
|
1363
|
+
asset?: string
|
|
1364
|
+
amountUsd?: number
|
|
1365
|
+
errorType?: string
|
|
1366
|
+
}
|
|
1367
|
+
"StocksBuyConfirmDismissed": {
|
|
1368
|
+
asset?: string
|
|
1369
|
+
amountUsd?: number
|
|
1370
|
+
confirmReady?: boolean
|
|
1371
|
+
durationS?: number
|
|
1372
|
+
}
|
|
1373
|
+
"StocksBuyConfirmReady": {
|
|
1374
|
+
asset?: string
|
|
1375
|
+
amountUsd?: number
|
|
1376
|
+
timeToReadyS?: number
|
|
1335
1377
|
}
|
|
1336
1378
|
"StocksBuyConfirmView": {
|
|
1337
1379
|
asset?: string
|
|
1380
|
+
amountUsd?: number
|
|
1381
|
+
timeToBuyS?: number
|
|
1382
|
+
}
|
|
1383
|
+
"StocksBuyDepositTap": {
|
|
1384
|
+
asset?: string
|
|
1385
|
+
amountUsd?: number
|
|
1386
|
+
balanceUsd?: number
|
|
1338
1387
|
}
|
|
1339
1388
|
"StocksBuyError": {
|
|
1340
1389
|
asset?: string
|
|
1341
1390
|
errorType?: string
|
|
1342
1391
|
failureReason?: string
|
|
1343
1392
|
}
|
|
1393
|
+
"StocksBuySuccess": {
|
|
1394
|
+
asset?: string
|
|
1395
|
+
amountUsd?: number
|
|
1396
|
+
exchangeS?: number
|
|
1397
|
+
}
|
|
1344
1398
|
"StocksBuyView": {
|
|
1345
1399
|
asset?: string
|
|
1346
1400
|
}
|
|
@@ -1355,6 +1409,24 @@ export interface AnalyticsEventMap {
|
|
|
1355
1409
|
"StocksSell": {
|
|
1356
1410
|
asset?: string
|
|
1357
1411
|
amountUsd?: number
|
|
1412
|
+
confirmReadyS?: number
|
|
1413
|
+
timeToConfirmS?: number
|
|
1414
|
+
}
|
|
1415
|
+
"StocksSellConfirmBlocked": {
|
|
1416
|
+
asset?: string
|
|
1417
|
+
amountUsd?: number
|
|
1418
|
+
errorType?: string
|
|
1419
|
+
}
|
|
1420
|
+
"StocksSellConfirmDismissed": {
|
|
1421
|
+
asset?: string
|
|
1422
|
+
amountUsd?: number
|
|
1423
|
+
confirmReady?: boolean
|
|
1424
|
+
durationS?: number
|
|
1425
|
+
}
|
|
1426
|
+
"StocksSellConfirmReady": {
|
|
1427
|
+
asset?: string
|
|
1428
|
+
amountUsd?: number
|
|
1429
|
+
timeToReadyS?: number
|
|
1358
1430
|
}
|
|
1359
1431
|
"StocksSellConfirmView": {
|
|
1360
1432
|
asset?: string
|
|
@@ -1364,6 +1436,11 @@ export interface AnalyticsEventMap {
|
|
|
1364
1436
|
errorType?: string
|
|
1365
1437
|
failureReason?: string
|
|
1366
1438
|
}
|
|
1439
|
+
"StocksSellSuccess": {
|
|
1440
|
+
asset?: string
|
|
1441
|
+
amountUsd?: number
|
|
1442
|
+
exchangeS?: number
|
|
1443
|
+
}
|
|
1367
1444
|
"StocksSellView": {
|
|
1368
1445
|
asset?: string
|
|
1369
1446
|
}
|
package/lib/main.schemasafe.json
CHANGED
|
@@ -455,6 +455,9 @@
|
|
|
455
455
|
{
|
|
456
456
|
"$ref": "pay-contacts-sheet-view#"
|
|
457
457
|
},
|
|
458
|
+
{
|
|
459
|
+
"$ref": "pay-deposit-blocked#"
|
|
460
|
+
},
|
|
458
461
|
{
|
|
459
462
|
"$ref": "pay-deposit-method-add#"
|
|
460
463
|
},
|
|
@@ -1046,15 +1049,39 @@
|
|
|
1046
1049
|
{
|
|
1047
1050
|
"$ref": "stocks-asset-detail-view#"
|
|
1048
1051
|
},
|
|
1052
|
+
{
|
|
1053
|
+
"$ref": "stocks-buy-amount-dismissed#"
|
|
1054
|
+
},
|
|
1055
|
+
{
|
|
1056
|
+
"$ref": "stocks-buy-amount-ready#"
|
|
1057
|
+
},
|
|
1049
1058
|
{
|
|
1050
1059
|
"$ref": "stocks-buy-amount-view#"
|
|
1051
1060
|
},
|
|
1061
|
+
{
|
|
1062
|
+
"$ref": "stocks-buy-blocked#"
|
|
1063
|
+
},
|
|
1064
|
+
{
|
|
1065
|
+
"$ref": "stocks-buy-confirm-blocked#"
|
|
1066
|
+
},
|
|
1067
|
+
{
|
|
1068
|
+
"$ref": "stocks-buy-confirm-dismissed#"
|
|
1069
|
+
},
|
|
1070
|
+
{
|
|
1071
|
+
"$ref": "stocks-buy-confirm-ready#"
|
|
1072
|
+
},
|
|
1052
1073
|
{
|
|
1053
1074
|
"$ref": "stocks-buy-confirm-view#"
|
|
1054
1075
|
},
|
|
1076
|
+
{
|
|
1077
|
+
"$ref": "stocks-buy-deposit-tap#"
|
|
1078
|
+
},
|
|
1055
1079
|
{
|
|
1056
1080
|
"$ref": "stocks-buy-error#"
|
|
1057
1081
|
},
|
|
1082
|
+
{
|
|
1083
|
+
"$ref": "stocks-buy-success#"
|
|
1084
|
+
},
|
|
1058
1085
|
{
|
|
1059
1086
|
"$ref": "stocks-buy-view#"
|
|
1060
1087
|
},
|
|
@@ -1079,12 +1106,24 @@
|
|
|
1079
1106
|
{
|
|
1080
1107
|
"$ref": "stocks-portfolio-view#"
|
|
1081
1108
|
},
|
|
1109
|
+
{
|
|
1110
|
+
"$ref": "stocks-sell-confirm-blocked#"
|
|
1111
|
+
},
|
|
1112
|
+
{
|
|
1113
|
+
"$ref": "stocks-sell-confirm-dismissed#"
|
|
1114
|
+
},
|
|
1115
|
+
{
|
|
1116
|
+
"$ref": "stocks-sell-confirm-ready#"
|
|
1117
|
+
},
|
|
1082
1118
|
{
|
|
1083
1119
|
"$ref": "stocks-sell-confirm-view#"
|
|
1084
1120
|
},
|
|
1085
1121
|
{
|
|
1086
1122
|
"$ref": "stocks-sell-error#"
|
|
1087
1123
|
},
|
|
1124
|
+
{
|
|
1125
|
+
"$ref": "stocks-sell-success#"
|
|
1126
|
+
},
|
|
1088
1127
|
{
|
|
1089
1128
|
"$ref": "stocks-sell-view#"
|
|
1090
1129
|
},
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "PayDepositBlocked"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"deposit_type": {
|
|
18
|
+
"type": "string"
|
|
19
|
+
},
|
|
20
|
+
"reason": {
|
|
21
|
+
"type": "string"
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"unevaluatedProperties": false
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"unevaluatedProperties": false,
|
|
28
|
+
"required": ["event", "properties"]
|
|
29
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksBuyAmountDismissed"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"button_ready": {
|
|
25
|
+
"type": "boolean"
|
|
26
|
+
},
|
|
27
|
+
"error_type": {
|
|
28
|
+
"type": "string",
|
|
29
|
+
"format": "any-string"
|
|
30
|
+
},
|
|
31
|
+
"balance_usd": {
|
|
32
|
+
"type": "number"
|
|
33
|
+
},
|
|
34
|
+
"duration_s": {
|
|
35
|
+
"type": "number"
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"unevaluatedProperties": false
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
"unevaluatedProperties": false,
|
|
42
|
+
"required": ["event", "properties"]
|
|
43
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksBuyAmountReady"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"time_to_ready_s": {
|
|
25
|
+
"type": "number"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"unevaluatedProperties": false
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"unevaluatedProperties": false,
|
|
32
|
+
"required": ["event", "properties"]
|
|
33
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksBuyBlocked"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"error_type": {
|
|
25
|
+
"type": "string",
|
|
26
|
+
"format": "any-string"
|
|
27
|
+
},
|
|
28
|
+
"balance_usd": {
|
|
29
|
+
"type": "number"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"unevaluatedProperties": false
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"unevaluatedProperties": false,
|
|
36
|
+
"required": ["event", "properties"]
|
|
37
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksBuyConfirmBlocked"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"error_type": {
|
|
25
|
+
"type": "string",
|
|
26
|
+
"format": "any-string"
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"unevaluatedProperties": false
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"unevaluatedProperties": false,
|
|
33
|
+
"required": ["event", "properties"]
|
|
34
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksBuyConfirmDismissed"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"confirm_ready": {
|
|
25
|
+
"type": "boolean"
|
|
26
|
+
},
|
|
27
|
+
"duration_s": {
|
|
28
|
+
"type": "number"
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"unevaluatedProperties": false
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"unevaluatedProperties": false,
|
|
35
|
+
"required": ["event", "properties"]
|
|
36
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksBuyConfirmReady"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"time_to_ready_s": {
|
|
25
|
+
"type": "number"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"unevaluatedProperties": false
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"unevaluatedProperties": false,
|
|
32
|
+
"required": ["event", "properties"]
|
|
33
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksBuyDepositTap"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"balance_usd": {
|
|
25
|
+
"type": "number"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"unevaluatedProperties": false
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"unevaluatedProperties": false,
|
|
32
|
+
"required": ["event", "properties"]
|
|
33
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksBuySuccess"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"exchange_s": {
|
|
25
|
+
"type": "number"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"unevaluatedProperties": false
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"unevaluatedProperties": false,
|
|
32
|
+
"required": ["event", "properties"]
|
|
33
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksSellConfirmBlocked"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"error_type": {
|
|
25
|
+
"type": "string",
|
|
26
|
+
"format": "any-string"
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"unevaluatedProperties": false
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"unevaluatedProperties": false,
|
|
33
|
+
"required": ["event", "properties"]
|
|
34
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksSellConfirmDismissed"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"confirm_ready": {
|
|
25
|
+
"type": "boolean"
|
|
26
|
+
},
|
|
27
|
+
"duration_s": {
|
|
28
|
+
"type": "number"
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"unevaluatedProperties": false
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"unevaluatedProperties": false,
|
|
35
|
+
"required": ["event", "properties"]
|
|
36
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksSellConfirmReady"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"time_to_ready_s": {
|
|
25
|
+
"type": "number"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"unevaluatedProperties": false
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"unevaluatedProperties": false,
|
|
32
|
+
"required": ["event", "properties"]
|
|
33
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"event": {
|
|
6
|
+
"const": "StocksSellSuccess"
|
|
7
|
+
},
|
|
8
|
+
"properties": {
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"$ref": "common-properties#"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"type": "object",
|
|
15
|
+
"required": [],
|
|
16
|
+
"properties": {
|
|
17
|
+
"asset": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"format": "any-string"
|
|
20
|
+
},
|
|
21
|
+
"amount_usd": {
|
|
22
|
+
"type": "number"
|
|
23
|
+
},
|
|
24
|
+
"exchange_s": {
|
|
25
|
+
"type": "number"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"unevaluatedProperties": false
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"unevaluatedProperties": false,
|
|
32
|
+
"required": ["event", "properties"]
|
|
33
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@exodus/analytics-validation",
|
|
3
|
-
"version": "3.0
|
|
3
|
+
"version": "3.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "JSON schemas for analytics events, to prevent sensitive data from being sent up to the infamous cloud",
|
|
6
6
|
"author": "Exodus Movement, Inc.",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"prepublishOnly": "pnpm -w run build --scope @exodus/analytics-validation",
|
|
37
37
|
"test": "node scripts/build-schemasafe.mjs && pnpm exec exodus-test --jest --esbuild",
|
|
38
38
|
"typecheck": "node scripts/build-schemasafe.mjs && pnpm exec tsc --noEmit",
|
|
39
|
-
"lint": "pnpm run build:generated && pnpm exec
|
|
39
|
+
"lint": "pnpm run build:generated && pnpm exec eslint .",
|
|
40
40
|
"lint:fix": "pnpm run lint --fix"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
@@ -56,5 +56,5 @@
|
|
|
56
56
|
"access": "public",
|
|
57
57
|
"provenance": false
|
|
58
58
|
},
|
|
59
|
-
"gitHead": "
|
|
59
|
+
"gitHead": "c3843a17b8ca28e7b73bacdada4f78b3a7fd1fbe"
|
|
60
60
|
}
|
package/schemasafe.config.js
CHANGED
|
@@ -32,7 +32,6 @@ getSchemas({ schemaDir, schemaNames })
|
|
|
32
32
|
|
|
33
33
|
// Source: https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string
|
|
34
34
|
const semVerRegEx =
|
|
35
|
-
// eslint-disable-next-line sonarjs/regex-complexity
|
|
36
35
|
/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[A-Za-z-][\dA-Za-z-]*)(?:\.(?:0|[1-9]\d*|\d*[A-Za-z-][\dA-Za-z-]*))*))?(?:\+([\dA-Za-z-]+(?:\.[\dA-Za-z-]+)*))?$/u
|
|
37
36
|
const localeRegEx = /^[A-Za-z]{2,8}([_-][\dA-Za-z]{1,8}){0,2}$/u
|
|
38
37
|
// NOTE: this is exported so consumers can use the same settings at runtime
|